0x60806040526003805460ff1916601217905534801561001d57600080fd5b50604051610da3380380610da383398101604090815281516020808401518385015160008054600160a060020a03191633908117825560035460ff16600a0a86026004819055908252600585529590209490945584018051929490930191849184918491610090916001918501906100b0565b5080516100a49060029060208401906100b0565b5050505050505061014b565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106100f157805160ff191683800117855561011e565b8280016001018555821561011e579182015b8281111561011e578251825591602001919060010190610103565b5061012a92915061012e565b5090565b61014891905b8082111561012a5760008155600101610134565b90565b610c498061015a6000396000f30060806040526004361061011c5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166305fefda7811461012157806306fdde031461013e578063095ea7b3146101c857806318160ddd1461020057806323b872dd14610227578063313ce5671461025157806342966c681461027c5780634b7503341461029457806370a08231146102a957806379cc6790146102ca5780638620410b146102ee5780638da5cb5b1461030357806395d89b4114610334578063a6f2ae3a14610349578063a9059cbb14610351578063b414d4b614610375578063cae9ca5114610396578063dd62ed3e146103ff578063e4849b3214610426578063e724529c1461043e578063f2fde38b14610464575b600080fd5b34801561012d57600080fd5b5061013c600435602435610485565b005b34801561014a57600080fd5b506101536104a7565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561018d578181015183820152602001610175565b50505050905090810190601f1680156101ba5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101d457600080fd5b506101ec600160a060020a0360043516602435610534565b604080519115158252519081900360200190f35b34801561020c57600080fd5b50610215610561565b60408051918252519081900360200190f35b34801561023357600080fd5b506101ec600160a060020a0360043581169060243516604435610567565b34801561025d57600080fd5b506102666105d6565b6040805160ff9092168252519081900360200190f35b34801561028857600080fd5b506101ec6004356105df565b3480156102a057600080fd5b50610215610657565b3480156102b557600080fd5b50610215600160a060020a036004351661065d565b3480156102d657600080fd5b506101ec600160a060020a036004351660243561066f565b3480156102fa57600080fd5b50610215610740565b34801561030f57600080fd5b50610318610746565b60408051600160a060020a039092168252519081900360200190f35b34801561034057600080fd5b50610153610755565b6102156107ad565b34801561035d57600080fd5b5061013c600160a060020a0360043516602435610839565b34801561038157600080fd5b506101ec600160a060020a0360043516610848565b3480156103a257600080fd5b50604080516020600460443581810135601f81018490048402850184019095528484526101ec948235600160a060020a031694602480359536959460649492019190819084018382808284375094975061085d9650505050505050565b34801561040b57600080fd5b50610215600160a060020a0360043581169060243516610976565b34801561043257600080fd5b50610215600435610993565b34801561044a57600080fd5b5061013c600160a060020a03600435166024351515610a43565b34801561047057600080fd5b5061013c600160a060020a0360043516610abe565b600054600160a060020a0316331461049c57600080fd5b600791909155600855565b60018054604080516020600284861615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561052c5780601f106105015761010080835404028352916020019161052c565b820191906000526020600020905b81548152906001019060200180831161050f57829003601f168201915b505050505081565b336000908152600660209081526040808320600160a060020a039590951683529390529190912055600190565b60045481565b600160a060020a038316600090815260066020908152604080832033845290915281205482111561059757600080fd5b600160a060020a03841660009081526006602090815260408083203384529091529020805483900390556105cc848484610b04565b5060019392505050565b60035460ff1681565b336000908152600560205260408120548211156105fb57600080fd5b3360008181526005602090815260409182902080548690039055600480548690039055815185815291517fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca59281900390910190a2506001919050565b60075481565b60056020526000908152604090205481565b600160a060020a03821660009081526005602052604081205482111561069457600080fd5b600160a060020a03831660009081526006602090815260408083203384529091529020548211156106c457600080fd5b600160a060020a0383166000818152600560209081526040808320805487900390556006825280832033845282529182902080548690039055600480548690039055815185815291517fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca59281900390910190a250600192915050565b60085481565b600054600160a060020a031681565b6002805460408051602060018416156101000260001901909316849004601f8101849004840282018401909252818152929183018282801561052c5780601f106105015761010080835404028352916020019161052c565b6000600854348115156107bc57fe5b3060009081526005602052604090205491900491508111156107dd57600080fd5b336000818152600560209081526040808320805486019055308084529281902080548690039055805185815290517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a390565b610844338383610b04565b5050565b60096020526000908152604090205460ff1681565b60008361086a8185610534565b1561096e576040517f8f4ffcb10000000000000000000000000000000000000000000000000000000081523360048201818152602483018790523060448401819052608060648501908152875160848601528751600160a060020a03871695638f4ffcb195948b94938b939192909160a490910190602085019080838360005b838110156109025781810151838201526020016108ea565b50505050905090810190601f16801561092f5780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b15801561095157600080fd5b505af1158015610965573d6000803e3d6000fd5b50505050600191505b509392505050565b600660209081526000928352604080842090915290825290205481565b336000908152600560205260408120548211156109af57600080fd5b50306000908152600560205260408082208054840190553380835281832080548590039055600754915191840292909183156108fc0291849190818181858888f19350505050158015610a06573d6000803e3d6000fd5b50604080518381529051309133917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a3919050565b600054600160a060020a03163314610a5a57600080fd5b600160a060020a038216600081815260096020908152604091829020805460ff191685151590811790915582519384529083015280517f48335238b4855f35377ed80f164e8c6f3c366e54ac00b96a6402d4a9814a03a59281900390910190a15050565b600054600160a060020a03163314610ad557600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600160a060020a0382161515610b1957600080fd5b600160a060020a038316600090815260056020526040902054811115610b3e57600080fd5b600160a060020a0382166000908152600560205260409020548181011015610b6557600080fd5b600160a060020a03831660009081526009602052604090205460ff1615610b8b57600080fd5b600160a060020a03821660009081526009602052604090205460ff1615610bb157600080fd5b600160a060020a03808416600081815260056020908152604080832080548790039055938616808352918490208054860190558351858152935191937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929081900390910190a35050505600a165627a7a723058209fd8981c16c885504926dc0202f40b489e936718d4e568c6cd60fcb9a6f567820029000000000000000000000000000000000000000000000000000000003b9aca00000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000000c66207374617220746f6b656e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000034653540000000000000000000000000000000000000000000000000000000000