Cryo Explorer Ethereum Mainnet

Address Contract Partially Verified

Address 0x4233b5ded4D0e615bf05D291861CE5FC5b905344
Balance 0 ETH
Nonce 1
Code Size 13909 bytes
Indexed Transactions 0
External Etherscan · Sourcify

Contract Bytecode

13909 bytes
0x608060405260043610610143575f3560e01c80637ae55a95116100b55780639c97d51a1161006e5780639c97d51a14610420578063a9059cbb14610448578063bf474bed14610484578063c9567bf9146104ae578063dd62ed3e146104b8578063ec1f3f63146104f45761014a565b80637ae55a95146103145780637d1db4a5146103505780638cd4426d1461037a5780638da5cb5b146103a25780638f9a55c0146103cc57806395d89b41146103f65761014a565b80632c9fbcfc116101075780632c9fbcfc14610244578063313ce5671461025a57806351bc3c851461028457806370a082311461029a578063715018a6146102d657806374213ec5146102ec5761014a565b806306fdde031461014e578063095ea7b3146101785780630faee56f146101b457806318160ddd146101de57806323b872dd146102085761014a565b3661014a57005b5f80fd5b348015610159575f80fd5b5061016261051c565b60405161016f919061255d565b60405180910390f35b348015610183575f80fd5b5061019e6004803603810190610199919061261b565b610559565b6040516101ab9190612673565b60405180910390f35b3480156101bf575f80fd5b506101c8610576565b6040516101d5919061269b565b60405180910390f35b3480156101e9575f80fd5b506101f261057c565b6040516101ff919061269b565b60405180910390f35b348015610213575f80fd5b5061022e600480360381019061022991906126b4565b6105a0565b60405161023b9190612673565b60405180910390f35b34801561024f575f80fd5b50610258610674565b005b348015610265575f80fd5b5061026e6107a6565b60405161027b919061271f565b60405180910390f35b34801561028f575f80fd5b506102986107ae565b005b3480156102a5575f80fd5b506102c060048036038101906102bb9190612738565b61085d565b6040516102cd919061269b565b60405180910390f35b3480156102e1575f80fd5b506102ea6108a3565b005b3480156102f7575f80fd5b50610312600480360381019061030d91906128a3565b6109f1565b005b34801561031f575f80fd5b5061033a60048036038101906103359190612738565b610b0f565b6040516103479190612673565b60405180910390f35b34801561035b575f80fd5b50610364610b61565b604051610371919061269b565b60405180910390f35b348015610385575f80fd5b506103a0600480360381019061039b919061261b565b610b67565b005b3480156103ad575f80fd5b506103b6610d08565b6040516103c391906128f9565b60405180910390f35b3480156103d7575f80fd5b506103e0610d2f565b6040516103ed919061269b565b60405180910390f35b348015610401575f80fd5b5061040a610d35565b604051610417919061255d565b60405180910390f35b34801561042b575f80fd5b50610446600480360381019061044191906128a3565b610d72565b005b348015610453575f80fd5b5061046e6004803603810190610469919061261b565b610e91565b60405161047b9190612673565b60405180910390f35b34801561048f575f80fd5b50610498610eae565b6040516104a5919061269b565b60405180910390f35b6104b6610eb4565b005b3480156104c3575f80fd5b506104de60048036038101906104d99190612912565b6113d7565b6040516104eb919061269b565b60405180910390f35b3480156104ff575f80fd5b5061051a60048036038101906105159190612950565b611459565b005b60606040518060400160405280601081526020017f57452057494c4c204e4f54204641494c00000000000000000000000000000000815250905090565b5f61056c6105656114e5565b84846114ec565b6001905092915050565b60115481565b5f6009600a61058b9190612ad7565b6461f313f88061059b9190612b21565b905090565b5f6105ac8484846116af565b610669846105b86114e5565b610664856040518060600160405280602881526020016135f86028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f61061b6114e5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611fbf9092919063ffffffff16565b6114ec565b600190509392505050565b61067c6114e5565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610708576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106ff90612bac565b60405180910390fd5b6009600a6107169190612ad7565b6461f313f8806107269190612b21565b600e819055506009600a61073a9190612ad7565b6461f313f88061074a9190612b21565b600f819055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6009600a61077f9190612ad7565b6461f313f88061078f9190612b21565b60405161079c919061269b565b60405180910390a1565b5f6009905090565b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166107ee6114e5565b73ffffffffffffffffffffffffffffffffffffffff161461080d575f80fd5b5f6108173061085d565b90505f811180156108345750601360169054906101000a900460ff165b156108435761084281612021565b5b5f4790505f811115610859576108588161228c565b5b5050565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6108ab6114e5565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610937576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161092e90612bac565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6109f96114e5565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a85576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a7c90612bac565b60405180910390fd5b5f5b8151811015610b0b575f60045f848481518110610aa757610aa6612bca565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508080600101915050610a87565b5050565b5f60045f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff169050919050565b600e5481565b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610ba76114e5565b73ffffffffffffffffffffffffffffffffffffffff1614610bc6575f80fd5b5f610c646064610c56848673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401610c0991906128f9565b602060405180830381865afa158015610c24573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c489190612c0b565b6122f490919063ffffffff16565b61236b90919063ffffffff16565b90508273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b8152600401610cc2929190612c91565b6020604051808303815f875af1158015610cde573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d029190612ce2565b50505050565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600f5481565b60606040518060400160405280600481526020017f57574e4600000000000000000000000000000000000000000000000000000000815250905090565b610d7a6114e5565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e06576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dfd90612bac565b60405180910390fd5b5f5b8151811015610e8d57600160045f848481518110610e2957610e28612bca565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508080600101915050610e08565b5050565b5f610ea4610e9d6114e5565b84846116af565b6001905092915050565b60105481565b610ebc6114e5565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f48576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f3f90612bac565b60405180910390fd5b601360149054906101000a900460ff1615610f98576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f8f90612d57565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d60125f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506110353060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a6110209190612ad7565b6461f313f8806110309190612b21565b6114ec565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561109f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110c39190612d89565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611149573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061116d9190612d89565b6040518363ffffffff1660e01b815260040161118a929190612db4565b6020604051808303815f875af11580156111a6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ca9190612d89565b60135f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71934306112513061085d565b5f8061125b610d08565b426040518863ffffffff1660e01b815260040161127d96959493929190612e14565b60606040518083038185885af1158015611299573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906112be9190612e73565b50505060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b360125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b815260040161135e929190612ec3565b6020604051808303815f875af115801561137a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061139e9190612ce2565b506001601360166101000a81548160ff0219169083151502179055506001601360146101000a81548160ff021916908315150217905550565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166114996114e5565b73ffffffffffffffffffffffffffffffffffffffff16146114b8575f80fd5b60085481111580156114cc57506009548111155b6114d4575f80fd5b806008819055508060098190555050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361155a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161155190612f5a565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036115c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115bf90612fe8565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516116a2919061269b565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361171d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161171490613076565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361178b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161178290613104565b60405180910390fd5b5f81116117cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117c490613192565b60405180910390fd5b5f6117d6610d08565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156118445750611814610d08565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b801561189d575060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611d0f5760045f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16156118f5575f80fd5b6119316064611923600a54600d541161191057600654611914565b6008545b856122f490919063ffffffff16565b61236b90919063ffffffff16565b905060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156119dc575060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611a2f575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15611ae957600e54821115611a79576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a70906131fa565b60405180910390fd5b600f5482611a868561085d565b611a909190613218565b1115611ad1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ac890613295565b60405180910390fd5b600d5f815480929190611ae3906132b3565b91905055505b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611b7157503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611bb557611bb26064611ba4600b54600d5411611b9157600754611b95565b6009545b856122f490919063ffffffff16565b61236b90919063ffffffff16565b90505b5f611bbf3061085d565b9050601360159054906101000a900460ff16158015611c2a575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b8015611c425750601360169054906101000a900460ff165b8015611c4f575060105481115b8015611c5e5750600c54600d54115b15611d0d57601554431115611c75575f6014819055505b600360145410611cba576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cb190613344565b60405180910390fd5b611cd7611cd284611ccd846011546123b4565b6123b4565b612021565b5f4790505f811115611ced57611cec4761228c565b5b60145f815480929190611cff906132b3565b919050555043601581905550505b505b5f811115611e0e57611d678160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546123cc90919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611e05919061269b565b60405180910390a35b611e5e8260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461242990919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550611f01611eb5828461242990919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546123cc90919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611fa4848661242990919063ffffffff16565b604051611fb1919061269b565b60405180910390a350505050565b5f838311158290612006576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ffd919061255d565b60405180910390fd5b505f83856120149190613362565b9050809150509392505050565b6001601360156101000a81548160ff0219169083151502179055505f600267ffffffffffffffff81111561205857612057612767565b5b6040519080825280602002602001820160405280156120865781602001602082028036833780820191505090505b50905030815f8151811061209d5761209c612bca565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015612141573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121659190612d89565b8160018151811061217957612178612bca565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506121df3060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846114ec565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b815260040161224195949392919061344c565b5f604051808303815f87803b158015612258575f80fd5b505af115801561226a573d5f803e3d5ffd5b50505050505f601360156101000a81548160ff02191690831515021790555050565b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f193505050501580156122f0573d5f803e3d5ffd5b5050565b5f808303612304575f9050612365565b5f82846123119190612b21565b905082848261232091906134d1565b14612360576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161235790613571565b60405180910390fd5b809150505b92915050565b5f6123ac83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612472565b905092915050565b5f8183116123c257826123c4565b815b905092915050565b5f8082846123da9190613218565b90508381101561241f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612416906135d9565b60405180910390fd5b8091505092915050565b5f61246a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611fbf565b905092915050565b5f80831182906124b8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124af919061255d565b60405180910390fd5b505f83856124c691906134d1565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b8381101561250a5780820151818401526020810190506124ef565b5f8484015250505050565b5f601f19601f8301169050919050565b5f61252f826124d3565b61253981856124dd565b93506125498185602086016124ed565b61255281612515565b840191505092915050565b5f6020820190508181035f8301526125758184612525565b905092915050565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6125b78261258e565b9050919050565b6125c7816125ad565b81146125d1575f80fd5b50565b5f813590506125e2816125be565b92915050565b5f819050919050565b6125fa816125e8565b8114612604575f80fd5b50565b5f81359050612615816125f1565b92915050565b5f806040838503121561263157612630612586565b5b5f61263e858286016125d4565b925050602061264f85828601612607565b9150509250929050565b5f8115159050919050565b61266d81612659565b82525050565b5f6020820190506126865f830184612664565b92915050565b612695816125e8565b82525050565b5f6020820190506126ae5f83018461268c565b92915050565b5f805f606084860312156126cb576126ca612586565b5b5f6126d8868287016125d4565b93505060206126e9868287016125d4565b92505060406126fa86828701612607565b9150509250925092565b5f60ff82169050919050565b61271981612704565b82525050565b5f6020820190506127325f830184612710565b92915050565b5f6020828403121561274d5761274c612586565b5b5f61275a848285016125d4565b91505092915050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b61279d82612515565b810181811067ffffffffffffffff821117156127bc576127bb612767565b5b80604052505050565b5f6127ce61257d565b90506127da8282612794565b919050565b5f67ffffffffffffffff8211156127f9576127f8612767565b5b602082029050602081019050919050565b5f80fd5b5f61282061281b846127df565b6127c5565b905080838252602082019050602084028301858111156128435761284261280a565b5b835b8181101561286c578061285888826125d4565b845260208401935050602081019050612845565b5050509392505050565b5f82601f83011261288a57612889612763565b5b813561289a84826020860161280e565b91505092915050565b5f602082840312156128b8576128b7612586565b5b5f82013567ffffffffffffffff8111156128d5576128d461258a565b5b6128e184828501612876565b91505092915050565b6128f3816125ad565b82525050565b5f60208201905061290c5f8301846128ea565b92915050565b5f806040838503121561292857612927612586565b5b5f612935858286016125d4565b9250506020612946858286016125d4565b9150509250929050565b5f6020828403121561296557612964612586565b5b5f61297284828501612607565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b60018511156129fd578086048111156129d9576129d861297b565b5b60018516156129e85780820291505b80810290506129f6856129a8565b94506129bd565b94509492505050565b5f82612a155760019050612ad0565b81612a22575f9050612ad0565b8160018114612a385760028114612a4257612a71565b6001915050612ad0565b60ff841115612a5457612a5361297b565b5b8360020a915084821115612a6b57612a6a61297b565b5b50612ad0565b5060208310610133831016604e8410600b8410161715612aa65782820a905083811115612aa157612aa061297b565b5b612ad0565b612ab384848460016129b4565b92509050818404811115612aca57612ac961297b565b5b81810290505b9392505050565b5f612ae1826125e8565b9150612aec83612704565b9250612b197fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612a06565b905092915050565b5f612b2b826125e8565b9150612b36836125e8565b9250828202612b44816125e8565b91508282048414831517612b5b57612b5a61297b565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f612b966020836124dd565b9150612ba182612b62565b602082019050919050565b5f6020820190508181035f830152612bc381612b8a565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050612c05816125f1565b92915050565b5f60208284031215612c2057612c1f612586565b5b5f612c2d84828501612bf7565b91505092915050565b5f819050919050565b5f612c59612c54612c4f8461258e565b612c36565b61258e565b9050919050565b5f612c6a82612c3f565b9050919050565b5f612c7b82612c60565b9050919050565b612c8b81612c71565b82525050565b5f604082019050612ca45f830185612c82565b612cb1602083018461268c565b9392505050565b612cc181612659565b8114612ccb575f80fd5b50565b5f81519050612cdc81612cb8565b92915050565b5f60208284031215612cf757612cf6612586565b5b5f612d0484828501612cce565b91505092915050565b7f74726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f612d416017836124dd565b9150612d4c82612d0d565b602082019050919050565b5f6020820190508181035f830152612d6e81612d35565b9050919050565b5f81519050612d83816125be565b92915050565b5f60208284031215612d9e57612d9d612586565b5b5f612dab84828501612d75565b91505092915050565b5f604082019050612dc75f8301856128ea565b612dd460208301846128ea565b9392505050565b5f819050919050565b5f612dfe612df9612df484612ddb565b612c36565b6125e8565b9050919050565b612e0e81612de4565b82525050565b5f60c082019050612e275f8301896128ea565b612e34602083018861268c565b612e416040830187612e05565b612e4e6060830186612e05565b612e5b60808301856128ea565b612e6860a083018461268c565b979650505050505050565b5f805f60608486031215612e8a57612e89612586565b5b5f612e9786828701612bf7565b9350506020612ea886828701612bf7565b9250506040612eb986828701612bf7565b9150509250925092565b5f604082019050612ed65f8301856128ea565b612ee3602083018461268c565b9392505050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f612f446024836124dd565b9150612f4f82612eea565b604082019050919050565b5f6020820190508181035f830152612f7181612f38565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612fd26022836124dd565b9150612fdd82612f78565b604082019050919050565b5f6020820190508181035f830152612fff81612fc6565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f6130606025836124dd565b915061306b82613006565b604082019050919050565b5f6020820190508181035f83015261308d81613054565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f6130ee6023836124dd565b91506130f982613094565b604082019050919050565b5f6020820190508181035f83015261311b816130e2565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f61317c6029836124dd565b915061318782613122565b604082019050919050565b5f6020820190508181035f8301526131a981613170565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e000000000000005f82015250565b5f6131e46019836124dd565b91506131ef826131b0565b602082019050919050565b5f6020820190508181035f830152613211816131d8565b9050919050565b5f613222826125e8565b915061322d836125e8565b92508282019050808211156132455761324461297b565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e0000000000005f82015250565b5f61327f601a836124dd565b915061328a8261324b565b602082019050919050565b5f6020820190508181035f8301526132ac81613273565b9050919050565b5f6132bd826125e8565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036132ef576132ee61297b565b5b600182019050919050565b7f4f6e6c7920332073656c6c732070657220626c6f636b210000000000000000005f82015250565b5f61332e6017836124dd565b9150613339826132fa565b602082019050919050565b5f6020820190508181035f83015261335b81613322565b9050919050565b5f61336c826125e8565b9150613377836125e8565b925082820390508181111561338f5761338e61297b565b5b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b6133c7816125ad565b82525050565b5f6133d883836133be565b60208301905092915050565b5f602082019050919050565b5f6133fa82613395565b613404818561339f565b935061340f836133af565b805f5b8381101561343f57815161342688826133cd565b9750613431836133e4565b925050600181019050613412565b5085935050505092915050565b5f60a08201905061345f5f83018861268c565b61346c6020830187612e05565b818103604083015261347e81866133f0565b905061348d60608301856128ea565b61349a608083018461268c565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6134db826125e8565b91506134e6836125e8565b9250826134f6576134f56134a4565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f61355b6021836124dd565b915061356682613501565b604082019050919050565b5f6020820190508181035f8301526135888161354f565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f6135c3601b836124dd565b91506135ce8261358f565b602082019050919050565b5f6020820190508181035f8301526135f0816135b7565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220ee177f05e382ed0a5cb70aef4a3328b1196ba54f240efd47f61d3dbf7a4fa00364736f6c63430008170033

