Cryo Explorer Ethereum Mainnet

Address Contract Partially Verified

Address 0x10633216E7E8281e33c86F02Bf8e565a635D9770
Balance 0 ETH
Nonce 1
Code Size 14141 bytes
Indexed Transactions 0
External Etherscan · Sourcify

Contract Bytecode

14141 bytes
0x608060405234801561001057600080fd5b506004361061038e5760003560e01c806375d0281d116101de578063b35c72181161010f578063de272835116100ad578063f1f5cfa41161007c578063f1f5cfa414610f0d578063f2fde38b14610f2b578063fcdd04bf14610f6f578063fe3a5abe14610f8d5761038e565b8063de27283514610e61578063de85a4a914610eaf578063dfcfe4df14610ecd578063e718234d14610eeb5761038e565b8063cfa15bcd116100e9578063cfa15bcd14610d47578063cffb47cf14610d65578063dc39d06d14610d83578063dd62ed3e14610de95761038e565b8063b35c721814610ca3578063b40433cd14610cc1578063ba0e930a14610d035761038e565b806397b0e8761161017c578063a438145011610156578063a438145014610be3578063a711b66414610c01578063a9059cbb14610c1f578063b29418d514610c855761038e565b806397b0e87614610b2f57806398d9eea014610b4d578063a32ce11e14610b6b5761038e565b80638a4192b5116101b85780638a4192b514610a3a5780638da5cb5b14610a585780638ece19f614610aa257806395d89b4114610aac5761038e565b806375d0281d146109e45780637b47ec1a14610a025780638430085914610a305761038e565b80632d94e929116102c35780634b2596c7116102615780635c3eee8d116102305780635c3eee8d146108dc5780636298124b146109205780636f7fc9891461093e57806370a082311461098c5761038e565b80634b2596c7146108405780634bea6a0f1461085e5780634fb2cebe146108a057806358371ccd146108be5761038e565b8063380d831b1161029d578063380d831b1461079e5780633da83adb146107a857806343d726d6146107ec578063481c6a75146107f65761038e565b80632d94e9291461071e5780632f26927f14610762578063313ce567146107805761038e565b8063206bc0a01161033057806324054d571161030a57806324054d571461062457806327e235e31461066657806328b238ff146106be5780632ab4d052146107005761038e565b8063206bc0a01461056257806322b0aa471461058057806323b872dd1461059e5761038e565b8063145ca0881161036c578063145ca088146104c05780631596facb1461050457806318160ddd146105265780631ca8b6cb146105445761038e565b806306fdde0314610393578063095ea7b31461041657806309a74aff1461047c575b600080fd5b61039b610fab565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103db5780820151818401526020810190506103c0565b50505050905090810190601f1680156104085780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104626004803603604081101561042c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611049565b604051808215151515815260200191505060405180910390f35b6104be6004803603602081101561049257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061119f565b005b610502600480360360208110156104d657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506113d1565b005b61050c611603565b604051808215151515815260200191505060405180910390f35b61052e611616565b6040518082815260200191505060405180910390f35b61054c611620565b6040518082815260200191505060405180910390f35b61056a611626565b6040518082815260200191505060405180910390f35b61058861162c565b6040518082815260200191505060405180910390f35b61060a600480360360608110156105b457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611632565b604051808215151515815260200191505060405180910390f35b6106506004803603602081101561063a57600080fd5b81019080803590602001909291905050506119ca565b6040518082815260200191505060405180910390f35b6106a86004803603602081101561067c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506119e2565b6040518082815260200191505060405180910390f35b6106ea600480360360208110156106d457600080fd5b81019080803590602001909291905050506119fa565b6040518082815260200191505060405180910390f35b610708611a12565b6040518082815260200191505060405180910390f35b6107606004803603602081101561073457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611a24565b005b61076a611c56565b6040518082815260200191505060405180910390f35b610788611c5c565b6040518082815260200191505060405180910390f35b6107a6611c62565b005b6107ea600480360360208110156107be57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611e33565b005b6107f4612045565b005b6107fe6120b7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6108486120dd565b6040518082815260200191505060405180910390f35b61088a6004803603602081101561087457600080fd5b81019080803590602001909291905050506120ef565b6040518082815260200191505060405180910390f35b6108a8612107565b6040518082815260200191505060405180910390f35b6108c661210d565b6040518082815260200191505060405180910390f35b61091e600480360360208110156108f257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612113565b005b610928612345565b6040518082815260200191505060405180910390f35b61098a6004803603604081101561095457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061234a565b005b6109ce600480360360208110156109a257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612621565b6040518082815260200191505060405180910390f35b6109ec61266a565b6040518082815260200191505060405180910390f35b610a2e60048036036020811015610a1857600080fd5b810190808035906020019092919050505061267b565b005b610a3861284d565b005b610a42612904565b6040518082815260200191505060405180910390f35b610a6061290a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610aaa61292f565b005b610ab46129c6565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610af4578082015181840152602081019050610ad9565b50505050905090810190601f168015610b215780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610b37612a64565b6040518082815260200191505060405180910390f35b610b55612a6e565b6040518082815260200191505060405180910390f35b610bcd60048036036040811015610b8157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612a80565b6040518082815260200191505060405180910390f35b610beb612aa5565b6040518082815260200191505060405180910390f35b610c09612ab7565b6040518082815260200191505060405180910390f35b610c6b60048036036040811015610c3557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612ac9565b604051808215151515815260200191505060405180910390f35b610c8d612cc8565b6040518082815260200191505060405180910390f35b610cab612cda565b6040518082815260200191505060405180910390f35b610ced60048036036020811015610cd757600080fd5b8101908080359060200190929190505050612cdf565b6040518082815260200191505060405180910390f35b610d4560048036036020811015610d1957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612cf7565b005b610d4f612f05565b6040518082815260200191505060405180910390f35b610d6d612f0b565b6040518082815260200191505060405180910390f35b610dcf60048036036040811015610d9957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612f1d565b604051808215151515815260200191505060405180910390f35b610e4b60048036036040811015610dff57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613064565b6040518082815260200191505060405180910390f35b610ead60048036036040811015610e7757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506130eb565b005b610eb76133c2565b6040518082815260200191505060405180910390f35b610ed56133c8565b6040518082815260200191505060405180910390f35b610ef36133d9565b604051808215151515815260200191505060405180910390f35b610f156133ec565b6040518082815260200191505060405180910390f35b610f6d60048036036020811015610f4157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506133f6565b005b610f77613602565b6040518082815260200191505060405180910390f35b610f95613608565b6040518082815260200191505060405180910390f35b60028054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156110415780601f1061101657610100808354040283529160200191611041565b820191906000526020600020905b81548152906001019060200180831161102457829003601f168201915b505050505081565b60006001151561105761361a565b15151461106357600080fd5b81600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156110af57600080fd5b81600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146111f857600080fd5b60001515601460019054906101000a900460ff1615151461121857600080fd5b60006008541461122757600080fd5b6000670de0b6b3a7640000630a21fe8002905061128c81600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546136a690919063ffffffff16565b600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061132181600e60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546136bd90919063ffffffff16565b600e60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611379816008546136bd90919063ffffffff16565b6008819055508173ffffffffffffffffffffffffffffffffffffffff167ffb82a38b8698912e57310737cb4c62e69bf4fd9b4ef22fd4d13fd7608bb6ed16826040518082815260200191505060405180910390a25050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461142a57600080fd5b60001515601460019054906101000a900460ff1615151461144a57600080fd5b60006009541461145957600080fd5b6000670de0b6b3a76400006308f0d1800290506114be81600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546136a690919063ffffffff16565b600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061155381600e60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546136bd90919063ffffffff16565b600e60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506115ab816009546136bd90919063ffffffff16565b6009819055508173ffffffffffffffffffffffffffffffffffffffff167f0c17226450db6e575fa6cef1e6c9972cb00d826dbd529639acc6bca7b663b3a9826040518082815260200191505060405180910390a25050565b601460019054906101000a900460ff1681565b6000600554905090565b60055481565b60065481565b600d5481565b60006001151561164061361a565b15151461164c57600080fd5b81600e60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561169857600080fd5b81600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561172157600080fd5b6117b082600f60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546136a690919063ffffffff16565b600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061188282600e60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546136a690919063ffffffff16565b600e60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061191782600e60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546136bd90919063ffffffff16565b600e60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b60126020528060005260406000206000915090505481565b600e6020528060005260406000206000915090505481565b60106020528060005260406000206000915090505481565b670de0b6b3a7640000633b9aca000281565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611a7d57600080fd5b60001515601460019054906101000a900460ff16151514611a9d57600080fd5b6000600a5414611aac57600080fd5b6000670de0b6b3a76400006305f5e100029050611b1181600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546136a690919063ffffffff16565b600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ba681600e60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546136bd90919063ffffffff16565b600e60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611bfe81600a546136bd90919063ffffffff16565b600a819055508173ffffffffffffffffffffffffffffffffffffffff167faca354954677423ee264fe27e97d8a8ab13d9bc9b0820383bacaa6e462a19285826040518082815260200191505060405180910390a25050565b60085481565b60035481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611cbb57600080fd5b60011515601460019054906101000a900460ff16151514611cdb57600080fd5b600654670de0b6b3a7640000630bebc2000214611cf757600080fd5b6000601460016101000a81548160ff02191690831515021790555060004290508060158190555060008090505b600a811015611d885762278d00810262278d00600c0260155401016010600083815260200190815260200160002081905550670de0b6b3a7640000629896800260116000838152602001908152602001600020819055508080600101915050611d24565b5060008090505b6004811015611df65762278d00816003020262278d0060030260155401016012600083815260200190815260200160002081905550670de0b6b3a7640000627270e00260136000838152602001908152602001600020819055508080600101915050611d8f565b507f94173af9e1cd5351395663e6a7838552ea54f5233d0c38bc46de5f4915b302bf6015546040518082815260200191505060405180910390a150565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611e8c57600080fd5b600060065414611e9b57600080fd5b6000670de0b6b3a7640000630bebc200029050611f0081600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546136a690919063ffffffff16565b600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611f9581600e60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546136bd90919063ffffffff16565b600e60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611fed816006546136bd90919063ffffffff16565b6006819055508173ffffffffffffffffffffffffffffffffffffffff167f07c5eb0c2da0dd34a57523f87ea471b21890f00a504311f9959b3fd2d8120864826040518082815260200191505060405180910390a25050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461209e57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff16ff5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b670de0b6b3a76400006305f5e1000281565b60136020528060005260406000206000915090505481565b600a5481565b60155481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461216c57600080fd5b60001515601460019054906101000a900460ff1615151461218c57600080fd5b60006007541461219b57600080fd5b6000670de0b6b3a7640000630ee6b28002905061220081600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546136a690919063ffffffff16565b600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061229581600e60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546136bd90919063ffffffff16565b600e60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506122ed816007546136bd90919063ffffffff16565b6007819055508173ffffffffffffffffffffffffffffffffffffffff167f423b24fc1468543b83ba5fa3c1d3b8a9c95265103a9ef54b0eecdc33eac6c386826040518082815260200191505060405180910390a25050565b600481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146123a357600080fd5b60001515601460019054906101000a900460ff161515146123c357600080fd5b600a81106123d057600080fd5b6000429050601060008381526020019081526020016000205481116123f457600080fd5b6000670de0b6b3a7640000629896800290506011600084815260200190815260200160002054811461242557600080fd5b61243a81600b546136bd90919063ffffffff16565b670de0b6b3a76400006305f5e10002101561245457600080fd5b6124a681600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546136a690919063ffffffff16565b600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061253b81600e60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546136bd90919063ffffffff16565b600e60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600060116000858152602001908152602001600020819055506125ac816005546136bd90919063ffffffff16565b6005819055506125c781600b546136bd90919063ffffffff16565b600b819055508373ffffffffffffffffffffffffffffffffffffffff167fb07ce9bd9a0d0e9adec838711c53cbe1430a690e9c520e9232dc9478dbd85f31826040518082815260200191505060405180910390a250505050565b6000600e60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b670de0b6b3a7640000629896800281565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146126d557600080fd5b6000670de0b6b3a76400008202905080600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561273057600080fd5b61278281600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546136a690919063ffffffff16565b600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506127da81600d546136bd90919063ffffffff16565b600d819055506127f5816005546136a690919063ffffffff16565b6005819055503373ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5826040518082815260200191505060405180910390a25050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146128a757600080fd5b60011515601460009054906101000a900460ff161515146128c757600080fd5b60001515601460019054906101000a900460ff161515146128e757600080fd5b6000601460006101000a81548160ff021916908315150217905550565b60075481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461298957600080fd5b60001515601460009054906101000a900460ff161515146129a957600080fd5b6001601460006101000a81548160ff021916908315150217905550565b60048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015612a5c5780601f10612a3157610100808354040283529160200191612a5c565b820191906000526020600020905b815481529060010190602001808311612a3f57829003601f168201915b505050505081565b62278d0060030281565b670de0b6b3a7640000630ee6b2800281565b600f602052816000526040600020602052806000526040600020600091509150505481565b670de0b6b3a76400006308f0d1800281565b670de0b6b3a76400006301c9c3800281565b600060011515612ad761361a565b151514612ae357600080fd5b81600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015612b2f57600080fd5b612b8182600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546136a690919063ffffffff16565b600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612c1682600e60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546136bd90919063ffffffff16565b600e60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b670de0b6b3a7640000630bebc2000281565b600a81565b60116020528060005260406000206000915090505481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612d5057600080fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415612daa57600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415612e0557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415612e3f57600080fd5b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f034ab062c9c6c8ddd60650a40372b1d413588174682d4ca1a4e53aa37589ab2d60405160405180910390a35050565b600b5481565b670de0b6b3a76400006305f5e1000281565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612f7857600080fd5b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561302157600080fd5b505af1158015613035573d6000803e3d6000fd5b505050506040513d602081101561304b57600080fd5b8101908080519060200190929190505050905092915050565b6000600f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461314457600080fd5b60001515601460019054906101000a900460ff1615151461316457600080fd5b6004811061317157600080fd5b60004290506012600083815260200190815260200160002054811161319557600080fd5b6000670de0b6b3a7640000627270e0029050601360008481526020019081526020016000205481146131c657600080fd5b6131db81600c546136bd90919063ffffffff16565b670de0b6b3a76400006301c9c3800210156131f557600080fd5b61324781600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546136a690919063ffffffff16565b600e60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506132dc81600e60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546136bd90919063ffffffff16565b600e60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000601360008581526020019081526020016000208190555061334d816005546136bd90919063ffffffff16565b60058190555061336881600c546136bd90919063ffffffff16565b600c819055508373ffffffffffffffffffffffffffffffffffffffff167f56a6fddb955645d0f5363bcc838146414092bb86a5afedd1400dcf33cba5bad9826040518082815260200191505060405180910390a250505050565b60095481565b670de0b6b3a7640000627270e00281565b601460009054906101000a900460ff1681565b62278d00600c0281565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461344f57600080fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156134a957600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561350457600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561353e57600080fd5b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f9aecf86140d81442289f667eb72e1202a8fbb3478a686659952e145e8531965660405160405180910390a35050565b600c5481565b670de0b6b3a7640000630a21fe800281565b6000801515601460009054906101000a900460ff161515141561364057600190506136a3565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141561369e57600190506136a3565b600090505b90565b6000828211156136b257fe5b818303905092915050565b6000808284019050838110156136cf57fe5b8091505092915050565b600080828402905060008414806136f85750828482816136f557fe5b04145b6136fe57fe5b809150509291505056fea265627a7a723058201bf84aa0d30a0bc0b6c943f7b7ee264cccec69172cc54da2d683ec6011c829a264736f6c63430005090032

