[ { "inputs": [ { "internalType": "string", "name": "name_", "type": "string" }, { "internalType": "string", "name": "symbol_", "type": "string" }, { "internalType": "uint8", "name": "decimals_", "type": "uint8" }, { "internalType": "uint256", "name": "initialSupply_", "type": "uint256" }, { "internalType": "address", "name": "devWallet_", "type": "address" }, { "internalType": "address", "name": "marketingWallet_", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "allowance", "type": "uint256" }, { "internalType": "uint256", "name": "needed", "type": "uint256" } ], "name": "ERC20InsufficientAllowance", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" }, { "internalType": "uint256", "name": "balance", "type": "uint256" }, { "internalType": "uint256", "name": "needed", "type": "uint256" } ], "name": "ERC20InsufficientBalance", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "approver", "type": "address" } ], "name": "ERC20InvalidApprover", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "receiver", "type": "address" } ], "name": "ERC20InvalidReceiver", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" } ], "name": "ERC20InvalidSender", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" } ], "name": "ERC20InvalidSpender", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "OwnableInvalidOwner", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "OwnableUnauthorizedAccount", "type": "error" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "spender", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Approval", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "tokensSwapped", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "ethReceived", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "tokensIntoLiqudity", "type": "uint256" } ], "name": "SwapAndLiquify", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "inputs": [ { "internalType": "address[]", "name": "accounts", "type": "address[]" } ], "name": "addkatsCage", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "spender", "type": "address" } ], "name": "allowance", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "approve", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "buySellCount", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_uniswapV2Router", "type": "address" } ], "name": "fairlaunch", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "katsCage", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "count", "type": "uint256" } ], "name": "setkatsCageCount", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "symbol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "tradingOpen", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "transfer", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "transferFrom", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "uniswapV2Router", "outputs": [ { "internalType": "contract IUniswapV2Router02", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "stateMutability": "payable", "type": "receive" } ]
60806040525f600860146101000a81548160ff0219169083151502179055505f600b55600a600c55348015610032575f80fd5b5060405161346f38038061346f83398181016040528101906100549190610698565b61006261027c60201b60201c565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036100d2575f6040517f1e4fbdf70000000000000000000000000000000000000000000000000000000081526004016100c99190610768565b60405180910390fd5b6100e18161028360201b60201c565b5085600590816100f19190610985565b5084600690816101019190610985565b508360075f6101000a81548160ff021916908360ff16021790555081600760016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508060085f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160035f6101b061027c60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555061027161026561027c60201b60201c565b8461034460201b60201c565b505050505050610adc565b5f33905090565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036103b4575f6040517fec442f050000000000000000000000000000000000000000000000000000000081526004016103ab9190610768565b60405180910390fd5b8060045f8282546103c59190610a81565b925050819055508060015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546104189190610a81565b925050819055508173ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161047c9190610ac3565b60405180910390a35050565b5f604051905090565b5f80fd5b5f80fd5b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6104e7826104a1565b810181811067ffffffffffffffff82111715610506576105056104b1565b5b80604052505050565b5f610518610488565b905061052482826104de565b919050565b5f67ffffffffffffffff821115610543576105426104b1565b5b61054c826104a1565b9050602081019050919050565b8281835e5f83830152505050565b5f61057961057484610529565b61050f565b9050828152602081018484840111156105955761059461049d565b5b6105a0848285610559565b509392505050565b5f82601f8301126105bc576105bb610499565b5b81516105cc848260208601610567565b91505092915050565b5f60ff82169050919050565b6105ea816105d5565b81146105f4575f80fd5b50565b5f81519050610605816105e1565b92915050565b5f819050919050565b61061d8161060b565b8114610627575f80fd5b50565b5f8151905061063881610614565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6106678261063e565b9050919050565b6106778161065d565b8114610681575f80fd5b50565b5f815190506106928161066e565b92915050565b5f805f805f8060c087890312156106b2576106b1610491565b5b5f87015167ffffffffffffffff8111156106cf576106ce610495565b5b6106db89828a016105a8565b965050602087015167ffffffffffffffff8111156106fc576106fb610495565b5b61070889828a016105a8565b955050604061071989828a016105f7565b945050606061072a89828a0161062a565b935050608061073b89828a01610684565b92505060a061074c89828a01610684565b9150509295509295509295565b6107628161065d565b82525050565b5f60208201905061077b5f830184610759565b92915050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806107cf57607f821691505b6020821081036107e2576107e161078b565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026108447fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610809565b61084e8683610809565b95508019841693508086168417925050509392505050565b5f819050919050565b5f61088961088461087f8461060b565b610866565b61060b565b9050919050565b5f819050919050565b6108a28361086f565b6108b66108ae82610890565b848454610815565b825550505050565b5f90565b6108ca6108be565b6108d5818484610899565b505050565b5b818110156108f8576108ed5f826108c2565b6001810190506108db565b5050565b601f82111561093d5761090e816107e8565b610917846107fa565b81016020851015610926578190505b61093a610932856107fa565b8301826108da565b50505b505050565b5f82821c905092915050565b5f61095d5f1984600802610942565b1980831691505092915050565b5f610975838361094e565b9150826002028217905092915050565b61098e82610781565b67ffffffffffffffff8111156109a7576109a66104b1565b5b6109b182546107b8565b6109bc8282856108fc565b5f60209050601f8311600181146109ed575f84156109db578287015190505b6109e5858261096a565b865550610a4c565b601f1984166109fb866107e8565b5f5b82811015610a22578489015182556001820191506020850194506020810190506109fd565b86831015610a3f5784890151610a3b601f89168261094e565b8355505b6001600288020188555050505b505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610a8b8261060b565b9150610a968361060b565b9250828201905080821115610aae57610aad610a54565b5b92915050565b610abd8161060b565b82525050565b5f602082019050610ad65f830184610ab4565b92915050565b61298680610ae95f395ff3fe608060405260043610610117575f3560e01c8063715018a61161009f578063dd62ed3e11610063578063dd62ed3e1461039e578063f2aef4d1146103da578063f2fde38b14610402578063f7c17b801461042a578063ffb54a99146104665761011e565b8063715018a6146102d05780638da5cb5b146102e657806395d89b4114610310578063a9059cbb1461033a578063c105f629146103765761011e565b80631f3fe43f116100e65780631f3fe43f146101dc57806323b872dd14610206578063313ce567146102425780633402e2cf1461026c57806370a08231146102945761011e565b806306fdde0314610122578063095ea7b31461014c5780631694505e1461018857806318160ddd146101b25761011e565b3661011e57005b5f80fd5b34801561012d575f80fd5b50610136610490565b6040516101439190611e2d565b60405180910390f35b348015610157575f80fd5b50610172600480360381019061016d9190611eeb565b610520565b60405161017f9190611f43565b60405180910390f35b348015610193575f80fd5b5061019c610542565b6040516101a99190611fb7565b60405180910390f35b3480156101bd575f80fd5b506101c6610567565b6040516101d39190611fdf565b60405180910390f35b3480156101e7575f80fd5b506101f0610570565b6040516101fd9190611fdf565b60405180910390f35b348015610211575f80fd5b5061022c60048036038101906102279190611ff8565b610576565b6040516102399190611f43565b60405180910390f35b34801561024d575f80fd5b506102566105a4565b6040516102639190612063565b60405180910390f35b348015610277575f80fd5b50610292600480360381019061028d919061207c565b6105b9565b005b34801561029f575f80fd5b506102ba60048036038101906102b591906120a7565b6105cb565b6040516102c79190611fdf565b60405180910390f35b3480156102db575f80fd5b506102e4610611565b005b3480156102f1575f80fd5b506102fa610624565b60405161030791906120e1565b60405180910390f35b34801561031b575f80fd5b5061032461064b565b6040516103319190611e2d565b60405180910390f35b348015610345575f80fd5b50610360600480360381019061035b9190611eeb565b6106db565b60405161036d9190611f43565b60405180910390f35b348015610381575f80fd5b5061039c6004803603810190610397919061223a565b6106fd565b005b3480156103a9575f80fd5b506103c460048036038101906103bf9190612281565b610790565b6040516103d19190611fdf565b60405180910390f35b3480156103e5575f80fd5b5061040060048036038101906103fb91906120a7565b610812565b005b34801561040d575f80fd5b50610428600480360381019061042391906120a7565b610d44565b005b348015610435575f80fd5b50610450600480360381019061044b91906120a7565b610dc8565b60405161045d9190611f43565b60405180910390f35b348015610471575f80fd5b5061047a610de5565b6040516104879190611f43565b60405180910390f35b60606005805461049f906122ec565b80601f01602080910402602001604051908101604052809291908181526020018280546104cb906122ec565b80156105165780601f106104ed57610100808354040283529160200191610516565b820191905f5260205f20905b8154815290600101906020018083116104f957829003601f168201915b5050505050905090565b5f8061052a610df8565b9050610537818585610dff565b600191505092915050565b60095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f600454905090565b600b5481565b5f80610580610df8565b905061058d858285610e11565b610598858585610ea3565b60019150509392505050565b5f60075f9054906101000a900460ff16905090565b6105c161156a565b80600c8190555050565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b61061961156a565b6106225f6115f1565b565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606006805461065a906122ec565b80601f0160208091040260200160405190810160405280929190818152602001828054610686906122ec565b80156106d15780601f106106a8576101008083540402835291602001916106d1565b820191905f5260205f20905b8154815290600101906020018083116106b457829003601f168201915b5050505050905090565b5f806106e5610df8565b90506106f2818585610ea3565b600191505092915050565b61070561156a565b5f5b815181101561078c57600160035f8484815181106107285761072761231c565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508080600101915050610707565b5050565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b61081a61156a565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610888576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087f90612393565b60405180910390fd5b600860149054906101000a900460ff16156108d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108cf906123fb565b60405180910390fd5b8060095f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506109463060095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600454610dff565b60095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109b0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109d4919061242d565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a5a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a7e919061242d565b6040518363ffffffff1660e01b8152600401610a9b929190612458565b6020604051808303815f875af1158015610ab7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610adb919061242d565b600a5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610b62306105cb565b5f80610b6c610624565b426040518863ffffffff1660e01b8152600401610b8e969594939291906124b8565b60606040518083038185885af1158015610baa573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610bcf919061252b565b505050600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b360095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610c6f92919061257b565b6020604051808303815f875af1158015610c8b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610caf91906125cc565b50600160035f600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600860146101000a81548160ff02191690831515021790555050565b610d4c61156a565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610dbc575f6040517f1e4fbdf7000000000000000000000000000000000000000000000000000000008152600401610db391906120e1565b60405180910390fd5b610dc5816115f1565b50565b6003602052805f5260405f205f915054906101000a900460ff1681565b600860149054906101000a900460ff1681565b5f33905090565b610e0c83838360016116b2565b505050565b5f610e1c8484610790565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610e9d5781811015610e8e578281836040517ffb8f41b2000000000000000000000000000000000000000000000000000000008152600401610e85939291906125f7565b60405180910390fd5b610e9c84848484035f6116b2565b5b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610f13575f6040517f96c6fd1e000000000000000000000000000000000000000000000000000000008152600401610f0a91906120e1565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610f83575f6040517fec442f05000000000000000000000000000000000000000000000000000000008152600401610f7a91906120e1565b60405180910390fd5b5f60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508181101561100d578381836040517fe450d38c000000000000000000000000000000000000000000000000000000008152600401611004939291906125f7565b60405180910390fd5b5f611016610624565b73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16141580156110845750611054610624565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b801561109c5750600860149054906101000a900460ff165b156113ad57600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614801561114a575060095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b806111d95750600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156111d857503073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b5b156113ac57600c54600b5410156112745760035f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16611273576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161126a90612676565b60405180910390fd5b5b61271060fa840260fa8502018161128e5761128d612694565b5b0490505f61129b306105cb565b9050611c20600e546112ad91906126ee565b421180156113075750600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16145b801561131f5750600d5f9054906101000a900460ff16155b801561132a57505f81115b15611393575f60fa8061133d91906126ee565b90505f82861061134d578261134f565b855b90506113898260fa836113629190612721565b61136c9190612762565b8360fa8461137a9190612721565b6113849190612762565b611881565b42600e8190555050505b600b5f8154809291906113a590612792565b9190505550505b5b5f81111561146e578060015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825461140191906126ee565b925050819055503073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516114659190611fdf565b60405180910390a35b82820360015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555080830360015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161155b9190611fdf565b60405180910390a35050505050565b611572610df8565b73ffffffffffffffffffffffffffffffffffffffff16611590610624565b73ffffffffffffffffffffffffffffffffffffffff16146115ef576115b3610df8565b6040517f118cdaa70000000000000000000000000000000000000000000000000000000081526004016115e691906120e1565b60405180910390fd5b565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603611722575f6040517fe602df0500000000000000000000000000000000000000000000000000000000815260040161171991906120e1565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611792575f6040517f94280d6200000000000000000000000000000000000000000000000000000000815260040161178991906120e1565b60405180910390fd5b8160025f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550801561187b578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516118729190611fdf565b60405180910390a35b50505050565b6001600d5f6101000a81548160ff0219169083151502179055505f60fa600260fa6118ac9190612762565b6118b691906126ee565b90505f6002846118c69190612762565b90505f81856118d591906127d9565b90506118eb84836118e691906126ee565b61198a565b5f4790505f8460fa836118fe9190612721565b6119089190612762565b90505f818361191791906127d9565b90506119238482611bf3565b61192c82611cd3565b7f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb56185828660405161195f9392919061280c565b60405180910390a15050505050505f600d5f6101000a81548160ff0219169083151502179055505050565b6001600d5f6101000a81548160ff0219169083151502179055505f600267ffffffffffffffff8111156119c0576119bf6120fe565b5b6040519080825280602002602001820160405280156119ee5781602001602082028036833780820191505090505b50905030815f81518110611a0557611a0461231c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611aa9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611acd919061242d565b81600181518110611ae157611ae061231c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611b473060095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610dff565b60095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b8152600401611ba99594939291906128f8565b5f604051808303815f87803b158015611bc0575f80fd5b505af1158015611bd2573d5f803e3d5ffd5b50505050505f600d5f6101000a81548160ff02191690831515021790555050565b611c1f3060095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610dff565b60095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7198230855f80611c69610624565b426040518863ffffffff1660e01b8152600401611c8b969594939291906124b8565b60606040518083038185885af1158015611ca7573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190611ccc919061252b565b5050505050565b5f600282611ce19190612762565b905060085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015611d47573d5f803e3d5ffd5b50600760019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8284611d9091906127d9565b90811502906040515f60405180830381858888f19350505050158015611db8573d5f803e3d5ffd5b505050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611dff82611dbd565b611e098185611dc7565b9350611e19818560208601611dd7565b611e2281611de5565b840191505092915050565b5f6020820190508181035f830152611e458184611df5565b905092915050565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611e8782611e5e565b9050919050565b611e9781611e7d565b8114611ea1575f80fd5b50565b5f81359050611eb281611e8e565b92915050565b5f819050919050565b611eca81611eb8565b8114611ed4575f80fd5b50565b5f81359050611ee581611ec1565b92915050565b5f8060408385031215611f0157611f00611e56565b5b5f611f0e85828601611ea4565b9250506020611f1f85828601611ed7565b9150509250929050565b5f8115159050919050565b611f3d81611f29565b82525050565b5f602082019050611f565f830184611f34565b92915050565b5f819050919050565b5f611f7f611f7a611f7584611e5e565b611f5c565b611e5e565b9050919050565b5f611f9082611f65565b9050919050565b5f611fa182611f86565b9050919050565b611fb181611f97565b82525050565b5f602082019050611fca5f830184611fa8565b92915050565b611fd981611eb8565b82525050565b5f602082019050611ff25f830184611fd0565b92915050565b5f805f6060848603121561200f5761200e611e56565b5b5f61201c86828701611ea4565b935050602061202d86828701611ea4565b925050604061203e86828701611ed7565b9150509250925092565b5f60ff82169050919050565b61205d81612048565b82525050565b5f6020820190506120765f830184612054565b92915050565b5f6020828403121561209157612090611e56565b5b5f61209e84828501611ed7565b91505092915050565b5f602082840312156120bc576120bb611e56565b5b5f6120c984828501611ea4565b91505092915050565b6120db81611e7d565b82525050565b5f6020820190506120f45f8301846120d2565b92915050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b61213482611de5565b810181811067ffffffffffffffff82111715612153576121526120fe565b5b80604052505050565b5f612165611e4d565b9050612171828261212b565b919050565b5f67ffffffffffffffff8211156121905761218f6120fe565b5b602082029050602081019050919050565b5f80fd5b5f6121b76121b284612176565b61215c565b905080838252602082019050602084028301858111156121da576121d96121a1565b5b835b8181101561220357806121ef8882611ea4565b8452602084019350506020810190506121dc565b5050509392505050565b5f82601f830112612221576122206120fa565b5b81356122318482602086016121a5565b91505092915050565b5f6020828403121561224f5761224e611e56565b5b5f82013567ffffffffffffffff81111561226c5761226b611e5a565b5b6122788482850161220d565b91505092915050565b5f806040838503121561229757612296611e56565b5b5f6122a485828601611ea4565b92505060206122b585828601611ea4565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061230357607f821691505b602082108103612316576123156122bf565b5b50919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f496e76616c696420726f757465722061646472657373000000000000000000005f82015250565b5f61237d601683611dc7565b915061238882612349565b602082019050919050565b5f6020820190508181035f8301526123aa81612371565b9050919050565b7f74726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f6123e5601783611dc7565b91506123f0826123b1565b602082019050919050565b5f6020820190508181035f830152612412816123d9565b9050919050565b5f8151905061242781611e8e565b92915050565b5f6020828403121561244257612441611e56565b5b5f61244f84828501612419565b91505092915050565b5f60408201905061246b5f8301856120d2565b61247860208301846120d2565b9392505050565b5f819050919050565b5f6124a261249d6124988461247f565b611f5c565b611eb8565b9050919050565b6124b281612488565b82525050565b5f60c0820190506124cb5f8301896120d2565b6124d86020830188611fd0565b6124e560408301876124a9565b6124f260608301866124a9565b6124ff60808301856120d2565b61250c60a0830184611fd0565b979650505050505050565b5f8151905061252581611ec1565b92915050565b5f805f6060848603121561254257612541611e56565b5b5f61254f86828701612517565b935050602061256086828701612517565b925050604061257186828701612517565b9150509250925092565b5f60408201905061258e5f8301856120d2565b61259b6020830184611fd0565b9392505050565b6125ab81611f29565b81146125b5575f80fd5b50565b5f815190506125c6816125a2565b92915050565b5f602082840312156125e1576125e0611e56565b5b5f6125ee848285016125b8565b91505092915050565b5f60608201905061260a5f8301866120d2565b6126176020830185611fd0565b6126246040830184611fd0565b949350505050565b7f536f6d657468696e67206973206e6f7420616c6c6f77656400000000000000005f82015250565b5f612660601883611dc7565b915061266b8261262c565b602082019050919050565b5f6020820190508181035f83015261268d81612654565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6126f882611eb8565b915061270383611eb8565b925082820190508082111561271b5761271a6126c1565b5b92915050565b5f61272b82611eb8565b915061273683611eb8565b925082820261274481611eb8565b9150828204841483151761275b5761275a6126c1565b5b5092915050565b5f61276c82611eb8565b915061277783611eb8565b92508261278757612786612694565b5b828204905092915050565b5f61279c82611eb8565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036127ce576127cd6126c1565b5b600182019050919050565b5f6127e382611eb8565b91506127ee83611eb8565b9250828203905081811115612806576128056126c1565b5b92915050565b5f60608201905061281f5f830186611fd0565b61282c6020830185611fd0565b6128396040830184611fd0565b949350505050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61287381611e7d565b82525050565b5f612884838361286a565b60208301905092915050565b5f602082019050919050565b5f6128a682612841565b6128b0818561284b565b93506128bb8361285b565b805f5b838110156128eb5781516128d28882612879565b97506128dd83612890565b9250506001810190506128be565b5085935050505092915050565b5f60a08201905061290b5f830188611fd0565b61291860208301876124a9565b818103604083015261292a818661289c565b905061293960608301856120d2565b6129466080830184611fd0565b969550505050505056fea2646970667358221220384673bb25f3a5f7ae62909c62bcb0d66e2a2eaa7ecbace51184633c2953ec2464736f6c6343000819003300000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000054d5147bbad41f70661740000000000000000000000000000bf32d9c413e0ad1802f332f5ecebab157393d8cc0000000000000000000000000af325e1e103c2a7ea329c200872306c14e549ef00000000000000000000000000000000000000000000000000000000000000084b4154204d656d650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004244b415400000000000000000000000000000000000000000000000000000000