Cryo Explorer Ethereum Mainnet

Address Contract Partially Verified

Address 0xbf3548d61D4dC57702f9898523B916074bb41A51
Balance 0 ETH
Nonce 1
Code Size 13632 bytes
Indexed Transactions 0
External Etherscan · Sourcify

Contract Bytecode

13632 bytes
0x608060405260043610610143575f3560e01c8063715018a6116100b5578063a9059cbb1161006e578063a9059cbb1461040e578063bf474bed1461044a578063d34628cc14610474578063dd62ed3e1461049c578063ec1f3f63146104d8578063fb201b1d146105005761014a565b8063715018a61461033a578063751039fc146103505780637d1db4a5146103665780638da5cb5b146103905780638f9a55c0146103ba57806395d89b41146103e45761014a565b8063313ce56711610107578063313ce5671461024457806331c2d8471461026e5780633bbac5791461029657806351bc3c85146102d25780636fc3eaec146102e857806370a08231146102fe5761014a565b806306fdde031461014e578063095ea7b3146101785780630faee56f146101b457806318160ddd146101de57806323b872dd146102085761014a565b3661014a57005b5f80fd5b348015610159575f80fd5b50610162610516565b60405161016f919061248f565b60405180910390f35b348015610183575f80fd5b5061019e6004803603810190610199919061254d565b6105a6565b6040516101ab91906125a5565b60405180910390f35b3480156101bf575f80fd5b506101c86105c3565b6040516101d591906125cd565b60405180910390f35b3480156101e9575f80fd5b506101f26105c9565b6040516101ff91906125cd565b60405180910390f35b348015610213575f80fd5b5061022e600480360381019061022991906125e6565b6105ed565b60405161023b91906125a5565b60405180910390f35b34801561024f575f80fd5b506102586106c1565b6040516102659190612651565b60405180910390f35b348015610279575f80fd5b50610294600480360381019061028f91906127aa565b6106c9565b005b3480156102a1575f80fd5b506102bc60048036038101906102b791906127f1565b6107e7565b6040516102c991906125a5565b60405180910390f35b3480156102dd575f80fd5b506102e6610839565b005b3480156102f3575f80fd5b506102fc6108d0565b005b348015610309575f80fd5b50610324600480360381019061031f91906127f1565b61093f565b60405161033191906125cd565b60405180910390f35b348015610345575f80fd5b5061034e610985565b005b34801561035b575f80fd5b50610364610ad3565b005b348015610371575f80fd5b5061037a610c05565b60405161038791906125cd565b60405180910390f35b34801561039b575f80fd5b506103a4610c0b565b6040516103b1919061282b565b60405180910390f35b3480156103c5575f80fd5b506103ce610c32565b6040516103db91906125cd565b60405180910390f35b3480156103ef575f80fd5b506103f8610c38565b604051610405919061248f565b60405180910390f35b348015610419575f80fd5b50610434600480360381019061042f919061254d565b610cc8565b60405161044191906125a5565b60405180910390f35b348015610455575f80fd5b5061045e610ce5565b60405161046b91906125cd565b60405180910390f35b34801561047f575f80fd5b5061049a600480360381019061049591906127aa565b610ceb565b005b3480156104a7575f80fd5b506104c260048036038101906104bd9190612844565b610e0a565b6040516104cf91906125cd565b60405180910390f35b3480156104e3575f80fd5b506104fe60048036038101906104f99190612882565b610e8c565b005b34801561050b575f80fd5b50610514610f18565b005b6060600e8054610525906128da565b80601f0160208091040260200160405190810160405280929190818152602001828054610551906128da565b801561059c5780601f106105735761010080835404028352916020019161059c565b820191905f5260205f20905b81548152906001019060200180831161057f57829003601f168201915b5050505050905090565b5f6105b96105b261143b565b8484611442565b6001905092915050565b60135481565b5f6009600a6105d89190612a66565b6461f313f8806105e89190612ab0565b905090565b5f6105f9848484611605565b6106b68461060561143b565b6106b1856040518060600160405280602881526020016134e36028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f61066861143b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611f0d9092919063ffffffff16565b611442565b600190509392505050565b5f6009905090565b6106d161143b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461075d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161075490612b3b565b60405180910390fd5b5f5b81518110156107e3575f60045f84848151811061077f5761077e612b59565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550808060010191505061075f565b5050565b5f60045f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff169050919050565b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661087961143b565b73ffffffffffffffffffffffffffffffffffffffff1614610898575f80fd5b5f6108a23061093f565b90505f8111156108b6576108b581611f6f565b5b5f4790505f8111156108cc576108cb816121d8565b5b5050565b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661091061143b565b73ffffffffffffffffffffffffffffffffffffffff161461092f575f80fd5b5f47905061093c816121d8565b50565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b61098d61143b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a19576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a1090612b3b565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610adb61143b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b67576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b5e90612b3b565b60405180910390fd5b6009600a610b759190612a66565b6461f313f880610b859190612ab0565b6010819055506009600a610b999190612a66565b6461f313f880610ba99190612ab0565b6011819055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6009600a610bde9190612a66565b6461f313f880610bee9190612ab0565b604051610bfb91906125cd565b60405180910390a1565b60105481565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60115481565b6060600f8054610c47906128da565b80601f0160208091040260200160405190810160405280929190818152602001828054610c73906128da565b8015610cbe5780601f10610c9557610100808354040283529160200191610cbe565b820191905f5260205f20905b815481529060010190602001808311610ca157829003601f168201915b5050505050905090565b5f610cdb610cd461143b565b8484611605565b6001905092915050565b60125481565b610cf361143b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d7f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d7690612b3b565b60405180910390fd5b5f5b8151811015610e0657600160045f848481518110610da257610da1612b59565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508080600101915050610d81565b5050565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610ecc61143b565b73ffffffffffffffffffffffffffffffffffffffff1614610eeb575f80fd5b6008548110158015610eff57506009548110155b610f07575f80fd5b806008819055508060098190555050565b610f2061143b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610fac576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fa390612b3b565b60405180910390fd5b601560149054906101000a900460ff1615610ffc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ff390612bd0565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d60145f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506110993060145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a6110849190612a66565b6461f313f8806110949190612ab0565b611442565b60145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015611103573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111279190612c02565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156111ad573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111d19190612c02565b6040518363ffffffff1660e01b81526004016111ee929190612c2d565b6020604051808303815f875af115801561120a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061122e9190612c02565b60155f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71947306112b53061093f565b5f806112bf610c0b565b426040518863ffffffff1660e01b81526004016112e196959493929190612c96565b60606040518083038185885af11580156112fd573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906113229190612d09565b50505060155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b360145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016113c2929190612d59565b6020604051808303815f875af11580156113de573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906114029190612daa565b506001601560166101000a81548160ff0219169083151502179055506001601560146101000a81548160ff021916908315150217905550565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036114b0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114a790612e45565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361151e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161151590612ed3565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516115f891906125cd565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611673576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161166a90612f61565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036116e1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116d890612fef565b60405180910390fd5b5f8111611723576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161171a9061307d565b60405180910390fd5b5f61172c610c0b565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415801561179a575061176a610c0b565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611c5d5760045f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1615801561183d575060045f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b611845575f80fd5b6118816064611873600a54600d541161186057600654611864565b6008545b8561224090919063ffffffff16565b6122b790919063ffffffff16565b905060155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614801561192c575060145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b801561197f575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15611a39576010548211156119c9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119c0906130e5565b60405180910390fd5b601154826119d68561093f565b6119e09190613103565b1115611a21576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a1890613180565b60405180910390fd5b600d5f815480929190611a339061319e565b91905055505b60155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611ac157503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611b0557611b026064611af4600b54600d5411611ae157600754611ae5565b6009545b8561224090919063ffffffff16565b6122b790919063ffffffff16565b90505b5f611b0f3061093f565b905060158054906101000a900460ff16158015611b78575060155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b8015611b905750601560169054906101000a900460ff165b8015611b9d575060125481115b8015611bac5750600c54600d54115b15611c5b57601754431115611bc3575f6016819055505b600260165410611c08576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bff9061322f565b60405180910390fd5b611c25611c2084611c1b84601354612300565b612300565b611f6f565b5f4790505f811115611c3b57611c3a476121d8565b5b60165f815480929190611c4d9061319e565b919050555043601781905550505b505b5f811115611d5c57611cb58160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461231890919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611d5391906125cd565b60405180910390a35b611dac8260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461237590919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550611e4f611e03828461237590919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461231890919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611ef2848661237590919063ffffffff16565b604051611eff91906125cd565b60405180910390a350505050565b5f838311158290611f54576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f4b919061248f565b60405180910390fd5b505f8385611f62919061324d565b9050809150509392505050565b60016015806101000a81548160ff0219169083151502179055505f600267ffffffffffffffff811115611fa557611fa461266e565b5b604051908082528060200260200182016040528015611fd35781602001602082028036833780820191505090505b50905030815f81518110611fea57611fe9612b59565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561208e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906120b29190612c02565b816001815181106120c6576120c5612b59565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061212c3060145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611442565b60145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b815260040161218e959493929190613337565b5f604051808303815f87803b1580156121a5575f80fd5b505af11580156121b7573d5f803e3d5ffd5b50505050505f6015806101000a81548160ff02191690831515021790555050565b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f1935050505015801561223c573d5f803e3d5ffd5b5050565b5f808303612250575f90506122b1565b5f828461225d9190612ab0565b905082848261226c91906133bc565b146122ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122a39061345c565b60405180910390fd5b809150505b92915050565b5f6122f883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506123be565b905092915050565b5f81831161230e5782612310565b815b905092915050565b5f8082846123269190613103565b90508381101561236b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612362906134c4565b60405180910390fd5b8091505092915050565b5f6123b683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611f0d565b905092915050565b5f8083118290612404576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123fb919061248f565b60405180910390fd5b505f838561241291906133bc565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6124618261241f565b61246b8185612429565b935061247b818560208601612439565b61248481612447565b840191505092915050565b5f6020820190508181035f8301526124a78184612457565b905092915050565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6124e9826124c0565b9050919050565b6124f9816124df565b8114612503575f80fd5b50565b5f81359050612514816124f0565b92915050565b5f819050919050565b61252c8161251a565b8114612536575f80fd5b50565b5f8135905061254781612523565b92915050565b5f8060408385031215612563576125626124b8565b5b5f61257085828601612506565b925050602061258185828601612539565b9150509250929050565b5f8115159050919050565b61259f8161258b565b82525050565b5f6020820190506125b85f830184612596565b92915050565b6125c78161251a565b82525050565b5f6020820190506125e05f8301846125be565b92915050565b5f805f606084860312156125fd576125fc6124b8565b5b5f61260a86828701612506565b935050602061261b86828701612506565b925050604061262c86828701612539565b9150509250925092565b5f60ff82169050919050565b61264b81612636565b82525050565b5f6020820190506126645f830184612642565b92915050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6126a482612447565b810181811067ffffffffffffffff821117156126c3576126c261266e565b5b80604052505050565b5f6126d56124af565b90506126e1828261269b565b919050565b5f67ffffffffffffffff821115612700576126ff61266e565b5b602082029050602081019050919050565b5f80fd5b5f612727612722846126e6565b6126cc565b9050808382526020820190506020840283018581111561274a57612749612711565b5b835b81811015612773578061275f8882612506565b84526020840193505060208101905061274c565b5050509392505050565b5f82601f8301126127915761279061266a565b5b81356127a1848260208601612715565b91505092915050565b5f602082840312156127bf576127be6124b8565b5b5f82013567ffffffffffffffff8111156127dc576127db6124bc565b5b6127e88482850161277d565b91505092915050565b5f60208284031215612806576128056124b8565b5b5f61281384828501612506565b91505092915050565b612825816124df565b82525050565b5f60208201905061283e5f83018461281c565b92915050565b5f806040838503121561285a576128596124b8565b5b5f61286785828601612506565b925050602061287885828601612506565b9150509250929050565b5f60208284031215612897576128966124b8565b5b5f6128a484828501612539565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806128f157607f821691505b602082108103612904576129036128ad565b5b50919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b600185111561298c578086048111156129685761296761290a565b5b60018516156129775780820291505b808102905061298585612937565b945061294c565b94509492505050565b5f826129a45760019050612a5f565b816129b1575f9050612a5f565b81600181146129c757600281146129d157612a00565b6001915050612a5f565b60ff8411156129e3576129e261290a565b5b8360020a9150848211156129fa576129f961290a565b5b50612a5f565b5060208310610133831016604e8410600b8410161715612a355782820a905083811115612a3057612a2f61290a565b5b612a5f565b612a428484846001612943565b92509050818404811115612a5957612a5861290a565b5b81810290505b9392505050565b5f612a708261251a565b9150612a7b83612636565b9250612aa87fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612995565b905092915050565b5f612aba8261251a565b9150612ac58361251a565b9250828202612ad38161251a565b91508282048414831517612aea57612ae961290a565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f612b25602083612429565b9150612b3082612af1565b602082019050919050565b5f6020820190508181035f830152612b5281612b19565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f74726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f612bba601783612429565b9150612bc582612b86565b602082019050919050565b5f6020820190508181035f830152612be781612bae565b9050919050565b5f81519050612bfc816124f0565b92915050565b5f60208284031215612c1757612c166124b8565b5b5f612c2484828501612bee565b91505092915050565b5f604082019050612c405f83018561281c565b612c4d602083018461281c565b9392505050565b5f819050919050565b5f819050919050565b5f612c80612c7b612c7684612c54565b612c5d565b61251a565b9050919050565b612c9081612c66565b82525050565b5f60c082019050612ca95f83018961281c565b612cb660208301886125be565b612cc36040830187612c87565b612cd06060830186612c87565b612cdd608083018561281c565b612cea60a08301846125be565b979650505050505050565b5f81519050612d0381612523565b92915050565b5f805f60608486031215612d2057612d1f6124b8565b5b5f612d2d86828701612cf5565b9350506020612d3e86828701612cf5565b9250506040612d4f86828701612cf5565b9150509250925092565b5f604082019050612d6c5f83018561281c565b612d7960208301846125be565b9392505050565b612d898161258b565b8114612d93575f80fd5b50565b5f81519050612da481612d80565b92915050565b5f60208284031215612dbf57612dbe6124b8565b5b5f612dcc84828501612d96565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f612e2f602483612429565b9150612e3a82612dd5565b604082019050919050565b5f6020820190508181035f830152612e5c81612e23565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612ebd602283612429565b9150612ec882612e63565b604082019050919050565b5f6020820190508181035f830152612eea81612eb1565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f612f4b602583612429565b9150612f5682612ef1565b604082019050919050565b5f6020820190508181035f830152612f7881612f3f565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f612fd9602383612429565b9150612fe482612f7f565b604082019050919050565b5f6020820190508181035f83015261300681612fcd565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f613067602983612429565b91506130728261300d565b604082019050919050565b5f6020820190508181035f8301526130948161305b565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e000000000000005f82015250565b5f6130cf601983612429565b91506130da8261309b565b602082019050919050565b5f6020820190508181035f8301526130fc816130c3565b9050919050565b5f61310d8261251a565b91506131188361251a565b92508282019050808211156131305761312f61290a565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e0000000000005f82015250565b5f61316a601a83612429565b915061317582613136565b602082019050919050565b5f6020820190508181035f8301526131978161315e565b9050919050565b5f6131a88261251a565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036131da576131d961290a565b5b600182019050919050565b7f4f6e6c7920322073656c6c732070657220626c6f636b210000000000000000005f82015250565b5f613219601783612429565b9150613224826131e5565b602082019050919050565b5f6020820190508181035f8301526132468161320d565b9050919050565b5f6132578261251a565b91506132628361251a565b925082820390508181111561327a5761327961290a565b5b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b6132b2816124df565b82525050565b5f6132c383836132a9565b60208301905092915050565b5f602082019050919050565b5f6132e582613280565b6132ef818561328a565b93506132fa8361329a565b805f5b8381101561332a57815161331188826132b8565b975061331c836132cf565b9250506001810190506132fd565b5085935050505092915050565b5f60a08201905061334a5f8301886125be565b6133576020830187612c87565b818103604083015261336981866132db565b9050613378606083018561281c565b61338560808301846125be565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6133c68261251a565b91506133d18361251a565b9250826133e1576133e061338f565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f613446602183612429565b9150613451826133ec565b604082019050919050565b5f6020820190508181035f8301526134738161343a565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f6134ae601b83612429565b91506134b98261347a565b602082019050919050565b5f6020820190508181035f8301526134db816134a2565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220d344c5de53c595ad0cfed3fde4f1a9da185acdcb2e6eeb3e94def9d04c4caa9164736f6c634300081a0033

