60c06040526001600b60006101000a81548160ff0219169083151502179055506000600b60016101000a81548160ff0219169083151502179055506000600b60026101000a81548160ff0219169083151502179055506001600b60036101000a81548160ff0219169083151502179055506001600f60006101000a81548160ff0219169083151502179055503480156200009857600080fd5b506040518060400160405280600381526020017f54415400000000000000000000000000000000000000000000000000000000008152506040518060400160405280601481526020017f545255544820414c4f4e4520545249554d50485300000000000000000000000081525081600390805190602001906200011d92919062000bec565b5080600490805190602001906200013692919062000bec565b50505060006200014b620006b060201b60201c565b905080600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3506000737a250d5630b4cf539739df2c5dacb4c659f2488d905062000216816001620006b860201b60201c565b8073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff16815250508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000296573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002bc919062000d06565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000324573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200034a919062000d06565b6040518363ffffffff1660e01b81526004016200036992919062000d49565b6020604051808303816000875af115801562000389573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003af919062000d06565b73ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff1681525050620003f760a0516001620006b860201b60201c565b6200040c60a0516001620007b560201b60201c565b6000601490506000806000601490506000806000620004306200085660201b60201c565b600a6200043e919062000f10565b620f42406200044e919062000f61565b9050620004606200085660201b60201c565b600a6200046e919062000f10565b614e206200047d919062000f61565b600881905550620004936200085660201b60201c565b600a620004a1919062000f10565b614e20620004b0919062000f61565b600a81905550612710600a82620004c8919062000f61565b620004d4919062000ff1565b60098190555086601181905550856012819055508460138190555060135460125460115462000504919062001029565b62000510919062001029565b60108190555083601581905550826016819055508160178190555060175460165460155462000540919062001029565b6200054c919062001029565b60148190555073f75657c99f940b566736dab6bc7ab4e5ae639da8600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073f75657c99f940b566736dab6bc7ab4e5ae639da8600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506200061e620006106200085f60201b60201c565b60016200088960201b60201c565b620006313060016200088960201b60201c565b6200064661dead60016200088960201b60201c565b620006686200065a6200085f60201b60201c565b6001620006b860201b60201c565b6200067b306001620006b860201b60201c565b6200069061dead6001620006b860201b60201c565b620006a23382620009d660201b60201c565b5050505050505050620012b9565b600033905090565b620006c8620006b060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146200075a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200075190620010e7565b60405180910390fd5b80601d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b80601e60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b60006012905090565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b62000899620006b060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146200092b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200092290620010e7565b60405180910390fd5b80601c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df782604051620009ca919062001126565b60405180910390a25050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000a48576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000a3f9062001193565b60405180910390fd5b62000a5c6000838362000b8460201b60201c565b62000a788160025462000b8960201b6200288c1790919060201c565b60028190555062000ad6816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205462000b8960201b6200288c1790919060201c565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405162000b789190620011c6565b60405180910390a35050565b505050565b600080828462000b9a919062001029565b90508381101562000be2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000bd99062001233565b60405180910390fd5b8091505092915050565b82805462000bfa9062001284565b90600052602060002090601f01602090048101928262000c1e576000855562000c6a565b82601f1062000c3957805160ff191683800117855562000c6a565b8280016001018555821562000c6a579182015b8281111562000c6957825182559160200191906001019062000c4c565b5b50905062000c79919062000c7d565b5090565b5b8082111562000c9857600081600090555060010162000c7e565b5090565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000cce8262000ca1565b9050919050565b62000ce08162000cc1565b811462000cec57600080fd5b50565b60008151905062000d008162000cd5565b92915050565b60006020828403121562000d1f5762000d1e62000c9c565b5b600062000d2f8482850162000cef565b91505092915050565b62000d438162000cc1565b82525050565b600060408201905062000d60600083018562000d38565b62000d6f602083018462000d38565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b600185111562000e045780860481111562000ddc5762000ddb62000d76565b5b600185161562000dec5780820291505b808102905062000dfc8562000da5565b945062000dbc565b94509492505050565b60008262000e1f576001905062000ef2565b8162000e2f576000905062000ef2565b816001811462000e48576002811462000e535762000e89565b600191505062000ef2565b60ff84111562000e685762000e6762000d76565b5b8360020a91508482111562000e825762000e8162000d76565b5b5062000ef2565b5060208310610133831016604e8410600b841016171562000ec35782820a90508381111562000ebd5762000ebc62000d76565b5b62000ef2565b62000ed2848484600162000db2565b9250905081840481111562000eec5762000eeb62000d76565b5b81810290505b9392505050565b6000819050919050565b600060ff82169050919050565b600062000f1d8262000ef9565b915062000f2a8362000f03565b925062000f597fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000e0d565b905092915050565b600062000f6e8262000ef9565b915062000f7b8362000ef9565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161562000fb75762000fb662000d76565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600062000ffe8262000ef9565b91506200100b8362000ef9565b9250826200101e576200101d62000fc2565b5b828204905092915050565b6000620010368262000ef9565b9150620010438362000ef9565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156200107b576200107a62000d76565b5b828201905092915050565b600082825260208201905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000620010cf60208362001086565b9150620010dc8262001097565b602082019050919050565b600060208201905081810360008301526200110281620010c0565b9050919050565b60008115159050919050565b620011208162001109565b82525050565b60006020820190506200113d600083018462001115565b92915050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b60006200117b601f8362001086565b9150620011888262001143565b602082019050919050565b60006020820190508181036000830152620011ae816200116c565b9050919050565b620011c08162000ef9565b82525050565b6000602082019050620011dd6000830184620011b5565b92915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b60006200121b601b8362001086565b91506200122882620011e3565b602082019050919050565b600060208201905081810360008301526200124e816200120c565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200129d57607f821691505b602082108103620012b357620012b262001255565b5b50919050565b60805160a051615cf66200131e600039600081816111dc015281816119d201528181612f530152613374015260008181610df101528181612efb0152818161417b0152818161425c015281816142830152818161431f01526143460152615cf66000f3fe6080604052600436106103545760003560e01c806395d89b41116101c6578063c17b5b8c116100f7578063e2f4560511610095578063f2fde38b1161006f578063f2fde38b14610c77578063f637434214610ca0578063f8b45b0514610ccb578063fc17044114610cf65761035b565b8063e2f4560514610bf6578063e884f26014610c21578063f11a24d314610c4c5761035b565b8063c8c8ebe4116100d1578063c8c8ebe414610b26578063d257b34f14610b51578063d85ba06314610b8e578063dd62ed3e14610bb95761035b565b8063c17b5b8c14610aa9578063c18bc19514610ad2578063c876d0b914610afb5761035b565b8063a457c2d711610164578063aacebbe31161013e578063aacebbe3146109ef578063b62496f514610a18578063bbc0c74214610a55578063c024666814610a805761035b565b8063a457c2d71461094a578063a4d15b6414610987578063a9059cbb146109b25761035b565b80639c63e6b9116101a05780639c63e6b9146108a25780639fccce32146108cb578063a0d82dc5146108f6578063a2657778146109215761035b565b806395d89b41146108235780639a7a23d61461084e5780639c3b4fdc146108775761035b565b80634a62bb65116102a05780637571336a1161023e5780638a8c523c116102185780638a8c523c1461078d5780638da5cb5b146107a457806392136913146107cf578063924de9b7146107fa5761035b565b80637571336a146107105780637bce5a04146107395780638095d564146107645761035b565b80636ddd17131161027a5780636ddd17131461066657806370a0823114610691578063715018a6146106ce578063751039fc146106e55761035b565b80634a62bb65146105d35780634fbee193146105fe5780636a486a8e1461063b5761035b565b80631f3fed8f1161030d5780632d5a5d34116102e75780632d5a5d3414610517578063313ce56714610540578063395093511461056b57806349bd5a5e146105a85761035b565b80631f3fed8f14610486578063203e727e146104b157806323b872dd146104da5761035b565b806306fdde0314610360578063095ea7b31461038b57806310d5de53146103c85780631694505e1461040557806318160ddd146104305780631a8145bb1461045b5761035b565b3661035b57005b600080fd5b34801561036c57600080fd5b50610375610d1f565b60405161038291906144ef565b60405180910390f35b34801561039757600080fd5b506103b260048036038101906103ad91906145af565b610db1565b6040516103bf919061460a565b60405180910390f35b3480156103d457600080fd5b506103ef60048036038101906103ea9190614625565b610dcf565b6040516103fc919061460a565b60405180910390f35b34801561041157600080fd5b5061041a610def565b60405161042791906146b1565b60405180910390f35b34801561043c57600080fd5b50610445610e13565b60405161045291906146db565b60405180910390f35b34801561046757600080fd5b50610470610e1d565b60405161047d91906146db565b60405180910390f35b34801561049257600080fd5b5061049b610e23565b6040516104a891906146db565b60405180910390f35b3480156104bd57600080fd5b506104d860048036038101906104d391906146f6565b610e29565b005b3480156104e657600080fd5b5061050160048036038101906104fc9190614723565b610f53565b60405161050e919061460a565b60405180910390f35b34801561052357600080fd5b5061053e600480360381019061053991906147a2565b61102c565b005b34801561054c57600080fd5b5061055561111e565b60405161056291906147fe565b60405180910390f35b34801561057757600080fd5b50610592600480360381019061058d91906145af565b611127565b60405161059f919061460a565b60405180910390f35b3480156105b457600080fd5b506105bd6111da565b6040516105ca9190614828565b60405180910390f35b3480156105df57600080fd5b506105e86111fe565b6040516105f5919061460a565b60405180910390f35b34801561060a57600080fd5b5061062560048036038101906106209190614625565b611211565b604051610632919061460a565b60405180910390f35b34801561064757600080fd5b50610650611267565b60405161065d91906146db565b60405180910390f35b34801561067257600080fd5b5061067b61126d565b604051610688919061460a565b60405180910390f35b34801561069d57600080fd5b506106b860048036038101906106b39190614625565b611280565b6040516106c591906146db565b60405180910390f35b3480156106da57600080fd5b506106e36112c8565b005b3480156106f157600080fd5b506106fa611420565b604051610707919061460a565b60405180910390f35b34801561071c57600080fd5b50610737600480360381019061073291906147a2565b6114db565b005b34801561074557600080fd5b5061074e6115cd565b60405161075b91906146db565b60405180910390f35b34801561077057600080fd5b5061078b60048036038101906107869190614843565b6115d3565b005b34801561079957600080fd5b506107a26116ed565b005b3480156107b057600080fd5b506107b96117c3565b6040516107c69190614828565b60405180910390f35b3480156107db57600080fd5b506107e46117ed565b6040516107f191906146db565b60405180910390f35b34801561080657600080fd5b50610821600480360381019061081c9190614896565b6117f3565b005b34801561082f57600080fd5b506108386118a7565b60405161084591906144ef565b60405180910390f35b34801561085a57600080fd5b50610875600480360381019061087091906147a2565b611939565b005b34801561088357600080fd5b5061088c611a6c565b60405161089991906146db565b60405180910390f35b3480156108ae57600080fd5b506108c960048036038101906108c4919061497e565b611a72565b005b3480156108d757600080fd5b506108e0611bbb565b6040516108ed91906146db565b60405180910390f35b34801561090257600080fd5b5061090b611bc1565b60405161091891906146db565b60405180910390f35b34801561092d57600080fd5b5061094860048036038101906109439190614896565b611bc7565b005b34801561095657600080fd5b50610971600480360381019061096c91906145af565b611c7b565b60405161097e919061460a565b60405180910390f35b34801561099357600080fd5b5061099c611d48565b6040516109a9919061460a565b60405180910390f35b3480156109be57600080fd5b506109d960048036038101906109d491906145af565b611d5b565b6040516109e6919061460a565b60405180910390f35b3480156109fb57600080fd5b50610a166004803603810190610a119190614625565b611d79565b005b348015610a2457600080fd5b50610a3f6004803603810190610a3a9190614625565b611ed0565b604051610a4c919061460a565b60405180910390f35b348015610a6157600080fd5b50610a6a611ef0565b604051610a77919061460a565b60405180910390f35b348015610a8c57600080fd5b50610aa76004803603810190610aa291906147a2565b611f03565b005b348015610ab557600080fd5b50610ad06004803603810190610acb9190614843565b612043565b005b348015610ade57600080fd5b50610af96004803603810190610af491906146f6565b61215c565b005b348015610b0757600080fd5b50610b10612286565b604051610b1d919061460a565b60405180910390f35b348015610b3257600080fd5b50610b3b612299565b604051610b4891906146db565b60405180910390f35b348015610b5d57600080fd5b50610b786004803603810190610b7391906146f6565b61229f565b604051610b85919061460a565b60405180910390f35b348015610b9a57600080fd5b50610ba361240f565b604051610bb091906146db565b60405180910390f35b348015610bc557600080fd5b50610be06004803603810190610bdb91906149ff565b612415565b604051610bed91906146db565b60405180910390f35b348015610c0257600080fd5b50610c0b61249c565b604051610c1891906146db565b60405180910390f35b348015610c2d57600080fd5b50610c366124a2565b604051610c43919061460a565b60405180910390f35b348015610c5857600080fd5b50610c6161255d565b604051610c6e91906146db565b60405180910390f35b348015610c8357600080fd5b50610c9e6004803603810190610c999190614625565b612563565b005b348015610cac57600080fd5b50610cb5612729565b604051610cc291906146db565b60405180910390f35b348015610cd757600080fd5b50610ce061272f565b604051610ced91906146db565b60405180910390f35b348015610d0257600080fd5b50610d1d6004803603810190610d189190614625565b612735565b005b606060038054610d2e90614a6e565b80601f0160208091040260200160405190810160405280929190818152602001828054610d5a90614a6e565b8015610da75780601f10610d7c57610100808354040283529160200191610da7565b820191906000526020600020905b815481529060010190602001808311610d8a57829003601f168201915b5050505050905090565b6000610dc5610dbe6128ea565b84846128f2565b6001905092915050565b601d6020528060005260406000206000915054906101000a900460ff1681565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000600254905090565b60195481565b60185481565b610e316128ea565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ec0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eb790614aeb565b60405180910390fd5b670de0b6b3a76400006103e86001610ed6610e13565b610ee09190614b3a565b610eea9190614bc3565b610ef49190614bc3565b811015610f36576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f2d90614c66565b60405180910390fd5b670de0b6b3a764000081610f4a9190614b3a565b60088190555050565b6000610f60848484612abb565b61102184610f6c6128ea565b61101c85604051806060016040528060288152602001615c7460289139600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610fd26128ea565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461394a9092919063ffffffff16565b6128f2565b600190509392505050565b6110346128ea565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146110c3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110ba90614aeb565b60405180910390fd5b80600e60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b60006012905090565b60006111d06111346128ea565b846111cb85600160006111456128ea565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461288c90919063ffffffff16565b6128f2565b6001905092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b600b60009054906101000a900460ff1681565b6000601c60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b60145481565b600b60029054906101000a900460ff1681565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6112d06128ea565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461135f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161135690614aeb565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600061142a6128ea565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146114b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114b090614aeb565b60405180910390fd5b6000600b60006101000a81548160ff0219169083151502179055506001905090565b6114e36128ea565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611572576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161156990614aeb565b60405180910390fd5b80601d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b60115481565b6115db6128ea565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461166a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161166190614aeb565b60405180910390fd5b8260118190555081601281905550806013819055506013546012546011546116929190614c86565b61169c9190614c86565b601081905550601460105411156116e8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116df90614d28565b60405180910390fd5b505050565b6116f56128ea565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611784576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161177b90614aeb565b60405180910390fd5b6001600b60016101000a81548160ff0219169083151502179055506001600b60026101000a81548160ff02191690831515021790555043601b81905550565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60155481565b6117fb6128ea565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461188a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161188190614aeb565b60405180910390fd5b80600b60026101000a81548160ff02191690831515021790555050565b6060600480546118b690614a6e565b80601f01602080910402602001604051908101604052809291908181526020018280546118e290614a6e565b801561192f5780601f106119045761010080835404028352916020019161192f565b820191906000526020600020905b81548152906001019060200180831161191257829003601f168201915b5050505050905090565b6119416128ea565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146119d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119c790614aeb565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611a5e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a5590614dba565b60405180910390fd5b611a6882826139ae565b5050565b60135481565b611a7a6128ea565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611b09576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b0090614aeb565b60405180910390fd5b611b29611b146117c3565b611b1c6117c3565b611b24610e13565b6128f2565b60005b84849050811015611bb457611ba033868684818110611b4e57611b4d614dda565b5b9050602002016020810190611b639190614625565b611b6b61111e565b600a611b779190614f3c565b868686818110611b8a57611b89614dda565b5b90506020020135611b9b9190614b3a565b610f53565b508080611bac90614f87565b915050611b2c565b5050505050565b601a5481565b60175481565b611bcf6128ea565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611c5e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c5590614aeb565b60405180910390fd5b80600b60036101000a81548160ff02191690831515021790555050565b6000611d3e611c886128ea565b84611d3985604051806060016040528060258152602001615c9c6025913960016000611cb26128ea565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461394a9092919063ffffffff16565b6128f2565b6001905092915050565b600b60039054906101000a900460ff1681565b6000611d6f611d686128ea565b8484612abb565b6001905092915050565b611d816128ea565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611e10576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e0790614aeb565b60405180910390fd5b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167fa751787977eeb3902e30e1d19ca00c6ad274a1f622c31a206e32366700b0567460405160405180910390a380600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b601e6020528060005260406000206000915054906101000a900460ff1681565b600b60019054906101000a900460ff1681565b611f0b6128ea565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611f9a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f9190614aeb565b60405180910390fd5b80601c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df782604051612037919061460a565b60405180910390a25050565b61204b6128ea565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146120da576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120d190614aeb565b60405180910390fd5b8260158190555081601681905550806017819055506017546016546015546121029190614c86565b61210c9190614c86565b601481905550601480541115612157576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161214e9061501b565b60405180910390fd5b505050565b6121646128ea565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146121f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121ea90614aeb565b60405180910390fd5b670de0b6b3a76400006103e86005612209610e13565b6122139190614b3a565b61221d9190614bc3565b6122279190614bc3565b811015612269576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612260906150ad565b60405180910390fd5b670de0b6b3a76400008161227d9190614b3a565b600a8190555050565b600f60009054906101000a900460ff1681565b60085481565b60006122a96128ea565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612338576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161232f90614aeb565b60405180910390fd5b620186a06001612346610e13565b6123509190614b3a565b61235a9190614bc3565b82101561239c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123939061513f565b60405180910390fd5b6103e860056123a9610e13565b6123b39190614b3a565b6123bd9190614bc3565b8211156123ff576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123f6906151d1565b60405180910390fd5b8160098190555060019050919050565b60105481565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60095481565b60006124ac6128ea565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461253b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161253290614aeb565b60405180910390fd5b6000600f60006101000a81548160ff0219169083151502179055506001905090565b60125481565b61256b6128ea565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146125fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125f190614aeb565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603612669576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161266090615263565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60165481565b600a5481565b61273d6128ea565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146127cc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127c390614aeb565b60405180910390fd5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f90b8024c4923d3873ff5b9fcb43d0360d4b9217fa41225d07ba379993552e74360405160405180910390a380600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600080828461289b9190614c86565b9050838110156128e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128d7906152cf565b60405180910390fd5b8091505092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612961576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161295890615361565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036129d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129c7906153f3565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051612aae91906146db565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612b2a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b2190615485565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612b99576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b9090615517565b60405180910390fd5b600e60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16158015612c3d5750600e60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b612c7c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c73906155a9565b60405180910390fd5b60008103612c9557612c9083836000613a4f565b613945565b600b60009054906101000a900460ff161561335957612cb26117c3565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015612d205750612cf06117c3565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015612d595750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015612d93575061dead73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015612dac5750600560149054906101000a900460ff16155b1561335857600b60019054906101000a900460ff16612ea657601c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680612e665750601c60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b612ea5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612e9c90615615565b60405180910390fd5b5b600f60009054906101000a900460ff161561306f57612ec36117c3565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614158015612f4a57507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015612fa257507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b1561306e5743600c60003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541115613029576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613020906156cd565b60405180910390fd5b43600c60003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5b601e60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156131125750601d60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156131b95760085481111561315c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016131539061575f565b60405180910390fd5b600a5461316883611280565b826131739190614c86565b11156131b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016131ab906157cb565b60405180910390fd5b613357565b601e60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16801561325c5750601d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156132ab576008548111156132a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161329d9061585d565b60405180910390fd5b613356565b601d60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661335557600a5461330883611280565b826133139190614c86565b1115613354576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161334b906157cb565b60405180910390fd5b5b5b5b5b5b6000601b546133689190614c86565b43111580156133c357507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b801561340f5750737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b1561346d576001600e60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b600061347830611280565b90506000600954821015905080801561349d5750600b60029054906101000a900460ff165b80156134b65750600560149054906101000a900460ff16155b801561350c5750601e60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156135625750601c60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156135b85750601c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156135fc576001600560146101000a81548160ff0219169083151502179055506135e0613ce2565b6000600560146101000a81548160ff0219169083151502179055505b6000600560149054906101000a900460ff16159050601c60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806136b25750601c60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156136bc57600090505b6000811561393557601e60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16801561371f57506000601454115b156137ec5761374c606461373e60145488613fc990919063ffffffff16565b61404390919063ffffffff16565b90506014546016548261375f9190614b3a565b6137699190614bc3565b6019600082825461377a9190614c86565b92505081905550601454601754826137929190614b3a565b61379c9190614bc3565b601a60008282546137ad9190614c86565b92505081905550601454601554826137c59190614b3a565b6137cf9190614bc3565b601860008282546137e09190614c86565b92505081905550613911565b601e60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16801561384757506000601054115b1561391057613874606461386660105488613fc990919063ffffffff16565b61404390919063ffffffff16565b9050601054601254826138879190614b3a565b6138919190614bc3565b601960008282546138a29190614c86565b92505081905550601054601354826138ba9190614b3a565b6138c49190614bc3565b601a60008282546138d59190614c86565b92505081905550601054601154826138ed9190614b3a565b6138f79190614bc3565b601860008282546139089190614c86565b925050819055505b5b600081111561392657613925873083613a4f565b5b8085613932919061587d565b94505b613940878787613a4f565b505050505b505050565b6000838311158290613992576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161398991906144ef565b60405180910390fd5b50600083856139a1919061587d565b9050809150509392505050565b80601e60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603613abe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613ab590615485565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603613b2d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613b2490615517565b60405180910390fd5b613b3883838361408d565b613ba381604051806060016040528060268152602001615c4e602691396000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461394a9092919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613c36816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461288c90919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051613cd591906146db565b60405180910390a3505050565b6000613ced30611280565b90506000601a54601854601954613d049190614c86565b613d0e9190614c86565b9050600080831480613d205750600082145b15613d2d57505050613fc7565b6014600954613d3c9190614b3a565b831115613d55576014600954613d529190614b3a565b92505b600060028360195486613d689190614b3a565b613d729190614bc3565b613d7c9190614bc3565b90506000613d93828661409290919063ffffffff16565b90506000479050613da3826140dc565b6000613db8824761409290919063ffffffff16565b90506000613de387613dd560185485613fc990919063ffffffff16565b61404390919063ffffffff16565b90506000613e0e88613e00601a5486613fc990919063ffffffff16565b61404390919063ffffffff16565b90506000818385613e1f919061587d565b613e29919061587d565b9050600060198190555060006018819055506000601a81905550600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1682604051613e89906158e2565b60006040518083038185875af1925050503d8060008114613ec6576040519150601f19603f3d011682016040523d82523d6000602084013e613ecb565b606091505b505080985050600087118015613ee15750600081115b15613f2e57613ef08782614319565b7f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb5618682601954604051613f25939291906158f7565b60405180910390a15b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1647604051613f74906158e2565b60006040518083038185875af1925050503d8060008114613fb1576040519150601f19603f3d011682016040523d82523d6000602084013e613fb6565b606091505b505080985050505050505050505050505b565b6000808303613fdb576000905061403d565b60008284613fe99190614b3a565b9050828482613ff89190614bc3565b14614038576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161402f906159a0565b60405180910390fd5b809150505b92915050565b600061408583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506143f3565b905092915050565b505050565b60006140d483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061394a565b905092915050565b6000600267ffffffffffffffff8111156140f9576140f86159c0565b5b6040519080825280602002602001820160405280156141275781602001602082028036833780820191505090505b509050308160008151811061413f5761413e614dda565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156141e4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906142089190615a04565b8160018151811061421c5761421b614dda565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050614281307f0000000000000000000000000000000000000000000000000000000000000000846128f2565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016142e3959493929190615b2a565b600060405180830381600087803b1580156142fd57600080fd5b505af1158015614311573d6000803e3d6000fd5b505050505050565b614344307f0000000000000000000000000000000000000000000000000000000000000000846128f2565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663f305d71982308560008030426040518863ffffffff1660e01b81526004016143a996959493929190615b84565b60606040518083038185885af11580156143c7573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906143ec9190615bfa565b5050505050565b6000808311829061443a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161443191906144ef565b60405180910390fd5b50600083856144499190614bc3565b9050809150509392505050565b600081519050919050565b600082825260208201905092915050565b60005b83811015614490578082015181840152602081019050614475565b8381111561449f576000848401525b50505050565b6000601f19601f8301169050919050565b60006144c182614456565b6144cb8185614461565b93506144db818560208601614472565b6144e4816144a5565b840191505092915050565b6000602082019050818103600083015261450981846144b6565b905092915050565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006145468261451b565b9050919050565b6145568161453b565b811461456157600080fd5b50565b6000813590506145738161454d565b92915050565b6000819050919050565b61458c81614579565b811461459757600080fd5b50565b6000813590506145a981614583565b92915050565b600080604083850312156145c6576145c5614511565b5b60006145d485828601614564565b92505060206145e58582860161459a565b9150509250929050565b60008115159050919050565b614604816145ef565b82525050565b600060208201905061461f60008301846145fb565b92915050565b60006020828403121561463b5761463a614511565b5b600061464984828501614564565b91505092915050565b6000819050919050565b600061467761467261466d8461451b565b614652565b61451b565b9050919050565b60006146898261465c565b9050919050565b600061469b8261467e565b9050919050565b6146ab81614690565b82525050565b60006020820190506146c660008301846146a2565b92915050565b6146d581614579565b82525050565b60006020820190506146f060008301846146cc565b92915050565b60006020828403121561470c5761470b614511565b5b600061471a8482850161459a565b91505092915050565b60008060006060848603121561473c5761473b614511565b5b600061474a86828701614564565b935050602061475b86828701614564565b925050604061476c8682870161459a565b9150509250925092565b61477f816145ef565b811461478a57600080fd5b50565b60008135905061479c81614776565b92915050565b600080604083850312156147b9576147b8614511565b5b60006147c785828601614564565b92505060206147d88582860161478d565b9150509250929050565b600060ff82169050919050565b6147f8816147e2565b82525050565b600060208201905061481360008301846147ef565b92915050565b6148228161453b565b82525050565b600060208201905061483d6000830184614819565b92915050565b60008060006060848603121561485c5761485b614511565b5b600061486a8682870161459a565b935050602061487b8682870161459a565b925050604061488c8682870161459a565b9150509250925092565b6000602082840312156148ac576148ab614511565b5b60006148ba8482850161478d565b91505092915050565b600080fd5b600080fd5b600080fd5b60008083601f8401126148e8576148e76148c3565b5b8235905067ffffffffffffffff811115614905576149046148c8565b5b602083019150836020820283011115614921576149206148cd565b5b9250929050565b60008083601f84011261493e5761493d6148c3565b5b8235905067ffffffffffffffff81111561495b5761495a6148c8565b5b602083019150836020820283011115614977576149766148cd565b5b9250929050565b6000806000806040858703121561499857614997614511565b5b600085013567ffffffffffffffff8111156149b6576149b5614516565b5b6149c2878288016148d2565b9450945050602085013567ffffffffffffffff8111156149e5576149e4614516565b5b6149f187828801614928565b925092505092959194509250565b60008060408385031215614a1657614a15614511565b5b6000614a2485828601614564565b9250506020614a3585828601614564565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680614a8657607f821691505b602082108103614a9957614a98614a3f565b5b50919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000614ad5602083614461565b9150614ae082614a9f565b602082019050919050565b60006020820190508181036000830152614b0481614ac8565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000614b4582614579565b9150614b5083614579565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615614b8957614b88614b0b565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000614bce82614579565b9150614bd983614579565b925082614be957614be8614b94565b5b828204905092915050565b7f43616e6e6f7420736574206d61785472616e73616374696f6e416d6f756e742060008201527f6c6f776572207468616e20302e31250000000000000000000000000000000000602082015250565b6000614c50602f83614461565b9150614c5b82614bf4565b604082019050919050565b60006020820190508181036000830152614c7f81614c43565b9050919050565b6000614c9182614579565b9150614c9c83614579565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115614cd157614cd0614b0b565b5b828201905092915050565b7f4d757374206b656570206665657320617420323025206f72206c657373000000600082015250565b6000614d12601d83614461565b9150614d1d82614cdc565b602082019050919050565b60006020820190508181036000830152614d4181614d05565b9050919050565b7f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060008201527f6175746f6d617465644d61726b65744d616b6572506169727300000000000000602082015250565b6000614da4603983614461565b9150614daf82614d48565b604082019050919050565b60006020820190508181036000830152614dd381614d97565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60008160011c9050919050565b6000808291508390505b6001851115614e6057808604811115614e3c57614e3b614b0b565b5b6001851615614e4b5780820291505b8081029050614e5985614e09565b9450614e20565b94509492505050565b600082614e795760019050614f35565b81614e875760009050614f35565b8160018114614e9d5760028114614ea757614ed6565b6001915050614f35565b60ff841115614eb957614eb8614b0b565b5b8360020a915084821115614ed057614ecf614b0b565b5b50614f35565b5060208310610133831016604e8410600b8410161715614f0b5782820a905083811115614f0657614f05614b0b565b5b614f35565b614f188484846001614e16565b92509050818404811115614f2f57614f2e614b0b565b5b81810290505b9392505050565b6000614f4782614579565b9150614f52836147e2565b9250614f7f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484614e69565b905092915050565b6000614f9282614579565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203614fc457614fc3614b0b565b5b600182019050919050565b7f4d757374206b656570206665657320617420323525206f72206c657373000000600082015250565b6000615005601d83614461565b915061501082614fcf565b602082019050919050565b6000602082019050818103600083015261503481614ff8565b9050919050565b7f43616e6e6f7420736574206d617857616c6c6574206c6f776572207468616e2060008201527f302e352500000000000000000000000000000000000000000000000000000000602082015250565b6000615097602483614461565b91506150a28261503b565b604082019050919050565b600060208201905081810360008301526150c68161508a565b9050919050565b7f5377617020616d6f756e742063616e6e6f74206265206c6f776572207468616e60008201527f20302e3030312520746f74616c20737570706c792e0000000000000000000000602082015250565b6000615129603583614461565b9150615134826150cd565b604082019050919050565b600060208201905081810360008301526151588161511c565b9050919050565b7f5377617020616d6f756e742063616e6e6f74206265206869676865722074686160008201527f6e20302e352520746f74616c20737570706c792e000000000000000000000000602082015250565b60006151bb603483614461565b91506151c68261515f565b604082019050919050565b600060208201905081810360008301526151ea816151ae565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b600061524d602683614461565b9150615258826151f1565b604082019050919050565b6000602082019050818103600083015261527c81615240565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b60006152b9601b83614461565b91506152c482615283565b602082019050919050565b600060208201905081810360008301526152e8816152ac565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b600061534b602483614461565b9150615356826152ef565b604082019050919050565b6000602082019050818103600083015261537a8161533e565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006153dd602283614461565b91506153e882615381565b604082019050919050565b6000602082019050818103600083015261540c816153d0565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061546f602583614461565b915061547a82615413565b604082019050919050565b6000602082019050818103600083015261549e81615462565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000615501602383614461565b915061550c826154a5565b604082019050919050565b60006020820190508181036000830152615530816154f4565b9050919050565b7f596f752068617665206265656e20626c61636b6c69737465642066726f6d207460008201527f72616e73666572696e6720746f6b656e73000000000000000000000000000000602082015250565b6000615593603183614461565b915061559e82615537565b604082019050919050565b600060208201905081810360008301526155c281615586565b9050919050565b7f54726164696e67206973206e6f74206163746976652e00000000000000000000600082015250565b60006155ff601683614461565b915061560a826155c9565b602082019050919050565b6000602082019050818103600083015261562e816155f2565b9050919050565b7f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60008201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b60208201527f20616c6c6f7765642e0000000000000000000000000000000000000000000000604082015250565b60006156b7604983614461565b91506156c282615635565b606082019050919050565b600060208201905081810360008301526156e6816156aa565b9050919050565b7f427579207472616e7366657220616d6f756e742065786365656473207468652060008201527f6d61785472616e73616374696f6e416d6f756e742e0000000000000000000000602082015250565b6000615749603583614461565b9150615754826156ed565b604082019050919050565b600060208201905081810360008301526157788161573c565b9050919050565b7f4d61782077616c6c657420657863656564656400000000000000000000000000600082015250565b60006157b5601383614461565b91506157c08261577f565b602082019050919050565b600060208201905081810360008301526157e4816157a8565b9050919050565b7f53656c6c207472616e7366657220616d6f756e7420657863656564732074686560008201527f206d61785472616e73616374696f6e416d6f756e742e00000000000000000000602082015250565b6000615847603683614461565b9150615852826157eb565b604082019050919050565b600060208201905081810360008301526158768161583a565b9050919050565b600061588882614579565b915061589383614579565b9250828210156158a6576158a5614b0b565b5b828203905092915050565b600081905092915050565b50565b60006158cc6000836158b1565b91506158d7826158bc565b600082019050919050565b60006158ed826158bf565b9150819050919050565b600060608201905061590c60008301866146cc565b61591960208301856146cc565b61592660408301846146cc565b949350505050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b600061598a602183614461565b91506159958261592e565b604082019050919050565b600060208201905081810360008301526159b98161597d565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000815190506159fe8161454d565b92915050565b600060208284031215615a1a57615a19614511565b5b6000615a28848285016159ef565b91505092915050565b6000819050919050565b6000615a56615a51615a4c84615a31565b614652565b614579565b9050919050565b615a6681615a3b565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b615aa18161453b565b82525050565b6000615ab38383615a98565b60208301905092915050565b6000602082019050919050565b6000615ad782615a6c565b615ae18185615a77565b9350615aec83615a88565b8060005b83811015615b1d578151615b048882615aa7565b9750615b0f83615abf565b925050600181019050615af0565b5085935050505092915050565b600060a082019050615b3f60008301886146cc565b615b4c6020830187615a5d565b8181036040830152615b5e8186615acc565b9050615b6d6060830185614819565b615b7a60808301846146cc565b9695505050505050565b600060c082019050615b996000830189614819565b615ba660208301886146cc565b615bb36040830187615a5d565b615bc06060830186615a5d565b615bcd6080830185614819565b615bda60a08301846146cc565b979650505050505050565b600081519050615bf481614583565b92915050565b600080600060608486031215615c1357615c12614511565b5b6000615c2186828701615be5565b9350506020615c3286828701615be5565b9250506040615c4386828701615be5565b915050925092509256fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212208ebfac959c70d64fa3f7bf685bc5d43f9f14490d63a320c4162a1b88738baf3164736f6c634300080d0033