6 txs
152 calls
constructor
constructor(address _systemRegistry)
functions
accessController
viewfunction accessController() view returns (address)
getDescription
purefunction getDescription() pure returns (string)
getSystemRegistry
viewfunction getSystemRegistry() view returns (address)
remapLookup
viewfunction remapLookup(address) view returns (address)
tokenLookupPools
viewfunction tokenLookupPools(address) view returns (uint8 remapAsset)
getSafeSpotPriceInfo
nonpayablefunction getSafeSpotPriceInfo(address pool, address lpToken, address quoteToken) returns (uint256 totalSupply, tuple[] reserves)
getSpotPrice
nonpayablefunction getSpotPrice(address token, address pool, address requestedQuoteToken) returns (uint256 price, address actualQuoteToken)
registerPool
nonpayablefunction registerPool(address baseAsset, address[] pools, address mapLookup)
unregisterPool
nonpayablefunction unregisterPool(address baseAsset)
events
TokenLookupPoolRegistered
event TokenLookupPoolRegistered(address token, address[] pools)
TokenLookupPoolUnregistered
event TokenLookupPoolUnregistered(address token)
errors
AccessDenied
error AccessDenied()
InvalidParam
error InvalidParam(string paramName)
TokenMismatch
error TokenMismatch(address token1, address token2)
UndefinedAddress
error UndefinedAddress()
ZeroAddress
error ZeroAddress(string paramName)
creation bytecode
0x60c060405234801562000010575f80fd5b50604051620016f4380380620016f4833981016040819052620000339162000162565b806001600160a01b031663bc43cbaf6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000070573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019062000096919062000162565b81620000d0816040518060400160405280600f81526020016e5f73797374656d526567697374727960881b8152506200011160201b60201c565b6001600160a01b039081166080528116620000fe57604051630cbe126f60e11b815260040160405180910390fd5b6001600160a01b031660a05250620001d5565b6001600160a01b03821662000146578060405163eac0d38960e01b81526004016200013d919062000187565b60405180910390fd5b5050565b6001600160a01b03811681146200015f575f80fd5b50565b5f6020828403121562000173575f80fd5b815162000180816200014a565b9392505050565b5f602080835283518060208501525f5b81811015620001b55785810183015185820160400152820162000197565b505f604082860101526040601f19601f8301168501019250505092915050565b60805160a0516114e86200020c5f395f81816101690152818161024701526104e001525f81816101e50152610bc301526114e85ff3fe608060405234801561000f575f80fd5b5060043610610090575f3560e01c8063ada61cc311610063578063ada61cc314610151578063bc43cbaf14610164578063c2889cd81461018b578063da83972f146101c2578063f12baf5c146101e3575f80fd5b80631a092541146100945780632316bff1146100cc5780632acf20e01461010c57806375075ad514610121575b5f80fd5b604080518082018252600d81526c0d0d8c8d939bdb931c14dc1bdd609a1b602082015290516100c39190610fff565b60405180910390f35b6100f46100da36600461106f565b60016020525f90815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020016100c3565b61011f61011a3660046110a5565b610209565b005b61013461012f366004611189565b610473565b604080519283526001600160a01b039091166020830152016100c3565b61011f61015f36600461106f565b6104a2565b6100f47f000000000000000000000000000000000000000000000000000000000000000081565b6101b061019936600461106f565b5f6020819052908152604090206001015460ff1681565b60405160ff90911681526020016100c3565b6101d56101d0366004611189565b6106f7565b6040516100c39291906111d1565b7f00000000000000000000000000000000000000000000000000000000000000006100f4565b604051632474521560e21b81527fced6982f480260bdd8ad5cb18ff2854f0306d78d904ad6cc107e8f3a0f526c1860048201819052336024830152907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906391d1485490604401602060405180830381865afa158015610294573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102b8919061124c565b6102d557604051634ca8886760e01b815260040160405180910390fd5b825160408051808201909152600981526818985cd9505cdcd95d60ba1b602082015261030290869061087d565b61032b81604051806040016040528060078152602001663837b7b62632b760c91b8152506108b3565b5f5b8181101561037c5761037485828151811061034a5761034a61126b565b6020026020010151604051806040016040528060048152602001631c1bdbdb60e21b81525061087d565b60010161032d565b507fb0df32d5b4409b943870c32dea3d4f58679a63a1ddd9ba95da225954b7e68a4d85856040516103ae92919061127f565b60405180910390a160408051808201909152848152602081016001600160a01b038516156103dd5760016103df565b5f5b60ff1690526001600160a01b0386165f9081526020818152604090912082518051919261041192849290910190610f6a565b50602091909101516001909101805460ff191660ff9092169190911790556001600160a01b0383161561046c576001600160a01b038581165f90815260016020526040902080546001600160a01b0319169185169190911790555b5050505050565b5f80610495858585876001600160a01b0316896001600160a01b0316146108d5565b5090969095509350505050565b604051632474521560e21b81527fced6982f480260bdd8ad5cb18ff2854f0306d78d904ad6cc107e8f3a0f526c1860048201819052336024830152907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906391d1485490604401602060405180830381865afa15801561052d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610551919061124c565b61056e57604051634ca8886760e01b815260040160405180910390fd5b610599826040518060400160405280600981526020016818985cd9505cdcd95d60ba1b81525061087d565b6001600160a01b0382165f9081526020818152604080832081518154606094810282018501845292810183815290939192849284919084018282801561060657602002820191905f5260205f20905b81546001600160a01b031681526001909101906020018083116105e8575b50505091835250506001919091015460ff1660209182015281515160408051808201909152600c81526b195e1a5cdd1a5b99d41bdbdb60a21b9281019290925291925061065391906108b3565b6040516001600160a01b03841681527fac237d966f91a2b4e80474772afac93765f473b5b7f238db0b3e94a73ecb35919060200160405180910390a1806020015160ff166001036106c4576001600160a01b0383165f90815260016020526040902080546001600160a01b03191690555b6001600160a01b0383165f908152602081905260408120906106e68282610fcd565b50600101805460ff19169055505050565b5f60606107048486610cd0565b836001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610740573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061076491906112da565b91505f806107748688875f6108d5565b6040805160018082528183019092529395509093509050816020015b604080516080810182525f8082526020808301829052928201819052606082015282525f199092019101816107905790505092506040518060800160405280826001600160a01b03168152602001876001600160a01b03166301e1d1146040518163ffffffff1660e01b8152600401602060405180830381865afa15801561081a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061083e91906112da565b8152602001838152602001866001600160a01b0316815250835f815181106108685761086861126b565b60200260200101819052505050935093915050565b6001600160a01b0382166108af578060405163eac0d38960e01b81526004016108a69190610fff565b60405180910390fd5b5050565b815f036108af5780604051634389d5ab60e01b81526004016108a69190610fff565b5f805f856001600160a01b03166338d52e0f6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610914573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061093891906112f1565b90505f866001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610977573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061099b919061130c565b90505f826001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109da573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109fe919061130c565b90505f6001600160a01b0389166307a2d13a610a1b85600a611422565b6040518263ffffffff1660e01b8152600401610a3991815260200190565b602060405180830381865afa158015610a54573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a7891906112da565b9050886001600160a01b03168a6001600160a01b031614610add57836001600160a01b03168a6001600160a01b031614610add57604051634389d5ab60e01b81526020600482015260056024820152643a37b5b2b760d91b60448201526064016108a6565b6001600160a01b0384165f90815260208181526040808320815181546060948102820185018452928101838152909391928492849190840182828015610b4a57602002820191905f5260205f20905b81546001600160a01b03168152600190910190602001808311610b2c575b50505091835250506001919091015460ff166020918201528151516040805180820190915260078152663837b7b62632b760c91b92810192909252919250610b939082906108b3565b816020015160ff16600103610bc0576001600160a01b039586165f90815260016020526040902054909516945b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f3c274f76040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c1d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c4191906112f1565b90505f5b82811015610c8957610c758289865f01518481518110610c6757610c6761126b565b60200260200101518f610d15565b610c7f908b611430565b9950600101610c45565b50610c94828a611443565b98508915610cbe57610ca785600a611422565b610cb18a86611462565b610cbb9190611443565b98505b50969b989a5093985050505050505050565b806001600160a01b0316826001600160a01b0316146108af5760405163f902523f60e01b81526001600160a01b038084166004830152821660248201526044016108a6565b604051630ae710a560e21b81526001600160a01b0383811660048301525f918291871690632b9c429490602401602060405180830381865afa158015610d5d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d8191906112f1565b9050610daf816040518060400160405280600a81526020016973706f744f7261636c6560b01b81525061087d565b6040516375075ad560e01b81526001600160a01b038681166004830152858116602483015284811660448301525f9182918416906375075ad59060640160408051808303815f875af1158015610e07573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e2b9190611479565b91509150610e3b88868385610e49565b93505050505b949350505050565b5f836001600160a01b0316836001600160a01b031603610e6a575080610e41565b5f836001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ea7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ecb919061130c565b60ff169050610edb81600a6114a7565b6040516315116d1f60e21b81526001600160a01b0386811660048301528781166024830152881690635445b47c906044016020604051808303815f875af1158015610f28573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f4c91906112da565b610f569085611462565b610f609190611443565b9695505050505050565b828054828255905f5260205f20908101928215610fbd579160200282015b82811115610fbd57825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190610f88565b50610fc9929150610feb565b5090565b5080545f8255905f5260205f2090810190610fe89190610feb565b50565b5b80821115610fc9575f8155600101610fec565b5f602080835283518060208501525f5b8181101561102b5785810183015185820160400152820161100f565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610fe8575f80fd5b803561106a8161104b565b919050565b5f6020828403121561107f575f80fd5b813561108a8161104b565b9392505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156110b7575f80fd5b83356110c28161104b565b925060208481013567ffffffffffffffff808211156110df575f80fd5b818701915087601f8301126110f2575f80fd5b81358181111561110457611104611091565b8060051b604051601f19603f8301168101818110858211171561112957611129611091565b60405291825284820192508381018501918a831115611146575f80fd5b938501935b8285101561116b5761115c8561105f565b8452938501939285019261114b565b8097505050505050506111806040850161105f565b90509250925092565b5f805f6060848603121561119b575f80fd5b83356111a68161104b565b925060208401356111b68161104b565b915060408401356111c68161104b565b809150509250925092565b5f604080830185845260206040602086015281865180845260609350606087019150602088015f5b8281101561123d57815180516001600160a01b03908116865286820151878701528882015189870152908701511686850152608090930192908401906001016111f9565b50919998505050505050505050565b5f6020828403121561125c575f80fd5b8151801515811461108a575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6001600160a01b0383811682526040602080840182905284519184018290525f92858201929091906060860190855b818110156112cc5785518516835294830194918301916001016112ae565b509098975050505050505050565b5f602082840312156112ea575f80fd5b5051919050565b5f60208284031215611301575f80fd5b815161108a8161104b565b5f6020828403121561131c575f80fd5b815160ff8116811461108a575f80fd5b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561137a57815f19048211156113605761136061132c565b8085161561136d57918102915b93841c9390800290611345565b509250929050565b5f826113905750600161141c565b8161139c57505f61141c565b81600181146113b257600281146113bc576113d8565b600191505061141c565b60ff8411156113cd576113cd61132c565b50506001821b61141c565b5060208310610133831016604e8410600b84101617156113fb575081810a61141c565b6114058383611340565b805f19048211156114185761141861132c565b0290505b92915050565b5f61108a60ff841683611382565b8082018082111561141c5761141c61132c565b5f8261145d57634e487b7160e01b5f52601260045260245ffd5b500490565b808202811582820484141761141c5761141c61132c565b5f806040838503121561148a575f80fd5b82519150602083015161149c8161104b565b809150509250929050565b5f61108a838361138256fea2646970667358221220313e3944c6e69931d6d98e78c78f6ce737f0699f67124b5281feec68a7aa196d64736f6c634300081800330000000000000000000000002218f90a98b0c070676f249ef44834686daa4285