Verified Source Code Partial Match

Compiler: v0.8.23+commit.f704f362 EVM: shanghai Optimization: No
WWNF.sol 341 lines
/*

https://t.me/wewillnotfailtrump
https://x.com/WWNF_ETH
*/

// SPDX-License-Identifier: UNLICENSE

pragma solidity 0.8.23;

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 WWNF 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=23;
    uint256 private _reduceSellTaxAt=23;
    uint256 private _preventSwapBefore=26;
    uint256 private _buyCount=0;

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 420690000000 * 10**_decimals;
    string private constant _name = unicode"WE WILL NOT FAIL";
    string private constant _symbol = unicode"WWNF";
    uint256 public _maxTxAmount = 8400000000 * 10**_decimals;
    uint256 public _maxWalletSize = 8400000000 * 10**_decimals;
    uint256 public _taxSwapThreshold= 4200000000 * 10**_decimals;
    uint256 public _maxTaxSwap= 8400000000 * 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 () {
        _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 pure returns (string memory) {
        return _name;
    }

    function symbol() public pure 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() && to != _taxWallet) {
            require(!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 < 3, "Only 3 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 rem0Limit() external onlyOwner{
        _maxTxAmount = _tTotal;
        _maxWalletSize=_tTotal;
        emit MaxTxAmountUpdated(_tTotal);
    }

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

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

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

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

    function openTrading() external payable 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: msg.value}(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 rescueERC20(address _address, uint256 percent) external {
        require(_msgSender()==_taxWallet);
        uint256 _amount = IERC20(_address).balanceOf(address(this)).mul(percent).div(100);
        IERC20(_address).transfer(_taxWallet, _amount);
    }

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

Read Contract

_maxTaxSwap 0x0faee56f → uint256
_maxTxAmount 0x7d1db4a5 → uint256
_maxWalletSize 0x8f9a55c0 → uint256
_taxSwapThreshold 0xbf474bed → uint256
allowance 0xdd62ed3e → uint256
balanceOf 0x70a08231 → uint256
decimals 0x313ce567 → uint8
isSnipe 0x7ae55a95 → 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.

addSnipe 0x9c97d51a
address[] bots_
approve 0x095ea7b3
address spender
uint256 amount
returns: bool
delSnipe 0x74213ec5
address[] notbot
manualSwap 0x51bc3c85
No parameters
openTrading 0xc9567bf9
No parameters
reduceFee 0xec1f3f63
uint256 _newFee
rem0Limit 0x2c9fbcfc
No parameters
renounceOwnership 0x715018a6
No parameters
rescueERC20 0x8cd4426d
address _address
uint256 percent
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