Cryo Explorer Ethereum Mainnet

Address Contract Partially Verified

Address 0x5a3e6A77ba2f983eC0d371ea3B475F8Bc0811AD5
Balance 0 ETH
Nonce 1
Code Size 13271 bytes
Indexed Transactions 1 (24,440,504 โ†’ 24,440,504)
Gas Used (indexed) 63,606
External Etherscan ยท Sourcify

Contract Bytecode

13271 bytes
0x6080604052600436106101395760003560e01c8063751039fc116100ab57806395d89b411161006f57806395d89b41146103c5578063a9059cbb146103f0578063d34628cc1461042d578063dd62ed3e14610456578063ec1f3f6314610493578063f4293890146104bc57610140565b8063751039fc146103165780637d1db4a51461032d5780638a8c523c146103585780638da5cb5b1461036f5780638f9a55c01461039a57610140565b806331c2d847116100fd57806331c2d8471461024057806334376f3b14610269578063503dfc4d1461029457806351bc3c85146102ab57806370a08231146102c2578063715018a6146102ff57610140565b806306fdde0314610145578063095ea7b31461017057806318160ddd146101ad57806323b872dd146101d8578063313ce5671461021557610140565b3661014057005b600080fd5b34801561015157600080fd5b5061015a6104d3565b6040516101679190612346565b60405180910390f35b34801561017c57600080fd5b5061019760048036038101906101929190612410565b6104f3565b6040516101a4919061246b565b60405180910390f35b3480156101b957600080fd5b506101c2610511565b6040516101cf9190612495565b60405180910390f35b3480156101e457600080fd5b506101ff60048036038101906101fa91906124b0565b610535565b60405161020c919061246b565b60405180910390f35b34801561022157600080fd5b5061022a61060e565b604051610237919061251f565b60405180910390f35b34801561024c57600080fd5b5061026760048036038101906102629190612682565b610617565b005b34801561027557600080fd5b5061027e610741565b60405161028b9190612495565b60405180910390f35b3480156102a057600080fd5b506102a9610747565b005b3480156102b757600080fd5b506102c0610831565b005b3480156102ce57600080fd5b506102e960048036038101906102e491906126cb565b6108a5565b6040516102f69190612495565b60405180910390f35b34801561030b57600080fd5b506103146108ee565b005b34801561032257600080fd5b5061032b610a41565b005b34801561033957600080fd5b50610342610b71565b60405161034f9190612495565b60405180910390f35b34801561036457600080fd5b5061036d610b77565b005b34801561037b57600080fd5b506103846110af565b6040516103919190612707565b60405180910390f35b3480156103a657600080fd5b506103af6110d8565b6040516103bc9190612495565b60405180910390f35b3480156103d157600080fd5b506103da6110de565b6040516103e79190612346565b60405180910390f35b3480156103fc57600080fd5b5061041760048036038101906104129190612410565b61111b565b604051610424919061246b565b60405180910390f35b34801561043957600080fd5b50610454600480360381019061044f9190612682565b611139565b005b34801561046257600080fd5b5061047d60048036038101906104789190612722565b611263565b60405161048a9190612495565b60405180910390f35b34801561049f57600080fd5b506104ba60048036038101906104b59190612762565b6112ea565b005b3480156104c857600080fd5b506104d1611362565b005b606060405180606001604052806021815260200161335960219139905090565b60006105076105006113ce565b84846113d6565b6001905092915050565b60006009600a61052191906128f1565b633b9aca00610530919061293c565b905090565b600061054284848461159f565b6106038461054e6113ce565b6105fe8560405180606001604052806028815260200161337a60289139600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006105b46113ce565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d9e9092919063ffffffff16565b6113d6565b600190509392505050565b60006009905090565b61061f6113ce565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106a3906129ca565b60405180910390fd5b60005b815181101561073d576000600460008484815181106106d1576106d06129ea565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550808061073590612a19565b9150506106af565b5050565b600d5481565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166107886113ce565b73ffffffffffffffffffffffffffffffffffffffff16146107a857600080fd5b3073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb336107ce306108a5565b6040518363ffffffff1660e01b81526004016107eb929190612a61565b6020604051808303816000875af115801561080a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061082e9190612ab6565b50565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108726113ce565b73ffffffffffffffffffffffffffffffffffffffff161461089257600080fd5b6108a361089e306108a5565b611e02565b565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6108f66113ce565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610983576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161097a906129ca565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610a496113ce565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ad6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610acd906129ca565b60405180910390fd5b6009600a610ae491906128f1565b633b9aca00610af3919061293c565b600b819055506009600a610b0791906128f1565b633b9aca00610b16919061293c565b600c819055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6009600a610b4b91906128f1565b633b9aca00610b5a919061293c565b604051610b679190612495565b60405180910390a1565b600b5481565b610b7f6113ce565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c0c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c03906129ca565b60405180910390fd5b600f60149054906101000a900460ff1615610c5c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c5390612b2f565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610cfa30600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a610ce691906128f1565b633b9aca00610cf5919061293c565b6113d6565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d67573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d8b9190612b64565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e14573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e389190612b64565b6040518363ffffffff1660e01b8152600401610e55929190612b91565b6020604051808303816000875af1158015610e74573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e989190612b64565b600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610f21306108a5565b600080610f2c6110af565b426040518863ffffffff1660e01b8152600401610f4e96959493929190612bff565b60606040518083038185885af1158015610f6c573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f919190612c75565b5050506001600f60166101000a81548160ff0219169083151502179055506001600f60146101000a81548160ff021916908315150217905550600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401611069929190612a61565b6020604051808303816000875af1158015611088573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110ac9190612ab6565b50565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600c5481565b60606040518060400160405280600381526020017f3078300000000000000000000000000000000000000000000000000000000000815250905090565b600061112f6111286113ce565b848461159f565b6001905092915050565b6111416113ce565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146111ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111c5906129ca565b60405180910390fd5b60005b815181101561125f576001600460008484815181106111f3576111f26129ea565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550808061125790612a19565b9150506111d1565b5050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661132b6113ce565b73ffffffffffffffffffffffffffffffffffffffff161461134b57600080fd5b6006811061135857600080fd5b8060078190555050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166113a36113ce565b73ffffffffffffffffffffffffffffffffffffffff16146113c357600080fd5b6113cc4761207b565b565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611445576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161143c90612d3a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036114b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114ab90612dcc565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516115929190612495565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361160e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161160590612e5e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361167d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161167490612ef0565b60405180910390fd5b600081116116c0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116b790612f82565b60405180910390fd5b60006116ca6110af565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415801561173857506117086110af565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611ae157600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156117e15750600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b6117ea57600080fd5b600f60159054906101000a900460ff1661183d5761183a606461182c600854600a54116118195760065461181d565b6007545b856120e790919063ffffffff16565b61216190919063ffffffff16565b90505b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156118e85750600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b801561193e5750600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156119f957600b54821115611988576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161197f90612fee565b60405180910390fd5b600c5482611995856108a5565b61199f919061300e565b11156119e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119d79061308e565b60405180910390fd5b600a60008154809291906119f390612a19565b91905055505b6000611a04306108a5565b9050600f60159054906101000a900460ff16158015611a715750600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b8015611a895750600f60169054906101000a900460ff165b8015611a965750600d5481115b8015611aa55750600954600a54115b15611adf57611ac583600d5411611abe57600d54611ac0565b835b611e02565b60004790506000811115611add57611adc4761207b565b5b505b505b611b3382600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546121ab90919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611bda611b8c82846121ab90919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546121f590919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611c7f84866121ab90919063ffffffff16565b604051611c8c9190612495565b60405180910390a36000811115611d9857611cef81600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546121f590919063ffffffff16565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611d8f9190612495565b60405180910390a35b50505050565b6000838311158290611de6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ddd9190612346565b60405180910390fd5b5060008385611df591906130ae565b9050809150509392505050565b6001600f60156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611e3a57611e3961253f565b5b604051908082528060200260200182016040528015611e685781602001602082028036833780820191505090505b5090503081600081518110611e8057611e7f6129ea565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611f27573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f4b9190612b64565b81600181518110611f5f57611f5e6129ea565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611fc630600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846113d6565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b815260040161202a9594939291906131a0565b600060405180830381600087803b15801561204457600080fd5b505af1158015612058573d6000803e3d6000fd5b50505050506000600f60156101000a81548160ff02191690831515021790555050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156120e3573d6000803e3d6000fd5b5050565b60008083036120f9576000905061215b565b60008284612107919061293c565b90508284826121169190613229565b14612156576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161214d906132cc565b60405180910390fd5b809150505b92915050565b60006121a383836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612253565b905092915050565b60006121ed83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611d9e565b905092915050565b6000808284612204919061300e565b905083811015612249576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161224090613338565b60405180910390fd5b8091505092915050565b6000808311829061229a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122919190612346565b60405180910390fd5b50600083856122a99190613229565b9050809150509392505050565b600081519050919050565b600082825260208201905092915050565b60005b838110156122f05780820151818401526020810190506122d5565b60008484015250505050565b6000601f19601f8301169050919050565b6000612318826122b6565b61232281856122c1565b93506123328185602086016122d2565b61233b816122fc565b840191505092915050565b60006020820190508181036000830152612360818461230d565b905092915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006123a78261237c565b9050919050565b6123b78161239c565b81146123c257600080fd5b50565b6000813590506123d4816123ae565b92915050565b6000819050919050565b6123ed816123da565b81146123f857600080fd5b50565b60008135905061240a816123e4565b92915050565b6000806040838503121561242757612426612372565b5b6000612435858286016123c5565b9250506020612446858286016123fb565b9150509250929050565b60008115159050919050565b61246581612450565b82525050565b6000602082019050612480600083018461245c565b92915050565b61248f816123da565b82525050565b60006020820190506124aa6000830184612486565b92915050565b6000806000606084860312156124c9576124c8612372565b5b60006124d7868287016123c5565b93505060206124e8868287016123c5565b92505060406124f9868287016123fb565b9150509250925092565b600060ff82169050919050565b61251981612503565b82525050565b60006020820190506125346000830184612510565b92915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b612577826122fc565b810181811067ffffffffffffffff821117156125965761259561253f565b5b80604052505050565b60006125a9612368565b90506125b5828261256e565b919050565b600067ffffffffffffffff8211156125d5576125d461253f565b5b602082029050602081019050919050565b600080fd5b60006125fe6125f9846125ba565b61259f565b90508083825260208201905060208402830185811115612621576126206125e6565b5b835b8181101561264a578061263688826123c5565b845260208401935050602081019050612623565b5050509392505050565b600082601f8301126126695761266861253a565b5b81356126798482602086016125eb565b91505092915050565b60006020828403121561269857612697612372565b5b600082013567ffffffffffffffff8111156126b6576126b5612377565b5b6126c284828501612654565b91505092915050565b6000602082840312156126e1576126e0612372565b5b60006126ef848285016123c5565b91505092915050565b6127018161239c565b82525050565b600060208201905061271c60008301846126f8565b92915050565b6000806040838503121561273957612738612372565b5b6000612747858286016123c5565b9250506020612758858286016123c5565b9150509250929050565b60006020828403121561277857612777612372565b5b6000612786848285016123fb565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b6001851115612815578086048111156127f1576127f061278f565b5b60018516156128005780820291505b808102905061280e856127be565b94506127d5565b94509492505050565b60008261282e57600190506128ea565b8161283c57600090506128ea565b8160018114612852576002811461285c5761288b565b60019150506128ea565b60ff84111561286e5761286d61278f565b5b8360020a9150848211156128855761288461278f565b5b506128ea565b5060208310610133831016604e8410600b84101617156128c05782820a9050838111156128bb576128ba61278f565b5b6128ea565b6128cd84848460016127cb565b925090508184048111156128e4576128e361278f565b5b81810290505b9392505050565b60006128fc826123da565b915061290783612503565b92506129347fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848461281e565b905092915050565b6000612947826123da565b9150612952836123da565b9250828202612960816123da565b915082820484148315176129775761297661278f565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006129b46020836122c1565b91506129bf8261297e565b602082019050919050565b600060208201905081810360008301526129e3816129a7565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000612a24826123da565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612a5657612a5561278f565b5b600182019050919050565b6000604082019050612a7660008301856126f8565b612a836020830184612486565b9392505050565b612a9381612450565b8114612a9e57600080fd5b50565b600081519050612ab081612a8a565b92915050565b600060208284031215612acc57612acb612372565b5b6000612ada84828501612aa1565b91505092915050565b7f54726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b6000612b196017836122c1565b9150612b2482612ae3565b602082019050919050565b60006020820190508181036000830152612b4881612b0c565b9050919050565b600081519050612b5e816123ae565b92915050565b600060208284031215612b7a57612b79612372565b5b6000612b8884828501612b4f565b91505092915050565b6000604082019050612ba660008301856126f8565b612bb360208301846126f8565b9392505050565b6000819050919050565b6000819050919050565b6000612be9612be4612bdf84612bba565b612bc4565b6123da565b9050919050565b612bf981612bce565b82525050565b600060c082019050612c1460008301896126f8565b612c216020830188612486565b612c2e6040830187612bf0565b612c3b6060830186612bf0565b612c4860808301856126f8565b612c5560a0830184612486565b979650505050505050565b600081519050612c6f816123e4565b92915050565b600080600060608486031215612c8e57612c8d612372565b5b6000612c9c86828701612c60565b9350506020612cad86828701612c60565b9250506040612cbe86828701612c60565b9150509250925092565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612d246024836122c1565b9150612d2f82612cc8565b604082019050919050565b60006020820190508181036000830152612d5381612d17565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612db66022836122c1565b9150612dc182612d5a565b604082019050919050565b60006020820190508181036000830152612de581612da9565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612e486025836122c1565b9150612e5382612dec565b604082019050919050565b60006020820190508181036000830152612e7781612e3b565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612eda6023836122c1565b9150612ee582612e7e565b604082019050919050565b60006020820190508181036000830152612f0981612ecd565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612f6c6029836122c1565b9150612f7782612f10565b604082019050919050565b60006020820190508181036000830152612f9b81612f5f565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e00000000000000600082015250565b6000612fd86019836122c1565b9150612fe382612fa2565b602082019050919050565b6000602082019050818103600083015261300781612fcb565b9050919050565b6000613019826123da565b9150613024836123da565b925082820190508082111561303c5761303b61278f565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e000000000000600082015250565b6000613078601a836122c1565b915061308382613042565b602082019050919050565b600060208201905081810360008301526130a78161306b565b9050919050565b60006130b9826123da565b91506130c4836123da565b92508282039050818111156130dc576130db61278f565b5b92915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6131178161239c565b82525050565b6000613129838361310e565b60208301905092915050565b6000602082019050919050565b600061314d826130e2565b61315781856130ed565b9350613162836130fe565b8060005b8381101561319357815161317a888261311d565b975061318583613135565b925050600181019050613166565b5085935050505092915050565b600060a0820190506131b56000830188612486565b6131c26020830187612bf0565b81810360408301526131d48186613142565b90506131e360608301856126f8565b6131f06080830184612486565b9695505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000613234826123da565b915061323f836123da565b92508261324f5761324e6131fa565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b60006132b66021836122c1565b91506132c18261325a565b604082019050919050565b600060208201905081810360008301526132e5816132a9565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000613322601b836122c1565b915061332d826132ec565b602082019050919050565b6000602082019050818103600083015261335181613315565b905091905056fe3078302e61693a20414920536d61727420436f6e74726163742041756469746f7245524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122045632bcaceac7875ef2881f22d45cd3e436b1eef8fab68eb74339bf535c098dc64736f6c63430008110033

