Forkchoice Ethereum Mainnet

Address Contract Partially Verified

Address 0xd5085b30efc88C4F8820a61AC53F99da29211CC7
Balance 0 ETH
Nonce 1
Code Size 21241 bytes
Indexed Transactions 0 (1 on-chain, 1.1% indexed)
External Etherscan · Sourcify

Contract Bytecode

21241 bytes
0x60806040526004361061026b5760003560e01c806370a0823111610144578063afa4f3b2116100b6578063d2fcc0011161007a578063d2fcc00114610955578063dd62ed3e1461097e578063e01af92c146109bb578063e2f45605146109e4578063f2fde38b14610a0f578063f9d0831a14610a3857610272565b8063afa4f3b214610884578063b6f7f681146108ad578063b8158d60146108d6578063c024666814610901578063cd51e6d41461092a57610272565b8063a156c25b11610108578063a156c25b1461074c578063a40a3b7314610777578063a457c2d7146107a2578063a8a69b9d146107df578063a9059cbb1461081c578063aa4bde281461085957610272565b806370a0823114610679578063880bcbc1146106b65780638a8c523c146106df5780638da5cb5b146106f657806395d89b411461072157610272565b8063313ce567116101dd5780634fbee193116101a15780634fbee1931461056957806356a6cabf146105a657806359136fa5146105cf57806366e46d51146105fa5780636db79437146106255780636ddd17131461064e57610272565b8063313ce5671461048257806339509351146104ad57806341f10dc4146104ea57806349bd5a5e146105135780634ada218b1461053e57610272565b806318d9ceae1161022f57806318d9ceae1461036057806321a9d82a1461039d57806323b872dd146103c857806327a14fc2146104055780632a6c7dba1461042e5780632ba86bf21461045757610272565b80630105d0fd1461027757806306fdde03146102a2578063095ea7b3146102cd5780631694505e1461030a57806318160ddd1461033557610272565b3661027257005b600080fd5b34801561028357600080fd5b5061028c610a61565b60405161029991906139a8565b60405180910390f35b3480156102ae57600080fd5b506102b7610a67565b6040516102c49190613a53565b60405180910390f35b3480156102d957600080fd5b506102f460048036038101906102ef9190613b04565b610af9565b6040516103019190613b5f565b60405180910390f35b34801561031657600080fd5b5061031f610b17565b60405161032c9190613bd9565b60405180910390f35b34801561034157600080fd5b5061034a610b3d565b60405161035791906139a8565b60405180910390f35b34801561036c57600080fd5b5061038760048036038101906103829190613bf4565b610b47565b6040516103949190613b5f565b60405180910390f35b3480156103a957600080fd5b506103b2610b9d565b6040516103bf9190613b5f565b60405180910390f35b3480156103d457600080fd5b506103ef60048036038101906103ea9190613c21565b610bb0565b6040516103fc9190613b5f565b60405180910390f35b34801561041157600080fd5b5061042c60048036038101906104279190613c74565b610ccf565b005b34801561043a57600080fd5b5061045560048036038101906104509190613ccd565b610e3b565b005b34801561046357600080fd5b5061046c610f8a565b6040516104799190613b5f565b60405180910390f35b34801561048e57600080fd5b50610497610f9d565b6040516104a49190613d16565b60405180910390f35b3480156104b957600080fd5b506104d460048036038101906104cf9190613b04565b610fa6565b6040516104e19190613b5f565b60405180910390f35b3480156104f657600080fd5b50610511600480360381019061050c9190613bf4565b611052565b005b34801561051f57600080fd5b50610528611285565b6040516105359190613d40565b60405180910390f35b34801561054a57600080fd5b506105536112ab565b6040516105609190613b5f565b60405180910390f35b34801561057557600080fd5b50610590600480360381019061058b9190613bf4565b6112be565b60405161059d9190613b5f565b60405180910390f35b3480156105b257600080fd5b506105cd60048036038101906105c89190613ccd565b611314565b005b3480156105db57600080fd5b506105e4611463565b6040516105f191906139a8565b60405180910390f35b34801561060657600080fd5b5061060f611469565b60405161061c91906139a8565b60405180910390f35b34801561063157600080fd5b5061064c60048036038101906106479190613d5b565b61146f565b005b34801561065a57600080fd5b506106636115dd565b6040516106709190613b5f565b60405180910390f35b34801561068557600080fd5b506106a0600480360381019061069b9190613bf4565b6115f0565b6040516106ad91906139a8565b60405180910390f35b3480156106c257600080fd5b506106dd60048036038101906106d89190613d9b565b611638565b005b3480156106eb57600080fd5b506106f4611878565b005b34801561070257600080fd5b5061070b6119a5565b6040516107189190613d40565b60405180910390f35b34801561072d57600080fd5b506107366119cf565b6040516107439190613a53565b60405180910390f35b34801561075857600080fd5b50610761611a61565b60405161076e9190613d40565b60405180910390f35b34801561078357600080fd5b5061078c611a87565b60405161079991906139a8565b60405180910390f35b3480156107ae57600080fd5b506107c960048036038101906107c49190613b04565b611a8d565b6040516107d69190613b5f565b60405180910390f35b3480156107eb57600080fd5b5061080660048036038101906108019190613bf4565b611b78565b6040516108139190613b5f565b60405180910390f35b34801561082857600080fd5b50610843600480360381019061083e9190613b04565b611bce565b6040516108509190613b5f565b60405180910390f35b34801561086557600080fd5b5061086e611bec565b60405161087b91906139a8565b60405180910390f35b34801561089057600080fd5b506108ab60048036038101906108a69190613c74565b611bf2565b005b3480156108b957600080fd5b506108d460048036038101906108cf9190613d5b565b611d23565b005b3480156108e257600080fd5b506108eb611ef8565b6040516108f891906139a8565b60405180910390f35b34801561090d57600080fd5b5061092860048036038101906109239190613d9b565b611efe565b005b34801561093657600080fd5b5061093f6120d0565b60405161094c91906139a8565b60405180910390f35b34801561096157600080fd5b5061097c60048036038101906109779190613d9b565b6120d6565b005b34801561098a57600080fd5b506109a560048036038101906109a09190613ddb565b612316565b6040516109b291906139a8565b60405180910390f35b3480156109c757600080fd5b506109e260048036038101906109dd9190613ccd565b61239d565b005b3480156109f057600080fd5b506109f96124a6565b604051610a0691906139a8565b60405180910390f35b348015610a1b57600080fd5b50610a366004803603810190610a319190613bf4565b6124ac565b005b348015610a4457600080fd5b50610a5f6004803603810190610a5a9190613bf4565b612672565b005b60155481565b606060038054610a7690613e4a565b80601f0160208091040260200160405190810160405280929190818152602001828054610aa290613e4a565b8015610aef5780601f10610ac457610100808354040283529160200191610aef565b820191906000526020600020905b815481529060010190602001808311610ad257829003601f168201915b5050505050905090565b6000610b0d610b066128e2565b84846128ea565b6001905092915050565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600254905090565b6000601360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b601160009054906101000a900460ff1681565b600080600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610bfc6128e2565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610cb85782811015610ca3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c9a90613eed565b60405180910390fd5b610cb785610caf6128e2565b8584036128ea565b5b610cc3858585612ab3565b60019150509392505050565b610cd76128e2565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d66576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d5d90613f59565b60405180910390fd5b6064610d70610f9d565b600a610d7c91906140db565b610d84610b3d565b610d8e9190614155565b610d989190614155565b811015610dda576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dd1906141f8565b60405180910390fd5b610de2610f9d565b600a610dee91906140db565b81610df99190614218565b6012819055507f21bc0ea3406acb92d4449ab33befb4ae82f873a22f3b6cf0e466b2710beb5942601254604051610e3091906139a8565b60405180910390a150565b610e436128e2565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ed2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ec990613f59565b60405180910390fd5b601160009054906101000a900460ff16151581151503610f27576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f1e906142cc565b60405180910390fd5b80601160006101000a81548160ff0219169083151502179055507f670f884265aba2d05e7c26efbc42f8365effc4cb3fcfcefddba0c0b71a6231f1601160009054906101000a900460ff16604051610f7f9190613b5f565b60405180910390a150565b601460009054906101000a900460ff1681565b60006012905090565b6000611048610fb36128e2565b848460016000610fc16128e2565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461104391906142ec565b6128ea565b6001905092915050565b61105a6128e2565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146110e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110e090613f59565b60405180910390fd5b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611179576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161117090614392565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036111e8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111df90614424565b60405180910390fd5b80600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f9339b30badba18d3425dd12af6db2b7b0ea4b28d6240a10befb5bddb14cf6acf600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660405161127a9190613d40565b60405180910390a150565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600d60029054906101000a900460ff1681565b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b61131c6128e2565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146113ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113a290613f59565b60405180910390fd5b601460009054906101000a900460ff16151581151503611400576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113f7906144b6565b60405180910390fd5b80601460006101000a81548160ff0219169083151502179055507fe81be35e61864c26afd7a4655e99f321378d0aaae1e5af8ee67b658a7460f3cf601460009054906101000a900460ff166040516114589190613b5f565b60405180910390a150565b60165481565b600a5481565b6114776128e2565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611506576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114fd90613f59565b60405180910390fd5b600582111561154a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161154190614522565b60405180910390fd5b600581111561158e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161158590614522565b60405180910390fd5b81600a81905550806009819055507f53482196ef67ac615caab1c3eca2c270acbfdcd75e57c5f24c1b98b10c8e6e04600a546009546040516115d1929190614542565b60405180910390a15050565b600d60019054906101000a900460ff1681565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6116406128e2565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146116cf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116c690613f59565b60405180910390fd5b801515601360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151503611761576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611758906145dd565b60405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036117cf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117c690614649565b60405180910390fd5b80601360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f8727c4afe988887760e8db0bbad9f9fcceee6428545956832f67c8fdbd589c108260405161186c9190613b5f565b60405180910390a25050565b6118806128e2565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461190f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161190690613f59565b60405180910390fd5b600d60029054906101000a900460ff161561195f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611956906146b5565b60405180910390fd5b6001600d60026101000a81548160ff0219169083151502179055506001600d60016101000a81548160ff02191690831515021790555043600e8190555042600f81905550565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600480546119de90613e4a565b80601f0160208091040260200160405190810160405280929190818152602001828054611a0a90613e4a565b8015611a575780601f10611a2c57610100808354040283529160200191611a57565b820191906000526020600020905b815481529060010190602001808311611a3a57829003601f168201915b5050505050905090565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60095481565b60008060016000611a9c6128e2565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015611b59576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b5090614747565b60405180910390fd5b611b6d611b646128e2565b858584036128ea565b600191505092915050565b6000601060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000611be2611bdb6128e2565b8484612ab3565b6001905092915050565b60125481565b611bfa6128e2565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611c89576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c8090613f59565b60405180910390fd5b620f4240611c95610b3d565b611c9f9190614155565b8111611ce0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cd7906147d9565b60405180910390fd5b80600c819055507f7c26bfee26f82e8cb57af48f4019cc64582db6fac7bad778433f10572ae8b145600c54604051611d1891906139a8565b60405180910390a150565b611d2b6128e2565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611dba576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611db190613f59565b60405180910390fd5b6103e8611dc5610f9d565b600a611dd191906140db565b611dd9610b3d565b611de39190614155565b611ded9190614155565b8210158015611e2e57506103e8611e02610f9d565b600a611e0e91906140db565b611e16610b3d565b611e209190614155565b611e2a9190614155565b8110155b611e6d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e649061486b565b60405180910390fd5b611e75610f9d565b600a611e8191906140db565b82611e8c9190614218565b601581905550611e9a610f9d565b600a611ea691906140db565b81611eb19190614218565b6016819055507f8c8cbc911b80df94332ececb8eb0945274d76fa965600a0f01f42af3f8afb131601554601654604051611eec929190614542565b60405180910390a15050565b600f5481565b611f066128e2565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611f95576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f8c90613f59565b60405180910390fd5b801515600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151503612027576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161201e906148fd565b60405180910390fd5b80600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7826040516120c49190613b5f565b60405180910390a25050565b600e5481565b6120de6128e2565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461216d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161216490613f59565b60405180910390fd5b801515601060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515036121ff576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121f6906145dd565b60405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361226d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161226490614649565b60405180910390fd5b80601060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f1d9a11e204b58ad56c619c61600e42167624659d218f0143f1f64956b0daae6c8260405161230a9190613b5f565b60405180910390a25050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6123a56128e2565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612434576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161242b90613f59565b60405180910390fd5b801515600d60019054906101000a900460ff16151503612489576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124809061498f565b60405180910390fd5b80600d60016101000a81548160ff02191690831515021790555050565b600c5481565b6124b46128e2565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612543576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161253a90613f59565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036125b2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125a990614a21565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b61267a6128e2565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612709576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161270090613f59565b60405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603612777576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161276e90614ab3565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036127da576127d4473373ffffffffffffffffffffffffffffffffffffffff1661339990919063ffffffff16565b506128df565b600081905060008173ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b815260040161281a9190613d40565b602060405180830381865afa158015612837573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061285b9190614ae8565b90508173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff1660e01b8152600401612898929190614b15565b6020604051808303816000875af11580156128b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128db9190614b53565b5050505b50565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612959576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161295090614bf2565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036129c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129bf90614c84565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051612aa691906139a8565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612b22576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b1990614d16565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612b91576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b8890614da8565b60405180910390fd5b600d60029054906101000a900460ff1680612bf55750600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b80612c495750600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b612c88576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c7f90614e14565b60405180910390fd5b60008103612ca157612c9c83836000613454565b613394565b601460009054906101000a900460ff1615612ef757600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480612d5f5750600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b8015612db55750601360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015612e0b5750601360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15612ef657600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612eaf57601554811115612eaa576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612ea190614ea6565b60405180910390fd5b612ef5565b601654811115612ef4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612eeb90614ea6565b60405180910390fd5b5b5b5b6000612f02306115f0565b90506000600c548210159050808015612f285750600d60009054906101000a900460ff16155b8015612f815750600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b8015612f995750600d60019054906101000a900460ff165b15612fde576001600d60006101000a81548160ff021916908315150217905550612fc2826136d3565b6000600d60006101000a81548160ff0219169083151502179055505b6000600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806130815750600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b806130985750600d60009054906101000a900460ff165b156130a657600090506131cd565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1603613146576004600e5461310a91906142ec565b43101561311a5760639050613141565b61012c600f5461312a91906142ec565b42111561313b576009549050613140565b601390505b5b6131cc565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16036131c65761012c600f546131ab91906142ec565b4211156131bc57600a5490506131c1565b601390505b6131cb565b600090505b5b5b600081111561320d576000606482866131e69190614218565b6131f09190614155565b905080856131fe9190614ec6565b945061320b873083613454565b505b601160009054906101000a900460ff161561338557601060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156132c65750601060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156133205750600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b15613384576000613330866115f0565b9050601254858261334191906142ec565b1115613382576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161337990614f6c565b60405180910390fd5b505b5b613390868686613454565b5050505b505050565b6000814710156133de576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016133d590614fd8565b60405180910390fd5b60008373ffffffffffffffffffffffffffffffffffffffff168360405161340490615029565b60006040518083038185875af1925050503d8060008114613441576040519150601f19603f3d011682016040523d82523d6000602084013e613446565b606091505b505090508091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036134c3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016134ba90614d16565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603613532576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161352990614da8565b60405180910390fd5b61353d838383613985565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156135c3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016135ba906150b0565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461365691906142ec565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516136ba91906139a8565b60405180910390a36136cd84848461398a565b50505050565b60004790506000600267ffffffffffffffff8111156136f5576136f46150d0565b5b6040519080825280602002602001820160405280156137235781602001602082028036833780820191505090505b509050308160008151811061373b5761373a6150ff565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156137e2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138069190615143565b8160018151811061381a576138196150ff565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478460008430426040518663ffffffff1660e01b81526004016138b8959493929190615269565b600060405180830381600087803b1580156138d257600080fd5b505af11580156138e6573d6000803e3d6000fd5b50505050600082476138f89190614ec6565b905061394581600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661339990919063ffffffff16565b507f14e391b2e5e513e504ae2c417d969bd74548f96476fbae126418434c53dd228a8482604051613977929190614542565b60405180910390a150505050565b505050565b505050565b6000819050919050565b6139a28161398f565b82525050565b60006020820190506139bd6000830184613999565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156139fd5780820151818401526020810190506139e2565b60008484015250505050565b6000601f19601f8301169050919050565b6000613a25826139c3565b613a2f81856139ce565b9350613a3f8185602086016139df565b613a4881613a09565b840191505092915050565b60006020820190508181036000830152613a6d8184613a1a565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000613aa582613a7a565b9050919050565b613ab581613a9a565b8114613ac057600080fd5b50565b600081359050613ad281613aac565b92915050565b613ae18161398f565b8114613aec57600080fd5b50565b600081359050613afe81613ad8565b92915050565b60008060408385031215613b1b57613b1a613a75565b5b6000613b2985828601613ac3565b9250506020613b3a85828601613aef565b9150509250929050565b60008115159050919050565b613b5981613b44565b82525050565b6000602082019050613b746000830184613b50565b92915050565b6000819050919050565b6000613b9f613b9a613b9584613a7a565b613b7a565b613a7a565b9050919050565b6000613bb182613b84565b9050919050565b6000613bc382613ba6565b9050919050565b613bd381613bb8565b82525050565b6000602082019050613bee6000830184613bca565b92915050565b600060208284031215613c0a57613c09613a75565b5b6000613c1884828501613ac3565b91505092915050565b600080600060608486031215613c3a57613c39613a75565b5b6000613c4886828701613ac3565b9350506020613c5986828701613ac3565b9250506040613c6a86828701613aef565b9150509250925092565b600060208284031215613c8a57613c89613a75565b5b6000613c9884828501613aef565b91505092915050565b613caa81613b44565b8114613cb557600080fd5b50565b600081359050613cc781613ca1565b92915050565b600060208284031215613ce357613ce2613a75565b5b6000613cf184828501613cb8565b91505092915050565b600060ff82169050919050565b613d1081613cfa565b82525050565b6000602082019050613d2b6000830184613d07565b92915050565b613d3a81613a9a565b82525050565b6000602082019050613d556000830184613d31565b92915050565b60008060408385031215613d7257613d71613a75565b5b6000613d8085828601613aef565b9250506020613d9185828601613aef565b9150509250929050565b60008060408385031215613db257613db1613a75565b5b6000613dc085828601613ac3565b9250506020613dd185828601613cb8565b9150509250929050565b60008060408385031215613df257613df1613a75565b5b6000613e0085828601613ac3565b9250506020613e1185828601613ac3565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680613e6257607f821691505b602082108103613e7557613e74613e1b565b5b50919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b6000613ed76028836139ce565b9150613ee282613e7b565b604082019050919050565b60006020820190508181036000830152613f0681613eca565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000613f436020836139ce565b9150613f4e82613f0d565b602082019050919050565b60006020820190508181036000830152613f7281613f36565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b6001851115613fff57808604811115613fdb57613fda613f79565b5b6001851615613fea5780820291505b8081029050613ff885613fa8565b9450613fbf565b94509492505050565b60008261401857600190506140d4565b8161402657600090506140d4565b816001811461403c576002811461404657614075565b60019150506140d4565b60ff84111561405857614057613f79565b5b8360020a91508482111561406f5761406e613f79565b5b506140d4565b5060208310610133831016604e8410600b84101617156140aa5782820a9050838111156140a5576140a4613f79565b5b6140d4565b6140b78484846001613fb5565b925090508184048111156140ce576140cd613f79565b5b81810290505b9392505050565b60006140e68261398f565b91506140f183613cfa565b925061411e7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484614008565b905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006141608261398f565b915061416b8361398f565b92508261417b5761417a614126565b5b828204905092915050565b7f4d61782077616c6c65742070657263656e746167652063616e6e6f742062652060008201527f6c6f776572207468616e20312500000000000000000000000000000000000000602082015250565b60006141e2602d836139ce565b91506141ed82614186565b604082019050919050565b60006020820190508181036000830152614211816141d5565b9050919050565b60006142238261398f565b915061422e8361398f565b925082820261423c8161398f565b9150828204841483151761425357614252613f79565b5b5092915050565b7f4d61782077616c6c6574206c696d697420697320616c7265616479207365742060008201527f746f207468617420737461746500000000000000000000000000000000000000602082015250565b60006142b6602d836139ce565b91506142c18261425a565b604082019050919050565b600060208201905081810360008301526142e5816142a9565b9050919050565b60006142f78261398f565b91506143028361398f565b925082820190508082111561431a57614319613f79565b5b92915050565b7f4543492077616c6c657420697320616c7265616479207468617420616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b600061437c6022836139ce565b915061438782614320565b604082019050919050565b600060208201905081810360008301526143ab8161436f565b9050919050565b7f4543492077616c6c65742063616e6e6f7420626520746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061440e6025836139ce565b9150614419826143b2565b604082019050919050565b6000602082019050818103600083015261443d81614401565b9050919050565b7f4d6178207472616e73616374696f6e206c696d697420697320616c726561647960008201527f2073657420746f20746861742073746174650000000000000000000000000000602082015250565b60006144a06032836139ce565b91506144ab82614444565b604082019050919050565b600060208201905081810360008301526144cf81614493565b9050919050565b7f4665652063616e6e6f74206578636565642035252e0000000000000000000000600082015250565b600061450c6015836139ce565b9150614517826144d6565b602082019050919050565b6000602082019050818103600083015261453b816144ff565b9050919050565b60006040820190506145576000830185613999565b6145646020830184613999565b9392505050565b7f4163636f756e7420697320616c72656164792073657420746f2074686174207360008201527f7461746500000000000000000000000000000000000000000000000000000000602082015250565b60006145c76024836139ce565b91506145d28261456b565b604082019050919050565b600060208201905081810360008301526145f6816145ba565b9050919050565b7f43616e277420736574207468697320616464726573732e000000000000000000600082015250565b60006146336017836139ce565b915061463e826145fd565b602082019050919050565b6000602082019050818103600083015261466281614626565b9050919050565b7f54726164696e6720616c726561647920656e61626c65642e0000000000000000600082015250565b600061469f6018836139ce565b91506146aa82614669565b602082019050919050565b600060208201905081810360008301526146ce81614692565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b60006147316025836139ce565b915061473c826146d5565b604082019050919050565b6000602082019050818103600083015261476081614724565b9050919050565b7f53776170546f6b656e734174416d6f756e74206d75737420626520677265617460008201527f6572207468616e20302e3030303125206f6620746f74616c20737570706c7900602082015250565b60006147c3603f836139ce565b91506147ce82614767565b604082019050919050565b600060208201905081810360008301526147f2816147b6565b9050919050565b7f4d6178205472616e73616374696f6e206c696d69732063616e6e6f742062652060008201527f6c6f776572207468616e20302e3125206f6620746f74616c20737570706c7900602082015250565b6000614855603f836139ce565b9150614860826147f9565b604082019050919050565b6000602082019050818103600083015261488481614848565b9050919050565b7f4163636f756e7420697320616c7265616479207468652076616c7565206f662060008201527f276578636c756465642700000000000000000000000000000000000000000000602082015250565b60006148e7602a836139ce565b91506148f28261488b565b604082019050919050565b60006020820190508181036000830152614916816148da565b9050919050565b7f73776170456e61626c656420616c72656164792061742074686973207374617460008201527f652e000000000000000000000000000000000000000000000000000000000000602082015250565b60006149796022836139ce565b91506149848261491d565b604082019050919050565b600060208201905081810360008301526149a88161496c565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000614a0b6026836139ce565b9150614a16826149af565b604082019050919050565b60006020820190508181036000830152614a3a816149fe565b9050919050565b7f4f776e65722063616e6e6f7420636c61696d20636f6e7472616374277320626160008201527f6c616e6365206f6620697473206f776e20746f6b656e73000000000000000000602082015250565b6000614a9d6037836139ce565b9150614aa882614a41565b604082019050919050565b60006020820190508181036000830152614acc81614a90565b9050919050565b600081519050614ae281613ad8565b92915050565b600060208284031215614afe57614afd613a75565b5b6000614b0c84828501614ad3565b91505092915050565b6000604082019050614b2a6000830185613d31565b614b376020830184613999565b9392505050565b600081519050614b4d81613ca1565b92915050565b600060208284031215614b6957614b68613a75565b5b6000614b7784828501614b3e565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000614bdc6024836139ce565b9150614be782614b80565b604082019050919050565b60006020820190508181036000830152614c0b81614bcf565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000614c6e6022836139ce565b9150614c7982614c12565b604082019050919050565b60006020820190508181036000830152614c9d81614c61565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000614d006025836139ce565b9150614d0b82614ca4565b604082019050919050565b60006020820190508181036000830152614d2f81614cf3565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000614d926023836139ce565b9150614d9d82614d36565b604082019050919050565b60006020820190508181036000830152614dc181614d85565b9050919050565b7f54726164696e67206e6f742079657420656e61626c6564210000000000000000600082015250565b6000614dfe6018836139ce565b9150614e0982614dc8565b602082019050919050565b60006020820190508181036000830152614e2d81614df1565b9050919050565b7f416e74695768616c653a205472616e7366657220616d6f756e7420657863656560008201527f647320746865206d61785472616e73616374696f6e416d6f756e740000000000602082015250565b6000614e90603b836139ce565b9150614e9b82614e34565b604082019050919050565b60006020820190508181036000830152614ebf81614e83565b9050919050565b6000614ed18261398f565b9150614edc8361398f565b9250828203905081811115614ef457614ef3613f79565b5b92915050565b7f4d617857616c6c65743a20526563697069656e7420657863656564732074686560008201527f206d617857616c6c6574416d6f756e7400000000000000000000000000000000602082015250565b6000614f566030836139ce565b9150614f6182614efa565b604082019050919050565b60006020820190508181036000830152614f8581614f49565b9050919050565b7f416464726573733a20696e73756666696369656e742062616c616e6365000000600082015250565b6000614fc2601d836139ce565b9150614fcd82614f8c565b602082019050919050565b60006020820190508181036000830152614ff181614fb5565b9050919050565b600081905092915050565b50565b6000615013600083614ff8565b915061501e82615003565b600082019050919050565b600061503482615006565b9150819050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b600061509a6026836139ce565b91506150a58261503e565b604082019050919050565b600060208201905081810360008301526150c98161508d565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60008151905061513d81613aac565b92915050565b60006020828403121561515957615158613a75565b5b60006151678482850161512e565b91505092915050565b6000819050919050565b600061519561519061518b84615170565b613b7a565b61398f565b9050919050565b6151a58161517a565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6151e081613a9a565b82525050565b60006151f283836151d7565b60208301905092915050565b6000602082019050919050565b6000615216826151ab565b61522081856151b6565b935061522b836151c7565b8060005b8381101561525c57815161524388826151e6565b975061524e836151fe565b92505060018101905061522f565b5085935050505092915050565b600060a08201905061527e6000830188613999565b61528b602083018761519c565b818103604083015261529d818661520b565b90506152ac6060830185613d31565b6152b96080830184613999565b969550505050505056fea2646970667358221220c9fc98a5b4e70a3981580ce84d21cd95524ab13bb02487f83bc5d7dbe181171864736f6c63430008110033

