60a060405260006080908152600c906200001a908262000446565b50604080518082019091526005815264173539b7b760d91b6020820152600d9062000046908262000446565b506012805462ffffff191660011790553480156200006357600080fd5b50604051620033a2380380620033a28339810160408190526200008691620005c1565b733cc6cdda760b79bafa08df41ecfa224f810dceb6600187876002620000ad838262000446565b506003620000bc828262000446565b5050600160005550620000cf336200024e565b60016009556daaeb6d7670e522a718067333cd4e3b15620002195780156200016757604051633e9f1edf60e11b81523060048201526001600160a01b03831660248201526daaeb6d7670e522a718067333cd4e90637d3e3dbe906044015b600060405180830381600087803b1580156200014857600080fd5b505af11580156200015d573d6000803e3d6000fd5b5050505062000219565b6001600160a01b03821615620001b85760405163a0af290360e01b81523060048201526001600160a01b03831660248201526daaeb6d7670e522a718067333cd4e9063a0af2903906044016200012d565b604051632210724360e11b81523060048201526daaeb6d7670e522a718067333cd4e90634420e48690602401600060405180830381600087803b158015620001ff57600080fd5b505af115801562000214573d6000803e3d6000fd5b505050505b5062000227905084620002a0565b60108390556200023782620002f4565b620002428162000344565b5050505050506200066e565b600880546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6008546001600160a01b03163314620002ef5760405162461bcd60e51b815260206004820181905260248201526000805160206200338283398151915260448201526064015b60405180910390fd5b600f55565b6008546001600160a01b031633146200033f5760405162461bcd60e51b81526020600482018190526024820152600080516020620033828339815191526044820152606401620002e6565b601155565b6008546001600160a01b031633146200038f5760405162461bcd60e51b81526020600482018190526024820152600080516020620033828339815191526044820152606401620002e6565b600e6200039d828262000446565b5050565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620003cc57607f821691505b602082108103620003ed57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200044157600081815260208120601f850160051c810160208610156200041c5750805b601f850160051c820191505b818110156200043d5782815560010162000428565b5050505b505050565b81516001600160401b03811115620004625762000462620003a1565b6200047a81620004738454620003b7565b84620003f3565b602080601f831160018114620004b25760008415620004995750858301515b600019600386901b1c1916600185901b1785556200043d565b600085815260208120601f198616915b82811015620004e357888601518255948401946001909101908401620004c2565b5085821015620005025787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600082601f8301126200052457600080fd5b81516001600160401b0380821115620005415762000541620003a1565b604051601f8301601f19908116603f011681019082821181831017156200056c576200056c620003a1565b816040528381526020925086838588010111156200058957600080fd5b600091505b83821015620005ad57858201830151818301840152908201906200058e565b600093810190920192909252949350505050565b60008060008060008060c08789031215620005db57600080fd5b86516001600160401b0380821115620005f357600080fd5b620006018a838b0162000512565b975060208901519150808211156200061857600080fd5b620006268a838b0162000512565b965060408901519550606089015194506080890151935060a08901519150808211156200065257600080fd5b506200066189828a0162000512565b9150509295509295509295565b612d04806200067e6000396000f3fe60806040526004361061027d5760003560e01c8063715018a61161014f578063b071401b116100c1578063d5abeb011161007a578063d5abeb0114610765578063db4bec441461077b578063e0a80853146107ab578063e985e9c5146107cb578063efbd73f4146107eb578063f2fde38b1461080b57600080fd5b8063b071401b146106a5578063b767a098146106c5578063b88d4fde146106e5578063c23dc68f14610705578063c87b56dd14610732578063d2cab0561461075257600080fd5b806394354fd01161011357806394354fd01461061257806395d89b411461062857806399a2557a1461063d578063a0712d681461065d578063a22cb46514610670578063a45ba8e71461069057600080fd5b8063715018a6146105725780637cb64759146105875780637ec4a659146105a75780638462151c146105c75780638da5cb5b146105f457600080fd5b806341f43434116101f35780635bbb2177116101ac5780635bbb2177146104b75780635c975abb146104e457806362b99ad4146104fe5780636352211e146105135780636caede3d1461053357806370a082311461055257600080fd5b806341f434341461040057806342842e0e1461042257806344a0d68a146104425780634fdd43cb1461046257806351830227146104825780635503a0e8146104a257600080fd5b806316ba10e01161024557806316ba10e01461035757806316c38b3c1461037757806318160ddd1461039757806323b872dd146103b55780632eb4a7ab146103d55780633ccfd60b146103eb57600080fd5b806301ffc9a71461028257806306fdde03146102b7578063081812fc146102d9578063095ea7b31461031157806313faede614610333575b600080fd5b34801561028e57600080fd5b506102a261029d3660046123ac565b61082b565b60405190151581526020015b60405180910390f35b3480156102c357600080fd5b506102cc61087d565b6040516102ae9190612419565b3480156102e557600080fd5b506102f96102f436600461242c565b61090f565b6040516001600160a01b0390911681526020016102ae565b34801561031d57600080fd5b5061033161032c366004612461565b610953565b005b34801561033f57600080fd5b50610349600f5481565b6040519081526020016102ae565b34801561036357600080fd5b50610331610372366004612528565b6109d9565b34801561038357600080fd5b5061033161039236600461257e565b610a1c565b3480156103a357600080fd5b50610349600154600054036000190190565b3480156103c157600080fd5b506103316103d036600461259b565b610a59565b3480156103e157600080fd5b50610349600a5481565b3480156103f757600080fd5b50610331610a84565b34801561040c57600080fd5b506102f96daaeb6d7670e522a718067333cd4e81565b34801561042e57600080fd5b5061033161043d36600461259b565b610b7e565b34801561044e57600080fd5b5061033161045d36600461242c565b610ba3565b34801561046e57600080fd5b5061033161047d366004612528565b610bd2565b34801561048e57600080fd5b506012546102a29062010000900460ff1681565b3480156104ae57600080fd5b506102cc610c08565b3480156104c357600080fd5b506104d76104d23660046125d7565b610c96565b6040516102ae919061267c565b3480156104f057600080fd5b506012546102a29060ff1681565b34801561050a57600080fd5b506102cc610d5c565b34801561051f57600080fd5b506102f961052e36600461242c565b610d69565b34801561053f57600080fd5b506012546102a290610100900460ff1681565b34801561055e57600080fd5b5061034961056d3660046126e6565b610d7b565b34801561057e57600080fd5b50610331610dc9565b34801561059357600080fd5b506103316105a236600461242c565b610dff565b3480156105b357600080fd5b506103316105c2366004612528565b610e2e565b3480156105d357600080fd5b506105e76105e23660046126e6565b610e64565b6040516102ae9190612701565b34801561060057600080fd5b506008546001600160a01b03166102f9565b34801561061e57600080fd5b5061034960115481565b34801561063457600080fd5b506102cc610fa9565b34801561064957600080fd5b506105e7610658366004612739565b610fb8565b61033161066b36600461242c565b611179565b34801561067c57600080fd5b5061033161068b36600461276c565b611296565b34801561069c57600080fd5b506102cc61132b565b3480156106b157600080fd5b506103316106c036600461242c565b611338565b3480156106d157600080fd5b506103316106e036600461257e565b611367565b3480156106f157600080fd5b506103316107003660046127a3565b6113ab565b34801561071157600080fd5b5061072561072036600461242c565b6113d8565b6040516102ae919061281e565b34801561073e57600080fd5b506102cc61074d36600461242c565b611492565b610331610760366004612853565b611606565b34801561077157600080fd5b5061034960105481565b34801561078757600080fd5b506102a26107963660046126e6565b600b6020526000908152604090205460ff1681565b3480156107b757600080fd5b506103316107c636600461257e565b61186b565b3480156107d757600080fd5b506102a26107e63660046128d1565b6118b1565b3480156107f757600080fd5b50610331610806366004612904565b6118df565b34801561081757600080fd5b506103316108263660046126e6565b61197f565b60006001600160e01b031982166380ac58cd60e01b148061085c57506001600160e01b03198216635b5e139f60e01b145b8061087757506301ffc9a760e01b6001600160e01b03198316145b92915050565b60606002805461088c90612927565b80601f01602080910402602001604051908101604052809291908181526020018280546108b890612927565b80156109055780601f106108da57610100808354040283529160200191610905565b820191906000526020600020905b8154815290600101906020018083116108e857829003601f168201915b5050505050905090565b600061091a82611a1a565b610937576040516333d1c03960e21b815260040160405180910390fd5b506000908152600660205260409020546001600160a01b031690565b600061095e82610d69565b9050806001600160a01b0316836001600160a01b0316036109925760405163250fdee360e21b815260040160405180910390fd5b336001600160a01b038216146109c9576109ac81336118b1565b6109c9576040516367d9dca160e11b815260040160405180910390fd5b6109d4838383611a53565b505050565b6008546001600160a01b03163314610a0c5760405162461bcd60e51b8152600401610a0390612961565b60405180910390fd5b600d610a1882826129dc565b5050565b6008546001600160a01b03163314610a465760405162461bcd60e51b8152600401610a0390612961565b6012805460ff1916911515919091179055565b826001600160a01b0381163314610a7357610a7333611aaf565b610a7e848484611b68565b50505050565b6008546001600160a01b03163314610aae5760405162461bcd60e51b8152600401610a0390612961565b600260095403610b005760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a03565b60026009556000610b196008546001600160a01b031690565b6001600160a01b03164760405160006040518083038185875af1925050503d8060008114610b63576040519150601f19603f3d011682016040523d82523d6000602084013e610b68565b606091505b5050905080610b7657600080fd5b506001600955565b826001600160a01b0381163314610b9857610b9833611aaf565b610a7e848484611b73565b6008546001600160a01b03163314610bcd5760405162461bcd60e51b8152600401610a0390612961565b600f55565b6008546001600160a01b03163314610bfc5760405162461bcd60e51b8152600401610a0390612961565b600e610a1882826129dc565b600d8054610c1590612927565b80601f0160208091040260200160405190810160405280929190818152602001828054610c4190612927565b8015610c8e5780601f10610c6357610100808354040283529160200191610c8e565b820191906000526020600020905b815481529060010190602001808311610c7157829003601f168201915b505050505081565b80516060906000816001600160401b03811115610cb557610cb561248b565b604051908082528060200260200182016040528015610d0057816020015b6040805160608101825260008082526020808301829052928201528252600019909201910181610cd35790505b50905060005b828114610d5457610d2f858281518110610d2257610d22612a9b565b60200260200101516113d8565b828281518110610d4157610d41612a9b565b6020908102919091010152600101610d06565b509392505050565b600c8054610c1590612927565b6000610d7482611b8e565b5192915050565b60006001600160a01b038216610da4576040516323d3ad8160e21b815260040160405180910390fd5b506001600160a01b03166000908152600560205260409020546001600160401b031690565b6008546001600160a01b03163314610df35760405162461bcd60e51b8152600401610a0390612961565b610dfd6000611cb0565b565b6008546001600160a01b03163314610e295760405162461bcd60e51b8152600401610a0390612961565b600a55565b6008546001600160a01b03163314610e585760405162461bcd60e51b8152600401610a0390612961565b600c610a1882826129dc565b60606000806000610e7485610d7b565b90506000816001600160401b03811115610e9057610e9061248b565b604051908082528060200260200182016040528015610eb9578160200160208202803683370190505b509050610edf604080516060810182526000808252602082018190529181019190915290565b60015b838614610f9d57600081815260046020908152604091829020825160608101845290546001600160a01b0381168252600160a01b81046001600160401b031692820192909252600160e01b90910460ff1615159181018290529250610f955781516001600160a01b031615610f5657815194505b876001600160a01b0316856001600160a01b031603610f955780838780600101985081518110610f8857610f88612a9b565b6020026020010181815250505b600101610ee2565b50909695505050505050565b60606003805461088c90612927565b6060818310610fda57604051631960ccad60e11b815260040160405180910390fd5b600080546001851015610fec57600194505b80841115610ff8578093505b600061100387610d7b565b905084861015611022578585038181101561101c578091505b50611026565b5060005b6000816001600160401b038111156110405761104061248b565b604051908082528060200260200182016040528015611069578160200160208202803683370190505b5090508160000361107f57935061117292505050565b600061108a886113d8565b90506000816040015161109b575080515b885b8881141580156110ad5750848714155b1561116657600081815260046020908152604091829020825160608101845290546001600160a01b0381168252600160a01b81046001600160401b031692820192909252600160e01b90910460ff161515918101829052935061115e5782516001600160a01b03161561111f57825191505b8a6001600160a01b0316826001600160a01b03160361115e578084888060010199508151811061115157611151612a9b565b6020026020010181815250505b60010161109d565b50505092835250909150505b9392505050565b8060008111801561118c57506011548111155b6111a85760405162461bcd60e51b8152600401610a0390612ab1565b601054816111bd600154600054036000190190565b6111c79190612af5565b11156111e55760405162461bcd60e51b8152600401610a0390612b08565b8180600f546111f49190612b36565b3410156112395760405162461bcd60e51b8152602060048201526013602482015272496e73756666696369656e742066756e64732160681b6044820152606401610a03565b60125460ff161561128c5760405162461bcd60e51b815260206004820152601760248201527f54686520636f6e747261637420697320706175736564210000000000000000006044820152606401610a03565b6109d43384611d02565b336001600160a01b038316036112bf5760405163b06307db60e01b815260040160405180910390fd5b3360008181526007602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b600e8054610c1590612927565b6008546001600160a01b031633146113625760405162461bcd60e51b8152600401610a0390612961565b601155565b6008546001600160a01b031633146113915760405162461bcd60e51b8152600401610a0390612961565b601280549115156101000261ff0019909216919091179055565b836001600160a01b03811633146113c5576113c533611aaf565b6113d185858585611d1c565b5050505050565b6040805160608082018352600080835260208084018290528385018290528451928301855281835282018190529281019290925290600183108061141e57506000548310155b156114295792915050565b50600082815260046020908152604091829020825160608101845290546001600160a01b0381168252600160a01b81046001600160401b031692820192909252600160e01b90910460ff1615801592820192909252906114895792915050565b61117283611b8e565b606061149d82611a1a565b6115015760405162461bcd60e51b815260206004820152602f60248201527f4552433732314d657461646174613a2055524920717565727920666f72206e6f60448201526e3732bc34b9ba32b73a103a37b5b2b760891b6064820152608401610a03565b60125462010000900460ff1615156000036115a857600e805461152390612927565b80601f016020809104026020016040519081016040528092919081815260200182805461154f90612927565b801561159c5780601f106115715761010080835404028352916020019161159c565b820191906000526020600020905b81548152906001019060200180831161157f57829003601f168201915b50505050509050919050565b60006115b2611d60565b905060008151116115d25760405180602001604052806000815250611172565b806115dc84611d6f565b600d6040516020016115f093929190612b4d565b6040516020818303038152906040529392505050565b8260008111801561161957506011548111155b6116355760405162461bcd60e51b8152600401610a0390612ab1565b6010548161164a600154600054036000190190565b6116549190612af5565b11156116725760405162461bcd60e51b8152600401610a0390612b08565b8380600f546116819190612b36565b3410156116c65760405162461bcd60e51b8152602060048201526013602482015272496e73756666696369656e742066756e64732160681b6044820152606401610a03565b601254610100900460ff166117285760405162461bcd60e51b815260206004820152602260248201527f5468652077686974656c6973742073616c65206973206e6f7420656e61626c65604482015261642160f01b6064820152608401610a03565b336000908152600b602052604090205460ff16156117885760405162461bcd60e51b815260206004820152601860248201527f4164647265737320616c726561647920636c61696d65642100000000000000006044820152606401610a03565b6040516bffffffffffffffffffffffff193360601b16602082015260009060340160405160208183030381529060405280519060200120905061180285858080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525050600a549150849050611e77565b61183f5760405162461bcd60e51b815260206004820152600e60248201526d496e76616c69642070726f6f662160901b6044820152606401610a03565b336000818152600b60205260409020805460ff191660011790556118639087611d02565b505050505050565b6008546001600160a01b031633146118955760405162461bcd60e51b8152600401610a0390612961565b60128054911515620100000262ff000019909216919091179055565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205460ff1690565b816000811180156118f257506011548111155b61190e5760405162461bcd60e51b8152600401610a0390612ab1565b60105481611923600154600054036000190190565b61192d9190612af5565b111561194b5760405162461bcd60e51b8152600401610a0390612b08565b6008546001600160a01b031633146119755760405162461bcd60e51b8152600401610a0390612961565b6109d48284611d02565b6008546001600160a01b031633146119a95760405162461bcd60e51b8152600401610a0390612961565b6001600160a01b038116611a0e5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a03565b611a1781611cb0565b50565b600081600111158015611a2e575060005482105b8015610877575050600090815260046020526040902054600160e01b900460ff161590565b60008281526006602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b6daaeb6d7670e522a718067333cd4e3b15611a1757604051633185c44d60e21b81523060048201526001600160a01b03821660248201526daaeb6d7670e522a718067333cd4e9063c617113490604401602060405180830381865afa158015611b1c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b409190612bed565b611a1757604051633b79c77360e21b81526001600160a01b0382166004820152602401610a03565b6109d4838383611e8d565b6109d4838383604051806020016040528060008152506113ab565b60408051606081018252600080825260208201819052918101919091528180600111611c9757600054811015611c9757600081815260046020908152604091829020825160608101845290546001600160a01b0381168252600160a01b81046001600160401b031692820192909252600160e01b90910460ff16151591810182905290611c955780516001600160a01b031615611c2c579392505050565b5060001901600081815260046020908152604091829020825160608101845290546001600160a01b038116808352600160a01b82046001600160401b031693830193909352600160e01b900460ff1615159281019290925215611c90579392505050565b611c2c565b505b604051636f96cda160e11b815260040160405180910390fd5b600880546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b610a18828260405180602001604052806000815250612078565b611d27848484611e8d565b6001600160a01b0383163b15610a7e57611d438484848461223f565b610a7e576040516368d2bf6b60e11b815260040160405180910390fd5b6060600c805461088c90612927565b606081600003611d965750506040805180820190915260018152600360fc1b602082015290565b8160005b8115611dc05780611daa81612c0a565b9150611db99050600a83612c39565b9150611d9a565b6000816001600160401b03811115611dda57611dda61248b565b6040519080825280601f01601f191660200182016040528015611e04576020820181803683370190505b5090505b8415611e6f57611e19600183612c4d565b9150611e26600a86612c60565b611e31906030612af5565b60f81b818381518110611e4657611e46612a9b565b60200101906001600160f81b031916908160001a905350611e68600a86612c39565b9450611e08565b949350505050565b600082611e84858461232a565b14949350505050565b6000611e9882611b8e565b9050836001600160a01b031681600001516001600160a01b031614611ecf5760405162a1148160e81b815260040160405180910390fd5b6000336001600160a01b0386161480611eed5750611eed85336118b1565b80611f08575033611efd8461090f565b6001600160a01b0316145b905080611f2857604051632ce44b5f60e11b815260040160405180910390fd5b6001600160a01b038416611f4f57604051633a954ecd60e21b815260040160405180910390fd5b611f5b60008487611a53565b6001600160a01b038581166000908152600560209081526040808320805467ffffffffffffffff198082166001600160401b0392831660001901831617909255898616808652838620805493841693831660019081018416949094179055898652600490945282852080546001600160e01b031916909417600160a01b4290921691909102178355870180845292208054919390911661202f57600054821461202f57805460208601516001600160401b0316600160a01b026001600160e01b03199091166001600160a01b038a16171781555b50505082846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46113d1565b6000546001600160a01b0384166120a157604051622e076360e81b815260040160405180910390fd5b826000036120c25760405163b562e8dd60e01b815260040160405180910390fd5b6001600160a01b038416600081815260056020908152604080832080546fffffffffffffffffffffffffffffffff1981166001600160401b038083168b0181169182176801000000000000000067ffffffffffffffff1990941690921783900481168b01811690920217909155858452600490925290912080546001600160e01b0319168317600160a01b42909316929092029190911790558190818501903b156121ea575b60405182906001600160a01b038816906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a46121b3600087848060010195508761223f565b6121d0576040516368d2bf6b60e11b815260040160405180910390fd5b8082106121685782600054146121e557600080fd5b61222f565b5b6040516001830192906001600160a01b038816906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a48082106121eb575b506000908155610a7e9085838684565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a0290612274903390899088908890600401612c74565b6020604051808303816000875af19250505080156122af575060408051601f3d908101601f191682019092526122ac91810190612cb1565b60015b61230d573d8080156122dd576040519150601f19603f3d011682016040523d82523d6000602084013e6122e2565b606091505b508051600003612305576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050949350505050565b600081815b8451811015610d5457600085828151811061234c5761234c612a9b565b602002602001015190508083116123725760008381526020829052604090209250612383565b600081815260208490526040902092505b508061238e81612c0a565b91505061232f565b6001600160e01b031981168114611a1757600080fd5b6000602082840312156123be57600080fd5b813561117281612396565b60005b838110156123e45781810151838201526020016123cc565b50506000910152565b600081518084526124058160208601602086016123c9565b601f01601f19169290920160200192915050565b60208152600061117260208301846123ed565b60006020828403121561243e57600080fd5b5035919050565b80356001600160a01b038116811461245c57600080fd5b919050565b6000806040838503121561247457600080fd5b61247d83612445565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156124c9576124c961248b565b604052919050565b60006001600160401b038311156124ea576124ea61248b565b6124fd601f8401601f19166020016124a1565b905082815283838301111561251157600080fd5b828260208301376000602084830101529392505050565b60006020828403121561253a57600080fd5b81356001600160401b0381111561255057600080fd5b8201601f8101841361256157600080fd5b611e6f848235602084016124d1565b8015158114611a1757600080fd5b60006020828403121561259057600080fd5b813561117281612570565b6000806000606084860312156125b057600080fd5b6125b984612445565b92506125c760208501612445565b9150604084013590509250925092565b600060208083850312156125ea57600080fd5b82356001600160401b038082111561260157600080fd5b818501915085601f83011261261557600080fd5b8135818111156126275761262761248b565b8060051b91506126388483016124a1565b818152918301840191848101908884111561265257600080fd5b938501935b8385101561267057843582529385019390850190612657565b98975050505050505050565b6020808252825182820181905260009190848201906040850190845b81811015610f9d576126d383855180516001600160a01b031682526020808201516001600160401b0316908301526040908101511515910152565b9284019260609290920191600101612698565b6000602082840312156126f857600080fd5b61117282612445565b6020808252825182820181905260009190848201906040850190845b81811015610f9d5783518352928401929184019160010161271d565b60008060006060848603121561274e57600080fd5b61275784612445565b95602085013595506040909401359392505050565b6000806040838503121561277f57600080fd5b61278883612445565b9150602083013561279881612570565b809150509250929050565b600080600080608085870312156127b957600080fd5b6127c285612445565b93506127d060208601612445565b92506040850135915060608501356001600160401b038111156127f257600080fd5b8501601f8101871361280357600080fd5b612812878235602084016124d1565b91505092959194509250565b81516001600160a01b031681526020808301516001600160401b03169082015260408083015115159082015260608101610877565b60008060006040848603121561286857600080fd5b8335925060208401356001600160401b038082111561288657600080fd5b818601915086601f83011261289a57600080fd5b8135818111156128a957600080fd5b8760208260051b85010111156128be57600080fd5b6020830194508093505050509250925092565b600080604083850312156128e457600080fd5b6128ed83612445565b91506128fb60208401612445565b90509250929050565b6000806040838503121561291757600080fd5b823591506128fb60208401612445565b600181811c9082168061293b57607f821691505b60208210810361295b57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b601f8211156109d457600081815260208120601f850160051c810160208610156129bd5750805b601f850160051c820191505b81811015611863578281556001016129c9565b81516001600160401b038111156129f5576129f561248b565b612a0981612a038454612927565b84612996565b602080601f831160018114612a3e5760008415612a265750858301515b600019600386901b1c1916600185901b178555611863565b600085815260208120601f198616915b82811015612a6d57888601518255948401946001909101908401612a4e565b5085821015612a8b5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052603260045260246000fd5b602080825260149082015273496e76616c6964206d696e7420616d6f756e742160601b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b8082018082111561087757610877612adf565b6020808252601490820152734d617820737570706c792065786365656465642160601b604082015260600190565b808202811582820484141761087757610877612adf565b600084516020612b608285838a016123c9565b855191840191612b738184848a016123c9565b8554920191600090612b8481612927565b60018281168015612b9c5760018114612bb157612bdd565b60ff1984168752821515830287019450612bdd565b896000528560002060005b84811015612bd557815489820152908301908701612bbc565b505082870194505b50929a9950505050505050505050565b600060208284031215612bff57600080fd5b815161117281612570565b600060018201612c1c57612c1c612adf565b5060010190565b634e487b7160e01b600052601260045260246000fd5b600082612c4857612c48612c23565b500490565b8181038181111561087757610877612adf565b600082612c6f57612c6f612c23565b500690565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090612ca7908301846123ed565b9695505050505050565b600060208284031215612cc357600080fd5b81516111728161239656fea2646970667358221220108cbca667b2a5a30803b5c2fccad900212d9d1afa913c982c412c9058329c3564736f6c634300081100334f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657200000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a110000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000016000000000000000000000000000000000000000000000000000000000000000354469676974616c20426f6f6b2050617373202d205468652053656372657473204f6620416e204f6c642043686572727920547265650000000000000000000000000000000000000000000000000000000000000000000000000000000000000444474250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000041697066733a2f2f516d4e544852475956763655613245354171724a6b3946316e5843587644586f4c3678517548377a7744627a39482f68696464656e2e6a736f6e00000000000000000000000000000000000000000000000000000000000000