0x608060405234801561000f575f80fd5b506106cf8061001d5f395ff3fe608060405234801561000f575f80fd5b5060043610610055575f3560e01c806323a69e75146100595780633a1c453c146100595780634445bced1461006e578063a1dab4eb14610059578063fa461e3314610059575b5f80fd5b61006c6100673660046103fa565b610093565b005b61008161007c36600461048a565b6100d9565b60405190815260200160405180910390f35b6100d3848484848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061030f92505050565b50505050565b5f6001600160a01b03808416908516106060611b9f8890036101ce57604080516001600160a01b038981166020830181905289821683850152908816606080840191909152835180840390910181526080830193849052631f18b37160e01b90935291631f18b3719161015491309187918a91608401610524565b60408051808303815f875af192505050801561018d575060408051601f3d908101601f1916820190925261018a9181019061055c565b60015b6101c7573d8080156101ba576040519150601f19603f3d011682016040523d82523d5f602084013e6101bf565b606091505b5090506102e4565b50506102e4565b866001600160a01b031663128acb083084878661020957610204600173fffd8963efd1fc6a506488495d951d5263988d26610592565b610219565b6102196401000276a360016105b9565b8c8c8c60405160200161024c939291906001600160a01b0393841681529183166020830152909116604082015260600190565b6040516020818303038152906040526040518663ffffffff1660e01b815260040161027b9594939291906105d9565b60408051808303815f875af19250505080156102b4575060408051601f3d908101601f191682019092526102b19181019061055c565b60015b6102e1573d8080156101ba576040519150601f19603f3d011682016040523d82523d5f602084013e6101bf565b50505b80516020036103045780806020019051810190610301919061061e565b92505b505095945050505050565b5f83138061031c57505f82135b61036c5760405162461bcd60e51b815260206004820152601860248201527f3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3d30303030300000000000000000604482015260640160405180910390fd5b5f805f838060200190518101906103839190610635565b9250925092505f805f8089136103b857846001600160a01b0316846001600160a01b031610888a6103b39061067f565b6103d8565b836001600160a01b0316856001600160a01b03161089896103d89061067f565b92509250925082156103ef57604051818152602081fd5b604051828152602081fd5b5f805f806060858703121561040d575f80fd5b8435935060208501359250604085013567ffffffffffffffff80821115610432575f80fd5b818701915087601f830112610445575f80fd5b813581811115610453575f80fd5b886020828501011115610464575f80fd5b95989497505060200194505050565b6001600160a01b0381168114610487575f80fd5b50565b5f805f805f60a0868803121561049e575f80fd5b8535945060208601356104b081610473565b935060408601356104c081610473565b925060608601356104d081610473565b949793965091946080013592915050565b5f81518084525f5b81811015610505576020818501810151868301820152016104e9565b505f602082860101526020601f19601f83011685010191505092915050565b60018060a01b03851681528315156020820152826040820152608060608201525f61055260808301846104e1565b9695505050505050565b5f806040838503121561056d575f80fd5b505080516020909101519092909150565b634e487b7160e01b5f52601160045260245ffd5b6001600160a01b038281168282160390808211156105b2576105b261057e565b5092915050565b6001600160a01b038181168382160190808211156105b2576105b261057e565b6001600160a01b0386811682528515156020830152604082018590528316606082015260a0608082018190525f90610613908301846104e1565b979650505050505050565b5f6020828403121561062e575f80fd5b5051919050565b5f805f60608486031215610647575f80fd5b835161065281610473565b602085015190935061066381610473565b604085015190925061067481610473565b809150509250925092565b5f600160ff1b82016106935761069361057e565b505f039056fea264697066735822122027c657b5dce3215c00a5ccd2762ee5a1d229fce73cc981f2c727dc287467560864736f6c63430008140033