Verified Source Code Partial Match

Compiler: v0.8.17+commit.8df45f5f EVM: london Optimization: No
ECI.sol 793 lines
/**
 *                    
           ___
       .:::---:::.
     .'--:     :--'.
    /.'   \   /   `.\
   | /'._ /:::\ _.'\ |
   |/    |:::::|    \|
   |:\ .''-:::-''. /:|
    \:|    `|`    |:/
     '.'._.:::._.'.'
       '-:::::::-' 
                                           
 * European Cup Inu : BetFi
 * 
 * Telegram: https://t.me/EuropeanCupInu
 * Twitter: twitter.com/EuropeanCupInu
 * Homepage: https://europeancupinu.com
 * 
 * Total Supply: 1,000,000,000 $ECI
 * Transaction Tax: 0%
 * Buy/Sell Tax: 5%
*/

// SPDX-License-Identifier: MIT

pragma solidity 0.8.17;

interface IUniswapV2Factory {
    event PairCreated(address indexed token0, address indexed token1, address pair, uint);

    function feeTo() external view returns (address);
    function feeToSetter() external view returns (address);
    function getPair(address tokenA, address tokenB) external view returns (address pair);
    function allPairs(uint) external view returns (address pair);
    function allPairsLength() external view returns (uint);
    function createPair(address tokenA, address tokenB) external returns (address pair);
    function setFeeTo(address) external;
    function setFeeToSetter(address) external;
}

