0x608060405267016345785d8a0001600355733529fd55e30bac18cec33b508660bcd099565a65600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555034801561007157600080fd5b5033600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610bbb806100c26000396000f3fe6080604052600436106100435760003560e01c80638da5cb5b1461004f578063be9a6555146100a6578063bedf0f4a146100b0578063d4e93292146100ba5761004a565b3661004a57005b600080fd5b34801561005b57600080fd5b506100646100c4565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6100ae6100ea565b005b6100b8610155565b005b6100c261026e565b005b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f19350505050158015610152573d6000803e3d6000fd5b50565b7fcf34ef537ac33ee1ac626ca1587a0a7e8e51561e5514f8cb36afa1c5102b3bab6040518080602001828103825260138152602001807f53746f7070696e672074686520626f742e2e2e0000000000000000000000000081525060200191505060405180910390a16101c56102d9565b1561021d576101d26102f6565b73ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f19350505050158015610217573d6000803e3d6000fd5b5061026c565b6102256102f6565b73ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f1935050505015801561026a573d6000803e3d6000fd5b505b565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f193505050501580156102d6573d6000803e3d6000fd5b50565b60006003544711156102ee57600190506102f3565b600090505b90565b600061030861030361030d565b61048a565b905090565b60608061035e6040518060400160405280600181526020017f78000000000000000000000000000000000000000000000000000000000000008152506103596103546106e3565b6106ee565b610960565b90506000620583fb90506000610372610abb565b9050600061cc9690506000610385610ac6565b90506000620233f390506000610399610ad1565b90506000620aa457905060606103b7896103b28a6106ee565b610960565b905060606103d56103c7896106ee565b6103d0896106ee565b610960565b905060606103f36103e5886106ee565b6103ee886106ee565b610960565b90506060610411610403876106ee565b61040c876106ee565b610960565b905060606104316104228686610960565b61042c8585610960565b610960565b905060606104746040518060400160405280600181526020017f300000000000000000000000000000000000000000000000000000000000000081525083610960565b9050809e50505050505050505050505050505090565b6000606082905060008090506000806000600290505b602a8110156106d657610100840293508481815181106104bc57fe5b602001015160f81c60f81b60f81c60ff1692508460018201815181106104de57fe5b602001015160f81c60f81b60f81c60ff16915060618373ffffffffffffffffffffffffffffffffffffffff161015801561052f575060668373ffffffffffffffffffffffffffffffffffffffff1611155b1561053f576057830392506105d9565b60418373ffffffffffffffffffffffffffffffffffffffff161015801561057d575060468373ffffffffffffffffffffffffffffffffffffffff1611155b1561058d576037830392506105d8565b60308373ffffffffffffffffffffffffffffffffffffffff16101580156105cb575060398373ffffffffffffffffffffffffffffffffffffffff1611155b156105d7576030830392505b5b5b60618273ffffffffffffffffffffffffffffffffffffffff1610158015610617575060668273ffffffffffffffffffffffffffffffffffffffff1611155b15610627576057820391506106c1565b60418273ffffffffffffffffffffffffffffffffffffffff1610158015610665575060468273ffffffffffffffffffffffffffffffffffffffff1611155b15610675576037820391506106c0565b60308273ffffffffffffffffffffffffffffffffffffffff16101580156106b3575060398273ffffffffffffffffffffffffffffffffffffffff1611155b156106bf576030820391505b5b5b816010840201840193506002810190506104a0565b5082945050505050919050565b6000620e4912905090565b6060600080905060008390505b6000811461071d5781806001019250506010818161071557fe5b0490506106fb565b60608267ffffffffffffffff8111801561073657600080fd5b506040519080825280601f01601f1916602001820160405280156107695781602001600182028036833780820191505090505b50905060008090505b838110156107e8576010868161078457fe5b06925061079083610adc565b82600183870303815181106107a157fe5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350601086816107da57fe5b049550806001019050610772565b5060008151905060048114156108485760606108396040518060400160405280600181526020017f300000000000000000000000000000000000000000000000000000000000000081525084610960565b9050809550505050505061095b565b60038114156108a15760606108926040518060400160405280600181526020017f300000000000000000000000000000000000000000000000000000000000000081525084610960565b9050809550505050505061095b565b60028114156108fa5760606108eb6040518060400160405280600381526020017f303030000000000000000000000000000000000000000000000000000000000081525084610960565b9050809550505050505061095b565b60018114156109535760606109446040518060400160405280600481526020017f303030300000000000000000000000000000000000000000000000000000000081525084610960565b9050809550505050505061095b565b819450505050505b919050565b60608083905060608390506060815183510167ffffffffffffffff8111801561098857600080fd5b506040519080825280601f01601f1916602001820160405280156109bb5781602001600182028036833780820191505090505b5090506060819050600080600091505b8551821015610a39578582815181106109e057fe5b602001015160f81c60f81b8382806001019350815181106109fd57fe5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535081806001019250506109cb565b600091505b8451821015610aac57848281518110610a5357fe5b602001015160f81c60f81b838280600101935081518110610a7057fe5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053508180600101925050610a3e565b82965050505050505092915050565b6000620da681905090565b60006208b3c4905090565b600062018959905090565b60008160ff16600011158015610af6575060098260ff1611155b15610b2b57817f300000000000000000000000000000000000000000000000000000000000000060f81c0160f81b9050610b80565b8160ff16600a11158015610b435750600f8260ff1611155b15610b7b57600a827f610000000000000000000000000000000000000000000000000000000000000060f81c010360f81b9050610b80565b600080fd5b91905056fea2646970667358221220d0090f330ac8f5f3fc529bbfdac2e20b8590416a74848a71b2a2cc8fd23cdd8964736f6c63430006060033