Verified Source Code Partial Match

Compiler: v0.5.9+commit.e560f70d EVM: petersburg Optimization: No
Dvision.sol 457 lines
pragma solidity ^0.5.9;

library SafeMath
{

  function mul(uint256 a, uint256 b) internal pure returns (uint256)
    	{
		uint256 c = a * b;
		assert(a == 0 || c / a == b);

		return c;
  	}

  	function div(uint256 a, uint256 b) internal pure returns (uint256)
	{
		uint256 c = a / b;

		return c;
  	}

  	function sub(uint256 a, uint256 b) internal pure returns (uint256)
	{
		assert(b <= a);

		return a - b;
  	}

  	function add(uint256 a, uint256 b) internal pure returns (uint256)
	{
		uint256 c = a + b;
		assert(c >= a);

		return c;
  	}
}

contract OwnerHelper
{
  	address public owner;
    address public manager;

  	event ChangeOwner(address indexed _from, address indexed _to);
    event ChangeManager(address indexed _from, address indexed _to);

  	modifier onlyOwner
	{
		require(msg.sender == owner);
		_;
  	}
  	
    modifier onlyManager
    {
        require(msg.sender == manager);
        _;
    }

  	constructor() public
	{
		owner = msg.sender;
  	}
  	
  	function transferOwnership(address _to) onlyOwner public
  	{
    	require(_to != owner);
        require(_to != manager);
    	require(_to != address(0x0));

        address from = owner;
      	owner = _to;
  	    
      	emit ChangeOwner(from, _to);
  	}

    function transferManager(address _to) onlyOwner public
    {
        require(_to != owner);
        require(_to != manager);
        require(_to != address(0x0));
        
        address from = manager;
        manager = _to;
        
        emit ChangeManager(from, _to);
    }
}