interface IUniswapV2Pair {
    event Approval(address indexed owner, address indexed spender, uint value);
    event Transfer(address indexed from, address indexed to, uint value);

    function name() external pure returns (string memory);
    function symbol() external pure returns (string memory);
    function decimals() external pure returns (uint8);
    function totalSupply() external view returns (uint);
    function balanceOf(address owner) external view returns (uint);
    function allowance(address owner, address spender) external view returns (uint);

    function approve(address spender, uint value) external returns (bool);
    function transfer(address to, uint value) external returns (bool);
    function transferFrom(address from, address to, uint value) external returns (bool);

    function DOMAIN_SEPARATOR() external view returns (bytes32);
    function PERMIT_TYPEHASH() external pure returns (bytes32);
    function nonces(address owner) external view returns (uint);

    function permit(address owner, address spender, uint value, uint deadline, uint8 v, bytes32 r, bytes32 s) external;

    event Mint(address indexed sender, uint amount0, uint amount1);
    event Burn(address indexed sender, uint amount0, uint amount1, address indexed to);
    event Swap(
        address indexed sender,
        uint amount0In,
        uint amount1In,
        uint amount0Out,
        uint amount1Out,
        address indexed to
    );
    event Sync(uint112 reserve0, uint112 reserve1);

    function MINIMUM_LIQUIDITY() external pure returns (uint);
    function factory() external view returns (address);
    function token0() external view returns (address);
    function token1() external view returns (address);
    function getReserves() external view returns (uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast);
    function price0CumulativeLast() external view returns (uint);
    function price1CumulativeLast() external view returns (uint);
    function kLast() external view returns (uint);

