1 tx
8 calls
constructor
constructor(address _swapRouter, address _ctznToken, address _wpol, address _treasuryAddress)
functions
CTZN_TOKEN
viewfunction CTZN_TOKEN() view returns (address)
owner
viewfunction owner() view returns (address)
QUICKSWAP_ROUTER
viewfunction QUICKSWAP_ROUTER() view returns (address)
treasuryAddress
viewfunction treasuryAddress() view returns (address)
WPOL
viewfunction WPOL() view returns (address)
emergencyWithdraw
nonpayablefunction emergencyWithdraw()
onRampAndSwap
payablefunction onRampAndSwap(address recipient, uint256 amountOutMin) payable
renounceOwnership
nonpayablefunction renounceOwnership()
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
updateTreasuryAddress
nonpayablefunction updateTreasuryAddress(address _newTreasury)
events
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
SwapExecuted
event SwapExecuted(address indexed recipient, uint256 amountPOL, uint256 amountCTZN)
TreasuryAddressUpdated
event TreasuryAddressUpdated(address indexed newTreasury)
TreasuryChanged
event TreasuryChanged(address indexed oldTreasury, address indexed newTreasury)
errors
ApproveFailed
error ApproveFailed()
InsufficientOutputAmount
error InsufficientOutputAmount(uint256 actualAmount, uint256 minimumAmount)
InvalidCTZNAddress
error InvalidCTZNAddress()
InvalidRecipientAddress
error InvalidRecipientAddress()
InvalidRouterAddress
error InvalidRouterAddress()
InvalidTreasuryAddress
error InvalidTreasuryAddress()
InvalidWPOLAddress
error InvalidWPOLAddress()
NoPOLSent
error NoPOLSent()
NoPOLToWithdraw
error NoPOLToWithdraw()
OwnableInvalidOwner
error OwnableInvalidOwner(address owner)
OwnableUnauthorizedAccount
error OwnableUnauthorizedAccount(address account)
ReentrancyGuardReentrantCall
error ReentrancyGuardReentrantCall()
SendingExcessPOLFailed
error SendingExcessPOLFailed()
WithdrawFailed
error WithdrawFailed()
creation bytecode
0x60e060405234801561001057600080fd5b50604051610cb9380380610cb983398101604081905261002f9161019e565b338061005557604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b61005e81610132565b50600180556001600160a01b03841661008a576040516314203b4b60e01b815260040160405180910390fd5b6001600160a01b0383166100b1576040516351835afd60e11b815260040160405180910390fd5b6001600160a01b0382166100d857604051632de70f7960e11b815260040160405180910390fd5b6001600160a01b0381166100ff5760405163cfe2ea6360e01b815260040160405180910390fd5b6001600160a01b0393841660805291831660a052821660c052600280546001600160a01b031916919092161790556101f2565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80516001600160a01b038116811461019957600080fd5b919050565b600080600080608085870312156101b457600080fd5b6101bd85610182565b93506101cb60208601610182565b92506101d960408601610182565b91506101e760608601610182565b905092959194509250565b60805160a05160c051610a616102586000396000818160ec015281816102a60152818161035b015281816103f801526105d801526000818161017a01526104270152600081816101ce0152818161032c015281816104f101526105a90152610a616000f3fe6080604052600436106100955760003560e01c8063b1e979ef11610059578063b1e979ef14610168578063c5f956af1461019c578063d0919116146101bc578063db2e21bc146101f0578063f2fde38b1461020557600080fd5b80633b4f5000146100b2578063715018a6146100c55780637160ad0b146100da578063841e45611461012a5780638da5cb5b1461014a57600080fd5b366100ad576100a2610225565b6100ab60018055565b005b600080fd5b6100ab6100c036600461097d565b61024f565b3480156100d157600080fd5b506100ab610734565b3480156100e657600080fd5b5061010e7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200160405180910390f35b34801561013657600080fd5b506100ab6101453660046109a7565b610748565b34801561015657600080fd5b506000546001600160a01b031661010e565b34801561017457600080fd5b5061010e7f000000000000000000000000000000000000000000000000000000000000000081565b3480156101a857600080fd5b5060025461010e906001600160a01b031681565b3480156101c857600080fd5b5061010e7f000000000000000000000000000000000000000000000000000000000000000081565b3480156101fc57600080fd5b506100ab610807565b34801561021157600080fd5b506100ab6102203660046109a7565b6108a6565b60026001540361024857604051633ee5aeb560e01b815260040160405180910390fd5b6002600155565b610257610225565b3460000361027857604051632eadbfab60e21b815260040160405180910390fd5b6001600160a01b03821661029f5760405163226ccff560e11b815260040160405180910390fd5b60003490507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d0e30db0826040518263ffffffff1660e01b81526004016000604051808303818588803b1580156102ff57600080fd5b505af1158015610313573d6000803e3d6000fd5b505060405163095ea7b360e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152602482018690527f000000000000000000000000000000000000000000000000000000000000000016935063095ea7b3925060440190506020604051808303816000875af11580156103a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103cc91906109c9565b6103e957604051633e3f8f7360e01b815260040160405180910390fd5b60006040518060e001604052807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602001856001600160a01b031681526020014261025861047191906109eb565b81526020808201859052604080830187905260006060938401819052815163178ca23160e31b815285516001600160a01b039081166004830152938601518416602482015291850151831660448301529284015160648201526080840151608482015260a084015160a482015260c0840151821660c482015292935090917f00000000000000000000000000000000000000000000000000000000000000009091169063bc6511889060e4016020604051808303816000875af115801561053c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105609190610a12565b9050838110156105925760405163d28d3eb560e01b815260048101829052602481018590526044015b60405180910390fd5b60405163095ea7b360e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152600060248301527f0000000000000000000000000000000000000000000000000000000000000000169063095ea7b3906044016020604051808303816000875af1158015610621573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061064591906109c9565b61066257604051633e3f8f7360e01b815260040160405180910390fd5b60408051848152602081018390526001600160a01b038716917f2d043ce009ff53fd444b0f4f5ff4c3f4ee293265203f77f156eeb33b595dfc4f910160405180910390a2478015610723576002546040516000916001600160a01b03169083908381818185875af1925050503d80600081146106fa576040519150601f19603f3d011682016040523d82523d6000602084013e6106ff565b606091505b505090508061072157604051630b9508e560e31b815260040160405180910390fd5b505b5050505061073060018055565b5050565b61073c6108e4565b6107466000610911565b565b6107506108e4565b6001600160a01b0381166107775760405163cfe2ea6360e01b815260040160405180910390fd5b600280546001600160a01b038381166001600160a01b031983168117909355604051911691907fb6a5e89655cf506139085f051af608195ed056f8dc550b180a1c38d401e2b6c490600090a2816001600160a01b0316816001600160a01b03167f8c3aa5f43a388513435861bf27dfad7829cd248696fed367c62d441f6295449660405160405180910390a35050565b61080f6108e4565b4760008190036108325760405163717218af60e11b815260040160405180910390fd5b600080546040516001600160a01b039091169083908381818185875af1925050503d806000811461087f576040519150601f19603f3d011682016040523d82523d6000602084013e610884565b606091505b505090508061073057604051631d42c86760e21b815260040160405180910390fd5b6108ae6108e4565b6001600160a01b0381166108d857604051631e4fbdf760e01b815260006004820152602401610589565b6108e181610911565b50565b6000546001600160a01b031633146107465760405163118cdaa760e01b8152336004820152602401610589565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b038116811461097857600080fd5b919050565b6000806040838503121561099057600080fd5b61099983610961565b946020939093013593505050565b6000602082840312156109b957600080fd5b6109c282610961565b9392505050565b6000602082840312156109db57600080fd5b815180151581146109c257600080fd5b80820180821115610a0c57634e487b7160e01b600052601160045260246000fd5b92915050565b600060208284031215610a2457600080fd5b505191905056fea2646970667358221220eb3a750eb72e363f5b7f08f06becc0b808c7e27cb3fb37a4c8afef2c011da80c64736f6c63430008140033000000000000000000000000f5b509bb0909a69b1c207e495f687a596c168e120000000000000000000000000d9b0790e97e3426c161580df4ee853e4a7c46070000000000000000000000000d500b1d8e8ef31e21c99d1db9a6444d3adf1270000000000000000000000000a232f16ab37c9a646f91ba901e92ed1ba4b7b544