60806040526012600a610012919061079f565b620186a061002091906107e9565b6004555f6005555f600655737ec1bc4bc4d3cda1a02c65cd35ab9a174e412c1060075f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061008d61053760201b60201c565b600a610099919061079f565b622dc6c06100a791906107e9565b6008555f60095f6101000a81548160ff0219169083151502179055505f600a60146101000a81548160ff0219169083151502179055506001600a60156101000a81548160ff021916908315150217905550348015610103575f80fd5b5061012061011561053f60201b60201c565b61054660201b60201c565b5f737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610181573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101a59190610888565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561020a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061022e9190610888565b6040518363ffffffff1660e01b815260040161024b9291906108c2565b6020604051808303815f875af1158015610267573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061028b9190610888565b600a5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600960016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506012600a610319919061079f565b6305f5e10061032891906107e9565b60015f61033961053f60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550600160035f61038961060760201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506104b161053f60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6012600a61050d919061079f565b6305f5e10061051c91906107e9565b60405161052991906108f8565b60405180910390a350610911565b5f6012905090565b5f33905090565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b60018511156106b05780860481111561068c5761068b61062e565b5b600185161561069b5780820291505b80810290506106a98561065b565b9450610670565b94509492505050565b5f826106c85760019050610783565b816106d5575f9050610783565b81600181146106eb57600281146106f557610724565b6001915050610783565b60ff8411156107075761070661062e565b5b8360020a91508482111561071e5761071d61062e565b5b50610783565b5060208310610133831016604e8410600b84101617156107595782820a9050838111156107545761075361062e565b5b610783565b6107668484846001610667565b9250905081840481111561077d5761077c61062e565b5b81810290505b9392505050565b5f819050919050565b5f60ff82169050919050565b5f6107a98261078a565b91506107b483610793565b92506107e17fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846106b9565b905092915050565b5f6107f38261078a565b91506107fe8361078a565b925082820261080c8161078a565b915082820484148315176108235761082261062e565b5b5092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6108578261082e565b9050919050565b6108678161084d565b8114610871575f80fd5b50565b5f815190506108828161085e565b92915050565b5f6020828403121561089d5761089c61082a565b5b5f6108aa84828501610874565b91505092915050565b6108bc8161084d565b82525050565b5f6040820190506108d55f8301856108b3565b6108e260208301846108b3565b9392505050565b6108f28161078a565b82525050565b5f60208201905061090b5f8301846108e9565b92915050565b612d458061091e5f395ff3fe608060405260043610610184575f3560e01c8063768dc710116100d0578063a9059cbb11610089578063c56b953311610063578063c56b953314610555578063dd62ed3e1461057d578063f2fde38b146105b9578063fd31e995146105e15761018b565b8063a9059cbb146104c5578063ac64abc614610501578063bf474bed1461052b5761018b565b8063768dc710146103b95780638d0ba229146103f55780638da5cb5b1461041f57806395d89b4114610449578063983e915814610473578063a1c44e621461049b5761018b565b806317b21d241161013d578063313ce56711610117578063313ce56714610313578063566bdd211461033d57806370a0823114610367578063715018a6146103a35761018b565b806317b21d241461028557806318160ddd146102ad57806323b872dd146102d75761018b565b8063034832bd1461018f5780630614117a146101b757806306fdde03146101cd578063095ea7b3146101f75780630c277f6514610233578063131e00b71461025d5761018b565b3661018b57005b5f80fd5b34801561019a575f80fd5b506101b560048036038101906101b09190611d28565b6105f7565b005b3480156101c2575f80fd5b506101cb61064b565b005b3480156101d8575f80fd5b506101e1610745565b6040516101ee9190611dc3565b60405180910390f35b348015610202575f80fd5b5061021d60048036038101906102189190611e3d565b610782565b60405161022a9190611e95565b60405180910390f35b34801561023e575f80fd5b5061024761079f565b6040516102549190611ebd565b60405180910390f35b348015610268575f80fd5b50610283600480360381019061027e9190611ed6565b6107a5565b005b348015610290575f80fd5b506102ab60048036038101906102a69190611f01565b610805565b005b3480156102b8575f80fd5b506102c161081f565b6040516102ce9190611ebd565b60405180910390f35b3480156102e2575f80fd5b506102fd60048036038101906102f89190611f3f565b610842565b60405161030a9190611e95565b60405180910390f35b34801561031e575f80fd5b50610327610916565b6040516103349190611faa565b60405180910390f35b348015610348575f80fd5b5061035161091e565b60405161035e9190611fe3565b60405180910390f35b348015610372575f80fd5b5061038d60048036038101906103889190611ed6565b610943565b60405161039a9190611ebd565b60405180910390f35b3480156103ae575f80fd5b506103b7610989565b005b3480156103c4575f80fd5b506103df60048036038101906103da9190611ed6565b61099c565b6040516103ec9190611e95565b60405180910390f35b348015610400575f80fd5b506104096109b9565b6040516104169190611e95565b60405180910390f35b34801561042a575f80fd5b506104336109cb565b604051610440919061200b565b60405180910390f35b348015610454575f80fd5b5061045d6109f2565b60405161046a9190611dc3565b60405180910390f35b34801561047e575f80fd5b5061049960048036038101906104949190611ed6565b610a2f565b005b3480156104a6575f80fd5b506104af610a8e565b6040516104bc9190611ebd565b60405180910390f35b3480156104d0575f80fd5b506104eb60048036038101906104e69190611e3d565b610a94565b6040516104f89190611e95565b60405180910390f35b34801561050c575f80fd5b50610515610ab1565b6040516105229190611ebd565b60405180910390f35b348015610536575f80fd5b5061053f610ab7565b60405161054c9190611ebd565b60405180910390f35b348015610560575f80fd5b5061057b60048036038101906105769190611d28565b610abd565b005b348015610588575f80fd5b506105a3600480360381019061059e9190612024565b610b2b565b6040516105b09190611ebd565b60405180910390f35b3480156105c4575f80fd5b506105df60048036038101906105da9190611ed6565b610bad565b005b3480156105ec575f80fd5b506105f5610c2f565b005b6105ff610ca8565b5f8111610641576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610638906120ac565b60405180910390fd5b8060048190555050565b610653610ca8565b5f4711610695576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161068c90612114565b60405180910390fd5b5f4790505f3373ffffffffffffffffffffffffffffffffffffffff16826040516106be9061215f565b5f6040518083038185875af1925050503d805f81146106f8576040519150601f19603f3d011682016040523d82523d5f602084013e6106fd565b606091505b5050905080610741576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610738906121bd565b60405180910390fd5b5050565b60606040518060400160405280600881526020017f416b697261204149000000000000000000000000000000000000000000000000815250905090565b5f61079561078e610d26565b8484610d2d565b6001905092915050565b60055481565b6107ad610ca8565b600160035f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555050565b61080d610ca8565b81600581905550806006819055505050565b5f6012600a61082e9190612337565b6305f5e10061083d9190612381565b905090565b5f61084e848484610ef0565b61090b8461085a610d26565b61090685604051806060016040528060288152602001612ce86028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6108bd610d26565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461168e9092919063ffffffff16565b610d2d565b600190509392505050565b5f6012905090565b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610991610ca8565b61099a5f6116f0565b565b6003602052805f5260405f205f915054906101000a900460ff1681565b60095f9054906101000a900460ff1681565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600581526020017f414b495241000000000000000000000000000000000000000000000000000000815250905090565b610a37610ca8565b5f60035f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555050565b60065481565b5f610aa7610aa0610d26565b8484610ef0565b6001905092915050565b60085481565b60045481565b610ac5610ca8565b610ae060c8610ad261081f565b6117b190919063ffffffff16565b8111610b21576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b189061240c565b60405180910390fd5b8060088190555050565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b610bb5610ca8565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610c23576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c1a9061249a565b60405180910390fd5b610c2c816116f0565b50565b610c37610ca8565b6001151560095f9054906101000a900460ff16151503610c8c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c8390612502565b60405180910390fd5b600160095f6101000a81548160ff021916908315150217905550565b610cb0610d26565b73ffffffffffffffffffffffffffffffffffffffff16610cce6109cb565b73ffffffffffffffffffffffffffffffffffffffff1614610d24576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d1b9061256a565b60405180910390fd5b565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610d9b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d92906125f8565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610e09576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e0090612686565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610ee39190611ebd565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610f5e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f5590612714565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610fcc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fc3906127a2565b60405180910390fd5b5f811161100e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161100590612830565b60405180910390fd5b5f60035f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff161580156110ad575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b156113de5760095f9054906101000a900460ff16611100576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110f790612898565b60405180910390fd5b600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16146111ad576008548261116185610943565b61116b91906128b6565b11156111ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111a390612959565b60405180910390fd5b5b5f600554111561129257600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156112615750600960019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156112915761128e6064611280600554856117fa90919063ffffffff16565b6117b190919063ffffffff16565b90505b5b5f600654111561131c57600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361131b57611318606461130a600654856117fa90919063ffffffff16565b6117b190919063ffffffff16565b90505b5b5f61132630610943565b9050600a60149054906101000a900460ff161580156113915750600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b80156113a95750600a60159054906101000a900460ff165b80156113b6575060045481115b156113dc576113c481611871565b5f4790505f8111156113da576113d947611ae8565b5b505b505b5f8111156114dd576114368160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611bea90919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516114d49190611ebd565b60405180910390a35b61152d8260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611c4790919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506115d06115848284611c4790919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611bea90919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6116738486611c4790919063ffffffff16565b6040516116809190611ebd565b60405180910390a350505050565b5f8383111582906116d5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116cc9190611dc3565b60405180910390fd5b505f83856116e39190612977565b9050809150509392505050565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f6117f283836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611c90565b905092915050565b5f80830361180a575f905061186b565b5f82846118179190612381565b905082848261182691906129d7565b14611866576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161185d90612a77565b60405180910390fd5b809150505b92915050565b6001600a60146101000a81548160ff0219169083151502179055505f810315611acb575f600267ffffffffffffffff8111156118b0576118af612a95565b5b6040519080825280602002602001820160405280156118de5781602001602082028036833780820191505090505b50905030815f815181106118f5576118f4612ac2565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600960019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561199a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119be9190612b03565b816001815181106119d2576119d1612ac2565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611a3930600960019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610d2d565b600960019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b8152600401611a9c959493929190612c27565b5f604051808303815f87803b158015611ab3575f80fd5b505af1158015611ac5573d5f803e3d5ffd5b50505050505b5f600a60146101000a81548160ff02191690831515021790555050565b5f60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1682604051611b2e9061215f565b5f6040518083038185875af1925050503d805f8114611b68576040519150601f19603f3d011682016040523d82523d5f602084013e611b6d565b606091505b5050905080611be65760075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f0759dac7fa668d044a7de2b7fd31ccc6f577fdf83cd0441d6ebaba277754db5783604051611bdd9190611ebd565b60405180910390a25b5050565b5f808284611bf891906128b6565b905083811015611c3d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c3490612cc9565b60405180910390fd5b8091505092915050565b5f611c8883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061168e565b905092915050565b5f8083118290611cd6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ccd9190611dc3565b60405180910390fd5b505f8385611ce491906129d7565b9050809150509392505050565b5f80fd5b5f819050919050565b611d0781611cf5565b8114611d11575f80fd5b50565b5f81359050611d2281611cfe565b92915050565b5f60208284031215611d3d57611d3c611cf1565b5b5f611d4a84828501611d14565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611d9582611d53565b611d9f8185611d5d565b9350611daf818560208601611d6d565b611db881611d7b565b840191505092915050565b5f6020820190508181035f830152611ddb8184611d8b565b905092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611e0c82611de3565b9050919050565b611e1c81611e02565b8114611e26575f80fd5b50565b5f81359050611e3781611e13565b92915050565b5f8060408385031215611e5357611e52611cf1565b5b5f611e6085828601611e29565b9250506020611e7185828601611d14565b9150509250929050565b5f8115159050919050565b611e8f81611e7b565b82525050565b5f602082019050611ea85f830184611e86565b92915050565b611eb781611cf5565b82525050565b5f602082019050611ed05f830184611eae565b92915050565b5f60208284031215611eeb57611eea611cf1565b5b5f611ef884828501611e29565b91505092915050565b5f8060408385031215611f1757611f16611cf1565b5b5f611f2485828601611d14565b9250506020611f3585828601611d14565b9150509250929050565b5f805f60608486031215611f5657611f55611cf1565b5b5f611f6386828701611e29565b9350506020611f7486828701611e29565b9250506040611f8586828701611d14565b9150509250925092565b5f60ff82169050919050565b611fa481611f8f565b82525050565b5f602082019050611fbd5f830184611f9b565b92915050565b5f611fcd82611de3565b9050919050565b611fdd81611fc3565b82525050565b5f602082019050611ff65f830184611fd4565b92915050565b61200581611e02565b82525050565b5f60208201905061201e5f830184611ffc565b92915050565b5f806040838503121561203a57612039611cf1565b5b5f61204785828601611e29565b925050602061205885828601611e29565b9150509250929050565b7f5468726573686f6c642063616e6e6f74206265203000000000000000000000005f82015250565b5f612096601583611d5d565b91506120a182612062565b602082019050919050565b5f6020820190508181035f8301526120c38161208a565b9050919050565b7f4e6f20737475636b2045746800000000000000000000000000000000000000005f82015250565b5f6120fe600c83611d5d565b9150612109826120ca565b602082019050919050565b5f6020820190508181035f83015261212b816120f2565b9050919050565b5f81905092915050565b50565b5f61214a5f83612132565b91506121558261213c565b5f82019050919050565b5f6121698261213f565b9150819050919050565b7f43616c6c206661696c65640000000000000000000000000000000000000000005f82015250565b5f6121a7600b83611d5d565b91506121b282612173565b602082019050919050565b5f6020820190508181035f8301526121d48161219b565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b600185111561225d57808604811115612239576122386121db565b5b60018516156122485780820291505b808102905061225685612208565b945061221d565b94509492505050565b5f826122755760019050612330565b81612282575f9050612330565b816001811461229857600281146122a2576122d1565b6001915050612330565b60ff8411156122b4576122b36121db565b5b8360020a9150848211156122cb576122ca6121db565b5b50612330565b5060208310610133831016604e8410600b84101617156123065782820a905083811115612301576123006121db565b5b612330565b6123138484846001612214565b9250905081840481111561232a576123296121db565b5b81810290505b9392505050565b5f61234182611cf5565b915061234c83611f8f565b92506123797fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612266565b905092915050565b5f61238b82611cf5565b915061239683611cf5565b92508282026123a481611cf5565b915082820484148315176123bb576123ba6121db565b5b5092915050565b7f4c696d69742063616e6e6f7420626520746f6f206c6f770000000000000000005f82015250565b5f6123f6601783611d5d565b9150612401826123c2565b602082019050919050565b5f6020820190508181035f830152612423816123ea565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f612484602683611d5d565b915061248f8261242a565b604082019050919050565b5f6020820190508181035f8301526124b181612478565b9050919050565b7f5472616465206c61756e6368656420616c7265616479000000000000000000005f82015250565b5f6124ec601683611d5d565b91506124f7826124b8565b602082019050919050565b5f6020820190508181035f830152612519816124e0565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f612554602083611d5d565b915061255f82612520565b602082019050919050565b5f6020820190508181035f83015261258181612548565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f6125e2602483611d5d565b91506125ed82612588565b604082019050919050565b5f6020820190508181035f83015261260f816125d6565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612670602283611d5d565b915061267b82612616565b604082019050919050565b5f6020820190508181035f83015261269d81612664565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f6126fe602583611d5d565b9150612709826126a4565b604082019050919050565b5f6020820190508181035f83015261272b816126f2565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f61278c602383611d5d565b915061279782612732565b604082019050919050565b5f6020820190508181035f8301526127b981612780565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f61281a602983611d5d565b9150612825826127c0565b604082019050919050565b5f6020820190508181035f8301526128478161280e565b9050919050565b7f54726164696e67206e6f742073746172746564000000000000000000000000005f82015250565b5f612882601383611d5d565b915061288d8261284e565b602082019050919050565b5f6020820190508181035f8301526128af81612876565b9050919050565b5f6128c082611cf5565b91506128cb83611cf5565b92508282019050808211156128e3576128e26121db565b5b92915050565b7f43616e6e6f742065786365656420416b697261206d61782077616c6c657420615f8201527f6d6f756e74000000000000000000000000000000000000000000000000000000602082015250565b5f612943602583611d5d565b915061294e826128e9565b604082019050919050565b5f6020820190508181035f83015261297081612937565b9050919050565b5f61298182611cf5565b915061298c83611cf5565b92508282039050818111156129a4576129a36121db565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6129e182611cf5565b91506129ec83611cf5565b9250826129fc576129fb6129aa565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f612a61602183611d5d565b9150612a6c82612a07565b604082019050919050565b5f6020820190508181035f830152612a8e81612a55565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050612afd81611e13565b92915050565b5f60208284031215612b1857612b17611cf1565b5b5f612b2584828501612aef565b91505092915050565b5f819050919050565b5f819050919050565b5f612b5a612b55612b5084612b2e565b612b37565b611cf5565b9050919050565b612b6a81612b40565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b612ba281611e02565b82525050565b5f612bb38383612b99565b60208301905092915050565b5f602082019050919050565b5f612bd582612b70565b612bdf8185612b7a565b9350612bea83612b8a565b805f5b83811015612c1a578151612c018882612ba8565b9750612c0c83612bbf565b925050600181019050612bed565b5085935050505092915050565b5f60a082019050612c3a5f830188611eae565b612c476020830187612b61565b8181036040830152612c598186612bcb565b9050612c686060830185611ffc565b612c756080830184611eae565b9695505050505050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f612cb3601b83611d5d565b9150612cbe82612c7f565b602082019050919050565b5f6020820190508181035f830152612ce081612ca7565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122091ea603f70b5893201617b647e2d078c5e75994dfe33f94179db7bc7cce3ac5464736f6c634300081a0033