    function mint(address to) external returns (uint liquidity);
    function burn(address to) external returns (uint amount0, uint amount1);
    function swap(uint amount0Out, uint amount1Out, address to, bytes calldata data) external;
    function skim(address to) external;
    function sync() external;

    function initialize(address, address) external;
}

interface IUniswapV2Router01 {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);

    function addLiquidity(
        address tokenA,
        address tokenB,
        uint amountADesired,
        uint amountBDesired,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline
    ) external returns (uint amountA, uint amountB, uint liquidity);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
    function removeLiquidity(
        address tokenA,
        address tokenB,
        uint liquidity,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline
    ) external returns (uint amountA, uint amountB);
    function removeLiquidityETH(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external returns (uint amountToken, uint amountETH);
    function removeLiquidityWithPermit(
        address tokenA,
        address tokenB,
        uint liquidity,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline,
        bool approveMax, uint8 v, bytes32 r, bytes32 s
    ) external returns (uint amountA, uint amountB);
    function removeLiquidityETHWithPermit(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline,
        bool approveMax, uint8 v, bytes32 r, bytes32 s
    ) external returns (uint amountToken, uint amountETH);
    function swapExactTokensForTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external returns (uint[] memory amounts);
    function swapTokensForExactTokens(
        uint amountOut,
        uint amountInMax,
        address[] calldata path,
        address to,
        uint deadline
    ) external returns (uint[] memory amounts);
    function swapExactETHForTokens(uint amountOutMin, address[] calldata path, address to, uint deadline)
        external
        payable
        returns (uint[] memory amounts);
    function swapTokensForExactETH(uint amountOut, uint amountInMax, address[] calldata path, address to, uint deadline)
        external
        returns (uint[] memory amounts);
    function swapExactTokensForETH(uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline)
        external
        returns (uint[] memory amounts);
    function swapETHForExactTokens(uint amountOut, address[] calldata path, address to, uint deadline)
        external
        payable
        returns (uint[] memory amounts);

    function quote(uint amountA, uint reserveA, uint reserveB) external pure returns (uint amountB);
    function getAmountOut(uint amountIn, uint reserveIn, uint reserveOut) external pure returns (uint amountOut);
    function getAmountIn(uint amountOut, uint reserveIn, uint reserveOut) external pure returns (uint amountIn);
    function getAmountsOut(uint amountIn, address[] calldata path) external view returns (uint[] memory amounts);
    function getAmountsIn(uint amountOut, address[] calldata path) external view returns (uint[] memory amounts);
}

