7f9e159dfcfe557cc1ca6c716e87af98fdcb94cd8c832386d0429b2b7bec02754f600a5560a06040819052600060808190526200003f91600f916200028a565b5060408051808201909152600580825264173539b7b760d91b60209092019182526200006e916010916200028a565b5060026016556017805463ffffffff191663010001001790553480156200009457600080fd5b506040516200349d3803806200349d833981016040819052620000b791620003fd565b855186908690620000d09060029060208501906200028a565b508051620000e69060039060208401906200028a565b5050600160005550620000f93362000130565b6001600955620001098462000182565b60148390556200011982620001d6565b620001248162000226565b505050505050620004e7565b600880546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6008546001600160a01b03163314620001d15760405162461bcd60e51b815260206004820181905260248201526000805160206200347d83398151915260448201526064015b60405180910390fd5b601255565b6008546001600160a01b03163314620002215760405162461bcd60e51b815260206004820181905260248201526000805160206200347d8339815191526044820152606401620001c8565b601555565b6008546001600160a01b03163314620002715760405162461bcd60e51b815260206004820181905260248201526000805160206200347d8339815191526044820152606401620001c8565b8051620002869060119060208401906200028a565b5050565b8280546200029890620004aa565b90600052602060002090601f016020900481019282620002bc576000855562000307565b82601f10620002d757805160ff191683800117855562000307565b8280016001018555821562000307579182015b8281111562000307578251825591602001919060010190620002ea565b506200031592915062000319565b5090565b5b808211156200031557600081556001016200031a565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200035857600080fd5b81516001600160401b038082111562000375576200037562000330565b604051601f8301601f19908116603f01168101908282118183101715620003a057620003a062000330565b81604052838152602092508683858801011115620003bd57600080fd5b600091505b83821015620003e15785820183015181830184015290820190620003c2565b83821115620003f35760008385830101525b9695505050505050565b60008060008060008060c087890312156200041757600080fd5b86516001600160401b03808211156200042f57600080fd5b6200043d8a838b0162000346565b975060208901519150808211156200045457600080fd5b620004628a838b0162000346565b965060408901519550606089015194506080890151935060a08901519150808211156200048e57600080fd5b506200049d89828a0162000346565b9150509295509295509295565b600181811c90821680620004bf57607f821691505b60208210811415620004e157634e487b7160e01b600052602260045260246000fd5b50919050565b612f8680620004f76000396000f3fe6080604052600436106103355760003560e01c80637cb64759116101ab578063b767a098116100f7578063d5abeb0111610095578063e0ec7c361161006f578063e0ec7c361461096e578063e985e9c51461099e578063efbd73f4146109be578063f2fde38b146109de57600080fd5b8063d5abeb0114610908578063db4bec441461091e578063e0a808531461094e57600080fd5b8063bf616ffd116100d1578063bf616ffd14610892578063c23dc68f146108a8578063c87b56dd146108d5578063d2cab056146108f557600080fd5b8063b767a0981461083c578063b88d4fde1461085c578063bc951b911461087c57600080fd5b80638da5cb5b1161016457806399a2557a1161013e57806399a2557a146107c7578063a22cb465146107e7578063a45ba8e714610807578063b071401b1461081c57600080fd5b80638da5cb5b1461077e57806394354fd01461079c57806395d89b41146107b257600080fd5b80637cb64759146106bb5780637ec4a659146106db5780638462151c146106fb57806385bb7d691461072857806385ff442f1461073e5780638da44f711461075f57600080fd5b806344a0d68a1161028557806362b99ad4116102235780636caede3d116101fd5780636caede3d1461065657806370a0823114610670578063715018a6146106905780637774d438146106a557600080fd5b806362b99ad4146105cc5780636352211e146105e157806369f9d91c1461060157600080fd5b80635256e3641161025f5780635256e364146105585780635503a0e81461056b5780635bbb2177146105805780635c975abb146105ad57600080fd5b806344a0d68a146104f85780634fdd43cb14610518578063518302271461053857600080fd5b806316c38b3c116102f257806323b872dd116102cc57806323b872dd1461048d5780632eb4a7ab146104ad5780633ccfd60b146104c357806342842e0e146104d857600080fd5b806316c38b3c1461042f57806318160ddd1461044f5780631b9611581461046d57600080fd5b806301ffc9a71461033a57806306fdde031461036f578063081812fc14610391578063095ea7b3146103c957806313faede6146103eb57806316ba10e01461040f575b600080fd5b34801561034657600080fd5b5061035a61035536600461266a565b6109fe565b60405190151581526020015b60405180910390f35b34801561037b57600080fd5b50610384610a50565b60405161036691906126df565b34801561039d57600080fd5b506103b16103ac3660046126f2565b610ae2565b6040516001600160a01b039091168152602001610366565b3480156103d557600080fd5b506103e96103e4366004612727565b610b26565b005b3480156103f757600080fd5b5061040160125481565b604051908152602001610366565b34801561041b57600080fd5b506103e961042a36600461280e565b610bad565b34801561043b57600080fd5b506103e961044a366004612852565b610bf7565b34801561045b57600080fd5b50610401600154600054036000190190565b34801561047957600080fd5b506103e9610488366004612852565b610c3b565b34801561049957600080fd5b506103e96104a836600461286d565b610c83565b3480156104b957600080fd5b50610401600c5481565b3480156104cf57600080fd5b506103e9610c8e565b3480156104e457600080fd5b506103e96104f336600461286d565b610d89565b34801561050457600080fd5b506103e96105133660046126f2565b610da4565b34801561052457600080fd5b506103e961053336600461280e565b610dd3565b34801561054457600080fd5b5060175461035a9062010000900460ff1681565b6103e96105663660046128a9565b610e10565b34801561057757600080fd5b50610384611078565b34801561058c57600080fd5b506105a061059b366004612907565b611106565b60405161036691906129ac565b3480156105b957600080fd5b5060175461035a90610100900460ff1681565b3480156105d857600080fd5b506103846111cc565b3480156105ed57600080fd5b506103b16105fc3660046126f2565b6111d9565b34801561060d57600080fd5b5061040161061c366004612a16565b6040516001600160601b0319606083901b166020820152600090603401604051602081830303815290604052805190602001209050919050565b34801561066257600080fd5b5060175461035a9060ff1681565b34801561067c57600080fd5b5061040161068b366004612a16565b6111eb565b34801561069c57600080fd5b506103e9611239565b3480156106b157600080fd5b50610401600b5481565b3480156106c757600080fd5b506103e96106d63660046126f2565b61126f565b3480156106e757600080fd5b506103e96106f636600461280e565b61129e565b34801561070757600080fd5b5061071b610716366004612a16565b6112db565b6040516103669190612a31565b34801561073457600080fd5b50610401600a5481565b34801561074a57600080fd5b5060175461035a906301000000900460ff1681565b34801561076b57600080fd5b506017546301000000900460ff1661035a565b34801561078a57600080fd5b506008546001600160a01b03166103b1565b3480156107a857600080fd5b5061040160155481565b3480156107be57600080fd5b50610384611428565b3480156107d357600080fd5b5061071b6107e2366004612a69565b611437565b3480156107f357600080fd5b506103e9610802366004612a9c565b6115fd565b34801561081357600080fd5b50610384611693565b34801561082857600080fd5b506103e96108373660046126f2565b6116a0565b34801561084857600080fd5b506103e9610857366004612852565b6116cf565b34801561086857600080fd5b506103e9610877366004612acf565b61170c565b34801561088857600080fd5b5061040160165481565b34801561089e57600080fd5b5061040160135481565b3480156108b457600080fd5b506108c86108c33660046126f2565b611756565b6040516103669190612b4a565b3480156108e157600080fd5b506103846108f03660046126f2565b611810565b6103e9610903366004612b7f565b61197f565b34801561091457600080fd5b5061040160145481565b34801561092a57600080fd5b5061035a610939366004612a16565b600e6020526000908152604090205460ff1681565b34801561095a57600080fd5b506103e9610969366004612852565b611bb4565b34801561097a57600080fd5b5061035a610989366004612a16565b600d6020526000908152604090205460ff1681565b3480156109aa57600080fd5b5061035a6109b9366004612bfd565b611bfa565b3480156109ca57600080fd5b506103e96109d9366004612c27565b611c28565b3480156109ea57600080fd5b506103e96109f9366004612a16565b611cc8565b60006001600160e01b031982166380ac58cd60e01b1480610a2f57506001600160e01b03198216635b5e139f60e01b145b80610a4a57506301ffc9a760e01b6001600160e01b03198316145b92915050565b606060028054610a5f90612c4a565b80601f0160208091040260200160405190810160405280929190818152602001828054610a8b90612c4a565b8015610ad85780601f10610aad57610100808354040283529160200191610ad8565b820191906000526020600020905b815481529060010190602001808311610abb57829003601f168201915b5050505050905090565b6000610aed82611d63565b610b0a576040516333d1c03960e21b815260040160405180910390fd5b506000908152600660205260409020546001600160a01b031690565b6000610b31826111d9565b9050806001600160a01b0316836001600160a01b03161415610b665760405163250fdee360e21b815260040160405180910390fd5b336001600160a01b03821614610b9d57610b808133611bfa565b610b9d576040516367d9dca160e11b815260040160405180910390fd5b610ba8838383611d9c565b505050565b6008546001600160a01b03163314610be05760405162461bcd60e51b8152600401610bd790612c85565b60405180910390fd5b8051610bf39060109060208401906125bb565b5050565b6008546001600160a01b03163314610c215760405162461bcd60e51b8152600401610bd790612c85565b601780549115156101000261ff0019909216919091179055565b6008546001600160a01b03163314610c655760405162461bcd60e51b8152600401610bd790612c85565b6017805491151563010000000263ff00000019909216919091179055565b610ba8838383611df8565b6008546001600160a01b03163314610cb85760405162461bcd60e51b8152600401610bd790612c85565b60026009541415610d0b5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610bd7565b60026009556000610d246008546001600160a01b031690565b6001600160a01b03164760405160006040518083038185875af1925050503d8060008114610d6e576040519150601f19603f3d011682016040523d82523d6000602084013e610d73565b606091505b5050905080610d8157600080fd5b506001600955565b610ba88383836040518060200160405280600081525061170c565b6008546001600160a01b03163314610dce5760405162461bcd60e51b8152600401610bd790612c85565b601255565b6008546001600160a01b03163314610dfd5760405162461bcd60e51b8152600401610bd790612c85565b8051610bf39060119060208401906125bb565b83600081118015610e2357506015548111155b610e3f5760405162461bcd60e51b8152600401610bd790612cba565b60145481610e54600154600054036000190190565b610e5e9190612cfe565b1115610e7c5760405162461bcd60e51b8152600401610bd790612d16565b6040516001600160601b03193260601b16602082015260340160408051808303601f190181529190528051602090910120600b55601754610100900460ff1615610f085760405162461bcd60e51b815260206004820152601760248201527f54686520636f6e747261637420697320706175736564210000000000000000006044820152606401610bd7565b60165485610f15336111eb565b610f1f9190612cfe565b1115610f6d5760405162461bcd60e51b815260206004820152601d60248201527f4d6178206d696e74207065722077616c6c6574206578636565646564210000006044820152606401610bd7565b600b548214610f7b57600080fd5b600a5484604051602001610f8f9190612d44565b6040516020818303038152906040528051906020012014610faf57600080fd5b6001600160a01b0383163214610fc457600080fd5b336000908152600d602052604090205460ff1661103a57600185111561101b57610fef600186612d60565b601254610ffc9190612d77565b34101561101b5760405162461bcd60e51b8152600401610bd790612d96565b336000908152600d60205260409020805460ff19166001179055611067565b846012546110489190612d77565b3410156110675760405162461bcd60e51b8152600401610bd790612d96565b6110713386611fe3565b5050505050565b6010805461108590612c4a565b80601f01602080910402602001604051908101604052809291908181526020018280546110b190612c4a565b80156110fe5780601f106110d3576101008083540402835291602001916110fe565b820191906000526020600020905b8154815290600101906020018083116110e157829003601f168201915b505050505081565b80516060906000816001600160401b0381111561112557611125612751565b60405190808252806020026020018201604052801561117057816020015b60408051606081018252600080825260208083018290529282015282526000199092019101816111435790505b50905060005b8281146111c45761119f85828151811061119257611192612dc3565b6020026020010151611756565b8282815181106111b1576111b1612dc3565b6020908102919091010152600101611176565b509392505050565b600f805461108590612c4a565b60006111e482611ffd565b5192915050565b60006001600160a01b038216611214576040516323d3ad8160e21b815260040160405180910390fd5b506001600160a01b03166000908152600560205260409020546001600160401b031690565b6008546001600160a01b031633146112635760405162461bcd60e51b8152600401610bd790612c85565b61126d600061211f565b565b6008546001600160a01b031633146112995760405162461bcd60e51b8152600401610bd790612c85565b600c55565b6008546001600160a01b031633146112c85760405162461bcd60e51b8152600401610bd790612c85565b8051610bf390600f9060208401906125bb565b606060008060006112eb856111eb565b90506000816001600160401b0381111561130757611307612751565b604051908082528060200260200182016040528015611330578160200160208202803683370190505b509050611356604080516060810182526000808252602082018190529181019190915290565b60015b83861461141c57600081815260046020908152604091829020825160608101845290546001600160a01b0381168252600160a01b81046001600160401b031692820192909252600160e01b90910460ff161580159282019290925292506113bf57611414565b81516001600160a01b0316156113d457815194505b876001600160a01b0316856001600160a01b03161415611414578083878060010198508151811061140757611407612dc3565b6020026020010181815250505b600101611359565b50909695505050505050565b606060038054610a5f90612c4a565b606081831061145957604051631960ccad60e11b815260040160405180910390fd5b60008054600185101561146b57600194505b80841115611477578093505b6000611482876111eb565b9050848610156114a1578585038181101561149b578091505b506114a5565b5060005b6000816001600160401b038111156114bf576114bf612751565b6040519080825280602002602001820160405280156114e8578160200160208202803683370190505b509050816114fb5793506115f692505050565b600061150688611756565b905060008160400151611517575080515b885b8881141580156115295750848714155b156115ea57600081815260046020908152604091829020825160608101845290546001600160a01b0381168252600160a01b81046001600160401b031692820192909252600160e01b90910460ff1615801592820192909252935061158d576115e2565b82516001600160a01b0316156115a257825191505b8a6001600160a01b0316826001600160a01b031614156115e257808488806001019950815181106115d5576115d5612dc3565b6020026020010181815250505b600101611519565b50505092835250909150505b9392505050565b6001600160a01b0382163314156116275760405163b06307db60e01b815260040160405180910390fd5b3360008181526007602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6011805461108590612c4a565b6008546001600160a01b031633146116ca5760405162461bcd60e51b8152600401610bd790612c85565b601555565b6008546001600160a01b031633146116f95760405162461bcd60e51b8152600401610bd790612c85565b6017805460ff1916911515919091179055565b611717848484611df8565b6001600160a01b0383163b156117505761173384848484612171565b611750576040516368d2bf6b60e11b815260040160405180910390fd5b50505050565b6040805160608082018352600080835260208084018290528385018290528451928301855281835282018190529281019290925290600183108061179c57506000548310155b156117a75792915050565b50600082815260046020908152604091829020825160608101845290546001600160a01b0381168252600160a01b81046001600160401b031692820192909252600160e01b90910460ff1615801592820192909252906118075792915050565b6115f683611ffd565b606061181b82611d63565b61187f5760405162461bcd60e51b815260206004820152602f60248201527f4552433732314d657461646174613a2055524920717565727920666f72206e6f60448201526e3732bc34b9ba32b73a103a37b5b2b760891b6064820152608401610bd7565b60175462010000900460ff16611921576011805461189c90612c4a565b80601f01602080910402602001604051908101604052809291908181526020018280546118c890612c4a565b80156119155780601f106118ea57610100808354040283529160200191611915565b820191906000526020600020905b8154815290600101906020018083116118f857829003601f168201915b50505050509050919050565b600061192b612269565b9050600081511161194b57604051806020016040528060008152506115f6565b8061195584612278565b601060405160200161196993929190612dd9565b6040516020818303038152906040529392505050565b8260008111801561199257506015548111155b6119ae5760405162461bcd60e51b8152600401610bd790612cba565b601454816119c3600154600054036000190190565b6119cd9190612cfe565b11156119eb5760405162461bcd60e51b8152600401610bd790612d16565b83806012546119fa9190612d77565b341015611a195760405162461bcd60e51b8152600401610bd790612d96565b60175460ff16611a765760405162461bcd60e51b815260206004820152602260248201527f5468652077686974656c6973742073616c65206973206e6f7420656e61626c65604482015261642160f01b6064820152608401610bd7565b336000908152600e602052604090205460ff1615611ad65760405162461bcd60e51b815260206004820152601860248201527f4164647265737320616c726561647920636c61696d65642100000000000000006044820152606401610bd7565b6040516001600160601b03193360601b166020820152600090603401604051602081830303815290604052805190602001209050611b4b85858080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525050600c549150849050612375565b611b885760405162461bcd60e51b815260206004820152600e60248201526d496e76616c69642070726f6f662160901b6044820152606401610bd7565b336000818152600e60205260409020805460ff19166001179055611bac9087611fe3565b505050505050565b6008546001600160a01b03163314611bde5760405162461bcd60e51b8152600401610bd790612c85565b60178054911515620100000262ff000019909216919091179055565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205460ff1690565b81600081118015611c3b57506015548111155b611c575760405162461bcd60e51b8152600401610bd790612cba565b60145481611c6c600154600054036000190190565b611c769190612cfe565b1115611c945760405162461bcd60e51b8152600401610bd790612d16565b6008546001600160a01b03163314611cbe5760405162461bcd60e51b8152600401610bd790612c85565b610ba88284611fe3565b6008546001600160a01b03163314611cf25760405162461bcd60e51b8152600401610bd790612c85565b6001600160a01b038116611d575760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610bd7565b611d608161211f565b50565b600081600111158015611d77575060005482105b8015610a4a575050600090815260046020526040902054600160e01b900460ff161590565b60008281526006602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b6000611e0382611ffd565b9050836001600160a01b031681600001516001600160a01b031614611e3a5760405162a1148160e81b815260040160405180910390fd5b6000336001600160a01b0386161480611e585750611e588533611bfa565b80611e73575033611e6884610ae2565b6001600160a01b0316145b905080611e9357604051632ce44b5f60e11b815260040160405180910390fd5b6001600160a01b038416611eba57604051633a954ecd60e21b815260040160405180910390fd5b611ec660008487611d9c565b6001600160a01b038581166000908152600560209081526040808320805467ffffffffffffffff198082166001600160401b0392831660001901831617909255898616808652838620805493841693831660019081018416949094179055898652600490945282852080546001600160e01b031916909417600160a01b42909216919091021783558701808452922080549193909116611f9a576000548214611f9a57805460208601516001600160401b0316600160a01b026001600160e01b03199091166001600160a01b038a16171781555b50505082846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4611071565b610bf382826040518060200160405280600081525061238b565b604080516060810182526000808252602082018190529181019190915281806001116121065760005481101561210657600081815260046020908152604091829020825160608101845290546001600160a01b0381168252600160a01b81046001600160401b031692820192909252600160e01b90910460ff161515918101829052906121045780516001600160a01b03161561209b579392505050565b5060001901600081815260046020908152604091829020825160608101845290546001600160a01b038116808352600160a01b82046001600160401b031693830193909352600160e01b900460ff16151592810192909252156120ff579392505050565b61209b565b505b604051636f96cda160e11b815260040160405180910390fd5b600880546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a02906121a6903390899088908890600401612e9d565b602060405180830381600087803b1580156121c057600080fd5b505af19250505080156121f0575060408051601f3d908101601f191682019092526121ed91810190612eda565b60015b61224b573d80801561221e576040519150601f19603f3d011682016040523d82523d6000602084013e612223565b606091505b508051612243576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b1490505b949350505050565b6060600f8054610a5f90612c4a565b60608161229c5750506040805180820190915260018152600360fc1b602082015290565b8160005b81156122c657806122b081612ef7565b91506122bf9050600a83612f28565b91506122a0565b6000816001600160401b038111156122e0576122e0612751565b6040519080825280601f01601f19166020018201604052801561230a576020820181803683370190505b5090505b84156122615761231f600183612d60565b915061232c600a86612f3c565b612337906030612cfe565b60f81b81838151811061234c5761234c612dc3565b60200101906001600160f81b031916908160001a90535061236e600a86612f28565b945061230e565b600082612382858461254f565b14949350505050565b6000546001600160a01b0384166123b457604051622e076360e81b815260040160405180910390fd5b826123d25760405163b562e8dd60e01b815260040160405180910390fd5b6001600160a01b038416600081815260056020908152604080832080546fffffffffffffffffffffffffffffffff1981166001600160401b038083168b0181169182176801000000000000000067ffffffffffffffff1990941690921783900481168b01811690920217909155858452600490925290912080546001600160e01b0319168317600160a01b42909316929092029190911790558190818501903b156124fa575b60405182906001600160a01b038816906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a46124c36000878480600101955087612171565b6124e0576040516368d2bf6b60e11b815260040160405180910390fd5b8082106124785782600054146124f557600080fd5b61253f565b5b6040516001830192906001600160a01b038816906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a48082106124fb575b5060009081556117509085838684565b600081815b84518110156111c457600085828151811061257157612571612dc3565b6020026020010151905080831161259757600083815260208290526040902092506125a8565b600081815260208490526040902092505b50806125b381612ef7565b915050612554565b8280546125c790612c4a565b90600052602060002090601f0160209004810192826125e9576000855561262f565b82601f1061260257805160ff191683800117855561262f565b8280016001018555821561262f579182015b8281111561262f578251825591602001919060010190612614565b5061263b92915061263f565b5090565b5b8082111561263b5760008155600101612640565b6001600160e01b031981168114611d6057600080fd5b60006020828403121561267c57600080fd5b81356115f681612654565b60005b838110156126a257818101518382015260200161268a565b838111156117505750506000910152565b600081518084526126cb816020860160208601612687565b601f01601f19169290920160200192915050565b6020815260006115f660208301846126b3565b60006020828403121561270457600080fd5b5035919050565b80356001600160a01b038116811461272257600080fd5b919050565b6000806040838503121561273a57600080fd5b6127438361270b565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561278f5761278f612751565b604052919050565b60006001600160401b038311156127b0576127b0612751565b6127c3601f8401601f1916602001612767565b90508281528383830111156127d757600080fd5b828260208301376000602084830101529392505050565b600082601f8301126127ff57600080fd5b6115f683833560208501612797565b60006020828403121561282057600080fd5b81356001600160401b0381111561283657600080fd5b612261848285016127ee565b8035801515811461272257600080fd5b60006020828403121561286457600080fd5b6115f682612842565b60008060006060848603121561288257600080fd5b61288b8461270b565b92506128996020850161270b565b9150604084013590509250925092565b600080600080608085870312156128bf57600080fd5b8435935060208501356001600160401b038111156128dc57600080fd5b6128e8878288016127ee565b9350506128f76040860161270b565b9396929550929360600135925050565b6000602080838503121561291a57600080fd5b82356001600160401b038082111561293157600080fd5b818501915085601f83011261294557600080fd5b81358181111561295757612957612751565b8060051b9150612968848301612767565b818152918301840191848101908884111561298257600080fd5b938501935b838510156129a057843582529385019390850190612987565b98975050505050505050565b6020808252825182820181905260009190848201906040850190845b8181101561141c57612a0383855180516001600160a01b031682526020808201516001600160401b0316908301526040908101511515910152565b92840192606092909201916001016129c8565b600060208284031215612a2857600080fd5b6115f68261270b565b6020808252825182820181905260009190848201906040850190845b8181101561141c57835183529284019291840191600101612a4d565b600080600060608486031215612a7e57600080fd5b612a878461270b565b95602085013595506040909401359392505050565b60008060408385031215612aaf57600080fd5b612ab88361270b565b9150612ac660208401612842565b90509250929050565b60008060008060808587031215612ae557600080fd5b612aee8561270b565b9350612afc6020860161270b565b92506040850135915060608501356001600160401b03811115612b1e57600080fd5b8501601f81018713612b2f57600080fd5b612b3e87823560208401612797565b91505092959194509250565b81516001600160a01b031681526020808301516001600160401b03169082015260408083015115159082015260608101610a4a565b600080600060408486031215612b9457600080fd5b8335925060208401356001600160401b0380821115612bb257600080fd5b818601915086601f830112612bc657600080fd5b813581811115612bd557600080fd5b8760208260051b8501011115612bea57600080fd5b6020830194508093505050509250925092565b60008060408385031215612c1057600080fd5b612c198361270b565b9150612ac66020840161270b565b60008060408385031215612c3a57600080fd5b82359150612ac66020840161270b565b600181811c90821680612c5e57607f821691505b60208210811415612c7f57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b602080825260149082015273496e76616c6964206d696e7420616d6f756e742160601b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b60008219821115612d1157612d11612ce8565b500190565b6020808252601490820152734d617820737570706c792065786365656465642160601b604082015260600190565b60008251612d56818460208701612687565b9190910192915050565b600082821015612d7257612d72612ce8565b500390565b6000816000190483118215151615612d9157612d91612ce8565b500290565b602080825260139082015272496e73756666696369656e742066756e64732160681b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b600084516020612dec8285838a01612687565b855191840191612dff8184848a01612687565b8554920191600090600181811c9080831680612e1c57607f831692505b858310811415612e3a57634e487b7160e01b85526022600452602485fd5b808015612e4e5760018114612e5f57612e8c565b60ff19851688528388019550612e8c565b60008b81526020902060005b85811015612e845781548a820152908401908801612e6b565b505083880195505b50939b9a5050505050505050505050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090612ed0908301846126b3565b9695505050505050565b600060208284031215612eec57600080fd5b81516115f681612654565b6000600019821415612f0b57612f0b612ce8565b5060010190565b634e487b7160e01b600052601260045260246000fd5b600082612f3757612f37612f12565b500490565b600082612f4b57612f4b612f12565b50069056fea264697066735822122083b85a67b22b6283e6496b96085e5c2bbe10df541588f0ba2c23b85515d250cf64736f6c634300080900334f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657200000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000bb800000000000000000000000000000000000000000000000000000000000000640000000000000000000000000000000000000000000000000000000000000140000000000000000000000000000000000000000000000000000000000000000d5370616365204a756d706572730000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000035350530000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a697066733a2f2f5f5f4349445f5f2f68696464656e2e6a736f6e000000000000