608060405261dead60075f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555034801562000052575f80fd5b506040518060400160405280600e81526020017f537461726b4e657420546f6b656e0000000000000000000000000000000000008152506040518060400160405280600481526020017f5354524b000000000000000000000000000000000000000000000000000000008152508160039081620000d0919062001028565b508060049081620000e2919062001028565b5050505f620000f662000a3f60201b60201c565b90508060055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3505f8060384603620001d2577310ed43c718714eb63d5aa57b78b54704e256024e915073407993575c91ce7643a4d4ccacc9a98c36ee1bbe90506200025f565b606146036200020f5773d99d1c33f9fc3444f8101754abc46c52416550d19150735e5b9be5fd939c578abe5800a90c566eeeba44a590506200025e565b60014614806200021f5750600546145b156200025957737a250d5630b4cf539739df2c5dacb4c659f2488d91507371b5759d73262fbb223956913ecf4ecc5105764190506200025d565b5f80fd5b5b5b5f8290508060065f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620002f73060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff62000a4660201b60201c565b5f6009819055505f600a819055505f600b819055505f600c819055506064600f81905550600b546009546200032d919062001139565b600d81905550600c54600a5462000345919062001139565b600e819055505f60108190555073f45f782c7bd9c4355c844406d5b058f50dac6752601160016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160185f6101000a81548160ff021916908315150217905550600160175f620003d662000c1160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160175f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160175f61dead73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160175f601160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160175f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160155f6101000a81548160ff021916908315150217905550600160145f620005cc62000c1160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160145f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160145f61dead73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160145f601160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160145f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160085f620007a862000c1160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160085f61dead73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160085f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160085f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550620009476200090c62000c1160201b60201c565b6200091c62000c3960201b60201c565b600a6200092a9190620012cf565b633b9aca006200093b91906200131f565b62000c4160201b60201c565b6113886200095a62000db160201b60201c565b62000966919062001396565b6012819055506001600f6200098062000db160201b60201c565b6200098c91906200131f565b62000998919062001396565b6019819055506001600f620009b262000db160201b60201c565b620009be91906200131f565b620009ca919062001396565b601a819055506001600f620009e462000db160201b60201c565b620009f091906200131f565b620009fc919062001396565b6016819055505f601360026101000a81548160ff0219169083151502179055505f601360016101000a81548160ff0219169083151502179055505050506200159f565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160362000ab7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000aae9062001451565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000b28576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000b1f90620014e5565b60405180910390fd5b8060015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405162000c04919062001516565b60405180910390a3505050565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b5f6009905090565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000cb2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000ca9906200157f565b60405180910390fd5b62000cc55f838362000dba60201b60201c565b8060025f82825462000cd8919062001139565b92505081905550805f808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825462000d2c919062001139565b925050819055508173ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405162000d92919062001516565b60405180910390a362000dad5f838362000dbf60201b60201c565b5050565b5f600254905090565b505050565b505050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168062000e4057607f821691505b60208210810362000e565762000e5562000dfb565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f6008830262000eba7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000e7d565b62000ec6868362000e7d565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f62000f1062000f0a62000f048462000ede565b62000ee7565b62000ede565b9050919050565b5f819050919050565b62000f2b8362000ef0565b62000f4362000f3a8262000f17565b84845462000e89565b825550505050565b5f90565b62000f5962000f4b565b62000f6681848462000f20565b505050565b5b8181101562000f8d5762000f815f8262000f4f565b60018101905062000f6c565b5050565b601f82111562000fdc5762000fa68162000e5c565b62000fb18462000e6e565b8101602085101562000fc1578190505b62000fd962000fd08562000e6e565b83018262000f6b565b50505b505050565b5f82821c905092915050565b5f62000ffe5f198460080262000fe1565b1980831691505092915050565b5f62001018838362000fed565b9150826002028217905092915050565b620010338262000dc4565b67ffffffffffffffff8111156200104f576200104e62000dce565b5b6200105b825462000e28565b6200106882828562000f91565b5f60209050601f8311600181146200109e575f841562001089578287015190505b6200109585826200100b565b86555062001104565b601f198416620010ae8662000e5c565b5f5b82811015620010d757848901518255600182019150602085019450602081019050620010b0565b86831015620010f75784890151620010f3601f89168262000fed565b8355505b6001600288020188555050505b505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f620011458262000ede565b9150620011528362000ede565b92508282019050808211156200116d576200116c6200110c565b5b92915050565b5f8160011c9050919050565b5f808291508390505b6001851115620011d057808604811115620011a857620011a76200110c565b5b6001851615620011b85780820291505b8081029050620011c88562001173565b945062001188565b94509492505050565b5f82620011ea5760019050620012bc565b81620011f9575f9050620012bc565b81600181146200121257600281146200121d5762001253565b6001915050620012bc565b60ff8411156200123257620012316200110c565b5b8360020a9150848211156200124c576200124b6200110c565b5b50620012bc565b5060208310610133831016604e8410600b84101617156200128d5782820a9050838111156200128757620012866200110c565b5b620012bc565b6200129c84848460016200117f565b92509050818404811115620012b657620012b56200110c565b5b81810290505b9392505050565b5f60ff82169050919050565b5f620012db8262000ede565b9150620012e883620012c3565b9250620013177fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484620011d9565b905092915050565b5f6200132b8262000ede565b9150620013388362000ede565b9250828202620013488162000ede565b915082820484148315176200136257620013616200110c565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f620013a28262000ede565b9150620013af8362000ede565b925082620013c257620013c162001369565b5b828204905092915050565b5f82825260208201905092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f62001439602483620013cd565b91506200144682620013dd565b604082019050919050565b5f6020820190508181035f8301526200146a816200142b565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f620014cd602283620013cd565b9150620014da8262001471565b604082019050919050565b5f6020820190508181035f830152620014fe81620014bf565b9050919050565b620015108162000ede565b82525050565b5f6020820190506200152b5f83018462001505565b92915050565b7f45524332303a206d696e7420746f20746865207a65726f2061646472657373005f82015250565b5f62001567601f83620013cd565b9150620015748262001531565b602082019050919050565b5f6020820190508181035f830152620015988162001559565b9050919050565b61553e80620015ad5f395ff3fe608060405260043610610280575f3560e01c806366ca9b831161014e578063a8a69b9d116100c0578063dc4c7dbc11610079578063dc4c7dbc14610981578063dd62ed3e146109ab578063e01af92c146109e7578063e2f4560514610a0f578063f2fde38b14610a39578063f9d0831a14610a6157610287565b8063a8a69b9d14610867578063a9059cbb146108a3578063aa4bde28146108df578063bb85c6d114610909578063c024666814610931578063d2fcc0011461095957610287565b80637b3c83b1116101125780637b3c83b11461076f5780638187f516146107995780638da5cb5b146107c157806395d89b41146107eb5780639ffc7ec614610815578063a457c2d71461082b57610287565b806366ca9b831461068d5780636ddd1713146106b5578063702509fd146106df57806370a082311461070957806375f0a8741461074557610287565b80632ce86fbf116101f25780634fbee193116101ab5780634fbee193146105835780635223a0da146105bf57806356a6cabf146105e957806359136fa5146106115780635fc2e5961461063b57806364c98c441461066557610287565b80632ce86fbf14610477578063313ce567146104a157806339509351146104cb57806340c10f191461050757806349bd5a5e1461052f5780634ada218b1461055957610287565b80631694505e116102445780631694505e1461036b57806318160ddd1461039557806321a9d82a146103bf57806323b872dd146103e957806327a14fc2146104255780632ba86bf21461044d57610287565b80630105d0fd1461028b57806302dbd8f8146102b557806306fdde03146102dd57806307980cb914610307578063095ea7b31461032f57610287565b3661028757005b5f80fd5b348015610296575f80fd5b5061029f610a89565b6040516102ac9190613bfe565b60405180910390f35b3480156102c0575f80fd5b506102db60048036038101906102d69190613c45565b610a8f565b005b3480156102e8575f80fd5b506102f1610bd1565b6040516102fe9190613d0d565b60405180910390f35b348015610312575f80fd5b5061032d60048036038101906103289190613d87565b610c61565b005b34801561033a575f80fd5b5061035560048036038101906103509190613db2565b610dc0565b6040516103629190613e0a565b60405180910390f35b348015610376575f80fd5b5061037f610ddd565b60405161038c9190613e7e565b60405180910390f35b3480156103a0575f80fd5b506103a9610e02565b6040516103b69190613bfe565b60405180910390f35b3480156103ca575f80fd5b506103d3610e0b565b6040516103e09190613e0a565b60405180910390f35b3480156103f4575f80fd5b5061040f600480360381019061040a9190613e97565b610e1d565b60405161041c9190613e0a565b60405180910390f35b348015610430575f80fd5b5061044b60048036038101906104469190613ee7565b610f37565b005b348015610458575f80fd5b506104616110a2565b60405161046e9190613e0a565b60405180910390f35b348015610482575f80fd5b5061048b6110b4565b6040516104989190613bfe565b60405180910390f35b3480156104ac575f80fd5b506104b56110ba565b6040516104c29190613f2d565b60405180910390f35b3480156104d6575f80fd5b506104f160048036038101906104ec9190613db2565b6110c2565b6040516104fe9190613e0a565b60405180910390f35b348015610512575f80fd5b5061052d60048036038101906105289190613db2565b611169565b005b34801561053a575f80fd5b5061054361120d565b6040516105509190613f55565b60405180910390f35b348015610564575f80fd5b5061056d611232565b60405161057a9190613e0a565b60405180910390f35b34801561058e575f80fd5b506105a960048036038101906105a49190613d87565b611245565b6040516105b69190613e0a565b60405180910390f35b3480156105ca575f80fd5b506105d3611297565b6040516105e09190613e0a565b60405180910390f35b3480156105f4575f80fd5b5061060f600480360381019061060a9190613f98565b6112a9565b005b34801561061c575f80fd5b506106256113f4565b6040516106329190613bfe565b60405180910390f35b348015610646575f80fd5b5061064f6113fa565b60405161065c9190613bfe565b60405180910390f35b348015610670575f80fd5b5061068b60048036038101906106869190613ee7565b611400565b005b348015610698575f80fd5b506106b360048036038101906106ae9190613c45565b61151e565b005b3480156106c0575f80fd5b506106c9611660565b6040516106d69190613e0a565b60405180910390f35b3480156106ea575f80fd5b506106f3611673565b6040516107009190613bfe565b60405180910390f35b348015610714575f80fd5b5061072f600480360381019061072a9190613d87565b611679565b60405161073c9190613bfe565b60405180910390f35b348015610750575f80fd5b506107596116be565b6040516107669190613f55565b60405180910390f35b34801561077a575f80fd5b506107836116e4565b6040516107909190613bfe565b60405180910390f35b3480156107a4575f80fd5b506107bf60048036038101906107ba9190613d87565b6116ea565b005b3480156107cc575f80fd5b506107d5611812565b6040516107e29190613f55565b60405180910390f35b3480156107f6575f80fd5b506107ff61183a565b60405161080c9190613d0d565b60405180910390f35b348015610820575f80fd5b506108296118ca565b005b348015610836575f80fd5b50610851600480360381019061084c9190613db2565b61197c565b60405161085e9190613e0a565b60405180910390f35b348015610872575f80fd5b5061088d60048036038101906108889190613d87565b611a62565b60405161089a9190613e0a565b60405180910390f35b3480156108ae575f80fd5b506108c960048036038101906108c49190613db2565b611ab4565b6040516108d69190613e0a565b60405180910390f35b3480156108ea575f80fd5b506108f3611ad1565b6040516109009190613bfe565b60405180910390f35b348015610914575f80fd5b5061092f600480360381019061092a9190613d87565b611ad7565b005b34801561093c575f80fd5b5061095760048036038101906109529190613fc3565b611d08565b005b348015610964575f80fd5b5061097f600480360381019061097a9190613fc3565b611ed3565b005b34801561098c575f80fd5b5061099561210c565b6040516109a29190613bfe565b60405180910390f35b3480156109b6575f80fd5b506109d160048036038101906109cc9190614001565b612112565b6040516109de9190613bfe565b60405180910390f35b3480156109f2575f80fd5b50610a0d6004803603810190610a089190613f98565b612194565b005b348015610a1a575f80fd5b50610a2361229c565b604051610a309190613bfe565b60405180910390f35b348015610a44575f80fd5b50610a5f6004803603810190610a5a9190613d87565b6122a2565b005b348015610a6c575f80fd5b50610a876004803603810190610a829190613d87565b612464565b005b60195481565b610a976126cb565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b25576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b1c90614089565b60405180910390fd5b81600a8190555080600c81905550600c54600a54610b4391906140d4565b600e81905550600f54600e541115610b90576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b8790614177565b60405180910390fd5b7f12dd4f8337f0c236c7994706854cca8cd53921c0032cb0fba8cdb797e73f67c6600a54600c54604051610bc5929190614195565b60405180910390a15050565b606060038054610be0906141e9565b80601f0160208091040260200160405190810160405280929190818152602001828054610c0c906141e9565b8015610c575780601f10610c2e57610100808354040283529160200191610c57565b820191905f5260205f20905b815481529060010190602001808311610c3a57829003601f168201915b5050505050905090565b610c696126cb565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610cf7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cee90614089565b60405180910390fd5b601360029054906101000a900460ff1615610d47576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d3e90614263565b60405180910390fd5b6001601360026101000a81548160ff0219169083151502179055506001601360016101000a81548160ff0219169083151502179055508060075f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f610dd3610dcc6126cb565b84846126d2565b6001905092915050565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f600254905090565b60155f9054906101000a900460ff1681565b5f8060015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f610e656126cb565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610f205782811015610f0b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f02906142f1565b60405180910390fd5b610f1f85610f176126cb565b8584036126d2565b5b610f2b858585612895565b60019150509392505050565b610f3f6126cb565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610fcd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fc490614089565b60405180910390fd5b6064610fd76110ba565b600a610fe3919061443e565b610feb610e02565b610ff591906144b5565b610fff91906144b5565b811015611041576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161103890614555565b60405180910390fd5b6110496110ba565b600a611055919061443e565b816110609190614573565b6016819055507f21bc0ea3406acb92d4449ab33befb4ae82f873a22f3b6cf0e466b2710beb59426016546040516110979190613bfe565b60405180910390a150565b60185f9054906101000a900460ff1681565b600a5481565b5f6009905090565b5f61115f6110ce6126cb565b848460015f6110db6126cb565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461115a91906140d4565b6126d2565b6001905092915050565b6111716126cb565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146111ff576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111f690614089565b60405180910390fd5b6112098282613190565b5050565b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601360029054906101000a900460ff1681565b5f60085f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff169050919050565b60115f9054906101000a900460ff1681565b6112b16126cb565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461133f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161133690614089565b60405180910390fd5b60185f9054906101000a900460ff16151581151503611393576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161138a90614624565b60405180910390fd5b8060185f6101000a81548160ff0219169083151502179055507fe81be35e61864c26afd7a4655e99f321378d0aaae1e5af8ee67b658a7460f3cf60185f9054906101000a900460ff166040516113e99190613e0a565b60405180910390a150565b601a5481565b600b5481565b6114086126cb565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611496576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161148d90614089565b60405180910390fd5b600f548111156114db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114d2906146b2565b60405180910390fd5b806010819055507f925fa17eb1bbdac8e18750276099046910212e51b0d15da024f67ce9fb25cc9b6010546040516115139190613bfe565b60405180910390a150565b6115266126cb565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146115b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115ab90614089565b60405180910390fd5b8160098190555080600b81905550600b546009546115d291906140d4565b600d81905550600f54600d54111561161f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161161690614177565b60405180910390fd5b7fccd61cb5df2cb048d1a7af40a431d6f247af01b6cf048f7a3f2aa9d313e2bc50600954600b54604051611654929190614195565b60405180910390a15050565b601360019054906101000a900460ff1681565b60105481565b5f805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b601160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60095481565b6116f26126cb565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611780576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161177790614089565b60405180910390fd5b60115f9054906101000a900460ff16156117cf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117c69061471a565b60405180910390fd5b8060075f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060048054611849906141e9565b80601f0160208091040260200160405190810160405280929190818152602001828054611875906141e9565b80156118c05780601f10611897576101008083540402835291602001916118c0565b820191905f5260205f20905b8154815290600101906020018083116118a357829003601f168201915b5050505050905090565b6118d26126cb565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611960576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161195790614089565b60405180910390fd5b600160115f6101000a81548160ff021916908315150217905550565b5f8060015f6119896126cb565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905082811015611a43576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a3a906147a8565b60405180910390fd5b611a57611a4e6126cb565b858584036126d2565b600191505092915050565b5f60145f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff169050919050565b5f611ac7611ac06126cb565b8484612895565b6001905092915050565b60165481565b611adf6126cb565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611b6d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b6490614089565b60405180910390fd5b601160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611bfd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bf490614836565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611c6b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c62906148c4565b60405180910390fd5b80601160016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507fa964ba5c52d7e7bfcae4fb1ae4db9f211756d0e618e85fac5283b882a39e7a0b601160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051611cfd9190613f55565b60405180910390a150565b611d106126cb565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611d9e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d9590614089565b60405180910390fd5b80151560085f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16151503611e2d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e2490614952565b60405180910390fd5b8060085f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df782604051611ec79190613e0a565b60405180910390a25050565b611edb6126cb565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611f69576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f6090614089565b60405180910390fd5b80151560145f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16151503611ff8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fef906149e0565b60405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612066576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161205d90614a48565b60405180910390fd5b8060145f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f1d9a11e204b58ad56c619c61600e42167624659d218f0143f1f64956b0daae6c826040516121009190613e0a565b60405180910390a25050565b600c5481565b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b61219c6126cb565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461222a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161222190614089565b60405180910390fd5b801515601360019054906101000a900460ff1615150361227f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161227690614ad6565b60405180910390fd5b80601360016101000a81548160ff02191690831515021790555050565b60125481565b6122aa6126cb565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612338576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161232f90614089565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036123a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161239d90614b64565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a38060055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b61246c6126cb565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146124fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124f190614089565b60405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603612568576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161255f90614bf2565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036125ca576125c4473373ffffffffffffffffffffffffffffffffffffffff166132e790919063ffffffff16565b506126c8565b5f8190505f8173ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016126089190613f55565b602060405180830381865afa158015612623573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906126479190614c24565b90508173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff1660e01b8152600401612684929190614c4f565b6020604051808303815f875af11580156126a0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906126c49190614c8a565b5050505b50565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612740576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161273790614d25565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036127ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127a590614db3565b60405180910390fd5b8060015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516128889190613bfe565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612903576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128fa90614e41565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612971576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161296890614ecf565b60405180910390fd5b601360029054906101000a900460ff16806129d2575060085f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b80612a23575060085f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b612a62576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a5990614f37565b60405180910390fd5b5f8103612a7957612a7483835f61339d565b61318b565b60185f9054906101000a900460ff1615612cc55760075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480612b34575060075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b8015612b87575060175f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015612bda575060175f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15612cc45760075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612c7d57601954811115612c78576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c6f90614fc5565b60405180910390fd5b612cc3565b601a54811115612cc2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612cb990614fc5565b60405180910390fd5b5b5b5b5f612ccf30611679565b90505f6012548210159050808015612cf3575060135f9054906101000a900460ff16155b8015612d4b575060075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b8015612d6557505f600e54600d54612d6391906140d4565b115b8015612d7d5750601360019054906101000a900460ff165b15612e4c57600160135f6101000a81548160ff0219169083151502179055505f600e54600d54612dad91906140d4565b90505f600a54600954612dc091906140d4565b90505f600c54600b54612dd391906140d4565b90505f821115612e02575f838387612deb9190614573565b612df591906144b5565b9050612e0081613612565b505b5f811115612e2f575f838287612e189190614573565b612e2291906144b5565b9050612e2d81613938565b505b5f60135f6101000a81548160ff0219169083151502179055505050505b5f60085f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680612ee8575060085f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b80612efe575060135f9054906101000a900460ff165b15612f0b575f9050612fcf565b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1603612f6957600d549050612fce565b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603612fc757600e549050612fcd565b60105490505b5b5b5f81111561300d575f60648286612fe69190614573565b612ff091906144b5565b90508085612ffe9190614fe3565b945061300b87308361339d565b505b60155f9054906101000a900460ff161561317c5760145f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff161580156130bf575060145f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015613118575060075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b1561317b575f61312786611679565b9050601654858261313891906140d4565b1115613179576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161317090615086565b60405180910390fd5b505b5b61318786868661339d565b5050505b505050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036131fe576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016131f5906150ee565b60405180910390fd5b6132095f8383613bdc565b8060025f82825461321a91906140d4565b92505081905550805f808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825461326c91906140d4565b925050819055508173ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516132d09190613bfe565b60405180910390a36132e35f8383613be1565b5050565b5f8147101561332b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161332290615156565b60405180910390fd5b5f8373ffffffffffffffffffffffffffffffffffffffff1683604051613350906151a1565b5f6040518083038185875af1925050503d805f811461338a576040519150601f19603f3d011682016040523d82523d5f602084013e61338f565b606091505b505090508091505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361340b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161340290614e41565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603613479576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161347090614ecf565b60405180910390fd5b613484838383613bdc565b5f805f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905081811015613507576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016134fe90615225565b60405180910390fd5b8181035f808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550815f808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825461359591906140d4565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516135f99190613bfe565b60405180910390a361360c848484613be1565b50505050565b5f60028261362091906144b5565b90505f818361362f9190614fe3565b90505f4790505f600267ffffffffffffffff81111561365157613650615243565b5b60405190808252806020026020018201604052801561367f5781602001602082028036833780820191505090505b50905030815f8151811061369657613695615270565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561373a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061375e91906152b1565b8160018151811061377257613771615270565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947855f8430426040518663ffffffff1660e01b815260040161380e9594939291906153cc565b5f604051808303815f87803b158015613825575f80fd5b505af1158015613837573d5f803e3d5ffd5b505050505f82476138489190614fe3565b905060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7198230875f8061dead426040518863ffffffff1660e01b81526004016138b196959493929190615424565b60606040518083038185885af11580156138cd573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906138f29190615483565b5050507f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb561858286604051613928939291906154d3565b60405180910390a1505050505050565b5f4790505f600267ffffffffffffffff81111561395857613957615243565b5b6040519080825280602002602001820160405280156139865781602001602082028036833780820191505090505b50905030815f8151811061399d5761399c615270565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015613a41573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613a6591906152b1565b81600181518110613a7957613a78615270565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947845f8430426040518663ffffffff1660e01b8152600401613b159594939291906153cc565b5f604051808303815f87803b158015613b2c575f80fd5b505af1158015613b3e573d5f803e3d5ffd5b505050505f8247613b4f9190614fe3565b9050613b9c81601160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166132e790919063ffffffff16565b507f957ad1fc6d4d41da6d1a8d37303289ef3c4b78e0285ff5df1e12070ef0e629998482604051613bce929190614195565b60405180910390a150505050565b505050565b505050565b5f819050919050565b613bf881613be6565b82525050565b5f602082019050613c115f830184613bef565b92915050565b5f80fd5b613c2481613be6565b8114613c2e575f80fd5b50565b5f81359050613c3f81613c1b565b92915050565b5f8060408385031215613c5b57613c5a613c17565b5b5f613c6885828601613c31565b9250506020613c7985828601613c31565b9150509250929050565b5f81519050919050565b5f82825260208201905092915050565b5f5b83811015613cba578082015181840152602081019050613c9f565b5f8484015250505050565b5f601f19601f8301169050919050565b5f613cdf82613c83565b613ce98185613c8d565b9350613cf9818560208601613c9d565b613d0281613cc5565b840191505092915050565b5f6020820190508181035f830152613d258184613cd5565b905092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f613d5682613d2d565b9050919050565b613d6681613d4c565b8114613d70575f80fd5b50565b5f81359050613d8181613d5d565b92915050565b5f60208284031215613d9c57613d9b613c17565b5b5f613da984828501613d73565b91505092915050565b5f8060408385031215613dc857613dc7613c17565b5b5f613dd585828601613d73565b9250506020613de685828601613c31565b9150509250929050565b5f8115159050919050565b613e0481613df0565b82525050565b5f602082019050613e1d5f830184613dfb565b92915050565b5f819050919050565b5f613e46613e41613e3c84613d2d565b613e23565b613d2d565b9050919050565b5f613e5782613e2c565b9050919050565b5f613e6882613e4d565b9050919050565b613e7881613e5e565b82525050565b5f602082019050613e915f830184613e6f565b92915050565b5f805f60608486031215613eae57613ead613c17565b5b5f613ebb86828701613d73565b9350506020613ecc86828701613d73565b9250506040613edd86828701613c31565b9150509250925092565b5f60208284031215613efc57613efb613c17565b5b5f613f0984828501613c31565b91505092915050565b5f60ff82169050919050565b613f2781613f12565b82525050565b5f602082019050613f405f830184613f1e565b92915050565b613f4f81613d4c565b82525050565b5f602082019050613f685f830184613f46565b92915050565b613f7781613df0565b8114613f81575f80fd5b50565b5f81359050613f9281613f6e565b92915050565b5f60208284031215613fad57613fac613c17565b5b5f613fba84828501613f84565b91505092915050565b5f8060408385031215613fd957613fd8613c17565b5b5f613fe685828601613d73565b9250506020613ff785828601613f84565b9150509250929050565b5f806040838503121561401757614016613c17565b5b5f61402485828601613d73565b925050602061403585828601613d73565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f614073602083613c8d565b915061407e8261403f565b602082019050919050565b5f6020820190508181035f8301526140a081614067565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6140de82613be6565b91506140e983613be6565b9250828201905080821115614101576141006140a7565b5b92915050565b7f546f74616c20466565732063616e6e6f742065786365656420746865206d61785f8201527f696d756d00000000000000000000000000000000000000000000000000000000602082015250565b5f614161602483613c8d565b915061416c82614107565b604082019050919050565b5f6020820190508181035f83015261418e81614155565b9050919050565b5f6040820190506141a85f830185613bef565b6141b56020830184613bef565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061420057607f821691505b602082108103614213576142126141bc565b5b50919050565b7f54726164696e6720616c726561647920656e61626c65642e00000000000000005f82015250565b5f61424d601883613c8d565b915061425882614219565b602082019050919050565b5f6020820190508181035f83015261427a81614241565b9050919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320615f8201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b5f6142db602883613c8d565b91506142e682614281565b604082019050919050565b5f6020820190508181035f830152614308816142cf565b9050919050565b5f8160011c9050919050565b5f808291508390505b6001851115614364578086048111156143405761433f6140a7565b5b600185161561434f5780820291505b808102905061435d8561430f565b9450614324565b94509492505050565b5f8261437c5760019050614437565b81614389575f9050614437565b816001811461439f57600281146143a9576143d8565b6001915050614437565b60ff8411156143bb576143ba6140a7565b5b8360020a9150848211156143d2576143d16140a7565b5b50614437565b5060208310610133831016604e8410600b841016171561440d5782820a905083811115614408576144076140a7565b5b614437565b61441a848484600161431b565b92509050818404811115614431576144306140a7565b5b81810290505b9392505050565b5f61444882613be6565b915061445383613f12565b92506144807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848461436d565b905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6144bf82613be6565b91506144ca83613be6565b9250826144da576144d9614488565b5b828204905092915050565b7f4d61782077616c6c65742070657263656e746167652063616e6e6f74206265205f8201527f6c6f776572207468616e20312500000000000000000000000000000000000000602082015250565b5f61453f602d83613c8d565b915061454a826144e5565b604082019050919050565b5f6020820190508181035f83015261456c81614533565b9050919050565b5f61457d82613be6565b915061458883613be6565b925082820261459681613be6565b915082820484148315176145ad576145ac6140a7565b5b5092915050565b7f4d6178207472616e73616374696f6e206c696d697420697320616c72656164795f8201527f2073657420746f20746861742073746174650000000000000000000000000000602082015250565b5f61460e603283613c8d565b9150614619826145b4565b604082019050919050565b5f6020820190508181035f83015261463b81614602565b9050919050565b7f57616c6c657420746f2057616c6c6574205472616e73666572204665652063615f8201527f6e6e6f742065786365656420746865206d6178696d756d000000000000000000602082015250565b5f61469c603783613c8d565b91506146a782614642565b604082019050919050565b5f6020820190508181035f8301526146c981614690565b9050919050565b7f43616e6e6f74206368616e6765207468652070616972000000000000000000005f82015250565b5f614704601683613c8d565b915061470f826146d0565b602082019050919050565b5f6020820190508181035f830152614731816146f8565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f775f8201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b5f614792602583613c8d565b915061479d82614738565b604082019050919050565b5f6020820190508181035f8301526147bf81614786565b9050919050565b7f4d61726b6574696e672077616c6c657420697320616c726561647920746861745f8201527f2061646472657373000000000000000000000000000000000000000000000000602082015250565b5f614820602883613c8d565b915061482b826147c6565b604082019050919050565b5f6020820190508181035f83015261484d81614814565b9050919050565b7f4d61726b6574696e672077616c6c65742063616e6e6f7420626520746865207a5f8201527f65726f2061646472657373000000000000000000000000000000000000000000602082015250565b5f6148ae602b83613c8d565b91506148b982614854565b604082019050919050565b5f6020820190508181035f8301526148db816148a2565b9050919050565b7f4163636f756e7420697320616c7265616479207468652076616c7565206f66205f8201527f276578636c756465642700000000000000000000000000000000000000000000602082015250565b5f61493c602a83613c8d565b9150614947826148e2565b604082019050919050565b5f6020820190508181035f83015261496981614930565b9050919050565b7f4163636f756e7420697320616c72656164792073657420746f207468617420735f8201527f7461746500000000000000000000000000000000000000000000000000000000602082015250565b5f6149ca602483613c8d565b91506149d582614970565b604082019050919050565b5f6020820190508181035f8301526149f7816149be565b9050919050565b7f43616e277420736574207468697320616464726573732e0000000000000000005f82015250565b5f614a32601783613c8d565b9150614a3d826149fe565b602082019050919050565b5f6020820190508181035f830152614a5f81614a26565b9050919050565b7f73776170456e61626c656420616c7265616479206174207468697320737461745f8201527f652e000000000000000000000000000000000000000000000000000000000000602082015250565b5f614ac0602283613c8d565b9150614acb82614a66565b604082019050919050565b5f6020820190508181035f830152614aed81614ab4565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f614b4e602683613c8d565b9150614b5982614af4565b604082019050919050565b5f6020820190508181035f830152614b7b81614b42565b9050919050565b7f4f776e65722063616e6e6f7420636c61696d20636f6e747261637427732062615f8201527f6c616e6365206f6620697473206f776e20746f6b656e73000000000000000000602082015250565b5f614bdc603783613c8d565b9150614be782614b82565b604082019050919050565b5f6020820190508181035f830152614c0981614bd0565b9050919050565b5f81519050614c1e81613c1b565b92915050565b5f60208284031215614c3957614c38613c17565b5b5f614c4684828501614c10565b91505092915050565b5f604082019050614c625f830185613f46565b614c6f6020830184613bef565b9392505050565b5f81519050614c8481613f6e565b92915050565b5f60208284031215614c9f57614c9e613c17565b5b5f614cac84828501614c76565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f614d0f602483613c8d565b9150614d1a82614cb5565b604082019050919050565b5f6020820190508181035f830152614d3c81614d03565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f614d9d602283613c8d565b9150614da882614d43565b604082019050919050565b5f6020820190508181035f830152614dca81614d91565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f614e2b602583613c8d565b9150614e3682614dd1565b604082019050919050565b5f6020820190508181035f830152614e5881614e1f565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f614eb9602383613c8d565b9150614ec482614e5f565b604082019050919050565b5f6020820190508181035f830152614ee681614ead565b9050919050565b7f54726164696e67206e6f742079657420656e61626c65642100000000000000005f82015250565b5f614f21601883613c8d565b9150614f2c82614eed565b602082019050919050565b5f6020820190508181035f830152614f4e81614f15565b9050919050565b7f416e74695768616c653a205472616e7366657220616d6f756e742065786365655f8201527f647320746865206d61785472616e73616374696f6e416d6f756e740000000000602082015250565b5f614faf603b83613c8d565b9150614fba82614f55565b604082019050919050565b5f6020820190508181035f830152614fdc81614fa3565b9050919050565b5f614fed82613be6565b9150614ff883613be6565b92508282039050818111156150105761500f6140a7565b5b92915050565b7f4d617857616c6c65743a20526563697069656e742065786365656473207468655f8201527f206d617857616c6c6574416d6f756e7400000000000000000000000000000000602082015250565b5f615070603083613c8d565b915061507b82615016565b604082019050919050565b5f6020820190508181035f83015261509d81615064565b9050919050565b7f45524332303a206d696e7420746f20746865207a65726f2061646472657373005f82015250565b5f6150d8601f83613c8d565b91506150e3826150a4565b602082019050919050565b5f6020820190508181035f830152615105816150cc565b9050919050565b7f416464726573733a20696e73756666696369656e742062616c616e63650000005f82015250565b5f615140601d83613c8d565b915061514b8261510c565b602082019050919050565b5f6020820190508181035f83015261516d81615134565b9050919050565b5f81905092915050565b50565b5f61518c5f83615174565b91506151978261517e565b5f82019050919050565b5f6151ab82615181565b9150819050919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320625f8201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b5f61520f602683613c8d565b915061521a826151b5565b604082019050919050565b5f6020820190508181035f83015261523c81615203565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f815190506152ab81613d5d565b92915050565b5f602082840312156152c6576152c5613c17565b5b5f6152d38482850161529d565b91505092915050565b5f819050919050565b5f6152ff6152fa6152f5846152dc565b613e23565b613be6565b9050919050565b61530f816152e5565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61534781613d4c565b82525050565b5f615358838361533e565b60208301905092915050565b5f602082019050919050565b5f61537a82615315565b615384818561531f565b935061538f8361532f565b805f5b838110156153bf5781516153a6888261534d565b97506153b183615364565b925050600181019050615392565b5085935050505092915050565b5f60a0820190506153df5f830188613bef565b6153ec6020830187615306565b81810360408301526153fe8186615370565b905061540d6060830185613f46565b61541a6080830184613bef565b9695505050505050565b5f60c0820190506154375f830189613f46565b6154446020830188613bef565b6154516040830187615306565b61545e6060830186615306565b61546b6080830185613f46565b61547860a0830184613bef565b979650505050505050565b5f805f6060848603121561549a57615499613c17565b5b5f6154a786828701614c10565b93505060206154b886828701614c10565b92505060406154c986828701614c10565b9150509250925092565b5f6060820190506154e65f830186613bef565b6154f36020830185613bef565b6155006040830184613bef565b94935050505056fea2646970667358221220e5d74fa3bae82fb530e86625b26511c89cfe57627f17763a76bcb3db7a625a9f64736f6c63430008170033