0x608060405234801561000f575f80fd5b506040516107a83803806107a883398101604081905261002e91610097565b8061003833610048565b61004181610048565b50506100c4565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f602082840312156100a7575f80fd5b81516001600160a01b03811681146100bd575f80fd5b9392505050565b6106d7806100d15f395ff3fe608060405260043610610079575f3560e01c80639623609d1161004c5780639623609d1461010957806399a88ec41461011c578063f2fde38b1461013b578063f3b7dead1461015a575f80fd5b8063204e1c7a1461007d578063715018a6146100b85780637eff275e146100ce5780638da5cb5b146100ed575b5f80fd5b348015610088575f80fd5b5061009c6100973660046104ee565b610179565b6040516001600160a01b03909116815260200160405180910390f35b3480156100c3575f80fd5b506100cc610219565b005b3480156100d9575f80fd5b506100cc6100e8366004610510565b61022c565b3480156100f8575f80fd5b505f546001600160a01b031661009c565b6100cc61011736600461055b565b61028f565b348015610127575f80fd5b506100cc610136366004610510565b6102fa565b348015610146575f80fd5b506100cc6101553660046104ee565b610330565b348015610165575f80fd5b5061009c6101743660046104ee565b6103ae565b5f805f836001600160a01b031660405161019d90635c60da1b60e01b815260040190565b5f60405180830381855afa9150503d805f81146101d5576040519150601f19603f3d011682016040523d82523d5f602084013e6101da565b606091505b5091509150816101fd57604051636bce18d760e01b815260040160405180910390fd5b80806020019051810190610211919061062a565b949350505050565b610221610432565b61022a5f61048b565b565b610234610432565b6040516308f2839760e41b81526001600160a01b038281166004830152831690638f283970906024015b5f604051808303815f87803b158015610275575f80fd5b505af1158015610287573d5f803e3d5ffd5b505050505050565b610297610432565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102c79086908690600401610645565b5f604051808303818588803b1580156102de575f80fd5b505af11580156102f0573d5f803e3d5ffd5b5050505050505050565b610302610432565b604051631b2ce7f360e11b81526001600160a01b038281166004830152831690633659cfe69060240161025e565b610338610432565b6001600160a01b0381166103a25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6103ab8161048b565b50565b5f805f836001600160a01b03166040516103d2906303e1469160e61b815260040190565b5f60405180830381855afa9150503d805f811461040a576040519150601f19603f3d011682016040523d82523d5f602084013e61040f565b606091505b5091509150816101fd57604051631545a42560e01b815260040160405180910390fd5b5f546001600160a01b0316331461022a5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610399565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146103ab575f80fd5b5f602082840312156104fe575f80fd5b8135610509816104da565b9392505050565b5f8060408385031215610521575f80fd5b823561052c816104da565b9150602083013561053c816104da565b809150509250929050565b634e487b7160e01b5f52604160045260245ffd5b5f805f6060848603121561056d575f80fd5b8335610578816104da565b92506020840135610588816104da565b9150604084013567ffffffffffffffff808211156105a4575f80fd5b818601915086601f8301126105b7575f80fd5b8135818111156105c9576105c9610547565b604051601f8201601f19908116603f011681019083821181831017156105f1576105f1610547565b81604052828152896020848701011115610609575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b5f6020828403121561063a575f80fd5b8151610509816104da565b60018060a01b03831681525f60206040602084015283518060408501525f5b8181101561068057858101830151858201606001528201610664565b505f606082860101526060601f19601f83011685010192505050939250505056fea264697066735822122028c5407379c16358260306abeb0930294ed5f1517b2ae4a8337a180132ea306c64736f6c634300081600330000000000000000000000000990be6db8c785fbbf9ded8baec612a10cae814b