contract ERC20Interface
{
    event Transfer( address indexed _from, address indexed _to, uint _value);
    event Approval( address indexed _owner, address indexed _spender, uint _value);
    
    function totalSupply() view public returns (uint _supply);
    function balanceOf( address _who ) public view returns (uint _value);
    function transfer( address _to, uint _value) public returns (bool _success);
    function approve( address _spender, uint _value ) public returns (bool _success);
    function allowance( address _owner, address _spender ) public view returns (uint _allowance);
    function transferFrom( address _from, address _to, uint _value) public returns (bool _success);
}

contract Dvision is ERC20Interface, OwnerHelper
{
    using SafeMath for uint;
    
    string public name;
    uint public decimals;
    string public symbol;
    
    uint constant private E18 = 1000000000000000000;
    uint constant private month = 2592000;
    
    // Total                                  1,000,000,000
    uint constant public maxTotalSupply     = 1000000000 * E18;
    // Sale                                   200,000,000 (20%)
    uint constant public maxSaleSupply      = 200000000 * E18;
    // Development                            250,000,000 (25%)
    uint constant public maxDevSupply       = 250000000 * E18;
    // EcoSystem                              170,000,000 (17%)
    uint constant public maxEcoSupply       = 170000000 * E18;
    // Marketing                              150,000,000 (15%)
    uint constant public maxMktSupply       = 150000000 * E18;
    // Reserve                                100,000,000 (10%)
    uint constant public maxReserveSupply   = 100000000 * E18;
    // Team                                   100,000,000 (10%)
    uint constant public maxTeamSupply      = 100000000 * E18;
    // Advisors                               30,000,000 (3%)
    uint constant public maxAdvisorSupply   = 30000000 * E18;
    
    // Lock
    uint constant public teamVestingSupply = 10000000 * E18;
    uint constant public teamVestingLockDate =  12 * month;
    uint constant public teamVestingTime = 10;

    uint constant public advisorVestingSupply = 7500000 * E18;
    uint constant public advisorVestingLockDate = 3 * month;
    uint constant public advisorVestingTime = 4;
    
    uint public totalTokenSupply;
    uint public tokenIssuedSale;
    uint public tokenIssuedDev;
    uint public tokenIssuedEco;
    uint public tokenIssuedMkt;       
    uint public tokenIssuedRsv;
    uint public tokenIssuedTeam;
    uint public tokenIssuedAdv;
        
    uint public burnTokenSupply;
    
    mapping (address => uint) public balances;
    mapping (address => mapping ( address => uint )) public approvals;
    
    mapping (uint => uint) public tmVestingTimer;
    mapping (uint => uint) public tmVestingBalances;
    mapping (uint => uint) public advVestingTimer;
    mapping (uint => uint) public advVestingBalances;
    
    bool public tokenLock = true;
    bool public saleTime = true;
    uint public endSaleTime = 0;

    event SaleIssue(address indexed _to, uint _tokens);
    event DevIssue(address indexed _to, uint _tokens);
    event EcoIssue(address indexed _to, uint _tokens);
    event MktIssue(address indexed _to, uint _tokens);  
    event RsvIssue(address indexed _to, uint _tokens);
    event TeamIssue(address indexed _to, uint _tokens);
    event AdvIssue(address indexed _to, uint _tokens);

    event Burn(address indexed _from, uint _tokens);
    
    event TokenUnlock(address indexed _to, uint _tokens);
    event EndSale(uint _date);
    
    constructor() public
    {
        name        = "Dvision";
        decimals    = 18;
        symbol      = "DVI";
        
        totalTokenSupply = 1000000000 * E18;
        balances[owner] = totalTokenSupply;

        tokenIssuedSale     = 0;
        tokenIssuedDev      = 0;
        tokenIssuedEco      = 0;
        tokenIssuedMkt      = 0;
        tokenIssuedRsv      = 0;
        tokenIssuedTeam     = 0;
        tokenIssuedAdv      = 0;     

        burnTokenSupply     = 0;
        
        require(maxTeamSupply == teamVestingSupply.mul(teamVestingTime));
        require(maxAdvisorSupply == advisorVestingSupply.mul(advisorVestingTime));
        
        require(maxTotalSupply == maxSaleSupply + maxDevSupply + maxEcoSupply + maxMktSupply + maxReserveSupply + maxTeamSupply + maxAdvisorSupply);
    }

    function totalSupply() view public returns (uint) 
    {
        return totalTokenSupply;
    }
    
    function balanceOf(address _who) view public returns (uint) 
    {
        return balances[_who];
    }
    
    function transfer(address _to, uint _value) public returns (bool) 
    {
        require(isTransferable() == true);
        require(balances[msg.sender] >= _value);
        
        balances[msg.sender] = balances[msg.sender].sub(_value);
        balances[_to] = balances[_to].add(_value);
        
        emit Transfer(msg.sender, _to, _value);
        
        return true;
    }
    
    function approve(address _spender, uint _value) public returns (bool)
    {
        require(isTransferable() == true);
        require(balances[msg.sender] >= _value);
        
        approvals[msg.sender][_spender] = _value;
        
        emit Approval(msg.sender, _spender, _value);
        
        return true; 
    }
    
    function allowance(address _owner, address _spender) view public returns (uint) 
    {
        return approvals[_owner][_spender];
    }

    function transferFrom(address _from, address _to, uint _value) public returns (bool) 
    {
        require(isTransferable() == true);
        require(balances[_from] >= _value);
        require(approvals[_from][msg.sender] >= _value);
        
        approvals[_from][msg.sender] = approvals[_from][msg.sender].sub(_value);
        balances[_from] = balances[_from].sub(_value);
        balances[_to]  = balances[_to].add(_value);
        
        emit Transfer(_from, _to, _value);
        
        return true;
    }
    
    function saleIssue(address _to) onlyOwner public
    {   
        require(tokenIssuedSale == 0);    
        uint tokens = maxSaleSupply;
        
        balances[msg.sender] = balances[msg.sender].sub(tokens);

        balances[_to] = balances[_to].add(tokens);
        
        tokenIssuedSale = tokenIssuedSale.add(tokens);
        
        emit SaleIssue(_to, tokens);
    }

    function devIssue(address _to) onlyOwner public
    {
        require(saleTime == false);
        require(tokenIssuedDev == 0);
        
        uint tokens = maxDevSupply;
        
        balances[msg.sender] = balances[msg.sender].sub(tokens);

        balances[_to] = balances[_to].add(tokens);
        
        tokenIssuedDev = tokenIssuedDev.add(tokens);
        
        emit DevIssue(_to, tokens);
    }

    function ecoIssue(address _to) onlyOwner public
    {
        require(saleTime == false);
        require(tokenIssuedEco == 0);
        
        uint tokens = maxEcoSupply;
        
        balances[msg.sender] = balances[msg.sender].sub(tokens);

        balances[_to] = balances[_to].add(tokens);
        
        tokenIssuedEco = tokenIssuedEco.add(tokens);
        
        emit EcoIssue(_to, tokens);
    }

    function mktIssue(address _to) onlyOwner public
    {
        require(saleTime == false);
        require(tokenIssuedMkt == 0);
        
        uint tokens = maxMktSupply;
        
        balances[msg.sender] = balances[msg.sender].sub(tokens);

        balances[_to] = balances[_to].add(tokens);
        
        tokenIssuedMkt = tokenIssuedMkt.add(tokens);
        
        emit MktIssue(_to, tokens);
    }

    function rsvIssue(address _to) onlyOwner public
    {
        require(saleTime == false);
        require(tokenIssuedRsv == 0);
        
        uint tokens = maxReserveSupply;
        
        balances[msg.sender] = balances[msg.sender].sub(tokens);

        balances[_to] = balances[_to].add(tokens);
        
        tokenIssuedRsv = tokenIssuedRsv.add(tokens);
        
        emit RsvIssue(_to, tokens);
    }

    function teamIssue(address _to, uint _time) onlyOwner public
    {
        require(saleTime == false);
        require( _time < teamVestingTime);
        
        uint nowTime = now;
        require( nowTime > tmVestingTimer[_time] );
        
        uint tokens = teamVestingSupply;

        require(tokens == tmVestingBalances[_time]);
        require(maxTeamSupply >= tokenIssuedTeam.add(tokens));
        
        balances[msg.sender] = balances[msg.sender].sub(tokens);
        
        balances[_to] = balances[_to].add(tokens);
        tmVestingBalances[_time] = 0;
        
        totalTokenSupply = totalTokenSupply.add(tokens);
        tokenIssuedTeam = tokenIssuedTeam.add(tokens);
        
        emit TeamIssue(_to, tokens);
    }

    function advisorIssue(address _to, uint _time) onlyOwner public
    {
        require(saleTime == false);
        require( _time < advisorVestingTime);
        
        uint nowTime = now;
        require( nowTime > advVestingTimer[_time] );
        
        uint tokens = advisorVestingSupply;

        require(tokens == advVestingBalances[_time]);
        require(maxAdvisorSupply >= tokenIssuedAdv.add(tokens));
        
        balances[msg.sender] = balances[msg.sender].sub(tokens);
        
        balances[_to] = balances[_to].add(tokens);
        advVestingBalances[_time] = 0;
        
        totalTokenSupply = totalTokenSupply.add(tokens);
        tokenIssuedAdv = tokenIssuedAdv.add(tokens);
        
        emit AdvIssue(_to, tokens);
    }   
    
    function isTransferable() private view returns (bool)
    {
        if(tokenLock == false)
        {
            return true;
        }
        else if(msg.sender == owner)
        {
            return true;
        }
        
        return false;
    }
    
    function setTokenUnlock() onlyManager public
    {
        require(tokenLock == true);
        require(saleTime == false);
        
        tokenLock = false;
    }
    
    function setTokenLock() onlyManager public
    {
        require(tokenLock == false);
        
        tokenLock = true;
    }
    
    function endSale() onlyOwner public
    {
        require(saleTime == true);
        require(maxSaleSupply == tokenIssuedSale);
        
        saleTime = false;
        
        uint nowTime = now;
        endSaleTime = nowTime;
        
        for(uint i = 0; i < teamVestingTime; i++)
        {
            tmVestingTimer[i] = endSaleTime + teamVestingLockDate + (i * month);
            tmVestingBalances[i] = teamVestingSupply;
        }
        
        for(uint i = 0; i < advisorVestingTime; i++)
        {
            advVestingTimer[i] = endSaleTime + advisorVestingLockDate + (3 * i * month);
            advVestingBalances[i] = advisorVestingSupply;
        }
        
        emit EndSale(endSaleTime);
    }
    
    function transferAnyERC20Token(address tokenAddress, uint tokens) onlyOwner public returns (bool success)
    {
        return ERC20Interface(tokenAddress).transfer(manager, tokens);
    }
    
    function burnToken(uint _value) onlyManager public
    {
        uint tokens = _value * E18;
        
        require(balances[msg.sender] >= tokens);
        
        balances[msg.sender] = balances[msg.sender].sub(tokens);
        
        burnTokenSupply = burnTokenSupply.add(tokens);
        totalTokenSupply = totalTokenSupply.sub(tokens);
        
        emit Burn(msg.sender, tokens);
    }
    
    function close() onlyOwner public
    {
        selfdestruct(msg.sender);
    }
    
}

