Cryo Explorer Ethereum Mainnet

Address Contract Partially Verified

Address 0x2f6D79e66DC692595cD20129e4a6b222f5285F3D
Balance 0 ETH
Nonce 1
Code Size 13234 bytes
Indexed Transactions 0
External Etherscan · Sourcify

Contract Bytecode

13234 bytes
0x60806040526004361061012d575f3560e01c8063715018a6116100aa57806395d89b411161006e57806395d89b41146103ca578063a9059cbb146103f4578063bf474bed14610430578063c9567bf91461045a578063d34628cc14610470578063dd62ed3e1461049857610134565b8063715018a614610320578063751039fc146103365780637d1db4a51461034c5780638da5cb5b146103765780638f9a55c0146103a057610134565b80632f37aa6d116100f15780632f37aa6d1461022e578063313ce5671461025657806331c2d847146102805780633bbac579146102a857806370a08231146102e457610134565b806306fdde0314610138578063095ea7b3146101625780630faee56f1461019e57806318160ddd146101c857806323b872dd146101f257610134565b3661013457005b5f80fd5b348015610143575f80fd5b5061014c6104d4565b60405161015991906123b3565b60405180910390f35b34801561016d575f80fd5b5061018860048036038101906101839190612471565b610511565b60405161019591906124c9565b60405180910390f35b3480156101a9575f80fd5b506101b261052e565b6040516101bf91906124f1565b60405180910390f35b3480156101d3575f80fd5b506101dc610534565b6040516101e991906124f1565b60405180910390f35b3480156101fd575f80fd5b506102186004803603810190610213919061250a565b610556565b60405161022591906124c9565b60405180910390f35b348015610239575f80fd5b50610254600480360381019061024f919061255a565b61062a565b005b348015610261575f80fd5b5061026a6106de565b60405161027791906125b3565b60405180910390f35b34801561028b575f80fd5b506102a660048036038101906102a1919061270c565b6106e6565b005b3480156102b3575f80fd5b506102ce60048036038101906102c99190612753565b61080a565b6040516102db91906124c9565b60405180910390f35b3480156102ef575f80fd5b5061030a60048036038101906103059190612753565b61085c565b60405161031791906124f1565b60405180910390f35b34801561032b575f80fd5b506103346108a2565b005b348015610341575f80fd5b5061034a6109f0565b005b348015610357575f80fd5b50610360610b1c565b60405161036d91906124f1565b60405180910390f35b348015610381575f80fd5b5061038a610b22565b604051610397919061278d565b60405180910390f35b3480156103ab575f80fd5b506103b4610b49565b6040516103c191906124f1565b60405180910390f35b3480156103d5575f80fd5b506103de610b4f565b6040516103eb91906123b3565b60405180910390f35b3480156103ff575f80fd5b5061041a60048036038101906104159190612471565b610b8c565b60405161042791906124c9565b60405180910390f35b34801561043b575f80fd5b50610444610ba9565b60405161045191906124f1565b60405180910390f35b348015610465575f80fd5b5061046e610baf565b005b34801561047b575f80fd5b506104966004803603810190610491919061270c565b6110d4565b005b3480156104a3575f80fd5b506104be60048036038101906104b991906127a6565b6111f9565b6040516104cb91906124f1565b60405180910390f35b60606040518060400160405280600581526020017f426c6f626f000000000000000000000000000000000000000000000000000000815250905090565b5f61052461051d61127b565b8484611282565b6001905092915050565b60125481565b5f6009600a6105439190612940565b6276adf1610551919061298a565b905090565b5f610562848484611445565b61061f8461056e61127b565b61061a856040518060600160405280602881526020016133556028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6105d161127b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611e049092919063ffffffff16565b611282565b600190509392505050565b61063261127b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106be576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106b590612a15565b60405180910390fd5b81600781905550806008819055508160098190555080600a819055505050565b5f6009905090565b6106ee61127b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461077a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161077190612a15565b60405180910390fd5b5f5b8151811015610806575f60045f84848151811061079c5761079b612a33565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555080806107fe90612a60565b91505061077c565b5050565b5f60045f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff169050919050565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6108aa61127b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610936576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161092d90612a15565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6109f861127b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a84576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a7b90612a15565b60405180910390fd5b6009600a610a929190612940565b6276adf1610aa0919061298a565b600f819055506009600a610ab49190612940565b6276adf1610ac2919061298a565b6010819055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6009600a610af79190612940565b6276adf1610b05919061298a565b604051610b1291906124f1565b60405180910390a1565b600f5481565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60105481565b60606040518060400160405280600581526020017f424c4f424f000000000000000000000000000000000000000000000000000000815250905090565b5f610b9f610b9861127b565b8484611445565b6001905092915050565b60115481565b610bb761127b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c43576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c3a90612a15565b60405180910390fd5b60148054906101000a900460ff1615610c91576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c8890612af1565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d60135f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610d2c3060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a610d199190612940565b6276adf1610d27919061298a565b611282565b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d96573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dba9190612b23565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e40573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e649190612b23565b6040518363ffffffff1660e01b8152600401610e81929190612b4e565b6020604051808303815f875af1158015610e9d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ec19190612b23565b60145f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610f483061085c565b5f80610f52610b22565b426040518863ffffffff1660e01b8152600401610f7496959493929190612bb7565b60606040518083038185885af1158015610f90573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610fb59190612c2a565b50505060145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b360135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401611055929190612c7a565b6020604051808303815f875af1158015611071573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110959190612ccb565b506001601460166101000a81548160ff02191690831515021790555060016014806101000a81548160ff02191690831515021790555043600681905550565b6110dc61127b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611168576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161115f90612a15565b60405180910390fd5b5f5b81518110156111f557600160045f84848151811061118b5761118a612a33565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555080806111ed90612a60565b91505061116a565b5050565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036112f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112e790612d66565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361135e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161135590612df4565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161143891906124f1565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036114b3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114aa90612e82565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611521576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161151890612f10565b60405180910390fd5b5f8111611563576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161155a90612f9e565b60405180910390fd5b5f61156c610b22565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156115da57506115aa610b22565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611b545760045f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1615801561167d575060045f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b611685575f80fd5b6116c160646116b3600b54600e54116116a0576007546116a4565b6009545b85611e6690919063ffffffff16565b611edd90919063ffffffff16565b905060145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614801561176c575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156117bf575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b156118a157600f54821115611809576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161180090613006565b60405180910390fd5b601054826118168561085c565b6118209190613024565b1115611861576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611858906130a1565b60405180910390fd5b435f6006546118709190613024565b11156118895761187f83611f26565b15611888575f80fd5b5b600e5f81548092919061189b90612a60565b91905055505b60145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015611945575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b156119a357601054826119578561085c565b6119619190613024565b11156119a2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611999906130a1565b60405180910390fd5b5b60145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611a2b57503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611a6f57611a6c6064611a5e600c54600e5411611a4b57600854611a4f565b600a545b85611e6690919063ffffffff16565b611edd90919063ffffffff16565b90505b5f611a793061085c565b9050601460159054906101000a900460ff16158015611ae4575060145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b8015611afc5750601460169054906101000a900460ff165b8015611b09575060115481115b8015611b185750600d54600e54115b15611b5257611b3a611b3584611b3084601254611f37565b611f37565b611f4f565b5f4790505f811115611b5057611b4f476121ba565b5b505b505b5f811115611c5357611bac8160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461222290919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611c4a91906124f1565b60405180910390a35b611ca38260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461227f90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550611d46611cfa828461227f90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461222290919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611de9848661227f90919063ffffffff16565b604051611df691906124f1565b60405180910390a350505050565b5f838311158290611e4b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e4291906123b3565b60405180910390fd5b505f8385611e5991906130bf565b9050809150509392505050565b5f808303611e76575f9050611ed7565b5f8284611e83919061298a565b9050828482611e92919061311f565b14611ed2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ec9906131bf565b60405180910390fd5b809150505b92915050565b5f611f1e83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506122c8565b905092915050565b5f80823b90505f8111915050919050565b5f818311611f455782611f47565b815b905092915050565b6001601460156101000a81548160ff0219169083151502179055505f600267ffffffffffffffff811115611f8657611f856125d0565b5b604051908082528060200260200182016040528015611fb45781602001602082028036833780820191505090505b50905030815f81518110611fcb57611fca612a33565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561206f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906120939190612b23565b816001815181106120a7576120a6612a33565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061210d3060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611282565b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b815260040161216f959493929190613294565b5f604051808303815f87803b158015612186575f80fd5b505af1158015612198573d5f803e3d5ffd5b50505050505f601460156101000a81548160ff02191690831515021790555050565b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f1935050505015801561221e573d5f803e3d5ffd5b5050565b5f8082846122309190613024565b905083811015612275576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161226c90613336565b60405180910390fd5b8091505092915050565b5f6122c083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611e04565b905092915050565b5f808311829061230e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161230591906123b3565b60405180910390fd5b505f838561231c919061311f565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b83811015612360578082015181840152602081019050612345565b5f8484015250505050565b5f601f19601f8301169050919050565b5f61238582612329565b61238f8185612333565b935061239f818560208601612343565b6123a88161236b565b840191505092915050565b5f6020820190508181035f8301526123cb818461237b565b905092915050565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61240d826123e4565b9050919050565b61241d81612403565b8114612427575f80fd5b50565b5f8135905061243881612414565b92915050565b5f819050919050565b6124508161243e565b811461245a575f80fd5b50565b5f8135905061246b81612447565b92915050565b5f8060408385031215612487576124866123dc565b5b5f6124948582860161242a565b92505060206124a58582860161245d565b9150509250929050565b5f8115159050919050565b6124c3816124af565b82525050565b5f6020820190506124dc5f8301846124ba565b92915050565b6124eb8161243e565b82525050565b5f6020820190506125045f8301846124e2565b92915050565b5f805f60608486031215612521576125206123dc565b5b5f61252e8682870161242a565b935050602061253f8682870161242a565b92505060406125508682870161245d565b9150509250925092565b5f80604083850312156125705761256f6123dc565b5b5f61257d8582860161245d565b925050602061258e8582860161245d565b9150509250929050565b5f60ff82169050919050565b6125ad81612598565b82525050565b5f6020820190506125c65f8301846125a4565b92915050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6126068261236b565b810181811067ffffffffffffffff82111715612625576126246125d0565b5b80604052505050565b5f6126376123d3565b905061264382826125fd565b919050565b5f67ffffffffffffffff821115612662576126616125d0565b5b602082029050602081019050919050565b5f80fd5b5f61268961268484612648565b61262e565b905080838252602082019050602084028301858111156126ac576126ab612673565b5b835b818110156126d557806126c1888261242a565b8452602084019350506020810190506126ae565b5050509392505050565b5f82601f8301126126f3576126f26125cc565b5b8135612703848260208601612677565b91505092915050565b5f60208284031215612721576127206123dc565b5b5f82013567ffffffffffffffff81111561273e5761273d6123e0565b5b61274a848285016126df565b91505092915050565b5f60208284031215612768576127676123dc565b5b5f6127758482850161242a565b91505092915050565b61278781612403565b82525050565b5f6020820190506127a05f83018461277e565b92915050565b5f80604083850312156127bc576127bb6123dc565b5b5f6127c98582860161242a565b92505060206127da8582860161242a565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b600185111561286657808604811115612842576128416127e4565b5b60018516156128515780820291505b808102905061285f85612811565b9450612826565b94509492505050565b5f8261287e5760019050612939565b8161288b575f9050612939565b81600181146128a157600281146128ab576128da565b6001915050612939565b60ff8411156128bd576128bc6127e4565b5b8360020a9150848211156128d4576128d36127e4565b5b50612939565b5060208310610133831016604e8410600b841016171561290f5782820a90508381111561290a576129096127e4565b5b612939565b61291c848484600161281d565b92509050818404811115612933576129326127e4565b5b81810290505b9392505050565b5f61294a8261243e565b915061295583612598565b92506129827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848461286f565b905092915050565b5f6129948261243e565b915061299f8361243e565b92508282026129ad8161243e565b915082820484148315176129c4576129c36127e4565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6129ff602083612333565b9150612a0a826129cb565b602082019050919050565b5f6020820190508181035f830152612a2c816129f3565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f612a6a8261243e565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612a9c57612a9b6127e4565b5b600182019050919050565b7f74726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f612adb601783612333565b9150612ae682612aa7565b602082019050919050565b5f6020820190508181035f830152612b0881612acf565b9050919050565b5f81519050612b1d81612414565b92915050565b5f60208284031215612b3857612b376123dc565b5b5f612b4584828501612b0f565b91505092915050565b5f604082019050612b615f83018561277e565b612b6e602083018461277e565b9392505050565b5f819050919050565b5f819050919050565b5f612ba1612b9c612b9784612b75565b612b7e565b61243e565b9050919050565b612bb181612b87565b82525050565b5f60c082019050612bca5f83018961277e565b612bd760208301886124e2565b612be46040830187612ba8565b612bf16060830186612ba8565b612bfe608083018561277e565b612c0b60a08301846124e2565b979650505050505050565b5f81519050612c2481612447565b92915050565b5f805f60608486031215612c4157612c406123dc565b5b5f612c4e86828701612c16565b9350506020612c5f86828701612c16565b9250506040612c7086828701612c16565b9150509250925092565b5f604082019050612c8d5f83018561277e565b612c9a60208301846124e2565b9392505050565b612caa816124af565b8114612cb4575f80fd5b50565b5f81519050612cc581612ca1565b92915050565b5f60208284031215612ce057612cdf6123dc565b5b5f612ced84828501612cb7565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f612d50602483612333565b9150612d5b82612cf6565b604082019050919050565b5f6020820190508181035f830152612d7d81612d44565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612dde602283612333565b9150612de982612d84565b604082019050919050565b5f6020820190508181035f830152612e0b81612dd2565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f612e6c602583612333565b9150612e7782612e12565b604082019050919050565b5f6020820190508181035f830152612e9981612e60565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f612efa602383612333565b9150612f0582612ea0565b604082019050919050565b5f6020820190508181035f830152612f2781612eee565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f612f88602983612333565b9150612f9382612f2e565b604082019050919050565b5f6020820190508181035f830152612fb581612f7c565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e000000000000005f82015250565b5f612ff0601983612333565b9150612ffb82612fbc565b602082019050919050565b5f6020820190508181035f83015261301d81612fe4565b9050919050565b5f61302e8261243e565b91506130398361243e565b9250828201905080821115613051576130506127e4565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e0000000000005f82015250565b5f61308b601a83612333565b915061309682613057565b602082019050919050565b5f6020820190508181035f8301526130b88161307f565b9050919050565b5f6130c98261243e565b91506130d48361243e565b92508282039050818111156130ec576130eb6127e4565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6131298261243e565b91506131348361243e565b925082613144576131436130f2565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f6131a9602183612333565b91506131b48261314f565b604082019050919050565b5f6020820190508181035f8301526131d68161319d565b9050919050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61320f81612403565b82525050565b5f6132208383613206565b60208301905092915050565b5f602082019050919050565b5f613242826131dd565b61324c81856131e7565b9350613257836131f7565b805f5b8381101561328757815161326e8882613215565b97506132798361322c565b92505060018101905061325a565b5085935050505092915050565b5f60a0820190506132a75f8301886124e2565b6132b46020830187612ba8565b81810360408301526132c68186613238565b90506132d5606083018561277e565b6132e260808301846124e2565b9695505050505050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f613320601b83612333565b915061332b826132ec565b602082019050919050565b5f6020820190508181035f83015261334d81613314565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122018f803d9f1c019f1cd864ada7005f05e6164511daf58166f46dd7eddd2dfc80964736f6c63430008140033