interface IUniswapV2Router02 is IUniswapV2Router01 {
    function removeLiquidityETHSupportingFeeOnTransferTokens(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external returns (uint amountETH);
    function removeLiquidityETHWithPermitSupportingFeeOnTransferTokens(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline,
        bool approveMax, uint8 v, bytes32 r, bytes32 s
    ) external returns (uint amountETH);

    function swapExactTokensForTokensSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external payable;
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
}

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external returns (bool);
   
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

interface IERC20Metadata is IERC20 {
    function name() external view returns (string memory);
    function symbol() external view returns (string memory);
    function decimals() external view returns (uint8);
}

library Address {
    function sendValue(address payable recipient, uint256 amount) internal returns(bool){
        require(address(this).balance >= amount, "Address: insufficient balance");

        (bool success, ) = recipient.call{value: amount}("");
        return success;
    }
}

abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }

    function _msgData() internal view virtual returns (bytes calldata) {
        this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
        return msg.data;
    }
}

abstract contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

    function owner() public view returns (address) {
        return _owner;
    }

    modifier onlyOwner() {
        require(_owner == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}

contract ERC20 is Context, IERC20, IERC20Metadata {
    mapping(address => uint256) private _balances;

    mapping(address => mapping(address => uint256)) private _allowances;

    uint256 private _totalSupply;

    string private _name;
    string private _symbol;

    constructor(string memory name_, string memory symbol_) {
        _name = name_;
        _symbol = symbol_;
    }

    function name() public view virtual override returns (string memory) {
        return _name;
    }

    function symbol() public view virtual override returns (string memory) {
        return _symbol;
    }

    function decimals() public view virtual override returns (uint8) {
        return 18;
    }

    function totalSupply() public view virtual override returns (uint256) {
        return _totalSupply;
    }

    function balanceOf(address account) public view virtual override returns (uint256) {
        return _balances[account];
    }

    function transfer(address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }

    function allowance(address owner, address spender) public view virtual override returns (uint256) {
        return _allowances[owner][spender];
    }

    function approve(address spender, uint256 amount) public virtual override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public virtual override returns (bool) {
        uint256 currentAllowance = _allowances[sender][_msgSender()];
        if (currentAllowance != type(uint256).max) {
            require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance");
            unchecked {
                _approve(sender, _msgSender(), currentAllowance - amount);
            }
        }

        _transfer(sender, recipient, amount);

        return true;
    }

    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender] + addedValue);
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        uint256 currentAllowance = _allowances[_msgSender()][spender];
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
        unchecked {
            _approve(_msgSender(), spender, currentAllowance - subtractedValue);
        }

        return true;
    }

    function _transfer(
        address sender,
        address recipient,
        uint256 amount
    ) internal virtual {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");

        _beforeTokenTransfer(sender, recipient, amount);

        uint256 senderBalance = _balances[sender];
        require(senderBalance >= amount, "ERC20: transfer amount exceeds balance");
        unchecked {
            _balances[sender] = senderBalance - amount;
        }
        _balances[recipient] += amount;

        emit Transfer(sender, recipient, amount);

        _afterTokenTransfer(sender, recipient, amount);
    }

    function _mint(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");

        _beforeTokenTransfer(address(0), account, amount);

        _totalSupply += amount;
        _balances[account] += amount;
        emit Transfer(address(0), account, amount);

        _afterTokenTransfer(address(0), account, amount);
    }

    function _burn(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: burn from the zero address");

        _beforeTokenTransfer(account, address(0), amount);

        uint256 accountBalance = _balances[account];
        require(accountBalance >= amount, "ERC20: burn amount exceeds balance");
        unchecked {
            _balances[account] = accountBalance - amount;
        }
        _totalSupply -= amount;

        emit Transfer(account, address(0), amount);

        _afterTokenTransfer(account, address(0), amount);
    }

    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");

        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _beforeTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {}

    function _afterTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {}
}

