witnet-solidity-bridge
Version:
Witnet Solidity Bridge contracts for EVM-compatible chains
60 lines (59 loc) • 14.2 kB
JSON
{
"_format": "hh-sol-artifact-1",
"contractName": "WitnetPriceFeedsLib",
"sourceName": "contracts/libs/WitnetPriceFeedsLib.sol",
"abi": [
{
"inputs": [
{
"internalType": "bytes",
"name": "initcode",
"type": "bytes"
},
{
"internalType": "bytes",
"name": "constructorParams",
"type": "bytes"
}
],
"name": "determinePriceSolverAddress",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "prefix",
"type": "bytes32"
},
{
"internalType": "string",
"name": "caption",
"type": "string"
}
],
"name": "validateCaption",
"outputs": [
{
"internalType": "uint8",
"name": "",
"type": "uint8"
}
],
"stateMutability": "pure",
"type": "function"
}
],
"bytecode": "0x610c8b610039600b82828239805160001a607314602c57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061004b5760003560e01c8063a55b471c14610050578063e78d44d91461008d578063ff75890f146100b2575b600080fd5b81801561005c57600080fd5b5061007061006b36600461098c565b6100c5565b6040516001600160a01b0390911681526020015b60405180910390f35b6100a061009b3660046109f8565b610202565b60405160ff9091168152602001610084565b6100706100c036600461098c565b610440565b60006100d385858585610440565b9050806001600160a01b03163b6000036101fa5760006100f5868686866104c6565b90506000808251602084016000f59050809250636d7f4b0b60e11b6001600160e01b031916836001600160a01b031663adb7c3f76040518163ffffffff1660e01b8152600401602060405180830381865afa158015610158573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061017c9190610a44565b6001600160e01b031916146101f75760405162461bcd60e51b815260206004820152603660248201527f5769746e6574507269636546656564734c69623a20756e636f6d706c69616e746044820152751039b7b63b32b91034b6b83632b6b2b73a30ba34b7b760511b60648201526084015b60405180910390fd5b50505b949350505050565b60006001600160d01b031984166102198385610a75565b6001600160d01b031916146102805760405162461bcd60e51b815260206004820152602760248201527f5769746e6574507269636546656564734c69623a206261642063617074696f6e604482015266040e0e4caccd2f60cb1b60648201526084016101ee565b60006102c184848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104f892505050565b60408051808201825260018152602d60f81b60208083019182528351808501855260008082529082018190528451808601909552925184528301529192509061030a8383610525565b610315906001610abb565b67ffffffffffffffff81111561032d5761032d610ad4565b60405190808252806020026020018201604052801561036057816020015b606081526020019060019003908161034b5790505b50905060005b81518110156103a65761038161037c85856105c6565b6105e5565b82828151811061039357610393610aea565b6020908102919091010152600101610366565b506000806103d983600185516103bc9190610b00565b815181106103cc576103cc610aea565b602002602001015161064e565b91509150806104345760405162461bcd60e51b815260206004820152602160248201527f5769746e6574507269636546656564734c69623a2062616420646563696d616c6044820152607360f81b60648201526084016101ee565b50979650505050505050565b60006001600160f81b03193082610459888888886104c6565b80516020918201206040516104a595949392016001600160f81b031994909416845260609290921b6bffffffffffffffffffffffff191660018401526015830152603582015260550190565b60408051601f19818403018152919052805160209091012095945050505050565b6060848484846040516020016104df9493929190610b13565b6040516020818303038152906040529050949350505050565b60408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b600080826000015161054985600001518660200151866000015187602001516106fe565b6105539190610abb565b90505b835160208501516105679190610abb565b81116105bf578161057781610b35565b92505082600001516105ae8560200151836105929190610b00565b865161059e9190610b00565b83866000015187602001516106fe565b6105b89190610abb565b9050610556565b5092915050565b60408051808201909152600080825260208201526105bf83838361081e565b60606000826000015167ffffffffffffffff81111561060657610606610ad4565b6040519080825280601f01601f191660200182016040528015610630576020820181803683370190505b50905060006020820190506105bf81856020015186600001516108c9565b60008060005b83518110156106f3576000603085838151811061067357610673610aea565b016020015160f81c0360ff1610806106aa57506009603085838151811061069c5761069c610aea565b016020015160f81c0360ff16115b156106bb5750600093849350915050565b60018185510303600a0a60308583815181106106d9576106d9610aea565b016020015160f81c0360ff16029290920191600101610654565b509092600192509050565b6000838186851161080957602085116107b8576000851561074a576001610726876020610b00565b610731906008610b4e565b61073c906002610c49565b6107469190610b00565b1990505b8451811660008761075b8b8b610abb565b6107659190610b00565b855190915083165b8281146107aa57818610610792576107858b8b610abb565b96505050505050506101fa565b8561079c81610b35565b96505083865116905061076d565b8596505050505050506101fa565b508383206000905b6107ca8689610b00565b8211610807578583208082036107e657839450505050506101fa565b6107f1600185610abb565b93505081806107ff90610b35565b9250506107c0565b505b6108138787610abb565b979650505050505050565b6040805180820190915260008082526020820152600061085085600001518660200151866000015187602001516106fe565b60208087018051918601919091525190915061086c9082610b00565b83528451602086015161087f9190610abb565b810361088e57600085526108c0565b8351835161089c9190610abb565b855186906108ab908390610b00565b90525083516108ba9082610abb565b60208601525b50909392505050565b6020811061090157815183526108e0602084610abb565b92506108ed602083610abb565b91506108fa602082610b00565b90506108c9565b6000198115610930576001610917836020610b00565b61092390610100610c49565b61092d9190610b00565b90505b9151835183169219169190911790915250565b60008083601f84011261095557600080fd5b50813567ffffffffffffffff81111561096d57600080fd5b60208301915083602082850101111561098557600080fd5b9250929050565b600080600080604085870312156109a257600080fd5b843567ffffffffffffffff808211156109ba57600080fd5b6109c688838901610943565b909650945060208701359150808211156109df57600080fd5b506109ec87828801610943565b95989497509550505050565b600080600060408486031215610a0d57600080fd5b83359250602084013567ffffffffffffffff811115610a2b57600080fd5b610a3786828701610943565b9497909650939450505050565b600060208284031215610a5657600080fd5b81516001600160e01b031981168114610a6e57600080fd5b9392505050565b6001600160d01b03198135818116916006851015610a9d5780818660060360031b1b83161692505b505092915050565b634e487b7160e01b600052601160045260246000fd5b80820180821115610ace57610ace610aa5565b92915050565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b81810381811115610ace57610ace610aa5565b8385823760008482016000815283858237600093019283525090949350505050565b600060018201610b4757610b47610aa5565b5060010190565b8082028115828204841417610ace57610ace610aa5565b600181815b80851115610ba0578160001904821115610b8657610b86610aa5565b80851615610b9357918102915b93841c9390800290610b6a565b509250929050565b600082610bb757506001610ace565b81610bc457506000610ace565b8160018114610bda5760028114610be457610c00565b6001915050610ace565b60ff841115610bf557610bf5610aa5565b50506001821b610ace565b5060208310610133831016604e8410600b8410161715610c23575081810a610ace565b610c2d8383610b65565b8060001904821115610c4157610c41610aa5565b029392505050565b6000610a6e8383610ba856fea26469706673582212209b717c1499ab473a5999952e1b10bbcad0e0ff431cab302eb60c45162120c43864736f6c63430008190033",
"deployedBytecode": "0x730000000000000000000000000000000000000000301460806040526004361061004b5760003560e01c8063a55b471c14610050578063e78d44d91461008d578063ff75890f146100b2575b600080fd5b81801561005c57600080fd5b5061007061006b36600461098c565b6100c5565b6040516001600160a01b0390911681526020015b60405180910390f35b6100a061009b3660046109f8565b610202565b60405160ff9091168152602001610084565b6100706100c036600461098c565b610440565b60006100d385858585610440565b9050806001600160a01b03163b6000036101fa5760006100f5868686866104c6565b90506000808251602084016000f59050809250636d7f4b0b60e11b6001600160e01b031916836001600160a01b031663adb7c3f76040518163ffffffff1660e01b8152600401602060405180830381865afa158015610158573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061017c9190610a44565b6001600160e01b031916146101f75760405162461bcd60e51b815260206004820152603660248201527f5769746e6574507269636546656564734c69623a20756e636f6d706c69616e746044820152751039b7b63b32b91034b6b83632b6b2b73a30ba34b7b760511b60648201526084015b60405180910390fd5b50505b949350505050565b60006001600160d01b031984166102198385610a75565b6001600160d01b031916146102805760405162461bcd60e51b815260206004820152602760248201527f5769746e6574507269636546656564734c69623a206261642063617074696f6e604482015266040e0e4caccd2f60cb1b60648201526084016101ee565b60006102c184848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104f892505050565b60408051808201825260018152602d60f81b60208083019182528351808501855260008082529082018190528451808601909552925184528301529192509061030a8383610525565b610315906001610abb565b67ffffffffffffffff81111561032d5761032d610ad4565b60405190808252806020026020018201604052801561036057816020015b606081526020019060019003908161034b5790505b50905060005b81518110156103a65761038161037c85856105c6565b6105e5565b82828151811061039357610393610aea565b6020908102919091010152600101610366565b506000806103d983600185516103bc9190610b00565b815181106103cc576103cc610aea565b602002602001015161064e565b91509150806104345760405162461bcd60e51b815260206004820152602160248201527f5769746e6574507269636546656564734c69623a2062616420646563696d616c6044820152607360f81b60648201526084016101ee565b50979650505050505050565b60006001600160f81b03193082610459888888886104c6565b80516020918201206040516104a595949392016001600160f81b031994909416845260609290921b6bffffffffffffffffffffffff191660018401526015830152603582015260550190565b60408051601f19818403018152919052805160209091012095945050505050565b6060848484846040516020016104df9493929190610b13565b6040516020818303038152906040529050949350505050565b60408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b600080826000015161054985600001518660200151866000015187602001516106fe565b6105539190610abb565b90505b835160208501516105679190610abb565b81116105bf578161057781610b35565b92505082600001516105ae8560200151836105929190610b00565b865161059e9190610b00565b83866000015187602001516106fe565b6105b89190610abb565b9050610556565b5092915050565b60408051808201909152600080825260208201526105bf83838361081e565b60606000826000015167ffffffffffffffff81111561060657610606610ad4565b6040519080825280601f01601f191660200182016040528015610630576020820181803683370190505b50905060006020820190506105bf81856020015186600001516108c9565b60008060005b83518110156106f3576000603085838151811061067357610673610aea565b016020015160f81c0360ff1610806106aa57506009603085838151811061069c5761069c610aea565b016020015160f81c0360ff16115b156106bb5750600093849350915050565b60018185510303600a0a60308583815181106106d9576106d9610aea565b016020015160f81c0360ff16029290920191600101610654565b509092600192509050565b6000838186851161080957602085116107b8576000851561074a576001610726876020610b00565b610731906008610b4e565b61073c906002610c49565b6107469190610b00565b1990505b8451811660008761075b8b8b610abb565b6107659190610b00565b855190915083165b8281146107aa57818610610792576107858b8b610abb565b96505050505050506101fa565b8561079c81610b35565b96505083865116905061076d565b8596505050505050506101fa565b508383206000905b6107ca8689610b00565b8211610807578583208082036107e657839450505050506101fa565b6107f1600185610abb565b93505081806107ff90610b35565b9250506107c0565b505b6108138787610abb565b979650505050505050565b6040805180820190915260008082526020820152600061085085600001518660200151866000015187602001516106fe565b60208087018051918601919091525190915061086c9082610b00565b83528451602086015161087f9190610abb565b810361088e57600085526108c0565b8351835161089c9190610abb565b855186906108ab908390610b00565b90525083516108ba9082610abb565b60208601525b50909392505050565b6020811061090157815183526108e0602084610abb565b92506108ed602083610abb565b91506108fa602082610b00565b90506108c9565b6000198115610930576001610917836020610b00565b61092390610100610c49565b61092d9190610b00565b90505b9151835183169219169190911790915250565b60008083601f84011261095557600080fd5b50813567ffffffffffffffff81111561096d57600080fd5b60208301915083602082850101111561098557600080fd5b9250929050565b600080600080604085870312156109a257600080fd5b843567ffffffffffffffff808211156109ba57600080fd5b6109c688838901610943565b909650945060208701359150808211156109df57600080fd5b506109ec87828801610943565b95989497509550505050565b600080600060408486031215610a0d57600080fd5b83359250602084013567ffffffffffffffff811115610a2b57600080fd5b610a3786828701610943565b9497909650939450505050565b600060208284031215610a5657600080fd5b81516001600160e01b031981168114610a6e57600080fd5b9392505050565b6001600160d01b03198135818116916006851015610a9d5780818660060360031b1b83161692505b505092915050565b634e487b7160e01b600052601160045260246000fd5b80820180821115610ace57610ace610aa5565b92915050565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b81810381811115610ace57610ace610aa5565b8385823760008482016000815283858237600093019283525090949350505050565b600060018201610b4757610b47610aa5565b5060010190565b8082028115828204841417610ace57610ace610aa5565b600181815b80851115610ba0578160001904821115610b8657610b86610aa5565b80851615610b9357918102915b93841c9390800290610b6a565b509250929050565b600082610bb757506001610ace565b81610bc457506000610ace565b8160018114610bda5760028114610be457610c00565b6001915050610ace565b60ff841115610bf557610bf5610aa5565b50506001821b610ace565b5060208310610133831016604e8410600b8410161715610c23575081810a610ace565b610c2d8383610b65565b8060001904821115610c4157610c41610aa5565b029392505050565b6000610a6e8383610ba856fea26469706673582212209b717c1499ab473a5999952e1b10bbcad0e0ff431cab302eb60c45162120c43864736f6c63430008190033",
"linkReferences": {},
"deployedLinkReferences": {}
}