0x6102a0604052610bb861014090815250600a610160908152506003610180908152506001601060006101000a81548160ff0219169083151502179055506000601060016101000a81548160ff0219169083151502179055506000601060026101000a81548160ff0219169083151502179055506422ecb25c006101a090815250641e449a94006101c090815250631dcd650060115560c86012556103e86101e0908152506102bc6102009081525061012c6102209081525073212bcfe60f8e71aecbd490c141eb6973e7b6b25173ffffffffffffffffffffffffffffffffffffffff166102409073ffffffffffffffffffffffffffffffffffffffff1681525073c88c655c62e55de376561fc9154df9548d761f4573ffffffffffffffffffffffffffffffffffffffff166102609073ffffffffffffffffffffffffffffffffffffffff16815250737520573d4cb32f5e094200dd598d1893176c841d73ffffffffffffffffffffffffffffffffffffffff166102809073ffffffffffffffffffffffffffffffffffffffff168152503480156200019c57600080fd5b5060405162006a4e38038062006a4e8339818101604052810190620001c291906200091f565b81816040518060400160405280600a81526020017f414242204c6567616379000000000000000000000000000000000000000000008152506040518060400160405280600181526020017f310000000000000000000000000000000000000000000000000000000000000081525060008280519060200120905060008280519060200120905060007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f90508260e081815250508161010081815250504660a08181525050620002998184846200041160201b60201c565b608081815250503073ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff168152505080610120818152505050505050508160039080519060200190620002fa929190620006d2565b50806004908051906020019062000313929190620006d2565b50620003246200044d60201b60201c565b60018190555050506200034c620003406200045660201b60201c565b6200045e60201b60201c565b62000360336101f46200052460201b60201c565b73df8d2b9c6ed300edc38f24133a2e1ac150ff7f176000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550735f4ec3df9cbd43714fe2740f5e3616155c5b8419600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505062000bfc565b600083838346306040516020016200042e95949392919062000a1f565b6040516020818303038152906040528051906020012090509392505050565b60006001905090565b600033905090565b6000600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b62000534620006c860201b60201c565b6bffffffffffffffffffffffff16816bffffffffffffffffffffffff16111562000595576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200058c9062000b03565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141562000608576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620005ff9062000b75565b60405180910390fd5b60405180604001604052808373ffffffffffffffffffffffffffffffffffffffff168152602001826bffffffffffffffffffffffff16815250600960008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160000160146101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055509050505050565b6000612710905090565b828054620006e09062000bc6565b90600052602060002090601f01602090048101928262000704576000855562000750565b82601f106200071f57805160ff191683800117855562000750565b8280016001018555821562000750579182015b828111156200074f57825182559160200191906001019062000732565b5b5090506200075f919062000763565b5090565b5b808211156200077e57600081600090555060010162000764565b5090565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b620007eb82620007a0565b810181811067ffffffffffffffff821117156200080d576200080c620007b1565b5b80604052505050565b60006200082262000782565b9050620008308282620007e0565b919050565b600067ffffffffffffffff821115620008535762000852620007b1565b5b6200085e82620007a0565b9050602081019050919050565b60005b838110156200088b5780820151818401526020810190506200086e565b838111156200089b576000848401525b50505050565b6000620008b8620008b28462000835565b62000816565b905082815260208101848484011115620008d757620008d66200079b565b5b620008e48482856200086b565b509392505050565b600082601f83011262000904576200090362000796565b5b815162000916848260208601620008a1565b91505092915050565b600080604083850312156200093957620009386200078c565b5b600083015167ffffffffffffffff8111156200095a576200095962000791565b5b6200096885828601620008ec565b925050602083015167ffffffffffffffff8111156200098c576200098b62000791565b5b6200099a85828601620008ec565b9150509250929050565b6000819050919050565b620009b981620009a4565b82525050565b6000819050919050565b620009d481620009bf565b82525050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000a0782620009da565b9050919050565b62000a1981620009fa565b82525050565b600060a08201905062000a366000830188620009ae565b62000a456020830187620009ae565b62000a546040830186620009ae565b62000a636060830185620009c9565b62000a72608083018462000a0e565b9695505050505050565b600082825260208201905092915050565b7f455243323938313a20726f79616c7479206665652077696c6c2065786365656460008201527f2073616c65507269636500000000000000000000000000000000000000000000602082015250565b600062000aeb602a8362000a7c565b915062000af88262000a8d565b604082019050919050565b6000602082019050818103600083015262000b1e8162000adc565b9050919050565b7f455243323938313a20696e76616c696420726563656976657200000000000000600082015250565b600062000b5d60198362000a7c565b915062000b6a8262000b25565b602082019050919050565b6000602082019050818103600083015262000b908162000b4e565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168062000bdf57607f821691505b6020821081141562000bf65762000bf562000b97565b5b50919050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e0516102005161022051610240516102605161028051615d4362000d0b600039600081816115dd01526130d4015260008181611580015261305e0152600081816115230152612fe801526000612f8501526000612f4801526000612f0b0152600081816113370152611e4e015260008181611a0d0152611eb4015260008181611cf601526122540152600081816118d301526126d2015260008181610b220152818161187101528181611a4c0152611c9401526000613a9e01526000613ae001526000613abf015260006139f401526000613a4a01526000613a730152615d436000f3fe6080604052600436106102935760003560e01c80635a2e832d1161015a578063a22cb465116100c1578063cfc86f7b1161007a578063cfc86f7b146109fd578063d2039bf314610a28578063dab823a814610a51578063e0f9b47914610a6d578063e985e9c514610a98578063f2fde38b14610ad557610293565b8063a22cb465146108dd578063ab59fa4d14610906578063b37136691461092f578063b88d4fde1461095a578063c87b56dd14610983578063ce7c2ac2146109c057610293565b806379de186a1161011357806379de186a146107cb5780637a233fb3146107f65780637f023e0714610821578063877d21011461085e5780638da5cb5b1461088757806395d89b41146108b257610293565b80635a2e832d146106b95780635b2ba2ac146106e45780636352211e1461070f5780636817c76c1461074c57806370a0823114610777578063715018a6146107b457610293565b80632a55205a116101fe57806342842e0e116101b757806342842e0e146105ba5780634322d8c3146105e3578063484b973c1461060e578063486d13b3146106375780634ee7b7f51461067457806355f804b31461069057610293565b80632a55205a146104cc57806330c8d8811461050a57806331c515b814610535578063383027d01461055e5780633ccfd60b1461058757806340c10f191461059e57610293565b80630f4161aa116102505780630f4161aa146103ba5780631029a8f2146103e557806318160ddd1461041057806323b872dd1461043b57806325418cb21461046457806329db19341461048f57610293565b806301ffc9a714610298578063031bd4c4146102d557806304634d8d1461030057806306fdde0314610329578063081812fc14610354578063095ea7b314610391575b600080fd5b3480156102a457600080fd5b506102bf60048036038101906102ba9190613fba565b610afe565b6040516102cc9190614002565b60405180910390f35b3480156102e157600080fd5b506102ea610b20565b6040516102f79190614036565b60405180910390f35b34801561030c57600080fd5b50610327600480360381019061032291906140f3565b610b44565b005b34801561033557600080fd5b5061033e610b5a565b60405161034b91906141cc565b60405180910390f35b34801561036057600080fd5b5061037b6004803603810190610376919061421a565b610bec565b6040516103889190614256565b60405180910390f35b34801561039d57600080fd5b506103b860048036038101906103b39190614271565b610c6b565b005b3480156103c657600080fd5b506103cf610daf565b6040516103dc9190614002565b60405180910390f35b3480156103f157600080fd5b506103fa610dc2565b6040516104079190614002565b60405180910390f35b34801561041c57600080fd5b50610425610dd5565b6040516104329190614036565b60405180910390f35b34801561044757600080fd5b50610462600480360381019061045d91906142b1565b610dec565b005b34801561047057600080fd5b50610479611111565b604051610486919061431d565b60405180910390f35b34801561049b57600080fd5b506104b660048036038101906104b1919061421a565b611117565b6040516104c39190614256565b60405180910390f35b3480156104d857600080fd5b506104f360048036038101906104ee9190614338565b61114a565b604051610501929190614378565b60405180910390f35b34801561051657600080fd5b5061051f611335565b60405161052c919061431d565b60405180910390f35b34801561054157600080fd5b5061055c600480360381019061055791906143cd565b611359565b005b34801561056a57600080fd5b506105856004803603810190610580919061421a565b611399565b005b34801561059357600080fd5b5061059c6114c0565b005b6105b860048036038101906105b39190614271565b611799565b005b3480156105c657600080fd5b506105e160048036038101906105dc91906142b1565b6119eb565b005b3480156105ef57600080fd5b506105f8611a0b565b604051610605919061431d565b60405180910390f35b34801561061a57600080fd5b5061063560048036038101906106309190614271565b611a2f565b005b34801561064357600080fd5b5061065e6004803603810190610659919061440d565b611b24565b60405161066b9190614036565b60405180910390f35b61068e600480360381019061068991906145c4565b611b3c565b005b34801561069c57600080fd5b506106b760048036038101906106b291906146d4565b611e25565b005b3480156106c557600080fd5b506106ce611e47565b6040516106db9190614036565b60405180910390f35b3480156106f057600080fd5b506106f9611e77565b6040516107069190614256565b60405180910390f35b34801561071b57600080fd5b506107366004803603810190610731919061421a565b611e9b565b6040516107439190614256565b60405180910390f35b34801561075857600080fd5b50610761611ead565b60405161076e9190614036565b60405180910390f35b34801561078357600080fd5b5061079e6004803603810190610799919061440d565b611edd565b6040516107ab9190614036565b60405180910390f35b3480156107c057600080fd5b506107c9611f96565b005b3480156107d757600080fd5b506107e0611faa565b6040516107ed9190614002565b60405180910390f35b34801561080257600080fd5b5061080b611fbd565b6040516108189190614036565b60405180910390f35b34801561082d57600080fd5b506108486004803603810190610843919061440d565b611fcf565b6040516108559190614036565b60405180910390f35b34801561086a57600080fd5b5061088560048036038101906108809190614749565b611fe7565b005b34801561089357600080fd5b5061089c611ff9565b6040516108a99190614256565b60405180910390f35b3480156108be57600080fd5b506108c7612023565b6040516108d491906141cc565b60405180910390f35b3480156108e957600080fd5b5061090460048036038101906108ff9190614776565b6120b5565b005b34801561091257600080fd5b5061092d600480360381019061092891906147b6565b61222d565b005b34801561093b57600080fd5b50610944612252565b6040516109519190614036565b60405180910390f35b34801561096657600080fd5b50610981600480360381019061097c91906147e3565b612276565b005b34801561098f57600080fd5b506109aa60048036038101906109a5919061421a565b6122e9565b6040516109b791906141cc565b60405180910390f35b3480156109cc57600080fd5b506109e760048036038101906109e2919061440d565b612388565b6040516109f49190614036565b60405180910390f35b348015610a0957600080fd5b50610a126123a0565b604051610a1f91906141cc565b60405180910390f35b348015610a3457600080fd5b50610a4f6004803603810190610a4a919061440d565b61242e565b005b610a6b6004803603810190610a66919061421a565b612479565b005b348015610a7957600080fd5b50610a826126d0565b604051610a8f9190614036565b60405180910390f35b348015610aa457600080fd5b50610abf6004803603810190610aba9190614866565b6126f4565b604051610acc9190614002565b60405180910390f35b348015610ae157600080fd5b50610afc6004803603810190610af7919061440d565b612788565b005b6000610b098261280c565b80610b195750610b188261289e565b5b9050919050565b7f000000000000000000000000000000000000000000000000000000000000000081565b610b4c612918565b610b568282612996565b5050565b606060038054610b69906148d5565b80601f0160208091040260200160405190810160405280929190818152602001828054610b95906148d5565b8015610be25780601f10610bb757610100808354040283529160200191610be2565b820191906000526020600020905b815481529060010190602001808311610bc557829003601f168201915b5050505050905090565b6000610bf782612b2c565b610c2d576040517fcf4700e400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6007600083815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000610c7682611e9b565b90508073ffffffffffffffffffffffffffffffffffffffff16610c97612b8b565b73ffffffffffffffffffffffffffffffffffffffff1614610cfa57610cc381610cbe612b8b565b6126f4565b610cf9576040517fcfb3b94200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b826007600084815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550818373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a4505050565b601060029054906101000a900460ff1681565b601060009054906101000a900460ff1681565b6000610ddf612b93565b6002546001540303905090565b6000610df782612b9c565b90508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610e5e576040517fa114810000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080610e6a84612c6a565b91509150610e808187610e7b612b8b565b612c91565b610ecc57610e9586610e90612b8b565b6126f4565b610ecb576040517f59c896be00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415610f33576040517fea553b3400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610f408686866001612cd5565b8015610f4b57600082555b600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600081546001900391905081905550600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600081546001019190508190555061101985610ff5888887612cdb565b7c020000000000000000000000000000000000000000000000000000000017612d03565b600560008681526020019081526020016000208190555060007c0200000000000000000000000000000000000000000000000000000000841614156110a157600060018501905060006005600083815260200190815260200160002054141561109f57600154811461109e578360056000838152602001908152602001600020819055505b5b505b838573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46111098686866001612d2e565b505050505050565b60115481565b600d6020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000600a60008681526020019081526020016000206040518060400160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016000820160149054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff166bffffffffffffffffffffffff16815250509050600073ffffffffffffffffffffffffffffffffffffffff16816000015173ffffffffffffffffffffffffffffffffffffffff1614156112e05760096040518060400160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016000820160149054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff166bffffffffffffffffffffffff168152505090505b60006112ea612d34565b6bffffffffffffffffffffffff1682602001516bffffffffffffffffffffffff16866113169190614936565b61132091906149bf565b90508160000151819350935050509250929050565b7f000000000000000000000000000000000000000000000000000000000000000081565b611361612918565b81601060016101000a81548160ff02191690831515021790555080601060026101000a81548160ff0219169083151502179055505050565b6113a1612918565b600073ffffffffffffffffffffffffffffffffffffffff16600d600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611444576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161143b90614a62565b60405180910390fd5b600d600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055807fb63c28e63a0c74e576e7c530da1542f956a1cfc7fb520af576f914e2874c644d6114a583611e9b565b60006040516114b5929190614a82565b60405180910390a250565b6114c8612d3e565b73ffffffffffffffffffffffffffffffffffffffff166114e6611ff9565b73ffffffffffffffffffffffffffffffffffffffff16148061155a575061150b612d3e565b73ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16145b806115b75750611568612d3e565b73ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16145b8061161457506115c5612d3e565b73ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16145b611653576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161164a90614b1d565b60405180910390fd5b6000601460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054116116d5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116cc90614baf565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc601460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549081150290604051600060405180830381858888f1935050505061175257600080fd5b6000601460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550565b60011515601060029054906101000a900460ff161515146117ef576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117e690614c41565b60405180910390fd5b60c860c7826117fc611ead565b6118069190614936565b6118109190614936565b61181a91906149bf565b34101561185c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161185390614cad565b60405180910390fd5b80611865610dd5565b61186f9190614ccd565b7f000000000000000000000000000000000000000000000000000000000000000010156118d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118c890614d6f565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000081600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461193d9190614ccd565b111561197e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161197590614e01565b60405180910390fd5b6119888282612d46565b80600f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546119d79190614ccd565b925050819055506119e734612f04565b5050565b611a0683838360405180602001604052806000815250612276565b505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b611a37612918565b80611a40610dd5565b611a4a9190614ccd565b7f00000000000000000000000000000000000000000000000000000000000000001015611aac576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aa390614d6f565b60405180910390fd5b600081601254611abc9190614e21565b1215611afd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611af490614f01565b60405180910390fd5b611b078282612d46565b8060126000828254611b199190614e21565b925050819055505050565b600e6020528060005260406000206000915090505481565b60011515601060019054906101000a900460ff16151514611b92576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b8990614f93565b60405180910390fd5b600282602001511415611c115760c860c784611bac611e47565b611bb69190614936565b611bc09190614936565b611bca91906149bf565b341015611c0c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c0390614cad565b60405180910390fd5b611c7f565b60c860c784611c1e611ead565b611c289190614936565b611c329190614936565b611c3c91906149bf565b341015611c7e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c7590614cad565b60405180910390fd5b5b82611c88610dd5565b611c929190614ccd565b7f00000000000000000000000000000000000000000000000000000000000000001015611cf4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ceb90614fff565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000083600e6000856000015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d649190614ccd565b1115611da5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d9c90614e01565b60405180910390fd5b611daf82826131a7565b611dbd826000015184612d46565b82600e6000846000015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611e109190614ccd565b92505081905550611e2034612f04565b505050565b611e2d612918565b8060139080519060200190611e43929190613eab565b5050565b6000611e727f0000000000000000000000000000000000000000000000000000000000000000613264565b905090565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000611ea682612b9c565b9050919050565b6000611ed87f0000000000000000000000000000000000000000000000000000000000000000613264565b905090565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611f45576040517f8f4eb60400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054169050919050565b611f9e612918565b611fa8600061333c565b565b601060019054906101000a900460ff1681565b6000611fca601154613264565b905090565b600f6020528060005260406000206000915090505481565b611fef612918565b8060118190555050565b6000600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060048054612032906148d5565b80601f016020809104026020016040519081016040528092919081815260200182805461205e906148d5565b80156120ab5780601f10612080576101008083540402835291602001916120ab565b820191906000526020600020905b81548152906001019060200180831161208e57829003601f168201915b5050505050905090565b6120bd612b8b565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612122576040517fb06307db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b806008600061212f612b8b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff166121dc612b8b565b73ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516122219190614002565b60405180910390a35050565b612235612918565b80601060006101000a81548160ff02191690831515021790555050565b7f000000000000000000000000000000000000000000000000000000000000000081565b612281848484610dec565b60008373ffffffffffffffffffffffffffffffffffffffff163b146122e3576122ac84848484613402565b6122e2576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b50505050565b60606122f482612b2c565b61232a576040517fa14c4b5000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000612334613553565b90506000815114156123555760405180602001604052806000815250612380565b8061235f84613644565b60405160200161237092919061505b565b6040516020818303038152906040525b915050919050565b60146020528060005260406000206000915090505481565b601380546123ad906148d5565b80601f01602080910402602001604051908101604052809291908181526020018280546123d9906148d5565b80156124265780601f106123fb57610100808354040283529160200191612426565b820191906000526020600020905b81548152906001019060200180831161240957829003601f168201915b505050505081565b612436612918565b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60011515601060009054906101000a900460ff161515146124cf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124c6906150f1565b60405180910390fd5b60c860c76124db611fbd565b6124e59190614936565b6124ef91906149bf565b341015612531576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161252890614cad565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600d600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146125d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125ca90615183565b60405180910390fd5b6125dc81611e9b565b600d600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550807fb63c28e63a0c74e576e7c530da1542f956a1cfc7fb520af576f914e2874c644d61265883611e9b565b6001604051612668929190614a82565b60405180910390a2346014600061267d611ff9565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546126c69190614ccd565b9250508190555050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b612790612918565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415612800576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127f790615215565b60405180910390fd5b6128098161333c565b50565b60006301ffc9a760e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061286757506380ac58cd60e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806128975750635b5e139f60e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b9050919050565b60007f2a55205a000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480612911575061291082613694565b5b9050919050565b612920612d3e565b73ffffffffffffffffffffffffffffffffffffffff1661293e611ff9565b73ffffffffffffffffffffffffffffffffffffffff1614612994576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161298b90615281565b60405180910390fd5b565b61299e612d34565b6bffffffffffffffffffffffff16816bffffffffffffffffffffffff1611156129fc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129f390615313565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612a6c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a639061537f565b60405180910390fd5b60405180604001604052808373ffffffffffffffffffffffffffffffffffffffff168152602001826bffffffffffffffffffffffff16815250600960008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160000160146101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055509050505050565b600081612b37612b93565b11158015612b46575060015482105b8015612b84575060007c0100000000000000000000000000000000000000000000000000000000600560008581526020019081526020016000205416145b9050919050565b600033905090565b60006001905090565b60008082905080612bab612b93565b11612c3357600154811015612c325760006005600083815260200190815260200160002054905060007c010000000000000000000000000000000000000000000000000000000082161415612c30575b6000811415612c26576005600083600190039350838152602001908152602001600020549050612bfb565b8092505050612c65565b505b5b6040517fdf2d9b4200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b919050565b60008060006007600085815260200190815260200160002090508092508254915050915091565b600073ffffffffffffffffffffffffffffffffffffffff8316925073ffffffffffffffffffffffffffffffffffffffff821691508382148383141790509392505050565b50505050565b60008060e883901c905060e8612cf28686846136fe565b62ffffff16901b9150509392505050565b600073ffffffffffffffffffffffffffffffffffffffff83169250814260a01b178317905092915050565b50505050565b6000612710905090565b600033905090565b600060015490506000821415612d88576040517fb562e8dd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b612d956000848385612cd5565b600160406001901b178202600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550612e0c83612dfd6000866000612cdb565b612e0685613707565b17612d03565b6005600083815260200190815260200160002081905550600080838301905073ffffffffffffffffffffffffffffffffffffffff85169150828260007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a4600183015b818114612ead57808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a4600181019050612e72565b506000821415612ee9576040517f2e07630000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b806001819055505050612eff6000848385612d2e565b505050565b60006127107f000000000000000000000000000000000000000000000000000000000000000083612f359190614936565b612f3f91906149bf565b905060006127107f000000000000000000000000000000000000000000000000000000000000000084612f729190614936565b612f7c91906149bf565b905060006127107f000000000000000000000000000000000000000000000000000000000000000085612faf9190614936565b612fb991906149bf565b9050600081838587612fcb919061539f565b612fd5919061539f565b612fdf919061539f565b905083601460007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546130509190614ccd565b9250508190555082601460007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546130c69190614ccd565b9250508190555081601460007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461313c9190614ccd565b925050819055508060146000613150611ff9565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546131999190614ccd565b925050819055505050505050565b60006131b283613717565b905060006131bf82613773565b905060006131cd828561378d565b905060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461325d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161325490615445565b60405180910390fd5b5050505050565b600080600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa1580156132d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132f891906154d1565b5050509150506001633b9aca0082633b9aca0086613316919061554c565b6133209190615663565b61332a919061554c565b613334919061554c565b915050919050565b6000600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60008373ffffffffffffffffffffffffffffffffffffffff1663150b7a02613428612b8b565b8786866040518563ffffffff1660e01b815260040161344a9493929190615722565b6020604051808303816000875af192505050801561348657506040513d601f19601f820116820180604052508101906134839190615783565b60015b613500573d80600081146134b6576040519150601f19603f3d011682016040523d82523d6000602084013e6134bb565b606091505b506000815114156134f8576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050949350505050565b6060600060138054613564906148d5565b905011156135fe5760138054613579906148d5565b80601f01602080910402602001604051908101604052809291908181526020018280546135a5906148d5565b80156135f25780601f106135c7576101008083540402835291602001916135f2565b820191906000526020600020905b8154815290600101906020018083116135d557829003601f168201915b50505050509050613641565b61361f3073ffffffffffffffffffffffffffffffffffffffff1660146137b4565b60405160200161362f9190615848565b60405160208183030381529060405290505b90565b606060806040510190508060405280825b60011561368057600183039250600a81066030018353600a810490508061367b57613680565b613655565b508181036020830392508083525050919050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b60009392505050565b60006001821460e11b9050919050565b60007f981d5b43c373d93722e3bc49845c5e666a67bf8faef06370b7808b92ec8087fa826000015183602001516040516020016137569392919061588e565b604051602081830303815290604052805190602001209050919050565b60006137866137806139f0565b83613b0a565b9050919050565b600080600061379c8585613b3d565b915091506137a981613b8f565b819250505092915050565b6060600060028360026137c79190614936565b6137d19190614ccd565b67ffffffffffffffff8111156137ea576137e961443f565b5b6040519080825280601f01601f19166020018201604052801561381c5781602001600182028036833780820191505090505b5090507f300000000000000000000000000000000000000000000000000000000000000081600081518110613854576138536158c5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f7800000000000000000000000000000000000000000000000000000000000000816001815181106138b8576138b76158c5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600060018460026138f89190614936565b6139029190614ccd565b90505b60018111156139a2577f3031323334353637383961626364656600000000000000000000000000000000600f861660108110613944576139436158c5565b5b1a60f81b82828151811061395b5761395a6158c5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600485901c94508061399b906158f4565b9050613905565b50600084146139e6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016139dd9061596a565b60405180910390fd5b8091505092915050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff16148015613a6c57507f000000000000000000000000000000000000000000000000000000000000000046145b15613a99577f00000000000000000000000000000000000000000000000000000000000000009050613b07565b613b047f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000613d64565b90505b90565b60008282604051602001613b1f9291906159f7565b60405160208183030381529060405280519060200120905092915050565b600080604183511415613b7f5760008060006020860151925060408601519150606086015160001a9050613b7387828585613d9e565b94509450505050613b88565b60006002915091505b9250929050565b60006004811115613ba357613ba2615a2e565b5b816004811115613bb657613bb5615a2e565b5b1415613bc157613d61565b60016004811115613bd557613bd4615a2e565b5b816004811115613be857613be7615a2e565b5b1415613c29576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613c2090615aa9565b60405180910390fd5b60026004811115613c3d57613c3c615a2e565b5b816004811115613c5057613c4f615a2e565b5b1415613c91576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613c8890615b15565b60405180910390fd5b60036004811115613ca557613ca4615a2e565b5b816004811115613cb857613cb7615a2e565b5b1415613cf9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613cf090615ba7565b60405180910390fd5b600480811115613d0c57613d0b615a2e565b5b816004811115613d1f57613d1e615a2e565b5b1415613d60576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613d5790615c39565b60405180910390fd5b5b50565b60008383834630604051602001613d7f959493929190615c59565b6040516020818303038152906040528051906020012090509392505050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08360001c1115613dd9576000600391509150613ea2565b601b8560ff1614158015613df15750601c8560ff1614155b15613e03576000600491509150613ea2565b600060018787878760405160008152602001604052604051613e289493929190615cc8565b6020604051602081039080840390855afa158015613e4a573d6000803e3d6000fd5b505050602060405103519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415613e9957600060019250925050613ea2565b80600092509250505b94509492505050565b828054613eb7906148d5565b90600052602060002090601f016020900481019282613ed95760008555613f20565b82601f10613ef257805160ff1916838001178555613f20565b82800160010185558215613f20579182015b82811115613f1f578251825591602001919060010190613f04565b5b509050613f2d9190613f31565b5090565b5b80821115613f4a576000816000905550600101613f32565b5090565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b613f9781613f62565b8114613fa257600080fd5b50565b600081359050613fb481613f8e565b92915050565b600060208284031215613fd057613fcf613f58565b5b6000613fde84828501613fa5565b91505092915050565b60008115159050919050565b613ffc81613fe7565b82525050565b60006020820190506140176000830184613ff3565b92915050565b6000819050919050565b6140308161401d565b82525050565b600060208201905061404b6000830184614027565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061407c82614051565b9050919050565b61408c81614071565b811461409757600080fd5b50565b6000813590506140a981614083565b92915050565b60006bffffffffffffffffffffffff82169050919050565b6140d0816140af565b81146140db57600080fd5b50565b6000813590506140ed816140c7565b92915050565b6000806040838503121561410a57614109613f58565b5b60006141188582860161409a565b9250506020614129858286016140de565b9150509250929050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561416d578082015181840152602081019050614152565b8381111561417c576000848401525b50505050565b6000601f19601f8301169050919050565b600061419e82614133565b6141a8818561413e565b93506141b881856020860161414f565b6141c181614182565b840191505092915050565b600060208201905081810360008301526141e68184614193565b905092915050565b6141f78161401d565b811461420257600080fd5b50565b600081359050614214816141ee565b92915050565b6000602082840312156142305761422f613f58565b5b600061423e84828501614205565b91505092915050565b61425081614071565b82525050565b600060208201905061426b6000830184614247565b92915050565b6000806040838503121561428857614287613f58565b5b60006142968582860161409a565b92505060206142a785828601614205565b9150509250929050565b6000806000606084860312156142ca576142c9613f58565b5b60006142d88682870161409a565b93505060206142e98682870161409a565b92505060406142fa86828701614205565b9150509250925092565b6000819050919050565b61431781614304565b82525050565b6000602082019050614332600083018461430e565b92915050565b6000806040838503121561434f5761434e613f58565b5b600061435d85828601614205565b925050602061436e85828601614205565b9150509250929050565b600060408201905061438d6000830185614247565b61439a6020830184614027565b9392505050565b6143aa81613fe7565b81146143b557600080fd5b50565b6000813590506143c7816143a1565b92915050565b600080604083850312156143e4576143e3613f58565b5b60006143f2858286016143b8565b9250506020614403858286016143b8565b9150509250929050565b60006020828403121561442357614422613f58565b5b60006144318482850161409a565b91505092915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61447782614182565b810181811067ffffffffffffffff821117156144965761449561443f565b5b80604052505050565b60006144a9613f4e565b90506144b5828261446e565b919050565b6000604082840312156144d0576144cf61443a565b5b6144da604061449f565b905060006144ea8482850161409a565b60008301525060206144fe84828501614205565b60208301525092915050565b600080fd5b600080fd5b600067ffffffffffffffff82111561452f5761452e61443f565b5b61453882614182565b9050602081019050919050565b82818337600083830152505050565b600061456761456284614514565b61449f565b9050828152602081018484840111156145835761458261450f565b5b61458e848285614545565b509392505050565b600082601f8301126145ab576145aa61450a565b5b81356145bb848260208601614554565b91505092915050565b6000806000608084860312156145dd576145dc613f58565b5b60006145eb86828701614205565b93505060206145fc868287016144ba565b925050606084013567ffffffffffffffff81111561461d5761461c613f5d565b5b61462986828701614596565b9150509250925092565b600067ffffffffffffffff82111561464e5761464d61443f565b5b61465782614182565b9050602081019050919050565b600061467761467284614633565b61449f565b9050828152602081018484840111156146935761469261450f565b5b61469e848285614545565b509392505050565b600082601f8301126146bb576146ba61450a565b5b81356146cb848260208601614664565b91505092915050565b6000602082840312156146ea576146e9613f58565b5b600082013567ffffffffffffffff81111561470857614707613f5d565b5b614714848285016146a6565b91505092915050565b61472681614304565b811461473157600080fd5b50565b6000813590506147438161471d565b92915050565b60006020828403121561475f5761475e613f58565b5b600061476d84828501614734565b91505092915050565b6000806040838503121561478d5761478c613f58565b5b600061479b8582860161409a565b92505060206147ac858286016143b8565b9150509250929050565b6000602082840312156147cc576147cb613f58565b5b60006147da848285016143b8565b91505092915050565b600080600080608085870312156147fd576147fc613f58565b5b600061480b8782880161409a565b945050602061481c8782880161409a565b935050604061482d87828801614205565b925050606085013567ffffffffffffffff81111561484e5761484d613f5d565b5b61485a87828801614596565b91505092959194509250565b6000806040838503121561487d5761487c613f58565b5b600061488b8582860161409a565b925050602061489c8582860161409a565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806148ed57607f821691505b60208210811415614901576149006148a6565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006149418261401d565b915061494c8361401d565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561498557614984614907565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006149ca8261401d565b91506149d58361401d565b9250826149e5576149e4614990565b5b828204905092915050565b7f414242204c65676163793a20426f74746c65206e6f742072656465656d65642060008201527f7965740000000000000000000000000000000000000000000000000000000000602082015250565b6000614a4c60238361413e565b9150614a57826149f0565b604082019050919050565b60006020820190508181036000830152614a7b81614a3f565b9050919050565b6000604082019050614a976000830185614247565b614aa46020830184613ff3565b9392505050565b7f414242204c65676163793a2043616c6c6572206973206e6f7420612042656e6560008201527f6669636961727900000000000000000000000000000000000000000000000000602082015250565b6000614b0760278361413e565b9150614b1282614aab565b604082019050919050565b60006020820190508181036000830152614b3681614afa565b9050919050565b7f414242204c65676163793a2042656e656669636961727920686173206e6f746860008201527f696e6720746f2077697468647261770000000000000000000000000000000000602082015250565b6000614b99602f8361413e565b9150614ba482614b3d565b604082019050919050565b60006020820190508181036000830152614bc881614b8c565b9050919050565b7f414242204c65676163793a205075626c6963204d696e74696e67206973206e6f60008201527f7420456e61626c65640000000000000000000000000000000000000000000000602082015250565b6000614c2b60298361413e565b9150614c3682614bcf565b604082019050919050565b60006020820190508181036000830152614c5a81614c1e565b9050919050565b7f414242204c65676163793a20496e73756666696369656e7420416d6f756e7400600082015250565b6000614c97601f8361413e565b9150614ca282614c61565b602082019050919050565b60006020820190508181036000830152614cc681614c8a565b9050919050565b6000614cd88261401d565b9150614ce38361401d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115614d1857614d17614907565b5b828201905092915050565b7f414242204c65676163793a20546f6b656e204c696d6974207265616368656400600082015250565b6000614d59601f8361413e565b9150614d6482614d23565b602082019050919050565b60006020820190508181036000830152614d8881614d4c565b9050919050565b7f414242204c65676163793a204d6178696d756d20416d6f756e7420706572205760008201527f616c6c6574207265616368656400000000000000000000000000000000000000602082015250565b6000614deb602d8361413e565b9150614df682614d8f565b604082019050919050565b60006020820190508181036000830152614e1a81614dde565b9050919050565b6000614e2c82614304565b9150614e3783614304565b9250827f800000000000000000000000000000000000000000000000000000000000000001821260008412151615614e7257614e71614907565b5b827f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff018213600084121615614eaa57614ea9614907565b5b828203905092915050565b7f414242204c65676163793a204e6f20467265656d696e7473206c656674000000600082015250565b6000614eeb601d8361413e565b9150614ef682614eb5565b602082019050919050565b60006020820190508181036000830152614f1a81614ede565b9050919050565b7f414242204c65676163793a20416c6c6f776c697374204d696e74696e6720697360008201527f206e6f7420456e61626c65640000000000000000000000000000000000000000602082015250565b6000614f7d602c8361413e565b9150614f8882614f21565b604082019050919050565b60006020820190508181036000830152614fac81614f70565b9050919050565b7f414242204c65676163793a20416c6c20546f6b656e73206d696e746564000000600082015250565b6000614fe9601d8361413e565b9150614ff482614fb3565b602082019050919050565b6000602082019050818103600083015261501881614fdc565b9050919050565b600081905092915050565b600061503582614133565b61503f818561501f565b935061504f81856020860161414f565b80840191505092915050565b6000615067828561502a565b9150615073828461502a565b91508190509392505050565b7f414242204c65676163793a20426f74746c652052656465656d696e672069732060008201527f63757272656e746c79206e6f7420656e61626c65640000000000000000000000602082015250565b60006150db60358361413e565b91506150e68261507f565b604082019050919050565b6000602082019050818103600083015261510a816150ce565b9050919050565b7f414242204c65676163793a20426f74746c6520616c726561647920726564656560008201527f6d65640000000000000000000000000000000000000000000000000000000000602082015250565b600061516d60238361413e565b915061517882615111565b604082019050919050565b6000602082019050818103600083015261519c81615160565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006151ff60268361413e565b915061520a826151a3565b604082019050919050565b6000602082019050818103600083015261522e816151f2565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600061526b60208361413e565b915061527682615235565b602082019050919050565b6000602082019050818103600083015261529a8161525e565b9050919050565b7f455243323938313a20726f79616c7479206665652077696c6c2065786365656460008201527f2073616c65507269636500000000000000000000000000000000000000000000602082015250565b60006152fd602a8361413e565b9150615308826152a1565b604082019050919050565b6000602082019050818103600083015261532c816152f0565b9050919050565b7f455243323938313a20696e76616c696420726563656976657200000000000000600082015250565b600061536960198361413e565b915061537482615333565b602082019050919050565b600060208201905081810360008301526153988161535c565b9050919050565b60006153aa8261401d565b91506153b58361401d565b9250828210156153c8576153c7614907565b5b828203905092915050565b7f4d696e747061737356616c696461746f723a204d696e7470617373207369676e60008201527f617475726520766572696669636174696f6e206572726f720000000000000000602082015250565b600061542f60388361413e565b915061543a826153d3565b604082019050919050565b6000602082019050818103600083015261545e81615422565b9050919050565b600069ffffffffffffffffffff82169050919050565b61548481615465565b811461548f57600080fd5b50565b6000815190506154a18161547b565b92915050565b6000815190506154b68161471d565b92915050565b6000815190506154cb816141ee565b92915050565b600080600080600060a086880312156154ed576154ec613f58565b5b60006154fb88828901615492565b955050602061550c888289016154a7565b945050604061551d888289016154bc565b935050606061552e888289016154bc565b925050608061553f88828901615492565b9150509295509295909350565b600061555782614304565b915061556283614304565b9250827f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821160008413600084131616156155a1576155a0614907565b5b817f800000000000000000000000000000000000000000000000000000000000000005831260008412600084131616156155de576155dd614907565b5b827f8000000000000000000000000000000000000000000000000000000000000000058212600084136000841216161561561b5761561a614907565b5b827f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff058212600084126000841216161561565857615657614907565b5b828202905092915050565b600061566e82614304565b915061567983614304565b92508261568957615688614990565b5b600160000383147f8000000000000000000000000000000000000000000000000000000000000000831416156156c2576156c1614907565b5b828205905092915050565b600081519050919050565b600082825260208201905092915050565b60006156f4826156cd565b6156fe81856156d8565b935061570e81856020860161414f565b61571781614182565b840191505092915050565b60006080820190506157376000830187614247565b6157446020830186614247565b6157516040830185614027565b818103606083015261576381846156e9565b905095945050505050565b60008151905061577d81613f8e565b92915050565b60006020828403121561579957615798613f58565b5b60006157a78482850161576e565b91505092915050565b7f68747470733a2f2f6d657461646174612e626f776c696e652e6170702f000000600082015250565b60006157e6601d8361501f565b91506157f1826157b0565b601d82019050919050565b7f2f00000000000000000000000000000000000000000000000000000000000000600082015250565b600061583260018361501f565b915061583d826157fc565b600182019050919050565b6000615853826157d9565b915061585f828461502a565b915061586a82615825565b915081905092915050565b6000819050919050565b61588881615875565b82525050565b60006060820190506158a3600083018661587f565b6158b06020830185614247565b6158bd6040830184614027565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60006158ff8261401d565b9150600082141561591357615912614907565b5b600182039050919050565b7f537472696e67733a20686578206c656e67746820696e73756666696369656e74600082015250565b600061595460208361413e565b915061595f8261591e565b602082019050919050565b6000602082019050818103600083015261598381615947565b9050919050565b7f1901000000000000000000000000000000000000000000000000000000000000600082015250565b60006159c060028361501f565b91506159cb8261598a565b600282019050919050565b6000819050919050565b6159f16159ec82615875565b6159d6565b82525050565b6000615a02826159b3565b9150615a0e82856159e0565b602082019150615a1e82846159e0565b6020820191508190509392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f45434453413a20696e76616c6964207369676e61747572650000000000000000600082015250565b6000615a9360188361413e565b9150615a9e82615a5d565b602082019050919050565b60006020820190508181036000830152615ac281615a86565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265206c656e67746800600082015250565b6000615aff601f8361413e565b9150615b0a82615ac9565b602082019050919050565b60006020820190508181036000830152615b2e81615af2565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265202773272076616c60008201527f7565000000000000000000000000000000000000000000000000000000000000602082015250565b6000615b9160228361413e565b9150615b9c82615b35565b604082019050919050565b60006020820190508181036000830152615bc081615b84565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265202776272076616c60008201527f7565000000000000000000000000000000000000000000000000000000000000602082015250565b6000615c2360228361413e565b9150615c2e82615bc7565b604082019050919050565b60006020820190508181036000830152615c5281615c16565b9050919050565b600060a082019050615c6e600083018861587f565b615c7b602083018761587f565b615c88604083018661587f565b615c956060830185614027565b615ca26080830184614247565b9695505050505050565b600060ff82169050919050565b615cc281615cac565b82525050565b6000608082019050615cdd600083018761587f565b615cea6020830186615cb9565b615cf7604083018561587f565b615d04606083018461587f565b9594505050505056fea26469706673582212203d96939baa6b8d44a90dbb42608c27354e97684b29b3f5ddef0122d46f641cf464736f6c634300080a003300000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000a414242204c65676163790000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000034142420000000000000000000000000000000000000000000000000000000000