contract ECI is ERC20, Ownable {
    using Address for address payable;

    IUniswapV2Router02 public uniswapV2Router;
    address public  uniswapV2Pair;

    mapping (address => bool) private _isExcludedFromFees;

    uint256 public  ECIFeeOnBuy;
    uint256 public  ECIFeeOnSell;

    address public  ECIVault;

    uint256 public  swapTokensAtAmount;
    bool    private swapping;

    bool    public swapEnabled;

    event ExcludeFromFees(address indexed account, bool isExcluded);
    event ECIVaultChanged(address ECIVault);
    event UpdateFees(uint256 ECIFeeOnBuy, uint256 ECIFeeOnSell);
    event SwapAndSendECI(uint256 tokensSwapped, uint256 bnbSend);
    event SwapTokensAtAmountUpdated(uint256 swapTokensAtAmount);

    constructor () ERC20("European Cup Inu", "ECI") 
    {   
        address router;
        if (block.chainid == 56) {
            router = 0x10ED43C718714eb63d5aA57B78B54704E256024E; // BSC Pancake Mainnet Router
        } else if (block.chainid == 97) {
            router = 0xD99D1c33F9fC3444f8101754aBC46c52416550D1; // BSC Pancake Testnet Router
        } else if (block.chainid == 1 || block.chainid == 5) {
            router = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D; // ETH Uniswap Mainnet % Testnet
        } else {
            revert();
        }

        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(router);
        address _uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory())
            .createPair(address(this), _uniswapV2Router.WETH());

        uniswapV2Router = _uniswapV2Router;
        uniswapV2Pair   = _uniswapV2Pair;

        _approve(address(this), address(uniswapV2Router), type(uint256).max);

        ECIFeeOnBuy  = 5;
        ECIFeeOnSell = 5;

        ECIVault = 0x639D48fB134f39b89696bC74214B0d61AFba4bc1;

        maxTransactionLimitEnabled = true;

        _isExcludedFromMaxTxLimit[owner()] = true;
        _isExcludedFromMaxTxLimit[address(this)] = true;
        _isExcludedFromMaxTxLimit[address(0xdead)] = true;
        _isExcludedFromMaxTxLimit[ECIVault] = true;
        _isExcludedFromMaxTxLimit[0x407993575c91ce7643a4d4cCACc9A98c36eE1BBE] = true; //pinklock

        maxWalletLimitEnabled = true;

        _isExcludedFromMaxWalletLimit[owner()] = true;
        _isExcludedFromMaxWalletLimit[address(this)] = true;
        _isExcludedFromMaxWalletLimit[address(0xdead)] = true;
        _isExcludedFromMaxWalletLimit[ECIVault] = true;
        _isExcludedFromMaxWalletLimit[0x407993575c91ce7643a4d4cCACc9A98c36eE1BBE] = true; //pinklock

        _isExcludedFromFees[owner()] = true;
        _isExcludedFromFees[address(0xdead)] = true;
        _isExcludedFromFees[address(this)] = true;
        _isExcludedFromFees[0x407993575c91ce7643a4d4cCACc9A98c36eE1BBE] = true; //pinklock

        _mint(owner(), 1e9 * (10 ** decimals()));
        swapTokensAtAmount = totalSupply() / 5_000;

        maxTransactionAmountBuy     = totalSupply() * 20 / 1000;
        maxTransactionAmountSell    = totalSupply() * 20 / 1000;

        maxWalletAmount = totalSupply() * 20 / 1000;

        tradingEnabled = false;
        swapEnabled = false;
    }

    receive() external payable {

  	}

    function claimStuckTokens(address token) external onlyOwner {
        require(token != address(this), "Owner cannot claim contract's balance of its own tokens");
        if (token == address(0x0)) {
            payable(msg.sender).sendValue(address(this).balance);
            return;
        }
        IERC20 ERC20token = IERC20(token);
        uint256 balance = ERC20token.balanceOf(address(this));
        ERC20token.transfer(msg.sender, balance);
    }

    function excludeFromFees(address account, bool excluded) external onlyOwner{
        require(_isExcludedFromFees[account] != excluded,"Account is already the value of 'excluded'");
        _isExcludedFromFees[account] = excluded;

        emit ExcludeFromFees(account, excluded);
    }

    function isExcludedFromFees(address account) public view returns(bool) {
        return _isExcludedFromFees[account];
    }

    function updateFees(uint256 _ECIFeeOnSell, uint256 _ECIFeeOnBuy) external onlyOwner {
        require(_ECIFeeOnSell <= 5, "Fee cannot exceed 5%.");
        require(_ECIFeeOnBuy <= 5, "Fee cannot exceed 5%.");

        ECIFeeOnSell = _ECIFeeOnSell;
        ECIFeeOnBuy = _ECIFeeOnBuy;

        emit UpdateFees(ECIFeeOnSell, ECIFeeOnBuy);
    }

    function changeECIVault(address _ECIVault) external onlyOwner{
        require(_ECIVault != ECIVault, "ECI wallet is already that address");
        require(_ECIVault != address(0),"ECI wallet cannot be the zero address");
        ECIVault = _ECIVault;

        emit ECIVaultChanged(ECIVault);
    }

    bool public tradingEnabled;
    uint256 public tradingBlock;
    uint256 public tradingTime;

    function enableTrading() external onlyOwner{
        require(!tradingEnabled, "Trading already enabled.");
        tradingEnabled = true;
        swapEnabled = true;
        tradingBlock = block.number;
        tradingTime = block.timestamp;
    }

    function _transfer(address from,address to,uint256 amount) internal  override {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(tradingEnabled || _isExcludedFromFees[from] || _isExcludedFromFees[to], "Trading not yet enabled!");
       
        if (amount == 0) {
            super._transfer(from, to, 0);
            return;
        }

        if (maxTransactionLimitEnabled) 
        {
            if ((from == uniswapV2Pair || to == uniswapV2Pair) &&
                !_isExcludedFromMaxTxLimit[from] && 
                !_isExcludedFromMaxTxLimit[to]
            ) {
                if (from == uniswapV2Pair) {
                    require(
                        amount <= maxTransactionAmountBuy,  
                        "AntiWhale: Transfer amount exceeds the maxTransactionAmount"
                    );
                } else {
                    require(
                        amount <= maxTransactionAmountSell, 
                        "AntiWhale: Transfer amount exceeds the maxTransactionAmount"
                    );
                }
            }
        }

		uint256 contractTokenBalance = balanceOf(address(this));

        bool canSwap = contractTokenBalance >= swapTokensAtAmount;

        if (canSwap &&
            !swapping &&
            to == uniswapV2Pair &&
            swapEnabled
        ) {
            swapping = true;

            swapAndSendECI(contractTokenBalance);     

            swapping = false;
        }

        uint256 _totalFees;
        if (_isExcludedFromFees[from] || _isExcludedFromFees[to] || swapping) {
            _totalFees = 0;
        } else if (from == uniswapV2Pair) {
            if (block.number < tradingBlock + 4){
                _totalFees = 99;
            } else if(block.timestamp > tradingTime + 300){
                _totalFees = ECIFeeOnBuy;
            } else{
                _totalFees =  19;
            }
        } else if (to == uniswapV2Pair) {
            if(block.timestamp > tradingTime + 300){
                _totalFees = ECIFeeOnSell;
            } else{
                _totalFees =  19;
            }
        } else {
            _totalFees = 0;
        }

        if (_totalFees > 0) {
            uint256 fees = (amount * _totalFees) / 100;
            amount = amount - fees;
            super._transfer(from, address(this), fees);
        }

        if (maxWalletLimitEnabled) 
        {
            if (!_isExcludedFromMaxWalletLimit[from] && 
                !_isExcludedFromMaxWalletLimit[to] &&
                to != uniswapV2Pair
            ) {
                uint256 balance  = balanceOf(to);
                require(
                    balance + amount <= maxWalletAmount, 
                    "MaxWallet: Recipient exceeds the maxWalletAmount"
                );
            }
        }

        super._transfer(from, to, amount);
    }

    function setSwapEnabled(bool _enabled) external onlyOwner{
        require(swapEnabled != _enabled, "swapEnabled already at this state.");
        swapEnabled = _enabled;
    }

    function setSwapTokensAtAmount(uint256 newAmount) external onlyOwner{
        require(newAmount > totalSupply() / 1_000_000, "SwapTokensAtAmount must be greater than 0.0001% of total supply");
        swapTokensAtAmount = newAmount;

        emit SwapTokensAtAmountUpdated(swapTokensAtAmount);
    }

    function swapAndSendECI(uint256 tokenAmount) private {
        uint256 initialBalance = address(this).balance;

        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();

        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp);

        uint256 newBalance = address(this).balance - initialBalance;

        payable(ECIVault).sendValue(newBalance);

        emit SwapAndSendECI(tokenAmount, newBalance);
    }

    mapping(address => bool) private _isExcludedFromMaxWalletLimit;
    bool    public maxWalletLimitEnabled;
    uint256 public maxWalletAmount;

    event ExcludedFromMaxWalletLimit(address indexed account, bool isExcluded);
    event MaxWalletLimitStateChanged(bool maxWalletLimit);
    event MaxWalletLimitAmountChanged(uint256 maxWalletAmount);

    function setEnableMaxWalletLimit(bool enable) external onlyOwner {
        require(enable != maxWalletLimitEnabled,"Max wallet limit is already set to that state");
        maxWalletLimitEnabled = enable;

        emit MaxWalletLimitStateChanged(maxWalletLimitEnabled);
    }

    function setMaxWalletAmount(uint256 _maxWalletAmount) external onlyOwner {
        require(_maxWalletAmount >= (totalSupply() / (10 ** decimals())) / 100, "Max wallet percentage cannot be lower than 1%");
        maxWalletAmount = _maxWalletAmount * (10 ** decimals());

        emit MaxWalletLimitAmountChanged(maxWalletAmount);
    }

    function excludeFromMaxWallet(address account, bool exclude) external onlyOwner {
        require( _isExcludedFromMaxWalletLimit[account] != exclude,"Account is already set to that state");
        require(account != address(this), "Can't set this address.");

        _isExcludedFromMaxWalletLimit[account] = exclude;

        emit ExcludedFromMaxWalletLimit(account, exclude);
    }

    function isExcludedFromMaxWalletLimit(address account) public view returns(bool) {
        return _isExcludedFromMaxWalletLimit[account];
    }

    mapping(address => bool) private _isExcludedFromMaxTxLimit;
    bool    public  maxTransactionLimitEnabled;
    uint256 public  maxTransactionAmountBuy;
    uint256 public  maxTransactionAmountSell;

    event ExcludedFromMaxTransactionLimit(address indexed account, bool isExcluded);
    event MaxTransactionLimitStateChanged(bool maxTransactionLimit);
    event MaxTransactionLimitAmountChanged(uint256 maxTransactionAmountBuy, uint256 maxTransactionAmountSell);

    function setEnableMaxTransactionLimit(bool enable) external onlyOwner {
        require(enable != maxTransactionLimitEnabled, "Max transaction limit is already set to that state");
        maxTransactionLimitEnabled = enable;

        emit MaxTransactionLimitStateChanged(maxTransactionLimitEnabled);
    }

    function setMaxTransactionAmounts(uint256 _maxTransactionAmountBuy, uint256 _maxTransactionAmountSell) external onlyOwner {
        require(
            _maxTransactionAmountBuy  >= (totalSupply() / (10 ** decimals())) / 1_000 && 
            _maxTransactionAmountSell >= (totalSupply() / (10 ** decimals())) / 1_000, 
            "Max Transaction limis cannot be lower than 0.1% of total supply"
        ); 
        maxTransactionAmountBuy  = _maxTransactionAmountBuy  * (10 ** decimals());
        maxTransactionAmountSell = _maxTransactionAmountSell * (10 ** decimals());

        emit MaxTransactionLimitAmountChanged(maxTransactionAmountBuy, maxTransactionAmountSell);
    }

    function excludeFromMaxTransactionLimit(address account, bool exclude) external onlyOwner {
        require( _isExcludedFromMaxTxLimit[account] != exclude, "Account is already set to that state");
        require(account != address(this), "Can't set this address.");

        _isExcludedFromMaxTxLimit[account] = exclude;

        emit ExcludedFromMaxTransactionLimit(account, exclude);
    }

    function isExcludedFromMaxTransaction(address account) public view returns(bool) {
        return _isExcludedFromMaxTxLimit[account];
    }
}

