0 txs
585 calls
constructor
No constructor.
functions
areWhiteListRestrictionsEnabled
viewfunction areWhiteListRestrictionsEnabled() view returns (bool)
beforeLiquidityRemoval
viewfunction beforeLiquidityRemoval(address _lp, address _token, uint256 _amount) view
beforeLiquidityTransfer
viewfunction beforeLiquidityTransfer(address, address, address, uint256) view
getMaxCommunityLpPositon
viewfunction getMaxCommunityLpPositon(address _token) view returns (uint256)
isExcludedAddress
viewfunction isExcludedAddress(address) view returns (bool)
isPauser
viewfunction isPauser(address pauser) view returns (bool)
isTrustedForwarder
viewfunction isTrustedForwarder(address forwarder) view returns (bool)
owner
viewfunction owner() view returns (address)
paused
viewfunction paused() view returns (bool)
perTokenTotalCap
viewfunction perTokenTotalCap(address) view returns (uint256)
perTokenWalletCap
viewfunction perTokenWalletCap(address) view returns (uint256)
totalLiquidityByLp
viewfunction totalLiquidityByLp(address, address) view returns (uint256)
beforeLiquidityAddition
nonpayablefunction beforeLiquidityAddition(address _lp, address _token, uint256 _amount)
changePauser
nonpayablefunction changePauser(address newPauser)
initialize
nonpayablefunction initialize(address _trustedForwarder, address _liquidityProviders, address _tokenManager, address _lpToken, address _pauser)
pause
nonpayablefunction pause()
renounceOwnership
nonpayablefunction renounceOwnership()
renouncePauser
nonpayablefunction renouncePauser()
setAreWhiteListRestrictionsEnabled
nonpayablefunction setAreWhiteListRestrictionsEnabled(bool _status)
setCap
nonpayablefunction setCap(address _token, uint256 _totalCap, uint256 _perTokenWalletCap)
setCaps
nonpayablefunction setCaps(address[] _tokens, uint256[] _totalCaps, uint256[] _perTokenWalletCaps)
setIsExcludedAddressStatus
nonpayablefunction setIsExcludedAddressStatus(address[] _addresses, bool[] _status)
setLiquidityProviders
nonpayablefunction setLiquidityProviders(address _liquidityProviders)
setLpToken
nonpayablefunction setLpToken(address _lpToken)
setPerTokenWalletCap
nonpayablefunction setPerTokenWalletCap(address _token, uint256 _perTokenWalletCap)
setTokenManager
nonpayablefunction setTokenManager(address _tokenManager)
setTotalCap
nonpayablefunction setTotalCap(address _token, uint256 _totalCap)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
unpause
nonpayablefunction unpause()
events
ExcludedAddressStatusUpdated
event ExcludedAddressStatusUpdated(address indexed lp, bool indexed status)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
Paused
event Paused(address account)
PauserChanged
event PauserChanged(address indexed previousPauser, address indexed newPauser)
PerTokenWalletCap
event PerTokenWalletCap(address indexed token, uint256 perCommunityWalletCap)
TotalCapUpdated
event TotalCapUpdated(address indexed token, uint256 totalCap)
Unpaused
event Unpaused(address account)
WhiteListStatusUpdated
event WhiteListStatusUpdated(bool status)
errors
No errors.
creation bytecode
0x608060405234801561001057600080fd5b50612243806100206000396000f3fe608060405234801561001057600080fd5b50600436106101cf5760003560e01c80636ef8d66d116101045780639ee933b5116100a2578063e3ab5ade11610071578063e3ab5ade1461039f578063f2fde38b146103a7578063f614d9f8146103ba578063f8454133146103cd576101cf565b80639ee933b514610353578063b6f1332014610366578063d136020614610379578063e23fec911461038c576101cf565b806380f816a7116100de57806380f816a7146103105780638456cb59146103235780638da5cb5b1461032b5780639cbdba3d14610340576101cf565b80636ef8d66d146102ed578063715018a6146102f55780637cb2b79c146102fd576101cf565b806344d1841411610171578063572b6c051161014b578063572b6c05146102ac57806359ca6c01146102bf5780635c975abb146102d2578063645625f3146102da576101cf565b806344d184141461027357806346fbf68e146102865780634fa5569314610299576101cf565b806324a176bb116101ad57806324a176bb146102255780632cd271e7146102455780633281b904146102585780633f4ba83a1461026b576101cf565b806304ca2fe6146101d45780631459457a146101e95780631c97b366146101fc575b600080fd5b6101e76101e2366004611a9f565b6103e0565b005b6101e76101f7366004611a2f565b61044e565b61020f61020a3660046119f7565b610510565b60405161021c9190612134565b60405180910390f35b6102386102333660046119b8565b61052d565b60405161021c9190611dcf565b6101e76102533660046119b8565b610542565b61020f6102663660046119b8565b610573565b6101e7610585565b61020f6102813660046119b8565b6105b4565b6102386102943660046119b8565b6105c6565b6101e76102a7366004611b5a565b6105da565b6102386102ba3660046119b8565b610632565b6101e76102cd3660046119b8565b610646565b61023861068e565b6101e76102e8366004611aef565b610698565b6101e7610702565b6101e7610771565b6101e761030b3660046119b8565b6107ba565b6101e761031e366004611cd4565b610802565b6101e7610893565b6103336108c0565b60405161021c9190611dbb565b6101e761034e366004611b8e565b6108cf565b6101e76103613660046119b8565b610a56565b6101e7610374366004611b2f565b610a9e565b6101e7610387366004611b2f565b610c76565b6101e761039a366004611aef565b610da3565b610238610e0d565b6101e76103b53660046119b8565b610e1d565b61020f6103c83660046119b8565b610e8b565b6101e76103db366004611c50565b611001565b60cc546001600160a01b03166103f461110a565b6001600160a01b0316146104235760405162461bcd60e51b815260040161041a9061208c565b60405180910390fd5b61042b61068e565b156104485760405162461bcd60e51b815260040161041a90611f16565b50505050565b600054610100900460ff1680610467575060005460ff16155b6104835760405162461bcd60e51b815260040161041a90611f40565b600054610100900460ff161580156104ae576000805460ff1961ff0019909116610100171660011790555b6104b786611119565b6104bf6111a0565b6104c882611224565b60cc805460ff60a01b1916600160a01b1790556104e4856112e2565b6104ed84611304565b6104f683611326565b8015610508576000805461ff00191690555b505050505050565b60cf60209081526000928352604080842090915290825290205481565b60cd6020526000908152604090205460ff1681565b61054b336105c6565b6105675760405162461bcd60e51b815260040161041a906120e4565b61057081611348565b50565b60d06020526000908152604090205481565b61058e336105c6565b6105aa5760405162461bcd60e51b815260040161041a906120e4565b6105b26113b7565b565b60d16020526000908152604090205481565b6097546001600160a01b0390811691161490565b6105e261110a565b6001600160a01b03166105f36108c0565b6001600160a01b0316146106195760405162461bcd60e51b815260040161041a90611ff3565b6106238383610a9e565b61062d8382610c76565b505050565b6098546001600160a01b0390811691161490565b61064e61110a565b6001600160a01b031661065f6108c0565b6001600160a01b0316146106855760405162461bcd60e51b815260040161041a90611ff3565b610570816112e2565b60655460ff165b90565b60ca546001600160a01b03166106ac61110a565b6001600160a01b0316146106d25760405162461bcd60e51b815260040161041a9061208c565b6106da61068e565b156106f75760405162461bcd60e51b815260040161041a90611f16565b61062d838383611425565b61070b336105c6565b6107275760405162461bcd60e51b815260040161041a906120e4565b6097546040516000916001600160a01b0316907f95bb211a5a393c4d30c3edc9a745825fba4e6ad3e3bb949e6bf8ccdfe431a811908390a3609780546001600160a01b0319169055565b61077961110a565b6001600160a01b031661078a6108c0565b6001600160a01b0316146107b05760405162461bcd60e51b815260040161041a90611ff3565b6105b260006114eb565b6107c261110a565b6001600160a01b03166107d36108c0565b6001600160a01b0316146107f95760405162461bcd60e51b815260040161041a90611ff3565b61057081611304565b61080a61110a565b6001600160a01b031661081b6108c0565b6001600160a01b0316146108415760405162461bcd60e51b815260040161041a90611ff3565b60cc805460ff60a01b1916600160a01b831515021790556040517f2b35d8fbed5bcf6ff37cd2cf6a0b23f33cd33efa62eab2329d3a05a16fe7caee90610888908390611dcf565b60405180910390a150565b61089c336105c6565b6108b85760405162461bcd60e51b815260040161041a906120e4565b6105b261153d565b6033546001600160a01b031690565b6108d761110a565b6001600160a01b03166108e86108c0565b6001600160a01b03161461090e5760405162461bcd60e51b815260040161041a90611ff3565b805182511461092f5760405162461bcd60e51b815260040161041a90611f8e565b815160005b818110156104485782818151811061095c57634e487b7160e01b600052603260045260246000fd5b602002602001015160cd600086848151811061098857634e487b7160e01b600052603260045260246000fd5b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060006101000a81548160ff0219169083151502179055508281815181106109e757634e487b7160e01b600052603260045260246000fd5b60200260200101511515848281518110610a1157634e487b7160e01b600052603260045260246000fd5b60200260200101516001600160a01b03167f3b2137fe446a3f8bb68b73e0289caf895d9b3766a9ceebe64e76d5b4ea6aa79c60405160405180910390a3600101610934565b610a5e61110a565b6001600160a01b0316610a6f6108c0565b6001600160a01b031614610a955760405162461bcd60e51b815260040161041a90611ff3565b61057081611326565b816001600160a01b038116610ac55760405162461bcd60e51b815260040161041a90611eaf565b610ace81611598565b610aea5760405162461bcd60e51b815260040161041a9061205f565b610af261110a565b6001600160a01b0316610b036108c0565b6001600160a01b031614610b295760405162461bcd60e51b815260040161041a90611ff3565b60ca54604051630b3524e360e41b815283916001600160a01b03169063b3524e3090610b59908790600401611dbb565b60206040518083038186803b158015610b7157600080fd5b505afa158015610b85573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ba99190611da3565b1115610bc75760405162461bcd60e51b815260040161041a90611e08565b6001600160a01b038316600090815260d16020526040902054821015610bff5760405162461bcd60e51b815260040161041a90611ee6565b6001600160a01b038316600090815260d06020526040902054821461062d576001600160a01b038316600081815260d0602052604090819020849055517f3aa2b0bd7801c6da16d7df31a52b6a76f235f563c24248d2329a393dc053601990610c69908590612134565b60405180910390a2505050565b816001600160a01b038116610c9d5760405162461bcd60e51b815260040161041a90611eaf565b610ca681611598565b610cc25760405162461bcd60e51b815260040161041a9061205f565b610cca61110a565b6001600160a01b0316610cdb6108c0565b6001600160a01b031614610d015760405162461bcd60e51b815260040161041a90611ff3565b6001600160a01b038316600090815260d06020526040902054821115610d395760405162461bcd60e51b815260040161041a90611e85565b6001600160a01b038316600090815260d16020526040902054821461062d576001600160a01b038316600081815260d1602052604090819020849055517f655d8d8c3795ff326faea43770f29b708423d22996c54a6c17e44adeb320dcd090610c69908590612134565b60ca546001600160a01b0316610db761110a565b6001600160a01b031614610ddd5760405162461bcd60e51b815260040161041a9061208c565b610de561068e565b15610e025760405162461bcd60e51b815260040161041a90611f16565b61062d83838361062d565b60cc54600160a01b900460ff1681565b610e2561110a565b6001600160a01b0316610e366108c0565b6001600160a01b031614610e5c5760405162461bcd60e51b815260040161041a90611ff3565b6001600160a01b038116610e825760405162461bcd60e51b815260040161041a90611e3f565b610570816114eb565b60008060cc60009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015610edc57600080fd5b505afa158015610ef0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f149190611da3565b9050600060015b828111610ff9576001600160a01b03808616600090815260cf602052604080822060cc5491516331a9108f60e11b815292939092849290911690636352211e90610f69908790600401612134565b60206040518083038186803b158015610f8157600080fd5b505afa158015610f95573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fb991906119db565b6001600160a01b03166001600160a01b0316815260200190815260200160002054905082811115610fe8578092505b50610ff2816121a3565b9050610f1b565b509392505050565b61100961110a565b6001600160a01b031661101a6108c0565b6001600160a01b0316146110405760405162461bcd60e51b815260040161041a90611ff3565b81518351148015611052575080518251145b61106e5760405162461bcd60e51b815260040161041a906120b7565b825160005b81811015611103576110fb85828151811061109e57634e487b7160e01b600052603260045260246000fd5b60200260200101518583815181106110c657634e487b7160e01b600052603260045260246000fd5b60200260200101518584815181106110ee57634e487b7160e01b600052603260045260246000fd5b60200260200101516105da565b600101611073565b5050505050565b6000611114611623565b905090565b600054610100900460ff1680611132575060005460ff16155b61114e5760405162461bcd60e51b815260040161041a90611f40565b600054610100900460ff16158015611179576000805460ff1961ff0019909116610100171660011790555b611181611651565b61118a826116c4565b801561119c576000805461ff00191690555b5050565b600054610100900460ff16806111b9575060005460ff16155b6111d55760405162461bcd60e51b815260040161041a90611f40565b600054610100900460ff16158015611200576000805460ff1961ff0019909116610100171660011790555b611208611651565b611210611754565b8015610570576000805461ff001916905550565b600054610100900460ff168061123d575060005460ff16155b6112595760405162461bcd60e51b815260040161041a90611f40565b600054610100900460ff16158015611284576000805460ff1961ff0019909116610100171660011790555b6001600160a01b0382166112aa5760405162461bcd60e51b815260040161041a90612028565b6112b26117c4565b609780546001600160a01b0319166001600160a01b038416179055801561119c576000805461ff00191690555050565b60ca80546001600160a01b0319166001600160a01b0392909216919091179055565b60cb80546001600160a01b0319166001600160a01b0392909216919091179055565b60cc80546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03811661135b57600080fd5b6097546040516001600160a01b038084169216907f95bb211a5a393c4d30c3edc9a745825fba4e6ad3e3bb949e6bf8ccdfe431a81190600090a3609780546001600160a01b0319166001600160a01b0392909216919091179055565b6113bf61068e565b6113db5760405162461bcd60e51b815260040161041a90611dda565b6065805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa61140e61110a565b60405161141b9190611dbb565b60405180910390a1565b6001600160a01b03808316600090815260d06020526040908190205460ca549151630b3524e360e41b81526114cf9391928592169063b3524e309061146e908890600401611dbb565b60206040518083038186803b15801561148657600080fd5b505afa15801561149a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114be9190611da3565b6114c8919061218b565b1115611834565b61062d5760405162461bcd60e51b815260040161041a90611fbc565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b61154561068e565b156115625760405162461bcd60e51b815260040161041a90611f16565b6065805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25861140e61110a565b60cb54604051633e978aaf60e21b81526000916001600160a01b03169063fa5e2abc906115c9908590600401611dbb565b60c06040518083038186803b1580156115e157600080fd5b505afa1580156115f5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116199190611cf0565b6020015192915050565b600061162e33610632565b15611642575060131936013560601c610695565b61164a611867565b9050610695565b600054610100900460ff168061166a575060005460ff16155b6116865760405162461bcd60e51b815260040161041a90611f40565b600054610100900460ff16158015611210576000805460ff1961ff0019909116610100171660011790558015610570576000805461ff001916905550565b600054610100900460ff16806116dd575060005460ff16155b6116f95760405162461bcd60e51b815260040161041a90611f40565b600054610100900460ff16158015611724576000805460ff1961ff0019909116610100171660011790555b609880546001600160a01b0319166001600160a01b038416179055801561119c576000805461ff00191690555050565b600054610100900460ff168061176d575060005460ff16155b6117895760405162461bcd60e51b815260040161041a90611f40565b600054610100900460ff161580156117b4576000805460ff1961ff0019909116610100171660011790555b6112106117bf61110a565b6114eb565b600054610100900460ff16806117dd575060005460ff16155b6117f95760405162461bcd60e51b815260040161041a90611f40565b600054610100900460ff16158015611824576000805460ff1961ff0019909116610100171660011790555b61182c611651565b61121061186b565b60cc54600090600160a01b900460ff161580611861575060cc54600160a01b900460ff1680156118615750815b92915050565b3390565b600054610100900460ff1680611884575060005460ff16155b6118a05760405162461bcd60e51b815260040161041a90611f40565b600054610100900460ff161580156118cb576000805460ff1961ff0019909116610100171660011790555b6065805460ff191690558015610570576000805461ff001916905550565b600082601f8301126118f9578081fd5b8135602061190e61190983612167565b61213d565b828152818101908583018385028701840188101561192a578586fd5b855b8581101561195157813561193f816121ea565b8452928401929084019060010161192c565b5090979650505050505050565b600082601f83011261196e578081fd5b8135602061197e61190983612167565b828152818101908583018385028701840188101561199a578586fd5b855b858110156119515781358452928401929084019060010161199c565b6000602082840312156119c9578081fd5b81356119d4816121ea565b9392505050565b6000602082840312156119ec578081fd5b81516119d4816121ea565b60008060408385031215611a09578081fd5b8235611a14816121ea565b91506020830135611a24816121ea565b809150509250929050565b600080600080600060a08688031215611a46578081fd5b8535611a51816121ea565b94506020860135611a61816121ea565b93506040860135611a71816121ea565b92506060860135611a81816121ea565b91506080860135611a91816121ea565b809150509295509295909350565b60008060008060808587031215611ab4578384fd5b8435611abf816121ea565b93506020850135611acf816121ea565b92506040850135611adf816121ea565b9396929550929360600135925050565b600080600060608486031215611b03578283fd5b8335611b0e816121ea565b92506020840135611b1e816121ea565b929592945050506040919091013590565b60008060408385031215611b41578182fd5b8235611b4c816121ea565b946020939093013593505050565b600080600060608486031215611b6e578081fd5b8335611b79816121ea565b95602085013595506040909401359392505050565b60008060408385031215611ba0578182fd5b823567ffffffffffffffff80821115611bb7578384fd5b611bc3868387016118e9565b9350602091508185013581811115611bd9578384fd5b85019050601f81018613611beb578283fd5b8035611bf961190982612167565b81815283810190838501858402850186018a1015611c15578687fd5b8694505b83851015611c40578035611c2c816121ff565b835260019490940193918501918501611c19565b5080955050505050509250929050565b600080600060608486031215611c64578081fd5b833567ffffffffffffffff80821115611c7b578283fd5b611c87878388016118e9565b94506020860135915080821115611c9c578283fd5b611ca88783880161195e565b93506040860135915080821115611cbd578283fd5b50611cca8682870161195e565b9150509250925092565b600060208284031215611ce5578081fd5b81356119d4816121ff565b600081830360c0811215611d02578182fd5b6040805160a0810167ffffffffffffffff8282108183111715611d2757611d276121d4565b90835285518252602086015190611d3d826121ff565b81602084015283870151848401526060870151606084015283607f1986011215611d65578586fd5b8351945083850191508482108183111715611d8257611d826121d4565b50909152608084810151835260a09094015160208301529283015250919050565b600060208284031215611db4578081fd5b5051919050565b6001600160a01b0391909116815260200190565b901515815260200190565b60208082526014908201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b604082015260600190565b6020808252601b908201527f4552525f5f544f54414c5f4341505f4c4553535f5448414e5f534c0000000000604082015260600190565b60208082526026908201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160408201526564647265737360d01b606082015260800190565b60208082526010908201526f4552525f5f5057435f47545f5054544360801b604082015260600190565b60208082526019908201527f546f6b656e20616464726573732063616e6e6f74206265203000000000000000604082015260600190565b6020808252601690820152754552525f5f544f54414c5f4341505f4c545f5054574360501b604082015260600190565b60208082526010908201526f14185d5cd8589b194e881c185d5cd95960821b604082015260600190565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b60208082526014908201527308aa4a4bebe988a9c8ea890be9a92a69a82a886960631b604082015260600190565b6020808252601b908201527f4552525f5f4c49515549444954595f455843454544535f505454430000000000604082015260600190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6020808252601a908201527f50617573657220416464726573732063616e6e6f742062652030000000000000604082015260600190565b602080825260139082015272151bdad95b881b9bdd081cdd5c1c1bdc9d1959606a1b604082015260600190565b60208082526011908201527011549497d7d5539055551213d492569151607a1b604082015260600190565b60208082526013908201527208aa4a4bebe988a9c8ea890be9a92a69a82869606b1b604082015260600190565b60208082526030908201527f4f6e6c792070617573657220697320616c6c6f77656420746f20706572666f7260408201526f36903a3434b99037b832b930ba34b7b760811b606082015260800190565b90815260200190565b60405181810167ffffffffffffffff8111828210171561215f5761215f6121d4565b604052919050565b600067ffffffffffffffff821115612181576121816121d4565b5060209081020190565b6000821982111561219e5761219e6121be565b500190565b60006000198214156121b7576121b76121be565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b038116811461057057600080fd5b801515811461057057600080fdfea26469706673582212205bce85cd5989a2aec7318651565ab110aa5e81a8a178317c30fcc998862451d064736f6c63430008000033