Verified Source Code Partial Match

Compiler: v0.8.20+commit.a1b79de6 EVM: shanghai Optimization: No
BLOBO.sol 365 lines
// SPDX-License-Identifier: MIT

/*
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!??J??777???JJYYJ?!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!?P5YY555555555YYYY5YY??7!!!!!!!!!!!!!
!!!!!!!!!!!?JPPYYJ???77??77???JJYY555Y7!!!!!!!!!!!
!7!!7!!!!!Y5Y5PYY7^~~~!77!!!~~!!!!!7?Y5?!!!!!!!!!!
!7!77!!!!Y5YYYP5YYYYY!~~~~!?~!!!!7?7!J5Y!!!!!!!!!!
!!!!!!!!55YYYY5PYYYYYJJJYYYYYJJ?7?YYYY5?!!!!!!!7!!
7!77!!!Y5YYYYY5PYY55555555555PPPPP5YY5Y!!!!!!!7^:7
!!!!!!!Y5YYYYYPP555YYYYYYYJ?7!!!7?JPPPJ!!!!!777!77
!!!!!!!7Y55??P#JY5YYYJ7!^:.......^??YGGJ!!!!77!!!!
!!!!!!!??!:.G@&5#B^~:...........~&@P#~?BB?!!!!!!!!
!!!!!7?~....!GB&G!~!...........:?75P7..:Y5!!!!!!!!
!!!!??:.......::..!~...........:?........~?7!!!!!!
!!!7J............~YP^.........:5G5?!:.....:!J!!!!!
!!!J~..........:YBB?!!~~~^^^~!!!?PBGP?......7?!!!!
!!!Y...:....:.!GBG~....::^^::....:!YGBJ.....~Y!!!!
!!?7...7~...?^GPJ^..................^~:7^..:JY!!!!
!!7J...~7^^!!.:........................!7^^!7J!!!!
!!!??^..:^^:............................^~~7?7!!!!
!!!!!??7~^::.......................:^~!77777!!!!!!
!!!!!!!!77777777!!~~^^^::::::^^~!!77?7!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!7777777?777?7777!!!!!!!!!!!!!!!!!


██████╗░██╗░░░░░░█████╗░██████╗░░█████╗░
██╔══██╗██║░░░░░██╔══██╗██╔══██╗██╔══██╗
██████╦╝██║░░░░░██║░░██║██████╦╝██║░░██║
██╔══██╗██║░░░░░██║░░██║██╔══██╗██║░░██║
██████╦╝███████╗╚█████╔╝██████╦╝╚█████╔╝
╚═════╝░╚══════╝░╚════╝░╚═════╝░░╚════╝░

Website : https://blobo.fun/
Telegram : https://t.me/BloboPortal
Twitter : https://twitter.com/bloboeth/
*/
pragma solidity 0.8.20;

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 BLOBO 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 firstBlock;

    uint256 private _initialBuyTax=20;
    uint256 private _initialSellTax=25;
    uint256 private _finalBuyTax=10;
    uint256 private _finalSellTax=25;
    uint256 private _reduceBuyTaxAt=10;
    uint256 private _reduceSellTaxAt=20;
    uint256 private _preventSwapBefore=30;
    uint256 private _buyCount=0;

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 7777777 * 10**_decimals;
    string private constant _name = unicode"Blobo";
    string private constant _symbol = unicode"BLOBO";
    uint256 public _maxTxAmount = 54444 * 10**_decimals;
    uint256 public _maxWalletSize = 54444 * 10**_decimals;
    uint256 public _taxSwapThreshold= 7777 * 10**_decimals;
    uint256 public _maxTaxSwap= 108888 * 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]);
            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.");

                if (firstBlock + 0  > block.number) {
                    require(!isContract(to));
                }
                _buyCount++;
            }

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

            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) {
                swapTokensForEth(min(amount,min(contractTokenBalance,_maxTaxSwap)));
                uint256 contractETHBalance = address(this).balance;
                if(contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }

        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 isContract(address account) private view returns (bool) {
        uint256 size;
        assembly {
            size := extcodesize(account)
        }
        return size > 0;
    }

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

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

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

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

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

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

    function updateTax(uint256 _buyTax,uint256 _sellTax) external onlyOwner{
       _initialBuyTax=_buyTax;
       _initialSellTax=_sellTax;
       _finalBuyTax=_buyTax;
       _finalSellTax=_sellTax;
    }
    
    function openTrading() 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;
        firstBlock = block.number;
    }

    receive() external payable {}

}

Read Contract

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

Write Contract 9 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
openTrading 0xc9567bf9
No parameters
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
updateTax 0x2f37aa6d
uint256 _buyTax
uint256 _sellTax

Recent Transactions

No transactions found for this address