0 txs
0 calls
constructor
constructor(address _dsVerifyProxy, address _reportSubmitter, uint256 _usdcHeartbeat, address _usdcSource)
functions
dsVerifyProxy
viewfunction dsVerifyProxy() view returns (address)
getAllPrices
viewfunction getAllPrices() view returns (string[] names, uint256[] prices, uint256 rawUSDCPrice)
getPriceByKey
viewfunction getPriceByKey(bytes32 key) view returns (uint256 price)
getPriceByName
viewfunction getPriceByName(string name) view returns (uint256 price)
getPriceSourcesByName
viewfunction getPriceSourcesByName(string name) view returns (tuple)
getRawUSDCPrice
viewfunction getRawUSDCPrice() view returns (uint256)
getReportByName
viewfunction getReportByName(string name) view returns (tuple)
nameToKey
purefunction nameToKey(string name) pure returns (bytes32 key)
owner
viewfunction owner() view returns (address)
priceSourcesMap
viewfunction priceSourcesMap(bytes32) view returns (address chainlinkFeed, uint256 feedDecimalsCorrection, tuple lastDSReport, bytes32 DSFeedId, uint256 DSRoundId, uint256 DSDecimalCorrection, uint256 heartBeat, address adaptor, string name)
registeredNames
viewfunction registeredNames(uint256) view returns (string)
reportSubmitter
viewfunction reportSubmitter() view returns (address)
usdcHeartbeat
viewfunction usdcHeartbeat() view returns (uint256)
usdcSource
viewfunction usdcSource() view returns (address)
newPriceSources
nonpayablefunction newPriceSources(string name, address _chainlinkFeed, bytes32 _DSFeedId, uint256 _feedDecimalCorrection, uint256 _DSDecimalCorrection, uint256 _heartBeat)
renounceOwnership
nonpayablefunction renounceOwnership()
resetPriceSources
nonpayablefunction resetPriceSources(string name, address _chainlinkFeed, bytes32 _DSFeedId, uint256 _feedDecimalCorrection, uint256 _DSDecimalCorrection, uint256 _heartBeat, bool _resetReport)
setReportSubmitter
nonpayablefunction setReportSubmitter(address _reportSubmitter)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
verifyReports
nonpayablefunction verifyReports(string[] names, bytes[] unverifiedReports)
events
AnswerUpdated
event AnswerUpdated(int256 indexed current, bytes32 indexed feedID, uint256 indexed roundId, uint256 updatedAt, string name)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
errors
No errors.
creation bytecode
0x60e06040523480156200001157600080fd5b506040516200317a3803806200317a8339810160408190526200003491620000df565b6200003f3362000072565b6001600160a01b03938416608052600180546001600160a01b0319169385169390931790925560a0521660c05262000133565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80516001600160a01b0381168114620000da57600080fd5b919050565b60008060008060808587031215620000f657600080fd5b6200010185620000c2565b93506200011160208601620000c2565b9250604085015191506200012860608601620000c2565b905092959194509250565b60805160a05160c051612ffb6200017f6000396000818161027501526114da0152600081816101d201526115660152600081816102c6015281816119f70152611c000152612ffb6000f3fe60806040523480156200001157600080fd5b5060043610620001455760003560e01c80638da5cb5b11620000bb578063d30abef2116200007a578063d30abef2146200033c578063ed5686ba1462000346578063ef263046146200035d578063f2fde38b1462000374578063f5ebd47f146200038b57600080fd5b80638da5cb5b14620002ae578063a6f4b69f14620002c0578063ad7e3f0014620002e8578063baa13c5014620002ff578063bccb52f4146200031657600080fd5b806352190b8a116200010857806352190b8a146200021e578063715018a6146200024c578063832321bf146200025857806386ad4e90146200026f5780638c899c97146200029757600080fd5b80631c74c9f8146200014a57806337c6e93214620001795780633dc9dcec146200019f578063421dd41814620001cc578063445df9d61462000203575b600080fd5b620001616200015b36600462001ea3565b620003a2565b60405162000170919062001f96565b60405180910390f35b620001906200018a36600462001fa7565b62000461565b60405162000170919062002015565b600154620001b3906001600160a01b031681565b6040516001600160a01b03909116815260200162000170565b620001f47f000000000000000000000000000000000000000000000000000000000000000081565b60405190815260200162000170565b6200020d62000516565b60405162000170939291906200202a565b620002356200022f36600462001fa7565b62000754565b6040516200017099989796959493929190620020d3565b62000256620008ca565b005b620001f46200026936600462001fa7565b620008e2565b620001b37f000000000000000000000000000000000000000000000000000000000000000081565b62000256620002a83660046200215e565b62000cb0565b6000546001600160a01b0316620001b3565b620001b37f000000000000000000000000000000000000000000000000000000000000000081565b62000256620002f9366004620022a5565b62000f9f565b620002566200031036600462002387565b620012cd565b6200032d6200032736600462001ea3565b620012f9565b604051620001709190620023a7565b620001f4620014d3565b620001f46200035736600462001ea3565b620015f5565b620002566200036e3660046200244f565b62001627565b620002566200038536600462002387565b620017f8565b620001f46200039c36600462001ea3565b62001877565b620003ac62001cdf565b6000620003b983620015f5565b600090815260036020818152604092839020835161012081018552600282015481529281015463ffffffff80821693850193909352600160201b81048316948401949094526001600160c01b03600160401b9094048416606084015260048101549384166080840152600160c01b9093041660a08201526005820154601790810b60c08301526006830154810b60e083015260079092015490910b6101008201529392505050565b600281815481106200047257600080fd5b9060005260206000200160009150905080546200048f90620024e1565b80601f0160208091040260200160405190810160405280929190818152602001828054620004bd90620024e1565b80156200050e5780601f10620004e2576101008083540402835291602001916200050e565b820191906000526020600020905b815481529060010190602001808311620004f057829003601f168201915b505050505081565b60608060006002805480602002602001604051908101604052809291908181526020016000905b82821015620005f35783829060005260206000200180546200055f90620024e1565b80601f01602080910402602001604051908101604052809291908181526020018280546200058d90620024e1565b8015620005de5780601f10620005b257610100808354040283529160200191620005de565b820191906000526020600020905b815481529060010190602001808311620005c057829003601f168201915b5050505050815260200190600101906200053d565b505060025492955050506001600160401b0381111562000617576200061762001d97565b60405190808252806020026020018201604052801562000641578160200160208202803683370190505b50915060005b6002548110156200074257306001600160a01b031663f5ebd47f600283815481106200067757620006776200251d565b906000526020600020016040518263ffffffff1660e01b81526004016200069f919062002533565b602060405180830381865afa925050508015620006db575060408051601f3d908101601f19168201909252620006d891810190620025c6565b60015b62000709576000838281518110620006f757620006f76200251d565b6020026020010181815250506200072d565b808483815181106200071f576200071f6200251d565b602002602001018181525050505b806200073981620025f6565b91505062000647565b506200074d620014d3565b9050909192565b60036020818152600092835260409283902080546001820154855161012081018752600284015481529483015463ffffffff80821695870195909552600160201b8104851696860196909652600160401b9095046001600160c01b03908116606086015260048301549081166080860152600160c01b900490921660a08401526005810154601790810b60c08501526006820154810b60e08501526007820154900b61010084015260088101546009820154600a830154600b840154600c850154600d860180546001600160a01b039889169a9998969795969495939490921692916200084190620024e1565b80601f01602080910402602001604051908101604052809291908181526020018280546200086f90620024e1565b8015620008c05780601f106200089457610100808354040283529160200191620008c0565b820191906000526020600020905b815481529060010190602001808311620008a257829003601f168201915b5050505050905089565b620008d46200188e565b620008e06000620018ea565b565b60008181526003602081815260408084208151610120808201845282546001600160a01b03908116835260018401548387015284519182018552600284015482529583015463ffffffff80821696830196909652600160201b81048616828601526001600160c01b03600160401b90910481166060808401919091526004850154918216608080850191909152600160c01b90920490961660a0808401919091526005850154601790810b60c0808601919091526006870154820b60e080870191909152600788015490920b6101008681019190915297860194909452600886015497850197909752600985015491840191909152600a84015490830152600b83015490820152600c82015490941692840192909252600d82018054859493928401919062000a1190620024e1565b80601f016020809104026020016040519081016040528092919081815260200182805462000a3f90620024e1565b801562000a905780601f1062000a645761010080835404028352916020019162000a90565b820191906000526020600020905b81548152906001019060200180831162000a7257829003601f168201915b50505091909252505050604081015181519192509060009081906001600160a01b03161562000b2c5783600001516001600160a01b031663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa15801562000afc573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000b22919062002632565b5091945090925050505b600080846020015163ffffffff16118062000b475750600082115b62000b895760405162461bcd60e51b815260206004820152600d60248201526c4e4f5f56414c49445f4441544160981b60448201526064015b60405180910390fd5b81846020015163ffffffff16111562000be857836020015163ffffffff1690508460a0015162000bc08560c0015160170b6200193a565b62000bd490670de0b6b3a764000062002687565b62000be09190620026a1565b955062000c1e565b819050846020015162000bfb846200193a565b62000c0f90670de0b6b3a764000062002687565b62000c1b9190620026a1565b95505b60c085015162000c2f8242620026c4565b111562000c7f5760405162461bcd60e51b815260206004820152601760248201527f4f5241434c455f4845415254424541545f4641494c4544000000000000000000604482015260640162000b80565b62000c89620014d3565b62000c99876305f5e10062002687565b62000ca59190620026a1565b979650505050505050565b62000cba6200188e565b600062000cc787620015f5565b6000818152600360205260409020600d0180549192509062000ce990620024e1565b15905062000d2f5760405162461bcd60e51b81526020600482015260126024820152711390535157d053149150511657d1561254d560721b604482015260640162000b80565b600280546001810182556000919091527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace0162000d6d88826200272c565b506000873060405162000d809062001d2b565b62000d8d929190620027f8565b604051809103906000f08015801562000daa573d6000803e3d6000fd5b509050600062000db962001992565b9050604051806101200160405280896001600160a01b0316815260200187600a62000de5919062002921565b81526020018281526020018881526020016000815260200186600a62000e0c919062002921565b815260208082018790526001600160a01b0380861660408085019190915260609384018e90526000888152600380855290829020865181549085166001600160a01b0319918216178255878601516001830155878401518051600284015595860151928201805494870151878901516001600160c01b03908116600160401b026001600160401b0363ffffffff938416600160201b0267ffffffffffffffff1990991697841697909717979097179590951695909517905560808087015160048401805460a0808b0151909816600160c01b026001600160e01b03199091169287169290921791909117905560c0808801516005850180549187166001600160c01b031992831617905560e0808a0151600687018054918916918416919091179055610100998a015160078701805491909816921691909117909555978901516008840155880151600983015592870151600a82015594860151600b860155850151600c85018054919093169116179055820151600d82019062000f9190826200272c565b505050505050505050505050565b6000546001600160a01b031633148062000fc357506001546001600160a01b031633145b620010025760405162461bcd60e51b815260206004820152600e60248201526d139bdd08185d5d1a1bdc9a5e995960921b604482015260640162000b80565b60005b8251811015620012c8576000620010388483815181106200102a576200102a6200251d565b6020026020010151620015f5565b600081815260036020526040812085519293509162001074908690869081106200106657620010666200251d565b6020026020010151620019e9565b6003830154602082015191925063ffffffff908116911611620010da5760405162461bcd60e51b815260206004820152601860248201527f494e56414c49445f5245504f52545f54494d455354414d500000000000000000604482015260640162000b80565b6008820154815114620011275760405162461bcd60e51b8152602060048201526014602482015273088a6be8c8a8a88be9288be9c9ea8be9a82a886960631b604482015260640162000b80565b620011408585815181106200106657620010666200251d565b8051600284015560208101516003840180546040840151606085015163ffffffff94851667ffffffffffffffff1990931692909217600160201b91851691909102176001600160401b0316600160401b6001600160c01b039283160217909155608083015160048601805460a08601519284166001600160e01b031990911617600160c01b92909416919091029290921790915560c08201516005850180546001600160c01b031990811692841692909217905560e0830151600686018054831691841691909117905561010090920151600785018054909316911617905560098201805460019190600090620012399084906200292f565b9091555050600982015460028301546005840154885160179190910b907fc1c33f017434f5da0354aa2fc6d4083b54aa1e1fee2110460d92d799743386f09042908b908a9081106200128f576200128f6200251d565b6020026020010151604051620012a792919062002945565b60405180910390a45050508080620012bf90620025f6565b91505062001005565b505050565b620012d76200188e565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6200130362001d39565b60006200131083620015f5565b6000818152600360208181526040928390208351610120808201865282546001600160a01b03908116835260018401548386015286519182018752600284015482529483015463ffffffff80821695830195909552600160201b81048516828801526001600160c01b03600160401b90910481166060808401919091526004850154918216608080850191909152600160c01b90920490951660a0808401919091526005850154601790810b60c0808601919091526006870154820b60e080870191909152600788015490920b6101008681019190915299860194909452600886015496850196909652600985015491840191909152600a84015490830152600b83015490820152600c82015490931691830191909152600d8101805494955091939092840191906200144390620024e1565b80601f01602080910402602001604051908101604052809291908181526020018280546200147190620024e1565b8015620014c25780601f106200149657610100808354040283529160200191620014c2565b820191906000526020600020905b815481529060010190602001808311620014a457829003601f168201915b505050505081525050915050919050565b60008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa15801562001537573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200155d919062002632565b509350509250507f00000000000000000000000000000000000000000000000000000000000000008142620015939190620026c4565b1115620015e35760405162461bcd60e51b815260206004820152601c60248201527f555344435f4f5241434c455f4845415254424541545f4641494c454400000000604482015260640162000b80565b620015ee826200193a565b9250505090565b6000816040516020016200160a919062002960565b604051602081830303815290604052805190602001209050919050565b620016316200188e565b60006200163e88620015f5565b6000818152600360205260408120600d01805492935090916200166190620024e1565b905011620016a35760405162461bcd60e51b815260206004820152600e60248201526d1390535157d393d517d1561254d560921b604482015260640162000b80565b600081815260036020526040902080546001600160a01b0319166001600160a01b03891617815560088101879055620016de86600a62002921565b6001820155620016f085600a62002921565b600a820155600b81018490558215620017ed576200170d62001992565b8051600283015560208101516003830180546040840151606085015163ffffffff94851667ffffffffffffffff1990931692909217600160201b91851691909102176001600160401b0316600160401b6001600160c01b039283160217909155608083015160048501805460a08601519284166001600160e01b031990911617600160c01b92909416919091029290921790915560c08201516005840180546001600160c01b031990811692841692909217905560e083015160068501805483169184169190911790556101009092015160078401805490931691161790555b505050505050505050565b620018026200188e565b6001600160a01b038116620018695760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840162000b80565b6200187481620018ea565b50565b6000620018886200026983620015f5565b92915050565b6000546001600160a01b03163314620008e05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640162000b80565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000808212156200198e5760405162461bcd60e51b815260206004820181905260248201527f53616665436173743a2076616c7565206d75737420626520706f736974697665604482015260640162000b80565b5090565b6200199c62001cdf565b506040805161012081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e0810182905261010081019190915290565b620019f362001cdf565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166338416b5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001a54573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001a7a91906200297e565b905060008380602001905181019062001a949190620029ea565b9150506000826001600160a01b031663638786686040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001ad8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001afe91906200297e565b90506000836001600160a01b031663e03dab1a3085856040518463ffffffff1660e01b815260040162001b349392919062002a8c565b60a0604051808303816000875af115801562001b54573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001b7a919062002b23565b5050602081015160405163095ea7b360e01b81526001600160a01b038781166004830152602482019290925291925083169063095ea7b3906044016020604051808303816000875af115801562001bd5573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001bfb919062002b66565b5060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f7e83aee888560405160200162001c4f91906001600160a01b0391909116815260200190565b6040516020818303038152906040526040518363ffffffff1660e01b815260040162001c7d92919062002b86565b6000604051808303816000875af115801562001c9d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262001cc7919081019062002bb8565b90508080602001905181019062000ca5919062002c30565b6040805161012081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e0810182905261010081019190915290565b6102d38062002cf383390190565b60408051610120810182526000808252602082015290810162001d5b62001cdf565b81526020016000801916815260200160008152602001600081526020016000815260200160006001600160a01b03168152602001606081525090565b634e487b7160e01b600052604160045260246000fd5b60405161012081016001600160401b038111828210171562001dd35762001dd362001d97565b60405290565b604051601f8201601f191681016001600160401b038111828210171562001e045762001e0462001d97565b604052919050565b60006001600160401b0382111562001e285762001e2862001d97565b50601f01601f191660200190565b600062001e4d62001e478462001e0c565b62001dd9565b905082815283838301111562001e6257600080fd5b828260208301376000602084830101529392505050565b600082601f83011262001e8b57600080fd5b62001e9c8383356020850162001e36565b9392505050565b60006020828403121562001eb657600080fd5b81356001600160401b0381111562001ecd57600080fd5b62001edb8482850162001e79565b949350505050565b80518252602081015163ffffffff8082166020850152806040840151166040850152505060018060c01b036060820151166060830152608081015162001f3460808401826001600160c01b03169052565b5060a081015162001f4d60a084018263ffffffff169052565b5060c081015162001f6360c084018260170b9052565b5060e081015162001f7960e084018260170b9052565b506101008082015162001f908285018260170b9052565b50505050565b610120810162001888828462001ee3565b60006020828403121562001fba57600080fd5b5035919050565b60005b8381101562001fde57818101518382015260200162001fc4565b50506000910152565b600081518084526200200181602086016020860162001fc1565b601f01601f19169290920160200192915050565b60208152600062001e9c602083018462001fe7565b6000606082016060835280865180835260808501915060808160051b8601019250602080890160005b838110156200208557607f198887030185526200207286835162001fe7565b9550938201939082019060010162002053565b50508584038187015287518085528882019482019350915060005b82811015620020be57845184529381019392810192600101620020a0565b50505060409390930193909352509392505050565b6001600160a01b038a81168252602082018a905260009061022090620020fd604085018c62001ee3565b8961016085015288610180850152876101a0850152866101c08501528086166101e08501525080610200840152620021388184018562001fe7565b9c9b505050505050505050505050565b6001600160a01b03811681146200187457600080fd5b60008060008060008060c087890312156200217857600080fd5b86356001600160401b038111156200218f57600080fd5b6200219d89828a0162001e79565b9650506020870135620021b08162002148565b95989597505050506040840135936060810135936080820135935060a0909101359150565b60006001600160401b03821115620021f157620021f162001d97565b5060051b60200190565b600082601f8301126200220d57600080fd5b813560206200222062001e4783620021d5565b82815260059290921b840181019181810190868411156200224057600080fd5b8286015b848110156200229a5780356001600160401b03811115620022655760008081fd5b8701603f81018913620022785760008081fd5b6200228b89868301356040840162001e36565b84525091830191830162002244565b509695505050505050565b60008060408385031215620022b957600080fd5b82356001600160401b0380821115620022d157600080fd5b818501915085601f830112620022e657600080fd5b81356020620022f962001e4783620021d5565b82815260059290921b840181019181810190898411156200231957600080fd5b8286015b848110156200235657803586811115620023375760008081fd5b620023478c86838b010162001e79565b8452509183019183016200231d565b50965050860135925050808211156200236e57600080fd5b506200237d85828601620021fb565b9150509250929050565b6000602082840312156200239a57600080fd5b813562001e9c8162002148565b60208152620023c26020820183516001600160a01b03169052565b6020820151604082015260006040830151620023e2606084018262001ee3565b50606083015161018083015260808301516101a083015260a08301516101c083015260c08301516101e083015260e08301516001600160a01b03166102008301526101008301516102208084015262001edb61024084018262001fe7565b80151581146200187457600080fd5b600080600080600080600060e0888a0312156200246b57600080fd5b87356001600160401b038111156200248257600080fd5b620024908a828b0162001e79565b9750506020880135620024a38162002148565b955060408801359450606088013593506080880135925060a0880135915060c0880135620024d18162002440565b8091505092959891949750929550565b600181811c90821680620024f657607f821691505b6020821081036200251757634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b60006020808352600084546200254981620024e1565b808487015260406001808416600081146200256d57600181146200258857620025b8565b60ff1985168984015283151560051b890183019550620025b8565b896000528660002060005b85811015620025b05781548b820186015290830190880162002593565b8a0184019650505b509398975050505050505050565b600060208284031215620025d957600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b6000600182016200260b576200260b620025e0565b5060010190565b805169ffffffffffffffffffff811681146200262d57600080fd5b919050565b600080600080600060a086880312156200264b57600080fd5b620026568662002612565b94506020860151935060408601519250606086015191506200267b6080870162002612565b90509295509295909350565b8082028115828204841417620018885762001888620025e0565b600082620026bf57634e487b7160e01b600052601260045260246000fd5b500490565b81810381811115620018885762001888620025e0565b601f821115620012c857600081815260208120601f850160051c81016020861015620027035750805b601f850160051c820191505b8181101562002724578281556001016200270f565b505050505050565b81516001600160401b0381111562002748576200274862001d97565b6200276081620027598454620024e1565b84620026da565b602080601f8311600181146200279857600084156200277f5750858301515b600019600386901b1c1916600185901b17855562002724565b600085815260208120601f198616915b82811015620027c957888601518255948401946001909101908401620027a8565b5085821015620027e85787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6040815260006200280d604083018562001fe7565b905060018060a01b03831660208301529392505050565b600181815b8085111562002865578160001904821115620028495762002849620025e0565b808516156200285757918102915b93841c939080029062002829565b509250929050565b6000826200287e5750600162001888565b816200288d5750600062001888565b8160018114620028a65760028114620028b157620028d1565b600191505062001888565b60ff841115620028c557620028c5620025e0565b50506001821b62001888565b5060208310610133831016604e8410600b8410161715620028f6575081810a62001888565b62002902838362002824565b8060001904821115620029195762002919620025e0565b029392505050565b600062001e9c83836200286d565b80820180821115620018885762001888620025e0565b82815260406020820152600062001edb604083018462001fe7565b600082516200297481846020870162001fc1565b9190910192915050565b6000602082840312156200299157600080fd5b815162001e9c8162002148565b600082601f830112620029b057600080fd5b8151620029c162001e478262001e0c565b818152846020838601011115620029d757600080fd5b62001edb82602083016020870162001fc1565b60008060808385031215620029fe57600080fd5b83601f84011262002a0e57600080fd5b604051606081016001600160401b03828210818311171562002a345762002a3462001d97565b81604052829150606086018781111562002a4d57600080fd5b865b8181101562002a6957805184526020938401930162002a4f565b50519294508083111562002a7c57600080fd5b50506200237d858286016200299e565b600060018060a01b0380861683526060602084015262002ab0606084018662001fe7565b9150808416604084015250949350505050565b60006040828403121562002ad657600080fd5b604051604081018181106001600160401b038211171562002afb5762002afb62001d97565b8060405250809150825162002b108162002148565b8152602092830151920191909152919050565b600080600060a0848603121562002b3957600080fd5b62002b45858562002ac3565b925062002b56856040860162002ac3565b9150608084015190509250925092565b60006020828403121562002b7957600080fd5b815162001e9c8162002440565b60408152600062002b9b604083018562001fe7565b828103602084015262002baf818562001fe7565b95945050505050565b60006020828403121562002bcb57600080fd5b81516001600160401b0381111562002be257600080fd5b62001edb848285016200299e565b805163ffffffff811681146200262d57600080fd5b80516001600160c01b03811681146200262d57600080fd5b8051601781900b81146200262d57600080fd5b6000610120828403121562002c4457600080fd5b62002c4e62001dad565b8251815262002c606020840162002bf0565b602082015262002c736040840162002bf0565b604082015262002c866060840162002c05565b606082015262002c996080840162002c05565b608082015262002cac60a0840162002bf0565b60a082015262002cbf60c0840162002c1d565b60c082015262002cd260e0840162002c1d565b60e082015261010062002ce781850162002c1d565b90820152939250505056fe608060405234801561001057600080fd5b506040516102d33803806102d383398101604081905261002f916100d4565b600080546001600160a01b0319166001600160a01b03831617905560405161005b908390602001610193565b6040516020818303038152906040528051906020012060018190555050506101af565b634e487b7160e01b600052604160045260246000fd5b60005b838110156100af578181015183820152602001610097565b50506000910152565b80516001600160a01b03811681146100cf57600080fd5b919050565b600080604083850312156100e757600080fd5b82516001600160401b03808211156100fe57600080fd5b818501915085601f83011261011257600080fd5b8151818111156101245761012461007e565b604051601f8201601f19908116603f0116810190838211818310171561014c5761014c61007e565b8160405282815288602084870101111561016557600080fd5b610176836020830160208801610094565b809650505050505061018a602084016100b8565b90509250929050565b600082516101a5818460208701610094565b9190910192915050565b610115806101be6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806360409632146037578063e54f0880146037575b600080fd5b603d604f565b60405190815260200160405180910390f35b6000805460015460405163832321bf60e01b81526001600160a01b039092169163832321bf9160849160040190815260200190565b602060405180830381865afa15801560a0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019060c2919060c7565b905090565b60006020828403121560d857600080fd5b505191905056fea2646970667358221220fe020dc65bf262e9c4a7c2af7206fe4eff423e74501bea66de565186cc8a224964736f6c63430008130033a26469706673582212202d5078bc6a1229d72f8913fbbcdf8043ace1ad2e8be3464d0b68d037fbdbf38664736f6c63430008130033000000000000000000000000de1a28d87afd0f546505b28ab50410a5c3a7387a00000000000000000000000058d6e7accc617758f890ba796d34777d2c46210c00000000000000000000000000000000000000000000000000000000000151800000000000000000000000007e860098f58bbfc8648a4311b374b1d669a2bc6b