60806040526019600655601960075560646002620000226200068460201b60201c565b6200002e919062000717565b6200003a919062000791565b60085560646002620000516200068460201b60201c565b6200005d919062000717565b62000069919062000791565b6009556127106001620000816200068460201b60201c565b6200008d919062000717565b62000099919062000791565b600a556000600c60146101000a81548160ff0219169083151502179055506000600c60156101000a81548160ff0219169083151502179055506001600c60166101000a81548160ff021916908315150217905550348015620000fa57600080fd5b5060006200010d620006ad60201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3506012600a620001bb91906200092a565b64019b45a500620001cd919062000717565b60016000620001e1620006ad60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550737a250d5630b4cf539739df2c5dacb4c659f2488d600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002e2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003089190620009e5565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000392573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003b89190620009e5565b6040518363ffffffff1660e01b8152600401620003d792919062000a28565b6020604051808303816000875af1158015620003f7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200041d9190620009e5565b600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506200046d620006ad60201b60201c565b600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160036000620004c3620006b560201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600360003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160036000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620005f6620006ad60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6012600a6200065591906200092a565b64019b45a50062000667919062000717565b60405162000676919062000a66565b60405180910390a362000a83565b60006012600a6200069691906200092a565b64019b45a500620006a8919062000717565b905090565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006200072482620006de565b91506200073183620006de565b92508282026200074181620006de565b915082820484148315176200075b576200075a620006e8565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006200079e82620006de565b9150620007ab83620006de565b925082620007be57620007bd62000762565b5b828204905092915050565b60008160011c9050919050565b6000808291508390505b600185111562000828578086048111156200080057620007ff620006e8565b5b6001851615620008105780820291505b80810290506200082085620007c9565b9450620007e0565b94509492505050565b60008262000843576001905062000916565b8162000853576000905062000916565b81600181146200086c57600281146200087757620008ad565b600191505062000916565b60ff8411156200088c576200088b620006e8565b5b8360020a915084821115620008a657620008a5620006e8565b5b5062000916565b5060208310610133831016604e8410600b8410161715620008e75782820a905083811115620008e157620008e0620006e8565b5b62000916565b620008f68484846001620007d6565b9250905081840481111562000910576200090f620006e8565b5b81810290505b9392505050565b600060ff82169050919050565b60006200093782620006de565b915062000944836200091d565b9250620009737fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000831565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620009ad8262000980565b9050919050565b620009bf81620009a0565b8114620009cb57600080fd5b50565b600081519050620009df81620009b4565b92915050565b600060208284031215620009fe57620009fd6200097b565b5b600062000a0e84828501620009ce565b91505092915050565b62000a2281620009a0565b82525050565b600060408201905062000a3f600083018562000a17565b62000a4e602083018462000a17565b9392505050565b62000a6081620006de565b82525050565b600060208201905062000a7d600083018462000a55565b92915050565b612e888062000a936000396000f3fe6080604052600436106101445760003560e01c8063715018a6116100b65780639d0014b11161006f5780639d0014b114610421578063a9059cbb1461044a578063bf474bed14610487578063c18bc195146104b2578063c9567bf9146104db578063dd62ed3e146104f25761014b565b8063715018a614610347578063751039fc1461035e5780637d1db4a5146103755780638da5cb5b146103a05780638f9a55c0146103cb57806395d89b41146103f65761014b565b8063313ce56711610108578063313ce5671461024b57806349bd5a5e1461027657806351bc3c85146102a157806361231f77146102b85780636256d181146102e157806370a082311461030a5761014b565b806306fdde0314610150578063095ea7b31461017b5780631694505e146101b857806318160ddd146101e357806323b872dd1461020e5761014b565b3661014b57005b600080fd5b34801561015c57600080fd5b5061016561052f565b6040516101729190611f97565b60405180910390f35b34801561018757600080fd5b506101a2600480360381019061019d9190612052565b61056c565b6040516101af91906120ad565b60405180910390f35b3480156101c457600080fd5b506101cd61058a565b6040516101da9190612127565b60405180910390f35b3480156101ef57600080fd5b506101f86105b0565b6040516102059190612151565b60405180910390f35b34801561021a57600080fd5b506102356004803603810190610230919061216c565b6105d5565b60405161024291906120ad565b60405180910390f35b34801561025757600080fd5b506102606106ae565b60405161026d91906121db565b60405180910390f35b34801561028257600080fd5b5061028b6106b7565b6040516102989190612205565b60405180910390f35b3480156102ad57600080fd5b506102b66106dd565b005b3480156102c457600080fd5b506102df60048036038101906102da9190612220565b61077a565b005b3480156102ed57600080fd5b5061030860048036038101906103039190612260565b610821565b005b34801561031657600080fd5b50610331600480360381019061032c919061228d565b6108de565b60405161033e9190612151565b60405180910390f35b34801561035357600080fd5b5061035c610927565b005b34801561036a57600080fd5b50610373610a7a565b005b34801561038157600080fd5b5061038a610bad565b6040516103979190612151565b60405180910390f35b3480156103ac57600080fd5b506103b5610bb3565b6040516103c29190612205565b60405180910390f35b3480156103d757600080fd5b506103e0610bdc565b6040516103ed9190612151565b60405180910390f35b34801561040257600080fd5b5061040b610be2565b6040516104189190611f97565b60405180910390f35b34801561042d57600080fd5b5061044860048036038101906104439190612260565b610c1f565b005b34801561045657600080fd5b50610471600480360381019061046c9190612052565b610cbe565b60405161047e91906120ad565b60405180910390f35b34801561049357600080fd5b5061049c610cdc565b6040516104a99190612151565b60405180910390f35b3480156104be57600080fd5b506104d960048036038101906104d49190612260565b610ce2565b005b3480156104e757600080fd5b506104f0610d9f565b005b3480156104fe57600080fd5b50610519600480360381019061051491906122ba565b610ea7565b6040516105269190612151565b60405180910390f35b60606040518060400160405280600a81526020017f4241425920534841524b00000000000000000000000000000000000000000000815250905090565b6000610580610579610f2e565b8484610f36565b6001905092915050565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006012600a6105c0919061245c565b64019b45a5006105d091906124a7565b905090565b60006105e28484846110ff565b6106a3846105ee610f2e565b61069e85604051806060016040528060288152602001612e2b60289139600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610654610f2e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119ef9092919063ffffffff16565b610f36565b600190509392505050565b60006012905090565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661071e610f2e565b73ffffffffffffffffffffffffffffffffffffffff161461073e57600080fd5b6000610749306108de565b9050600081111561075e5761075d81611a53565b5b600047905060008111156107765761077581611ccc565b5b5050565b610782610f2e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461080f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161080690612535565b60405180910390fd5b81600681905550806007819055505050565b610829610f2e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108b6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108ad90612535565b60405180910390fd5b6064816108c16105b0565b6108cb91906124a7565b6108d59190612584565b60088190555050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61092f610f2e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146109bc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109b390612535565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610a82610f2e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b0f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b0690612535565b60405180910390fd5b6012600a610b1d919061245c565b64019b45a500610b2d91906124a7565b6008819055506012600a610b41919061245c565b64019b45a500610b5191906124a7565b6009819055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6012600a610b86919061245c565b64019b45a500610b9691906124a7565b604051610ba39190612151565b60405180910390a1565b60085481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60095481565b60606040518060400160405280600681526020017f42534841524b0000000000000000000000000000000000000000000000000000815250905090565b610c27610f2e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610cb4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cab90612535565b60405180910390fd5b80600a8190555050565b6000610cd2610ccb610f2e565b84846110ff565b6001905092915050565b600a5481565b610cea610f2e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d77576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d6e90612535565b60405180910390fd5b606481610d826105b0565b610d8c91906124a7565b610d969190612584565b60098190555050565b610da7610f2e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e34576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e2b90612535565b60405180910390fd5b60001515600c60149054906101000a900460ff16151514610e8a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e8190612601565b60405180910390fd5b6001600c60146101000a81548160ff021916908315150217905550565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610fa5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f9c90612693565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611014576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161100b90612725565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516110f29190612151565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361116e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611165906127b7565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036111dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111d490612849565b60405180910390fd5b60008111611220576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611217906128db565b60405180910390fd5b600061122a610bb3565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156112985750611268610bb3565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156117325760011515600c60149054906101000a900460ff161515146112f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112ea9061296d565b60405180910390fd5b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156113975750600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b6113d6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113cd906129d9565b60405180910390fd5b6113fe60646113f060065485611d3890919063ffffffff16565b611db290919063ffffffff16565b9050600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156114ab5750600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156115015750600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156115a45760085482111561154b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161154290612a45565b60405180910390fd5b60095482611558856108de565b6115629190612a65565b11156115a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161159a90612ae5565b60405180910390fd5b5b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614801561162d57503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b1561165d5761165a606461164c60075485611d3890919063ffffffff16565b611db290919063ffffffff16565b90505b6000611668306108de565b905060085481106116795760085490505b600c60159054906101000a900460ff161580156116e35750600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b80156116fb5750600c60169054906101000a900460ff165b80156117085750600a5481115b156117305761171681611a53565b6000479050600081111561172e5761172d47611ccc565b5b505b505b60008111156118365761178d81600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611dfc90919063ffffffff16565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161182d9190612151565b60405180910390a35b61188882600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e5a90919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061192f6118e18284611e5a90919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611dfc90919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6119d48486611e5a90919063ffffffff16565b6040516119e19190612151565b60405180910390a350505050565b6000838311158290611a37576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a2e9190611f97565b60405180910390fd5b5060008385611a469190612b05565b9050809150509392505050565b6001600c60156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611a8b57611a8a612b39565b5b604051908082528060200260200182016040528015611ab95781602001602082028036833780820191505090505b5090503081600081518110611ad157611ad0612b68565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611b78573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b9c9190612bac565b81600181518110611bb057611baf612b68565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611c1730600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610f36565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611c7b959493929190612cd2565b600060405180830381600087803b158015611c9557600080fd5b505af1158015611ca9573d6000803e3d6000fd5b50505050506000600c60156101000a81548160ff02191690831515021790555050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611d34573d6000803e3d6000fd5b5050565b6000808303611d4a5760009050611dac565b60008284611d5891906124a7565b9050828482611d679190612584565b14611da7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d9e90612d9e565b60405180910390fd5b809150505b92915050565b6000611df483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611ea4565b905092915050565b6000808284611e0b9190612a65565b905083811015611e50576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e4790612e0a565b60405180910390fd5b8091505092915050565b6000611e9c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506119ef565b905092915050565b60008083118290611eeb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ee29190611f97565b60405180910390fd5b5060008385611efa9190612584565b9050809150509392505050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611f41578082015181840152602081019050611f26565b60008484015250505050565b6000601f19601f8301169050919050565b6000611f6982611f07565b611f738185611f12565b9350611f83818560208601611f23565b611f8c81611f4d565b840191505092915050565b60006020820190508181036000830152611fb18184611f5e565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611fe982611fbe565b9050919050565b611ff981611fde565b811461200457600080fd5b50565b60008135905061201681611ff0565b92915050565b6000819050919050565b61202f8161201c565b811461203a57600080fd5b50565b60008135905061204c81612026565b92915050565b6000806040838503121561206957612068611fb9565b5b600061207785828601612007565b92505060206120888582860161203d565b9150509250929050565b60008115159050919050565b6120a781612092565b82525050565b60006020820190506120c2600083018461209e565b92915050565b6000819050919050565b60006120ed6120e86120e384611fbe565b6120c8565b611fbe565b9050919050565b60006120ff826120d2565b9050919050565b6000612111826120f4565b9050919050565b61212181612106565b82525050565b600060208201905061213c6000830184612118565b92915050565b61214b8161201c565b82525050565b60006020820190506121666000830184612142565b92915050565b60008060006060848603121561218557612184611fb9565b5b600061219386828701612007565b93505060206121a486828701612007565b92505060406121b58682870161203d565b9150509250925092565b600060ff82169050919050565b6121d5816121bf565b82525050565b60006020820190506121f060008301846121cc565b92915050565b6121ff81611fde565b82525050565b600060208201905061221a60008301846121f6565b92915050565b6000806040838503121561223757612236611fb9565b5b60006122458582860161203d565b92505060206122568582860161203d565b9150509250929050565b60006020828403121561227657612275611fb9565b5b60006122848482850161203d565b91505092915050565b6000602082840312156122a3576122a2611fb9565b5b60006122b184828501612007565b91505092915050565b600080604083850312156122d1576122d0611fb9565b5b60006122df85828601612007565b92505060206122f085828601612007565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b60018511156123805780860481111561235c5761235b6122fa565b5b600185161561236b5780820291505b808102905061237985612329565b9450612340565b94509492505050565b6000826123995760019050612455565b816123a75760009050612455565b81600181146123bd57600281146123c7576123f6565b6001915050612455565b60ff8411156123d9576123d86122fa565b5b8360020a9150848211156123f0576123ef6122fa565b5b50612455565b5060208310610133831016604e8410600b841016171561242b5782820a905083811115612426576124256122fa565b5b612455565b6124388484846001612336565b9250905081840481111561244f5761244e6122fa565b5b81810290505b9392505050565b60006124678261201c565b9150612472836121bf565b925061249f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612389565b905092915050565b60006124b28261201c565b91506124bd8361201c565b92508282026124cb8161201c565b915082820484148315176124e2576124e16122fa565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600061251f602083611f12565b915061252a826124e9565b602082019050919050565b6000602082019050818103600083015261254e81612512565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061258f8261201c565b915061259a8361201c565b9250826125aa576125a9612555565b5b828204905092915050565b7f54726164696e6720697320656e61626c65642100000000000000000000000000600082015250565b60006125eb601383611f12565b91506125f6826125b5565b602082019050919050565b6000602082019050818103600083015261261a816125de565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b600061267d602483611f12565b915061268882612621565b604082019050919050565b600060208201905081810360008301526126ac81612670565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b600061270f602283611f12565b915061271a826126b3565b604082019050919050565b6000602082019050818103600083015261273e81612702565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006127a1602583611f12565b91506127ac82612745565b604082019050919050565b600060208201905081810360008301526127d081612794565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612833602383611f12565b915061283e826127d7565b604082019050919050565b6000602082019050818103600083015261286281612826565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b60006128c5602983611f12565b91506128d082612869565b604082019050919050565b600060208201905081810360008301526128f4816128b8565b9050919050565b7f45524332303a2054686973206163636f756e742063616e6e6f742073656e642060008201527f746f6b656e7320756e74696c2074726164696e6720697320656e61626c656400602082015250565b6000612957603f83611f12565b9150612962826128fb565b604082019050919050565b600060208201905081810360008301526129868161294a565b9050919050565b7f45524332303a2057616c6c657420697320626c61636b6c697374210000000000600082015250565b60006129c3601b83611f12565b91506129ce8261298d565b602082019050919050565b600060208201905081810360008301526129f2816129b6565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e00000000000000600082015250565b6000612a2f601983611f12565b9150612a3a826129f9565b602082019050919050565b60006020820190508181036000830152612a5e81612a22565b9050919050565b6000612a708261201c565b9150612a7b8361201c565b9250828201905080821115612a9357612a926122fa565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e000000000000600082015250565b6000612acf601a83611f12565b9150612ada82612a99565b602082019050919050565b60006020820190508181036000830152612afe81612ac2565b9050919050565b6000612b108261201c565b9150612b1b8361201c565b9250828203905081811115612b3357612b326122fa565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050612ba681611ff0565b92915050565b600060208284031215612bc257612bc1611fb9565b5b6000612bd084828501612b97565b91505092915050565b6000819050919050565b6000612bfe612bf9612bf484612bd9565b6120c8565b61201c565b9050919050565b612c0e81612be3565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b612c4981611fde565b82525050565b6000612c5b8383612c40565b60208301905092915050565b6000602082019050919050565b6000612c7f82612c14565b612c898185612c1f565b9350612c9483612c30565b8060005b83811015612cc5578151612cac8882612c4f565b9750612cb783612c67565b925050600181019050612c98565b5085935050505092915050565b600060a082019050612ce76000830188612142565b612cf46020830187612c05565b8181036040830152612d068186612c74565b9050612d1560608301856121f6565b612d226080830184612142565b9695505050505050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000612d88602183611f12565b9150612d9382612d2c565b604082019050919050565b60006020820190508181036000830152612db781612d7b565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000612df4601b83611f12565b9150612dff82612dbe565b602082019050919050565b60006020820190508181036000830152612e2381612de7565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220c3c1181fe70ce660620a84b305bfa2f22ad768931dc145e8686883c4e57960c764736f6c63430008110033