0x608060405234801561001057600080fd5b50610428806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063b66953c01461003b578063cfed246b14610068575b600080fd5b61004e610049366004610226565b610089565b604080519283529015156020830152015b60405180910390f35b61007b610076366004610226565b61014a565b60405190815260200161005f565b6000806000836001600160a01b0316631a026b816040518163ffffffff1660e01b8152600401602060405180830381865afa1580156100cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100f09190610256565b60ff16905080601211156101145761010981601261028f565b925060019150610144565b80601203610129576000925060019150610144565b80601210156101445761013d60128261028f565b9250600091505b50915091565b6040516238f13760e91b8152670de0b6b3a76400006004820181905260009182906001600160a01b038516906371e26e0090602401602060405180830381865afa15801561019c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c091906102a8565b90506101cd6001826102c1565b92506000806101db86610089565b9092509050811561021d5780610205576101f682600a6103c7565b61020090866102c1565b61021a565b61021082600a6103c7565b61021a90866103d3565b94505b50505050919050565b60006020828403121561023857600080fd5b81356001600160a01b038116811461024f57600080fd5b9392505050565b60006020828403121561026857600080fd5b815160ff8116811461024f57600080fd5b634e487b7160e01b600052601160045260246000fd5b818103818111156102a2576102a2610279565b92915050565b6000602082840312156102ba57600080fd5b5051919050565b6000826102de57634e487b7160e01b600052601260045260246000fd5b500490565b600181815b8085111561031e57816000190482111561030457610304610279565b8085161561031157918102915b93841c93908002906102e8565b509250929050565b600082610335575060016102a2565b81610342575060006102a2565b816001811461035857600281146103625761037e565b60019150506102a2565b60ff84111561037357610373610279565b50506001821b6102a2565b5060208310610133831016604e8410600b84101617156103a1575081810a6102a2565b6103ab83836102e3565b80600019048211156103bf576103bf610279565b029392505050565b600061024f8383610326565b60008160001904831182151516156103ed576103ed610279565b50029056fea2646970667358221220a7d1de547ddd6092cc46aea0882cf95078612a7a2b621c201c229f1d6e12410464736f6c63430008100033