0 txs
3.4k calls
constructor
constructor(address _nameServiceRegistry)
functions
getAddressEntry
viewfunction getAddressEntry(address _setter, string _name, string _entry) view returns (address)
getIntEntry
viewfunction getIntEntry(address _setter, string _name, string _entry) view returns (int256)
getNameAddressRecord
viewfunction getNameAddressRecord(string _name, string _record) view returns (tuple)
getNameAddressRecordsList
viewfunction getNameAddressRecordsList(string _name) view returns (string[])
getNameAddressRecordsListPaginated
viewfunction getNameAddressRecordsListPaginated(string _name, uint256 _offset, uint256 _limit) view returns (string[])
getNameIntRecord
viewfunction getNameIntRecord(string _name, string _record) view returns (tuple)
getNameIntRecordsList
viewfunction getNameIntRecordsList(string _name) view returns (string[])
getNameIntRecordsListPaginated
viewfunction getNameIntRecordsListPaginated(string _name, uint256 _offset, uint256 _limit) view returns (string[])
getNameStringRecord
viewfunction getNameStringRecord(string _name, string _record) view returns (tuple)
getNameStringRecordsList
viewfunction getNameStringRecordsList(string _name) view returns (string[])
getNameStringRecordsListPaginated
viewfunction getNameStringRecordsListPaginated(string _name, uint256 _offset, uint256 _limit) view returns (string[])
getNameUintRecord
viewfunction getNameUintRecord(string _name, string _record) view returns (tuple)
getNameUintRecordsList
viewfunction getNameUintRecordsList(string _name) view returns (string[])
getNameUintRecordsListPaginated
viewfunction getNameUintRecordsListPaginated(string _name, uint256 _offset, uint256 _limit) view returns (string[])
getStringEntry
viewfunction getStringEntry(address _setter, string _name, string _entry) view returns (string)
getUintEntry
viewfunction getUintEntry(address _setter, string _name, string _entry) view returns (uint256)
supportsInterface
purefunction supportsInterface(bytes4 interfaceId) pure returns (bool)
setAddressEntry
nonpayablefunction setAddressEntry(address _setter, string _name, string _entry, address _value)
setAddressRecord
nonpayablefunction setAddressRecord(string _name, string _record, address _value, uint256 _ttl)
setIntEntry
nonpayablefunction setIntEntry(address _setter, string _name, string _entry, int256 _value)
setIntRecord
nonpayablefunction setIntRecord(string _name, string _record, int256 _value, uint256 _ttl)
setStringEntry
nonpayablefunction setStringEntry(address _setter, string _name, string _entry, string _value)
setStringRecord
nonpayablefunction setStringRecord(string _name, string _record, string _value, string _typeOf, uint256 _ttl)
setUintEntry
nonpayablefunction setUintEntry(address _setter, string _name, string _entry, uint256 _value)
setUintRecord
nonpayablefunction setUintRecord(string _name, string _record, uint256 _value, uint256 _ttl)
events
AddressEntryUpdated
event AddressEntryUpdated(address indexed setter, string indexed idxName, string indexed idxEntry, string name, string entry, address value)
AddressRecordUpdated
event AddressRecordUpdated(string indexed idxName, string name, string record, address value, uint256 ttl)
IntEntryUpdated
event IntEntryUpdated(address indexed setter, string indexed idxName, string indexed idxEntry, string name, string entry, int256 value)
IntRecordUpdated
event IntRecordUpdated(string indexed idxName, string name, string record, int256 value, uint256 ttl)
StringEntryUpdated
event StringEntryUpdated(address indexed setter, string indexed idxName, string indexed idxEntry, string name, string entry, string value)
StringRecordUpdated
event StringRecordUpdated(string indexed idxName, string name, string record, string value, string typeOf, uint256 ttl)
UintEntryUpdated
event UintEntryUpdated(address indexed setter, string indexed idxName, string indexed idxEntry, string name, string entry, uint256 value)
UintRecordUpdated
event UintRecordUpdated(string indexed idxName, string name, string record, uint256 value, uint256 ttl)
errors
No errors.
creation bytecode
0x60a06040523480156200001157600080fd5b5060405162002ed838038062002ed883398101604081905262000034916200004a565b60601b6001600160601b0319166080526200007a565b6000602082840312156200005c578081fd5b81516001600160a01b038116811462000073578182fd5b9392505050565b60805160601c612e07620000d1600039600081816106320152818161093201528181610b6f015281816112f1015281816115780152818161198001528181611a71015281816120b701526122480152612e076000f3fe608060405234801561001057600080fd5b50600436106101a25760003560e01c806387119f10116100ee578063b9826f0711610097578063e068d50a11610071578063e068d50a146103f5578063eac244c414610408578063f2fbc2c414610428578063ffa82fa31461043b57600080fd5b8063b9826f07146103af578063cf3a343a146103c2578063dd4579e2146103d557600080fd5b8063a77a2717116100c8578063a77a27171461035e578063ae31ca7014610371578063b2531e361461039c57600080fd5b806387119f101461030a5780638e7ec9281461031d57806396ab93cb1461033057600080fd5b806338c80a791161015057806352f0a1e01161012a57806352f0a1e0146102d157806359b76a1c146102e457806367ef0004146102f757600080fd5b806338c80a791461028a5780633e08e41e146102ab578063400c59af146102be57600080fd5b8063213b9cf611610181578063213b9cf61461024f57806322efa0e21461026457806324efba671461027757600080fd5b80627e71e9146101a757806301ffc9a7146101e35780630fe916711461022f575b600080fd5b6101ba6101b53660046127bf565b61044e565b6040805182516001600160a01b0316815260209283015192810192909252015b60405180910390f35b61021f6101f1366004612738565b7fffffffff0000000000000000000000000000000000000000000000000000000016638a10f50f60e01b1490565b60405190151581526020016101da565b61024261023d36600461277f565b6104fc565b6040516101da9190612b5c565b61026261025d36600461296a565b610627565b005b61024261027236600461277f565b610808565b610262610285366004612a0c565b610927565b61029d610298366004612500565b610ad0565b6040519081526020016101da565b6102626102b9366004612828565b610b64565b6102426102cc3660046129bd565b610d30565b6102426102df3660046129bd565b610ef6565b61029d6102f2366004612500565b6110b1565b6102426103053660046129bd565b61112b565b6102626103183660046128a3565b6112e6565b61026261032b36600461260b565b61156d565b61034361033e3660046127bf565b611677565b604080518251815260209283015192810192909252016101da565b61024261036c3660046129bd565b61171c565b61038461037f366004612500565b6118d7565b6040516001600160a01b0390911681526020016101da565b6102626103aa36600461260b565b611975565b6102626103bd366004612691565b611a66565b6102426103d036600461277f565b611b7d565b6103e86103e3366004612500565b611c9c565b6040516101da9190612c62565b61024261040336600461277f565b611db8565b61041b6104163660046127bf565b611ed7565b6040516101da9190612cb7565b61026261043636600461257e565b6120ac565b6103436104493660046127bf565b6121d7565b6040805180820190915260008082526020820152600260006104a587878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061222e92505050565b815260200190815260200160002083836040516104c3929190612af2565b90815260408051918290036020908101832083830190925281546001600160a01b03168352600190910154908201529050949350505050565b60606003600061054185858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061222e92505050565b8152602001908152602001600020805480602002602001604051908101604052809291908181526020016000905b8282101561061b57838290600052602060002001805461058e90612d4f565b80601f01602080910402602001604051908101604052809291908181526020018280546105ba90612d4f565b80156106075780601f106105dc57610100808354040283529160200191610607565b820191906000526020600020905b8154815290600101906020018083116105ea57829003601f168201915b50505050508152602001906001019061056f565b50505050905092915050565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146106a45760405162461bcd60e51b815260206004820152601b60248201527f53656e646572206973206e6f74206e616d6520736572766963652e000000000060448201526064015b60405180910390fd5b604051806040016040528083815260200182815250600460006106fc89898080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061222e92505050565b8152602001908152602001600020858560405161071a929190612af2565b9081526040805191829003602090810183208451815593810151600190940193909355601f88018390048302820183019052868152600591600091610779918a908a908190840183828082843760009201919091525061222e92505050565b8152602080820192909252604001600090812080546001810182559082529190206107a691018585612309565b5085856040516107b7929190612af2565b60405180910390207f131dc7d3762e238ec3a6431918f6bf47292d15fac1884d7ef37da8baf40a9db68787878787876040516107f896959493929190612bbd565b60405180910390a2505050505050565b60606005600061084d85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061222e92505050565b8152602001908152602001600020805480602002602001604051908101604052809291908181526020016000905b8282101561061b57838290600052602060002001805461089a90612d4f565b80601f01602080910402602001604051908101604052809291908181526020018280546108c690612d4f565b80156109135780601f106108e857610100808354040283529160200191610913565b820191906000526020600020905b8154815290600101906020018083116108f657829003601f168201915b50505050508152602001906001019061087b565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461099f5760405162461bcd60e51b815260206004820152601b60248201527f53656e646572206973206e6f74206e616d6520736572766963652e0000000000604482015260640161069b565b6040518060400160405280836001600160a01b0316815260200182815250600260006109ca8761222e565b8152602001908152602001600020846040516109e69190612b02565b90815260405160209181900382019020825181547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0390911617815591015160019091015560036000610a408661222e565b815260208082019290925260400160009081208054600181018255908252908290208551610a769391909201919086019061238d565b5083604051610a859190612b02565b60405180910390207fe2b6ed628dedf279ce19c76be1259688cdf87647439f7999ea8128a2bc9ae18985858585604051610ac29493929190612c75565b60405180910390a250505050565b6000600b6000610b4a8888888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8c018190048102820181019092528a815292508a91508990819084018382808284376000920191909152506122d392505050565b815260200190815260200160002054905095945050505050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610bdc5760405162461bcd60e51b815260206004820152601b60248201527f53656e646572206973206e6f74206e616d6520736572766963652e0000000000604482015260640161069b565b60405180604001604052808381526020018281525060066000610c3489898080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061222e92505050565b81526020019081526020016000208585604051610c52929190612af2565b9081526040805191829003602090810183208451815593810151600190940193909355601f88018390048302820183019052868152600791600091610cb1918a908a908190840183828082843760009201919091525061222e92505050565b815260208082019290925260400160009081208054600181018255908252919020610cde91018585612309565b508585604051610cef929190612af2565b60405180910390207f1f79b5b7add18654a083d2bdf5b47d08edd4592ff9c4138f3ee5c98a57d954808787878787876040516107f896959493929190612bbd565b6060600060016000610d7788888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061222e92505050565b8152602001908152602001600020905060008367ffffffffffffffff811115610db057634e487b7160e01b600052604160045260246000fd5b604051908082528060200260200182016040528015610de357816020015b6060815260200190600190039081610dce5790505b50905060005b84811015610eeb5782610dfc8288612d07565b81548110610e1a57634e487b7160e01b600052603260045260246000fd5b906000526020600020018054610e2f90612d4f565b80601f0160208091040260200160405190810160405280929190818152602001828054610e5b90612d4f565b8015610ea85780601f10610e7d57610100808354040283529160200191610ea8565b820191906000526020600020905b815481529060010190602001808311610e8b57829003601f168201915b5050505050828281518110610ecd57634e487b7160e01b600052603260045260246000fd5b60200260200101819052508080610ee390612d8a565b915050610de9565b509695505050505050565b6060600060056000610f3d88888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061222e92505050565b8152602001908152602001600020905060008367ffffffffffffffff811115610f7657634e487b7160e01b600052604160045260246000fd5b604051908082528060200260200182016040528015610fa957816020015b6060815260200190600190039081610f945790505b50905060005b84811015610eeb5782610fc28288612d07565b81548110610fe057634e487b7160e01b600052603260045260246000fd5b906000526020600020018054610ff590612d4f565b80601f016020809104026020016040519081016040528092919081815260200182805461102190612d4f565b801561106e5780601f106110435761010080835404028352916020019161106e565b820191906000526020600020905b81548152906001019060200180831161105157829003601f168201915b505050505082828151811061109357634e487b7160e01b600052603260045260246000fd5b602002602001018190525080806110a990612d8a565b915050610faf565b6000600a6000610b4a8888888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8c018190048102820181019092528a815292508a91508990819084018382808284376000920191909152506122d392505050565b606060006003600061117288888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061222e92505050565b8152602001908152602001600020905060008367ffffffffffffffff8111156111ab57634e487b7160e01b600052604160045260246000fd5b6040519080825280602002602001820160405280156111de57816020015b60608152602001906001900390816111c95790505b50905060005b84811015610eeb57826111f78288612d07565b8154811061121557634e487b7160e01b600052603260045260246000fd5b90600052602060002001805461122a90612d4f565b80601f016020809104026020016040519081016040528092919081815260200182805461125690612d4f565b80156112a35780601f10611278576101008083540402835291602001916112a3565b820191906000526020600020905b81548152906001019060200180831161128657829003601f168201915b50505050508282815181106112c857634e487b7160e01b600052603260045260246000fd5b602002602001018190525080806112de90612d8a565b9150506111e4565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461135e5760405162461bcd60e51b815260206004820152601b60248201527f53656e646572206973206e6f74206e616d6520736572766963652e0000000000604482015260640161069b565b604051806060016040528086868080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250505090825250604080516020601f8701819004810282018101909252858152918101919086908690819084018382808284376000920182905250938552505050602091820184905260408051601f8d018490048402810184019091528b815290918291611423918e908e908190840183828082843760009201919091525061222e92505050565b81526020019081526020016000208888604051611441929190612af2565b9081526020016040518091039020600082015181600001908051906020019061146b92919061238d565b506020828101518051611484926001850192019061238d565b5060408201518160020155905050600160006114d58b8b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061222e92505050565b81526020808201929092526040016000908120805460018101825590825291902061150291018888612309565b508888604051611513929190612af2565b60405180910390207f80b8ca7af0999ba1f453e0271854b15b55abd2b6f71988425ff80878758aff588a8a8a8a8a8a8a8a8a60405161155a99989796959493929190612bfa565b60405180910390a2505050505050505050565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146115e55760405162461bcd60e51b815260206004820152601b60248201527f53656e646572206973206e6f74206e616d6520736572766963652e0000000000604482015260640161069b565b80600a600061165e8989898080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8d018190048102820181019092528b815292508b91508a90819084018382808284376000920191909152506122d392505050565b8152602081019190915260400160002055505050505050565b6040805180820190915260008082526020820152600660006116ce87878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061222e92505050565b815260200190815260200160002083836040516116ec929190612af2565b90815260408051918290036020908101832083830190925281548352600190910154908201529050949350505050565b606060006007600061176388888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061222e92505050565b8152602001908152602001600020905060008367ffffffffffffffff81111561179c57634e487b7160e01b600052604160045260246000fd5b6040519080825280602002602001820160405280156117cf57816020015b60608152602001906001900390816117ba5790505b50905060005b84811015610eeb57826117e88288612d07565b8154811061180657634e487b7160e01b600052603260045260246000fd5b90600052602060002001805461181b90612d4f565b80601f016020809104026020016040519081016040528092919081815260200182805461184790612d4f565b80156118945780601f1061186957610100808354040283529160200191611894565b820191906000526020600020905b81548152906001019060200180831161187757829003601f168201915b50505050508282815181106118b957634e487b7160e01b600052603260045260246000fd5b602002602001018190525080806118cf90612d8a565b9150506117d5565b6000600960006119518888888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8c018190048102820181019092528a815292508a91508990819084018382808284376000920191909152506122d392505050565b81526020810191909152604001600020546001600160a01b03169695505050505050565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146119ed5760405162461bcd60e51b815260206004820152601b60248201527f53656e646572206973206e6f74206e616d6520736572766963652e0000000000604482015260640161069b565b80600b600061165e8989898080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8d018190048102820181019092528b815292508b91508a90819084018382808284376000920191909152506122d392505050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611ade5760405162461bcd60e51b815260206004820152601b60248201527f53656e646572206973206e6f74206e616d6520736572766963652e0000000000604482015260640161069b565b818160086000611b588b8b8b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284376000920191909152506122d392505050565b81526020019081526020016000209190611b73929190612309565b5050505050505050565b606060076000611bc285858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061222e92505050565b8152602001908152602001600020805480602002602001604051908101604052809291908181526020016000905b8282101561061b578382906000526020600020018054611c0f90612d4f565b80601f0160208091040260200160405190810160405280929190818152602001828054611c3b90612d4f565b8015611c885780601f10611c5d57610100808354040283529160200191611c88565b820191906000526020600020905b815481529060010190602001808311611c6b57829003601f168201915b505050505081526020019060010190611bf0565b606060086000611d168888888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8c018190048102820181019092528a815292508a91508990819084018382808284376000920191909152506122d392505050565b81526020019081526020016000208054611d2f90612d4f565b80601f0160208091040260200160405190810160405280929190818152602001828054611d5b90612d4f565b8015611da85780601f10611d7d57610100808354040283529160200191611da8565b820191906000526020600020905b815481529060010190602001808311611d8b57829003601f168201915b5050505050905095945050505050565b606060016000611dfd85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061222e92505050565b8152602001908152602001600020805480602002602001604051908101604052809291908181526020016000905b8282101561061b578382906000526020600020018054611e4a90612d4f565b80601f0160208091040260200160405190810160405280929190818152602001828054611e7690612d4f565b8015611ec35780601f10611e9857610100808354040283529160200191611ec3565b820191906000526020600020905b815481529060010190602001808311611ea657829003601f168201915b505050505081526020019060010190611e2b565b611efb60405180606001604052806060815260200160608152602001600081525090565b600080611f3d87878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061222e92505050565b81526020019081526020016000208383604051611f5b929190612af2565b9081526020016040518091039020604051806060016040529081600082018054611f8490612d4f565b80601f0160208091040260200160405190810160405280929190818152602001828054611fb090612d4f565b8015611ffd5780601f10611fd257610100808354040283529160200191611ffd565b820191906000526020600020905b815481529060010190602001808311611fe057829003601f168201915b5050505050815260200160018201805461201690612d4f565b80601f016020809104026020016040519081016040528092919081815260200182805461204290612d4f565b801561208f5780601f106120645761010080835404028352916020019161208f565b820191906000526020600020905b81548152906001019060200180831161207257829003601f168201915b505050505081526020016002820154815250509050949350505050565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146121245760405162461bcd60e51b815260206004820152601b60248201527f53656e646572206973206e6f74206e616d6520736572766963652e0000000000604482015260640161069b565b806009600061219d8989898080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8d018190048102820181019092528b815292508b91508a90819084018382808284376000920191909152506122d392505050565b815260200190815260200160002060006101000a8154816001600160a01b0302191690836001600160a01b03160217905550505050505050565b6040805180820190915260008082526020820152600460006116ce87878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061222e92505050565b60405163751e2e3160e01b81526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063751e2e319061227d908590600401612c62565b60206040518083038186803b15801561229557600080fd5b505afa1580156122a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122cd9190612a85565b92915050565b60008383836040516020016122ea93929190612b1e565b6040516020818303038152906040528051906020012090509392505050565b82805461231590612d4f565b90600052602060002090601f016020900481019282612337576000855561237d565b82601f106123505782800160ff1982351617855561237d565b8280016001018555821561237d579182015b8281111561237d578235825591602001919060010190612362565b50612389929150612401565b5090565b82805461239990612d4f565b90600052602060002090601f0160209004810192826123bb576000855561237d565b82601f106123d457805160ff191683800117855561237d565b8280016001018555821561237d579182015b8281111561237d5782518255916020019190600101906123e6565b5b808211156123895760008155600101612402565b80356001600160a01b038116811461242d57600080fd5b919050565b60008083601f840112612443578182fd5b50813567ffffffffffffffff81111561245a578182fd5b60208301915083602082850101111561247257600080fd5b9250929050565b600082601f830112612489578081fd5b813567ffffffffffffffff808211156124a4576124a4612dbb565b604051601f8301601f19908116603f011681019082821181831017156124cc576124cc612dbb565b816040528381528660208588010111156124e4578485fd5b8360208701602083013792830160200193909352509392505050565b600080600080600060608688031215612517578081fd5b61252086612416565b9450602086013567ffffffffffffffff8082111561253c578283fd5b61254889838a01612432565b90965094506040880135915080821115612560578283fd5b5061256d88828901612432565b969995985093965092949392505050565b60008060008060008060808789031215612596578081fd5b61259f87612416565b9550602087013567ffffffffffffffff808211156125bb578283fd5b6125c78a838b01612432565b909750955060408901359150808211156125df578283fd5b506125ec89828a01612432565b90945092506125ff905060608801612416565b90509295509295509295565b60008060008060008060808789031215612623578182fd5b61262c87612416565b9550602087013567ffffffffffffffff80821115612648578384fd5b6126548a838b01612432565b9097509550604089013591508082111561266c578384fd5b5061267989828a01612432565b979a9699509497949695606090950135949350505050565b60008060008060008060006080888a0312156126ab578081fd5b6126b488612416565b9650602088013567ffffffffffffffff808211156126d0578283fd5b6126dc8b838c01612432565b909850965060408a01359150808211156126f4578283fd5b6127008b838c01612432565b909650945060608a0135915080821115612718578283fd5b506127258a828b01612432565b989b979a50959850939692959293505050565b600060208284031215612749578081fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114612778578182fd5b9392505050565b60008060208385031215612791578182fd5b823567ffffffffffffffff8111156127a7578283fd5b6127b385828601612432565b90969095509350505050565b600080600080604085870312156127d4578384fd5b843567ffffffffffffffff808211156127eb578586fd5b6127f788838901612432565b9096509450602087013591508082111561280f578384fd5b5061281c87828801612432565b95989497509550505050565b60008060008060008060808789031215612840578182fd5b863567ffffffffffffffff80821115612857578384fd5b6128638a838b01612432565b9098509650602089013591508082111561287b578384fd5b5061288889828a01612432565b979a9699509760408101359660609091013595509350505050565b600080600080600080600080600060a08a8c0312156128c0578283fd5b893567ffffffffffffffff808211156128d7578485fd5b6128e38d838e01612432565b909b50995060208c01359150808211156128fb578485fd5b6129078d838e01612432565b909950975060408c013591508082111561291f578485fd5b61292b8d838e01612432565b909750955060608c0135915080821115612943578485fd5b506129508c828d01612432565b9a9d999c50979a9699959894979660800135949350505050565b60008060008060008060808789031215612982578384fd5b863567ffffffffffffffff80821115612999578586fd5b6129a58a838b01612432565b9098509650602089013591508082111561287b578586fd5b600080600080606085870312156129d2578182fd5b843567ffffffffffffffff8111156129e8578283fd5b6129f487828801612432565b90989097506020870135966040013595509350505050565b60008060008060808587031215612a21578182fd5b843567ffffffffffffffff80821115612a38578384fd5b612a4488838901612479565b95506020870135915080821115612a59578384fd5b50612a6687828801612479565b935050612a7560408601612416565b9396929550929360600135925050565b600060208284031215612a96578081fd5b5051919050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60008151808452612ade816020860160208601612d1f565b601f01601f19169290920160200192915050565b8183823760009101908152919050565b60008251612b14818460208701612d1f565b9190910192915050565b6001600160a01b0384168152606060208201526000612b406060830185612ac6565b8281036040840152612b528185612ac6565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b8701019250838701855b82811015612bb057603f19888603018452612b9e858351612ac6565b94509285019290850190600101612b82565b5092979650505050505050565b608081526000612bd160808301888a612a9d565b8281036020840152612be4818789612a9d565b6040840195909552505060600152949350505050565b60a081526000612c0e60a083018b8d612a9d565b8281036020840152612c21818a8c612a9d565b90508281036040840152612c3681888a612a9d565b90508281036060840152612c4b818688612a9d565b9150508260808301529a9950505050505050505050565b6020815260006127786020830184612ac6565b608081526000612c886080830187612ac6565b8281036020840152612c9a8187612ac6565b6001600160a01b0395909516604084015250506060015292915050565b602081526000825160606020840152612cd36080840182612ac6565b90506020840151601f19848303016040850152612cf08282612ac6565b915050604084015160608401528091505092915050565b60008219821115612d1a57612d1a612da5565b500190565b60005b83811015612d3a578181015183820152602001612d22565b83811115612d49576000848401525b50505050565b600181811c90821680612d6357607f821691505b60208210811415612d8457634e487b7160e01b600052602260045260246000fd5b50919050565b6000600019821415612d9e57612d9e612da5565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fdfea26469706673582212204f4df82b5d8fe82a67368d64fa82a45000b533dc129ec27fc290b0a4dd6a3df364736f6c63430008040033000000000000000000000000ba4c1a3759c4e923191ac5664de3aee5cff1f20a