0x608060405234801561001057600080fd5b5061056d806100206000396000f3fe60806040526004361061001e5760003560e01c8063caa5c23f14610023575b600080fd5b610036610031366004610241565b61004c565b6040516100439190610312565b60405180910390f35b606034156100a15760405162461bcd60e51b815260206004820152601b60248201527f4f6e6c79206d756c746963616c6c207769746820302076616c7565000000000060448201526064015b60405180910390fd5b8167ffffffffffffffff8111156100ba576100ba610374565b6040519080825280602002602001820160405280156100ed57816020015b60608152602001906001900390816100d85790505b50905060005b8281101561023a576000808585848181106101105761011061038a565b905060200281019061012291906103a0565b6101309060208101906103c0565b6001600160a01b031686868581811061014b5761014b61038a565b905060200281019061015d91906103a0565b61016b9060208101906103f0565b60405161017992919061043e565b6000604051808303816000865af19150503d80600081146101b6576040519150601f19603f3d011682016040523d82523d6000602084013e6101bb565b606091505b509150915081610207576044815110156101d457600080fd5b600481019050808060200190518101906101ee919061044e565b60405162461bcd60e51b815260040161009891906104fb565b8084848151811061021a5761021a61038a565b6020026020010181905250505080806102329061050e565b9150506100f3565b5092915050565b6000806020838503121561025457600080fd5b823567ffffffffffffffff8082111561026c57600080fd5b818501915085601f83011261028057600080fd5b81358181111561028f57600080fd5b8660208260051b85010111156102a457600080fd5b60209290920196919550909350505050565b60005b838110156102d15781810151838201526020016102b9565b838111156102e0576000848401525b50505050565b600081518084526102fe8160208601602086016102b6565b601f01601f19169290920160200192915050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561036757603f198886030184526103558583516102e6565b94509285019290850190600101610339565b5092979650505050505050565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b60008235603e198336030181126103b657600080fd5b9190910192915050565b6000602082840312156103d257600080fd5b81356001600160a01b03811681146103e957600080fd5b9392505050565b6000808335601e1984360301811261040757600080fd5b83018035915067ffffffffffffffff82111561042257600080fd5b60200191503681900382131561043757600080fd5b9250929050565b8183823760009101908152919050565b60006020828403121561046057600080fd5b815167ffffffffffffffff8082111561047857600080fd5b818401915084601f83011261048c57600080fd5b81518181111561049e5761049e610374565b604051601f8201601f19908116603f011681019083821181831017156104c6576104c6610374565b816040528281528760208487010111156104df57600080fd5b6104f08360208301602088016102b6565b979650505050505050565b6020815260006103e960208301846102e6565b600060001982141561053057634e487b7160e01b600052601160045260246000fd5b506001019056fea264697066735822122078f6a57e7a4732703fb0abd8346c73a425f495e13253f4394e867130d329f2df64736f6c63430008090033