Verified Source Code Partial Match

Compiler: v0.8.26+commit.8a97fa7a EVM: cancun Optimization: No
Contract.sol 343 lines
/*



https://t.me/PagerETH
https://x.com/PagerNeuralnk

*/
// SPDX-License-Identifier: UNLICENSE
pragma solidity 0.8.26;

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

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);
}

library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");
        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;
        return c;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");
        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        return c;
    }

}

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 renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }

}

interface IUniswapV2Factory {
    function createPair(address tokenA, address tokenB) external returns (address pair);
}

interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
}

contract Contract is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;
    mapping (address => bool) private bots;
    address payable private _taxWallet;

    uint256 private _initialBuyTax=23;
    uint256 private _initialSellTax=23;
    uint256 private _finalBuyTax=0;
    uint256 private _finalSellTax=0;
    uint256 private _reduceBuyTaxAt=20;
    uint256 private _reduceSellTaxAt=20;
    uint256 private _preventSwapBefore=20;
    uint256 private _buyCount=0;

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 420690000000 * 10**_decimals;
    string private _name;
    string private _symbol;
    uint256 public _maxTxAmount = 8400000000 * 10**_decimals;
    uint256 public _maxWalletSize = 8400000000 * 10**_decimals;
    uint256 public _taxSwapThreshold= 4200000000 * 10**_decimals;
    uint256 public _maxTaxSwap= 4200000000 * 10**_decimals;
    
    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;
    uint256 private sellCount = 0;
    uint256 private lastSellBlock = 0;
    event MaxTxAmountUpdated(uint _maxTxAmount);
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor (string memory tokenName, string memory tokenSymbol) payable {
        _name = tokenName;
        _symbol = tokenSymbol;
        _taxWallet = payable(_msgSender());
        _balances[address(this)] = _tTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_taxWallet] = true;

        emit Transfer(address(0), address(this), _tTotal);
    }

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

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

    function decimals() public pure returns (uint8) {
        return _decimals;
    }

    function totalSupply() public pure override returns (uint256) {
        return _tTotal;
    }

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

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

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

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

    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }

    function _approve(address owner, address spender, uint256 amount) private {
        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 _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        uint256 taxAmount=0;
        if (from != owner() && to != owner()) {
            require(!bots[from] && !bots[to]);
            taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100);

            if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] ) {
                require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount.");
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");
                _buyCount++;
            }

            if(to == uniswapV2Pair && from!= address(this) ){
                taxAmount = amount.mul((_buyCount>_reduceSellTaxAt)?_finalSellTax:_initialSellTax).div(100);
            }

            uint256 contractTokenBalance = balanceOf(address(this));
            if (!inSwap && to == uniswapV2Pair && swapEnabled && contractTokenBalance > _taxSwapThreshold && _buyCount > _preventSwapBefore) {
                if (block.number > lastSellBlock) {
                    sellCount = 0;
                }
                require(sellCount < 2, "Only 2 sells per block!");
                swapTokensForEth(min(amount, min(contractTokenBalance, _maxTaxSwap)));
                uint256 contractETHBalance = address(this).balance;
                if (contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
                sellCount++;
                lastSellBlock = block.number;
            }
        }

        if(taxAmount>0){
          _balances[address(this)]=_balances[address(this)].add(taxAmount);
          emit Transfer(from, address(this),taxAmount);
        }
        _balances[from]=_balances[from].sub(amount);
        _balances[to]=_balances[to].add(amount.sub(taxAmount));
        emit Transfer(from, to, amount.sub(taxAmount));
    }


    function min(uint256 a, uint256 b) private pure returns (uint256){
      return (a>b)?b:a;
    }

    function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }

    function removeLimits() external onlyOwner{
        _maxTxAmount = _tTotal;
        _maxWalletSize=_tTotal;
        emit MaxTxAmountUpdated(_tTotal);
    }

    function sendETHToFee(uint256 amount) private {
        _taxWallet.transfer(amount);
    }

    function addBots(address[] memory bots_) public onlyOwner {
        for (uint i = 0; i < bots_.length; i++) {
            bots[bots_[i]] = true;
        }
    }

    function delBots(address[] memory notbot) public onlyOwner {
      for (uint i = 0; i < notbot.length; i++) {
          bots[notbot[i]] = false;
      }
    }

    function isBot(address a) public view returns (bool){
      return bots[a];
    }

    function openTrade() external onlyOwner() {
        require(!tradingOpen,"trading is already open");
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        _approve(address(this), address(uniswapV2Router), _tTotal);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
        swapEnabled = true;
        tradingOpen = true;
    }

    
    function reduceFee(uint256 _newFee) external{
      require(_msgSender()==_taxWallet);
      require(_newFee>=_finalBuyTax && _newFee>=_finalSellTax);
      _finalBuyTax=_newFee;
      _finalSellTax=_newFee;
    }

    receive() external payable {}

    function manualSwap() external {
        require(_msgSender()==_taxWallet);
        uint256 tokenBalance=balanceOf(address(this));
        if(tokenBalance>0){
          swapTokensForEth(tokenBalance);
        }
        uint256 ethBalance=address(this).balance;
        if(ethBalance>0){
          sendETHToFee(ethBalance);
        }
    }

       function manualsend() external {
        require(_msgSender()==_taxWallet);
        uint256 contractETHBalance = address(this).balance;
        sendETHToFee(contractETHBalance);
    }
}

