2 txs
3.2k calls
constructor
constructor()
functions
echoCardPriceLocked
viewfunction echoCardPriceLocked() view returns (bool)
echoCards
viewfunction echoCards() view returns (address)
echoCardsPrice
viewfunction echoCardsPrice() view returns (address)
getParallelAlphaToEchos
viewfunction getParallelAlphaToEchos(uint256[] _ids, uint256[] _amounts) view returns (uint256[] _echosIds, uint256[] _echosAmounts)
isDisabled
viewfunction isDisabled() view returns (bool)
nonces
viewfunction nonces(address) view returns (uint256)
owner
viewfunction owner() view returns (address)
parallelAlphaToEchos
viewfunction parallelAlphaToEchos(uint256) view returns (uint256)
prime
viewfunction prime() view returns (address)
trustedSigner
viewfunction trustedSigner() view returns (address)
handleInvokeEchelon
payablefunction handleInvokeEchelon(address _from, address, address, uint256, uint256, uint256 _primeValue, bytes _data) payable
lockEchoCardsPrice
nonpayablefunction lockEchoCardsPrice()
renounceOwnership
nonpayablefunction renounceOwnership()
setDisabled
nonpayablefunction setDisabled(bool _isDisabled)
setEchoCards
nonpayablefunction setEchoCards(address _echoCards)
setEchoCardsPrice
nonpayablefunction setEchoCardsPrice(address _echoCardsPrice)
setParallelAlphaToEchos
nonpayablefunction setParallelAlphaToEchos(uint256[] _parallelAlphaIds, uint256[] _echosIds)
setPrime
nonpayablefunction setPrime(address _prime)
setTrustedSigner
nonpayablefunction setTrustedSigner(address _trustedSigner)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
events
EchoCardsPayment
event EchoCardsPayment(address indexed from, uint256 indexed nonce, uint256 totalPrice, uint256[] ids, uint256[] amounts, bytes signature)
EchoCardsPriceLockedSet
event EchoCardsPriceLockedSet()
EchoCardsPriceSet
event EchoCardsPriceSet(address indexed echoCardsPrice)
EchoCardsSet
event EchoCardsSet(address indexed echoCards)
IsDisabledSet
event IsDisabledSet(bool newDisabledState)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
ParallelAlphaToEchosSet
event ParallelAlphaToEchosSet(uint256[] parallelAlphaIds, uint256[] echosIds)
PrimeAddressSet
event PrimeAddressSet(address indexed newPrimeAddress)
TrustedSignerSet
event TrustedSignerSet(address indexed newTrustedSigner)
errors
ContractDisabled
error ContractDisabled()
EchoCardsPriceLocked
error EchoCardsPriceLocked()
InvalidId
error InvalidId(uint256 parallelAlphaId)
InvalidLength
error InvalidLength()
InvalidPayment
error InvalidPayment()
InvalidPrimeAddress
error InvalidPrimeAddress()
InvalidSig
error InvalidSig(bytes _signature)
creation bytecode
0x610140604052600180546001600160a01b03191673fa980ced6895ac314e7de34ef1bfae90a5add21b17905534801561003757600080fd5b506040518060400160405280600a8152602001694563686f20436172647360b01b815250604051806040016040528060058152602001640312e302e360dc1b81525061008f61008a61012360201b60201c565b610127565b815160209283012081519183019190912060e08290526101008190524660a0818152604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f818801819052818301969096526060810194909452608080850193909352308483018190528151808603909301835260c09485019091528151919095012090529190915261012052610177565b3390565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60805160a05160c05160e05161010051610120516119946101c66000396000610f5001526000610f9f01526000610f7a01526000610ed301526000610efd01526000610f2701526119946000f3fe60806040526004361061011f5760003560e01c80637ecebe00116100a0578063da28a72111610064578063da28a7211461032b578063ea48605714610359578063f2fde38b14610386578063f74d5480146103a6578063f75449f1146103c657600080fd5b80637ecebe00146102715780638da5cb5b146102ac578063a748405c146102ca578063c7ee005e146102eb578063c9e18c6f1461030b57600080fd5b8063584b1f0d116100e7578063584b1f0d146101d657806369c0b0e1146101f65780636c57f5a91461020b5780636c5a7d1e1461023c578063715018a61461025c57600080fd5b806326bd94c4146101245780633552c80f146101465780634ceb6dfe146101665780635534732d1461017957806356a1c701146101b6575b600080fd5b34801561013057600080fd5b5061014461013f366004611255565b6103e6565b005b34801561015257600080fd5b50610144610161366004611255565b610463565b6101446101743660046112e8565b6104b5565b34801561018557600080fd5b50600554610199906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b3480156101c257600080fd5b506101446101d1366004611255565b610799565b3480156101e257600080fd5b506101446101f1366004611402565b6107eb565b34801561020257600080fd5b506101446108bd565b34801561021757600080fd5b5060015461022c90600160a01b900460ff1681565b60405190151581526020016101ad565b34801561024857600080fd5b5061014461025736600461146e565b610903565b34801561026857600080fd5b50610144610966565b34801561027d57600080fd5b5061029e61028c366004611255565b60026020526000908152604090205481565b6040519081526020016101ad565b3480156102b857600080fd5b506000546001600160a01b0316610199565b3480156102d657600080fd5b5060065461022c90600160a01b900460ff1681565b3480156102f757600080fd5b50600154610199906001600160a01b031681565b34801561031757600080fd5b50610144610326366004611255565b61097a565b34801561033757600080fd5b5061034b61034636600461151a565b6109cc565b6040516101ad9291906115b9565b34801561036557600080fd5b5061029e6103743660046115e7565b60036020526000908152604090205481565b34801561039257600080fd5b506101446103a1366004611255565b610c1d565b3480156103b257600080fd5b50600454610199906001600160a01b031681565b3480156103d257600080fd5b50600654610199906001600160a01b031681565b6103ee610c96565b600654600160a01b900460ff1615610419576040516327375e4160e21b815260040160405180910390fd5b600580546001600160a01b0319166001600160a01b0383169081179091556040517f2446a258bd9287bd4021a7322052669b8576e132404320fb76e26f7be108da4a90600090a250565b61046b610c96565b600680546001600160a01b0319166001600160a01b0383169081179091556040517fbdb56adb1447efd36f660795b5ce7812c370f4ad7c666224624eda54b451a3d790600090a250565b600154600160a01b900460ff16156104e0576040516303b14e6560e51b815260040160405180910390fd5b6001546001600160a01b0316336001600160a01b03161461051457604051631b81da0760e01b815260040160405180910390fd5b60008060008380602001905181019061052d919061167f565b92509250925061053f83838c84610cf0565b61056757806040516369961e4f60e11b815260040161055e919061176f565b60405180910390fd5b6001600160a01b038a166000908152600260205260408120805460019290610590908490611798565b90915550506000806105a285856109cc565b90925090506000805b83518110156106975760008482815181106105c8576105c86117ab565b6020026020010151905060008483815181106105e6576105e66117ab565b602090810291909101015160055460405163cabb21ed60e01b8152600481018590526024810183905291925082916001600160a01b039091169063cabb21ed906044016020604051808303816000875af1158015610648573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061066c91906117c1565b61067691906117da565b6106809085611798565b93505050808061068f906117f1565b9150506105ab565b50878111156106b95760405163078d696560e31b815260040160405180910390fd5b600660009054906101000a90046001600160a01b03166001600160a01b0316639e05f2718e85856040518463ffffffff1660e01b81526004016106fe9392919061180a565b600060405180830381600087803b15801561071857600080fd5b505af115801561072c573d6000803e3d6000fd5b5050506001600160a01b038e16600081815260026020526040908190205490519092507f4b231b48e0763a73b3d23567b01a90f2e0066fb6b8692da1448f76664b31570190610782908590889088908b9061185c565b60405180910390a350505050505050505050505050565b6107a1610c96565b600480546001600160a01b0319166001600160a01b0383169081179091556040517f65b80efdb610be9fc8e0cc1ab30c9f0b98b538c1392f298ec6ff69ae0768b74e90600090a250565b6107f3610c96565b8281146108135760405163251f56a160e21b815260040160405180910390fd5b60005b8381101561087957828282818110610830576108306117ab565b905060200201356003600087878581811061084d5761084d6117ab565b905060200201358152602001908152602001600020819055508080610871906117f1565b915050610816565b507fe73421e73c7eeedbecb885db633940ce0a6f265f80ac7ec89a09a90ecb56aeff848484846040516108af94939291906118d8565b60405180910390a150505050565b6108c5610c96565b6006805460ff60a01b1916600160a01b1790556040517f1ae84ba209f04f2c39abbcddda4c4b7b039275bc35dcf4dcc2546e907db6b62590600090a1565b61090b610c96565b6001805460ff60a01b1916600160a01b8315158102919091179182905560405160ff9190920416151581527f0f2d85ce3010f9e00316762c7efe4ab1dbe6792d10c007c31f0def3339b663979060200160405180910390a150565b61096e610c96565b6109786000610dfe565b565b610982610c96565b600180546001600160a01b0319166001600160a01b0383169081179091556040517f6f45bf27e8660e4f757981edcc8981852feb4cda73d7af2637c107f3f0130c9690600090a250565b60608082518451146109f15760405163251f56a160e21b815260040160405180910390fd5b835167ffffffffffffffff811115610a0b57610a0b611279565b604051908082528060200260200182016040528015610a34578160200160208202803683370190505b509150825167ffffffffffffffff811115610a5157610a51611279565b604051908082528060200260200182016040528015610a7a578160200160208202803683370190505b5090506000805b8551811015610bef57600060036000888481518110610aa257610aa26117ab565b6020026020010151815260200190815260200160002054905080600003610af957868281518110610ad557610ad56117ab565b602002602001015160405163725238c160e11b815260040161055e91815260200190565b6000868381518110610b0d57610b0d6117ab565b602002602001015190506000805b85811015610b885783888281518110610b3657610b366117ab565b602002602001015103610b765782878281518110610b5657610b566117ab565b60200260200101818151610b6a9190611798565b90525060019150610b88565b80610b80816117f1565b915050610b1b565b5080610bd95782878681518110610ba157610ba16117ab565b60200260200101818152505081868681518110610bc057610bc06117ab565b6020908102919091010152610bd6600186611798565b94505b5050508080610be7906117f1565b915050610a81565b506000818651610bff91906118ff565b90508015610c14578084510384528083510383525b50509250929050565b610c25610c96565b6001600160a01b038116610c8a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161055e565b610c9381610dfe565b50565b6000546001600160a01b031633146109785760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161055e565b600080610dd17fb57ad3a271d63d46720a5a84c6b287165ae9b6378caf7e19853858a190aeef938588604051602001610d299190611912565b6040516020818303038152906040528051906020012088604051602001610d509190611912565b60408051601f1981840301815282825280516020918201206001600160a01b038c166000908152600283529290922054610db6969594939091019485526001600160a01b0393909316602085015260408401919091526060830152608082015260a00190565b60405160208183030381529060405280519060200120610e4e565b6004549091506001600160a01b0316610dea8285610ea2565b6001600160a01b0316149695505050505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000610e9c610e5b610ec6565b8360405161190160f01b6020820152602281018390526042810182905260009060620160405160208183030381529060405280519060200120905092915050565b92915050565b6000806000610eb18585610fed565b91509150610ebe81611032565b509392505050565b6000306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016148015610f1f57507f000000000000000000000000000000000000000000000000000000000000000046145b15610f4957507f000000000000000000000000000000000000000000000000000000000000000090565b50604080517f00000000000000000000000000000000000000000000000000000000000000006020808301919091527f0000000000000000000000000000000000000000000000000000000000000000828401527f000000000000000000000000000000000000000000000000000000000000000060608301524660808301523060a0808401919091528351808403909101815260c0909201909252805191012090565b60008082516041036110235760208301516040840151606085015160001a6110178782858561117c565b9450945050505061102b565b506000905060025b9250929050565b600081600481111561104657611046611948565b0361104e5750565b600181600481111561106257611062611948565b036110af5760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e61747572650000000000000000604482015260640161055e565b60028160048111156110c3576110c3611948565b036111105760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e67746800604482015260640161055e565b600381600481111561112457611124611948565b03610c935760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b606482015260840161055e565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156111b35750600090506003611237565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611207573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b03811661123057600060019250925050611237565b9150600090505b94509492505050565b6001600160a01b0381168114610c9357600080fd5b60006020828403121561126757600080fd5b813561127281611240565b9392505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff811182821017156112b8576112b8611279565b604052919050565b600067ffffffffffffffff8211156112da576112da611279565b50601f01601f191660200190565b600080600080600080600060e0888a03121561130357600080fd5b873561130e81611240565b9650602088013561131e81611240565b9550604088013561132e81611240565b9450606088013593506080880135925060a0880135915060c088013567ffffffffffffffff81111561135f57600080fd5b8801601f81018a1361137057600080fd5b803561138361137e826112c0565b61128f565b8181528b602083850101111561139857600080fd5b8160208401602083013760006020838301015280935050505092959891949750929550565b60008083601f8401126113cf57600080fd5b50813567ffffffffffffffff8111156113e757600080fd5b6020830191508360208260051b850101111561102b57600080fd5b6000806000806040858703121561141857600080fd5b843567ffffffffffffffff8082111561143057600080fd5b61143c888389016113bd565b9096509450602087013591508082111561145557600080fd5b50611462878288016113bd565b95989497509550505050565b60006020828403121561148057600080fd5b8135801515811461127257600080fd5b600067ffffffffffffffff8211156114aa576114aa611279565b5060051b60200190565b600082601f8301126114c557600080fd5b813560206114d561137e83611490565b82815260059290921b840181019181810190868411156114f457600080fd5b8286015b8481101561150f57803583529183019183016114f8565b509695505050505050565b6000806040838503121561152d57600080fd5b823567ffffffffffffffff8082111561154557600080fd5b611551868387016114b4565b9350602085013591508082111561156757600080fd5b50611574858286016114b4565b9150509250929050565b600081518084526020808501945080840160005b838110156115ae57815187529582019590820190600101611592565b509495945050505050565b6040815260006115cc604083018561157e565b82810360208401526115de818561157e565b95945050505050565b6000602082840312156115f957600080fd5b5035919050565b600082601f83011261161157600080fd5b8151602061162161137e83611490565b82815260059290921b8401810191818101908684111561164057600080fd5b8286015b8481101561150f5780518352918301918301611644565b60005b8381101561167657818101518382015260200161165e565b50506000910152565b60008060006060848603121561169457600080fd5b835167ffffffffffffffff808211156116ac57600080fd5b6116b887838801611600565b945060208601519150808211156116ce57600080fd5b6116da87838801611600565b935060408601519150808211156116f057600080fd5b508401601f8101861361170257600080fd5b805161171061137e826112c0565b81815287602083850101111561172557600080fd5b61173682602083016020860161165b565b8093505050509250925092565b6000815180845261175b81602086016020860161165b565b601f01601f19169290920160200192915050565b6020815260006112726020830184611743565b634e487b7160e01b600052601160045260246000fd5b80820180821115610e9c57610e9c611782565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156117d357600080fd5b5051919050565b8082028115828204841417610e9c57610e9c611782565b60006001820161180357611803611782565b5060010190565b6001600160a01b038416815260806020820181905260009061182e9083018561157e565b8281036040840152611840818561157e565b8381036060909401939093525050600081526020019392505050565b848152608060208201526000611875608083018661157e565b8281036040840152611887818661157e565b9050828103606084015261189b8185611743565b979650505050505050565b81835260006001600160fb1b038311156118bf57600080fd5b8260051b80836020870137939093016020019392505050565b6040815260006118ec6040830186886118a6565b828103602084015261189b8185876118a6565b81810381811115610e9c57610e9c611782565b815160009082906020808601845b8381101561193c57815185529382019390820190600101611920565b50929695505050505050565b634e487b7160e01b600052602160045260246000fdfea26469706673582212200eba64175bc39382bfb68232bfedac5180035455547a872895513313d8d05ade64736f6c63430008110033