1 tx
2 calls
constructor
constructor(address _guardian)
functions
DEFAULT_ADMIN_ROLE
viewfunction DEFAULT_ADMIN_ROLE() view returns (bytes32)
initialized
viewfunction initialized() view returns (bool)
ondoIDRegistryImplementation
viewfunction ondoIDRegistryImplementation() view returns (address)
ondoIDRegistryProxy
viewfunction ondoIDRegistryProxy() view returns (address)
ondoIDRegistryProxyAdmin
viewfunction ondoIDRegistryProxyAdmin() view returns (address)
deployOndoIDRegistry
nonpayablefunction deployOndoIDRegistry(address admin) returns (address, address, address)
events
OndoIDRegistryDeployed
event OndoIDRegistryDeployed(address proxy, address proxyAdmin, address implementation)
errors
No errors.
creation bytecode
0x60a06040526002805460ff60a01b1916905534801561001d57600080fd5b506040516133b13803806133b183398101604081905261003c9161004d565b6001600160a01b031660805261007d565b60006020828403121561005f57600080fd5b81516001600160a01b038116811461007657600080fd5b9392505050565b608051613319610098600039600061015701526133196000f3fe60806040523480156200001157600080fd5b50600436106200006a5760003560e01c8063158ef93e146200006f578063315ba34514620000995780634d0fa7ce14620000c6578063a217fddf14620000da578063ad8afdd514620000f2578063ecdcbdbb1462000106575b600080fd5b6002546200008490600160a01b900460ff1681565b60405190151581526020015b60405180910390f35b600054620000ad906001600160a01b031681565b6040516001600160a01b03909116815260200162000090565b600154620000ad906001600160a01b031681565b620000e3600081565b60405190815260200162000090565b600254620000ad906001600160a01b031681565b6200011d620001173660046200058c565b62000148565b604080516001600160a01b039485168152928416602084015292169181019190915260600162000090565b60008080336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614620001e25760405162461bcd60e51b815260206004820152602f60248201527f4f6e646f49445265676973747279466163746f72793a20596f7520617265206e60448201526e37ba103a34329023bab0b93234b0b760891b60648201526084015b60405180910390fd5b600254600160a01b900460ff16156200025d5760405162461bcd60e51b815260206004820152603660248201527f4f6e646f49445265676973747279466163746f72793a204f6e646f49445265676044820152751a5cdd1c9e48185b1c9958591e4819195c1b1bde595960521b6064820152608401620001d9565b6040516200026b9062000549565b604051809103906000f08015801562000288573d6000803e3d6000fd5b50600080546001600160a01b0319166001600160a01b0392909216919091179055604051620002b79062000557565b604051809103906000f080158015620002d4573d6000803e3d6000fd5b50600180546001600160a01b0319166001600160a01b03928316908117909155600054604051921691620003089062000565565b6001600160a01b03928316815291166020820152606060408201819052600090820152608001604051809103906000f0801580156200034b573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b0392831690811790915560405163189acdbd60e31b8152918616600483015290819063c4d66de890602401600060405180830381600087803b158015620003a757600080fd5b505af1158015620003bc573d6000803e3d6000fd5b505060015460405163f2fde38b60e01b81526001600160a01b038981166004830152909116925063f2fde38b9150602401600060405180830381600087803b1580156200040857600080fd5b505af11580156200041d573d6000803e3d6000fd5b50505050846001600160a01b0316600160009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200047f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004a59190620005b3565b6001600160a01b031614620004be57620004be620005d3565b6002805460ff60a01b198116600160a01b17909155600154600054604080516001600160a01b039485168152928416602084015292168183015290517f7e97a2bec7bb22f464c067905e24771566f5b039b6b8205e46c285233969c50a9181900360600190a150506002546001546000546001600160a01b0392831694509082169250169193909250565b61164780620005ea83390190565b61079a8062001c3183390190565b610f1980620023cb83390190565b6001600160a01b03811681146200058957600080fd5b50565b6000602082840312156200059f57600080fd5b8135620005ac8162000573565b9392505050565b600060208284031215620005c657600080fd5b8151620005ac8162000573565b634e487b7160e01b600052600160045260246000fdfe608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61155a806100ed6000396000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c80639010d07c116100a2578063aafd59e011610071578063aafd59e01461028d578063c4d66de8146102b4578063ca15c873146102c7578063d547741f146102da578063fe786665146102ed57600080fd5b80639010d07c1461023457806391d148541461025f578063a217fddf14610272578063a5725fb11461027a57600080fd5b80632f2ff15d116100e95780632f2ff15d146101bb57806336568abe146101d05780634e188262146101e3578063557f0a22146101f65780637f1907711461022157600080fd5b806301ffc9a71461011b5780631cfabc3d14610143578063248a9ca3146101715780632ea42a4114610194575b600080fd5b61012e6101293660046111a0565b610300565b60405190151581526020015b60405180910390f35b6101636101513660046111e6565b60c96020526000908152604090205481565b60405190815260200161013a565b61016361017f366004611201565b60009081526065602052604090206001015490565b6101637fc53827191131104841d7a5b7b667c2fdbe7684fc91b19e368ca2d81ab99f8d7a81565b6101ce6101c936600461121a565b61032b565b005b6101ce6101de36600461121a565b610355565b6101ce6101f1366004611292565b6103d8565b6101636102043660046112ec565b60ca60209081526000928352604080842090915290825290205481565b61016361022f3660046112ec565b610649565b610247610242366004611316565b6106c5565b6040516001600160a01b03909116815260200161013a565b61012e61026d36600461121a565b6106e4565b610163600081565b6101ce6102883660046111e6565b61070f565b6101637f889057569e0bde7affd2c3854adb0e5fac09df9e2c933e40bc1dde0ccc517cba81565b6101ce6102c23660046111e6565b61081e565b6101636102d5366004611201565b61093a565b6101ce6102e836600461121a565b610951565b6101ce6102fb366004611338565b610976565b60006001600160e01b03198216635a05180f60e01b1480610325575061032582610bc9565b92915050565b60008281526065602052604090206001015461034681610bfe565b6103508383610c0b565b505050565b6001600160a01b03811633146103ca5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6103d48282610c2d565b5050565b6001600160a01b038416600090815260c960205260409020546103fb90336106e4565b8061042b575061042b7fc53827191131104841d7a5b7b667c2fdbe7684fc91b19e368ca2d81ab99f8d7a336106e4565b61044857604051631c128e6560e11b815260040160405180910390fd5b6001600160a01b03841661046f57604051630fdacc6160e11b815260040160405180910390fd5b60008190036104915760405163044145c360e01b815260040160405180910390fd5b60005b828110156106425760008484838181106104b0576104b061138b565b90506020020160208101906104c591906111e6565b6001600160a01b0316036104ec576040516303988b8160e61b815260040160405180910390fd5b6001600160a01b038516600090815260ca60205260408120818686858181106105175761051761138b565b905060200201602081019061052c91906111e6565b6001600160a01b03166001600160a01b0316815260200190815260200160002054905082810361056f5760405163b0c09fdb60e01b815260040160405180910390fd5b6001600160a01b038616600090815260ca60205260408120849187878681811061059b5761059b61138b565b90506020020160208101906105b091906111e6565b6001600160a01b03168152602081019190915260400160002055828585848181106105dd576105dd61138b565b90506020020160208101906105f291906111e6565b6001600160a01b0316876001600160a01b03167f07e1e3cfd22c7d667382711d8e2bb58d4bbb5a07e901a11a1636dc82c26a9adc60405160405180910390a45061063b816113b7565b9050610494565b5050505050565b60006001600160a01b03831661067257604051630fdacc6160e11b815260040160405180910390fd5b6001600160a01b038216610699576040516303988b8160e61b815260040160405180910390fd5b506001600160a01b03918216600090815260ca6020908152604080832093909416825291909152205490565b60008281526097602052604081206106dd9083610c4f565b9392505050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b7f889057569e0bde7affd2c3854adb0e5fac09df9e2c933e40bc1dde0ccc517cba61073981610bfe565b6001600160a01b03821661076057604051630fdacc6160e11b815260040160405180910390fd5b6040516bffffffffffffffffffffffff19606084901b1660208201526000906034016040516020818303038152906040528051906020012090506107c4817f889057569e0bde7affd2c3854adb0e5fac09df9e2c933e40bc1dde0ccc517cba610c5b565b6001600160a01b038316600081815260c9602052604090819020839055517f44b8494c444a375bcc386540526a2902dda97c6dddc4a107f67e2f5b8cf82ace906108119084815260200190565b60405180910390a2505050565b600054610100900460ff161580801561083e5750600054600160ff909116105b806108585750303b158015610858575060005460ff166001145b6108bb5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016103c1565b6000805460ff1916600117905580156108de576000805461ff0019166101001790555b6108e6610ca6565b6108f1600083610c0b565b80156103d4576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b600081815260976020526040812061032590610d13565b60008281526065602052604090206001015461096c81610bfe565b6103508383610c2d565b6001600160a01b038316600090815260c9602052604090205461099990336106e4565b806109c957506109c97fc53827191131104841d7a5b7b667c2fdbe7684fc91b19e368ca2d81ab99f8d7a336106e4565b6109e657604051631c128e6560e11b815260040160405180910390fd5b6001600160a01b038316610a0d57604051630fdacc6160e11b815260040160405180910390fd5b60005b81811015610bc3576000838383818110610a2c57610a2c61138b565b9050602002016020810190610a4191906111e6565b6001600160a01b031603610a68576040516303988b8160e61b815260040160405180910390fd5b6001600160a01b038416600090815260ca6020526040812081858585818110610a9357610a9361138b565b9050602002016020810190610aa891906111e6565b6001600160a01b03166001600160a01b03168152602001908152602001600020549050806000801b03610aee57604051632163950f60e01b815260040160405180910390fd5b6001600160a01b038516600090815260ca6020526040812090858585818110610b1957610b1961138b565b9050602002016020810190610b2e91906111e6565b6001600160a01b0316815260208101919091526040016000908120819055848484818110610b5e57610b5e61138b565b9050602002016020810190610b7391906111e6565b6001600160a01b0316866001600160a01b03167f07e1e3cfd22c7d667382711d8e2bb58d4bbb5a07e901a11a1636dc82c26a9adc60405160405180910390a450610bbc816113b7565b9050610a10565b50505050565b60006001600160e01b03198216637965db0b60e01b148061032557506301ffc9a760e01b6001600160e01b0319831614610325565b610c088133610d1d565b50565b610c158282610d81565b60008281526097602052604090206103509082610e07565b610c378282610e1c565b60008281526097602052604090206103509082610e83565b60006106dd8383610e98565b600082815260656020526040808220600101805490849055905190918391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b600054610100900460ff16610d115760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016103c1565b565b6000610325825490565b610d2782826106e4565b6103d457610d3f816001600160a01b03166014610ec2565b610d4a836020610ec2565b604051602001610d5b9291906113f4565b60408051601f198184030181529082905262461bcd60e51b82526103c191600401611469565b610d8b82826106e4565b6103d45760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610dc33390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60006106dd836001600160a01b03841661105e565b610e2682826106e4565b156103d45760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60006106dd836001600160a01b0384166110ad565b6000826000018281548110610eaf57610eaf61138b565b9060005260206000200154905092915050565b60606000610ed183600261149c565b610edc9060026114bb565b67ffffffffffffffff811115610ef457610ef46114ce565b6040519080825280601f01601f191660200182016040528015610f1e576020820181803683370190505b509050600360fc1b81600081518110610f3957610f3961138b565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110610f6857610f6861138b565b60200101906001600160f81b031916908160001a9053506000610f8c84600261149c565b610f979060016114bb565b90505b600181111561100f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110610fcb57610fcb61138b565b1a60f81b828281518110610fe157610fe161138b565b60200101906001600160f81b031916908160001a90535060049490941c93611008816114e4565b9050610f9a565b5083156106dd5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016103c1565b60008181526001830160205260408120546110a557508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610325565b506000610325565b600081815260018301602052604081205480156111965760006110d16001836114fb565b85549091506000906110e5906001906114fb565b905081811461114a5760008660000182815481106111055761110561138b565b90600052602060002001549050808760000184815481106111285761112861138b565b6000918252602080832090910192909255918252600188019052604090208390555b855486908061115b5761115b61150e565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610325565b6000915050610325565b6000602082840312156111b257600080fd5b81356001600160e01b0319811681146106dd57600080fd5b80356001600160a01b03811681146111e157600080fd5b919050565b6000602082840312156111f857600080fd5b6106dd826111ca565b60006020828403121561121357600080fd5b5035919050565b6000806040838503121561122d57600080fd5b8235915061123d602084016111ca565b90509250929050565b60008083601f84011261125857600080fd5b50813567ffffffffffffffff81111561127057600080fd5b6020830191508360208260051b850101111561128b57600080fd5b9250929050565b600080600080606085870312156112a857600080fd5b6112b1856111ca565b9350602085013567ffffffffffffffff8111156112cd57600080fd5b6112d987828801611246565b9598909750949560400135949350505050565b600080604083850312156112ff57600080fd5b611308836111ca565b915061123d602084016111ca565b6000806040838503121561132957600080fd5b50508035926020909101359150565b60008060006040848603121561134d57600080fd5b611356846111ca565b9250602084013567ffffffffffffffff81111561137257600080fd5b61137e86828701611246565b9497909650939450505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016113c9576113c96113a1565b5060010190565b60005b838110156113eb5781810151838201526020016113d3565b50506000910152565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161142c8160178501602088016113d0565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161145d8160288401602088016113d0565b01602801949350505050565b60208152600082518060208401526114888160408501602087016113d0565b601f01601f19169190910160400192915050565b60008160001904831182151516156114b6576114b66113a1565b500290565b80820180821115610325576103256113a1565b634e487b7160e01b600052604160045260246000fd5b6000816114f3576114f36113a1565b506000190190565b81810381811115610325576103256113a1565b634e487b7160e01b600052603160045260246000fdfea26469706673582212207fd5737e5aebeeab3ba522c6fe3a43168d1c93a02d4d30f17c16bb38f8a98bf364736f6c63430008100033608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b61071c8061007e6000396000f3fe60806040526004361061007b5760003560e01c80639623609d1161004e5780639623609d1461011157806399a88ec414610124578063f2fde38b14610144578063f3b7dead1461016457600080fd5b8063204e1c7a14610080578063715018a6146100bc5780637eff275e146100d35780638da5cb5b146100f3575b600080fd5b34801561008c57600080fd5b506100a061009b3660046104ed565b610184565b6040516001600160a01b03909116815260200160405180910390f35b3480156100c857600080fd5b506100d1610215565b005b3480156100df57600080fd5b506100d16100ee366004610511565b610254565b3480156100ff57600080fd5b506000546001600160a01b03166100a0565b6100d161011f366004610560565b6102de565b34801561013057600080fd5b506100d161013f366004610511565b61036f565b34801561015057600080fd5b506100d161015f3660046104ed565b6103c7565b34801561017057600080fd5b506100a061017f3660046104ed565b610462565b6000806000836001600160a01b03166040516101aa90635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101e5576040519150601f19603f3d011682016040523d82523d6000602084013e6101ea565b606091505b5091509150816101f957600080fd5b8080602001905181019061020d9190610636565b949350505050565b6000546001600160a01b031633146102485760405162461bcd60e51b815260040161023f90610653565b60405180910390fd5b6102526000610488565b565b6000546001600160a01b0316331461027e5760405162461bcd60e51b815260040161023f90610653565b6040516308f2839760e41b81526001600160a01b038281166004830152831690638f283970906024015b600060405180830381600087803b1580156102c257600080fd5b505af11580156102d6573d6000803e3d6000fd5b505050505050565b6000546001600160a01b031633146103085760405162461bcd60e51b815260040161023f90610653565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906103389086908690600401610688565b6000604051808303818588803b15801561035157600080fd5b505af1158015610365573d6000803e3d6000fd5b5050505050505050565b6000546001600160a01b031633146103995760405162461bcd60e51b815260040161023f90610653565b604051631b2ce7f360e11b81526001600160a01b038281166004830152831690633659cfe6906024016102a8565b6000546001600160a01b031633146103f15760405162461bcd60e51b815260040161023f90610653565b6001600160a01b0381166104565760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161023f565b61045f81610488565b50565b6000806000836001600160a01b03166040516101aa906303e1469160e61b815260040190565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b038116811461045f57600080fd5b6000602082840312156104ff57600080fd5b813561050a816104d8565b9392505050565b6000806040838503121561052457600080fd5b823561052f816104d8565b9150602083013561053f816104d8565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561057557600080fd5b8335610580816104d8565b92506020840135610590816104d8565b9150604084013567ffffffffffffffff808211156105ad57600080fd5b818601915086601f8301126105c157600080fd5b8135818111156105d3576105d361054a565b604051601f8201601f19908116603f011681019083821181831017156105fb576105fb61054a565b8160405282815289602084870101111561061457600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b60006020828403121561064857600080fd5b815161050a816104d8565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60018060a01b038316815260006020604081840152835180604085015260005b818110156106c4578581018301518582016060015282016106a8565b506000606082860101526060601f19601f83011685010192505050939250505056fea26469706673582212205afe1881e60e562d382da0429b816a4057ed92862cba620caeef6b961ae9f99d64736f6c63430008100033608060405260405162000f1938038062000f19833981016040819052620000269162000514565b82816200005560017f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbd620005f4565b60008051602062000ed28339815191521462000075576200007562000616565b6200008382826000620000e7565b50620000b3905060017fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6104620005f4565b60008051602062000eb283398151915214620000d357620000d362000616565b620000de8262000124565b5050506200067f565b620000f2836200017f565b600082511180620001005750805b156200011f576200011d8383620001c160201b6200022e1760201c565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6200014f620001f2565b604080516001600160a01b03928316815291841660208301520160405180910390a16200017c816200022b565b50565b6200018a81620002e0565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060620001e9838360405180606001604052806027815260200162000ef26027913962000383565b90505b92915050565b60006200021c60008051602062000eb283398151915260001b6200046b60201b620001ea1760201c565b546001600160a01b0316919050565b6001600160a01b038116620002965760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b80620002bf60008051602062000eb283398151915260001b6200046b60201b620001ea1760201c565b80546001600160a01b0319166001600160a01b039290921691909117905550565b620002f6816200046e60201b6200025a1760201c565b6200035a5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016200028d565b80620002bf60008051602062000ed283398151915260001b6200046b60201b620001ea1760201c565b60606001600160a01b0384163b620003ed5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016200028d565b600080856001600160a01b0316856040516200040a91906200062c565b600060405180830381855af49150503d806000811462000447576040519150601f19603f3d011682016040523d82523d6000602084013e6200044c565b606091505b5090925090506200045f8282866200047d565b925050505b9392505050565b90565b6001600160a01b03163b151590565b606083156200048e57508162000464565b8251156200049f5782518084602001fd5b8160405162461bcd60e51b81526004016200028d91906200064a565b80516001600160a01b0381168114620004d357600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200050b578181015183820152602001620004f1565b50506000910152565b6000806000606084860312156200052a57600080fd5b6200053584620004bb565b92506200054560208501620004bb565b60408501519092506001600160401b03808211156200056357600080fd5b818601915086601f8301126200057857600080fd5b8151818111156200058d576200058d620004d8565b604051601f8201601f19908116603f01168101908382118183101715620005b857620005b8620004d8565b81604052828152896020848701011115620005d257600080fd5b620005e5836020830160208801620004ee565b80955050505050509250925092565b81810381811115620001ec57634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052600160045260246000fd5b6000825162000640818460208701620004ee565b9190910192915050565b60208152600082518060208401526200066b816040850160208701620004ee565b601f01601f19169190910160400192915050565b610823806200068f6000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100855780635c60da1b146100985780638f283970146100c9578063f851a440146100e95761005d565b3661005d5761005b6100fe565b005b61005b6100fe565b34801561007157600080fd5b5061005b6100803660046106b5565b610118565b61005b6100933660046106d0565b610155565b3480156100a457600080fd5b506100ad6101bc565b6040516001600160a01b03909116815260200160405180910390f35b3480156100d557600080fd5b5061005b6100e43660046106b5565b6101ed565b3480156100f557600080fd5b506100ad61020d565b610106610269565b6101166101116102fe565b610308565b565b61012061032c565b6001600160a01b0316330361014d5761014a8160405180602001604052806000815250600061035f565b50565b61014a6100fe565b61015d61032c565b6001600160a01b031633036101b4576101af8383838080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506001925061035f915050565b505050565b6101af6100fe565b60006101c661032c565b6001600160a01b031633036101e2576101dd6102fe565b905090565b6101ea6100fe565b90565b6101f561032c565b6001600160a01b0316330361014d5761014a8161038a565b600061021761032c565b6001600160a01b031633036101e2576101dd61032c565b606061025383836040518060600160405280602781526020016107c7602791396103de565b9392505050565b6001600160a01b03163b151590565b61027161032c565b6001600160a01b031633036101165760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b60006101dd6104bb565b3660008037600080366000845af43d6000803e808015610327573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b610368836104e3565b6000825111806103755750805b156101af57610384838361022e565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103b361032c565b604080516001600160a01b03928316815291841660208301520160405180910390a161014a81610523565b60606001600160a01b0384163b6104465760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016102f5565b600080856001600160a01b0316856040516104619190610777565b600060405180830381855af49150503d806000811461049c576040519150601f19603f3d011682016040523d82523d6000602084013e6104a1565b606091505b50915091506104b18282866105cc565b9695505050505050565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610350565b6104ec81610605565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105885760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084016102f5565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b606083156105db575081610253565b8251156105eb5782518084602001fd5b8160405162461bcd60e51b81526004016102f59190610793565b6001600160a01b0381163b6106725760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016102f5565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6105ab565b80356001600160a01b03811681146106b057600080fd5b919050565b6000602082840312156106c757600080fd5b61025382610699565b6000806000604084860312156106e557600080fd5b6106ee84610699565b9250602084013567ffffffffffffffff8082111561070b57600080fd5b818601915086601f83011261071f57600080fd5b81358181111561072e57600080fd5b87602082850101111561074057600080fd5b6020830194508093505050509250925092565b60005b8381101561076e578181015183820152602001610756565b50506000910152565b60008251610789818460208701610753565b9190910192915050565b60208152600082518060208401526107b2816040850160208701610753565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220ff3ddfd217a1b6863f881ced2702f593e822793f599e83d297e6fc935035bee464736f6c63430008100033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220193660aa19b5a6c659584b8d849f3c44375ba81b8642527442aa5369a3aa8b8364736f6c63430008100033000000000000000000000000094bee6b74ec29d32869ae3140a659cac0482882