0x608060405234801561001057600080fd5b5061069b806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063a67f9f8c14610046578063cfe79f85146100c8578063ddd2f08c146100fa575b600080fd5b6100786004803603606081101561005c57600080fd5b506001600160a01b03813516906020810135906040013561016a565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156100b457818101518382015260200161009c565b505050509050019250505060405180910390f35b610078600480360360608110156100de57600080fd5b506001600160a01b038135169060208101359060400135610302565b6100786004803603602081101561011057600080fd5b81019060208101813564010000000081111561012b57600080fd5b82018360208201111561013d57600080fd5b8035906020019184602083028401116401000000008311171561015f57600080fd5b509092509050610537565b606082820360020267ffffffffffffffff8111801561018857600080fd5b506040519080825280602002602001820160405280156101b2578160200160208202803683370190505b50905060005b8383038110156102fa576000856001600160a01b0316631e3dd18b8387016040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561020a57600080fd5b505afa15801561021e573d6000803e3d6000fd5b505050506040513d602081101561023457600080fd5b505160408051630240bc6b60e21b815290519192506001600160a01b03831691630902f1ac91600480820192606092909190829003018186803b15801561027a57600080fd5b505afa15801561028e573d6000803e3d6000fd5b505050506040513d60608110156102a457600080fd5b50805160209091015184518590600286029081106102be57fe5b602002602001018585600202600101815181106102d757fe5b6001600160701b03938416602091820292909201015291169052506001016101b8565b509392505050565b606082820360030267ffffffffffffffff8111801561032057600080fd5b5060405190808252806020026020018201604052801561034a578160200160208202803683370190505b50905060005b8383038110156102fa576000856001600160a01b0316631e3dd18b8387016040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b1580156103a257600080fd5b505afa1580156103b6573d6000803e3d6000fd5b505050506040513d60208110156103cc57600080fd5b5051835190915081908490600385029081106103e457fe5b60200260200101906001600160a01b031690816001600160a01b031681525050806001600160a01b0316630dfe16816040518163ffffffff1660e01b815260040160206040518083038186803b15801561043d57600080fd5b505afa158015610451573d6000803e3d6000fd5b505050506040513d602081101561046757600080fd5b5051835184906001600386020190811061047d57fe5b60200260200101906001600160a01b031690816001600160a01b031681525050806001600160a01b031663d21220a76040518163ffffffff1660e01b815260040160206040518083038186803b1580156104d657600080fd5b505afa1580156104ea573d6000803e3d6000fd5b505050506040513d602081101561050057600080fd5b5051835184906002600386020190811061051657fe5b6001600160a01b039092166020928302919091019091015250600101610350565b60606002820267ffffffffffffffff8111801561055357600080fd5b5060405190808252806020026020018201604052801561057d578160200160208202803683370190505b50905060005b8281101561065e5783838281811061059757fe5b905060200201356001600160a01b03166001600160a01b0316630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b1580156105df57600080fd5b505afa1580156105f3573d6000803e3d6000fd5b505050506040513d606081101561060957600080fd5b508051602090910151835184906002850290811061062357fe5b6020026020010184846002026001018151811061063c57fe5b6001600160701b03938416602091820292909201015291169052600101610583565b509291505056fea2646970667358221220c2e5dc86fa0822552ee331ffbb220e0df365c957242abbc9b5252216cdcd7cde64736f6c63430007040033