Cryo Explorer Ethereum Mainnet

Address Contract Partially Verified

Address 0xC40629464351c37c1e1f47b3640eA2e7AeC31eA5
Balance 0.027377 ETH
Nonce 1
Code Size 15949 bytes
Indexed Transactions 0
External Etherscan · Sourcify

Contract Bytecode

15949 bytes
0x6080604052600436106101d15760003560e01c80638da5cb5b116100f7578063c3c8cd8011610095578063debae15e11610064578063debae15e14610683578063f0f44260146106ac578063f4293890146106d5578063ffbc91d9146106ec576101d8565b8063c3c8cd80146105ed578063c9567bf914610604578063cc1776d31461061b578063dd62ed3e14610646576101d8565b8063aa53099d116100d1578063aa53099d14610535578063b4fa3b981461055e578063b9a45aac14610587578063c17bae2a146105b0576101d8565b80638da5cb5b146104a257806395d89b41146104cd578063a9059cbb146104f8576101d8565b80632847c6de1161016f5780634f7041a51161013e5780634f7041a5146103fa57806370a0823114610425578063715018a6146104625780638cd4426d14610479576101d8565b80632847c6de1461032a578063313ce567146103675780633af32abf146103925780634626402b146103cf576101d8565b80630ce5fd36116101ab5780630ce5fd361461027057806318160ddd1461029957806323b872dd146102c457806324c16b7f14610301576101d8565b80630445b667146101dd57806306fdde0314610208578063095ea7b314610233576101d8565b366101d857005b600080fd5b3480156101e957600080fd5b506101f2610715565b6040516101ff919061363a565b60405180910390f35b34801561021457600080fd5b5061021d61071b565b60405161022a9190613458565b60405180910390f35b34801561023f57600080fd5b5061025a60048036038101906102559190612ded565b610758565b6040516102679190613422565b60405180910390f35b34801561027c57600080fd5b5061029760048036038101906102929190612ec7565b610776565b005b3480156102a557600080fd5b506102ae6108a6565b6040516102bb919061363a565b60405180910390f35b3480156102d057600080fd5b506102eb60048036038101906102e69190612d5a565b6108b9565b6040516102f89190613422565b60405180910390f35b34801561030d57600080fd5b5061032860048036038101906103239190612ec7565b610992565b005b34801561033657600080fd5b50610351600480360381019061034c9190612c93565b610aab565b60405161035e9190613422565b60405180910390f35b34801561037357600080fd5b5061037c610acb565b60405161038991906136af565b60405180910390f35b34801561039e57600080fd5b506103b960048036038101906103b49190612c93565b610ad4565b6040516103c69190613422565b60405180910390f35b3480156103db57600080fd5b506103e4610b2a565b6040516103f19190613302565b60405180910390f35b34801561040657600080fd5b5061040f610b50565b60405161041c919061363a565b60405180910390f35b34801561043157600080fd5b5061044c60048036038101906104479190612c93565b610b56565b604051610459919061363a565b60405180910390f35b34801561046e57600080fd5b50610477610b9f565b005b34801561048557600080fd5b506104a0600480360381019061049b9190612e5a565b610def565b005b3480156104ae57600080fd5b506104b7611078565b6040516104c491906132cc565b60405180910390f35b3480156104d957600080fd5b506104e26110a1565b6040516104ef9190613458565b60405180910390f35b34801561050457600080fd5b5061051f600480360381019061051a9190612ded565b6110de565b60405161052c9190613422565b60405180910390f35b34801561054157600080fd5b5061055c60048036038101906105579190612e9a565b6110fc565b005b34801561056a57600080fd5b5061058560048036038101906105809190612e9a565b61128f565b005b34801561059357600080fd5b506105ae60048036038101906105a99190612dad565b61139b565b005b3480156105bc57600080fd5b506105d760048036038101906105d29190612e9a565b61151c565b6040516105e4919061363a565b60405180910390f35b3480156105f957600080fd5b50610602611534565b005b34801561061057600080fd5b506106196115e2565b005b34801561062757600080fd5b50610630611af6565b60405161063d919061363a565b60405180910390f35b34801561065257600080fd5b5061066d60048036038101906106689190612d1a565b611afc565b60405161067a919061363a565b60405180910390f35b34801561068f57600080fd5b506106aa60048036038101906106a59190612ec7565b611b83565b005b3480156106b857600080fd5b506106d360048036038101906106ce9190612ced565b611c9c565b005b3480156106e157600080fd5b506106ea611f1a565b005b3480156106f857600080fd5b50610713600480360381019061070e9190612c93565b611fc0565b005b60055481565b60606040518060400160405280600581526020017f486f6d6533000000000000000000000000000000000000000000000000000000815250905090565b600061076c6107656120e7565b84846120ef565b6001905092915050565b61077e6120e7565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461080b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108029061359a565b60405180910390fd5b6107d06a52b7d2dcc80cd2e40000006108249190613780565b8110610865576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161085c906134ba565b60405180910390fd5b806005819055507f719fecb6d1508b1794850e37e3d36d1bff5c5813e0aa61cb4307581ec3be5c168160405161089b919061363a565b60405180910390a150565b60006a52b7d2dcc80cd2e4000000905090565b60006108c68484846122ba565b610987846108d26120e7565b61098285604051806060016040528060288152602001613df060289139600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006109386120e7565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461251a9092919063ffffffff16565b6120ef565b600190509392505050565b61099a6120e7565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a27576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a1e9061359a565b60405180910390fd5b60068110610a6a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a61906134fa565b60405180910390fd5b806006819055507f7dcc5c536517abaa6eb281914d04431307a734c37f1f9d4a0b6ea5776a455a2d81604051610aa0919061363a565b60405180910390a150565b600a6020528060005260406000206000915054906101000a900460ff1681565b60006012905090565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60065481565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610ba76120e7565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c34576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c2b9061359a565b60405180910390fd5b60008060016000836001811115610c4e57610c4d6139b6565b5b6001811115610c6057610c5f6139b6565b5b81526020019081526020016000205414158015610cb457504260016000836001811115610c9057610c8f6139b6565b5b6001811115610ca257610ca16139b6565b5b81526020019081526020016000205411155b610cf3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cea9061347a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600060016000806001811115610dc857610dc76139b6565b5b6001811115610dda57610dd96139b6565b5b81526020019081526020016000208190555050565b610df76120e7565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e84576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e7b9061359a565b60405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610ef3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eea9061351a565b60405180910390fd5b60008273ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401610f2e91906132cc565b60206040518083038186803b158015610f4657600080fd5b505afa158015610f5a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f7e9190612ef4565b905080821115610fc3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fba9061353a565b60405180910390fd5b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846040518363ffffffff1660e01b815260040161102092919061331d565b602060405180830381600087803b15801561103a57600080fd5b505af115801561104e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110729190612e2d565b50505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600381526020017f4854530000000000000000000000000000000000000000000000000000000000815250905090565b60006110f26110eb6120e7565b84846122ba565b6001905092915050565b6111046120e7565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611191576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111889061359a565b60405180910390fd5b6000600160008360018111156111aa576111a96139b6565b5b60018111156111bc576111bb6139b6565b5b8152602001908152602001600020541461120b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112029061357a565b60405180910390fd5b6202a3004261121a919061372a565b60016000836001811115611231576112306139b6565b5b6001811115611243576112426139b6565b5b8152602001908152602001600020819055507f8f9e0e50b1fcb443e4e2e5fddaced912481ce04e66b72315e55950f164ee73a181604051611284919061343d565b60405180910390a150565b6112976120e7565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611324576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161131b9061359a565b60405180910390fd5b60006001600083600181111561133d5761133c6139b6565b5b600181111561134f5761134e6139b6565b5b8152602001908152602001600020819055507fc04bae612b8920f5428d9f436d971f11d86043e8597934d941f1992e4ae8359281604051611390919061343d565b60405180910390a150565b6113a36120e7565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611430576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114279061359a565b60405180910390fd5b801515600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515146114df5780600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b7fb17e5ef82d64736b74ace0e0fc1e75469c90bb65bc25a92302e3fb37b803732f828260405161151092919061336f565b60405180910390a15050565b60016020528060005260406000206000915090505481565b61153c6120e7565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146115c9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115c09061359a565b60405180910390fd5b60006115d430610b56565b90506115df8161257e565b50565b6115ea6120e7565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611677576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161166e9061359a565b60405180910390fd5b600b60019054906101000a900460ff16156116c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116be9061361a565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d905080600b60026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061175930600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff166a52b7d2dcc80cd2e40000006120ef565b60008173ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156117a157600080fd5b505afa1580156117b5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117d99190612cc0565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308473ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561183b57600080fd5b505afa15801561184f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118739190612cc0565b6040518363ffffffff1660e01b8152600401611890929190613346565b602060405180830381600087803b1580156118aa57600080fd5b505af11580156118be573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118e29190612cc0565b90506001600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d719473061198530610b56565b600080611990611078565b426040518863ffffffff1660e01b81526004016119b2969594939291906133c1565b6060604051808303818588803b1580156119cb57600080fd5b505af11580156119df573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611a049190612f21565b5050506001600b60016101000a81548160ff0219169083151502179055508073ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401611a9f929190613398565b602060405180830381600087803b158015611ab957600080fd5b505af1158015611acd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611af19190612e2d565b505050565b60075481565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b611b8b6120e7565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611c18576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c0f9061359a565b60405180910390fd5b60068110611c5b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c52906134fa565b60405180910390fd5b806007819055507f10caeb50fe0e719f0abd8c74740443c36472c79bf0f0553e9476a3c131e2b35b81604051611c91919061363a565b60405180910390a150565b611ca46120e7565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611d31576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d289061359a565b60405180910390fd5b6001600060016000836001811115611d4c57611d4b6139b6565b5b6001811115611d5e57611d5d6139b6565b5b81526020019081526020016000205414158015611db257504260016000836001811115611d8e57611d8d6139b6565b5b6001811115611da057611d9f6139b6565b5b81526020019081526020016000205411155b611df1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611de89061347a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611e61576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e589061355a565b60405180910390fd5b81600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600060016000600180811115611ebb57611eba6139b6565b5b6001811115611ecd57611ecc6139b6565b5b8152602001908152602001600020819055507f9e82373a1d58605b2f0ce4e93c6733ec6a2d95f6f4df4df99f5e2c81b87ed7bb82604051611f0e91906132e7565b60405180910390a15050565b611f226120e7565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611faf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fa69061359a565b60405180910390fd5b6000479050611fbd81612806565b50565b611fc86120e7565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612055576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161204c9061359a565b60405180910390fd5b6001600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507f71e10a3e1769f85be49ae6b0448678d58180da4f4da72651799752cb4eb001e0816040516120dc91906132cc565b60405180910390a150565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561215f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612156906135fa565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156121cf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121c69061349a565b60405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516122ad919061363a565b60405180910390a3505050565b600081116122fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122f4906135ba565b60405180910390fd5b8061230784610b56565b1015612348576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161233f906135da565b60405180910390fd5b60006008819055506000479050670de0b6b3a764000081111561236f5761236e47612806565b5b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806124105750600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b61250957600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561247457600654600881905550612508565b600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156125075760075460088190555060006124da30610b56565b9050600b60009054906101000a900460ff1661250557600554811115612504576125038161257e565b5b5b505b5b5b6125148484846128d5565b50505050565b6000838311158290612562576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125599190613458565b60405180910390fd5b5060008385612571919061380b565b9050809150509392505050565b6001600b60006101000a81548160ff0219169083151502179055506000600267ffffffffffffffff8111156125b6576125b5613a14565b5b6040519080825280602002602001820160405280156125e45781602001602082028036833780820191505090505b50905030816000815181106125fc576125fb6139e5565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561269e57600080fd5b505afa1580156126b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126d69190612cc0565b816001815181106126ea576126e96139e5565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061275130600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846120ef565b600b60029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016127b5959493929190613655565b600060405180830381600087803b1580156127cf57600080fd5b505af11580156127e3573d6000803e3d6000fd5b50505050506000600b60006101000a81548160ff02191690831515021790555050565b6000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168260405161284e906132b7565b60006040518083038185875af1925050503d806000811461288b576040519150601f19603f3d011682016040523d82523d6000602084013e612890565b606091505b50509050806128d1577f8ffef27f8fd4d074bf719ed4b9ae6fe47c053149c11575a605b981400b80d4a6826040516128c8919061363a565b60405180910390a15b5050565b60006064600854836128e791906137b1565b6128f19190613780565b905060008183612901919061380b565b905061295583600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612b2e90919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506129ea81600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612b7890919063ffffffff16565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612a7f82600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612b7890919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051612b1f919061363a565b60405180910390a35050505050565b6000612b7083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061251a565b905092915050565b6000808284612b87919061372a565b905083811015612bcc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612bc3906134da565b60405180910390fd5b8091505092915050565b600081359050612be581613d6c565b92915050565b600081519050612bfa81613d6c565b92915050565b600081359050612c0f81613d83565b92915050565b600081359050612c2481613d9a565b92915050565b600081519050612c3981613d9a565b92915050565b600081359050612c4e81613db1565b92915050565b600081359050612c6381613dc8565b92915050565b600081359050612c7881613dd8565b92915050565b600081519050612c8d81613dd8565b92915050565b600060208284031215612ca957612ca8613a43565b5b6000612cb784828501612bd6565b91505092915050565b600060208284031215612cd657612cd5613a43565b5b6000612ce484828501612beb565b91505092915050565b600060208284031215612d0357612d02613a43565b5b6000612d1184828501612c00565b91505092915050565b60008060408385031215612d3157612d30613a43565b5b6000612d3f85828601612bd6565b9250506020612d5085828601612bd6565b9150509250929050565b600080600060608486031215612d7357612d72613a43565b5b6000612d8186828701612bd6565b9350506020612d9286828701612bd6565b9250506040612da386828701612c69565b9150509250925092565b60008060408385031215612dc457612dc3613a43565b5b6000612dd285828601612bd6565b9250506020612de385828601612c15565b9150509250929050565b60008060408385031215612e0457612e03613a43565b5b6000612e1285828601612bd6565b9250506020612e2385828601612c69565b9150509250929050565b600060208284031215612e4357612e42613a43565b5b6000612e5184828501612c2a565b91505092915050565b60008060408385031215612e7157612e70613a43565b5b6000612e7f85828601612c3f565b9250506020612e9085828601612c69565b9150509250929050565b600060208284031215612eb057612eaf613a43565b5b6000612ebe84828501612c54565b91505092915050565b600060208284031215612edd57612edc613a43565b5b6000612eeb84828501612c69565b91505092915050565b600060208284031215612f0a57612f09613a43565b5b6000612f1884828501612c7e565b91505092915050565b600080600060608486031215612f3a57612f39613a43565b5b6000612f4886828701612c7e565b9350506020612f5986828701612c7e565b9250506040612f6a86828701612c7e565b9150509250925092565b6000612f808383612faa565b60208301905092915050565b612f95816138cb565b82525050565b612fa481613851565b82525050565b612fb38161383f565b82525050565b612fc28161383f565b82525050565b6000612fd3826136da565b612fdd81856136fd565b9350612fe8836136ca565b8060005b838110156130195781516130008882612f74565b975061300b836136f0565b925050600181019050612fec565b5085935050505092915050565b61302f81613863565b82525050565b61303e816138dd565b82525050565b61304d816138ef565b82525050565b600061305e826136e5565b6130688185613719565b9350613078818560208601613925565b61308181613a48565b840191505092915050565b6000613099601683613719565b91506130a482613a59565b602082019050919050565b60006130bc602283613719565b91506130c782613a82565b604082019050919050565b60006130df602883613719565b91506130ea82613ad1565b604082019050919050565b6000613102601b83613719565b915061310d82613b20565b602082019050919050565b6000613125602083613719565b915061313082613b49565b602082019050919050565b6000613148603183613719565b915061315382613b72565b604082019050919050565b600061316b600e83613719565b915061317682613bc1565b602082019050919050565b600061318e601683613719565b915061319982613bea565b602082019050919050565b60006131b1601683613719565b91506131bc82613c13565b602082019050919050565b60006131d4602083613719565b91506131df82613c3c565b602082019050919050565b60006131f7602983613719565b915061320282613c65565b604082019050919050565b600061321a601a83613719565b915061322582613cb4565b602082019050919050565b600061323d60008361370e565b915061324882613cdd565b600082019050919050565b6000613260602483613719565b915061326b82613ce0565b604082019050919050565b6000613283601783613719565b915061328e82613d2f565b602082019050919050565b6132a2816138b4565b82525050565b6132b1816138be565b82525050565b60006132c282613230565b9150819050919050565b60006020820190506132e16000830184612fb9565b92915050565b60006020820190506132fc6000830184612f8c565b92915050565b60006020820190506133176000830184612f9b565b92915050565b60006040820190506133326000830185612f8c565b61333f6020830184613299565b9392505050565b600060408201905061335b6000830185612fb9565b6133686020830184612fb9565b9392505050565b60006040820190506133846000830185612fb9565b6133916020830184613026565b9392505050565b60006040820190506133ad6000830185612fb9565b6133ba6020830184613299565b9392505050565b600060c0820190506133d66000830189612fb9565b6133e36020830188613299565b6133f06040830187613044565b6133fd6060830186613044565b61340a6080830185612fb9565b61341760a0830184613299565b979650505050505050565b60006020820190506134376000830184613026565b92915050565b60006020820190506134526000830184613035565b92915050565b600060208201905081810360008301526134728184613053565b905092915050565b600060208201905081810360008301526134938161308c565b9050919050565b600060208201905081810360008301526134b3816130af565b9050919050565b600060208201905081810360008301526134d3816130d2565b9050919050565b600060208201905081810360008301526134f3816130f5565b9050919050565b6000602082019050818103600083015261351381613118565b9050919050565b600060208201905081810360008301526135338161313b565b9050919050565b600060208201905081810360008301526135538161315e565b9050919050565b6000602082019050818103600083015261357381613181565b9050919050565b60006020820190508181036000830152613593816131a4565b9050919050565b600060208201905081810360008301526135b3816131c7565b9050919050565b600060208201905081810360008301526135d3816131ea565b9050919050565b600060208201905081810360008301526135f38161320d565b9050919050565b6000602082019050818103600083015261361381613253565b9050919050565b6000602082019050818103600083015261363381613276565b9050919050565b600060208201905061364f6000830184613299565b92915050565b600060a08201905061366a6000830188613299565b6136776020830187613044565b81810360408301526136898186612fc8565b90506136986060830185612fb9565b6136a56080830184613299565b9695505050505050565b60006020820190506136c460008301846132a8565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600081905092915050565b600082825260208201905092915050565b6000613735826138b4565b9150613740836138b4565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561377557613774613958565b5b828201905092915050565b600061378b826138b4565b9150613796836138b4565b9250826137a6576137a5613987565b5b828204905092915050565b60006137bc826138b4565b91506137c7836138b4565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615613800576137ff613958565b5b828202905092915050565b6000613816826138b4565b9150613821836138b4565b92508282101561383457613833613958565b5b828203905092915050565b600061384a82613894565b9050919050565b600061385c82613894565b9050919050565b60008115159050919050565b600061387a8261383f565b9050919050565b600081905061388f82613d58565b919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006138d682613901565b9050919050565b60006138e882613881565b9050919050565b60006138fa826138b4565b9050919050565b600061390c82613913565b9050919050565b600061391e82613894565b9050919050565b60005b83811015613943578082015181840152602081019050613928565b83811115613952576000848401525b50505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f46756e6374696f6e2069732074696d656c6f636b656400000000000000000000600082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f53776170207468726573686f6c642068617320746f206265206c65737320746860008201527f616e20302e303525000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f5461782073686f756c64206e6f7420626520686967686572207468616e203525600082015250565b7f596f752063616e277420776974686472617720746f6b656e732066726f6d206f60008201527f776e656420627920636f6e74726163742e000000000000000000000000000000602082015250565b7f62616c616e6365206973206c6f77000000000000000000000000000000000000600082015250565b7f5a65726f206164647265737320657863657074696f6e00000000000000000000600082015250565b7f46756e6374696f6e206973206e6f74206c6f636b656400000000000000000000600082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f42616c616e6365206c657373207468656e207472616e73666572000000000000600082015250565b50565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b60028110613d6957613d686139b6565b5b50565b613d758161383f565b8114613d8057600080fd5b50565b613d8c81613851565b8114613d9757600080fd5b50565b613da381613863565b8114613dae57600080fd5b50565b613dba8161386f565b8114613dc557600080fd5b50565b60028110613dd557600080fd5b50565b613de1816138b4565b8114613dec57600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122028e46d912d8cae62027b3897b02c3289c00e75db7a81193f627a0d191bcc03d764736f6c63430008070033

