60806040526012600a610012919061081c565b620186a06100209190610866565b6005556100316105b460201b60201c565b600a61003d919061081c565b621e848061004b9190610866565b60065560056007556005600855600560095573bf5e6d128e92be2cb3a2a7f5ee527d6f5b62f779600a5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505f600c60146101000a81548160ff0219169083151502179055506001600c60156101000a81548160ff0219169083151502179055505f600c60166101000a81548160ff02191690831515021790555034801561010b575f80fd5b5061012861011d6105bc60201b60201c565b6105c360201b60201c565b5f737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610189573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101ad9190610905565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610212573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102369190610905565b6040518363ffffffff1660e01b815260040161025392919061093f565b6020604051808303815f875af115801561026f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102939190610905565b600c5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600b5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506012600a610320919061081c565b6305f5e10061032f9190610866565b60015f6103406105bc60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550600160035f61039061068460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160045f600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555061052e6105bc60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6012600a61058a919061081c565b6305f5e1006105999190610866565b6040516105a69190610975565b60405180910390a35061098e565b5f6012905090565b5f33905090565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b600185111561072d57808604811115610709576107086106ab565b5b60018516156107185780820291505b8081029050610726856106d8565b94506106ed565b94509492505050565b5f826107455760019050610800565b81610752575f9050610800565b81600181146107685760028114610772576107a1565b6001915050610800565b60ff841115610784576107836106ab565b5b8360020a91508482111561079b5761079a6106ab565b5b50610800565b5060208310610133831016604e8410600b84101617156107d65782820a9050838111156107d1576107d06106ab565b5b610800565b6107e384848460016106e4565b925090508184048111156107fa576107f96106ab565b5b81810290505b9392505050565b5f819050919050565b5f60ff82169050919050565b5f61082682610807565b915061083183610810565b925061085e7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484610736565b905092915050565b5f61087082610807565b915061087b83610807565b925082820261088981610807565b915082820484148315176108a05761089f6106ab565b5b5092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6108d4826108ab565b9050919050565b6108e4816108ca565b81146108ee575f80fd5b50565b5f815190506108ff816108db565b92915050565b5f6020828403121561091a576109196108a7565b5b5f610927848285016108f1565b91505092915050565b610939816108ca565b82525050565b5f6040820190506109525f830185610930565b61095f6020830184610930565b9392505050565b61096f81610807565b82525050565b5f6020820190506109885f830184610966565b92915050565b612fea8061099b5f395ff3fe6080604052600436106101db575f3560e01c80637eae8e9111610101578063d8a59f6f11610094578063ea2f0b3711610063578063ea2f0b3714610688578063efefd8ae146106b0578063f2fde38b146106da578063fb236edb14610702576101e2565b8063d8a59f6f146105e4578063dd62ed3e146105fa578063df70743514610636578063e77f35c414610660576101e2565b8063b62496f5116100d0578063b62496f51461052c578063bf474bed14610568578063c4f87f9514610592578063d621e813146105ba576101e2565b80637eae8e91146104725780638da5cb5b1461049c57806395d89b41146104c6578063a9059cbb146104f0576101e2565b8063349c1f091161017957806370a082311161014857806370a08231146103ce578063715018a61461040a578063748a2b0d14610420578063768dc71014610436576101e2565b8063349c1f091461032c57806346c8df23146103545780635053b1481461037c578063508f6dfb146103a6576101e2565b80631006ee0c116101b55780631006ee0c1461027457806318160ddd1461029c57806323b872dd146102c6578063313ce56714610302576101e2565b806306fdde03146101e657806308c85da014610210578063095ea7b314610238576101e2565b366101e257005b5f80fd5b3480156101f1575f80fd5b506101fa61072c565b6040516102079190612006565b60405180910390f35b34801561021b575f80fd5b506102366004803603810190610231919061205d565b610769565b005b348015610243575f80fd5b5061025e600480360381019061025991906120e2565b6107bd565b60405161026b919061213a565b60405180910390f35b34801561027f575f80fd5b5061029a60048036038101906102959190612153565b6107da565b005b3480156102a7575f80fd5b506102b06107f4565b6040516102bd91906121a0565b60405180910390f35b3480156102d1575f80fd5b506102ec60048036038101906102e791906121b9565b610817565b6040516102f9919061213a565b60405180910390f35b34801561030d575f80fd5b506103166108eb565b6040516103239190612224565b60405180910390f35b348015610337575f80fd5b50610352600480360381019061034d919061223d565b6108f3565b005b34801561035f575f80fd5b5061037a6004803603810190610375919061223d565b610953565b005b348015610387575f80fd5b506103906109b2565b60405161039d91906121a0565b60405180910390f35b3480156103b1575f80fd5b506103cc60048036038101906103c7919061223d565b6109b8565b005b3480156103d9575f80fd5b506103f460048036038101906103ef919061223d565b610a18565b60405161040191906121a0565b60405180910390f35b348015610415575f80fd5b5061041e610a5e565b005b34801561042b575f80fd5b50610434610a71565b005b348015610441575f80fd5b5061045c6004803603810190610457919061223d565b610aec565b604051610469919061213a565b60405180910390f35b34801561047d575f80fd5b50610486610b09565b60405161049391906121a0565b60405180910390f35b3480156104a7575f80fd5b506104b0610b0f565b6040516104bd9190612277565b60405180910390f35b3480156104d1575f80fd5b506104da610b36565b6040516104e79190612006565b60405180910390f35b3480156104fb575f80fd5b50610516600480360381019061051191906120e2565b610b73565b604051610523919061213a565b60405180910390f35b348015610537575f80fd5b50610552600480360381019061054d919061223d565b610b90565b60405161055f919061213a565b60405180910390f35b348015610573575f80fd5b5061057c610bad565b60405161058991906121a0565b60405180910390f35b34801561059d575f80fd5b506105b860048036038101906105b3919061205d565b610bb3565b005b3480156105c5575f80fd5b506105ce610c21565b6040516105db919061213a565b60405180910390f35b3480156105ef575f80fd5b506105f8610c34565b005b348015610605575f80fd5b50610620600480360381019061061b9190612290565b610d2e565b60405161062d91906121a0565b60405180910390f35b348015610641575f80fd5b5061064a610db0565b60405161065791906121a0565b60405180910390f35b34801561066b575f80fd5b506106866004803603810190610681919061205d565b610db6565b005b348015610693575f80fd5b506106ae60048036038101906106a9919061223d565b610dc8565b005b3480156106bb575f80fd5b506106c4610e27565b6040516106d191906122ee565b60405180910390f35b3480156106e5575f80fd5b5061070060048036038101906106fb919061223d565b610e4c565b005b34801561070d575f80fd5b50610716610ece565b60405161072391906121a0565b60405180910390f35b60606040518060400160405280600481526020017f4d59535400000000000000000000000000000000000000000000000000000000815250905090565b610771610ed4565b5f81116107b3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107aa90612351565b60405180910390fd5b8060058190555050565b5f6107d06107c9610f52565b8484610f59565b6001905092915050565b6107e2610ed4565b81600781905550806008819055505050565b5f6012600a61080391906124cb565b6305f5e1006108129190612515565b905090565b5f61082384848461111c565b6108e08461082f610f52565b6108db85604051806060016040528060288152602001612f8d6028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f610892610f52565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546119369092919063ffffffff16565b610f59565b600190509392505050565b5f6012905090565b6108fb610ed4565b600160045f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555050565b61095b610ed4565b5f60045f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555050565b60095481565b6109c0610ed4565b600160035f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555050565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610a66610ed4565b610a6f5f611998565b565b610a79610ed4565b60011515600c60169054906101000a900460ff16151503610acf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ac6906125a0565b60405180910390fd5b6001600c60166101000a81548160ff021916908315150217905550565b6003602052805f5260405f205f915054906101000a900460ff1681565b60065481565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600581526020017f244d595354000000000000000000000000000000000000000000000000000000815250905090565b5f610b86610b7f610f52565b848461111c565b6001905092915050565b6004602052805f5260405f205f915054906101000a900460ff1681565b60055481565b610bbb610ed4565b610bd660c8610bc86107f4565b611a5990919063ffffffff16565b8111610c17576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c0e90612608565b60405180910390fd5b8060068190555050565b600c60169054906101000a900460ff1681565b610c3c610ed4565b5f4711610c7e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c7590612670565b60405180910390fd5b5f4790505f3373ffffffffffffffffffffffffffffffffffffffff1682604051610ca7906126bb565b5f6040518083038185875af1925050503d805f8114610ce1576040519150601f19603f3d011682016040523d82523d5f602084013e610ce6565b606091505b5050905080610d2a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d2190612719565b60405180910390fd5b5050565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b60075481565b610dbe610ed4565b8060098190555050565b610dd0610ed4565b5f60035f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555050565b600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610e54610ed4565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610ec2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eb9906127a7565b60405180910390fd5b610ecb81611998565b50565b60085481565b610edc610f52565b73ffffffffffffffffffffffffffffffffffffffff16610efa610b0f565b73ffffffffffffffffffffffffffffffffffffffff1614610f50576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f479061280f565b60405180910390fd5b565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610fc7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fbe9061289d565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611035576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161102c9061292b565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161110f91906121a0565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361118a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611181906129b9565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036111f8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111ef90612a47565b60405180910390fd5b5f811161123a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161123190612ad5565b60405180910390fd5b5f60035f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff161580156112d9575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561168657600c60169054906101000a900460ff1661132d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161132490612b3d565b60405180910390fd5b60045f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff166113d4576006548261138885610a18565b6113929190612b5b565b11156113d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113ca90612bfe565b60405180910390fd5b5b5f60095411156114ad5760045f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1615801561147c575060045f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b156114ac576114a9606461149b60095485611aa290919063ffffffff16565b611a5990919063ffffffff16565b90505b5b5f6007541115611538576001151560045f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1615150361153757611534606461152660075485611aa290919063ffffffff16565b611a5990919063ffffffff16565b90505b5b5f60085411156115c3576001151560045f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff161515036115c2576115bf60646115b160085485611aa290919063ffffffff16565b611a5990919063ffffffff16565b90505b5b5f6115cd30610a18565b9050600c60149054906101000a900460ff1615801561163957506001151560045f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff161515145b80156116515750600c60159054906101000a900460ff165b801561165e575060055481115b156116845761166c81611b19565b5f4790505f8111156116825761168147611d8d565b5b505b505b5f811115611785576116de8160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611e8f90919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161177c91906121a0565b60405180910390a35b6117d58260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611eec90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555061187861182c8284611eec90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611e8f90919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61191b8486611eec90919063ffffffff16565b60405161192891906121a0565b60405180910390a350505050565b5f83831115829061197d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119749190612006565b60405180910390fd5b505f838561198b9190612c1c565b9050809150509392505050565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f611a9a83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611f35565b905092915050565b5f808303611ab2575f9050611b13565b5f8284611abf9190612515565b9050828482611ace9190612c7c565b14611b0e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b0590612d1c565b60405180910390fd5b809150505b92915050565b6001600c60146101000a81548160ff0219169083151502179055505f810315611d70575f600267ffffffffffffffff811115611b5857611b57612d3a565b5b604051908082528060200260200182016040528015611b865781602001602082028036833780820191505090505b50905030815f81518110611b9d57611b9c612d67565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c41573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611c659190612da8565b81600181518110611c7957611c78612d67565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611cdf30600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610f59565b600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b8152600401611d41959493929190612ecc565b5f604051808303815f87803b158015611d58575f80fd5b505af1158015611d6a573d5f803e3d5ffd5b50505050505b5f600c60146101000a81548160ff02191690831515021790555050565b5f600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1682604051611dd3906126bb565b5f6040518083038185875af1925050503d805f8114611e0d576040519150601f19603f3d011682016040523d82523d5f602084013e611e12565b606091505b5050905080611e8b57600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f0759dac7fa668d044a7de2b7fd31ccc6f577fdf83cd0441d6ebaba277754db5783604051611e8291906121a0565b60405180910390a25b5050565b5f808284611e9d9190612b5b565b905083811015611ee2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ed990612f6e565b60405180910390fd5b8091505092915050565b5f611f2d83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611936565b905092915050565b5f8083118290611f7b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f729190612006565b60405180910390fd5b505f8385611f899190612c7c565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611fd882611f96565b611fe28185611fa0565b9350611ff2818560208601611fb0565b611ffb81611fbe565b840191505092915050565b5f6020820190508181035f83015261201e8184611fce565b905092915050565b5f80fd5b5f819050919050565b61203c8161202a565b8114612046575f80fd5b50565b5f8135905061205781612033565b92915050565b5f6020828403121561207257612071612026565b5b5f61207f84828501612049565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6120b182612088565b9050919050565b6120c1816120a7565b81146120cb575f80fd5b50565b5f813590506120dc816120b8565b92915050565b5f80604083850312156120f8576120f7612026565b5b5f612105858286016120ce565b925050602061211685828601612049565b9150509250929050565b5f8115159050919050565b61213481612120565b82525050565b5f60208201905061214d5f83018461212b565b92915050565b5f806040838503121561216957612168612026565b5b5f61217685828601612049565b925050602061218785828601612049565b9150509250929050565b61219a8161202a565b82525050565b5f6020820190506121b35f830184612191565b92915050565b5f805f606084860312156121d0576121cf612026565b5b5f6121dd868287016120ce565b93505060206121ee868287016120ce565b92505060406121ff86828701612049565b9150509250925092565b5f60ff82169050919050565b61221e81612209565b82525050565b5f6020820190506122375f830184612215565b92915050565b5f6020828403121561225257612251612026565b5b5f61225f848285016120ce565b91505092915050565b612271816120a7565b82525050565b5f60208201905061228a5f830184612268565b92915050565b5f80604083850312156122a6576122a5612026565b5b5f6122b3858286016120ce565b92505060206122c4858286016120ce565b9150509250929050565b5f6122d882612088565b9050919050565b6122e8816122ce565b82525050565b5f6020820190506123015f8301846122df565b92915050565b7f546178206c696d697420746f6f206c6f770000000000000000000000000000005f82015250565b5f61233b601183611fa0565b915061234682612307565b602082019050919050565b5f6020820190508181035f8301526123688161232f565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b60018511156123f1578086048111156123cd576123cc61236f565b5b60018516156123dc5780820291505b80810290506123ea8561239c565b94506123b1565b94509492505050565b5f8261240957600190506124c4565b81612416575f90506124c4565b816001811461242c576002811461243657612465565b60019150506124c4565b60ff8411156124485761244761236f565b5b8360020a91508482111561245f5761245e61236f565b5b506124c4565b5060208310610133831016604e8410600b841016171561249a5782820a9050838111156124955761249461236f565b5b6124c4565b6124a784848460016123a8565b925090508184048111156124be576124bd61236f565b5b81810290505b9392505050565b5f6124d58261202a565b91506124e083612209565b925061250d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846123fa565b905092915050565b5f61251f8261202a565b915061252a8361202a565b92508282026125388161202a565b9150828204841483151761254f5761254e61236f565b5b5092915050565b7f547261646520616c726561647920656e61626c656400000000000000000000005f82015250565b5f61258a601583611fa0565b915061259582612556565b602082019050919050565b5f6020820190508181035f8301526125b78161257e565b9050919050565b7f4c696d697420746f6f206c6573730000000000000000000000000000000000005f82015250565b5f6125f2600e83611fa0565b91506125fd826125be565b602082019050919050565b5f6020820190508181035f83015261261f816125e6565b9050919050565b7f4e6f20737475636b2045746800000000000000000000000000000000000000005f82015250565b5f61265a600c83611fa0565b915061266582612626565b602082019050919050565b5f6020820190508181035f8301526126878161264e565b9050919050565b5f81905092915050565b50565b5f6126a65f8361268e565b91506126b182612698565b5f82019050919050565b5f6126c58261269b565b9150819050919050565b7f43616c6c206661696c65640000000000000000000000000000000000000000005f82015250565b5f612703600b83611fa0565b915061270e826126cf565b602082019050919050565b5f6020820190508181035f830152612730816126f7565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f612791602683611fa0565b915061279c82612737565b604082019050919050565b5f6020820190508181035f8301526127be81612785565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6127f9602083611fa0565b9150612804826127c5565b602082019050919050565b5f6020820190508181035f830152612826816127ed565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f612887602483611fa0565b91506128928261282d565b604082019050919050565b5f6020820190508181035f8301526128b48161287b565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612915602283611fa0565b9150612920826128bb565b604082019050919050565b5f6020820190508181035f83015261294281612909565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f6129a3602583611fa0565b91506129ae82612949565b604082019050919050565b5f6020820190508181035f8301526129d081612997565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f612a31602383611fa0565b9150612a3c826129d7565b604082019050919050565b5f6020820190508181035f830152612a5e81612a25565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f612abf602983611fa0565b9150612aca82612a65565b604082019050919050565b5f6020820190508181035f830152612aec81612ab3565b9050919050565b7f54726164696e67206e6f7420656e61626c6564000000000000000000000000005f82015250565b5f612b27601383611fa0565b9150612b3282612af3565b602082019050919050565b5f6020820190508181035f830152612b5481612b1b565b9050919050565b5f612b658261202a565b9150612b708361202a565b9250828201905080821115612b8857612b8761236f565b5b92915050565b7f486967686572207468616e20746865206c696d6974204f66204d5953542050655f8201527f722057616c6c65742e0000000000000000000000000000000000000000000000602082015250565b5f612be8602983611fa0565b9150612bf382612b8e565b604082019050919050565b5f6020820190508181035f830152612c1581612bdc565b9050919050565b5f612c268261202a565b9150612c318361202a565b9250828203905081811115612c4957612c4861236f565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f612c868261202a565b9150612c918361202a565b925082612ca157612ca0612c4f565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f612d06602183611fa0565b9150612d1182612cac565b604082019050919050565b5f6020820190508181035f830152612d3381612cfa565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050612da2816120b8565b92915050565b5f60208284031215612dbd57612dbc612026565b5b5f612dca84828501612d94565b91505092915050565b5f819050919050565b5f819050919050565b5f612dff612dfa612df584612dd3565b612ddc565b61202a565b9050919050565b612e0f81612de5565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b612e47816120a7565b82525050565b5f612e588383612e3e565b60208301905092915050565b5f602082019050919050565b5f612e7a82612e15565b612e848185612e1f565b9350612e8f83612e2f565b805f5b83811015612ebf578151612ea68882612e4d565b9750612eb183612e64565b925050600181019050612e92565b5085935050505092915050565b5f60a082019050612edf5f830188612191565b612eec6020830187612e06565b8181036040830152612efe8186612e70565b9050612f0d6060830185612268565b612f1a6080830184612191565b9695505050505050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f612f58601b83611fa0565b9150612f6382612f24565b602082019050919050565b5f6020820190508181035f830152612f8581612f4c565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220ba452d430c2a2ccf08f9d43fd3608225c95fe34665c6ce75a3c13a07601b5c3564736f6c634300081a0033