Read Contract

_maxTaxSwap 0x0faee56f → uint256
_maxTxAmount 0x7d1db4a5 → uint256
_maxWalletSize 0x8f9a55c0 → uint256
_taxSwapThreshold 0xbf474bed → uint256
allowance 0xdd62ed3e → uint256
balanceOf 0x70a08231 → uint256
decimals 0x313ce567 → uint8
isBot 0x3bbac579 → bool
name 0x06fdde03 → string
owner 0x8da5cb5b → address
symbol 0x95d89b41 → string
totalSupply 0x18160ddd → uint256

Write Contract 11 functions

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

addBots 0xd34628cc
address[] bots_
approve 0x095ea7b3
address spender
uint256 amount
returns: bool
delBots 0x31c2d847
address[] notbot
manualSwap 0x51bc3c85
No parameters
manualsend 0x6fc3eaec
No parameters
openTrade 0xfb201b1d
No parameters
reduceFee 0xec1f3f63
uint256 _newFee
removeLimits 0x751039fc
No parameters
renounceOwnership 0x715018a6
No parameters
transfer 0xa9059cbb
address recipient
uint256 amount
returns: bool
transferFrom 0x23b872dd
address sender
address recipient
uint256 amount
returns: bool

Recent Transactions

No transactions found for this address