6080604052600160055f6101000a81548160ff02191690831515021790555060196006556019600755600260085560026009556019600a556019600b556019600c555f600d556009600a62000055919062000606565b614e2062000064919062000656565b600e556009600a62000077919062000606565b614e2062000086919062000656565b600f556009600a62000099919062000606565b612711620000a8919062000656565b6010556009600a620000bb919062000606565b61270f620000ca919062000656565b6011555f601360156101000a81548160ff0219169083151502179055505f601360166101000a81548160ff0219169083151502179055503480156200010d575f80fd5b505f6200011f6200044660201b60201c565b9050805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350620001cb6200044660201b60201c565b600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506009600a6200021b919062000606565b620f42406200022b919062000656565b60015f6200023e6200044660201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550600160035f620002906200044d60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550620003bb6200044660201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6009600a62000419919062000606565b620f424062000429919062000656565b604051620004389190620006b1565b60405180910390a3620006cc565b5f33905090565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b6001851115620004fe57808604811115620004d657620004d562000474565b5b6001851615620004e65780820291505b8081029050620004f685620004a1565b9450620004b6565b94509492505050565b5f82620005185760019050620005ea565b8162000527575f9050620005ea565b81600181146200054057600281146200054b5762000581565b6001915050620005ea565b60ff84111562000560576200055f62000474565b5b8360020a9150848211156200057a576200057962000474565b5b50620005ea565b5060208310610133831016604e8410600b8410161715620005bb5782820a905083811115620005b557620005b462000474565b5b620005ea565b620005ca8484846001620004ad565b92509050818404811115620005e457620005e362000474565b5b81810290505b9392505050565b5f819050919050565b5f60ff82169050919050565b5f6200061282620005f1565b91506200061f83620005fa565b92506200064e7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000507565b905092915050565b5f6200066282620005f1565b91506200066f83620005f1565b92508282026200067f81620005f1565b9150828204841483151762000699576200069862000474565b5b5092915050565b620006ab81620005f1565b82525050565b5f602082019050620006c65f830184620006a0565b92915050565b61307980620006da5f395ff3fe60806040526004361061012d575f3560e01c8063751039fc116100aa578063a9059cbb1161006e578063a9059cbb14610394578063bf474bed146103d0578063c876d0b9146103fa578063c9567bf914610424578063dd62ed3e1461043a578063ec1f3f631461047657610134565b8063751039fc146102d65780637d1db4a5146102ec5780638da5cb5b146103165780638f9a55c01461034057806395d89b411461036a57610134565b8063313ce567116100f1578063313ce5671461022e57806351bc3c85146102585780636fc3eaec1461026e57806370a0823114610284578063715018a6146102c057610134565b806306fdde0314610138578063095ea7b3146101625780630faee56f1461019e57806318160ddd146101c857806323b872dd146101f257610134565b3661013457005b5f80fd5b348015610143575f80fd5b5061014c61049e565b6040516101599190612140565b60405180910390f35b34801561016d575f80fd5b50610188600480360381019061018391906121f1565b6104db565b6040516101959190612249565b60405180910390f35b3480156101a9575f80fd5b506101b26104f8565b6040516101bf9190612271565b60405180910390f35b3480156101d3575f80fd5b506101dc6104fe565b6040516101e99190612271565b60405180910390f35b3480156101fd575f80fd5b506102186004803603810190610213919061228a565b610520565b6040516102259190612249565b60405180910390f35b348015610239575f80fd5b506102426105f4565b60405161024f91906122f5565b60405180910390f35b348015610263575f80fd5b5061026c6105fc565b005b348015610279575f80fd5b50610282610694565b005b34801561028f575f80fd5b506102aa60048036038101906102a5919061230e565b6106ad565b6040516102b79190612271565b60405180910390f35b3480156102cb575f80fd5b506102d46106f3565b005b3480156102e1575f80fd5b506102ea610841565b005b3480156102f7575f80fd5b50610300610986565b60405161030d9190612271565b60405180910390f35b348015610321575f80fd5b5061032a61098c565b6040516103379190612348565b60405180910390f35b34801561034b575f80fd5b506103546109b3565b6040516103619190612271565b60405180910390f35b348015610375575f80fd5b5061037e6109b9565b60405161038b9190612140565b60405180910390f35b34801561039f575f80fd5b506103ba60048036038101906103b591906121f1565b6109f6565b6040516103c79190612249565b60405180910390f35b3480156103db575f80fd5b506103e4610a13565b6040516103f19190612271565b60405180910390f35b348015610405575f80fd5b5061040e610a19565b60405161041b9190612249565b60405180910390f35b34801561042f575f80fd5b50610438610a2b565b005b348015610445575f80fd5b50610460600480360381019061045b9190612361565b610f4c565b60405161046d9190612271565b60405180910390f35b348015610481575f80fd5b5061049c6004803603810190610497919061239f565b610fce565b005b60606040518060400160405280600981526020017f44726f7052616461720000000000000000000000000000000000000000000000815250905090565b5f6104ee6104e761105b565b8484611062565b6001905092915050565b60115481565b5f6009600a61050d9190612526565b620f424061051b9190612570565b905090565b5f61052c848484611225565b6105e98461053861105b565b6105e48560405180606001604052806028815260200161301c6028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f61059b61105b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611ba19092919063ffffffff16565b611062565b600190509392505050565b5f6009905090565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661063d61105b565b73ffffffffffffffffffffffffffffffffffffffff161461065c575f80fd5b5f610666306106ad565b90505f81111561067a5761067981611c03565b5b5f4790505f8111156106905761068f81611e6e565b5b5050565b5f4790505f8111156106aa576106a981611e6e565b5b50565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6106fb61105b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610787576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161077e906125fb565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b61084961105b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108d5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108cc906125fb565b60405180910390fd5b6009600a6108e39190612526565b620f42406108f19190612570565b600e819055506009600a6109059190612526565b620f42406109139190612570565b600f819055505f60055f6101000a81548160ff0219169083151502179055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6009600a6109619190612526565b620f424061096f9190612570565b60405161097c9190612271565b60405180910390a1565b600e5481565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600f5481565b60606040518060400160405280600581526020017f4144524f50000000000000000000000000000000000000000000000000000000815250905090565b5f610a09610a0261105b565b8484611225565b6001905092915050565b60105481565b60055f9054906101000a900460ff1681565b610a3361105b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610abf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ab6906125fb565b60405180910390fd5b601360149054906101000a900460ff1615610b0f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b0690612663565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d60125f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610baa3060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a610b979190612526565b620f4240610ba59190612570565b611062565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c14573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c389190612695565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610cbe573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ce29190612695565b6040518363ffffffff1660e01b8152600401610cff9291906126c0565b6020604051808303815f875af1158015610d1b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d3f9190612695565b60135f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610dc6306106ad565b5f80610dd061098c565b426040518863ffffffff1660e01b8152600401610df296959493929190612729565b60606040518083038185885af1158015610e0e573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610e33919061279c565b50505060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b360125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610ed39291906127ec565b6020604051808303815f875af1158015610eef573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f13919061283d565b506001601360166101000a81548160ff0219169083151502179055506001601360146101000a81548160ff021916908315150217905550565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661100f61105b565b73ffffffffffffffffffffffffffffffffffffffff161461102e575f80fd5b600854811115801561104257506009548111155b61104a575f80fd5b806008819055508060098190555050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036110d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110c7906128d8565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361113e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161113590612966565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112189190612271565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611293576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161128a906129f4565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611301576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112f890612a82565b60405180910390fd5b5f8111611343576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161133a90612b10565b60405180910390fd5b5f61134c61098c565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156113ba575061138a61098c565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156118f1576113fb60646113ed600a54600d54116113da576006546113de565b6008545b85611ed790919063ffffffff16565b611f4e90919063ffffffff16565b905060055f9054906101000a900460ff16156115835760125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156114bb575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611582574360045f3273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20541061153f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161153690612bc4565b60405180910390fd5b4360045f3273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b5b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614801561162c575060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b801561167f575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561173957600e548211156116c9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116c090612c2c565b60405180910390fd5b600f54826116d6856106ad565b6116e09190612c4a565b1115611721576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161171890612cc7565b60405180910390fd5b600d5f81548092919061173390612ce5565b91905055505b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156117c157503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b156118055761180260646117f4600b54600d54116117e1576007546117e5565b6009545b85611ed790919063ffffffff16565b611f4e90919063ffffffff16565b90505b5f61180f306106ad565b9050601360159054906101000a900460ff1615801561187a575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b80156118925750601360169054906101000a900460ff165b801561189f575060105481115b80156118ae5750600c54600d54115b156118ef576118d06118cb846118c684601154611f97565b611f97565b611c03565b5f47905066b1a2bc2ec500008111156118ed576118ec47611e6e565b5b505b505b5f8111156119f0576119498160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611faf90919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516119e79190612271565b60405180910390a35b611a408260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461200c90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550611ae3611a97828461200c90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611faf90919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611b86848661200c90919063ffffffff16565b604051611b939190612271565b60405180910390a350505050565b5f838311158290611be8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bdf9190612140565b60405180910390fd5b505f8385611bf69190612d2c565b9050809150509392505050565b6001601360156101000a81548160ff0219169083151502179055505f600267ffffffffffffffff811115611c3a57611c39612d5f565b5b604051908082528060200260200182016040528015611c685781602001602082028036833780820191505090505b50905030815f81518110611c7f57611c7e612d8c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611d23573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611d479190612695565b81600181518110611d5b57611d5a612d8c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611dc13060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611062565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b8152600401611e23959493929190612e70565b5f604051808303815f87803b158015611e3a575f80fd5b505af1158015611e4c573d5f803e3d5ffd5b50505050505f601360156101000a81548160ff02191690831515021790555050565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015611ed3573d5f803e3d5ffd5b5050565b5f808303611ee7575f9050611f48565b5f8284611ef49190612570565b9050828482611f039190612ef5565b14611f43576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f3a90612f95565b60405180910390fd5b809150505b92915050565b5f611f8f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612055565b905092915050565b5f818311611fa55782611fa7565b815b905092915050565b5f808284611fbd9190612c4a565b905083811015612002576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ff990612ffd565b60405180910390fd5b8091505092915050565b5f61204d83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611ba1565b905092915050565b5f808311829061209b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120929190612140565b60405180910390fd5b505f83856120a99190612ef5565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b838110156120ed5780820151818401526020810190506120d2565b5f8484015250505050565b5f601f19601f8301169050919050565b5f612112826120b6565b61211c81856120c0565b935061212c8185602086016120d0565b612135816120f8565b840191505092915050565b5f6020820190508181035f8301526121588184612108565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61218d82612164565b9050919050565b61219d81612183565b81146121a7575f80fd5b50565b5f813590506121b881612194565b92915050565b5f819050919050565b6121d0816121be565b81146121da575f80fd5b50565b5f813590506121eb816121c7565b92915050565b5f806040838503121561220757612206612160565b5b5f612214858286016121aa565b9250506020612225858286016121dd565b9150509250929050565b5f8115159050919050565b6122438161222f565b82525050565b5f60208201905061225c5f83018461223a565b92915050565b61226b816121be565b82525050565b5f6020820190506122845f830184612262565b92915050565b5f805f606084860312156122a1576122a0612160565b5b5f6122ae868287016121aa565b93505060206122bf868287016121aa565b92505060406122d0868287016121dd565b9150509250925092565b5f60ff82169050919050565b6122ef816122da565b82525050565b5f6020820190506123085f8301846122e6565b92915050565b5f6020828403121561232357612322612160565b5b5f612330848285016121aa565b91505092915050565b61234281612183565b82525050565b5f60208201905061235b5f830184612339565b92915050565b5f806040838503121561237757612376612160565b5b5f612384858286016121aa565b9250506020612395858286016121aa565b9150509250929050565b5f602082840312156123b4576123b3612160565b5b5f6123c1848285016121dd565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b600185111561244c57808604811115612428576124276123ca565b5b60018516156124375780820291505b8081029050612445856123f7565b945061240c565b94509492505050565b5f82612464576001905061251f565b81612471575f905061251f565b81600181146124875760028114612491576124c0565b600191505061251f565b60ff8411156124a3576124a26123ca565b5b8360020a9150848211156124ba576124b96123ca565b5b5061251f565b5060208310610133831016604e8410600b84101617156124f55782820a9050838111156124f0576124ef6123ca565b5b61251f565b6125028484846001612403565b92509050818404811115612519576125186123ca565b5b81810290505b9392505050565b5f612530826121be565b915061253b836122da565b92506125687fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612455565b905092915050565b5f61257a826121be565b9150612585836121be565b9250828202612593816121be565b915082820484148315176125aa576125a96123ca565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6125e56020836120c0565b91506125f0826125b1565b602082019050919050565b5f6020820190508181035f830152612612816125d9565b9050919050565b7f74726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f61264d6017836120c0565b915061265882612619565b602082019050919050565b5f6020820190508181035f83015261267a81612641565b9050919050565b5f8151905061268f81612194565b92915050565b5f602082840312156126aa576126a9612160565b5b5f6126b784828501612681565b91505092915050565b5f6040820190506126d35f830185612339565b6126e06020830184612339565b9392505050565b5f819050919050565b5f819050919050565b5f61271361270e612709846126e7565b6126f0565b6121be565b9050919050565b612723816126f9565b82525050565b5f60c08201905061273c5f830189612339565b6127496020830188612262565b612756604083018761271a565b612763606083018661271a565b6127706080830185612339565b61277d60a0830184612262565b979650505050505050565b5f81519050612796816121c7565b92915050565b5f805f606084860312156127b3576127b2612160565b5b5f6127c086828701612788565b93505060206127d186828701612788565b92505060406127e286828701612788565b9150509250925092565b5f6040820190506127ff5f830185612339565b61280c6020830184612262565b9392505050565b61281c8161222f565b8114612826575f80fd5b50565b5f8151905061283781612813565b92915050565b5f6020828403121561285257612851612160565b5b5f61285f84828501612829565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f6128c26024836120c0565b91506128cd82612868565b604082019050919050565b5f6020820190508181035f8301526128ef816128b6565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f6129506022836120c0565b915061295b826128f6565b604082019050919050565b5f6020820190508181035f83015261297d81612944565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f6129de6025836120c0565b91506129e982612984565b604082019050919050565b5f6020820190508181035f830152612a0b816129d2565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f612a6c6023836120c0565b9150612a7782612a12565b604082019050919050565b5f6020820190508181035f830152612a9981612a60565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f612afa6029836120c0565b9150612b0582612aa0565b604082019050919050565b5f6020820190508181035f830152612b2781612aee565b9050919050565b7f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c5f8201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b60208201527f20616c6c6f7765642e0000000000000000000000000000000000000000000000604082015250565b5f612bae6049836120c0565b9150612bb982612b2e565b606082019050919050565b5f6020820190508181035f830152612bdb81612ba2565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e000000000000005f82015250565b5f612c166019836120c0565b9150612c2182612be2565b602082019050919050565b5f6020820190508181035f830152612c4381612c0a565b9050919050565b5f612c54826121be565b9150612c5f836121be565b9250828201905080821115612c7757612c766123ca565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e0000000000005f82015250565b5f612cb1601a836120c0565b9150612cbc82612c7d565b602082019050919050565b5f6020820190508181035f830152612cde81612ca5565b9050919050565b5f612cef826121be565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612d2157612d206123ca565b5b600182019050919050565b5f612d36826121be565b9150612d41836121be565b9250828203905081811115612d5957612d586123ca565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b612deb81612183565b82525050565b5f612dfc8383612de2565b60208301905092915050565b5f602082019050919050565b5f612e1e82612db9565b612e288185612dc3565b9350612e3383612dd3565b805f5b83811015612e63578151612e4a8882612df1565b9750612e5583612e08565b925050600181019050612e36565b5085935050505092915050565b5f60a082019050612e835f830188612262565b612e90602083018761271a565b8181036040830152612ea28186612e14565b9050612eb16060830185612339565b612ebe6080830184612262565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f612eff826121be565b9150612f0a836121be565b925082612f1a57612f19612ec8565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f612f7f6021836120c0565b9150612f8a82612f25565b604082019050919050565b5f6020820190508181035f830152612fac81612f73565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f612fe7601b836120c0565b9150612ff282612fb3565b602082019050919050565b5f6020820190508181035f83015261301481612fdb565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220a00cbfb823d0f55f21b6f1e6eb8b43a9c937b867827ffe9a6f09af2077b4745564736f6c63430008140033