[ { "inputs": [], "stateMutability": "nonpayable", "type": "constructor" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "pair", "type": "address" }, { "indexed": true, "internalType": "bool", "name": "value", "type": "bool" } ], "name": "AMMPairUpdated", "type": "event" }, { "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": "account", "type": "address" }, { "indexed": false, "internalType": "bool", "name": "isExempt", "type": "bool" } ], "name": "FeeExemptionSet", "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": 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": [], "name": "INIT_SUPPLY", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "activateTrading", "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": "amount", "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": [ { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "burn", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "calculateGasLimit", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "cooldownTime", "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": "spender", "type": "address" }, { "internalType": "uint256", "name": "subtractedValue", "type": "uint256" } ], "name": "decreaseAllowance", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "addedValue", "type": "uint256" } ], "name": "increaseAllowance", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "isExemptFromFee", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxWalletTokens", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bool", "name": "enabled", "type": "bool" } ], "name": "optimizeTransfer", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "purchaseFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "saleFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "pair", "type": "address" }, { "internalType": "bool", "name": "value", "type": "bool" } ], "name": "setAMMPair", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "bool", "name": "isExempt", "type": "bool" } ], "name": "setFeeExemption", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "maxTokens", "type": "uint256" } ], "name": "setTimingLaunch", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "swapPair", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "swapRouter", "outputs": [ { "internalType": "contract IUniswapV2Router02", "name": "", "type": "address" } ], "stateMutability": "view", "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": [ { "internalType": "uint256", "name": "cooldown", "type": "uint256" } ], "name": "tradeBalanceValue", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "tradingEnabled", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "amount", "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": "amount", "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": "updateMaxWalletValue", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "updateSpeedTransaction", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_purchaseFee", "type": "uint256" }, { "internalType": "uint256", "name": "_saleFee", "type": "uint256" } ], "name": "updateTxLimits", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "whaleProtectionEnabled", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "withdrawContractBalance", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "withdrawTreasuryTokens", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "stateMutability": "payable", "type": "receive" } ]
60a06040525f6008555f6009555f600a5f6101000a81548160ff0219169083151502179055505f600b55600a600c556005600d556009600a6100419190610886565b620186a061004f91906108d0565b600e556001600f5f6101000a81548160ff021916908315150217905550348015610077575f80fd5b506040518060400160405280600881526020017f4d696c69636174650000000000000000000000000000000000000000000000008152506040518060400160405280600381526020017f4d4c43000000000000000000000000000000000000000000000000000000000081525081600390816100f39190610b42565b5080600490816101039190610b42565b50505061012261011761038160201b60201c565b61038860201b60201c565b737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff168152505061017861038160201b60201c565b60075f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506101c830600161044b60201b60201c565b6101db61dead600161044b60201b60201c565b6101f96101ec61038160201b60201c565b600161044b60201b60201c565b61022b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600161044b60201b60201c565b61025073251abbee0f5087caefe2fcd04e2f88fc4b2fd987600161044b60201b60201c565b610275738c33496fc5b62793301cedbf76f931ec145cd412600161044b60201b60201c565b61029a7335ff53337d06fe5c2c083e291d27fb17b774f029600161044b60201b60201c565b6102bf738c79170a371f486226183fa89ed402b88f8e5665600161044b60201b60201c565b6102e473a6fe0abbd16ce539d670ec4742299cfbd140d2a8600161044b60201b60201c565b61030973bd8dc426f8a7e099413e194d299ec5495a35fda4600161044b60201b60201c565b61032e73360d2bfb97dd9280666a9c4fb8d636dc2ebd7b3f600161044b60201b60201c565b61037c60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a6103619190610886565b6401dcd6500061037191906108d0565b6104ff60201b60201c565b610d7f565b5f33905090565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b61045961065960201b60201c565b8060105f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f210f2a4a589e25d95b24cbdb060d26ae79bbe123a564d0f973503d48badd00ca826040516104f39190610c2b565b60405180910390a25050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361056d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161056490610c9e565b60405180910390fd5b61057e5f83836106e360201b60201c565b8060025f82825461058f9190610cbc565b92505081905550805f808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508173ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161063c9190610cfe565b60405180910390a36106555f83836106e860201b60201c565b5050565b61066761038160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1661068b6106ed60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16146106e1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106d890610d61565b60405180910390fd5b565b505050565b505050565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b60018511156107975780860481111561077357610772610715565b5b60018516156107825780820291505b808102905061079085610742565b9450610757565b94509492505050565b5f826107af576001905061086a565b816107bc575f905061086a565b81600181146107d257600281146107dc5761080b565b600191505061086a565b60ff8411156107ee576107ed610715565b5b8360020a91508482111561080557610804610715565b5b5061086a565b5060208310610133831016604e8410600b84101617156108405782820a90508381111561083b5761083a610715565b5b61086a565b61084d848484600161074e565b9250905081840481111561086457610863610715565b5b81810290505b9392505050565b5f819050919050565b5f60ff82169050919050565b5f61089082610871565b915061089b8361087a565b92506108c87fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846107a0565b905092915050565b5f6108da82610871565b91506108e583610871565b92508282026108f381610871565b9150828204841483151761090a57610909610715565b5b5092915050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061098c57607f821691505b60208210810361099f5761099e610948565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f60088302610a017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826109c6565b610a0b86836109c6565b95508019841693508086168417925050509392505050565b5f819050919050565b5f610a46610a41610a3c84610871565b610a23565b610871565b9050919050565b5f819050919050565b610a5f83610a2c565b610a73610a6b82610a4d565b8484546109d2565b825550505050565b5f90565b610a87610a7b565b610a92818484610a56565b505050565b5b81811015610ab557610aaa5f82610a7f565b600181019050610a98565b5050565b601f821115610afa57610acb816109a5565b610ad4846109b7565b81016020851015610ae3578190505b610af7610aef856109b7565b830182610a97565b50505b505050565b5f82821c905092915050565b5f610b1a5f1984600802610aff565b1980831691505092915050565b5f610b328383610b0b565b9150826002028217905092915050565b610b4b82610911565b67ffffffffffffffff811115610b6457610b6361091b565b5b610b6e8254610975565b610b79828285610ab9565b5f60209050601f831160018114610baa575f8415610b98578287015190505b610ba28582610b27565b865550610c09565b601f198416610bb8866109a5565b5f5b82811015610bdf57848901518255600182019150602085019450602081019050610bba565b86831015610bfc5784890151610bf8601f891682610b0b565b8355505b6001600288020188555050505b505050505050565b5f8115159050919050565b610c2581610c11565b82525050565b5f602082019050610c3e5f830184610c1c565b92915050565b5f82825260208201905092915050565b7f45524332303a206d696e7420746f20746865207a65726f2061646472657373005f82015250565b5f610c88601f83610c44565b9150610c9382610c54565b602082019050919050565b5f6020820190508181035f830152610cb581610c7c565b9050919050565b5f610cc682610871565b9150610cd183610871565b9250828201905080821115610ce957610ce8610715565b5b92915050565b610cf881610871565b82525050565b5f602082019050610d115f830184610cef565b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f610d4b602083610c44565b9150610d5682610d17565b602082019050919050565b5f6020820190508181035f830152610d7881610d3f565b9050919050565b608051612e3d610da55f395f8181610956015281816109ff01526111750152612e3d5ff3fe60806040526004361061021d575f3560e01c806363a803e111610122578063afdd33de116100aa578063cce0478a1161006e578063cce0478a14610764578063cd6a43a41461077a578063d2fc96a0146107a2578063dd62ed3e146107ca578063f2fde38b1461080657610224565b8063afdd33de146106aa578063b319c6b7146106d2578063bfab3db9146106fc578063c31c9c0714610712578063c527d0421461073c57610224565b80638da5cb5b116100f15780638da5cb5b146105b4578063956cc859146105de57806395d89b4114610608578063a457c2d714610632578063a9059cbb1461066e57610224565b806363a803e11461051057806370a082311461053a578063715018a614610576578063751fd1791461058c57610224565b80632d99d32e116101a55780633950935111610174578063395093511461045657806342966c68146104925780634ada218b146104ba57806351861dfd146104e4578063532b93b2146104fa57610224565b80632d99d32e146103c45780632ef998c0146103ec578063313ce567146104165780633443de241461044057610224565b806314b5e981116101ec57806314b5e981146102e0578063178021e31461030a57806318160ddd1461033457806323b872dd1461035e57806326991cc81461039a57610224565b80630184a8c31461022857806306fdde0314610264578063095ea7b31461028e5780630bd05b69146102ca57610224565b3661022457005b5f80fd5b348015610233575f80fd5b5061024e60048036038101906102499190611fb3565b61082e565b60405161025b9190611ff8565b60405180910390f35b34801561026f575f80fd5b50610278610880565b6040516102859190612081565b60405180910390f35b348015610299575f80fd5b506102b460048036038101906102af91906120d4565b610910565b6040516102c19190611ff8565b60405180910390f35b3480156102d5575f80fd5b506102de610932565b005b3480156102eb575f80fd5b506102f4610b53565b6040516103019190612121565b60405180910390f35b348015610315575f80fd5b5061031e610b59565b60405161032b9190612121565b60405180910390f35b34801561033f575f80fd5b50610348610b5f565b6040516103559190612121565b60405180910390f35b348015610369575f80fd5b50610384600480360381019061037f919061213a565b610b68565b6040516103919190611ff8565b60405180910390f35b3480156103a5575f80fd5b506103ae610b96565b6040516103bb9190612199565b60405180910390f35b3480156103cf575f80fd5b506103ea60048036038101906103e591906121dc565b610bbb565b005b3480156103f7575f80fd5b50610400610c60565b60405161040d9190611ff8565b60405180910390f35b348015610421575f80fd5b5061042a610c72565b6040516104379190612235565b60405180910390f35b34801561044b575f80fd5b50610454610c7a565b005b348015610461575f80fd5b5061047c600480360381019061047791906120d4565b610c8b565b6040516104899190611ff8565b60405180910390f35b34801561049d575f80fd5b506104b860048036038101906104b3919061224e565b610cc1565b005b3480156104c5575f80fd5b506104ce610cd5565b6040516104db9190611ff8565b60405180910390f35b3480156104ef575f80fd5b506104f8610ce7565b005b348015610505575f80fd5b5061050e610d81565b005b34801561051b575f80fd5b50610524610d99565b6040516105319190612121565b60405180910390f35b348015610545575f80fd5b50610560600480360381019061055b9190611fb3565b610d9f565b60405161056d9190612121565b60405180910390f35b348015610581575f80fd5b5061058a610de4565b005b348015610597575f80fd5b506105b260048036038101906105ad91906121dc565b610df7565b005b3480156105bf575f80fd5b506105c8610ea5565b6040516105d59190612199565b60405180910390f35b3480156105e9575f80fd5b506105f2610ecd565b6040516105ff9190612121565b60405180910390f35b348015610613575f80fd5b5061061c610eee565b6040516106299190612081565b60405180910390f35b34801561063d575f80fd5b50610658600480360381019061065391906120d4565b610f7e565b6040516106659190611ff8565b60405180910390f35b348015610679575f80fd5b50610694600480360381019061068f91906120d4565b610ff3565b6040516106a19190611ff8565b60405180910390f35b3480156106b5575f80fd5b506106d060048036038101906106cb9190612279565b611015565b005b3480156106dd575f80fd5b506106e6611086565b6040516106f39190612121565b60405180910390f35b348015610707575f80fd5b5061071061108c565b005b34801561071d575f80fd5b50610726611173565b6040516107339190612312565b60405180910390f35b348015610747575f80fd5b50610762600480360381019061075d919061224e565b611197565b005b34801561076f575f80fd5b506107786111a9565b005b348015610785575f80fd5b506107a0600480360381019061079b919061224e565b6111ba565b005b3480156107ad575f80fd5b506107c860048036038101906107c3919061232b565b6111cc565b005b3480156107d5575f80fd5b506107f060048036038101906107eb9190612356565b6111f0565b6040516107fd9190612121565b60405180910390f35b348015610811575f80fd5b5061082c60048036038101906108279190611fb3565b611272565b005b5f60105f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff169050919050565b60606003805461088f906123c1565b80601f01602080910402602001604051908101604052809291908181526020018280546108bb906123c1565b80156109065780601f106108dd57610100808354040283529160200191610906565b820191905f5260205f20905b8154815290600101906020018083116108e957829003601f168201915b5050505050905090565b5f8061091a6112f4565b90506109278185856112fb565b600191505092915050565b61093a6114be565b6001600a5f6101000a81548160ff0219169083151502179055507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109bd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109e19190612405565b73ffffffffffffffffffffffffffffffffffffffff1663e6a43905307f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a66573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a8a9190612405565b6040518363ffffffff1660e01b8152600401610aa7929190612430565b602060405180830381865afa158015610ac2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ae69190612405565b60065f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610b5160065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600161153c565b565b60085481565b60095481565b5f600254905090565b5f80610b726112f4565b9050610b7f8582856115da565b610b8a858585611665565b60019150509392505050565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610bc36114be565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610c52576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c49906124a1565b60405180910390fd5b610c5c828261153c565b5050565b600f5f9054906101000a900460ff1681565b5f6009905090565b610c826114be565b5f600c81905550565b5f80610c956112f4565b9050610cb6818585610ca785896111f0565b610cb191906124ec565b6112fb565b600191505092915050565b610cd2610ccc6112f4565b82611a2f565b50565b600a5f9054906101000a900460ff1681565b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610d276112f4565b73ffffffffffffffffffffffffffffffffffffffff1614610d46575f80fd5b5f610d5030610d9f565b9050610d7e3060075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683611665565b50565b610d896114be565b5f600b819055505f600881905550565b600e5481565b5f805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610dec6114be565b610df55f611bf2565b565b610dff6114be565b8060105f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f210f2a4a589e25d95b24cbdb060d26ae79bbe123a564d0f973503d48badd00ca82604051610e999190611ff8565b60405180910390a25050565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6009600a610edb919061264e565b6401dcd65000610eeb9190612698565b81565b606060048054610efd906123c1565b80601f0160208091040260200160405190810160405280929190818152602001828054610f29906123c1565b8015610f745780601f10610f4b57610100808354040283529160200191610f74565b820191905f5260205f20905b815481529060010190602001808311610f5757829003601f168201915b5050505050905090565b5f80610f886112f4565b90505f610f9582866111f0565b905083811015610fda576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fd190612749565b60405180910390fd5b610fe782868684036112fb565b60019250505092915050565b5f80610ffd6112f4565b905061100a818585611665565b600191505092915050565b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166110556112f4565b73ffffffffffffffffffffffffffffffffffffffff1614611074575f80fd5b80600981905550816008819055505050565b600d5481565b5f47116110ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110c5906127b1565b60405180910390fd5b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661110e6112f4565b73ffffffffffffffffffffffffffffffffffffffff161461112d575f80fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc4790811502906040515f60405180830381858888f19350505050158015611170573d5f803e3d5ffd5b50565b7f000000000000000000000000000000000000000000000000000000000000000081565b61119f6114be565b80600d8190555050565b6111b16114be565b5f600881905550565b6111c26114be565b80600e8190555050565b6111d46114be565b80600f5f6101000a81548160ff02191690831515021790555050565b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b61127a6114be565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036112e8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112df9061283f565b60405180910390fd5b6112f181611bf2565b50565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611369576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611360906128cd565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036113d7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113ce9061295b565b60405180910390fd5b8060015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516114b19190612121565b60405180910390a3505050565b6114c66112f4565b73ffffffffffffffffffffffffffffffffffffffff166114e4610ea5565b73ffffffffffffffffffffffffffffffffffffffff161461153a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611531906129c3565b60405180910390fd5b565b8060115f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff167f9a05f836a81b64d2d3ee62b752e87947ab26a9fdcd5b2572b1744ae8499b3aac60405160405180910390a35050565b5f6115e584846111f0565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811461165f5781811015611651576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161164890612a2b565b60405180910390fd5b61165e84848484036112fb565b5b50505050565b5f810361167c5761167783835f611cb5565b611a2a565b611684610ea5565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156116f257506116c2610ea5565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b801561172a57505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015611764575061dead73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b1561185857600a5f9054906101000a900460ff166118575760105f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680611817575060105f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b611856576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161184d90612a93565b60405180910390fd5b5b5b5f60105f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff161580156118f7575060105f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b90505f8115611a1c5760115f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff161561197e57611977606461196960095486611f2190919063ffffffff16565b611f3690919063ffffffff16565b90506119f9565b60115f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16156119f8576119f560646119e760085486611f2190919063ffffffff16565b611f3690919063ffffffff16565b90505b5b5f811115611a0d57611a0c853083611cb5565b5b8083611a199190612ab1565b92505b611a27858585611cb5565b50505b505050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611a9d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a9490612b54565b60405180910390fd5b611aa8825f83611f4b565b5f805f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905081811015611b2b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b2290612be2565b60405180910390fd5b8181035f808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508160025f82825403925050819055505f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611bda9190612121565b60405180910390a3611bed835f84611f50565b505050565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611d23576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d1a90612c70565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611d91576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d8890612cfe565b60405180910390fd5b611d9c838383611f4b565b5f805f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905081811015611e1f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e1690612d8c565b60405180910390fd5b8181035f808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550815f808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611f089190612121565b60405180910390a3611f1b848484611f50565b50505050565b5f8183611f2e9190612698565b905092915050565b5f8183611f439190612dd7565b905092915050565b505050565b505050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611f8282611f59565b9050919050565b611f9281611f78565b8114611f9c575f80fd5b50565b5f81359050611fad81611f89565b92915050565b5f60208284031215611fc857611fc7611f55565b5b5f611fd584828501611f9f565b91505092915050565b5f8115159050919050565b611ff281611fde565b82525050565b5f60208201905061200b5f830184611fe9565b92915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61205382612011565b61205d818561201b565b935061206d81856020860161202b565b61207681612039565b840191505092915050565b5f6020820190508181035f8301526120998184612049565b905092915050565b5f819050919050565b6120b3816120a1565b81146120bd575f80fd5b50565b5f813590506120ce816120aa565b92915050565b5f80604083850312156120ea576120e9611f55565b5b5f6120f785828601611f9f565b9250506020612108858286016120c0565b9150509250929050565b61211b816120a1565b82525050565b5f6020820190506121345f830184612112565b92915050565b5f805f6060848603121561215157612150611f55565b5b5f61215e86828701611f9f565b935050602061216f86828701611f9f565b9250506040612180868287016120c0565b9150509250925092565b61219381611f78565b82525050565b5f6020820190506121ac5f83018461218a565b92915050565b6121bb81611fde565b81146121c5575f80fd5b50565b5f813590506121d6816121b2565b92915050565b5f80604083850312156121f2576121f1611f55565b5b5f6121ff85828601611f9f565b9250506020612210858286016121c8565b9150509250929050565b5f60ff82169050919050565b61222f8161221a565b82525050565b5f6020820190506122485f830184612226565b92915050565b5f6020828403121561226357612262611f55565b5b5f612270848285016120c0565b91505092915050565b5f806040838503121561228f5761228e611f55565b5b5f61229c858286016120c0565b92505060206122ad858286016120c0565b9150509250929050565b5f819050919050565b5f6122da6122d56122d084611f59565b6122b7565b611f59565b9050919050565b5f6122eb826122c0565b9050919050565b5f6122fc826122e1565b9050919050565b61230c816122f2565b82525050565b5f6020820190506123255f830184612303565b92915050565b5f602082840312156123405761233f611f55565b5b5f61234d848285016121c8565b91505092915050565b5f806040838503121561236c5761236b611f55565b5b5f61237985828601611f9f565b925050602061238a85828601611f9f565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806123d857607f821691505b6020821081036123eb576123ea612394565b5b50919050565b5f815190506123ff81611f89565b92915050565b5f6020828403121561241a57612419611f55565b5b5f612427848285016123f1565b91505092915050565b5f6040820190506124435f83018561218a565b612450602083018461218a565b9392505050565b7f43616e6e6f742072656d6f766520746865206d61696e20414d4d2070616972215f82015250565b5f61248b60208361201b565b915061249682612457565b602082019050919050565b5f6020820190508181035f8301526124b88161247f565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6124f6826120a1565b9150612501836120a1565b9250828201905080821115612519576125186124bf565b5b92915050565b5f8160011c9050919050565b5f808291508390505b6001851115612574578086048111156125505761254f6124bf565b5b600185161561255f5780820291505b808102905061256d8561251f565b9450612534565b94509492505050565b5f8261258c5760019050612647565b81612599575f9050612647565b81600181146125af57600281146125b9576125e8565b6001915050612647565b60ff8411156125cb576125ca6124bf565b5b8360020a9150848211156125e2576125e16124bf565b5b50612647565b5060208310610133831016604e8410600b841016171561261d5782820a905083811115612618576126176124bf565b5b612647565b61262a848484600161252b565b92509050818404811115612641576126406124bf565b5b81810290505b9392505050565b5f612658826120a1565b91506126638361221a565b92506126907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848461257d565b905092915050565b5f6126a2826120a1565b91506126ad836120a1565b92508282026126bb816120a1565b915082820484148315176126d2576126d16124bf565b5b5092915050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f775f8201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b5f61273360258361201b565b915061273e826126d9565b604082019050919050565b5f6020820190508181035f83015261276081612727565b9050919050565b7f436f6e747261637420686f6c6473206e6f2045544800000000000000000000005f82015250565b5f61279b60158361201b565b91506127a682612767565b602082019050919050565b5f6020820190508181035f8301526127c88161278f565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f61282960268361201b565b9150612834826127cf565b604082019050919050565b5f6020820190508181035f8301526128568161281d565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f6128b760248361201b565b91506128c28261285d565b604082019050919050565b5f6020820190508181035f8301526128e4816128ab565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f61294560228361201b565b9150612950826128eb565b604082019050919050565b5f6020820190508181035f83015261297281612939565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6129ad60208361201b565b91506129b882612979565b602082019050919050565b5f6020820190508181035f8301526129da816129a1565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000005f82015250565b5f612a15601d8361201b565b9150612a20826129e1565b602082019050919050565b5f6020820190508181035f830152612a4281612a09565b9050919050565b7f54726164696e672069732063757272656e746c792064697361626c65642100005f82015250565b5f612a7d601e8361201b565b9150612a8882612a49565b602082019050919050565b5f6020820190508181035f830152612aaa81612a71565b9050919050565b5f612abb826120a1565b9150612ac6836120a1565b9250828203905081811115612ade57612add6124bf565b5b92915050565b7f45524332303a206275726e2066726f6d20746865207a65726f206164647265735f8201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b5f612b3e60218361201b565b9150612b4982612ae4565b604082019050919050565b5f6020820190508181035f830152612b6b81612b32565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e5f8201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b5f612bcc60228361201b565b9150612bd782612b72565b604082019050919050565b5f6020820190508181035f830152612bf981612bc0565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f612c5a60258361201b565b9150612c6582612c00565b604082019050919050565b5f6020820190508181035f830152612c8781612c4e565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f612ce860238361201b565b9150612cf382612c8e565b604082019050919050565b5f6020820190508181035f830152612d1581612cdc565b9050919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320625f8201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b5f612d7660268361201b565b9150612d8182612d1c565b604082019050919050565b5f6020820190508181035f830152612da381612d6a565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f612de1826120a1565b9150612dec836120a1565b925082612dfc57612dfb612daa565b5b82820490509291505056fea2646970667358221220f9ba34d9bf749cb14f87e6a6ff580d8493b3ea1397f5306102fac3e1d76a6fa964736f6c634300081a0033