Read Contract

ECIFeeOnBuy 0xa40a3b73 → uint256
ECIFeeOnSell 0x66e46d51 → uint256
ECIVault 0xa156c25b → address
allowance 0xdd62ed3e → uint256
balanceOf 0x70a08231 → uint256
decimals 0x313ce567 → uint8
isExcludedFromFees 0x4fbee193 → bool
isExcludedFromMaxTransaction 0x18d9ceae → bool
isExcludedFromMaxWalletLimit 0xa8a69b9d → bool
maxTransactionAmountBuy 0x0105d0fd → uint256
maxTransactionAmountSell 0x59136fa5 → uint256
maxTransactionLimitEnabled 0x2ba86bf2 → bool
maxWalletAmount 0xaa4bde28 → uint256
maxWalletLimitEnabled 0x21a9d82a → bool
name 0x06fdde03 → string
owner 0x8da5cb5b → address
swapEnabled 0x6ddd1713 → bool
swapTokensAtAmount 0xe2f45605 → uint256
symbol 0x95d89b41 → string
totalSupply 0x18160ddd → uint256
tradingBlock 0xcd51e6d4 → uint256
tradingEnabled 0x4ada218b → bool
tradingTime 0xb8158d60 → uint256
uniswapV2Pair 0x49bd5a5e → address
uniswapV2Router 0x1694505e → address

