60806040525f8060146101000a81548160ff021916908315150217905550737ea905ee2d37f872387d9157c298c58bd1e176a460045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505f6007555f600960146101000a81548160ff0219169083151502179055503480156200009b575f80fd5b50604051620039ce380380620039ce8339818101604052810190620000c1919062000583565b5f620000d2620003d060201b60201c565b9050805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35081600590816200017f91906200083d565b5080600690816200019191906200083d565b506012600a620001a2919062000aaa565b6305f5e100620001b3919062000afa565b60015f620001c6620003d060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550600160035f62000218620003d760201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555062000342620003d060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6012600a620003a0919062000aaa565b6305f5e100620003b1919062000afa565b604051620003c0919062000b55565b60405180910390a3505062000b70565b5f33905090565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b5f604051905090565b5f80fd5b5f80fd5b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6200045f8262000417565b810181811067ffffffffffffffff8211171562000481576200048062000427565b5b80604052505050565b5f62000495620003fe565b9050620004a3828262000454565b919050565b5f67ffffffffffffffff821115620004c557620004c462000427565b5b620004d08262000417565b9050602081019050919050565b5f5b83811015620004fc578082015181840152602081019050620004df565b5f8484015250505050565b5f6200051d6200051784620004a8565b6200048a565b9050828152602081018484840111156200053c576200053b62000413565b5b62000549848285620004dd565b509392505050565b5f82601f8301126200056857620005676200040f565b5b81516200057a84826020860162000507565b91505092915050565b5f80604083850312156200059c576200059b62000407565b5b5f83015167ffffffffffffffff811115620005bc57620005bb6200040b565b5b620005ca8582860162000551565b925050602083015167ffffffffffffffff811115620005ee57620005ed6200040b565b5b620005fc8582860162000551565b9150509250929050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806200065557607f821691505b6020821081036200066b576200066a62000610565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f60088302620006cf7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000692565b620006db868362000692565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f620007256200071f6200071984620006f3565b620006fc565b620006f3565b9050919050565b5f819050919050565b620007408362000705565b620007586200074f826200072c565b8484546200069e565b825550505050565b5f90565b6200076e62000760565b6200077b81848462000735565b505050565b5b81811015620007a257620007965f8262000764565b60018101905062000781565b5050565b601f821115620007f157620007bb8162000671565b620007c68462000683565b81016020851015620007d6578190505b620007ee620007e58562000683565b83018262000780565b50505b505050565b5f82821c905092915050565b5f620008135f1984600802620007f6565b1980831691505092915050565b5f6200082d838362000802565b9150826002028217905092915050565b620008488262000606565b67ffffffffffffffff81111562000864576200086362000427565b5b6200087082546200063d565b6200087d828285620007a6565b5f60209050601f831160018114620008b3575f84156200089e578287015190505b620008aa858262000820565b86555062000919565b601f198416620008c38662000671565b5f5b82811015620008ec57848901518255600182019150602085019450602081019050620008c5565b868310156200090c578489015162000908601f89168262000802565b8355505b6001600288020188555050505b505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b6001851115620009ab5780860481111562000983576200098262000921565b5b6001851615620009935780820291505b8081029050620009a3856200094e565b945062000963565b94509492505050565b5f82620009c5576001905062000a97565b81620009d4575f905062000a97565b8160018114620009ed5760028114620009f85762000a2e565b600191505062000a97565b60ff84111562000a0d5762000a0c62000921565b5b8360020a91508482111562000a275762000a2662000921565b5b5062000a97565b5060208310610133831016604e8410600b841016171562000a685782820a90508381111562000a625762000a6162000921565b5b62000a97565b62000a7784848460016200095a565b9250905081840481111562000a915762000a9062000921565b5b81810290505b9392505050565b5f60ff82169050919050565b5f62000ab682620006f3565b915062000ac38362000a9e565b925062000af27fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484620009b4565b905092915050565b5f62000b0682620006f3565b915062000b1383620006f3565b925082820262000b2381620006f3565b9150828204841483151762000b3d5762000b3c62000921565b5b5092915050565b62000b4f81620006f3565b82525050565b5f60208201905062000b6a5f83018462000b44565b92915050565b612e508062000b7e5f395ff3fe608060405260043610610101575f3560e01c80634fdb7f4411610094578063a9059cbb11610063578063a9059cbb14610316578063aa564f3514610352578063c7b8d38314610368578063dd62ed3e14610390578063ed4091b7146103cc57610108565b80634fdb7f441461025e57806370a08231146102865780638da5cb5b146102c257806395d89b41146102ec57610108565b806323b872dd116100d057806323b872dd146101a65780632b1b6976146101e2578063313ce5671461020c5780633fa1e7731461023657610108565b806306fdde031461010c578063095ea7b3146101365780630eb299421461017257806318160ddd1461017c57610108565b3661010857005b5f80fd5b348015610117575f80fd5b506101206103f6565b60405161012d9190611f0c565b60405180910390f35b348015610141575f80fd5b5061015c60048036038101906101579190611fca565b610486565b6040516101699190612022565b60405180910390f35b61017a6104a3565b005b348015610187575f80fd5b5061019061098e565b60405161019d919061204a565b60405180910390f35b3480156101b1575f80fd5b506101cc60048036038101906101c79190612063565b6109b1565b6040516101d99190612022565b60405180910390f35b3480156101ed575f80fd5b506101f6610a85565b60405161020391906120c2565b60405180910390f35b348015610217575f80fd5b50610220610aad565b60405161022d91906120f6565b60405180910390f35b348015610241575f80fd5b5061025c6004803603810190610257919061210f565b610ab5565b005b348015610269575f80fd5b50610284600480360381019061027f9190612266565b610bd7565b005b348015610291575f80fd5b506102ac60048036038101906102a7919061210f565b610e00565b6040516102b9919061204a565b60405180910390f35b3480156102cd575f80fd5b506102d6610e46565b6040516102e391906120c2565b60405180910390f35b3480156102f7575f80fd5b50610300610e6d565b60405161030d9190611f0c565b60405180910390f35b348015610321575f80fd5b5061033c60048036038101906103379190611fca565b610efd565b6040516103499190612022565b60405180910390f35b34801561035d575f80fd5b50610366610f1a565b005b348015610373575f80fd5b5061038e6004803603810190610389919061210f565b610fdd565b005b34801561039b575f80fd5b506103b660048036038101906103b191906122ad565b6111ee565b6040516103c3919061204a565b60405180910390f35b3480156103d7575f80fd5b506103e0611270565b6040516103ed9190612022565b60405180910390f35b60606005805461040590612318565b80601f016020809104026020016040519081016040528092919081815260200182805461043190612318565b801561047c5780601f106104535761010080835404028352916020019161047c565b820191905f5260205f20905b81548152906001019060200180831161045f57829003601f168201915b5050505050905090565b5f610499610492611282565b8484611289565b6001905092915050565b6104ab611282565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610537576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161052e90612392565b60405180910390fd5b5f4790505f811161057d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161057490612420565b60405180910390fd5b734752ba5dbc23f44d87826276bf6fd6b1c372ad2460085f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506106193060085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166012600a610605919061259a565b6305f5e10061061491906125e4565b611289565b60085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610683573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106a79190612639565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561072d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107519190612639565b6040518363ffffffff1660e01b815260040161076e929190612664565b6020604051808303815f875af115801561078a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107ae9190612639565b60095f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d719823061083530610e00565b5f8061083f610e46565b426040518863ffffffff1660e01b8152600401610861969594939291906126cd565b60606040518083038185885af115801561087d573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906108a29190612740565b50505060095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b360085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610942929190612790565b6020604051808303815f875af115801561095e573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061098291906127e1565b5061098b61144c565b50565b5f6012600a61099d919061259a565b6305f5e1006109ac91906125e4565b905090565b5f6109bd8484846114fc565b610a7a846109c9611282565b610a7585604051806060016040528060288152602001612df36028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f610a2c611282565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611a179092919063ffffffff16565b611289565b600190509392505050565b5f60095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b5f6012905090565b610abd611282565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b49576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b4090612392565b60405180910390fd5b5f4790505f8111610b8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b8690612420565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015610bd2573d5f803e3d5ffd5b505050565b610bdf611282565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c6b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c6290612392565b60405180910390fd5b5f60149054906101000a900460ff16610cb9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cb090612856565b60405180910390fd5b604051602001610cc8906128c8565b6040516020818303038152906040528051906020012081604051602001610cef919061290c565b6040516020818303038152906040528051906020012014610d45576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d3c90612392565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060068054610e7c90612318565b80601f0160208091040260200160405190810160405280929190818152602001828054610ea890612318565b8015610ef35780601f10610eca57610100808354040283529160200191610ef3565b820191905f5260205f20905b815481529060010190602001808311610ed657829003601f168201915b5050505050905090565b5f610f10610f09611282565b84846114fc565b6001905092915050565b5f60149054906101000a900460ff16610f68576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f5f90612420565b60405180910390fd5b5f4790505f811115610fda5760045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015610fd8573d5f803e3d5ffd5b505b50565b610fe5611282565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611071576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161106890612392565b60405180910390fd5b734752ba5dbc23f44d87826276bf6fd6b1c372ad2460085f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508060095f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b360085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016111a2929190612790565b6020604051808303815f875af11580156111be573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111e291906127e1565b506111eb61144c565b50565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f60149054906101000a900460ff1681565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036112f7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112ee90612992565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611365576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161135c90612a20565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161143f919061204a565b60405180910390a3505050565b611454611282565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146114e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114d790612392565b60405180910390fd5b60015f60146101000a81548160ff021916908315150217905550565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361156a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161156190612aae565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036115d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115cf90612b3c565b60405180910390fd5b5f811161161a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161161190612bca565b60405180910390fd5b5f61162484611a79565b15611750576116798260015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611ad190919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555061170a8160015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611b2e90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550611a11565b5f811115611865575f61176230610e00565b90506117b48260015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611ad190919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506117fe81611b77565b3073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161185b919061204a565b60405180910390a3505b6118b58260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611b2e90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555061195861190c8284611b2e90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611ad190919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6119fb8486611b2e90919063ffffffff16565b604051611a08919061204a565b60405180910390a35b50505050565b5f838311158290611a5e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a559190611f0c565b60405180910390fd5b505f8385611a6c9190612be8565b9050809150509392505050565b5f60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050919050565b5f808284611adf9190612c1b565b905083811015611b24576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b1b90612c98565b60405180910390fd5b8091505092915050565b5f611b6f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611a17565b905092915050565b6001600960146101000a81548160ff0219169083151502179055506012600a611ba0919061259a565b620186a0611bae91906125e4565b8110611df0575f600267ffffffffffffffff811115611bd057611bcf612142565b5b604051908082528060200260200182016040528015611bfe5781602001602082028036833780820191505090505b50905030815f81518110611c1557611c14612cb6565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611cb9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cdd9190612639565b81600181518110611cf157611cf0612cb6565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611d573060085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611289565b60085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b8152600401611db9959493929190612d9a565b5f604051808303815f87803b158015611dd0575f80fd5b505af1158015611de2573d5f803e3d5ffd5b50505050611dee611e0d565b505b5f600960146101000a81548160ff02191690831515021790555050565b5f4790505f811115611e7f5760045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015611e7d573d5f803e3d5ffd5b505b50565b5f81519050919050565b5f82825260208201905092915050565b5f5b83811015611eb9578082015181840152602081019050611e9e565b5f8484015250505050565b5f601f19601f8301169050919050565b5f611ede82611e82565b611ee88185611e8c565b9350611ef8818560208601611e9c565b611f0181611ec4565b840191505092915050565b5f6020820190508181035f830152611f248184611ed4565b905092915050565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611f6682611f3d565b9050919050565b611f7681611f5c565b8114611f80575f80fd5b50565b5f81359050611f9181611f6d565b92915050565b5f819050919050565b611fa981611f97565b8114611fb3575f80fd5b50565b5f81359050611fc481611fa0565b92915050565b5f8060408385031215611fe057611fdf611f35565b5b5f611fed85828601611f83565b9250506020611ffe85828601611fb6565b9150509250929050565b5f8115159050919050565b61201c81612008565b82525050565b5f6020820190506120355f830184612013565b92915050565b61204481611f97565b82525050565b5f60208201905061205d5f83018461203b565b92915050565b5f805f6060848603121561207a57612079611f35565b5b5f61208786828701611f83565b935050602061209886828701611f83565b92505060406120a986828701611fb6565b9150509250925092565b6120bc81611f5c565b82525050565b5f6020820190506120d55f8301846120b3565b92915050565b5f60ff82169050919050565b6120f0816120db565b82525050565b5f6020820190506121095f8301846120e7565b92915050565b5f6020828403121561212457612123611f35565b5b5f61213184828501611f83565b91505092915050565b5f80fd5b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b61217882611ec4565b810181811067ffffffffffffffff8211171561219757612196612142565b5b80604052505050565b5f6121a9611f2c565b90506121b5828261216f565b919050565b5f67ffffffffffffffff8211156121d4576121d3612142565b5b6121dd82611ec4565b9050602081019050919050565b828183375f83830152505050565b5f61220a612205846121ba565b6121a0565b9050828152602081018484840111156122265761222561213e565b5b6122318482856121ea565b509392505050565b5f82601f83011261224d5761224c61213a565b5b813561225d8482602086016121f8565b91505092915050565b5f6020828403121561227b5761227a611f35565b5b5f82013567ffffffffffffffff81111561229857612297611f39565b5b6122a484828501612239565b91505092915050565b5f80604083850312156122c3576122c2611f35565b5b5f6122d085828601611f83565b92505060206122e185828601611f83565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061232f57607f821691505b602082108103612342576123416122eb565b5b50919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f61237c602083611e8c565b915061238782612348565b602082019050919050565b5f6020820190508181035f8301526123a981612370565b9050919050565b7f436f6e747261637420686173206e6f2065746865722062616c616e636520746f5f8201527f207472616e736665720000000000000000000000000000000000000000000000602082015250565b5f61240a602983611e8c565b9150612415826123b0565b604082019050919050565b5f6020820190508181035f830152612437816123fe565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b60018511156124c05780860481111561249c5761249b61243e565b5b60018516156124ab5780820291505b80810290506124b98561246b565b9450612480565b94509492505050565b5f826124d85760019050612593565b816124e5575f9050612593565b81600181146124fb576002811461250557612534565b6001915050612593565b60ff8411156125175761251661243e565b5b8360020a91508482111561252e5761252d61243e565b5b50612593565b5060208310610133831016604e8410600b84101617156125695782820a9050838111156125645761256361243e565b5b612593565b6125768484846001612477565b9250905081840481111561258d5761258c61243e565b5b81810290505b9392505050565b5f6125a482611f97565b91506125af836120db565b92506125dc7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846124c9565b905092915050565b5f6125ee82611f97565b91506125f983611f97565b925082820261260781611f97565b9150828204841483151761261e5761261d61243e565b5b5092915050565b5f8151905061263381611f6d565b92915050565b5f6020828403121561264e5761264d611f35565b5b5f61265b84828501612625565b91505092915050565b5f6040820190506126775f8301856120b3565b61268460208301846120b3565b9392505050565b5f819050919050565b5f819050919050565b5f6126b76126b26126ad8461268b565b612694565b611f97565b9050919050565b6126c78161269d565b82525050565b5f60c0820190506126e05f8301896120b3565b6126ed602083018861203b565b6126fa60408301876126be565b61270760608301866126be565b61271460808301856120b3565b61272160a083018461203b565b979650505050505050565b5f8151905061273a81611fa0565b92915050565b5f805f6060848603121561275757612756611f35565b5b5f6127648682870161272c565b93505060206127758682870161272c565b92505060406127868682870161272c565b9150509250925092565b5f6040820190506127a35f8301856120b3565b6127b0602083018461203b565b9392505050565b6127c081612008565b81146127ca575f80fd5b50565b5f815190506127db816127b7565b92915050565b5f602082840312156127f6576127f5611f35565b5b5f612803848285016127cd565b91505092915050565b7f6e6f7420616464206c70000000000000000000000000000000000000000000005f82015250565b5f612840600a83611e8c565b915061284b8261280c565b602082019050919050565b5f6020820190508181035f83015261286d81612834565b9050919050565b5f81905092915050565b7f6b6563616b3130323400000000000000000000000000000000000000000000005f82015250565b5f6128b2600983612874565b91506128bd8261287e565b600982019050919050565b5f6128d2826128a6565b9150819050919050565b5f6128e682611e82565b6128f08185612874565b9350612900818560208601611e9c565b80840191505092915050565b5f61291782846128dc565b915081905092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f61297c602483611e8c565b915061298782612922565b604082019050919050565b5f6020820190508181035f8301526129a981612970565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612a0a602283611e8c565b9150612a15826129b0565b604082019050919050565b5f6020820190508181035f830152612a37816129fe565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f612a98602383611e8c565b9150612aa382612a3e565b604082019050919050565b5f6020820190508181035f830152612ac581612a8c565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f612b26602583611e8c565b9150612b3182612acc565b604082019050919050565b5f6020820190508181035f830152612b5381612b1a565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f612bb4602983611e8c565b9150612bbf82612b5a565b604082019050919050565b5f6020820190508181035f830152612be181612ba8565b9050919050565b5f612bf282611f97565b9150612bfd83611f97565b9250828203905081811115612c1557612c1461243e565b5b92915050565b5f612c2582611f97565b9150612c3083611f97565b9250828201905080821115612c4857612c4761243e565b5b92915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f612c82601b83611e8c565b9150612c8d82612c4e565b602082019050919050565b5f6020820190508181035f830152612caf81612c76565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b612d1581611f5c565b82525050565b5f612d268383612d0c565b60208301905092915050565b5f602082019050919050565b5f612d4882612ce3565b612d528185612ced565b9350612d5d83612cfd565b805f5b83811015612d8d578151612d748882612d1b565b9750612d7f83612d32565b925050600181019050612d60565b5085935050505092915050565b5f60a082019050612dad5f83018861203b565b612dba60208301876126be565b8181036040830152612dcc8186612d3e565b9050612ddb60608301856120b3565b612de8608083018461203b565b969550505050505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220756c1e63838f6958c255016b256c58766dcb1ea5b65be8fdca9a7649c8aeecf964736f6c634300081800330000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000074d4f4f44454e470000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000074d4f4f44454e4700000000000000000000000000000000000000000000000000