Verified Source Code Partial Match

Compiler: v0.8.17+commit.8df45f5f EVM: london Optimization: No
OxO.sol 338 lines
/**

                                                                                                    
        ((((((((   .(((("/(((       (((((,                 .((((/        /(((((((   *((((((((       
     ,/(((((((((   .(((("//(((/*    (((((((,             (((((((/     ./(((((((((   /((((((((((*    
    ((((((                 ((((**       ((((((.       *((((((       .(((((                  /((((   
    (((/((                 (((((*          .#####   ,##((           ,(/(((                 ./"/"/   
    ((((((                 (((((/             *#####((              .((((/                 .////(   
    ((((((                 (((((*             ,((####(              .(((((                 ./((/(   
    ((((((                 (((((*             ,((((###/             ./((((                 .((((/   
    ((((((                 (((/(*           "//(((((/(#(/           .(###(                 .((((/   
    *(((((                 (((((/          *####...*"/###           .(####                 ./((((   
    (((((/                 ###((/       (####.          (###(       ,((#((                  (((#(   
     "/((######(    ((#######/*,    (((##( .             . *#((((     .,(((((((#(   ,((##((((((*    
        (######(    (#######(       (#(#(*                 .(((((        ((((((##   *(#((##((*      
                                                                                                    

    ๐™ฐ๐š— ๐™ฐ๐™ธ-๐š™๐š˜๐š ๐šŽ๐š›๐šŽ๐š ๐š‚๐š˜๐š•๐š’๐š๐š’๐š๐šข ๐š‚๐š–๐šŠ๐š›๐š ๐™ฒ๐š˜๐š—๐š๐š›๐šŠ๐šŒ๐š ๐™ฐ๐šž๐š๐š’๐š๐š˜๐š› ๐š๐š‘๐šŠ๐š ๐šž๐šœ๐šŽ๐šœ ๐™ฐ๐™ธ ๐š๐š˜ ๐šŠ๐š—๐šŠ๐š•๐šข๐šฃ๐šŽ ๐šŠ๐š—๐š ๐šŠ๐šž๐š๐š’๐š ๐šœ๐š–๐šŠ๐š›๐š 
    ๐šŒ๐š˜๐š—๐š๐š›๐šŠ๐šŒ๐š ๐šŒ๐š˜๐š๐šŽ, ๐š๐š’๐š—๐š๐šœ ๐šŽ๐š›๐š›๐š˜๐š›๐šœ ๐šŠ๐š—๐š ๐šŸ๐šž๐š•๐š—๐šŽ๐š›๐šŠ๐š‹๐š’๐š•๐š’๐š๐š’๐šŽ๐šœ, ๐šŠ๐š—๐š ๐š™๐š›๐š˜๐šŸ๐š’๐š๐šŽ๐šœ ๐š๐šŽ๐š๐šŠ๐š’๐š•๐šŽ๐š ๐š›๐šŽ๐š™๐š˜๐š›๐š๐šœ ๐š๐š˜๐š› 
    ๐šœ๐šŽ๐šŒ๐šž๐š›๐šŽ ๐šŠ๐š—๐š ๐šŽ๐š›๐š›๐š˜๐š›-๐š๐š›๐šŽ๐šŽ ๐šœ๐š–๐šŠ๐š›๐š ๐šŒ๐š˜๐š—๐š๐š›๐šŠ๐šŒ๐š๐šœ.

    > https://0x0.ai
    > https://t.me/Portal0x0
    > https://twitter.com/0x0audits
    > https://medium.com/@privacy0x0

*/



