1 tx
2 calls
constructor
constructor(address _router, address _feeReceiver, uint256 _feeAmount)
functions
checkContractETHBalance
viewfunction checkContractETHBalance() view returns (uint256)
checkETHBalance
viewfunction checkETHBalance(address owner) view returns (uint256)
checkFeeStatus
viewfunction checkFeeStatus(address token, address user) view returns (bool)
checkTokenAllowance
viewfunction checkTokenAllowance(address token, address owner) view returns (uint256)
checkTokenBalance
viewfunction checkTokenBalance(address token, address owner) view returns (uint256)
feeAmount
viewfunction feeAmount() view returns (uint256)
feeReceiver
viewfunction feeReceiver() view returns (address)
getETHBalance
viewfunction getETHBalance() view returns (uint256)
getPairKey
purefunction getPairKey(address tokenA, address tokenB) pure returns (bytes32)
getTokenBalance
viewfunction getTokenBalance(address token) view returns (uint256)
hasPaidFee
viewfunction hasPaidFee(bytes32, address) view returns (bool)
owner
viewfunction owner() view returns (address)
router
viewfunction router() view returns (address)
addLiquidity
payablefunction addLiquidity(address tokenA, address tokenB, uint256 amountADesired, uint256 amountBDesired, uint256 amountAMin, uint256 amountBMin, address to, uint256 deadline) payable
addLiquidityETH
payablefunction addLiquidityETH(address token, uint256 amountTokenDesired, uint256 amountTokenMin, uint256 amountETHMin, address to, uint256 deadline) payable
emergencyWithdraw
nonpayablefunction emergencyWithdraw(address token, uint256 amount)
renounceOwnership
nonpayablefunction renounceOwnership()
setFeeAmount
nonpayablefunction setFeeAmount(uint256 newFee)
setFeeReceiver
nonpayablefunction setFeeReceiver(address newReceiver)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
events
FeePaid
event FeePaid(address indexed user, bytes32 indexed pairHash, uint256 fee)
FeeReceiverUpdated
event FeeReceiverUpdated(address newReceiver)
FeeUpdated
event FeeUpdated(uint256 newFee)
LiquidityETHAdded
event LiquidityETHAdded(address indexed user, address token, uint256 tokenAmount, uint256 ethAmount, uint256 liquidity)
LiquidityTokenAdded
event LiquidityTokenAdded(address indexed user, address tokenA, address tokenB, uint256 amountA, uint256 amountB, uint256 liquidity)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
errors
DeadlineExpired
error DeadlineExpired()
ETHRefundFailed
error ETHRefundFailed()
FeeTransferFailed
error FeeTransferFailed()
InsufficientETHForLiquidity
error InsufficientETHForLiquidity()
InsufficientFee
error InsufficientFee()
InsufficientTokenAAllowance
error InsufficientTokenAAllowance()
InsufficientTokenABalance
error InsufficientTokenABalance()
InsufficientTokenAllowance
error InsufficientTokenAllowance()
InsufficientTokenBalance
error InsufficientTokenBalance()
InsufficientTokenBAllowance
error InsufficientTokenBAllowance()
InsufficientTokenBBalance
error InsufficientTokenBBalance()
InvalidRecipient
error InvalidRecipient()
InvalidToken
error InvalidToken()
InvalidTokenAmount
error InvalidTokenAmount()
OwnableInvalidOwner
error OwnableInvalidOwner(address owner)
OwnableUnauthorizedAccount
error OwnableUnauthorizedAccount(address account)
ReentrancyGuardReentrantCall
error ReentrancyGuardReentrantCall()
TokenAApprovalFailed
error TokenAApprovalFailed()
TokenApprovalFailed
error TokenApprovalFailed()
TokenARefundFailed
error TokenARefundFailed()
TokenATransferFailed
error TokenATransferFailed()
TokenBApprovalFailed
error TokenBApprovalFailed()
TokenBRefundFailed
error TokenBRefundFailed()
TokenBTransferFailed
error TokenBTransferFailed()
TokenRefundFailed
error TokenRefundFailed()
TokensMustBeDifferent
error TokensMustBeDifferent()
TokenTransferFailed
error TokenTransferFailed()
UniswapCallFailed
error UniswapCallFailed()
creation bytecode
0x60a03461014257601f61172938819003918201601f19168301916001600160401b0383118484101761014757808492606094604052833981010312610142576100478161015d565b9060406100566020830161015d565b91015190331561012c5760008054336001600160a01b0319821681178355604051959290916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09080a3600180556001600160a01b031690811561011b576001600160a01b031690811561010a57608052600280546001600160a01b0319169190911790556003556115b79081610172823960805181818161011c015281816102e80152610a290152f35b634e46966960e11b60005260046000fd5b63c1ab6dc160e01b60005260046000fd5b631e4fbdf760e01b600052600060045260246000fd5b600080fd5b634e487b7160e01b600052604160045260246000fd5b51906001600160a01b03821682036101425756fe608080604052600436101561001d575b50361561001b57600080fd5b005b60003560e01c90816334f91499146113c4575080633aecd0e31461136d578063442c61bd146112e9578063533d172c1461123857806362a35d721461121457806363a83060146111a957806369e154041461118b5780636b3926801461113f5780636e94729814610f0e578063715018a6146110e65780638da5cb5b146110bd57806395ccea6714610f89578063b3f0067414610f60578063b9bf0e8a14610f13578063bc64777b14610f0e578063e8e33700146107c3578063efdcd97414610752578063f2fde38b146106c9578063f305d719146101505763f887ea4014610106573861000f565b3461014b57600036600319011261014b576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b600080fd5b60c036600319011261014b57610164611420565b60643590602435906084356001600160a01b0381169081900361014b5760a4359061018d61155f565b6001600160a01b0383169283156106b85784156106a757811561069657428310610685576040516101ed816101df6020820194856028916001600160601b03199060601b168152600060148201520190565b03601f198101835282611468565b51902060008181526004602090815260408083203384529091529020543496919060ff16156105cf575b508086106105be576040516370a0823160e01b8152336004820152602081602481885afa801561056c578691600091610589575b501061057857604051636eb1769f60e11b8152336004820152306024820152602081604481885afa801561056c578691600091610537575b5010610526576040516323b872dd60e01b8152336004820152306024820152604481018690526020816064816000895af19081610509575b506102d15763022e258160e11b60005260046000fd5b60405163095ea7b360e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000166004820181905260248201879052929060208160448160008a5af190816104ec575b5061034057632d4de02b60e01b60005260046000fd5b60c460609288600095604051978895869463f305d71960e01b86528b60048701528c602487015260443560448701526064860152608485015260a48401525af19384829383966104b3575b506103a1576348e3e18f60e11b60005260046000fd5b6103ea9291946040519085825283602083015286604083015260608201527fed8a418d9be0c956acd2f8cc248ae8c87638531e2c68a9499da225fccb056a2b60803392a2611513565b80610435575b50506103fb91611513565b80610407575b60018055005b600080808093335af16104186114b8565b50156104245780610401565b633fdf366b60e11b60005260046000fd5b60405163a9059cbb60e01b8152336004820152602481019190915290602090829060449082906000905af19081610486575b5061047d576373dd95d760e01b60005260046000fd5b6103fb836103f0565b6104a79060203d6020116104ac575b61049f8183611468565b8101906114a0565b610467565b503d610495565b91935094506104da915060603d6060116104e5575b6104d28183611468565b8101906114f8565b91929091948761038b565b503d6104c8565b6105049060203d6020116104ac5761049f8183611468565b61032a565b6105219060203d6020116104ac5761049f8183611468565b6102bb565b63a085b77b60e01b60005260046000fd5b9150506020813d602011610564575b8161055360209383611468565b8101031261014b5785905188610283565b3d9150610546565b6040513d6000823e3d90fd5b637222ae5760e11b60005260046000fd5b9150506020813d6020116105b6575b816105a560209383611468565b8101031261014b578590518861024b565b3d9150610598565b637c4f338960e01b60005260046000fd5b955060035434106106755760008681526004602090815260408083203384529091528120805460ff1916600117905560035496908080806106108b34611513565b600254909b906001600160a01b03165af16106296114b8565b5015610664576003546040519081527ff00a7c52bb14b2246c8bffcad6f2cd3189a72d08bafa84277d182b95e0eb2c4e60203392a386610217565b634033e4e360e01b60005260046000fd5b62976f7560e21b60005260046000fd5b631ab7da6b60e01b60005260046000fd5b634e46966960e11b60005260046000fd5b632160733960e01b60005260046000fd5b63c1ab6dc160e01b60005260046000fd5b3461014b57602036600319011261014b576106e2611420565b6106ea611536565b6001600160a01b0316801561073c57600080546001600160a01b03198116831782556001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09080a3005b631e4fbdf760e01b600052600060045260246000fd5b3461014b57602036600319011261014b5761076b611420565b610773611536565b6001600160a01b03168015610696576020817f27aae5db36d94179909d019ae0b1ac7c16d96d953148f63c0f6a0a9c8ead79ee926001600160601b0360a01b6002541617600255604051908152a1005b61010036600319011261014b576107d8611420565b6107e0611436565b90606435906044359060c4356001600160a01b0381169081900361014b5760e4359061080a61155f565b6001600160a01b0383169283158015610efd575b6106b8576001600160a01b03871696848814610eec5785158015610ee4575b6106a757821561069657428410610685576040516bffffffffffffffffffffffff19606093841b8116602083019081529290931b90921660348301529061088781604881016101df565b519020600081815260046020908152604080832033845290915290205460ff1615610e5d575b506040516370a0823160e01b8152336004820152602081602481875afa801561056c578591600091610e28575b5010610e17576040516370a0823160e01b81523360048201526020816024818a5afa801561056c578691600091610de2575b5010610dd157604051636eb1769f60e11b8152336004820152306024820152602081604481875afa801561056c578591600091610d9c575b5010610d8b57604051636eb1769f60e11b81523360048201523060248201526020816044818a5afa801561056c578691600091610d56575b5010610d45576040516323b872dd60e01b8152336004820152306024820152604481018590526020816064816000885af19081610d28575b506109ca576310b225f960e01b60005260046000fd5b6040516323b872dd60e01b81523360048201523060248201526044810186905260208160648160008b5af19081610d0b575b50610a125763375f6cbb60e11b60005260046000fd5b60405163095ea7b360e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016600482018190526024820186905292906020816044816000895af19081610cee575b50610a81576332008ecf60e01b60005260046000fd5b60405163095ea7b360e01b81526001600160a01b03841660048201526024810187905260208160448160008c5af19081610cd1575b50610acc5763a31d900560e01b60005260046000fd5b60609061010460009384604051968794859362e8e33760e81b85528a60048601528d60248601528b60448601528c6064860152608435608486015260a43560a486015260c485015260e48401525af1938482938396610ca8575b50610b3c576348e3e18f60e11b60005260046000fd5b610b8b9291946040519085825288602083015283604083015286606083015260808201527f8542fc4abf1031f406642245718393b3e16c2915e7eeec36f623754c6c56fcb660a03392a2611513565b80610c3a575b5050610b9c91611513565b9081610bcf575b5050600354803411610bb55760018055005b60008080610bc4819434611513565b335af16104186114b8565b60405163a9059cbb60e01b81523360048201526024810192909252602090829060449082906000905af19081610c1d575b50610c165763120d5daf60e11b60005260046000fd5b8080610ba3565b610c359060203d6020116104ac5761049f8183611468565b610c00565b60405163a9059cbb60e01b8152336004820152602481019190915290602090829060449082906000905af19081610c8b575b50610c825763c745106760e01b60005260046000fd5b610b9c84610b91565b610ca39060203d6020116104ac5761049f8183611468565b610c6c565b9193509450610cc6915060603d6060116104e5576104d28183611468565b919290919488610b26565b610ce99060203d6020116104ac5761049f8183611468565b610ab6565b610d069060203d6020116104ac5761049f8183611468565b610a6b565b610d239060203d6020116104ac5761049f8183611468565b6109fc565b610d409060203d6020116104ac5761049f8183611468565b6109b4565b63a71cce0f60e01b60005260046000fd5b9150506020813d602011610d83575b81610d7260209383611468565b8101031261014b578590518861097c565b3d9150610d65565b6332d86c9760e01b60005260046000fd5b9150506020813d602011610dc9575b81610db860209383611468565b8101031261014b5784905188610944565b3d9150610dab565b63d7f63e1b60e01b60005260046000fd5b9150506020813d602011610e0f575b81610dfe60209383611468565b8101031261014b578590518861090c565b3d9150610df1565b635ec69e1960e01b60005260046000fd5b9150506020813d602011610e55575b81610e4460209383611468565b8101031261014b57849051886108da565b3d9150610e37565b60035434106106755760008181526004602090815260408083203384529091528120805460ff191660011790556002546003548291829182916001600160a01b03165af1610ea96114b8565b5015610664576003546040519081527ff00a7c52bb14b2246c8bffcad6f2cd3189a72d08bafa84277d182b95e0eb2c4e60203392a3866108ad565b50861561083d565b63fbfc7a9160e01b60005260046000fd5b506001600160a01b0387161561081e565b61144c565b3461014b57604036600319011261014b57610f2c611436565b600435600052600460205260406000209060018060a01b0316600052602052602060ff604060002054166040519015158152f35b3461014b57600036600319011261014b576002546040516001600160a01b039091168152602090f35b3461014b57604036600319011261014b57610fa2611420565b60243590610fae611536565b6001600160a01b031680610fe657508047106105785760008080809360018060a01b038254165af1610fde6114b8565b501561042457005b6040516370a0823160e01b8152306004820152602081602481855afa801561056c578391600091611088575b5010610578576000805460405163a9059cbb60e01b81526001600160a01b039091166004820152602481019390935260209183916044918391905af1908161106b575b5061001b5763022e258160e11b60005260046000fd5b6110839060203d6020116104ac5761049f8183611468565b611055565b9150506020813d6020116110b5575b816110a460209383611468565b8101031261014b5782905184611012565b3d9150611097565b3461014b57600036600319011261014b576000546040516001600160a01b039091168152602090f35b3461014b57600036600319011261014b576110ff611536565b600080546001600160a01b0319811682556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b3461014b57602036600319011261014b577f8c4d35e54a3f2ef1134138fd8ea3daee6a3c89e10d2665996babdf70261e2c76602060043561117e611536565b80600355604051908152a1005b3461014b57600036600319011261014b576020600354604051908152f35b3461014b57604036600319011261014b5760206111c4611420565b6101df6112096111d2611436565b604051928391868301958690916028926001600160601b03199060601b1682526001600160601b03199060601b1660148201520190565b519020604051908152f35b3461014b57602036600319011261014b57602061122f611420565b31604051908152f35b3461014b57604036600319011261014b576112906020611256611420565b61125e611436565b604051636eb1769f60e11b81526001600160a01b03909116600482015230602482015292839190829081906044820190565b03916001600160a01b03165afa801561056c576000906112b6575b602090604051908152f35b506020813d6020116112e1575b816112d060209383611468565b8101031261014b57602090516112ab565b3d91506112c3565b3461014b57604036600319011261014b57611302611420565b61130a611436565b90604051611339816101df6020820194856028916001600160601b03199060601b168152600060148201520190565b519020600052600460205260406000209060018060a01b0316600052602052602060ff604060002054166040519015158152f35b3461014b57602036600319011261014b57602460206001600160a01b03611392611420565b16604051928380926370a0823160e01b82523060048301525afa801561056c576000906112b657602090604051908152f35b3461014b57604036600319011261014b576020816024816113e3611420565b6113eb611436565b6370a0823160e01b83526001600160a01b039081166004840152165afa801561056c576000906112b657602090604051908152f35b600435906001600160a01b038216820361014b57565b602435906001600160a01b038216820361014b57565b3461014b57600036600319011261014b57602047604051908152f35b90601f8019910116810190811067ffffffffffffffff82111761148a57604052565b634e487b7160e01b600052604160045260246000fd5b9081602091031261014b5751801515810361014b5790565b3d156114f3573d9067ffffffffffffffff821161148a57604051916114e7601f8201601f191660200184611468565b82523d6000602084013e565b606090565b9081606091031261014b578051916040602083015192015190565b9190820391821161152057565b634e487b7160e01b600052601160045260246000fd5b6000546001600160a01b0316330361154a57565b63118cdaa760e01b6000523360045260246000fd5b600260015414611570576002600155565b633ee5aeb560e01b60005260046000fdfea2646970667358221220489ff1987f5fa7ec9b58e3e3ccbaeb6f53b3bc7ad54f0f9607f861caeaeebf4764736f6c634300081c00330000000000000000000000004752ba5dbc23f44d87826276bf6fd6b1c372ad2400000000000000000000000080577c7423795f1cd4061a15096a9393c72e1c33000000000000000000000000000000000000000000000000016345785d8a0000