Verified Source Code Partial Match

Compiler: v0.8.7+commit.e28d00a7 EVM: london Optimization: No
HTS.sol 430 lines
// HOME3  $HTS
// Telegram: https://t.me/JoinHOME3
// Website:  https://www.home3suite.com/
// X:  https://x.com/Home3Suite

// SPDX-License-Identifier: Unlicensed

pragma solidity 0.8.7;


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



}

contract Ownable is Context {
    address private _owner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
    constructor () {
        _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");
        _;
    }

    // Timelock logic
 
    enum Functions {changeOwnership,changeTreWallet}
    mapping(Functions => uint256) public timelock;

    modifier notLocked(Functions _func) {
    require(
        timelock[_func] != 0 && timelock[_func] <= block.timestamp,
        "Function is timelocked"
    );
    _;
    }


   function renounceOwnership() external  onlyOwner notLocked(Functions.changeOwnership){
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
        timelock[Functions.changeOwnership] = 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);
}
/**
 * @title HTS
 * @dev Implementation of the HTS token with tax functionality.
 */
contract HTS is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private balance;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;
    
    uint256 private constant _tTotal = 1e26; 
    uint256 public swapThreshold = _tTotal/10000;
    uint256 public buyTax = 5;
    uint256 public sellTax = 5;
    uint256 private tax = 0;
    uint256 private constant _TIMELOCK = 2 days ;
    address payable public treasuryWallet;
    mapping (address => bool) public uniswapV2Pair;
    string private constant _name = "Home3";
    string private constant _symbol = "HTS";
    uint8 private constant _decimals = 18;
    bool private inSwap = false;
    bool private tradingOpen;
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }
    IUniswapV2Router02 private uniswapV2Router;
    
    event swapAmountUpdated(uint256 _newThreshold);
    event buyTaxUpdated(uint256 _newTax);
    event sellTaxUpdated(uint256 _newTax);
    event treasuryUpdated(address _newWallet);
    event TransferToTreasuryFailed(uint256 amount);
    event functionUnlockInitiated(Functions _func);
    event functionLocked(Functions _func);
    event whitelistUpdated(address _addr,bool _bool);
    event lpPairAdded(address _addr);

    /**
     * @notice Initializes the contract with a treasury wallet.
     * @param _treasuryWallet The address of the treasury wallet.
     */
    constructor (address payable _treasuryWallet) { 
        require(_treasuryWallet != address(0),"Zero address exception");
        treasuryWallet = _treasuryWallet;
        balance[owner()] = _tTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        emit Transfer(address(0),owner(), _tTotal);
    }
    /**
     * @notice Unlocks a specific function after the timelock period.
     * @param _func The function to unlock. It will be 0 for renounce function and 1 for changing treasury wallet
     */
    function unlockFunction(Functions _func) external onlyOwner {
        require(timelock[_func] == 0,"Function is not locked");
        timelock[_func] = block.timestamp + _TIMELOCK;
        emit functionUnlockInitiated(_func);
    } 
    /**
     * @notice Locks a specific function, preventing its execution.
     * @param _func The function to lock. It will be 0 for renounce function and 1 for changing treasury wallet
     */
    function lockFunction(Functions _func) external onlyOwner {
        timelock[_func] = 0;
        emit functionLocked(_func);
    }
    /**
     * @notice Transfers tokens from one address to another.
     * @param sender The address to transfer from.
     * @param recipient The address to transfer to.
     * @param amount The amount to be transferred.
     * @return A boolean indicating whether the operation succeeded.
     */
    function transferFrom(address sender, address recipient, uint256 amount) external override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }
    /**
     * @notice Approves a spender to spend a specified amount of tokens on behalf of a holder.
     * @param holder The address of the holder.
     * @param spender The address of the spender.
     * @param amount The amount of tokens to be approved.
     */
    function _approve(address holder, address spender, uint256 amount) private {
        require(holder != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");
        _allowances[holder][spender] = amount;
        emit Approval(holder, spender, amount);
    }
    /**
     * @notice Transfers tokens from one address to another with tax handling along with whitelist.
     * @param from The address to transfer from.
     * @param to The address to transfer to.
     * @param amount The amount to be transferred.
     */
    function _transfer(address from, address to, uint256 amount) private {
        require(amount > 0, "Transfer amount must be greater than zero");
        require(balanceOf(from) >= amount,"Balance less then transfer"); 
        tax = 0;
        uint256 contractETHBalance = address(this).balance;
        if(contractETHBalance > 1 ether) { 
                sendTaxToTreasury(address(this).balance);
            }
        if (!(_isExcludedFromFee[from] || _isExcludedFromFee[to]) ) {            
            if(uniswapV2Pair[from]){
                tax = buyTax;
            }
            else if(uniswapV2Pair[to]){
                tax = sellTax;
                uint256 contractTokenBalance = balanceOf(address(this));
                if(!inSwap){
                    if(contractTokenBalance > swapThreshold){ 
                        swapTokensForEth(contractTokenBalance);
                    }
                }
            }
               
        }
        _tokenTransfer(from,to,amount);
    }

    /**
     * @notice Swaps tokens for ETH.
     * @param tokenAmount The amount of tokens to be swapped.
     */
    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
        );
    }
    
    /**
     * @notice Sends collected tax to the treasury wallet.
     * @param amount The amount of ETH to be sent.
     */
    function sendTaxToTreasury(uint256 amount) private {
        (bool success, ) =treasuryWallet.call{value: amount}("");
        if (!success){
            emit TransferToTreasuryFailed(amount);
        }      
    }
    
    /**
     * @notice Opens trading by adding liquidity to the Uniswap pool.
     * @dev Make sure to send ETH and Tokens to be added to inital pool.
     */
    function openTrading() external onlyOwner {
        require(!tradingOpen,"trading is already open");
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); 
        uniswapV2Router = _uniswapV2Router;
        _approve(address(this), address(uniswapV2Router), _tTotal);
        address _uniswapV2pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH());
        uniswapV2Pair[_uniswapV2pair] = true;
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
        tradingOpen = true;
        IERC20(_uniswapV2pair).approve(address(uniswapV2Router), type(uint).max);
    }

    /**
     * @notice Transfers tokens with tax calculation.
     * @param sender The address to transfer from.
     * @param recipient The address to transfer to.
     * @param amount The amount to be transferred.
     */
    function _tokenTransfer(address sender, address recipient, uint256 amount) private {
        uint256 stContract = amount*tax/100;    
        uint256 remainingAmount = amount - stContract; 
        balance[sender] = balance[sender].sub(amount); 
        balance[recipient] = balance[recipient].add(remainingAmount); 
        balance[address(this)] = balance[address(this)].add(stContract); 
        emit Transfer(sender, recipient, remainingAmount);
    }
    /**
     * @notice Adds or removes an address from the whitelist (excluded from tax).
     * @param _addr The address to be whitelisted or removed from the whitelist.
     * @param _bool The boolean value to add or remove the address from the whitelist.
     */
    function whitelistAddress(address _addr,bool _bool) external onlyOwner{
        if(_isExcludedFromFee[_addr] != _bool){
            _isExcludedFromFee[_addr] = _bool;
        }
        emit whitelistUpdated(_addr,_bool);
    }
    /**
     * @notice Fallback function to receive ETH.
     */
    receive() external payable {}
    /**
     * @notice Rescues ERC20 tokens from the contract.
     * @dev token address can't be same as HTS token.
     * @param token The address of the ERC20 token to rescue.
     * @param amount The amount of tokens to rescue.
     */
    function rescueERC20(IERC20 token, uint256 amount) external onlyOwner{ 
        require(token != IERC20(address(this)),"You can't withdraw tokens from owned by contract."); 
        uint256 erc20balance = token.balanceOf(address(this));
        require(amount <= erc20balance, "balance is low");
        token.transfer(treasuryWallet, amount);
    }

    /**
     * @notice Changes the threshold for token swap.
     * @param _newThreshold The new swap threshold. 
     * @dev add decimals, 10^18 = 1 Token
     */
    function changeSwapAmount(uint256 _newThreshold) external onlyOwner{
        require(_newThreshold < _tTotal/2000,'Swap threshold has to be less than 0.05%');
        swapThreshold = _newThreshold;
        emit swapAmountUpdated(_newThreshold);
    }
    /**
     * @notice Changes the buy tax.
     * @param _newTax The new buy tax percantage. 
     * @dev Tax is capped at 5%, so input has to less than 5. 
     */
    function changeBuyTax(uint256 _newTax) external onlyOwner{
        require(_newTax <6, "Tax should not be higher than 5%");
        buyTax = _newTax;
        emit buyTaxUpdated(_newTax);
    }
    /**
     * @notice Changes the sell tax.
     * @param _newTax The new sell tax.
     * @dev Tax is capped at 5%, so input has to less than 5.
     */
    function changeSellTax(uint256 _newTax) external onlyOwner{
        require(_newTax < 6,"Tax should not be higher than 5%");
        sellTax = _newTax;
        emit sellTaxUpdated(_newTax);
    }
    /**
     * @notice Changes the treasury wallet address.
     * @dev Function is locked and has to be unlocked prior to calling
     * @param _treasuryWallet The new treasury wallet address.
     */
    function setTreasury(address payable _treasuryWallet) external onlyOwner notLocked(Functions.changeTreWallet){
        require(_treasuryWallet != address(0),"Zero address exception");
        treasuryWallet = _treasuryWallet;
        timelock[Functions.changeTreWallet] = 0;
        emit treasuryUpdated(_treasuryWallet);
    }

    /**
     * @notice Adds a liquidity pair to support more than one dex pairs.
     * @param _address The address of the liquidity pair.
     */
    function addLPPair(address _address) external onlyOwner{
        uniswapV2Pair[_address] = true;
        emit lpPairAdded(_address);
    }
    /**
     * @notice Manually swaps the tokens for ETH.
     */
    function manualswap() external onlyOwner{
        uint256 contractBalance = balanceOf(address(this));
        swapTokensForEth(contractBalance);
    }
    /**
     * @notice Manually sends the ETH to the treasury.
     */
    function manualSend() external onlyOwner{
        uint256 contractETHBalance = address(this).balance;
        sendTaxToTreasury(contractETHBalance);
    }

