60806040525f60055f6101000a81548160ff0219169083151502179055505f6006555f6007555f6008555f600955600a8055600a600b555f600c555f600d556008600a61004c91906105c0565b6301312d0061005b919061060a565b600e556008600a61006c91906105c0565b6301312d0061007b919061060a565b600f556008600a61008c91906105c0565b625b8d8061009a919061060a565b6010556008600a6100ab91906105c0565b625b8d806100b9919061060a565b6011555f601360156101000a81548160ff0219169083151502179055505f601360166101000a81548160ff0219169083151502179055503480156100fb575f5ffd5b505f61010b61042160201b60201c565b9050805f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3506101b561042160201b60201c565b600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506008600a61020391906105c0565b633b9aca00610212919061060a565b60015f61022361042160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550600160035f61027361042860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555061039c61042160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6008600a6103f891906105c0565b633b9aca00610407919061060a565b604051610414919061065a565b60405180910390a3610673565b5f33905090565b5f5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f5f8291508390505b60018511156104d1578086048111156104ad576104ac61044f565b5b60018516156104bc5780820291505b80810290506104ca8561047c565b9450610491565b94509492505050565b5f826104e957600190506105a4565b816104f6575f90506105a4565b816001811461050c576002811461051657610545565b60019150506105a4565b60ff8411156105285761052761044f565b5b8360020a91508482111561053f5761053e61044f565b5b506105a4565b5060208310610133831016604e8410600b841016171561057a5782820a9050838111156105755761057461044f565b5b6105a4565b6105878484846001610488565b9250905081840481111561059e5761059d61044f565b5b81810290505b9392505050565b5f819050919050565b5f60ff82169050919050565b5f6105ca826105ab565b91506105d5836105b4565b92506106027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846104da565b905092915050565b5f610614826105ab565b915061061f836105ab565b925082820261062d816105ab565b915082820484148315176106445761064361044f565b5b5092915050565b610654816105ab565b82525050565b5f60208201905061066d5f83018461064b565b92915050565b612fe0806106805f395ff3fe608060405260043610610138575f3560e01c80637d1db4a5116100aa578063bf474bed1161006e578063bf474bed146103ef578063c36956a014610419578063c876d0b914610443578063c9567bf91461046d578063dd62ed3e14610483578063f4293890146104bf5761013f565b80637d1db4a51461030b5780638da5cb5b146103355780638f9a55c01461035f57806395d89b4114610389578063a9059cbb146103b35761013f565b806323b872dd116100fc57806323b872dd14610227578063313ce5671461026357806351bc3c851461028d57806370a08231146102a3578063715018a6146102df578063751039fc146102f55761013f565b806306fdde0314610143578063095ea7b31461016d5780630c193045146101a95780630faee56f146101d357806318160ddd146101fd5761013f565b3661013f57005b5f5ffd5b34801561014e575f5ffd5b506101576104d5565b60405161016491906120f8565b60405180910390f35b348015610178575f5ffd5b50610193600480360381019061018e91906121a9565b610512565b6040516101a09190612201565b60405180910390f35b3480156101b4575f5ffd5b506101bd61052f565b6040516101ca9190612229565b60405180910390f35b3480156101de575f5ffd5b506101e7610535565b6040516101f49190612229565b60405180910390f35b348015610208575f5ffd5b5061021161053b565b60405161021e9190612229565b60405180910390f35b348015610232575f5ffd5b5061024d60048036038101906102489190612242565b61055e565b60405161025a9190612201565b60405180910390f35b34801561026e575f5ffd5b50610277610632565b60405161028491906122ad565b60405180910390f35b348015610298575f5ffd5b506102a161063a565b005b3480156102ae575f5ffd5b506102c960048036038101906102c491906122c6565b6106bb565b6040516102d69190612229565b60405180910390f35b3480156102ea575f5ffd5b506102f3610701565b005b348015610300575f5ffd5b50610309610851565b005b348015610316575f5ffd5b5061031f6109aa565b60405161032c9190612229565b60405180910390f35b348015610340575f5ffd5b506103496109b0565b6040516103569190612300565b60405180910390f35b34801561036a575f5ffd5b506103736109d7565b6040516103809190612229565b60405180910390f35b348015610394575f5ffd5b5061039d6109dd565b6040516103aa91906120f8565b60405180910390f35b3480156103be575f5ffd5b506103d960048036038101906103d491906121a9565b610a1a565b6040516103e69190612201565b60405180910390f35b3480156103fa575f5ffd5b50610403610a37565b6040516104109190612229565b60405180910390f35b348015610424575f5ffd5b5061042d610a3d565b60405161043a9190612229565b60405180910390f35b34801561044e575f5ffd5b50610457610a43565b6040516104649190612201565b60405180910390f35b348015610478575f5ffd5b50610481610a55565b005b34801561048e575f5ffd5b506104a960048036038101906104a49190612319565b610f78565b6040516104b69190612229565b60405180910390f35b3480156104ca575f5ffd5b506104d3610ffa565b005b60606040518060400160405280600581526020017f4445584945000000000000000000000000000000000000000000000000000000815250905090565b5f61052561051e611013565b848461101a565b6001905092915050565b600a5481565b60115481565b5f6008600a61054a91906124b3565b633b9aca0061055991906124fd565b905090565b5f61056a8484846111dd565b61062784610576611013565b61062285604051806060016040528060288152602001612f836028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6105d9611013565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611b559092919063ffffffff16565b61101a565b600190509392505050565b5f6008905090565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661067b611013565b73ffffffffffffffffffffffffffffffffffffffff161461069a575f5ffd5b5f6106a4306106bb565b90505f8111156106b8576106b781611bb7565b5b50565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610709611013565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610796576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078d90612588565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f5f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610859611013565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108e6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108dd90612588565b60405180910390fd5b6008600a6108f491906124b3565b633b9aca0061090391906124fd565b600e819055506008600a61091791906124b3565b633b9aca0061092691906124fd565b600f819055505f60055f6101000a81548160ff0219169083151502179055506014600b819055506014600a819055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6008600a61098491906124b3565b633b9aca0061099391906124fd565b6040516109a09190612229565b60405180910390a1565b600e5481565b5f5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600f5481565b60606040518060400160405280600581526020017f4445584945000000000000000000000000000000000000000000000000000000815250905090565b5f610a2d610a26611013565b84846111dd565b6001905092915050565b60105481565b600b5481565b60055f9054906101000a900460ff1681565b610a5d611013565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610aea576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ae190612588565b60405180910390fd5b601360149054906101000a900460ff1615610b3a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b31906125f0565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d60125f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610bd63060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166008600a610bc291906124b3565b633b9aca00610bd191906124fd565b61101a565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c40573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c649190612622565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610cea573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d0e9190612622565b6040518363ffffffff1660e01b8152600401610d2b92919061264d565b6020604051808303815f875af1158015610d47573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d6b9190612622565b60135f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610df2306106bb565b5f5f610dfc6109b0565b426040518863ffffffff1660e01b8152600401610e1e969594939291906126b6565b60606040518083038185885af1158015610e3a573d5f5f3e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610e5f9190612729565b50505060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b360125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610eff929190612779565b6020604051808303815f875af1158015610f1b573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f3f91906127ca565b506001601360166101000a81548160ff0219169083151502179055506001601360146101000a81548160ff021916908315150217905550565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f4790505f8111156110105761100f81611e40565b5b50565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611088576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161107f90612865565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036110f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110ed906128f3565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516111d09190612229565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361124b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161124290612981565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036112b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112b090612a0f565b60405180910390fd5b5f81116112fb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112f290612a9d565b60405180910390fd5b5f5f90506113076109b0565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415801561137557506113456109b0565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156118a55760055f9054906101000a900460ff16156115005760125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015611438575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156114ff574360045f3273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054106114bc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114b390612b2b565b60405180910390fd5b4360045f3273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b5b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156115a9575060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156115fc575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b156116b657600e54821115611646576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161163d90612b93565b60405180910390fd5b600f5482611653856106bb565b61165d9190612bb1565b111561169e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161169590612c2e565b60405180910390fd5b600d5f8154809291906116b090612c4c565b91905055505b6116f260646116e4600a54600d54116116d1576006546116d5565b6008545b85611ea990919063ffffffff16565b611f2090919063ffffffff16565b905060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614801561177c57503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b156117c0576117bd60646117af600b54600d541161179c576007546117a0565b6009545b85611ea990919063ffffffff16565b611f2090919063ffffffff16565b90505b5f6117ca306106bb565b9050601360159054906101000a900460ff16158015611835575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b801561184d5750601360169054906101000a900460ff165b801561185a575060105481115b80156118695750600c54600d54115b156118a35761188b6118868461188184601154611f69565b611f69565b611bb7565b5f4790505f8111156118a1576118a047611e40565b5b505b505b5f8111156119a4576118fd8160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611f8190919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161199b9190612229565b60405180910390a35b6119f48260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611fde90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550611a97611a4b8284611fde90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611f8190919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611b3a8486611fde90919063ffffffff16565b604051611b479190612229565b60405180910390a350505050565b5f838311158290611b9c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b9391906120f8565b60405180910390fd5b505f8385611baa9190612c93565b9050809150509392505050565b6001601360156101000a81548160ff0219169083151502179055505f810315611e2357601360149054906101000a900460ff1615611e23575f600267ffffffffffffffff811115611c0b57611c0a612cc6565b5b604051908082528060200260200182016040528015611c395781602001602082028036833780820191505090505b50905030815f81518110611c5057611c4f612cf3565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611cf4573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611d189190612622565b81600181518110611d2c57611d2b612cf3565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611d923060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff168461101a565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b8152600401611df4959493929190612dd7565b5f604051808303815f87803b158015611e0b575f5ffd5b505af1158015611e1d573d5f5f3e3d5ffd5b50505050505b5f601360156101000a81548160ff02191690831515021790555050565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015611ea5573d5f5f3e3d5ffd5b5050565b5f5f8303611eb9575f9050611f1a565b5f8284611ec691906124fd565b9050828482611ed59190612e5c565b14611f15576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f0c90612efc565b60405180910390fd5b809150505b92915050565b5f611f6183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612027565b905092915050565b5f818311611f775782611f79565b815b905092915050565b5f5f8284611f8f9190612bb1565b905083811015611fd4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fcb90612f64565b60405180910390fd5b8091505092915050565b5f61201f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611b55565b905092915050565b5f5f8311829061206d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161206491906120f8565b60405180910390fd5b505f838561207b9190612e5c565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6120ca82612088565b6120d48185612092565b93506120e48185602086016120a2565b6120ed816120b0565b840191505092915050565b5f6020820190508181035f83015261211081846120c0565b905092915050565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6121458261211c565b9050919050565b6121558161213b565b811461215f575f5ffd5b50565b5f813590506121708161214c565b92915050565b5f819050919050565b61218881612176565b8114612192575f5ffd5b50565b5f813590506121a38161217f565b92915050565b5f5f604083850312156121bf576121be612118565b5b5f6121cc85828601612162565b92505060206121dd85828601612195565b9150509250929050565b5f8115159050919050565b6121fb816121e7565b82525050565b5f6020820190506122145f8301846121f2565b92915050565b61222381612176565b82525050565b5f60208201905061223c5f83018461221a565b92915050565b5f5f5f6060848603121561225957612258612118565b5b5f61226686828701612162565b935050602061227786828701612162565b925050604061228886828701612195565b9150509250925092565b5f60ff82169050919050565b6122a781612292565b82525050565b5f6020820190506122c05f83018461229e565b92915050565b5f602082840312156122db576122da612118565b5b5f6122e884828501612162565b91505092915050565b6122fa8161213b565b82525050565b5f6020820190506123135f8301846122f1565b92915050565b5f5f6040838503121561232f5761232e612118565b5b5f61233c85828601612162565b925050602061234d85828601612162565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f5f8291508390505b60018511156123d9578086048111156123b5576123b4612357565b5b60018516156123c45780820291505b80810290506123d285612384565b9450612399565b94509492505050565b5f826123f157600190506124ac565b816123fe575f90506124ac565b8160018114612414576002811461241e5761244d565b60019150506124ac565b60ff8411156124305761242f612357565b5b8360020a91508482111561244757612446612357565b5b506124ac565b5060208310610133831016604e8410600b84101617156124825782820a90508381111561247d5761247c612357565b5b6124ac565b61248f8484846001612390565b925090508184048111156124a6576124a5612357565b5b81810290505b9392505050565b5f6124bd82612176565b91506124c883612292565b92506124f57fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846123e2565b905092915050565b5f61250782612176565b915061251283612176565b925082820261252081612176565b9150828204841483151761253757612536612357565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f612572602083612092565b915061257d8261253e565b602082019050919050565b5f6020820190508181035f83015261259f81612566565b9050919050565b7f74726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f6125da601783612092565b91506125e5826125a6565b602082019050919050565b5f6020820190508181035f830152612607816125ce565b9050919050565b5f8151905061261c8161214c565b92915050565b5f6020828403121561263757612636612118565b5b5f6126448482850161260e565b91505092915050565b5f6040820190506126605f8301856122f1565b61266d60208301846122f1565b9392505050565b5f819050919050565b5f819050919050565b5f6126a061269b61269684612674565b61267d565b612176565b9050919050565b6126b081612686565b82525050565b5f60c0820190506126c95f8301896122f1565b6126d6602083018861221a565b6126e360408301876126a7565b6126f060608301866126a7565b6126fd60808301856122f1565b61270a60a083018461221a565b979650505050505050565b5f815190506127238161217f565b92915050565b5f5f5f606084860312156127405761273f612118565b5b5f61274d86828701612715565b935050602061275e86828701612715565b925050604061276f86828701612715565b9150509250925092565b5f60408201905061278c5f8301856122f1565b612799602083018461221a565b9392505050565b6127a9816121e7565b81146127b3575f5ffd5b50565b5f815190506127c4816127a0565b92915050565b5f602082840312156127df576127de612118565b5b5f6127ec848285016127b6565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f61284f602483612092565b915061285a826127f5565b604082019050919050565b5f6020820190508181035f83015261287c81612843565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f6128dd602283612092565b91506128e882612883565b604082019050919050565b5f6020820190508181035f83015261290a816128d1565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f61296b602583612092565b915061297682612911565b604082019050919050565b5f6020820190508181035f8301526129988161295f565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f6129f9602383612092565b9150612a048261299f565b604082019050919050565b5f6020820190508181035f830152612a26816129ed565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f612a87602983612092565b9150612a9282612a2d565b604082019050919050565b5f6020820190508181035f830152612ab481612a7b565b9050919050565b7f4f6e6c79206f6e65207472616e736665722070657220626c6f636b20616c6c6f5f8201527f7765642e00000000000000000000000000000000000000000000000000000000602082015250565b5f612b15602483612092565b9150612b2082612abb565b604082019050919050565b5f6020820190508181035f830152612b4281612b09565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e000000000000005f82015250565b5f612b7d601983612092565b9150612b8882612b49565b602082019050919050565b5f6020820190508181035f830152612baa81612b71565b9050919050565b5f612bbb82612176565b9150612bc683612176565b9250828201905080821115612bde57612bdd612357565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e0000000000005f82015250565b5f612c18601a83612092565b9150612c2382612be4565b602082019050919050565b5f6020820190508181035f830152612c4581612c0c565b9050919050565b5f612c5682612176565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612c8857612c87612357565b5b600182019050919050565b5f612c9d82612176565b9150612ca883612176565b9250828203905081811115612cc057612cbf612357565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b612d528161213b565b82525050565b5f612d638383612d49565b60208301905092915050565b5f602082019050919050565b5f612d8582612d20565b612d8f8185612d2a565b9350612d9a83612d3a565b805f5b83811015612dca578151612db18882612d58565b9750612dbc83612d6f565b925050600181019050612d9d565b5085935050505092915050565b5f60a082019050612dea5f83018861221a565b612df760208301876126a7565b8181036040830152612e098186612d7b565b9050612e1860608301856122f1565b612e25608083018461221a565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f612e6682612176565b9150612e7183612176565b925082612e8157612e80612e2f565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f612ee6602183612092565b9150612ef182612e8c565b604082019050919050565b5f6020820190508181035f830152612f1381612eda565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f612f4e601b83612092565b9150612f5982612f1a565b602082019050919050565b5f6020820190508181035f830152612f7b81612f42565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220df41e7b09b2b54310cea507f7a5006a910358400ebe0671dc7ec4721a98f689364736f6c634300081b0033