60606040526007805460ff19166012179055341561001c57600080fd5b5b5b60008054600160a060020a03191633600160a060020a03161790555b60075460ff16600a0a64012a05f20002600881905533600160a060020a031660009081526009602052604090819020919091558051908101604052600c81527f626964616b6120746f6b656e0000000000000000000000000000000000000000602082015260059080516100b2929160200190610101565b5060408051908101604052600481527f42444b5400000000000000000000000000000000000000000000000000000000602082015260069080516100fa929160200190610101565b505b6101a1565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061014257805160ff191683800117855561016f565b8280016001018555821561016f579182015b8281111561016f578251825591602001919060010190610154565b5b5061017c929150610180565b5090565b61019e91905b8082111561017c5760008155600101610186565b5090565b90565b610b5a806101b06000396000f300606060405236156100ac5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde0381146100b157806318160ddd1461013c5780631cd513bf14610161578063313ce5671461019d57806370a08231146101c657806388d695b2146101f75780638da5cb5b1461029a57806395d89b41146102c9578063a9059cbb14610354578063c97be18014610378578063f2fde38b146103a2575b600080fd5b34156100bc57600080fd5b6100c46103c3565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101015780820151818401525b6020016100e8565b50505050905090810190601f16801561012e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561014757600080fd5b61014f610461565b60405190815260200160405180910390f35b341561016c57600080fd5b610189600160a060020a0360043581169060243516604435610467565b604051901515815260200160405180910390f35b34156101a857600080fd5b6101b06105bd565b60405160ff909116815260200160405180910390f35b34156101d157600080fd5b61014f600160a060020a03600435166105c6565b60405190815260200160405180910390f35b341561020257600080fd5b6101896004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843782019150505050505091908035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437509496506105d895505050505050565b604051901515815260200160405180910390f35b34156102a557600080fd5b6102ad61066a565b604051600160a060020a03909116815260200160405180910390f35b34156102d457600080fd5b6100c4610679565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101015780820151818401525b6020016100e8565b50505050905090810190601f16801561012e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561035f57600080fd5b610376600160a060020a0360043516602435610717565b005b341561038357600080fd5b610376600160a060020a0360043516602435604435606435610727565b005b34156103ad57600080fd5b610376600160a060020a0360043516610756565b005b60058054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156104595780601f1061042e57610100808354040283529160200191610459565b820191906000526020600020905b81548152906001019060200180831161043c57829003601f168201915b505050505081565b60085481565b6000805433600160a060020a0390811691161461048357600080fd5b600754600160a060020a03851660009081526009602052604090205460ff909116600a0a92909202918290108015906104bc5750600082115b80156104ee5750600160a060020a0383166000908152600960205260409020546104ec818463ffffffff61079e16565b115b156105b057600160a060020a03841660009081526009602052604090205461051c908363ffffffff6107b816565b600160a060020a038086166000908152600960205260408082209390935590851681522054610551908363ffffffff61079e16565b600160a060020a03808516600081815260096020526040908190209390935591908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060016105b4565b5060005b5b5b9392505050565b60075460ff1681565b60096020526000908152604090205481565b60008060008451116105e957600080fd5b60008351116105f757600080fd5b5060005b83518163ffffffff16101561065e5761065533858363ffffffff168151811061062057fe5b9060200190602002015160075460ff16600a0a8663ffffffff86168151811061064557fe5b90602001906020020151026107cf565b5b6001016105fb565b600191505b5092915050565b600054600160a060020a031681565b60068054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156104595780601f1061042e57610100808354040283529160200191610459565b820191906000526020600020905b81548152906001019060200180831161043c57829003601f168201915b505050505081565b6107223383836107cf565b5b5050565b60005433600160a060020a0390811691161461074257600080fd5b61074e84848484610a5a565b5b5b50505050565b60005433600160a060020a0390811691161461077157600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b6000828201838110156107ad57fe5b8091505b5092915050565b6000828211156107c457fe5b508082035b92915050565b6000808080600160a060020a03861615156107e957600080fd5b600160a060020a0387166000908152600960205260409020548590101561080f57600080fd5b600160a060020a038616600090815260096020526040902054610838818763ffffffff61079e16565b1161084257600080fd5b600160a060020a0387166000908152600160205260409020541561099a57600160a060020a03871660009081526001602090815260408083205460029092529091205490945061089990429063ffffffff6107b816565b92506108ae8362278d0063ffffffff610adc16565b600160a060020a0388166000908152600460205260409020549092509050838210156108d957600080fd5b6108e9848263ffffffff61079e16565b82116109805761096f61094a61091584610909888663ffffffff61079e16565b9063ffffffff6107b816565b600160a060020a038a1660009081526003602052604090205461093e908563ffffffff610adc16565b9063ffffffff610af816565b600160a060020a0389166000908152600960205260409020549063ffffffff6107b816565b85111561097b57600080fd5b61099a565b600160a060020a0387166000908152600160205260408120555b5b600160a060020a0387166000908152600960205260409020546109c4908663ffffffff6107b816565b600160a060020a0380891660009081526009602052604080822093909355908816815220546109f9908663ffffffff61079e16565b600160a060020a03808816600081815260096020526040908190209390935591908916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9088905190815260200160405180910390a35b50505050505050565b600160a060020a03841660009081526001602052604090205415610a7d57600080fd5b600754600160a060020a03851660009081526001602090815260408083208690556003825280832060ff909416600a0a969096029283905560028152858220429055600490529390932081905561074e3385856107cf565b5b50505050565b6000808284811515610aea57fe5b0490508091505b5092915050565b600080831515610b0b5760009150610663565b50828202828482811515610b1b57fe5b04146107ad57fe5b8091505b50929150505600a165627a7a72305820d58198a1b1be96714d259f7164c78c5afa81f9425fe25b63e22883f1ce10d1040029