//Read only functions
    function name() external pure returns (string memory) {
        return _name;
    }

    function symbol() external pure returns (string memory) {
        return _symbol;
    }

    function decimals() external pure returns (uint8) {
        return _decimals;
    }

    function totalSupply() external pure override returns (uint256) {
        return _tTotal;
    }

    function balanceOf(address account) public view override returns (uint256) {
        return balance[account];
    }

    function transfer(address recipient, uint256 amount) external override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }

    function allowance(address holder, address spender) external view override returns (uint256) {
        return _allowances[holder][spender];
    }

    function approve(address spender, uint256 amount) external override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }
    /**
     * @notice Checks if an address is whitelisted.
     * @param _addr The address to check.
     * @return A boolean indicating if the address is whitelisted.
     */
    function isWhitelisted(address _addr) external view returns(bool){
        return _isExcludedFromFee[_addr];
    }

}

Read Contract

allowance 0xdd62ed3e → uint256
balanceOf 0x70a08231 → uint256
buyTax 0x4f7041a5 → uint256
decimals 0x313ce567 → uint8
isWhitelisted 0x3af32abf → bool
name 0x06fdde03 → string
owner 0x8da5cb5b → address
sellTax 0xcc1776d3 → uint256
swapThreshold 0x0445b667 → uint256
symbol 0x95d89b41 → string
timelock 0xc17bae2a → uint256
totalSupply 0x18160ddd → uint256
treasuryWallet 0x4626402b → address
uniswapV2Pair 0x2847c6de → bool

Write Contract 16 functions

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

addLPPair 0xffbc91d9
address _address
approve 0x095ea7b3
address spender
uint256 amount
returns: bool
changeBuyTax 0x24c16b7f
uint256 _newTax
changeSellTax 0xdebae15e
uint256 _newTax
changeSwapAmount 0x0ce5fd36
uint256 _newThreshold
lockFunction 0xb4fa3b98
uint8 _func
manualSend 0xf4293890
No parameters
manualswap 0xc3c8cd80
No parameters
openTrading 0xc9567bf9
No parameters
renounceOwnership 0x715018a6
No parameters
rescueERC20 0x8cd4426d
address token
uint256 amount
setTreasury 0xf0f44260
address _treasuryWallet
transfer 0xa9059cbb
address recipient
uint256 amount
returns: bool
transferFrom 0x23b872dd
address sender
address recipient
uint256 amount
returns: bool
unlockFunction 0xaa53099d
uint8 _func
whitelistAddress 0xb9a45aac
address _addr
bool _bool

Recent Transactions

No transactions found for this address