// SPDX-License-Identifier: MIT

pragma solidity 0.8.17;

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 OxO 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 _initialTax=25;
    uint256 private _finalTax=15;
    uint256 private _reduceTaxAt=60;
    uint256 private _preventSwapBefore=30;
    uint256 private _buyCount=0;

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 1000000000 * 10**_decimals;
    string private constant _name = unicode"0x0.ai: AI Smart Contract Auditor";
    string private constant _symbol = unicode"0x0";
    uint256 public _maxTxAmount = 20000000 * 10**_decimals;
    uint256 public _maxWalletSize = 20000000 * 10**_decimals;
    uint256 public _taxSwap = 10000000 * 10**_decimals;

    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;

    event MaxTxAmountUpdated(uint _maxTxAmount);
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

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

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

    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]);
            if(!inSwap){
              taxAmount = amount.mul((_buyCount>_reduceTaxAt)?_finalTax:_initialTax).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++;
            }

            uint256 contractTokenBalance = balanceOf(address(this));
            if (!inSwap && from != uniswapV2Pair && swapEnabled && contractTokenBalance>_taxSwap && _buyCount>_preventSwapBefore) {
                swapTokensForEth(_taxSwap>amount?amount:_taxSwap);
                uint256 contractETHBalance = address(this).balance;
                if(contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }

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

    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 enableTrading() 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);
        swapEnabled = true;
        tradingOpen = true;
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
    }

    function reduceFee(uint256 _newFee) external{
      require(_msgSender()==_taxWallet);
      require(_newFee<6);
      _finalTax=_newFee;
    }


    receive() external payable {}

    function manualSwap() external {
        require(_msgSender() == _taxWallet);
        swapTokensForEth(balanceOf(address(this)));
    }

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

    function manualSendToken() external {
        require(_msgSender() == _taxWallet);
        IERC20(address(this)).transfer(msg.sender, balanceOf(address(this)));
    }
}

Read Contract

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

Write Contract 12 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
enableTrading 0x8a8c523c
No parameters
manualSend 0xf4293890
No parameters
manualSendToken 0x503dfc4d
No parameters
manualSwap 0x51bc3c85
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

Top Interactions

AddressTxnsSentReceived
0x5bdf8521...F7Ef 1 1

Recent Transactions

CSV
|
Hash Method Block Age From/To Value Txn Fee Type
0x040e2764...757f66 transfer 24,440,504 IN 0x5bdf8521...F7Ef 0 ETH EIP-1559