60806040526002600060146101000a81548160ff021916908360ff1602179055506001600060156101000a81548160ff021916908360ff1602179055506001600060166101000a81548160ff021916908360ff1602179055506001600060176101000a81548160ff021916908360ff16021790555060026001556000600260006101000a81548160ff021916908360ff1602179055506000600260016101000a81548160ff021916908360ff160217905550603f6002806101000a81548161ffff021916908361ffff1602179055506025600260046101000a81548161ffff021916908361ffff1602179055506000600260066101000a81548161ffff021916908361ffff160217905550600260069054906101000a900461ffff16600260049054906101000a900461ffff1660028054906101000a900461ffff1662000147919062000b55565b62000153919062000b55565b600260086101000a81548161ffff021916908361ffff160217905550730fa47cf6bcfea4e3952860219a2f149a7a3d8d086002600a6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550730517ea7f690b242c2ce4acd07010cd5004e4a14b600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506009600a62000229919062000cfd565b6301406f406200023a919062000d4e565b6005556009600a6200024d919062000cfd565b6301406f406200025e919062000d4e565b600655620186a0600a6009600a62000277919062000cfd565b6301406f4062000288919062000d4e565b62000294919062000d4e565b620002a0919062000dc8565b600755620186a061037b6009600a620002ba919062000cfd565b6301406f40620002cb919062000d4e565b620002d7919062000d4e565b620002e3919062000dc8565b6008556064603f600754620002f9919062000d4e565b62000305919062000d4e565b600955737a250d5630b4cf539739df2c5dacb4c659f2488d600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000601260016101000a81548160ff0219169083151502179055503480156200038557600080fd5b5033806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505033600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000606460056009600a6200041f919062000cfd565b6301406f4062000430919062000d4e565b6200043c919062000d4e565b62000448919062000dc8565b9050806009600a6200045b919062000cfd565b6301406f406200046c919062000d4e565b62000478919062000e00565b600a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040516200055a919062000e4c565b60405180910390a380600a60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600a60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054604051620006a7919062000e4c565b60405180910390a36001600c60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600c60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600c6000737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600c60006002600a9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600c6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600d60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600d60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600d6000737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600d60006002600a9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600d6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505062000e69565b600061ffff82169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000b628262000b18565b915062000b6f8362000b18565b9250828201905061ffff81111562000b8c5762000b8b62000b26565b5b92915050565b60008160011c9050919050565b6000808291508390505b600185111562000bf15780860481111562000bc95762000bc862000b26565b5b600185161562000bd95780820291505b808102905062000be98562000b92565b945062000ba9565b94509492505050565b60008262000c0c576001905062000cdf565b8162000c1c576000905062000cdf565b816001811462000c35576002811462000c405762000c76565b600191505062000cdf565b60ff84111562000c555762000c5462000b26565b5b8360020a91508482111562000c6f5762000c6e62000b26565b5b5062000cdf565b5060208310610133831016604e8410600b841016171562000cb05782820a90508381111562000caa5762000ca962000b26565b5b62000cdf565b62000cbf848484600162000b9f565b9250905081840481111562000cd95762000cd862000b26565b5b81810290505b9392505050565b6000819050919050565b600060ff82169050919050565b600062000d0a8262000ce6565b915062000d178362000cf0565b925062000d467fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000bfa565b905092915050565b600062000d5b8262000ce6565b915062000d688362000ce6565b925082820262000d788162000ce6565b9150828204841483151762000d925762000d9162000b26565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600062000dd58262000ce6565b915062000de28362000ce6565b92508262000df55762000df462000d99565b5b828204905092915050565b600062000e0d8262000ce6565b915062000e1a8362000ce6565b925082820390508181111562000e355762000e3462000b26565b5b92915050565b62000e468162000ce6565b82525050565b600060208201905062000e63600083018462000e3b565b92915050565b6152708062000e796000396000f3fe6080604052600436106101e75760003560e01c80636373ea6911610102578063a6097b0a11610095578063dd62ed3e11610064578063dd62ed3e146106f1578063e8078d941461072e578063f2fde38b14610738578063f8b45b0514610761576101ee565b8063a6097b0a14610635578063a9059cbb1461065e578063c04a54141461069b578063c3f70b52146106c6576101ee565b806376a39c28116100d157806376a39c28146105795780638d3e6e40146105a25780638da5cb5b146105df57806395d89b411461060a576101ee565b80636373ea69146104cd57806370a08231146104fa578063715018a61461053757806375f0a8741461054e576101ee565b8063368f48001161017a5780634d4ce935116101495780634d4ce935146104135780634fcd24461461043e57806357ff135a146104675780635a90a49e14610490576101ee565b8063368f48001461036b57806342966c681461039457806346b89834146103bd57806347062402146103e8576101ee565b806323b872dd116101b657806323b872dd146102af5780632b14ca56146102ec5780632fb528ba14610317578063313ce56714610340576101ee565b806306fdde03146101f3578063095ea7b31461021e578063147c9f6d1461025b57806318160ddd14610284576101ee565b366101ee57005b600080fd5b3480156101ff57600080fd5b5061020861078c565b6040516102159190613bcb565b60405180910390f35b34801561022a57600080fd5b5061024560048036038101906102409190613c86565b6107c9565b6040516102529190613ce1565b60405180910390f35b34801561026757600080fd5b50610282600480360381019061027d9190613cfc565b6108bb565b005b34801561029057600080fd5b50610299610caa565b6040516102a69190613d5e565b60405180910390f35b3480156102bb57600080fd5b506102d660048036038101906102d19190613d79565b610cce565b6040516102e39190613ce1565b60405180910390f35b3480156102f857600080fd5b50610301610ed8565b60405161030e9190613de8565b60405180910390f35b34801561032357600080fd5b5061033e60048036038101906103399190613e5b565b610eef565b005b34801561034c57600080fd5b506103556110d5565b6040516103629190613de8565b60405180910390f35b34801561037757600080fd5b50610392600480360381019061038d9190613ed5565b6110de565b005b3480156103a057600080fd5b506103bb60048036038101906103b69190613f15565b61129c565b005b3480156103c957600080fd5b506103d2611348565b6040516103df9190613d5e565b60405180910390f35b3480156103f457600080fd5b506103fd611352565b60405161040a9190613de8565b60405180910390f35b34801561041f57600080fd5b50610428611369565b6040516104359190613d5e565b60405180910390f35b34801561044a57600080fd5b5061046560048036038101906104609190613f42565b611373565b005b34801561047357600080fd5b5061048e60048036038101906104899190613f82565b61148d565b005b34801561049c57600080fd5b506104b760048036038101906104b29190613fd5565b61166a565b6040516104c49190613ce1565b60405180910390f35b3480156104d957600080fd5b506104e26116c0565b6040516104f193929190614011565b60405180910390f35b34801561050657600080fd5b50610521600480360381019061051c9190613fd5565b611701565b60405161052e9190613d5e565b60405180910390f35b34801561054357600080fd5b5061054c61174a565b005b34801561055a57600080fd5b50610563611853565b6040516105709190614057565b60405180910390f35b34801561058557600080fd5b506105a0600480360381019061059b9190614072565b61187d565b005b3480156105ae57600080fd5b506105c960048036038101906105c49190613fd5565b6119e6565b6040516105d69190613ce1565b60405180910390f35b3480156105eb57600080fd5b506105f4611a3c565b6040516106019190614057565b60405180910390f35b34801561061657600080fd5b5061061f611a65565b60405161062c9190613bcb565b60405180910390f35b34801561064157600080fd5b5061065c60048036038101906106579190614101565b611aa2565b005b34801561066a57600080fd5b5061068560048036038101906106809190613c86565b611ce1565b6040516106929190613ce1565b60405180910390f35b3480156106a757600080fd5b506106b0611d3e565b6040516106bd9190614057565b60405180910390f35b3480156106d257600080fd5b506106db611d68565b6040516106e89190613d5e565b60405180910390f35b3480156106fd57600080fd5b5061071860048036038101906107139190614168565b611d72565b6040516107259190613d5e565b60405180910390f35b610736611df9565b005b34801561074457600080fd5b5061075f600480360381019061075a91906141e6565b6124e6565b005b34801561076d57600080fd5b506107766125ee565b6040516107839190613d5e565b60405180910390f35b60606040518060400160405280600c81526020017f50726f6a656374204d6972610000000000000000000000000000000000000000815250905090565b600081600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516108a99190613d5e565b60405180910390a36001905092915050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610949576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109409061425f565b60405180910390fd5b601160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156109ed5750601160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015610a435750601160008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b610a82576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a79906142cb565b60405180910390fd5b826002600a6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550505050565b60006009600a610cba919061444d565b6301406f40610cc99190614498565b905090565b6000610cd9846125f8565b610d18576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d0f90614526565b60405180910390fd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600b60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610ec45781600b60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610e439190614546565b600b60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b610ecf8484846126d3565b90509392505050565b6000600260019054906101000a900460ff16905090565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610f7d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f749061425f565b60405180910390fd5b6001601260016101000a81548160ff02191690831515021790555060648260ff161115610fdf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fd6906145c6565b60405180910390fd5b600060648360ff16600a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546110319190614498565b61103b9190614615565b90506009600a61104b919061444d565b81111561105c5761105b81612c5f565b5b81156110b5576000479050600081116110aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110a190614692565b60405180910390fd5b6110b347612e7e565b505b506000601260016101000a81548160ff0219169083151502179055505050565b60006009905090565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461116c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111639061425f565b60405180910390fd5b600060016103e88461ffff166009600a611186919061444d565b6301406f406111959190614498565b61119f9190614498565b6111a99190614615565b6111b391906146b2565b90506005548110156111fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111f190614732565b60405180910390fd5b80600581905550600060016103e88461ffff166009600a61121b919061444d565b6301406f4061122a9190614498565b6112349190614498565b61123e9190614615565b61124891906146b2565b905060065481101561128f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112869061479e565b60405180910390fd5b8060068190555050505050565b60006112a733611701565b9050808211156112ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112e39061480a565b60405180910390fd5b6112f6338361300a565b3373ffffffffffffffffffffffffffffffffffffffff167ffd38818f5291bf0bb3a2a48aadc06ba8757865d1dabd804585338aab3009dcb68360405161133c9190613d5e565b60405180910390a25050565b6000600754905090565b6000600260009054906101000a900460ff16905090565b6000600854905090565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611401576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113f89061425f565b60405180910390fd5b6005818361140f919061482a565b60ff161115611453576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161144a906148ab565b60405180910390fd5b81600260006101000a81548160ff021916908360ff16021790555080600260016101000a81548160ff021916908360ff1602179055505050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461151b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115129061425f565b60405180910390fd5b80806115245750815b156115b757601160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156115b6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115ad90614917565b60405180910390fd5b5b81600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080600d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550505050565b6000600c60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600080600060028054906101000a900461ffff16600260049054906101000a900461ffff16600260069054906101000a900461ffff16925092509250909192565b6000600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146117d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117cf9061425f565b60405180910390fd5b60008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc68616360006040516118499190614057565b60405180910390a1565b60006002600a9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461190b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119029061425f565b60405180910390fd5b600081838561191a9190614937565b6119249190614937565b905060008161ffff161161196d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611964906149b9565b60405180910390fd5b83600260066101000a81548161ffff021916908361ffff160217905550826002806101000a81548161ffff021916908361ffff16021790555081600260046101000a81548161ffff021916908361ffff16021790555080600260086101000a81548161ffff021916908361ffff16021790555050505050565b6000600d60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600381526020017f4d54540000000000000000000000000000000000000000000000000000000000815250905090565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611b30576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b279061425f565b60405180910390fd5b8263ffffffff168463ffffffff166009600a611b4c919061444d565b6301406f40611b5b9190614498565b611b659190614498565b611b6f9190614615565b6007819055508063ffffffff168263ffffffff166009600a611b91919061444d565b6301406f40611ba09190614498565b611baa9190614498565b611bb49190614615565b6008819055506007546008541015611c01576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bf890614a25565b60405180910390fd5b620186a06009600a611c13919061444d565b6301406f40611c229190614498565b611c2c9190614615565b60085411611c6f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c6690614a91565b60405180910390fd5b60646009600a611c7f919061444d565b6301406f40611c8e9190614498565b611c989190614615565b60085410611cdb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cd290614afd565b60405180910390fd5b50505050565b6000611cec336125f8565b611d2b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d2290614526565b60405180910390fd5b611d363384846126d3565b905092915050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000600554905090565b6000600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611e87576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e7e9061425f565b60405180910390fd5b6001601260016101000a81548160ff021916908315150217905550600073ffffffffffffffffffffffffffffffffffffffff16601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611f33576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f2a90614b69565b60405180910390fd5b601260009054906101000a900460ff1615611f83576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f7a90614bd5565b60405180910390fd5b6000341180611f925750600047115b611fd1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fc890614c41565b60405180910390fd5b6000600a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205411612053576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161204a90614cad565b60405180910390fd5b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156120c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120e49190614ce2565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561216d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121919190614ce2565b6040518363ffffffff1660e01b81526004016121ae929190614d0f565b6020604051808303816000875af11580156121cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f19190614ce2565b601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061227c600a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205447600061312a565b600954600a6000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546122ef9190614546565b925050819055506000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166040516024016040516020818303038152906040527ffff6cae9000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516123c19190614d7f565b6000604051808303816000865af19150503d80600081146123fe576040519150601f19603f3d011682016040523d82523d6000602084013e612403565b606091505b5050905080612447576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161243e90614de2565b60405180910390fd5b8060116000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506124c8613218565b506000601260016101000a81548160ff021916908315150217905550565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612574576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161256b9061425f565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc686163816040516125e39190614e61565b60405180910390a150565b6000600654905090565b60008060009050601260009054906101000a900460ff161561261d57600190506126ca565b600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156126bf5750600d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156126c957600190505b5b80915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603612743576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161273a90614ec8565b60405180910390fd5b601260009054906101000a900460ff1661283957600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156127f95750600d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b612838576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161282f90614526565b60405180910390fd5b5b601260019054906101000a900460ff1615801561289f5750601160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156128ad576128ac613302565b5b600154431080156128c057506004544310155b80156129155750601160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b15612989573273ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614612988576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161297f90614f34565b60405180910390fd5b5b3073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156129f157503073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015612a49575060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15612a9957612a5984848461350a565b612a98576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a8f90614fa0565b60405180910390fd5b5b6000612aa68585856136a1565b905060008184612ab69190614546565b905083600a60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612b039190614546565b600a60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508160096000828254612b5891906146b2565b9250508190555080600a60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612baa91906146b2565b600a60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef86604051612c4a9190613d5e565b60405180910390a36001925050509392505050565b612c6881613951565b6000600267ffffffffffffffff811115612c8557612c84614fc0565b5b604051908082528060200260200182016040528015612cb35781602001602082028036833780820191505090505b5090503081600081518110612ccb57612cca614fef565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015612d72573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612d969190614ce2565b81600181518110612daa57612da9614fef565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401612e48959493929190615117565b600060405180830381600087803b158015612e6257600080fd5b505af1158015612e76573d6000803e3d6000fd5b505050505050565b6000600260049054906101000a900461ffff1660028054906101000a900461ffff16612eaa9190614937565b905060008161ffff1611156130065760008161ffff1660028054906101000a900461ffff1661ffff1684612ede9190614498565b612ee89190614615565b905060008261ffff16600260049054906101000a900461ffff1661ffff1685612f119190614498565b612f1b9190614615565b90506000821115612f90576002600a9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f19350505050158015612f8e573d6000803e3d6000fd5b505b600081111561300357600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015613001573d6000803e3d6000fd5b505b50505b5050565b60008111156131265780600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546130629190614546565b9250508190555080600a60008073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546130b891906146b2565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161311d9190613d5e565b60405180910390a35b5050565b6000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050811561315c57600090505b61316584613951565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71984308760008087426040518863ffffffff1660e01b81526004016131cc96959493929190615171565b60606040518083038185885af11580156131ea573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061320f91906151e7565b50505050505050565b606460026009600a61322a919061444d565b6301406f406132399190614498565b6132439190614498565b61324d9190614615565b600581905550606460026009600a613265919061444d565b6301406f406132749190614498565b61327e9190614498565b6132889190614615565b6006819055506001601260006101000a81548160ff02191690831515021790555043600481905550600060179054906101000a900460ff1660ff16600060169054906101000a900460ff1660ff166004546001546132e691906146b2565b6132f091906146b2565b6132fa91906146b2565b600181905550565b6001601260016101000a81548160ff0219169083151502179055506000600954905060075481101580156133425750601260009054906101000a900460ff165b156134ec5760085481106133565760085490505b600060028060089054906101000a900461ffff1661ffff16600260069054906101000a900461ffff1661ffff168461338e9190614498565b6133989190614615565b6133a29190614615565b9050600081836133b29190614546565b90506009600a6133c2919061444d565b8111156134d057600047905083600a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461341d91906146b2565b9250508190555061342d82612c5f565b836009600082825461343f9190614546565b92505081905550600081476134549190614546565b90506000600260069054906101000a900461ffff1661ffff1611156134cd576000600260089054906101000a900461ffff1661ffff16600260069054906101000a900461ffff1661ffff16836134aa9190614498565b6134b49190614615565b90506134bf85613951565b6134cb8582600061312a565b505b50505b600047905060008111156134e8576134e781612e7e565b5b5050505b506000601260016101000a81548160ff021916908315150217905550565b60008060019050601260009054906101000a900460ff1680156135775750600d60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156135cd5750600d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15613696576005548311156135e55760009050613695565b601160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615801561368a575060065483600a60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461368891906146b2565b115b1561369457600090505b5b5b809150509392505050565b600080601260009054906101000a900460ff1615806137095750600c60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b8061375d5750600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b1561376b5760009050613946565b601160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156138c557600060179054906101000a900460ff1660ff16600060169054906101000a900460ff1660ff166004546137f091906146b2565b6137fa91906146b2565b4310613831576064600260009054906101000a900460ff1660ff16846138209190614498565b61382a9190614615565b90506138c0565b600060169054906101000a900460ff1660ff1660045461385191906146b2565b4310613888576064600060159054906101000a900460ff1660ff16846138779190614498565b6138819190614615565b90506138bf565b60045443106138be576064600060149054906101000a900460ff1660ff16846138b19190614498565b6138bb9190614615565b90505b5b5b613945565b601160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615613944576064600260019054906101000a900460ff1660ff16846139379190614498565b6139419190614615565b90505b5b5b809150509392505050565b80600b60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015613b38577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600b60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9257fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff604051613b2f9190613d5e565b60405180910390a35b50565b600081519050919050565b600082825260208201905092915050565b60005b83811015613b75578082015181840152602081019050613b5a565b60008484015250505050565b6000601f19601f8301169050919050565b6000613b9d82613b3b565b613ba78185613b46565b9350613bb7818560208601613b57565b613bc081613b81565b840191505092915050565b60006020820190508181036000830152613be58184613b92565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000613c1d82613bf2565b9050919050565b613c2d81613c12565b8114613c3857600080fd5b50565b600081359050613c4a81613c24565b92915050565b6000819050919050565b613c6381613c50565b8114613c6e57600080fd5b50565b600081359050613c8081613c5a565b92915050565b60008060408385031215613c9d57613c9c613bed565b5b6000613cab85828601613c3b565b9250506020613cbc85828601613c71565b9150509250929050565b60008115159050919050565b613cdb81613cc6565b82525050565b6000602082019050613cf66000830184613cd2565b92915050565b600080600060608486031215613d1557613d14613bed565b5b6000613d2386828701613c3b565b9350506020613d3486828701613c3b565b9250506040613d4586828701613c3b565b9150509250925092565b613d5881613c50565b82525050565b6000602082019050613d736000830184613d4f565b92915050565b600080600060608486031215613d9257613d91613bed565b5b6000613da086828701613c3b565b9350506020613db186828701613c3b565b9250506040613dc286828701613c71565b9150509250925092565b600060ff82169050919050565b613de281613dcc565b82525050565b6000602082019050613dfd6000830184613dd9565b92915050565b613e0c81613dcc565b8114613e1757600080fd5b50565b600081359050613e2981613e03565b92915050565b613e3881613cc6565b8114613e4357600080fd5b50565b600081359050613e5581613e2f565b92915050565b60008060408385031215613e7257613e71613bed565b5b6000613e8085828601613e1a565b9250506020613e9185828601613e46565b9150509250929050565b600061ffff82169050919050565b613eb281613e9b565b8114613ebd57600080fd5b50565b600081359050613ecf81613ea9565b92915050565b60008060408385031215613eec57613eeb613bed565b5b6000613efa85828601613ec0565b9250506020613f0b85828601613ec0565b9150509250929050565b600060208284031215613f2b57613f2a613bed565b5b6000613f3984828501613c71565b91505092915050565b60008060408385031215613f5957613f58613bed565b5b6000613f6785828601613e1a565b9250506020613f7885828601613e1a565b9150509250929050565b600080600060608486031215613f9b57613f9a613bed565b5b6000613fa986828701613c3b565b9350506020613fba86828701613e46565b9250506040613fcb86828701613e46565b9150509250925092565b600060208284031215613feb57613fea613bed565b5b6000613ff984828501613c3b565b91505092915050565b61400b81613e9b565b82525050565b60006060820190506140266000830186614002565b6140336020830185614002565b6140406040830184614002565b949350505050565b61405181613c12565b82525050565b600060208201905061406c6000830184614048565b92915050565b60008060006060848603121561408b5761408a613bed565b5b600061409986828701613ec0565b93505060206140aa86828701613ec0565b92505060406140bb86828701613ec0565b9150509250925092565b600063ffffffff82169050919050565b6140de816140c5565b81146140e957600080fd5b50565b6000813590506140fb816140d5565b92915050565b6000806000806080858703121561411b5761411a613bed565b5b6000614129878288016140ec565b945050602061413a878288016140ec565b935050604061414b878288016140ec565b925050606061415c878288016140ec565b91505092959194509250565b6000806040838503121561417f5761417e613bed565b5b600061418d85828601613c3b565b925050602061419e85828601613c3b565b9150509250929050565b60006141b382613bf2565b9050919050565b6141c3816141a8565b81146141ce57600080fd5b50565b6000813590506141e0816141ba565b92915050565b6000602082840312156141fc576141fb613bed565b5b600061420a848285016141d1565b91505092915050565b7f4f6e6c79206f776e65722063616e2063616c6c20746869730000000000000000600082015250565b6000614249601883613b46565b915061425482614213565b602082019050919050565b600060208201905081810360008301526142788161423c565b9050919050565b7f4c502063616e6e6f74206265207461782077616c6c6574000000000000000000600082015250565b60006142b5601783613b46565b91506142c08261427f565b602082019050919050565b600060208201905081810360008301526142e4816142a8565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b60018511156143715780860481111561434d5761434c6142eb565b5b600185161561435c5780820291505b808102905061436a8561431a565b9450614331565b94509492505050565b60008261438a5760019050614446565b816143985760009050614446565b81600181146143ae57600281146143b8576143e7565b6001915050614446565b60ff8411156143ca576143c96142eb565b5b8360020a9150848211156143e1576143e06142eb565b5b50614446565b5060208310610133831016604e8410600b841016171561441c5782820a905083811115614417576144166142eb565b5b614446565b6144298484846001614327565b925090508184048111156144405761443f6142eb565b5b81810290505b9392505050565b600061445882613c50565b915061446383613dcc565b92506144907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848461437a565b905092915050565b60006144a382613c50565b91506144ae83613c50565b92508282026144bc81613c50565b915082820484148315176144d3576144d26142eb565b5b5092915050565b7f54726164696e67206e6f74206f70656e00000000000000000000000000000000600082015250565b6000614510601083613b46565b915061451b826144da565b602082019050919050565b6000602082019050818103600083015261453f81614503565b9050919050565b600061455182613c50565b915061455c83613c50565b9250828203905081811115614574576145736142eb565b5b92915050565b7f43616e6e6f742073776170206d6f7265207468616e2031303025000000000000600082015250565b60006145b0601a83613b46565b91506145bb8261457a565b602082019050919050565b600060208201905081810360008301526145df816145a3565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061462082613c50565b915061462b83613c50565b92508261463b5761463a6145e6565b5b828204905092915050565b7f4e6f204554480000000000000000000000000000000000000000000000000000600082015250565b600061467c600683613b46565b915061468782614646565b602082019050919050565b600060208201905081810360008301526146ab8161466f565b9050919050565b60006146bd82613c50565b91506146c883613c50565b92508282019050808211156146e0576146df6142eb565b5b92915050565b7f747820746f6f206c6f7700000000000000000000000000000000000000000000600082015250565b600061471c600a83613b46565b9150614727826146e6565b602082019050919050565b6000602082019050818103600083015261474b8161470f565b9050919050565b7f77616c6c657420746f6f206c6f77000000000000000000000000000000000000600082015250565b6000614788600e83613b46565b915061479382614752565b602082019050919050565b600060208201905081810360008301526147b78161477b565b9050919050565b7f62616c616e636520746f6f206c6f770000000000000000000000000000000000600082015250565b60006147f4600f83613b46565b91506147ff826147be565b602082019050919050565b60006020820190508181036000830152614823816147e7565b9050919050565b600061483582613dcc565b915061484083613dcc565b9250828201905060ff811115614859576148586142eb565b5b92915050565b7f526f756e647472697020746f6f20686967680000000000000000000000000000600082015250565b6000614895601283613b46565b91506148a08261485f565b602082019050919050565b600060208201905081810360008301526148c481614888565b9050919050565b7f43616e6e6f74206578656d7074204c5000000000000000000000000000000000600082015250565b6000614901601083613b46565b915061490c826148cb565b602082019050919050565b60006020820190508181036000830152614930816148f4565b9050919050565b600061494282613e9b565b915061494d83613e9b565b9250828201905061ffff811115614967576149666142eb565b5b92915050565b7f416c6c2063616e6e6f7420626520300000000000000000000000000000000000600082015250565b60006149a3600f83613b46565b91506149ae8261496d565b602082019050919050565b600060208201905081810360008301526149d281614996565b9050919050565b7f4d696e2f4d6178206572726f7200000000000000000000000000000000000000600082015250565b6000614a0f600d83613b46565b9150614a1a826149d9565b602082019050919050565b60006020820190508181036000830152614a3e81614a02565b9050919050565b7f4d617820746f6f206c6f77000000000000000000000000000000000000000000600082015250565b6000614a7b600b83613b46565b9150614a8682614a45565b602082019050919050565b60006020820190508181036000830152614aaa81614a6e565b9050919050565b7f4d617820746f6f20686967680000000000000000000000000000000000000000600082015250565b6000614ae7600c83613b46565b9150614af282614ab1565b602082019050919050565b60006020820190508181036000830152614b1681614ada565b9050919050565b7f4c50206578697374730000000000000000000000000000000000000000000000600082015250565b6000614b53600983613b46565b9150614b5e82614b1d565b602082019050919050565b60006020820190508181036000830152614b8281614b46565b9050919050565b7f74726164696e67206973206f70656e0000000000000000000000000000000000600082015250565b6000614bbf600f83613b46565b9150614bca82614b89565b602082019050919050565b60006020820190508181036000830152614bee81614bb2565b9050919050565b7f4e6f2045544820696e20636f6e7472616374206f72206d657373616765000000600082015250565b6000614c2b601d83613b46565b9150614c3682614bf5565b602082019050919050565b60006020820190508181036000830152614c5a81614c1e565b9050919050565b7f4e6f20746f6b656e7320696e20636f6e74726163740000000000000000000000600082015250565b6000614c97601583613b46565b9150614ca282614c61565b602082019050919050565b60006020820190508181036000830152614cc681614c8a565b9050919050565b600081519050614cdc81613c24565b92915050565b600060208284031215614cf857614cf7613bed565b5b6000614d0684828501614ccd565b91505092915050565b6000604082019050614d246000830185614048565b614d316020830184614048565b9392505050565b600081519050919050565b600081905092915050565b6000614d5982614d38565b614d638185614d43565b9350614d73818560208601613b57565b80840191505092915050565b6000614d8b8284614d4e565b915081905092915050565b7f4661696c656420616464696e67206c6971756964697479000000000000000000600082015250565b6000614dcc601783613b46565b9150614dd782614d96565b602082019050919050565b60006020820190508181036000830152614dfb81614dbf565b9050919050565b6000819050919050565b6000614e27614e22614e1d84613bf2565b614e02565b613bf2565b9050919050565b6000614e3982614e0c565b9050919050565b6000614e4b82614e2e565b9050919050565b614e5b81614e40565b82525050565b6000602082019050614e766000830184614e52565b92915050565b7f4e6f207472616e73666572732066726f6d205a65726f2077616c6c6574000000600082015250565b6000614eb2601d83613b46565b9150614ebd82614e7c565b602082019050919050565b60006020820190508181036000830152614ee181614ea5565b9050919050565b7f4d455620626c6f636b6564000000000000000000000000000000000000000000600082015250565b6000614f1e600b83613b46565b9150614f2982614ee8565b602082019050919050565b60006020820190508181036000830152614f4d81614f11565b9050919050565b7f54582065786365656473206c696d697473000000000000000000000000000000600082015250565b6000614f8a601183613b46565b9150614f9582614f54565b602082019050919050565b60006020820190508181036000830152614fb981614f7d565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000819050919050565b600061504361503e6150398461501e565b614e02565b613c50565b9050919050565b61505381615028565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61508e81613c12565b82525050565b60006150a08383615085565b60208301905092915050565b6000602082019050919050565b60006150c482615059565b6150ce8185615064565b93506150d983615075565b8060005b8381101561510a5781516150f18882615094565b97506150fc836150ac565b9250506001810190506150dd565b5085935050505092915050565b600060a08201905061512c6000830188613d4f565b615139602083018761504a565b818103604083015261514b81866150b9565b905061515a6060830185614048565b6151676080830184613d4f565b9695505050505050565b600060c0820190506151866000830189614048565b6151936020830188613d4f565b6151a0604083018761504a565b6151ad606083018661504a565b6151ba6080830185614048565b6151c760a0830184613d4f565b979650505050505050565b6000815190506151e181613c5a565b92915050565b600080600060608486031215615200576151ff613bed565b5b600061520e868287016151d2565b935050602061521f868287016151d2565b9250506040615230868287016151d2565b915050925092509256fea26469706673582212207d8f4c352a79c57fa2942c1a166494b88d836ea051a8716f618590a1f415f70a64736f6c63430008130033