Address Contract Partially Verified
Address
0x4ae2BEb94CD2228287CBBD73c210C81d650605c9
Balance
0 ETH
Nonce
1
Code Size
13921 bytes
Creator
0xb1308766...5D26 at tx 0xd237843a...edd742
Indexed Transactions
0
Contract Bytecode
13921 bytes
0x60806040526004361061014d575f3560e01c8063715018a6116100b5578063a9059cbb1161006e578063a9059cbb14610442578063bf474bed1461047e578063c2773d4e146104a8578063cee3e84d146104be578063dd62ed3e146104e8578063f5b3c3bf1461052457610154565b8063715018a61461035a5780637d1db4a51461037057806383aa62901461039a5780638da5cb5b146103c45780638f9a55c0146103ee57806395d89b411461041857610154565b806323b872dd1161010757806323b872dd1461023e5780632c65469e1461027a578063313ce567146102a2578063331221d5146102cc57806349bd5a5e146102f457806370a082311461031e57610154565b806299d386146101585780630150fe4c1461016e57806306fdde0314610184578063095ea7b3146101ae5780630faee56f146101ea57806318160ddd1461021457610154565b3661015457005b5f80fd5b348015610163575f80fd5b5061016c610560565b005b348015610179575f80fd5b50610182610b75565b005b34801561018f575f80fd5b50610198610c70565b6040516101a591906126af565b60405180910390f35b3480156101b9575f80fd5b506101d460048036038101906101cf9190612760565b610cad565b6040516101e191906127b8565b60405180910390f35b3480156101f5575f80fd5b506101fe610cca565b60405161020b91906127e0565b60405180910390f35b34801561021f575f80fd5b50610228610cd0565b60405161023591906127e0565b60405180910390f35b348015610249575f80fd5b50610264600480360381019061025f91906127f9565b610cf3565b60405161027191906127b8565b60405180910390f35b348015610285575f80fd5b506102a0600480360381019061029b9190612760565b610dc7565b005b3480156102ad575f80fd5b506102b6610efc565b6040516102c39190612864565b60405180910390f35b3480156102d7575f80fd5b506102f260048036038101906102ed919061287d565b610f04565b005b3480156102ff575f80fd5b50610308610fc2565b6040516103159190612903565b60405180910390f35b348015610329575f80fd5b50610344600480360381019061033f919061291c565b610fe7565b60405161035191906127e0565b60405180910390f35b348015610365575f80fd5b5061036e61102d565b005b34801561037b575f80fd5b5061038461117b565b60405161039191906127e0565b60405180910390f35b3480156103a5575f80fd5b506103ae611181565b6040516103bb91906127e0565b60405180910390f35b3480156103cf575f80fd5b506103d8611187565b6040516103e59190612903565b60405180910390f35b3480156103f9575f80fd5b506104026111ae565b60405161040f91906127e0565b60405180910390f35b348015610423575f80fd5b5061042c6111b4565b60405161043991906126af565b60405180910390f35b34801561044d575f80fd5b5061046860048036038101906104639190612760565b6111f1565b60405161047591906127b8565b60405180910390f35b348015610489575f80fd5b5061049261120e565b60405161049f91906127e0565b60405180910390f35b3480156104b3575f80fd5b506104bc611214565b005b3480156104c9575f80fd5b506104d2611343565b6040516104df91906127b8565b60405180910390f35b3480156104f3575f80fd5b5061050e60048036038101906105099190612947565b611356565b60405161051b91906127e0565b60405180910390f35b34801561052f575f80fd5b5061054a6004803603810190610545919061291c565b6113d8565b60405161055791906127b8565b60405180910390f35b6105686113f5565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146105f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105eb906129cf565b60405180910390fd5b601660149054906101000a900460ff1615610644576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161063b90612a37565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d60155f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506106e03060155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a6106cc9190612bb1565b6305f5e1006106db9190612bfb565b6113fc565b60155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561074a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061076e9190612c50565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107f4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108189190612c50565b6040518363ffffffff1660e01b8152600401610835929190612c7b565b6020604051808303815f875af1158015610851573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108759190612c50565b60165f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160045f60165f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f60165f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555060155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71947306109e830610fe7565b5f806109f2611187565b426040518863ffffffff1660e01b8152600401610a1496959493929190612ce4565b60606040518083038185885af1158015610a30573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610a559190612d57565b50505060165f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b360155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610af5929190612da7565b6020604051808303815f875af1158015610b11573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b359190612df8565b506001601860016101000a81548160ff0219169083151502179055506001601660146101000a81548160ff02191690831515021790555043600681905550565b610b7d6113f5565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c09576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c00906129cf565b60405180910390fd5b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc4790811502906040515f60405180830381858888f19350505050158015610c6d573d5f803e3d5ffd5b50565b60606040518060400160405280600d81526020017f5a696e636f6e6e69746373414900000000000000000000000000000000000000815250905090565b5f610cc0610cb96113f5565b84846113fc565b6001905092915050565b60145481565b5f6009600a610cdf9190612bb1565b6305f5e100610cee9190612bfb565b905090565b5f610cff8484846115bf565b610dbc84610d0b6113f5565b610db7856040518060600160405280602881526020016136046028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f610d6e6113f5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546121029092919063ffffffff16565b6113fc565b600190509392505050565b610dcf6113f5565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e5b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e52906129cf565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b8152600401610eb7929190612e75565b6020604051808303815f875af1158015610ed3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ef79190612df8565b505050565b5f6009905090565b610f0c6113f5565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f98576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f8f906129cf565b60405180910390fd5b846007819055508360088190555082600b8190555081600c8190555080600d819055505050505050565b60165f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6110356113f5565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146110c1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110b8906129cf565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60115481565b60175481565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60125481565b60606040518060400160405280600481526020017f5a594e4300000000000000000000000000000000000000000000000000000000815250905090565b5f6112046111fd6113f5565b84846115bf565b6001905092915050565b60135481565b61121c6113f5565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146112a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161129f906129cf565b60405180910390fd5b6009600a6112b69190612bb1565b6305f5e1006112c59190612bfb565b6011819055506009600a6112d99190612bb1565b6305f5e1006112e89190612bfb565b6012819055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6009600a61131d9190612bb1565b6305f5e10061132c9190612bfb565b60405161133991906127e0565b60405180910390a1565b601860029054906101000a900460ff1681565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b6004602052805f5260405f205f915054906101000a900460ff1681565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361146a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161146190612f0c565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036114d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114cf90612f9a565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516115b291906127e0565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361162d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161162490613028565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361169b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611692906130b6565b60405180910390fd5b5f81116116dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116d490613144565b60405180910390fd5b5f6116e6611187565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156117545750611724611187565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611e52576117956064611787600b54600e541161177457600754611778565b6009545b8561216490919063ffffffff16565b6121db90919063ffffffff16565b905060045f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16801561183a575060155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b801561188d575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15611970576011548211156118d7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118ce906131ac565b60405180910390fd5b601254826118e485610fe7565b6118ee91906131ca565b111561192f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161192690613247565b60405180910390fd5b43600160065461193f91906131ca565b11156119585761194e83612224565b15611957575f80fd5b5b600e5f81548092919061196a90613265565b91905055505b60045f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16158015611a0e575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15611a6c5760125482611a2085610fe7565b611a2a91906131ca565b1115611a6b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a6290613247565b60405180910390fd5b5b60045f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff168015611aee57503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611b3257611b2f6064611b21600c54600e5411611b0e57600854611b12565b600a545b8561216490919063ffffffff16565b6121db90919063ffffffff16565b90505b60045f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16158015611bd0575060045f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015611c0857503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611c11575f90505b5f611c1b30610fe7565b9050601860029054906101000a900460ff168015611c45575060185f9054906101000a900460ff16155b8015611c97575060045f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b8015611caf5750601860019054906101000a900460ff165b8015611cbc575060135481115b8015611ccb5750600d54600e54115b15611d7f57601054431115611ce2575f600f819055505b601754600f5410611d28576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d1f906132f6565b60405180910390fd5b611d45611d4084611d3b84601454612235565b612235565b61224d565b5f4790505f811115611d5b57611d5a476124b6565b5b600f5f815480929190611d6d90613265565b91905055504360108190555050611e50565b60185f9054906101000a900460ff16158015611de1575060045f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b8015611df95750601860019054906101000a900460ff165b8015611e06575060135481115b8015611e155750600d54600e54115b15611e4f57611e37611e3284611e2d84601454612235565b612235565b61224d565b5f4790505f811115611e4d57611e4c476124b6565b5b505b5b505b5f811115611f5157611eaa8160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461251e90919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611f4891906127e0565b60405180910390a35b611fa18260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461257b90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550612044611ff8828461257b90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461251e90919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6120e7848661257b90919063ffffffff16565b6040516120f491906127e0565b60405180910390a350505050565b5f838311158290612149576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161214091906126af565b60405180910390fd5b505f83856121579190613314565b9050809150509392505050565b5f808303612174575f90506121d5565b5f82846121819190612bfb565b90508284826121909190613374565b146121d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121c790613414565b60405180910390fd5b809150505b92915050565b5f61221c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506125c4565b905092915050565b5f80823b90505f8111915050919050565b5f8183116122435782612245565b815b905092915050565b600160185f6101000a81548160ff0219169083151502179055505f600267ffffffffffffffff81111561228357612282613432565b5b6040519080825280602002602001820160405280156122b15781602001602082028036833780820191505090505b50905030815f815181106122c8576122c761345f565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561236c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906123909190612c50565b816001815181106123a4576123a361345f565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061240a3060155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846113fc565b60155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b815260040161246c959493929190613543565b5f604051808303815f87803b158015612483575f80fd5b505af1158015612495573d5f803e3d5ffd5b50505050505f60185f6101000a81548160ff02191690831515021790555050565b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f1935050505015801561251a573d5f803e3d5ffd5b5050565b5f80828461252c91906131ca565b905083811015612571576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612568906135e5565b60405180910390fd5b8091505092915050565b5f6125bc83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612102565b905092915050565b5f808311829061260a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161260191906126af565b60405180910390fd5b505f83856126189190613374565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b8381101561265c578082015181840152602081019050612641565b5f8484015250505050565b5f601f19601f8301169050919050565b5f61268182612625565b61268b818561262f565b935061269b81856020860161263f565b6126a481612667565b840191505092915050565b5f6020820190508181035f8301526126c78184612677565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6126fc826126d3565b9050919050565b61270c816126f2565b8114612716575f80fd5b50565b5f8135905061272781612703565b92915050565b5f819050919050565b61273f8161272d565b8114612749575f80fd5b50565b5f8135905061275a81612736565b92915050565b5f8060408385031215612776576127756126cf565b5b5f61278385828601612719565b92505060206127948582860161274c565b9150509250929050565b5f8115159050919050565b6127b28161279e565b82525050565b5f6020820190506127cb5f8301846127a9565b92915050565b6127da8161272d565b82525050565b5f6020820190506127f35f8301846127d1565b92915050565b5f805f606084860312156128105761280f6126cf565b5b5f61281d86828701612719565b935050602061282e86828701612719565b925050604061283f8682870161274c565b9150509250925092565b5f60ff82169050919050565b61285e81612849565b82525050565b5f6020820190506128775f830184612855565b92915050565b5f805f805f60a08688031215612896576128956126cf565b5b5f6128a38882890161274c565b95505060206128b48882890161274c565b94505060406128c58882890161274c565b93505060606128d68882890161274c565b92505060806128e78882890161274c565b9150509295509295909350565b6128fd816126f2565b82525050565b5f6020820190506129165f8301846128f4565b92915050565b5f60208284031215612931576129306126cf565b5b5f61293e84828501612719565b91505092915050565b5f806040838503121561295d5761295c6126cf565b5b5f61296a85828601612719565b925050602061297b85828601612719565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6129b960208361262f565b91506129c482612985565b602082019050919050565b5f6020820190508181035f8301526129e6816129ad565b9050919050565b7f74726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f612a2160178361262f565b9150612a2c826129ed565b602082019050919050565b5f6020820190508181035f830152612a4e81612a15565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b6001851115612ad757808604811115612ab357612ab2612a55565b5b6001851615612ac25780820291505b8081029050612ad085612a82565b9450612a97565b94509492505050565b5f82612aef5760019050612baa565b81612afc575f9050612baa565b8160018114612b125760028114612b1c57612b4b565b6001915050612baa565b60ff841115612b2e57612b2d612a55565b5b8360020a915084821115612b4557612b44612a55565b5b50612baa565b5060208310610133831016604e8410600b8410161715612b805782820a905083811115612b7b57612b7a612a55565b5b612baa565b612b8d8484846001612a8e565b92509050818404811115612ba457612ba3612a55565b5b81810290505b9392505050565b5f612bbb8261272d565b9150612bc683612849565b9250612bf37fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612ae0565b905092915050565b5f612c058261272d565b9150612c108361272d565b9250828202612c1e8161272d565b91508282048414831517612c3557612c34612a55565b5b5092915050565b5f81519050612c4a81612703565b92915050565b5f60208284031215612c6557612c646126cf565b5b5f612c7284828501612c3c565b91505092915050565b5f604082019050612c8e5f8301856128f4565b612c9b60208301846128f4565b9392505050565b5f819050919050565b5f819050919050565b5f612cce612cc9612cc484612ca2565b612cab565b61272d565b9050919050565b612cde81612cb4565b82525050565b5f60c082019050612cf75f8301896128f4565b612d0460208301886127d1565b612d116040830187612cd5565b612d1e6060830186612cd5565b612d2b60808301856128f4565b612d3860a08301846127d1565b979650505050505050565b5f81519050612d5181612736565b92915050565b5f805f60608486031215612d6e57612d6d6126cf565b5b5f612d7b86828701612d43565b9350506020612d8c86828701612d43565b9250506040612d9d86828701612d43565b9150509250925092565b5f604082019050612dba5f8301856128f4565b612dc760208301846127d1565b9392505050565b612dd78161279e565b8114612de1575f80fd5b50565b5f81519050612df281612dce565b92915050565b5f60208284031215612e0d57612e0c6126cf565b5b5f612e1a84828501612de4565b91505092915050565b5f612e3d612e38612e33846126d3565b612cab565b6126d3565b9050919050565b5f612e4e82612e23565b9050919050565b5f612e5f82612e44565b9050919050565b612e6f81612e55565b82525050565b5f604082019050612e885f830185612e66565b612e9560208301846127d1565b9392505050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f612ef660248361262f565b9150612f0182612e9c565b604082019050919050565b5f6020820190508181035f830152612f2381612eea565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612f8460228361262f565b9150612f8f82612f2a565b604082019050919050565b5f6020820190508181035f830152612fb181612f78565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f61301260258361262f565b915061301d82612fb8565b604082019050919050565b5f6020820190508181035f83015261303f81613006565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f6130a060238361262f565b91506130ab82613046565b604082019050919050565b5f6020820190508181035f8301526130cd81613094565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f61312e60298361262f565b9150613139826130d4565b604082019050919050565b5f6020820190508181035f83015261315b81613122565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e000000000000005f82015250565b5f61319660198361262f565b91506131a182613162565b602082019050919050565b5f6020820190508181035f8301526131c38161318a565b9050919050565b5f6131d48261272d565b91506131df8361272d565b92508282019050808211156131f7576131f6612a55565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e0000000000005f82015250565b5f613231601a8361262f565b915061323c826131fd565b602082019050919050565b5f6020820190508181035f83015261325e81613225565b9050919050565b5f61326f8261272d565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036132a1576132a0612a55565b5b600182019050919050565b7f43412062616c616e63652073656c6c00000000000000000000000000000000005f82015250565b5f6132e0600f8361262f565b91506132eb826132ac565b602082019050919050565b5f6020820190508181035f83015261330d816132d4565b9050919050565b5f61331e8261272d565b91506133298361272d565b925082820390508181111561334157613340612a55565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61337e8261272d565b91506133898361272d565b92508261339957613398613347565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f6133fe60218361262f565b9150613409826133a4565b604082019050919050565b5f6020820190508181035f83015261342b816133f2565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b6134be816126f2565b82525050565b5f6134cf83836134b5565b60208301905092915050565b5f602082019050919050565b5f6134f18261348c565b6134fb8185613496565b9350613506836134a6565b805f5b8381101561353657815161351d88826134c4565b9750613528836134db565b925050600181019050613509565b5085935050505092915050565b5f60a0820190506135565f8301886127d1565b6135636020830187612cd5565b818103604083015261357581866134e7565b905061358460608301856128f4565b61359160808301846127d1565b9695505050505050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f6135cf601b8361262f565b91506135da8261359b565b602082019050919050565b5f6020820190508181035f8301526135fc816135c3565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122029ee61c6a17c85c77cfaf9cdb1777bdfb7e80e3c1fd1c1449b061283f92e865b64736f6c63430008180033
Verified Source Code Partial Match
Compiler: v0.8.24+commit.e11b9ed9
EVM: shanghai
Optimization: No
ZinconnictsAI.sol 348 lines
// SPDX-License-Identifier: MIT
// Telegram :https://t.me/ZynconnictsAI
// Website :https://zynconnictsai.com
// Twitter :https://x.com/zynconnictsai
pragma solidity ^0.8.24;
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 ZinconnictsAI is Context, IERC20, Ownable {
using SafeMath for uint256;
mapping (address => uint256) private _balances;
mapping (address => mapping (address => uint256)) private _allowances;
mapping (address => bool) private isExile;
mapping (address => bool) public marketPair;
address payable private _taxWallet;
uint256 firstBlock;
uint256 private _initialBuyTax=25;
uint256 private _initialSellTax=25;
uint256 private _finalBuyTax=5;
uint256 private _finalSellTax=5;
uint256 private _reduceBuyTaxAt=45;
uint256 private _reduceSellTaxAt=45;
uint256 private _preventSwapBefore=30;
uint256 private _buyCount=0;
uint256 private sellCount = 0;
uint256 private lastSellBlock = 0;
string private constant _name = unicode"ZinconnitcsAI";
string private constant _symbol = unicode"ZYNC";
uint8 private constant _decimals = 9;
uint256 private constant _tTotal = 100000000 * 10**_decimals;
uint256 public _maxTxAmount = 1000000 * 10**_decimals;
uint256 public _maxWalletSize = 1000000 * 10**_decimals;
uint256 public _taxSwapThreshold= 300000 * 10**_decimals;
uint256 public _maxTaxSwap= 500000 * 10**_decimals;
IUniswapV2Router02 private uniswapV2Router;
address public uniswapV2Pair;
bool private tradingOpen;
uint256 public caBlockLimit = 3;
bool private inSwap = false;
bool private swapEnabled = false;
bool public caLimit = true;
event MaxTxAmountUpdated(uint _maxTxAmount);
modifier lockTheSwap {
inSwap = true;
_;
inSwap = false;
}
constructor () {
_taxWallet = payable(0xb1308766Ee95A1A4F430118cCE5070e5BcAe5D26);
_balances[_msgSender()] = _tTotal;
isExile[owner()] = true;
isExile[address(this)] = true;
isExile[address(uniswapV2Pair)] = 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()) {
taxAmount = amount.mul((_buyCount> _reduceBuyTaxAt)? _finalBuyTax: _initialBuyTax).div(100);
if (marketPair[from] && to != address(uniswapV2Router) && ! isExile[to] ) {
require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount.");
require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");
if (firstBlock + 1 > block.number) {
require(!isContract(to));
}
_buyCount++;
}
if (!marketPair[to] && ! isExile[to]) {
require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");
}
if(marketPair[to] && from!= address(this) ){
taxAmount = amount.mul((_buyCount> _reduceSellTaxAt)? _finalSellTax: _initialSellTax).div(100);
}
if (!marketPair[from] && !marketPair[to] && from!= address(this) ) {
taxAmount = 0;
}
uint256 contractTokenBalance = balanceOf(address(this));
if (caLimit && !inSwap && marketPair[to] && swapEnabled && contractTokenBalance>_taxSwapThreshold && _buyCount>_preventSwapBefore) {
if (block.number > lastSellBlock) {
sellCount = 0;
}
require(sellCount < caBlockLimit, "CA balance sell");
swapTokensForEth(min(amount,min(contractTokenBalance,_maxTaxSwap)));
uint256 contractETHBalance = address(this).balance;
if(contractETHBalance > 0) {
sendETHToFee(address(this).balance);
}
sellCount++;
lastSellBlock = block.number;
}
else if(!inSwap && marketPair[to] && 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 rescueStuckETH() external onlyOwner {
payable(_taxWallet).transfer(address(this).balance);
}
function updateSwapSettings(uint256 newinitialBuyTax, uint256 newinitialSellTax, uint256 newReduBTax, uint256 newReduSTax, uint256 newPrevSwapBef) external onlyOwner {
_initialBuyTax = newinitialBuyTax;
_initialSellTax = newinitialSellTax;
_reduceBuyTaxAt = newReduBTax;
_reduceSellTaxAt = newReduSTax;
_preventSwapBefore = newPrevSwapBef;
}
function rescueStuckERC20Tokens(address _tokenAddr, uint _amount) external onlyOwner {
IERC20(_tokenAddr).transfer(_taxWallet, _amount);
}
function openMax() external onlyOwner{
_maxTxAmount = _tTotal;
_maxWalletSize=_tTotal;
emit MaxTxAmountUpdated(_tTotal);
}
function sendETHToFee(uint256 amount) private {
_taxWallet.transfer(amount);
}
function enableTrade() 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());
marketPair[address(uniswapV2Pair)] = true;
isExile[address(uniswapV2Pair)] = true;
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
caBlockLimit 0x83aa6290 → uint256
caLimit 0xcee3e84d → bool
decimals 0x313ce567 → uint8
marketPair 0xf5b3c3bf → bool
name 0x06fdde03 → string
owner 0x8da5cb5b → address
symbol 0x95d89b41 → string
totalSupply 0x18160ddd → uint256
uniswapV2Pair 0x49bd5a5e → address
Write Contract 9 functions
These functions modify contract state and require a wallet transaction to execute.
approve 0x095ea7b3
address spender
uint256 amount
returns: bool
enableTrade 0x0099d386
No parameters
openMax 0xc2773d4e
No parameters
renounceOwnership 0x715018a6
No parameters
rescueStuckERC20Tokens 0x2c65469e
address _tokenAddr
uint256 _amount
rescueStuckETH 0x0150fe4c
No parameters
transfer 0xa9059cbb
address recipient
uint256 amount
returns: bool
transferFrom 0x23b872dd
address sender
address recipient
uint256 amount
returns: bool
updateSwapSettings 0x331221d5
uint256 newinitialBuyTax
uint256 newinitialSellTax
uint256 newReduBTax
uint256 newReduSTax
uint256 newPrevSwapBef
Recent Transactions
No transactions found for this address