60a06040526ddead000000000000000000000000608052601f805461ffff60b01b1960ff60a81b19909116600160a81b1716600160b81b1790553480156200004657600080fd5b506040518060400160405280600a81526020016958454e436c617373696360b01b8152506040518060400160405280600a81526020016958454e436c617373696360b01b815250633b9aca006040518060600160405280600081526020016004815260200160008152506040518060600160405280600081526020016004815260200160008152506040518060600160405280600081526020016004815260200160008152506040518060400160405280633b9aca008152602001633b9aca00815250604051806040016040528073ce85ef344fbb78775b53ef8fed8fbd9a45930b3d6001600160a01b03166001600160a01b0316815260200173ce85ef344fbb78775b53ef8fed8fbd9a45930b3d6001600160a01b03166001600160a01b031681525073ce85ef344fbb78775b53ef8fed8fbd9a45930b3d73ea181dbd88495a3653b3e21aa13248b0b36479406000620001a66200081e60201b60201c565b600080546001600160a01b0319166001600160a01b0383169081178255604051929350917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3508951620002059060019060208d01906200094d565b5088516200021b9060029060208c01906200094d565b506003805460ff1916600917908190556200023b9060ff16600a62000b96565b62000247908962000c81565b601a558651600e819055602080890151600f8190556040808b015160108190558a516011558a8401516012558a82015160135589516014558984015160155590890151601655620002bd939092620002a99290620018e662000822821b17901c565b6200082260201b620018e61790919060201c565b601781905550620002e8601354620002a96012546011546200082260201b620018e61790919060201c565b60188190555062000313601654620002a96015546014546200082260201b620018e61790919060201c565b601955600354620003299060ff16600a62000b96565b845162000337919062000c81565b601b556003546200034d9060ff16600a62000b96565b60208501516200035e919062000c81565b601c819055506200039c612710620003886001601a546200086860201b620019151790919060201c565b620008b660201b6200195a1790919060201c565b601d55825160038054610100600160a81b0319166101006001600160a01b039384160217905560208085015160048054919093166001600160a01b03199091161782556040805163c45a015560e01b81529051737a250d5630b4cf539739df2c5dacb4c659f2488d93849363c45a01559380830193919290829003018186803b1580156200042957600080fd5b505afa1580156200043e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004649190620009f3565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015620004ad57600080fd5b505afa158015620004c2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004e89190620009f3565b6040518363ffffffff1660e01b81526004016200050792919062000a1c565b602060405180830381600087803b1580156200052257600080fd5b505af115801562000537573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200055d9190620009f3565b601f80546001600160a01b03199081166001600160a01b0393841617909155601e80549091168383161790819055601a543060008181526006602090815260408083209587168352948152848220939093559081526009909152818120805460ff19908116600190811790925593871682529181208054909316821790925590600a90620005ea62000900565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff19968716179055601f5482168152600a90935281832080548516600190811790915530845282842080548616821790557f13da86008ba1c6922daee3e07db95305ef49ebced9f5467a0b8613fcc6b343e38054861682179055908716835290822080549093168117909255600b906200068962000900565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff19968716179055308152600b845282812080548616600190811790915588831682528382208054871682179055601f549092168152600c845291909120805490931617909155601a546200072c916009916200071891600a906200195a620008b6821b17901c565b6200086860201b620019151790919060201c565b6001600160a01b038416600090815260056020908152604090912091909155601a546200076591600a906200195a620008b6821b17901c565b6001600160a01b03831660008181526005602052604080822093909355601a54925191929091600080516020620039c183398151915291620007a79162000b04565b60405180910390a3826001600160a01b0316826001600160a01b0316600080516020620039c1833981519152620007f6600962000718600a601a54620008b660201b6200195a1790919060201c565b60405162000805919062000b04565b60405180910390a3505050505050505050505062000cf6565b3390565b60008062000831838562000b0d565b9050838110156200085f5760405162461bcd60e51b8152600401620008569062000a8c565b60405180910390fd5b90505b92915050565b600082620008795750600062000862565b600062000887838562000c81565b90508262000896858362000b28565b146200085f5760405162461bcd60e51b8152600401620008569062000ac3565b60006200085f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506200090f60201b60201c565b6000546001600160a01b031690565b60008183620009335760405162461bcd60e51b815260040162000856919062000a36565b50600062000942848662000b28565b9150505b9392505050565b8280546200095b9062000ca3565b90600052602060002090601f0160209004810192826200097f5760008555620009ca565b82601f106200099a57805160ff1916838001178555620009ca565b82800160010185558215620009ca579182015b82811115620009ca578251825591602001919060010190620009ad565b50620009d8929150620009dc565b5090565b5b80821115620009d85760008155600101620009dd565b60006020828403121562000a05578081fd5b81516001600160a01b03811681146200085f578182fd5b6001600160a01b0392831681529116602082015260400190565b6000602080835283518082850152825b8181101562000a645785810183015185820160400152820162000a46565b8181111562000a765783604083870101525b50601f01601f1916929092016040019392505050565b6020808252601b908201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604082015260600190565b60208082526021908201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6040820152607760f81b606082015260800190565b90815260200190565b6000821982111562000b235762000b2362000ce0565b500190565b60008262000b4457634e487b7160e01b81526012600452602481fd5b500490565b80825b600180861162000b5d575062000b8d565b81870482111562000b725762000b7262000ce0565b8086161562000b8057918102915b9490941c93800262000b4c565b94509492505050565b60006200085f60001960ff85168460008262000bb55750600162000946565b8162000bc45750600062000946565b816001811462000bdd576002811462000be85762000c1c565b600191505062000946565b60ff84111562000bfc5762000bfc62000ce0565b6001841b91508482111562000c155762000c1562000ce0565b5062000946565b5060208310610133831016604e8410600b841016171562000c54575081810a8381111562000c4e5762000c4e62000ce0565b62000946565b62000c63848484600162000b49565b80860482111562000c785762000c7862000ce0565b02949350505050565b600081600019048311821515161562000c9e5762000c9e62000ce0565b500290565b60028104600182168062000cb857607f821691505b6020821081141562000cda57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b60805160601c612ca562000d1c60003960008181610d5a0152610de60152612ca56000f3fe6080604052600436106103e85760003560e01c806387712e8c11610208578063b0be159a11610118578063cab03471116100ab578063dd62ed3e1161007a578063dd62ed3e14610aab578063ea7a6eb114610acb578063f0cd1dac14610ae0578063f2fde38b14610af5578063f61ffad614610b15576103ef565b8063cab0347114610a57578063d00efb2f14610a6c578063d9419b7314610a81578063dc44b6a014610a96576103ef565b8063c49b9a80116100e7578063c49b9a80146109f8578063c5d2418914610a18578063c816841b14610a2d578063c860795214610a42576103ef565b8063b0be159a14610983578063b49ece63146109a3578063c2d4640e146109c3578063c469b6dd146109e3576103ef565b8063a073d37f1161019b578063a7c257b21161016a578063a7c257b2146108ee578063a83f53a71461090e578063a8e1515014610923578063a9059cbb14610943578063a911928c14610963576103ef565b8063a073d37f14610884578063a08e671f14610899578063a2a17cda146108ae578063a457c2d7146108ce576103ef565b8063914eb66a116101d7578063914eb66a14610830578063918d56881461084557806395d89b411461085a578063962dc50a1461086f576103ef565b806387712e8c146107c657806388790a68146107e65780638c2fc7ad146107fb5780638da5cb5b1461081b576103ef565b80633e4e172811610303578063614d19b81161029657806370a082311161026557806370a08231146107315780637a62ba0314610751578063827312471461077157806382eefb4314610791578063844d591c146107a6576103ef565b8063614d19b8146106c757806361a23c69146106dc578063632e5442146106f1578063689b30c314610711576103ef565b806350b20cac116102d257806350b20cac146106525780635785b6511461067257806357a5802f146106925780635ac419e1146106a7576103ef565b80633e4e1728146105e85780633ecad271146105fd57806340aa81fe1461061d5780634a74bb021461063d576103ef565b806323b872dd1161037b578063313ce5671161034a578063313ce5671461056657806339509351146105885780633b97084a146105a85780633e07387c146105c8576103ef565b806323b872dd146104fc57806327c8f8351461051c5780632af38605146105315780632b112e4914610551576103ef565b80631694505e116103b75780631694505e1461048357806318160ddd146104a55780631afb1a9e146104ba578063200618df146104dc576103ef565b806303675260146103f457806306fdde031461041f578063095ea7b3146104415780630c70a9921461046e576103ef565b366103ef57005b600080fd5b34801561040057600080fd5b50610409610b35565b6040516104169190612abf565b60405180910390f35b34801561042b57600080fd5b50610434610b3b565b604051610416919061286b565b34801561044d57600080fd5b5061046161045c36600461265c565b610bcd565b6040516104169190612860565b34801561047a57600080fd5b50610409610beb565b34801561048f57600080fd5b50610498610bf1565b6040516104169190612811565b3480156104b157600080fd5b50610409610c00565b3480156104c657600080fd5b506104da6104d5366004612628565b610c06565b005b3480156104e857600080fd5b506104da6104f7366004612776565b610c6f565b34801561050857600080fd5b506104616105173660046125e8565b610ccf565b34801561052857600080fd5b50610498610d58565b34801561053d57600080fd5b506104da61054c366004612628565b610d7c565b34801561055d57600080fd5b50610409610ddc565b34801561057257600080fd5b5061057b610e18565b6040516104169190612b25565b34801561059457600080fd5b506104616105a336600461265c565b610e21565b3480156105b457600080fd5b506104da6105c336600461273d565b610e6f565b3480156105d457600080fd5b506104da6105e3366004612723565b610ea9565b3480156105f457600080fd5b50610498610efc565b34801561060957600080fd5b50610461610618366004612578565b610f10565b34801561062957600080fd5b50610461610638366004612578565b610f25565b34801561064957600080fd5b50610461610f3a565b34801561065e57600080fd5b506104da61066d366004612687565b610f4a565b34801561067e57600080fd5b5061046161068d366004612578565b61100f565b34801561069e57600080fd5b50610409611024565b3480156106b357600080fd5b506104da6106c2366004612776565b61102a565b3480156106d357600080fd5b50610461611084565b3480156106e857600080fd5b50610409611094565b3480156106fd57600080fd5b506104da61070c3660046126d9565b61109a565b34801561071d57600080fd5b506104da61072c366004612578565b611164565b34801561073d57600080fd5b5061040961074c366004612578565b6111c1565b34801561075d57600080fd5b506104da61076c36600461273d565b6111e0565b34801561077d57600080fd5b5061046161078c366004612578565b61121e565b34801561079d57600080fd5b5061040961123c565b3480156107b257600080fd5b506104da6107c1366004612628565b611242565b3480156107d257600080fd5b506104da6107e136600461273d565b6112a2565b3480156107f257600080fd5b506104096112dc565b34801561080757600080fd5b506104da610816366004612628565b6112e2565b34801561082757600080fd5b50610498611342565b34801561083c57600080fd5b506104da611351565b34801561085157600080fd5b506104da6113d0565b34801561086657600080fd5b5061043461140c565b34801561087b57600080fd5b5061040961141b565b34801561089057600080fd5b50610409611421565b3480156108a557600080fd5b50610409611427565b3480156108ba57600080fd5b506104da6108c9366004612628565b61142d565b3480156108da57600080fd5b506104616108e936600461265c565b61148d565b3480156108fa57600080fd5b506104da61090936600461273d565b6114f5565b34801561091a57600080fd5b5061040961152f565b34801561092f57600080fd5b5061046161093e366004612578565b611535565b34801561094f57600080fd5b5061046161095e36600461265c565b61154a565b34801561096f57600080fd5b5061046161097e366004612755565b61155e565b34801561098f57600080fd5b506104da61099e366004612687565b611563565b3480156109af57600080fd5b506104da6109be366004612723565b611622565b3480156109cf57600080fd5b506104da6109de366004612776565b611675565b3480156109ef57600080fd5b506104096116cf565b348015610a0457600080fd5b506104da610a13366004612723565b6116d5565b348015610a2457600080fd5b5061040961175c565b348015610a3957600080fd5b50610498611762565b348015610a4e57600080fd5b50610409611771565b348015610a6357600080fd5b50610409611777565b348015610a7857600080fd5b5061040961177d565b348015610a8d57600080fd5b50610461611783565b348015610aa257600080fd5b50610409611793565b348015610ab757600080fd5b50610409610ac63660046125b0565b611799565b348015610ad757600080fd5b506104986117c4565b348015610aec57600080fd5b506104096117d3565b348015610b0157600080fd5b506104da610b10366004612578565b6117d9565b348015610b2157600080fd5b506104da610b30366004612578565b61188f565b60085481565b606060018054610b4a90612ba1565b80601f0160208091040260200160405190810160405280929190818152602001828054610b7690612ba1565b8015610bc35780601f10610b9857610100808354040283529160200191610bc3565b820191906000526020600020905b815481529060010190602001808311610ba657829003601f168201915b5050505050905090565b6000610be1610bda61199c565b84846119a0565b5060015b92915050565b601b5481565b601e546001600160a01b031681565b601a5490565b610c0e61199c565b6000546001600160a01b03908116911614610c445760405162461bcd60e51b8152600401610c3b90612a01565b60405180910390fd5b6001600160a01b03919091166000908152600d60205260409020805460ff1916911515919091179055565b610c7761199c565b6000546001600160a01b03908116911614610ca45760405162461bcd60e51b8152600401610c3b90612a01565b601183905560128290556013819055610cc781610cc185856118e6565b906118e6565b601855505050565b6000610cdc848484611a54565b50610d4d84610ce961199c565b610d4885604051806060016040528060288152602001612c23602891396001600160a01b038a16600090815260066020526040812090610d2761199c565b6001600160a01b031681526020810191909152604001600020549190611db9565b6119a0565b5060015b9392505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b610d8461199c565b6000546001600160a01b03908116911614610db15760405162461bcd60e51b8152600401610c3b90612a01565b6001600160a01b03919091166000908152600960205260409020805460ff1916911515919091179055565b6000610e13610e0a7f00000000000000000000000000000000000000000000000000000000000000006111c1565b601a5490611df3565b905090565b60035460ff1690565b6000610be1610e2e61199c565b84610d488560066000610e3f61199c565b6001600160a01b03908116825260208083019390935260409182016000908120918c1681529252902054906118e6565b610e7761199c565b6000546001600160a01b03908116911614610ea45760405162461bcd60e51b8152600401610c3b90612a01565b601d55565b610eb161199c565b6000546001600160a01b03908116911614610ede5760405162461bcd60e51b8152600401610c3b90612a01565b601f8054911515600160b01b0260ff60b01b19909216919091179055565b60035461010090046001600160a01b031681565b600c6020526000908152604090205460ff1681565b600a6020526000908152604090205460ff1681565b601f54600160a81b900460ff1681565b610f5261199c565b6000546001600160a01b03908116911614610f7f5760405162461bcd60e51b8152600401610c3b90612a01565b60c98210610f8c57600080fd5b60005b82811015611009578160096000868685818110610fbc57634e487b7160e01b600052603260045260246000fd5b9050602002016020810190610fd19190612578565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905561100281612bdc565b9050610f8f565b50505050565b600b6020526000908152604090205460ff1681565b60145481565b61103261199c565b6000546001600160a01b0390811691161461105f5760405162461bcd60e51b8152600401610c3b90612a01565b600e839055600f829055601081905561107c81610cc185856118e6565b601755505050565b601f54600160b81b900460ff1681565b60155481565b6110a261199c565b6000546001600160a01b039081169116146110cf5760405162461bcd60e51b8152600401610c3b90612a01565b6107d182106110dd57600080fd5b60006110e98383612b6b565b9050806110f5336111c1565b101561110057600080fd5b60005b8381101561115d5761114a3386868481811061112f57634e487b7160e01b600052603260045260246000fd5b90506020020160208101906111449190612578565b85611e35565b508061115581612bdc565b915050611103565b5050505050565b61116c61199c565b6000546001600160a01b039081169116146111995760405162461bcd60e51b8152600401610c3b90612a01565b600380546001600160a01b0390921661010002610100600160a81b0319909216919091179055565b6001600160a01b0381166000908152600560205260409020545b919050565b6111e861199c565b6000546001600160a01b039081169116146112155760405162461bcd60e51b8152600401610c3b90612a01565b60085543600755565b6001600160a01b03166000908152600d602052604090205460ff1690565b60185481565b61124a61199c565b6000546001600160a01b039081169116146112775760405162461bcd60e51b8152600401610c3b90612a01565b6001600160a01b03919091166000908152600c60205260409020805460ff1916911515919091179055565b6112aa61199c565b6000546001600160a01b039081169116146112d75760405162461bcd60e51b8152600401610c3b90612a01565b601b55565b60115481565b6112ea61199c565b6000546001600160a01b039081169116146113175760405162461bcd60e51b8152600401610c3b90612a01565b6001600160a01b03919091166000908152600a60205260409020805460ff1916911515919091179055565b6000546001600160a01b031690565b61135961199c565b6000546001600160a01b039081169116146113865760405162461bcd60e51b8152600401610c3b90612a01565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6113d861199c565b6000546001600160a01b039081169116146114055760405162461bcd60e51b8152600401610c3b90612a01565b6000600755565b606060028054610b4a90612ba1565b601c5481565b601d5490565b60195481565b61143561199c565b6000546001600160a01b039081169116146114625760405162461bcd60e51b8152600401610c3b90612a01565b6001600160a01b03919091166000908152600b60205260409020805460ff1916911515919091179055565b6000610be161149a61199c565b84610d4885604051806060016040528060258152602001612c4b60259139600660006114c461199c565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190611db9565b6114fd61199c565b6000546001600160a01b0390811691161461152a5760405162461bcd60e51b8152600401610c3b90612a01565b601c55565b60165481565b60096020526000908152604090205460ff1681565b6000610d4d61155761199c565b8484611a54565b101590565b61156b61199c565b6000546001600160a01b039081169116146115985760405162461bcd60e51b8152600401610c3b90612a01565b60c982106115a557600080fd5b60005b828110156110095781600d60008686858181106115d557634e487b7160e01b600052603260045260246000fd5b90506020020160208101906115ea9190612578565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905561161b81612bdc565b90506115a8565b61162a61199c565b6000546001600160a01b039081169116146116575760405162461bcd60e51b8152600401610c3b90612a01565b601f8054911515600160b81b0260ff60b81b19909216919091179055565b61167d61199c565b6000546001600160a01b039081169116146116aa5760405162461bcd60e51b8152600401610c3b90612a01565b6014839055601582905560168190556116c781610cc185856118e6565b601955505050565b60105481565b6116dd61199c565b6000546001600160a01b0390811691161461170a5760405162461bcd60e51b8152600401610c3b90612a01565b601f805460ff60a81b1916600160a81b831515021790556040517f53726dfcaf90650aa7eb35524f4d3220f07413c8d6cb404cc8c18bf5591bc15990611751908390612860565b60405180910390a150565b600f5481565b601f546001600160a01b031681565b60125481565b60135481565b60075481565b601f54600160b01b900460ff1681565b600e5481565b6001600160a01b03918216600090815260066020908152604080832093909416825291909152205490565b6004546001600160a01b031681565b60175481565b6117e161199c565b6000546001600160a01b0390811691161461180e5760405162461bcd60e51b8152600401610c3b90612a01565b6001600160a01b0381166118345760405162461bcd60e51b8152600401610c3b90612901565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b61189761199c565b6000546001600160a01b039081169116146118c45760405162461bcd60e51b8152600401610c3b90612a01565b600480546001600160a01b0319166001600160a01b0392909216919091179055565b6000806118f38385612b33565b905083811015610d515760405162461bcd60e51b8152600401610c3b90612989565b60008261192457506000610be5565b60006119308385612b6b565b90508261193d8583612b4b565b14610d515760405162461bcd60e51b8152600401610c3b906129c0565b6000610d5183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611f19565b3390565b6001600160a01b0383166119c65760405162461bcd60e51b8152600401610c3b90612a7b565b6001600160a01b0382166119ec5760405162461bcd60e51b8152600401610c3b90612947565b6001600160a01b0380841660008181526006602090815260408083209487168084529490915290819020849055517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92590611a47908590612abf565b60405180910390a3505050565b60006001600160a01b038416611a7c5760405162461bcd60e51b8152600401610c3b90612a36565b6001600160a01b038316611aa25760405162461bcd60e51b8152600401610c3b906128be565b601f54600160a01b900460ff1615611ac657611abf848484611e35565b9050610d51565b6001600160a01b0384166000908152600b602052604090205460ff16158015611b0857506001600160a01b0383166000908152600b602052604090205460ff16155b15611b2257611b1982601b5461155e565b611b2257600080fd5b6000611b2d306111c1565b601d5490915081108015908190611b4e5750601f54600160a01b900460ff16155b8015611b7357506001600160a01b0386166000908152600c602052604090205460ff16155b8015611b885750601f54600160a81b900460ff165b15611bae57601f54600160b01b900460ff1615611ba557601d5491505b611bae82611f47565b611bb88686612082565b15611c29576040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038916600090815260059091529190912054611c0f918690611db9565b6001600160a01b0387166000908152600560205260409020555b6001600160a01b03861660009081526009602052604081205460ff1680611c6857506001600160a01b03861660009081526009602052604090205460ff165b15611c74575083611cd8565b600060075411611c8357600080fd5b611c974360085460075461097e9190612b33565b8015611cbc57506001600160a01b0386166000908152600c602052604090205460ff16155b15611cca57611cca866120c1565b611cd587878761212f565b90505b601f54600160b81b900460ff168015611d0a57506001600160a01b0386166000908152600a602052604090205460ff16155b15611d3057611d27611d1f82610cc1896111c1565b601c5461155e565b611d3057600080fd5b6001600160a01b038616600090815260056020526040902054611d5390826118e6565b6001600160a01b0380881660008181526005602052604090819020939093559151908916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611da5908590612abf565b60405180910390a360019350505050610d51565b60008184841115611ddd5760405162461bcd60e51b8152600401610c3b919061286b565b506000611dea8486612b8a565b95945050505050565b6000610d5183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611db9565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600590915291822054611e86918490611db9565b6001600160a01b038086166000908152600560205260408082209390935590851681522054611eb590836118e6565b6001600160a01b0380851660008181526005602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611f07908690612abf565b60405180910390a35060019392505050565b60008183611f3a5760405162461bcd60e51b8152600401610c3b919061286b565b506000611dea8486612b4b565b601f805460ff60a01b1916600160a01b179055601954601454600091611f7d91600291611f779182908790611915565b9061195a565b90506000611f8b8383611df3565b9050611f968161227c565b6014544790600090611fb690611fad90600261195a565b60195490611df3565b90506000611fd86002611f7784611f776014548861191590919063ffffffff16565b90506000611ff583611f776016548761191590919063ffffffff16565b9050600061200d826120078786611df3565b90611df3565b90508015612030576003546120309061010090046001600160a01b03168261243a565b811561204c5760045461204c906001600160a01b03168361243a565b60008311801561205c5750600087115b1561206b5761206b8784612475565b5050601f805460ff60a01b19169055505050505050565b6000816001600160a01b0316836001600160a01b0316141580610d5157506004546001600160a01b038481169116141580610d51575060009392505050565b6001600160a01b0381166000908152600d602052604090205460ff1615801561210357506001600160a01b0381166000908152600c602052604090205460ff16155b1561212c576001600160a01b0381166000908152600d60205260409020805460ff191660011790555b50565b6001600160a01b0383166000908152600c6020526040812054819060ff16156121735761216c6064611f776017548661191590919063ffffffff16565b90506121b1565b6001600160a01b0384166000908152600c602052604090205460ff16156121b1576121ae6064611f776018548661191590919063ffffffff16565b90505b6001600160a01b0385166000908152600d602052604090205460ff1680156121f257506001600160a01b0385166000908152600c602052604090205460ff16155b156121fa5750815b8015612272573060009081526005602052604090205461221a90826118e6565b30600081815260056020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90612269908590612abf565b60405180910390a35b611dea8382611df3565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106122bf57634e487b7160e01b600052603260045260246000fd5b6001600160a01b03928316602091820292909201810191909152601e54604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b15801561231357600080fd5b505afa158015612327573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061234b9190612594565b8160018151811061236c57634e487b7160e01b600052603260045260246000fd5b6001600160a01b039283166020918202929092010152601e5461239291309116846119a0565b601e5460405163791ac94760e01b81526001600160a01b039091169063791ac947906123cb908590600090869030904290600401612ae9565b600060405180830381600087803b1580156123e557600080fd5b505af11580156123f9573d6000803e3d6000fd5b505050507f32cde87eb454f3a0b875ab23547023107cfad454363ec88ba5695e2c24aa52a7828260405161242e929190612ac8565b60405180910390a15050565b6040516001600160a01b0383169082156108fc029083906000818181858888f19350505050158015612470573d6000803e3d6000fd5b505050565b601e5461248d9030906001600160a01b0316846119a0565b601e546004805460405163f305d71960e01b81526001600160a01b039384169363f305d7199386936124cd9330938a936000938493921691429101612825565b6060604051808303818588803b1580156124e657600080fd5b505af11580156124fa573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061115d91906127a1565b60008083601f840112612530578182fd5b50813567ffffffffffffffff811115612547578182fd5b602083019150836020808302850101111561256157600080fd5b9250929050565b803580151581146111db57600080fd5b600060208284031215612589578081fd5b8135610d5181612c0d565b6000602082840312156125a5578081fd5b8151610d5181612c0d565b600080604083850312156125c2578081fd5b82356125cd81612c0d565b915060208301356125dd81612c0d565b809150509250929050565b6000806000606084860312156125fc578081fd5b833561260781612c0d565b9250602084013561261781612c0d565b929592945050506040919091013590565b6000806040838503121561263a578182fd5b823561264581612c0d565b915061265360208401612568565b90509250929050565b6000806040838503121561266e578182fd5b823561267981612c0d565b946020939093013593505050565b60008060006040848603121561269b578283fd5b833567ffffffffffffffff8111156126b1578384fd5b6126bd8682870161251f565b90945092506126d0905060208501612568565b90509250925092565b6000806000604084860312156126ed578283fd5b833567ffffffffffffffff811115612703578384fd5b61270f8682870161251f565b909790965060209590950135949350505050565b600060208284031215612734578081fd5b610d5182612568565b60006020828403121561274e578081fd5b5035919050565b60008060408385031215612767578182fd5b50508035926020909101359150565b60008060006060848603121561278a578283fd5b505081359360208301359350604090920135919050565b6000806000606084860312156127b5578283fd5b8351925060208401519150604084015190509250925092565b6000815180845260208085019450808401835b838110156128065781516001600160a01b0316875295820195908201906001016127e1565b509495945050505050565b6001600160a01b0391909116815260200190565b6001600160a01b039687168152602081019590955260408501939093526060840191909152909216608082015260a081019190915260c00190565b901515815260200190565b6000602080835283518082850152825b818110156128975785810183015185820160400152820161287b565b818111156128a85783604083870101525b50601f01601f1916929092016040019392505050565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b60208082526026908201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160408201526564647265737360d01b606082015260800190565b60208082526022908201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604082015261737360f01b606082015260800190565b6020808252601b908201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604082015260600190565b60208082526021908201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6040820152607760f81b606082015260800190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526024908201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646040820152637265737360e01b606082015260800190565b90815260200190565b600083825260406020830152612ae160408301846127ce565b949350505050565b600086825285602083015260a06040830152612b0860a08301866127ce565b6001600160a01b0394909416606083015250608001529392505050565b60ff91909116815260200190565b60008219821115612b4657612b46612bf7565b500190565b600082612b6657634e487b7160e01b81526012600452602481fd5b500490565b6000816000190483118215151615612b8557612b85612bf7565b500290565b600082821015612b9c57612b9c612bf7565b500390565b600281046001821680612bb557607f821691505b60208210811415612bd657634e487b7160e01b600052602260045260246000fd5b50919050565b6000600019821415612bf057612bf0612bf7565b5060010190565b634e487b7160e01b600052601160045260246000fd5b6001600160a01b038116811461212c57600080fdfe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa264697066735822122014ccd20fb3fa9c864fced36b656cdfad0c6e17617d4f8c6d8e0ecb469277628164736f6c63430008000033ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef