6080604052610e42600d55348015610015575f80fd5b50336040518060400160405280601381526020017f43727970746f204c616e6420436974697a656e000000000000000000000000008152506040518060400160405280600381526020017f434c430000000000000000000000000000000000000000000000000000000000815250815f9081610091919061091e565b5080600190816100a1919061091e565b5050505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610114575f6040517f1e4fbdf700000000000000000000000000000000000000000000000000000000815260040161010b9190610a2c565b60405180910390fd5b6101238161062160201b60201c565b505f600c819055506040518060a0016040528060658152602001616abb60659139600b9081610152919061091e565b5060405180610180016040528061015b815260200161696061015b9139601d908161017d919061091e565b50601c60405180604001604052806040518060400160405280600781526020017f436974697a656e0000000000000000000000000000000000000000000000000081525081526020015f815250908060018154018082558091505060019003905f5260205f2090600202015f909190919091505f820151815f019081610203919061091e565b50602082015181600101555050601c60405180604001604052806040518060400160405280600a81526020017f4368616e63656c6c6f720000000000000000000000000000000000000000000081525081526020016103e8815250908060018154018082558091505060019003905f5260205f2090600202015f909190919091505f820151815f019081610297919061091e565b50602082015181600101555050601c60405180604001604052806040518060400160405280600681526020017f436f6e73756c00000000000000000000000000000000000000000000000000008152508152602001610bb8815250908060018154018082558091505060019003905f5260205f2090600202015f909190919091505f820151815f01908161032b919061091e565b50602082015181600101555050601c60405180604001604052806040518060400160405280601881526020017f4d696e697374657220506c656e69706f74656e746961727900000000000000008152508152602001611388815250908060018154018082558091505060019003905f5260205f2090600202015f909190919091505f820151815f0190816103bf919061091e565b50602082015181600101555050601c60405180604001604052806040518060400160405280600a81526020017f416d6261737361646f72000000000000000000000000000000000000000000008152508152602001612710815250908060018154018082558091505060019003905f5260205f2090600202015f909190919091505f820151815f019081610453919061091e565b50602082015181600101555050601c60405180604001604052806040518060400160405280600f81526020017f436162696e65742041647669736f7200000000000000000000000000000000008152508152602001614e20815250908060018154018082558091505060019003905f5260205f2090600202015f909190919091505f820151815f0190816104e7919061091e565b50602082015181600101555050601c60405180604001604052806040518060400160405280601081526020017f436162696e6574204d696e6973746572000000000000000000000000000000008152508152602001617530815250908060018154018082558091505060019003905f5260205f2090600202015f909190919091505f820151815f01908161057b919061091e565b50602082015181600101555050601c60405180604001604052806040518060400160405280600e81526020017f5072696d65204d696e6973746572000000000000000000000000000000000000815250815260200161c350815250908060018154018082558091505060019003905f5260205f2090600202015f909190919091505f820151815f01908161060f919061091e565b50602082015181600101555050610a45565b5f600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600a5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061075f57607f821691505b6020821081036107725761077161071b565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026107d47fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610799565b6107de8683610799565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f61082261081d610818846107f6565b6107ff565b6107f6565b9050919050565b5f819050919050565b61083b83610808565b61084f61084782610829565b8484546107a5565b825550505050565b5f90565b610863610857565b61086e818484610832565b505050565b5b81811015610891576108865f8261085b565b600181019050610874565b5050565b601f8211156108d6576108a781610778565b6108b08461078a565b810160208510156108bf578190505b6108d36108cb8561078a565b830182610873565b50505b505050565b5f82821c905092915050565b5f6108f65f19846008026108db565b1980831691505092915050565b5f61090e83836108e7565b9150826002028217905092915050565b610927826106e4565b67ffffffffffffffff8111156109405761093f6106ee565b5b61094a8254610748565b610955828285610895565b5f60209050601f831160018114610986575f8415610974578287015190505b61097e8582610903565b8655506109e5565b601f19841661099486610778565b5f5b828110156109bb57848901518255600182019150602085019450602081019050610996565b868310156109d857848901516109d4601f8916826108e7565b8355505b6001600288020188555050505b505050505050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610a16826109ed565b9050919050565b610a2681610a0c565b82525050565b5f602082019050610a3f5f830184610a1d565b92915050565b615f0e80610a525f395ff3fe608060405234801561000f575f80fd5b506004361061035b575f3560e01c80638d2c1dcd116101d1578063c87b56dd11610102578063e2d28ca6116100a0578063f087e56c1161007a578063f087e56c14610aef578063f2fde38b14610b1f578063f305760814610b3b578063ff98109914610b595761035b565b8063e2d28ca614610a5f578063e985e9c514610a8f578063ee60077e14610abf5761035b565b8063d7be946f116100dc578063d7be946f146109d7578063d86cfbb0146109f3578063da304e4d14610a11578063ded7222b14610a415761035b565b8063c87b56dd14610959578063d135596814610989578063d5b9221b146109a75761035b565b8063a22cb4651161016f578063aa32dc8f11610149578063aa32dc8f146108c0578063af260ac5146108f0578063b566b9821461090c578063b88d4fde1461093d5761035b565b8063a22cb46514610856578063a43d640414610872578063a919646b146108905761035b565b806395d89b41116101ab57806395d89b41146107ba5780639c28289a146107d85780639c7e5a8f146108085780639ce06762146108385761035b565b80638d2c1dcd146107645780638da5cb5b1461078057806390c3f38f1461079e5761035b565b806342842e0e116102ab5780636352211e11610249578063715018a611610223578063715018a6146106ca57806377bfc420146106d45780637a4543a51461070457806383b81ebd146107345761035b565b80636352211e1461063a5780636a6278421461066a57806370a082311461069a5761035b565b806351f833611161028557806351f833611461058c578063571b5af2146105bc5780635825432d146105da5780636211724b1461060a5761035b565b806342842e0e146105245780634a39b65b146105405780634f6ccce71461055c5761035b565b8063104a3b01116103185780632aa778b2116102f25780632aa778b21461049d5780632f745c59146104b95780633b06b91a146104e95780633c46fb7f146105055761035b565b8063104a3b011461044557806318160ddd1461046357806323b872dd146104815761035b565b806301ffc9a71461035f57806303f765761461038f57806304787ca2146103bf57806306fdde03146103db578063081812fc146103f9578063095ea7b314610429575b5f80fd5b6103796004803603810190610374919061407b565b610b89565b60405161038691906140c0565b60405180910390f35b6103a960048036038101906103a4919061410c565b610c02565b6040516103b69190614146565b60405180910390f35b6103d960048036038101906103d4919061429b565b610c17565b005b6103e3610c69565b6040516103f09190614342565b60405180910390f35b610413600480360381019061040e919061410c565b610cf8565b60405161042091906143a1565b60405180910390f35b610443600480360381019061043e91906143e4565b610d13565b005b61044d610d29565b60405161045a9190614146565b60405180910390f35b61046b610d2f565b6040516104789190614146565b60405180910390f35b61049b60048036038101906104969190614422565b610d3b565b005b6104b760048036038101906104b29190614472565b610e3a565b005b6104d360048036038101906104ce91906143e4565b61101b565b6040516104e09190614146565b60405180910390f35b61050360048036038101906104fe91906144b0565b6110bf565b005b61050d6111e8565b60405161051b9291906144ee565b60405180910390f35b61053e60048036038101906105399190614422565b6111f8565b005b61055a6004803603810190610555919061410c565b611217565b005b6105766004803603810190610571919061410c565b611229565b6040516105839190614146565b60405180910390f35b6105a660048036038101906105a1919061410c565b61129b565b6040516105b39190614146565b60405180910390f35b6105c461131c565b6040516105d19190614146565b60405180910390f35b6105f460048036038101906105ef91906144b0565b611322565b6040516106019190614146565b60405180910390f35b610624600480360381019061061f919061410c565b61142a565b604051610631919061452d565b60405180910390f35b610654600480360381019061064f919061410c565b61143f565b60405161066191906143a1565b60405180910390f35b610684600480360381019061067f9190614546565b611450565b6040516106919190614146565b60405180910390f35b6106b460048036038101906106af9190614546565b61152e565b6040516106c19190614146565b60405180910390f35b6106d26115e4565b005b6106ee60048036038101906106e9919061410c565b6115f7565b6040516106fb919061452d565b60405180910390f35b61071e6004803603810190610719919061410c565b61160c565b60405161072b919061452d565b60405180910390f35b61074e6004803603810190610749919061410c565b611621565b60405161075b9190614146565b60405180910390f35b61077e60048036038101906107799190614472565b611636565b005b6107886116ea565b60405161079591906143a1565b60405180910390f35b6107b860048036038101906107b3919061429b565b611712565b005b6107c26117a4565b6040516107cf9190614342565b60405180910390f35b6107f260048036038101906107ed919061410c565b611834565b6040516107ff9190614342565b60405180910390f35b610822600480360381019061081d919061410c565b6118b2565b60405161082f91906143a1565b60405180910390f35b6108406118e2565b60405161084d9190614146565b60405180910390f35b610870600480360381019061086b919061459b565b6118e8565b005b61087a6118fe565b604051610887919061452d565b60405180910390f35b6108aa60048036038101906108a591906144b0565b611904565b6040516108b79190614146565b60405180910390f35b6108da60048036038101906108d59190614546565b611924565b6040516108e791906140c0565b60405180910390f35b61090a60048036038101906109059190614603565b611a1b565b005b6109266004803603810190610921919061410c565b611b5e565b604051610934929190614641565b60405180910390f35b6109576004803603810190610952919061470d565b611c13565b005b610973600480360381019061096e919061410c565b611c30565b6040516109809190614342565b60405180910390f35b610991611cb6565b60405161099e9190614146565b60405180910390f35b6109c160048036038101906109bc9190614546565b611ccf565b6040516109ce91906140c0565b60405180910390f35b6109f160048036038101906109ec9190614603565b611cec565b005b6109fb611e2f565b604051610a08919061452d565b60405180910390f35b610a2b6004803603810190610a26919061410c565b611e35565b604051610a389190614146565b60405180910390f35b610a49611eb6565b604051610a569190614342565b60405180910390f35b610a796004803603810190610a74919061410c565b611f46565b604051610a86919061452d565b60405180910390f35b610aa96004803603810190610aa4919061478d565b611f5b565b604051610ab691906140c0565b60405180910390f35b610ad96004803603810190610ad4919061410c565b611fe9565b604051610ae69190614342565b60405180910390f35b610b096004803603810190610b04919061410c565b612067565b604051610b169190614342565b60405180910390f35b610b396004803603810190610b349190614546565b612172565b005b610b436121f6565b604051610b509190614146565b60405180910390f35b610b736004803603810190610b6e919061410c565b61220f565b604051610b809190614146565b60405180910390f35b5f7f780e9d63000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610bfb5750610bfa82612271565b5b9050919050565b6012602052805f5260405f205f915090505481565b610c1f612352565b80600b9081610c2e91906149c5565b507f9b9cd1b6d10196260eb379c94feef6204d1e0244b38efe9d31be6ad4055f22ea81604051610c5e9190614342565b60405180910390a150565b60605f8054610c77906147f8565b80601f0160208091040260200160405190810160405280929190818152602001828054610ca3906147f8565b8015610cee5780601f10610cc557610100808354040283529160200191610cee565b820191905f5260205f20905b815481529060010190602001808311610cd157829003601f168201915b5050505050905090565b5f610d02826123d9565b50610d0c8261245f565b9050919050565b610d258282610d20612498565b61249f565b5050565b600f5481565b5f600880549050905090565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610dab575f6040517f64a0ae92000000000000000000000000000000000000000000000000000000008152600401610da291906143a1565b60405180910390fd5b5f610dbe8383610db9612498565b6124b1565b90508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610e34578382826040517f64283d7b000000000000000000000000000000000000000000000000000000008152600401610e2b93929190614a94565b60405180910390fd5b50505050565b610e4333611924565b610e82576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e7990614b13565b60405180910390fd5b610e8b826125cb565b610eca576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ec190614b7b565b60405180910390fd5b5f60195f8481526020019081526020015f205490505f601c8281548110610ef457610ef3614b99565b5b905f5260205f2090600202016001015490505f8382610f139190614bf3565b90505f8390505f600185610f279190614bf3565b90505b601c80549050811015610f7b57601c8181548110610f4b57610f4a614b99565b5b905f5260205f209060020201600101548310610f6957809150610f6e565b610f7b565b8080600101915050610f2a565b50838114610ff3578060195f8881526020019081526020015f2081905550857f56f46d3f19f6cbee6fd2120d9a27053b85f976606730b6c2ce520d477fae4292601c8381548110610fcf57610fce614b99565b5b905f5260205f2090600202015f01604051610fea9190614ca7565b60405180910390a25b8460125f8881526020019081526020015f2081905550611013868661260b565b505050505050565b5f6110258361152e565b821061106a5782826040517fa57d13dc000000000000000000000000000000000000000000000000000000008152600401611061929190614cc7565b60405180910390fd5b60065f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8381526020019081526020015f2054905092915050565b6110c833611924565b611107576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110fe90614b13565b60405180910390fd5b611110826125cb565b61114f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161114690614b7b565b60405180910390fd5b4260185f8481526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508073ffffffffffffffffffffffffffffffffffffffff16827f6bb00a74356926431cf8539d504f450101b091306b1584e0425520becd59eef660405160405180910390a35050565b5f80600e54600f54915091509091565b61121283838360405180602001604052805f815250611c13565b505050565b61121f612352565b80600d8190555050565b5f611232610d2f565b8210611277575f826040517fa57d13dc00000000000000000000000000000000000000000000000000000000815260040161126e929190614cc7565b60405180910390fd5b6008828154811061128b5761128a614b99565b5b905f5260205f2001549050919050565b5f6112a5826125cb565b6112e4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112db90614b7b565b60405180910390fd5b5f60135f8481526020019081526020015f205413611302575f611315565b60135f8381526020019081526020015f20545b9050919050565b600d5481565b5f61132c836125cb565b61136b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161136290614b7b565b60405180910390fd5b5f60185f8581526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490505f601a5f8681526020019081526020015f205482116113eb57601a5f8681526020019081526020015f20546113ed565b815b90505f6201518082426114009190614cee565b61140a9190614d4e565b9050600d54811161141b578061141f565b600d545b935050505092915050565b6016602052805f5260405f205f915090505481565b5f611449826123d9565b9050919050565b5f61145a33611924565b611499576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161149090614b13565b60405180910390fd5b600c5f8154809291906114ab90614d7e565b91905055505f600c5490506114c08382612661565b42601a5f8381526020019081526020015f208190555082601b5f8381526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080915050919050565b5f8073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361159f575f6040517f89c62b6400000000000000000000000000000000000000000000000000000000815260040161159691906143a1565b60405180910390fd5b60035f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6115ec612352565b6115f55f61267e565b565b6013602052805f5260405f205f915090505481565b6014602052805f5260405f205f915090505481565b601a602052805f5260405f205f915090505481565b61163f33611924565b61167e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161167590614b13565b60405180910390fd5b611687826125cb565b6116c6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116bd90614b7b565b60405180910390fd5b8060125f8481526020019081526020015f20819055506116e6828261260b565b5050565b5f600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61171b33611924565b61175a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161175190614b13565b60405180910390fd5b80601d908161176991906149c5565b507fdbdc84bdf4319ffa157f81d25dd54211090e37ca6a9d0b90e2b8098aaceed135816040516117999190614342565b60405180910390a150565b6060600180546117b3906147f8565b80601f01602080910402602001604051908101604052809291908181526020018280546117df906147f8565b801561182a5780601f106118015761010080835404028352916020019161182a565b820191905f5260205f20905b81548152906001019060200180831161180d57829003601f168201915b5050505050905090565b606061183f826125cb565b61187e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161187590614b7b565b60405180910390fd5b5f60155f8481526020019081526020015f205490506118aa5f82136118a3575f6118a5565b815b612741565b915050919050565b601b602052805f5260405f205f915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600e5481565b6118fa6118f3612498565b8383612854565b5050565b60105481565b6018602052815f5260405f20602052805f5260405f205f91509150505481565b5f61192d6116ea565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036119685760019050611a16565b8173ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156119d057506040513d601f19601f820116820180604052508101906119cd9190614dd9565b60015b6119dc575f9050611a16565b6119e46116ea565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16149150505b919050565b611a2433611924565b611a63576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a5a90614b13565b60405180910390fd5b611a6c826125cb565b611aab576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aa290614b7b565b60405180910390fd5b60155f8381526020019081526020015f205460165f8481526020019081526020015f20819055508060155f8481526020019081526020015f205f828254611af29190614e04565b925050819055508060105f828254611b0a9190614e04565b92505081905550817fefb252863635c145e0252786c146fb5c39b615ac134323d673d667b2defff17460155f8581526020019081526020015f2054604051611b52919061452d565b60405180910390a25050565b601c8181548110611b6d575f80fd5b905f5260205f2090600202015f91509050805f018054611b8c906147f8565b80601f0160208091040260200160405190810160405280929190818152602001828054611bb8906147f8565b8015611c035780601f10611bda57610100808354040283529160200191611c03565b820191905f5260205f20905b815481529060010190602001808311611be657829003601f168201915b5050505050908060010154905082565b611c1e848484610d3b565b611c2a848484846129bd565b50505050565b6060611c3b826125cb565b611c7a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c7190614eb5565b60405180910390fd5b5f611c8c611c8784612b6f565b612bd0565b905080604051602001611c9f9190614f57565b604051602081830303815290604052915050919050565b5f8060115413611cc6575f611cca565b6011545b905090565b6017602052805f5260405f205f915054906101000a900460ff1681565b611cf533611924565b611d34576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d2b90614b13565b60405180910390fd5b611d3d826125cb565b611d7c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d7390614b7b565b60405180910390fd5b60135f8381526020019081526020015f205460145f8481526020019081526020015f20819055508060135f8481526020019081526020015f205f828254611dc39190614e04565b925050819055508060115f828254611ddb9190614e04565b92505081905550817f675249f8973c9a0de9197369b83f1c54aa44cddc433d6981a84f7f7fd8b280cb60135f8581526020019081526020015f2054604051611e23919061452d565b60405180910390a25050565b60115481565b5f611e3f826125cb565b611e7e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e7590614b7b565b60405180910390fd5b5f60155f8481526020019081526020015f205413611e9c575f611eaf565b60155f8381526020019081526020015f20545b9050919050565b6060600b8054611ec5906147f8565b80601f0160208091040260200160405190810160405280929190818152602001828054611ef1906147f8565b8015611f3c5780601f10611f1357610100808354040283529160200191611f3c565b820191905f5260205f20905b815481529060010190602001808311611f1f57829003601f168201915b5050505050905090565b6015602052805f5260405f205f915090505481565b5f60055f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16905092915050565b6060611ff4826125cb565b612033576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161202a90614b7b565b60405180910390fd5b5f60135f8481526020019081526020015f2054905061205f5f8213612058575f61205a565b815b612741565b915050919050565b6060612072826125cb565b6120b1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120a890614b7b565b60405180910390fd5b601c60195f8481526020019081526020015f2054815481106120d6576120d5614b99565b5b905f5260205f2090600202015f0180546120ef906147f8565b80601f016020809104026020016040519081016040528092919081815260200182805461211b906147f8565b80156121665780601f1061213d57610100808354040283529160200191612166565b820191905f5260205f20905b81548152906001019060200180831161214957829003601f168201915b50505050509050919050565b61217a612352565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036121ea575f6040517f1e4fbdf70000000000000000000000000000000000000000000000000000000081526004016121e191906143a1565b60405180910390fd5b6121f38161267e565b50565b5f8060105413612206575f61220a565b6010545b905090565b5f612219826125cb565b612258576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161224f90614b7b565b60405180910390fd5b60125f8381526020019081526020015f20549050919050565b5f7f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061233b57507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b8061234b575061234a82612d3d565b5b9050919050565b61235a612498565b73ffffffffffffffffffffffffffffffffffffffff166123786116ea565b73ffffffffffffffffffffffffffffffffffffffff16146123d75761239b612498565b6040517f118cdaa70000000000000000000000000000000000000000000000000000000081526004016123ce91906143a1565b60405180910390fd5b565b5f806123e483612da6565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361245657826040517f7e27328900000000000000000000000000000000000000000000000000000000815260040161244d9190614146565b60405180910390fd5b80915050919050565b5f60045f8381526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b5f33905090565b6124ac8383836001612ddf565b505050565b5f806124be858585612f9e565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603612501576124fc846131a9565b612540565b8473ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461253f5761253e81856131ed565b5b5b5f73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16036125815761257c84613337565b6125c0565b8473ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146125bf576125be85856133f7565b5b5b809150509392505050565b5f8073ffffffffffffffffffffffffffffffffffffffff166125ec83612da6565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b600e5481111561265d5780600e8190555081600f819055507fbe8461c92443fb75ced98eec678372665aefc753b8b7b743ff9d655aee58962d82826040516126549291906144ee565b60405180910390a15b5050565b61267a828260405180602001604052805f81525061347b565b5050565b5f600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600a5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60605f808312612751578261275c565b8261275b90614f78565b5b90505f620f42408261276e9190614d4e565b90505f612710620f4240846127839190614fbe565b61278d9190614d4e565b90505f61279983613496565b90505f6127a583613496565b9050600a8310156127d357806040516020016127c19190615038565b60405160208183030381529060405290505b5f87126127ee5760405180602001604052805f815250612825565b6040518060400160405280600181526020017f2d000000000000000000000000000000000000000000000000000000000000008152505b8282604051602001612839939291906150a3565b60405160208183030381529060405295505050505050919050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036128c457816040517f5b08ba180000000000000000000000000000000000000000000000000000000081526004016128bb91906143a1565b60405180910390fd5b8060055f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516129b091906140c0565b60405180910390a3505050565b5f8373ffffffffffffffffffffffffffffffffffffffff163b1115612b69578273ffffffffffffffffffffffffffffffffffffffff1663150b7a02612a00612498565b8685856040518563ffffffff1660e01b8152600401612a229493929190615130565b6020604051808303815f875af1925050508015612a5d57506040513d601f19601f82011682018060405250810190612a5a919061518e565b60015b612ade573d805f8114612a8b576040519150601f19603f3d011682016040523d82523d5f602084013e612a90565b606091505b505f815103612ad657836040517f64a0ae92000000000000000000000000000000000000000000000000000000008152600401612acd91906143a1565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614612b6757836040517f64a0ae92000000000000000000000000000000000000000000000000000000008152600401612b5e91906143a1565b60405180910390fd5b505b50505050565b60605f612b7b83612067565b90505f612b888483613560565b90505f612b958584613626565b9050612ba085613496565b82600b83604051602001612bb794939291906153f5565b6040516020818303038152906040529350505050919050565b60605f825103612bf05760405180602001604052805f8152509050612d38565b5f604051806060016040528060408152602001615e996040913990505f600360028551612c1d9190614bf3565b612c279190614d4e565b6004612c33919061548a565b67ffffffffffffffff811115612c4c57612c4b614177565b5b6040519080825280601f01601f191660200182016040528015612c7e5781602001600182028036833780820191505090505b509050600182016020820185865187016020810180515f82525b82841015612cf3576003840193508351603f8160121c168701518653600186019550603f81600c1c168701518653600186019550603f8160061c168701518653600186019550603f8116870151865360018601955050612c98565b80825260038a510660018114612d105760028114612d2357612d2b565b603d6001870353603d6002870353612d2b565b603d60018703535b5050505050505080925050505b919050565b5f7f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f60025f8381526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b8080612e1757505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15612f49575f612e26846123d9565b90505f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015612e9057508273ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614155b8015612ea35750612ea18184611f5b565b155b15612ee557826040517fa9fbf51f000000000000000000000000000000000000000000000000000000008152600401612edc91906143a1565b60405180910390fd5b8115612f4757838573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45b505b8360045f8581526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505050565b5f80612fa984612da6565b90505f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614612fea57612fe9818486613704565b5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614613075576130295f855f80612ddf565b600160035f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825403925050819055505b5f73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16146130f457600160035f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055505b8460025f8681526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550838573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4809150509392505050565b60088054905060095f8381526020019081526020015f2081905550600881908060018154018082558091505060019003905f5260205f20015f909190919091505550565b5f6131f78361152e565b90505f60075f8481526020019081526020015f205490508181146132ce575f60065f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8481526020019081526020015f205490508060065f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8481526020019081526020015f20819055508160075f8381526020019081526020015f2081905550505b60075f8481526020019081526020015f205f905560065f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8381526020019081526020015f205f905550505050565b5f600160088054905061334a9190614cee565b90505f60095f8481526020019081526020015f205490505f6008838154811061337657613375614b99565b5b905f5260205f2001549050806008838154811061339657613395614b99565b5b905f5260205f2001819055508160095f8381526020019081526020015f208190555060095f8581526020019081526020015f205f905560088054806133de576133dd6154cb565b5b600190038181905f5260205f20015f9055905550505050565b5f60016134038461152e565b61340d9190614cee565b90508160065f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8381526020019081526020015f20819055508060075f8481526020019081526020015f2081905550505050565b61348583836137c7565b6134915f8484846129bd565b505050565b60605f60016134a4846138ba565b0190505f8167ffffffffffffffff8111156134c2576134c1614177565b5b6040519080825280601f01601f1916602001820160405280156134f45781602001600182028036833780820191505090505b5090505f82602001820190505b600115613555578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a858161354a57613549614d21565b5b0494505f8503613501575b819350505050919050565b606061356b83611fe9565b61357484611834565b8361358f601a5f8881526020019081526020015f2054613a0b565b6135e0601b5f8981526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166014613d17565b6135eb600e54613496565b6135f6600f54613496565b601d60405160200161360f989796959493929190615792565b604051602081830303815290604052905092915050565b606061363183611fe9565b61363a84611834565b83613655601a5f8881526020019081526020015f2054613a0b565b6136a6601b5f8981526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166014613d17565b6136c060125f8a81526020019081526020015f2054613496565b6136cb600e54613496565b6136d6600f54613496565b6040516020016136ed989796959493929190615ca6565b604051602081830303815290604052905092915050565b61370f838383613f55565b6137c2575f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361378357806040517f7e27328900000000000000000000000000000000000000000000000000000000815260040161377a9190614146565b60405180910390fd5b81816040517f177e802f0000000000000000000000000000000000000000000000000000000081526004016137b9929190614cc7565b60405180910390fd5b505050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603613837575f6040517f64a0ae9200000000000000000000000000000000000000000000000000000000815260040161382e91906143a1565b60405180910390fd5b5f61384383835f6124b1565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146138b5575f6040517f73c6ac6e0000000000000000000000000000000000000000000000000000000081526004016138ac91906143a1565b60405180910390fd5b505050565b5f805f90507a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310613916577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000838161390c5761390b614d21565b5b0492506040810190505b6d04ee2d6d415b85acef81000000008310613953576d04ee2d6d415b85acef8100000000838161394957613948614d21565b5b0492506020810190505b662386f26fc10000831061398257662386f26fc10000838161397857613977614d21565b5b0492506010810190505b6305f5e10083106139ab576305f5e10083816139a1576139a0614d21565b5b0492506008810190505b61271083106139d05761271083816139c6576139c5614d21565b5b0492506004810190505b606483106139f357606483816139e9576139e8614d21565b5b0492506002810190505b600a8310613a02576001810190505b80915050919050565b60605f6201518090505f6301e1338090505f6301e2850090505f6107b290505f8190505f805b858910613acf575f600484613a469190614fbe565b148015613a5f57505f606484613a5c9190614fbe565b14155b80613a7657505f61019084613a749190614fbe565b145b15613aad57848910613aa3578489613a8e9190614cee565b98508280613a9b90614d7e565b935050613aa8565b613acf565b613aca565b8589613ab99190614cee565b98508280613ac690614d7e565b9350505b613a31565b5f604051806101800160405280601f8152602001601c8152602001601f8152602001601e8152602001601f8152602001601e8152602001601f8152602001601f8152602001601e8152602001601f8152602001601e8152602001601f81525090505f600485613b3e9190614fbe565b148015613b5757505f606485613b549190614fbe565b14155b80613b6e57505f61019085613b6c9190614fbe565b145b15613b9357601d816001600c8110613b8957613b88614b99565b5b6020020181815250505b5f92505b600c831015613bfb575f8184600c8110613bb457613bb3614b99565b5b602002015190508881613bc7919061548a565b8b1015613bd45750613bfb565b8881613be0919061548a565b8b613beb9190614cee565b9a50508280600101935050613b97565b6001888b613c099190614d4e565b613c139190614bf3565b9150600183613c229190614bf3565b9250613c2d84613496565b600a8410613c495760405180602001604052805f815250613c80565b6040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152505b613c8985613496565b600a8510613ca55760405180602001604052805f815250613cdc565b6040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152505b613ce586613496565b604051602001613cf9959493929190615e11565b60405160208183030381529060405298505050505050505050919050565b60605f8390505f6002846002613d2d919061548a565b613d379190614bf3565b67ffffffffffffffff811115613d5057613d4f614177565b5b6040519080825280601f01601f191660200182016040528015613d825781602001600182028036833780820191505090505b5090507f3000000000000000000000000000000000000000000000000000000000000000815f81518110613db957613db8614b99565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053507f780000000000000000000000000000000000000000000000000000000000000081600181518110613e1c57613e1b614b99565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a9053505f6001856002613e5a919061548a565b613e649190614bf3565b90505b6001811115613f03577f3031323334353637383961626364656600000000000000000000000000000000600f841660108110613ea657613ea5614b99565b5b1a60f81b828281518110613ebd57613ebc614b99565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690815f1a905350600483901c925080613efc90615e71565b9050613e67565b505f8214613f4a5784846040517fe22e27eb000000000000000000000000000000000000000000000000000000008152600401613f419291906144ee565b60405180910390fd5b809250505092915050565b5f8073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561400c57508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480613fcd5750613fcc8484611f5b565b5b8061400b57508273ffffffffffffffffffffffffffffffffffffffff16613ff38361245f565b73ffffffffffffffffffffffffffffffffffffffff16145b5b90509392505050565b5f604051905090565b5f80fd5b5f80fd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61405a81614026565b8114614064575f80fd5b50565b5f8135905061407581614051565b92915050565b5f602082840312156140905761408f61401e565b5b5f61409d84828501614067565b91505092915050565b5f8115159050919050565b6140ba816140a6565b82525050565b5f6020820190506140d35f8301846140b1565b92915050565b5f819050919050565b6140eb816140d9565b81146140f5575f80fd5b50565b5f81359050614106816140e2565b92915050565b5f602082840312156141215761412061401e565b5b5f61412e848285016140f8565b91505092915050565b614140816140d9565b82525050565b5f6020820190506141595f830184614137565b92915050565b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6141ad82614167565b810181811067ffffffffffffffff821117156141cc576141cb614177565b5b80604052505050565b5f6141de614015565b90506141ea82826141a4565b919050565b5f67ffffffffffffffff82111561420957614208614177565b5b61421282614167565b9050602081019050919050565b828183375f83830152505050565b5f61423f61423a846141ef565b6141d5565b90508281526020810184848401111561425b5761425a614163565b5b61426684828561421f565b509392505050565b5f82601f8301126142825761428161415f565b5b813561429284826020860161422d565b91505092915050565b5f602082840312156142b0576142af61401e565b5b5f82013567ffffffffffffffff8111156142cd576142cc614022565b5b6142d98482850161426e565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f614314826142e2565b61431e81856142ec565b935061432e8185602086016142fc565b61433781614167565b840191505092915050565b5f6020820190508181035f83015261435a818461430a565b905092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61438b82614362565b9050919050565b61439b81614381565b82525050565b5f6020820190506143b45f830184614392565b92915050565b6143c381614381565b81146143cd575f80fd5b50565b5f813590506143de816143ba565b92915050565b5f80604083850312156143fa576143f961401e565b5b5f614407858286016143d0565b9250506020614418858286016140f8565b9150509250929050565b5f805f606084860312156144395761443861401e565b5b5f614446868287016143d0565b9350506020614457868287016143d0565b9250506040614468868287016140f8565b9150509250925092565b5f80604083850312156144885761448761401e565b5b5f614495858286016140f8565b92505060206144a6858286016140f8565b9150509250929050565b5f80604083850312156144c6576144c561401e565b5b5f6144d3858286016140f8565b92505060206144e4858286016143d0565b9150509250929050565b5f6040820190506145015f830185614137565b61450e6020830184614137565b9392505050565b5f819050919050565b61452781614515565b82525050565b5f6020820190506145405f83018461451e565b92915050565b5f6020828403121561455b5761455a61401e565b5b5f614568848285016143d0565b91505092915050565b61457a816140a6565b8114614584575f80fd5b50565b5f8135905061459581614571565b92915050565b5f80604083850312156145b1576145b061401e565b5b5f6145be858286016143d0565b92505060206145cf85828601614587565b9150509250929050565b6145e281614515565b81146145ec575f80fd5b50565b5f813590506145fd816145d9565b92915050565b5f80604083850312156146195761461861401e565b5b5f614626858286016140f8565b9250506020614637858286016145ef565b9150509250929050565b5f6040820190508181035f830152614659818561430a565b90506146686020830184614137565b9392505050565b5f67ffffffffffffffff82111561468957614688614177565b5b61469282614167565b9050602081019050919050565b5f6146b16146ac8461466f565b6141d5565b9050828152602081018484840111156146cd576146cc614163565b5b6146d884828561421f565b509392505050565b5f82601f8301126146f4576146f361415f565b5b813561470484826020860161469f565b91505092915050565b5f805f80608085870312156147255761472461401e565b5b5f614732878288016143d0565b9450506020614743878288016143d0565b9350506040614754878288016140f8565b925050606085013567ffffffffffffffff81111561477557614774614022565b5b614781878288016146e0565b91505092959194509250565b5f80604083850312156147a3576147a261401e565b5b5f6147b0858286016143d0565b92505060206147c1858286016143d0565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061480f57607f821691505b602082108103614822576148216147cb565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026148847fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82614849565b61488e8683614849565b95508019841693508086168417925050509392505050565b5f819050919050565b5f6148c96148c46148bf846140d9565b6148a6565b6140d9565b9050919050565b5f819050919050565b6148e2836148af565b6148f66148ee826148d0565b848454614855565b825550505050565b5f90565b61490a6148fe565b6149158184846148d9565b505050565b5b818110156149385761492d5f82614902565b60018101905061491b565b5050565b601f82111561497d5761494e81614828565b6149578461483a565b81016020851015614966578190505b61497a6149728561483a565b83018261491a565b50505b505050565b5f82821c905092915050565b5f61499d5f1984600802614982565b1980831691505092915050565b5f6149b5838361498e565b9150826002028217905092915050565b6149ce826142e2565b67ffffffffffffffff8111156149e7576149e6614177565b5b6149f182546147f8565b6149fc82828561493c565b5f60209050601f831160018114614a2d575f8415614a1b578287015190505b614a2585826149aa565b865550614a8c565b601f198416614a3b86614828565b5f5b82811015614a6257848901518255600182019150602085019450602081019050614a3d565b86831015614a7f5784890151614a7b601f89168261498e565b8355505b6001600288020188555050505b505050505050565b5f606082019050614aa75f830186614392565b614ab46020830185614137565b614ac16040830184614392565b949350505050565b7f4e6f7420617574686f72697a65640000000000000000000000000000000000005f82015250565b5f614afd600e836142ec565b9150614b0882614ac9565b602082019050919050565b5f6020820190508181035f830152614b2a81614af1565b9050919050565b7f546f6b656e20646f6573206e6f742065786973740000000000000000000000005f82015250565b5f614b656014836142ec565b9150614b7082614b31565b602082019050919050565b5f6020820190508181035f830152614b9281614b59565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f614bfd826140d9565b9150614c08836140d9565b9250828201905080821115614c2057614c1f614bc6565b5b92915050565b5f8154614c32816147f8565b614c3c81866142ec565b9450600182165f8114614c565760018114614c6c57614c9e565b60ff198316865281151560200286019350614c9e565b614c7585614828565b5f5b83811015614c9657815481890152600182019150602081019050614c77565b808801955050505b50505092915050565b5f6020820190508181035f830152614cbf8184614c26565b905092915050565b5f604082019050614cda5f830185614392565b614ce76020830184614137565b9392505050565b5f614cf8826140d9565b9150614d03836140d9565b9250828203905081811115614d1b57614d1a614bc6565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f614d58826140d9565b9150614d63836140d9565b925082614d7357614d72614d21565b5b828204905092915050565b5f614d88826140d9565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203614dba57614db9614bc6565b5b600182019050919050565b5f81519050614dd3816143ba565b92915050565b5f60208284031215614dee57614ded61401e565b5b5f614dfb84828501614dc5565b91505092915050565b5f614e0e82614515565b9150614e1983614515565b92508282019050828112155f8312168382125f841215161715614e3f57614e3e614bc6565b5b92915050565b7f4552433732314d657461646174613a2055524920717565727920666f72206e6f5f8201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000602082015250565b5f614e9f602f836142ec565b9150614eaa82614e45565b604082019050919050565b5f6020820190508181035f830152614ecc81614e93565b9050919050565b5f81905092915050565b7f646174613a6170706c69636174696f6e2f6a736f6e3b6261736536342c0000005f82015250565b5f614f11601d83614ed3565b9150614f1c82614edd565b601d82019050919050565b5f614f31826142e2565b614f3b8185614ed3565b9350614f4b8185602086016142fc565b80840191505092915050565b5f614f6182614f05565b9150614f6d8284614f27565b915081905092915050565b5f614f8282614515565b91507f80000000000000000000000000000000000000000000000000000000000000008203614fb457614fb3614bc6565b5b815f039050919050565b5f614fc8826140d9565b9150614fd3836140d9565b925082614fe357614fe2614d21565b5b828206905092915050565b7f30000000000000000000000000000000000000000000000000000000000000005f82015250565b5f615022600183614ed3565b915061502d82614fee565b600182019050919050565b5f61504282615016565b915061504e8284614f27565b915081905092915050565b7f2e000000000000000000000000000000000000000000000000000000000000005f82015250565b5f61508d600183614ed3565b915061509882615059565b600182019050919050565b5f6150ae8286614f27565b91506150ba8285614f27565b91506150c582615081565b91506150d18284614f27565b9150819050949350505050565b5f81519050919050565b5f82825260208201905092915050565b5f615102826150de565b61510c81856150e8565b935061511c8185602086016142fc565b61512581614167565b840191505092915050565b5f6080820190506151435f830187614392565b6151506020830186614392565b61515d6040830185614137565b818103606083015261516f81846150f8565b905095945050505050565b5f8151905061518881614051565b92915050565b5f602082840312156151a3576151a261401e565b5b5f6151b08482850161517a565b91505092915050565b7f7b226e616d65223a202243727970746f4c616e64436974697a656e20230000005f82015250565b5f6151ed601d83614ed3565b91506151f8826151b9565b601d82019050919050565b7f222c0000000000000000000000000000000000000000000000000000000000005f82015250565b5f615237600283614ed3565b915061524282615203565b600282019050919050565b7f226465736372697074696f6e223a2022000000000000000000000000000000005f82015250565b5f615281601083614ed3565b915061528c8261524d565b601082019050919050565b7f22696d616765223a2022000000000000000000000000000000000000000000005f82015250565b5f6152cb600a83614ed3565b91506152d682615297565b600a82019050919050565b5f81546152ed816147f8565b6152f78186614ed3565b9450600182165f8114615311576001811461532657615358565b60ff1983168652811515820286019350615358565b61532f85614828565b5f5b8381101561535057815481890152600182019150602081019050615331565b838801955050505b50505092915050565b7f2261747472696275746573223a205b00000000000000000000000000000000005f82015250565b5f615395600f83614ed3565b91506153a082615361565b600f82019050919050565b7f5d7d0000000000000000000000000000000000000000000000000000000000005f82015250565b5f6153df600283614ed3565b91506153ea826153ab565b600282019050919050565b5f6153ff826151e1565b915061540b8287614f27565b91506154168261522b565b915061542182615275565b915061542d8286614f27565b91506154388261522b565b9150615443826152bf565b915061544f82856152e1565b915061545a8261522b565b915061546582615389565b91506154718284614f27565b915061547c826153d3565b915081905095945050505050565b5f615494826140d9565b915061549f836140d9565b92508282026154ad816140d9565b915082820484148315176154c4576154c3614bc6565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b7f56616c6f723a20000000000000000000000000000000000000000000000000005f82015250565b5f61552c600783614ed3565b9150615537826154f8565b600782019050919050565b7f5c6e0000000000000000000000000000000000000000000000000000000000005f82015250565b5f615576600283614ed3565b915061558182615542565b600282019050919050565b7f4372656469743a200000000000000000000000000000000000000000000000005f82015250565b5f6155c0600883614ed3565b91506155cb8261558c565b600882019050919050565b7f4b434c205469746c653a200000000000000000000000000000000000000000005f82015250565b5f61560a600b83614ed3565b9150615615826155d6565b600b82019050919050565b7f446174653a2000000000000000000000000000000000000000000000000000005f82015250565b5f615654600683614ed3565b915061565f82615620565b600682019050919050565b7f4f776e65723a20000000000000000000000000000000000000000000000000005f82015250565b5f61569e600783614ed3565b91506156a98261566a565b600782019050919050565b7f43757272656e744869676865737420566f74653a2000000000000000000000005f82015250565b5f6156e8601583614ed3565b91506156f3826156b4565b601582019050919050565b7f2028546f6b656e49443a200000000000000000000000000000000000000000005f82015250565b5f615732600b83614ed3565b915061573d826156fe565b600b82019050919050565b7f295c6e5c6e0000000000000000000000000000000000000000000000000000005f82015250565b5f61577c600583614ed3565b915061578782615748565b600582019050919050565b5f61579c82615520565b91506157a8828b614f27565b91506157b38261556a565b91506157be826155b4565b91506157ca828a614f27565b91506157d58261556a565b91506157e0826155fe565b91506157ec8289614f27565b91506157f78261556a565b915061580282615648565b915061580e8288614f27565b91506158198261556a565b915061582482615692565b91506158308287614f27565b915061583b8261556a565b9150615846826156dc565b91506158528286614f27565b915061585d82615726565b91506158698285614f27565b915061587482615770565b915061588082846152e1565b91508190509998505050505050505050565b7f7b2274726169745f74797065223a202256616c6f72222c202276616c7565223a5f8201527f2022000000000000000000000000000000000000000000000000000000000000602082015250565b5f6158ec602283614ed3565b91506158f782615892565b602282019050919050565b7f227d2c00000000000000000000000000000000000000000000000000000000005f82015250565b5f615936600383614ed3565b915061594182615902565b600382019050919050565b7f7b2274726169745f74797065223a2022437265646974222c202276616c7565225f8201527f3a20220000000000000000000000000000000000000000000000000000000000602082015250565b5f6159a6602383614ed3565b91506159b18261594c565b602382019050919050565b7f7b2274726169745f74797065223a20224b434c205469746c65222c202276616c5f8201527f7565223a20220000000000000000000000000000000000000000000000000000602082015250565b5f615a16602683614ed3565b9150615a21826159bc565b602682019050919050565b7f7b2274726169745f74797065223a202244617465222c202276616c7565223a205f8201527f2200000000000000000000000000000000000000000000000000000000000000602082015250565b5f615a86602183614ed3565b9150615a9182615a2c565b602182019050919050565b7f7b2274726169745f74797065223a20224f776e6572222c202276616c7565223a5f8201527f2022000000000000000000000000000000000000000000000000000000000000602082015250565b5f615af6602283614ed3565b9150615b0182615a9c565b602282019050919050565b7f7b2274726169745f74797065223a2022566f746573222c202276616c7565223a5f8201527f2022000000000000000000000000000000000000000000000000000000000000602082015250565b5f615b66602283614ed3565b9150615b7182615b0c565b602282019050919050565b7f7b2274726169745f74797065223a20224869676865737420566f7465222c20225f8201527f76616c7565223a20220000000000000000000000000000000000000000000000602082015250565b5f615bd6602983614ed3565b9150615be182615b7c565b602982019050919050565b7f7b2274726169745f74797065223a20224869676865737420566f746520546f6b5f8201527f656e4944222c202276616c7565223a2022000000000000000000000000000000602082015250565b5f615c46603183614ed3565b9150615c5182615bec565b603182019050919050565b7f227d0000000000000000000000000000000000000000000000000000000000005f82015250565b5f615c90600283614ed3565b9150615c9b82615c5c565b600282019050919050565b5f615cb0826158e0565b9150615cbc828b614f27565b9150615cc78261592a565b9150615cd28261599a565b9150615cde828a614f27565b9150615ce98261592a565b9150615cf482615a0a565b9150615d008289614f27565b9150615d0b8261592a565b9150615d1682615a7a565b9150615d228288614f27565b9150615d2d8261592a565b9150615d3882615aea565b9150615d448287614f27565b9150615d4f8261592a565b9150615d5a82615b5a565b9150615d668286614f27565b9150615d718261592a565b9150615d7c82615bca565b9150615d888285614f27565b9150615d938261592a565b9150615d9e82615c3a565b9150615daa8284614f27565b9150615db582615c84565b91508190509998505050505050505050565b7f2d000000000000000000000000000000000000000000000000000000000000005f82015250565b5f615dfb600183614ed3565b9150615e0682615dc7565b600182019050919050565b5f615e1c8288614f27565b9150615e2782615def565b9150615e338287614f27565b9150615e3f8286614f27565b9150615e4a82615def565b9150615e568285614f27565b9150615e628284614f27565b91508190509695505050505050565b5f615e7b826140d9565b91505f8203615e8d57615e8c614bc6565b5b60018203905091905056fe4142434445464748494a4b4c4d4e4f505152535455565758595a6162636465666768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2fa26469706673582212209cd2f0bad367148c131b45f07c1df76b6dbafd97e83baaa4ebf46054d8ffbe0064736f6c634300081a003357656c636f6d6520746f2054686520506c616e65742052657075626c6963206f662043727970746f204c616e642c20746865206c616e64206f662043656e7472616c6c6573732c205768657265207468652046726565646f6d20616e6420457465726e69747920436f65786973742e2054686520506c616e65742052657075626c696320696e69746961746976652061696d7320746f2065737461626c6973682061207375737461696e61626c652c20666169722077617920666f7220616c6c2070656f706c6520746f20616363756d756c6174652c2070726573657276652c20616e6420696e68657269742070726f706572747920776974686f75742065787465726e616c20696e746572666572656e63652c20736f207468617420616c6c20696e646976696475616c732063616e20686176652074686520706f73736962696c697479206f66206661697220636f6e74696e756174696f6e2e68747470733a2f2f667563687369612d62726f61642d666c616d696e676f2d3135372e6d7970696e6174612e636c6f75642f697066732f516d4e5a557142614c32413634505369784b724a78625770347348474662334d4d4b5577684e4c74455a6a707752