Read Contract

advVestingBalances 0x4bea6a0f → uint256
advVestingTimer 0x24054d57 → uint256
advisorVestingLockDate 0x97b0e876 → uint256
advisorVestingSupply 0xdfcfe4df → uint256
advisorVestingTime 0x6298124b → uint256
allowance 0xdd62ed3e → uint256
approvals 0xa32ce11e → uint256
balanceOf 0x70a08231 → uint256
balances 0x27e235e3 → uint256
burnTokenSupply 0x22b0aa47 → uint256
decimals 0x313ce567 → uint256
endSaleTime 0x58371ccd → uint256
manager 0x481c6a75 → address
maxAdvisorSupply 0xa711b664 → uint256
maxDevSupply 0x98d9eea0 → uint256
maxEcoSupply 0xfe3a5abe → uint256
maxMktSupply 0xa4381450 → uint256
maxReserveSupply 0xcffb47cf → uint256
maxSaleSupply 0xb29418d5 → uint256
maxTeamSupply 0x4b2596c7 → uint256
maxTotalSupply 0x2ab4d052 → uint256
name 0x06fdde03 → string
owner 0x8da5cb5b → address
saleTime 0x1596facb → bool
symbol 0x95d89b41 → string
teamVestingLockDate 0xf1f5cfa4 → uint256
teamVestingSupply 0x75d0281d → uint256
teamVestingTime 0xb35c7218 → uint256
tmVestingBalances 0xb40433cd → uint256
tmVestingTimer 0x28b238ff → uint256
tokenIssuedAdv 0xfcdd04bf → uint256
tokenIssuedDev 0x8a4192b5 → uint256
tokenIssuedEco 0x2f26927f → uint256
tokenIssuedMkt 0xde85a4a9 → uint256
tokenIssuedRsv 0x4fb2cebe → uint256
tokenIssuedSale 0x206bc0a0 → uint256
tokenIssuedTeam 0xcfa15bcd → uint256
tokenLock 0xe718234d → bool
totalSupply 0x18160ddd → uint256
totalTokenSupply 0x1ca8b6cb → uint256

Write Contract 18 functions

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

advisorIssue 0xde272835
address _to
uint256 _time
approve 0x095ea7b3
address _spender
uint256 _value
returns: bool
burnToken 0x7b47ec1a
uint256 _value
close 0x43d726d6
No parameters
devIssue 0x5c3eee8d
address _to
ecoIssue 0x09a74aff
address _to
endSale 0x380d831b
No parameters
mktIssue 0x145ca088
address _to
rsvIssue 0x2d94e929
address _to
saleIssue 0x3da83adb
address _to
setTokenLock 0x8ece19f6
No parameters
setTokenUnlock 0x84300859
No parameters
teamIssue 0x6f7fc989
address _to
uint256 _time
transfer 0xa9059cbb
address _to
uint256 _value
returns: bool
transferAnyERC20Token 0xdc39d06d
address tokenAddress
uint256 tokens
returns: bool
transferFrom 0x23b872dd
address _from
address _to
uint256 _value
returns: bool
transferManager 0xba0e930a
address _to
transferOwnership 0xf2fde38b
address _to

Recent Transactions

No transactions found for this address