60806040526000805462210b7960a41b63ffffffff60a01b19909116179055600180546001600160a01b03191673dd66781d0e9a08d4fbb5ec7bac80b691be27f21d17905534801561005057600080fd5b50338061007757604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b61008081610086565b506100d6565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6109dc806100e56000396000f3fe6080604052600436106100c65760003560e01c8063715018a61161007f578063a9059cbb11610059578063a9059cbb14610226578063b2542e2814610246578063dd62ed3e14610266578063f2fde38b146102b257600080fd5b8063715018a6146101d25780638da5cb5b146101e957806395d89b411461021157600080fd5b806306fdde03146100d2578063095ea7b31461011a57806318160ddd1461014a57806323b872dd14610176578063313ce5671461019657806370a08231146101b257600080fd5b366100cd57005b600080fd5b3480156100de57600080fd5b5060408051808201909152600d81526c232061786f6e64616f2e6f726760981b60208201525b60405161011191906106f8565b60405180910390f35b34801561012657600080fd5b5061013a61013536600461075d565b6102d2565b6040519015158152602001610111565b34801561015657600080fd5b50600054600160a01b900463ffffffff165b604051908152602001610111565b34801561018257600080fd5b5061013a610191366004610787565b610349565b3480156101a257600080fd5b5060405160008152602001610111565b3480156101be57600080fd5b506101686101cd3660046107c3565b6103b5565b3480156101de57600080fd5b506101e7610406565b005b3480156101f557600080fd5b506000546040516001600160a01b039091168152602001610111565b34801561021d57600080fd5b5061010461041a565b34801561023257600080fd5b5061013a61024136600461075d565b61043a565b34801561025257600080fd5b506101e76102613660046107f4565b61044e565b34801561027257600080fd5b506101686102813660046108b9565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205463ffffffff1690565b3480156102be57600080fd5b506101e76102cd3660046107c3565b610558565b3360008181526004602090815260408083206001600160a01b038716808552908352818420805463ffffffff191663ffffffff881617905590518581529293909290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a350600192915050565b6001600160a01b038316600090815260046020908152604080832033845290915281208054839190839061038490849063ffffffff16610902565b92506101000a81548163ffffffff021916908363ffffffff1602179055506103ad84848461059b565b949350505050565b6001600160a01b03811660009081526003602052604081205460ff16156103df57506126ac919050565b506001600160a01b031660009081526002602052604090205463ffffffff1690565b919050565b61040e61067b565b61041860006106a8565b565b60606040518060600160405280602c815260200161097b602c9139905090565b600061044733848461059b565b9392505050565b61045661067b565b60005b81518161ffff16101561055457600160036000848461ffff168151811061048257610482610926565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060006101000a81548160ff021916908315150217905550818161ffff16815181106104d7576104d7610926565b60200260200101516001600160a01b0316600160009054906101000a90046001600160a01b03166001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6126ac60405161053a91815260200190565b60405180910390a38061054c8161093c565b915050610459565b5050565b61056061067b565b6001600160a01b03811661058f57604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b610598816106a8565b50565b6001600160a01b0383166000908152600260205260408120546105c590839063ffffffff16610902565b6001600160a01b03858116600090815260026020526040808220805463ffffffff191663ffffffff958616179055918616815220546106069184911661095d565b6001600160a01b03848116600081815260026020908152604091829020805463ffffffff191663ffffffff9690961695909517909455518581529092918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35060019392505050565b6000546001600160a01b031633146104185760405163118cdaa760e01b8152336004820152602401610586565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600060208083528351808285015260005b8181101561072557858101830151858201604001528201610709565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461040157600080fd5b6000806040838503121561077057600080fd5b61077983610746565b946020939093013593505050565b60008060006060848603121561079c57600080fd5b6107a584610746565b92506107b360208501610746565b9150604084013590509250925092565b6000602082840312156107d557600080fd5b61044782610746565b634e487b7160e01b600052604160045260246000fd5b6000602080838503121561080757600080fd5b823567ffffffffffffffff8082111561081f57600080fd5b818501915085601f83011261083357600080fd5b813581811115610845576108456107de565b8060051b604051601f19603f8301168101818110858211171561086a5761086a6107de565b60405291825284820192508381018501918883111561088857600080fd5b938501935b828510156108ad5761089e85610746565b8452938501939285019261088d565b98975050505050505050565b600080604083850312156108cc57600080fd5b6108d583610746565b91506108e360208401610746565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b63ffffffff82811682821603908082111561091f5761091f6108ec565b5092915050565b634e487b7160e01b600052603260045260246000fd5b600061ffff808316818103610953576109536108ec565b6001019392505050565b63ffffffff81811683821601908082111561091f5761091f6108ec56fe436c61696d202441786f6e44414f205265776172642061742068747470733a2f2f61786f6e64616f2e6f7267a26469706673582212204104e5ba6c1bf757b7de1ecfe3dc46f2bd56354b2173a8e64b022918e391d83b64736f6c63430008140033