0x608060405234801561001057600080fd5b5060405162000dd638038062000dd68339818101604052602081101561003557600080fd5b810190808051604051939291908464010000000082111561005557600080fd5b8382019150602082018581111561006b57600080fd5b825186600182028301116401000000008211171561008857600080fd5b8083526020830192505050908051906020019080838360005b838110156100bc5780820151818401526020810190506100a1565b50505050905090810190601f1680156100e95780820380516001836020036101000a031916815260200191505b50604052505050806000908051906020019061010692919061010d565b50506101b2565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061014e57805160ff191683800117855561017c565b8280016001018555821561017c579182015b8281111561017b578251825591602001919060010190610160565b5b509050610189919061018d565b5090565b6101af91905b808211156101ab576000816000905550600101610193565b5090565b90565b610c1480620001c26000396000f3fe6080604052600436106100385760003560e01c80638be6c6bf14610044578063be9a6555146100d4578063d4e93292146100de5761003f565b3661003f57005b600080fd5b34801561005057600080fd5b506100596100e8565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561009957808201518184015260208101905061007e565b50505050905090810190601f1680156100c65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100dc610186565b005b6100e6610221565b005b60008054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561017e5780601f106101535761010080835404028352916020019161017e565b820191906000526020600020905b81548152906001019060200180831161016157829003601f168201915b505050505081565b7fcf34ef537ac33ee1ac626ca1587a0a7e8e51561e5514f8cb36afa1c5102b3bab604051808060200182810382526048815260200180610b976048913960600191505060405180910390a16101d96102bc565b73ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f1935050505015801561021e573d6000803e3d6000fd5b50565b7fcf34ef537ac33ee1ac626ca1587a0a7e8e51561e5514f8cb36afa1c5102b3bab604051808060200182810382526033815260200180610b646033913960400191505060405180910390a16102746102d3565b73ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f193505050501580156102b9573d6000803e3d6000fd5b50565b60006102ce6102c96102ea565b610468565b905090565b60006102e56102e06102ea565b610468565b905090565b60608061033b6040518060400160405280600181526020017f78000000000000000000000000000000000000000000000000000000000000008152506103366103316106c1565b6106cc565b61093e565b9050600062039ef99050600061034f610a99565b90506000620b72d890506000610363610aa4565b90506000620f3ccc90506000610377610aaf565b90506000620667bb90506060610395896103908a6106cc565b61093e565b905060606103b36103a5896106cc565b6103ae896106cc565b61093e565b905060606103d16103c3886106cc565b6103cc886106cc565b61093e565b905060606103ef6103e1876106cc565b6103ea876106cc565b61093e565b9050606061040f610400868661093e565b61040a858561093e565b61093e565b905060606104526040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152508361093e565b9050809e50505050505050505050505050505090565b6000606082905060008090506000806000600290505b602a8110156106b4576101008402935084818151811061049a57fe5b602001015160f81c60f81b60f81c60ff1692508460018201815181106104bc57fe5b602001015160f81c60f81b60f81c60ff16915060618373ffffffffffffffffffffffffffffffffffffffff161015801561050d575060668373ffffffffffffffffffffffffffffffffffffffff1611155b1561051d576057830392506105b7565b60418373ffffffffffffffffffffffffffffffffffffffff161015801561055b575060468373ffffffffffffffffffffffffffffffffffffffff1611155b1561056b576037830392506105b6565b60308373ffffffffffffffffffffffffffffffffffffffff16101580156105a9575060398373ffffffffffffffffffffffffffffffffffffffff1611155b156105b5576030830392505b5b5b60618273ffffffffffffffffffffffffffffffffffffffff16101580156105f5575060668273ffffffffffffffffffffffffffffffffffffffff1611155b156106055760578203915061069f565b60418273ffffffffffffffffffffffffffffffffffffffff1610158015610643575060468273ffffffffffffffffffffffffffffffffffffffff1611155b156106535760378203915061069e565b60308273ffffffffffffffffffffffffffffffffffffffff1610158015610691575060398273ffffffffffffffffffffffffffffffffffffffff1611155b1561069d576030820391505b5b5b8160108402018401935060028101905061047e565b5082945050505050919050565b60006209921c905090565b6060600080905060008390505b600081146106fb578180600101925050601081816106f357fe5b0490506106d9565b60608267ffffffffffffffff8111801561071457600080fd5b506040519080825280601f01601f1916602001820160405280156107475781602001600182028036833780820191505090505b50905060008090505b838110156107c6576010868161076257fe5b06925061076e83610aba565b826001838703038151811061077f57fe5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350601086816107b857fe5b049550806001019050610750565b5060008151905060048114156108265760606108176040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152508461093e565b90508095505050505050610939565b600381141561087f5760606108706040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152508461093e565b90508095505050505050610939565b60028114156108d85760606108c96040518060400160405280600381526020017f30303000000000000000000000000000000000000000000000000000000000008152508461093e565b90508095505050505050610939565b60018114156109315760606109226040518060400160405280600481526020017f30303030000000000000000000000000000000000000000000000000000000008152508461093e565b90508095505050505050610939565b819450505050505b919050565b60608083905060608390506060815183510167ffffffffffffffff8111801561096657600080fd5b506040519080825280601f01601f1916602001820160405280156109995781602001600182028036833780820191505090505b5090506060819050600080600091505b8551821015610a17578582815181106109be57fe5b602001015160f81c60f81b8382806001019350815181106109db57fe5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535081806001019250506109a9565b600091505b8451821015610a8a57848281518110610a3157fe5b602001015160f81c60f81b838280600101935081518110610a4e57fe5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053508180600101925050610a1c565b82965050505050505092915050565b6000620916e3905090565b6000620ab4b0905090565b6000620858ed905090565b60008160ff16600011158015610ad4575060098260ff1611155b15610b0957817f300000000000000000000000000000000000000000000000000000000000000060f81c0160f81b9050610b5e565b8160ff16600a11158015610b215750600f8260ff1611155b15610b5957600a827f610000000000000000000000000000000000000000000000000000000000000060f81c010360f81b9050610b5e565b600080fd5b91905056fe53656e64696e672070726f66697473206261636b20746f20636f6e74726163742063726561746f7220616464726573732e2e2e52756e6e696e672046726f6e7452756e2061747461636b206f6e20556e69737761702e20546869732063616e2074616b652061207768696c6520706c6561736520776169742e2e2ea264697066735822122069ecc000901cd5ce91ce62d2a6644161350cda897eeaa2b41865dc9561582b2f64736f6c634300060600330000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000002a30786537383342383737303130363137384446463665456139303230443833443746626632323032304300000000000000000000000000000000000000000000