Write Contract 19 functions

These functions modify contract state and require a wallet transaction to execute.

approve 0x095ea7b3
address spender
uint256 amount
returns: bool
changeECIVault 0x41f10dc4
address _ECIVault
claimStuckTokens 0xf9d0831a
address token
decreaseAllowance 0xa457c2d7
address spender
uint256 subtractedValue
returns: bool
enableTrading 0x8a8c523c
No parameters
excludeFromFees 0xc0246668
address account
bool excluded
excludeFromMaxTransactionLimit 0x880bcbc1
address account
bool exclude
excludeFromMaxWallet 0xd2fcc001
address account
bool exclude
increaseAllowance 0x39509351
address spender
uint256 addedValue
returns: bool
setEnableMaxTransactionLimit 0x56a6cabf
bool enable
setEnableMaxWalletLimit 0x2a6c7dba
bool enable
setMaxTransactionAmounts 0xb6f7f681
uint256 _maxTransactionAmountBuy
uint256 _maxTransactionAmountSell
setMaxWalletAmount 0x27a14fc2
uint256 _maxWalletAmount
setSwapEnabled 0xe01af92c
bool _enabled
setSwapTokensAtAmount 0xafa4f3b2
uint256 newAmount
transfer 0xa9059cbb
address recipient
uint256 amount
returns: bool
transferFrom 0x23b872dd
address sender
address recipient
uint256 amount
returns: bool
transferOwnership 0xf2fde38b
address newOwner
updateFees 0x6db79437
uint256 _ECIFeeOnSell
uint256 _ECIFeeOnBuy

Recent Transactions

This address has 1 on-chain transactions, but only 1.1% of the chain is indexed. Transactions will appear as indexing progresses. View on Etherscan →