60806040526040518060400160405280600881526020017f504f4b4542455453000000000000000000000000000000000000000000000000815250600190805190602001906200005192919062000fca565b506040518060400160405280600881526020017f504f4b4542455453000000000000000000000000000000000000000000000000815250600290805190602001906200009f92919062000fca565b506012600360006101000a81548160ff021916908360ff16021790555060026005556000600660006101000a81548160ff02191690831515021790555073be7780a2b0ebea35d1d7d42960397c31115f5e2f600660016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073be7780a2b0ebea35d1d7d42960397c31115f5e2f600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061dead600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060006010556001601155600060125560636013556004601455600c6015556200020560115460105462000f3660201b62002a401790919060201c565b6016556200022660135460125462000f3660201b62002a401790919060201c565b6017556010601855600360009054906101000a900460ff16600a6200024c91906200123b565b6509184e72a0006200025f919062001378565b601955600360009054906101000a900460ff16600a6200028091906200123b565b6509184e72a00062000293919062001378565b601a55600360009054906101000a900460ff16600a620002b491906200123b565b6509184e72a000620002c7919062001378565b601b55600360009054906101000a900460ff166005620002e891906200123b565b6509184e72a000620002fb919062001378565b601c556001601e60156101000a81548160ff0219169083151502179055506000601e60166101000a81548160ff0219169083151502179055506001601e60176101000a81548160ff0219169083151502179055503480156200035c57600080fd5b5060006200036f62000f9960201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350600073fcd3842f85ed87ba2889b4d35893403796e67ff190508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156200046d57600080fd5b505afa15801562000482573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004a8919062001091565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156200050b57600080fd5b505afa15801562000520573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000546919062001091565b6040518363ffffffff1660e01b81526004016200056592919062001106565b602060405180830381600087803b1580156200058057600080fd5b505af115801562000595573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620005bb919062001091565b601e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080601d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601954600a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001600b6000620006f762000fa160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600b60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600b6000600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620008b260115460105462000f3660201b62002a401790919060201c565b601681905550620008d660135460125462000f3660201b62002a401790919060201c565b601781905550620008fa60155460145462000f3660201b62002a401790919060201c565b6018819055506001600c60006200091662000fa160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600c6000601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600c60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600c6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600c6000600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600c6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600d600062000bbd62000fa160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600d60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600d6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600d6000600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600d6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600e6000601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060195460096000600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555062000ec662000f9960201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60195460405162000f27919062001155565b60405180910390a35062001508565b600080828462000f47919062001183565b90508381101562000f8f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000f869062001133565b60405180910390fd5b8091505092915050565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b82805462000fd89062001424565b90600052602060002090601f01602090048101928262000ffc576000855562001048565b82601f106200101757805160ff191683800117855562001048565b8280016001018555821562001048579182015b82811115620010475782518255916020019190600101906200102a565b5b5090506200105791906200105b565b5090565b5b80821115620010765760008160009055506001016200105c565b5090565b6000815190506200108b81620014ee565b92915050565b600060208284031215620010a457600080fd5b6000620010b4848285016200107a565b91505092915050565b620010c881620013d9565b82525050565b6000620010dd601b8362001172565b9150620010ea82620014c5565b602082019050919050565b62001100816200140d565b82525050565b60006040820190506200111d6000830185620010bd565b6200112c6020830184620010bd565b9392505050565b600060208201905081810360008301526200114e81620010ce565b9050919050565b60006020820190506200116c6000830184620010f5565b92915050565b600082825260208201905092915050565b600062001190826200140d565b91506200119d836200140d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115620011d557620011d46200145a565b5b828201905092915050565b6000808291508390505b600185111562001232578086048111156200120a57620012096200145a565b5b60018516156200121a5780820291505b80810290506200122a85620014b8565b9450620011ea565b94509492505050565b600062001248826200140d565b9150620012558362001417565b9250620012847fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846200128c565b905092915050565b6000826200129e576001905062001371565b81620012ae576000905062001371565b8160018114620012c75760028114620012d25762001308565b600191505062001371565b60ff841115620012e757620012e66200145a565b5b8360020a9150848211156200130157620013006200145a565b5b5062001371565b5060208310610133831016604e8410600b8410161715620013425782820a9050838111156200133c576200133b6200145a565b5b62001371565b620013518484846001620011e0565b925090508184048111156200136b576200136a6200145a565b5b81810290505b9392505050565b600062001385826200140d565b915062001392836200140d565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615620013ce57620013cd6200145a565b5b828202905092915050565b6000620013e682620013ed565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b600060028204905060018216806200143d57607f821691505b6020821081141562001454576200145362001489565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60008160011c9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b620014f981620013d9565b81146200150557600080fd5b50565b614dd380620015186000396000f3fe60806040526004361061039b5760003560e01c8063914eb66a116101dc578063c867d60b11610102578063eea5b63f116100a0578063f2fde38b1161006f578063f2fde38b14610dc9578063f5d588f514610df2578063f84ba65d14610e1d578063f872858a14610e46576103a2565b8063eea5b63f14610d23578063ef422a1814610d4c578063f0cd1dac14610d75578063f1d5f51714610da0576103a2565b8063dc44b6a0116100dc578063dc44b6a014610c69578063dd62ed3e14610c94578063e1764e7e14610cd1578063ec28438a14610cfa576103a2565b8063c867d60b14610bd6578063d158272d14610c13578063da00097d14610c3e576103a2565b8063a5d69d1f1161017a578063c49b9a8011610149578063c49b9a8014610b2c578063c5d2418914610b55578063c816841b14610b80578063c860795214610bab576103a2565b8063a5d69d1f14610a60578063a9059cbb14610a89578063aa35822c14610ac6578063b36d691914610aef576103a2565b8063a073d37f116101b6578063a073d37f146109a4578063a08e671f146109cf578063a11a1682146109fa578063a457c2d714610a23576103a2565b8063914eb66a1461093757806391b05ca31461094e57806395d89b4114610979576103a2565b80634cb80fd5116102c15780637d1db4a51161025f57806388790a681161022e57806388790a68146108795780638b42507f146108a45780638da5cb5b146108e15780638eb83f251461090c576103a2565b80637d1db4a5146107cf578063807c2d9c146107fa57806382eefb4314610825578063844d591c14610850576103a2565b806357a5802f1161029b57806357a5802f146106ff5780635881f3ef1461072a57806361a23c691461076757806370a0823114610792576103a2565b80634cb80fd51461066e5780635342acb414610697578063557ed1ba146106d4576103a2565b80632563ae8311610339578063395093511161030857806339509351146105a05780633b97084a146105dd5780633ecad271146106065780634a74bb0214610643576103a2565b80632563ae83146104f657806327c8f8351461051f5780632b112e491461054a578063313ce56714610575576103a2565b8063170e45f111610375578063170e45f11461043a57806318160ddd146104655780632198cf6c1461049057806323b872dd146104b9576103a2565b806306fdde03146103a7578063095ea7b3146103d25780631694505e1461040f576103a2565b366103a257005b600080fd5b3480156103b357600080fd5b506103bc610e71565b6040516103c99190614505565b60405180910390f35b3480156103de57600080fd5b506103f960048036038101906103f49190614062565b610f03565b60405161040691906144cf565b60405180910390f35b34801561041b57600080fd5b50610424610f21565b60405161043191906144ea565b60405180910390f35b34801561044657600080fd5b5061044f610f47565b60405161045c9190614667565b60405180910390f35b34801561047157600080fd5b5061047a610f4d565b6040516104879190614667565b60405180910390f35b34801561049c57600080fd5b506104b760048036038101906104b29190614026565b610f57565b005b3480156104c557600080fd5b506104e060048036038101906104db9190613fd7565b611047565b6040516104ed91906144cf565b60405180910390f35b34801561050257600080fd5b5061051d6004803603810190610518919061409e565b611121565b005b34801561052b57600080fd5b506105346111d3565b604051610541919061440f565b60405180910390f35b34801561055657600080fd5b5061055f6111f9565b60405161056c9190614667565b60405180910390f35b34801561058157600080fd5b5061058a61123f565b604051610597919061470c565b60405180910390f35b3480156105ac57600080fd5b506105c760048036038101906105c29190614062565b611256565b6040516105d491906144cf565b60405180910390f35b3480156105e957600080fd5b5061060460048036038101906105ff91906140c7565b611309565b005b34801561061257600080fd5b5061062d60048036038101906106289190613f49565b6113a8565b60405161063a91906144cf565b60405180910390f35b34801561064f57600080fd5b506106586113c8565b60405161066591906144cf565b60405180910390f35b34801561067a57600080fd5b5061069560048036038101906106909190613f49565b6113db565b005b3480156106a357600080fd5b506106be60048036038101906106b99190613f49565b6114b4565b6040516106cb91906144cf565b60405180910390f35b3480156106e057600080fd5b506106e96114d4565b6040516106f69190614667565b60405180910390f35b34801561070b57600080fd5b506107146114dc565b6040516107219190614667565b60405180910390f35b34801561073657600080fd5b50610751600480360381019061074c9190613f49565b6114e2565b60405161075e919061440f565b60405180910390f35b34801561077357600080fd5b5061077c611a40565b6040516107899190614667565b60405180910390f35b34801561079e57600080fd5b506107b960048036038101906107b49190613f49565b611a46565b6040516107c69190614667565b60405180910390f35b3480156107db57600080fd5b506107e4611a8f565b6040516107f19190614667565b60405180910390f35b34801561080657600080fd5b5061080f611a95565b60405161081c9190614667565b60405180910390f35b34801561083157600080fd5b5061083a611a9b565b6040516108479190614667565b60405180910390f35b34801561085c57600080fd5b5061087760048036038101906108729190614026565b611aa1565b005b34801561088557600080fd5b5061088e611b91565b60405161089b9190614667565b60405180910390f35b3480156108b057600080fd5b506108cb60048036038101906108c69190613f49565b611b97565b6040516108d891906144cf565b60405180910390f35b3480156108ed57600080fd5b506108f6611bb7565b604051610903919061440f565b60405180910390f35b34801561091857600080fd5b50610921611be0565b60405161092e919061442a565b60405180910390f35b34801561094357600080fd5b5061094c611c06565b005b34801561095a57600080fd5b50610963611d5b565b6040516109709190614667565b60405180910390f35b34801561098557600080fd5b5061098e611d61565b60405161099b9190614505565b60405180910390f35b3480156109b057600080fd5b506109b9611df3565b6040516109c69190614667565b60405180910390f35b3480156109db57600080fd5b506109e4611dfd565b6040516109f19190614667565b60405180910390f35b348015610a0657600080fd5b50610a216004803603810190610a1c91906140f0565b611e03565b005b348015610a2f57600080fd5b50610a4a6004803603810190610a459190614062565b611ec7565b604051610a5791906144cf565b60405180910390f35b348015610a6c57600080fd5b50610a876004803603810190610a82919061409e565b611f94565b005b348015610a9557600080fd5b50610ab06004803603810190610aab9190614062565b612046565b604051610abd91906144cf565b60405180910390f35b348015610ad257600080fd5b50610aed6004803603810190610ae891906140f0565b612065565b005b348015610afb57600080fd5b50610b166004803603810190610b119190613f49565b612129565b604051610b2391906144cf565b60405180910390f35b348015610b3857600080fd5b50610b536004803603810190610b4e919061409e565b61217f565b005b348015610b6157600080fd5b50610b6a612268565b604051610b779190614667565b60405180910390f35b348015610b8c57600080fd5b50610b9561226e565b604051610ba2919061440f565b60405180910390f35b348015610bb757600080fd5b50610bc0612294565b604051610bcd9190614667565b60405180910390f35b348015610be257600080fd5b50610bfd6004803603810190610bf89190613f49565b61229a565b604051610c0a91906144cf565b60405180910390f35b348015610c1f57600080fd5b50610c286122ba565b604051610c35919061442a565b60405180910390f35b348015610c4a57600080fd5b50610c536122e0565b604051610c6091906144cf565b60405180910390f35b348015610c7557600080fd5b50610c7e6122f3565b604051610c8b9190614667565b60405180910390f35b348015610ca057600080fd5b50610cbb6004803603810190610cb69190613f9b565b6122f9565b604051610cc89190614667565b60405180910390f35b348015610cdd57600080fd5b50610cf86004803603810190610cf39190614026565b612380565b005b348015610d0657600080fd5b50610d216004803603810190610d1c91906140c7565b612470565b005b348015610d2f57600080fd5b50610d4a6004803603810190610d4591906140f0565b61250f565b005b348015610d5857600080fd5b50610d736004803603810190610d6e9190614026565b6125d3565b005b348015610d8157600080fd5b50610d8a6126c3565b604051610d979190614667565b60405180910390f35b348015610dac57600080fd5b50610dc76004803603810190610dc291906140c7565b6126c9565b005b348015610dd557600080fd5b50610df06004803603810190610deb9190613f49565b612768565b005b348015610dfe57600080fd5b50610e0761292a565b604051610e1491906144cf565b60405180910390f35b348015610e2957600080fd5b50610e446004803603810190610e3f9190614026565b61293d565b005b348015610e5257600080fd5b50610e5b612a2d565b604051610e6891906144cf565b60405180910390f35b606060018054610e8090614997565b80601f0160208091040260200160405190810160405280929190818152602001828054610eac90614997565b8015610ef95780601f10610ece57610100808354040283529160200191610ef9565b820191906000526020600020905b815481529060010190602001808311610edc57829003601f168201915b5050505050905090565b6000610f17610f10612a9e565b8484612aa6565b6001905092915050565b601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60055481565b6000601954905090565b610f5f612a9e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610fec576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fe390614607565b60405180910390fd5b80600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b6000611054848484612c71565b5061111684611061612a9e565b61111185604051806060016040528060288152602001614d5160289139600a60008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006110c7612a9e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461333c9092919063ffffffff16565b612aa6565b600190509392505050565b611129612a9e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146111b6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111ad90614607565b60405180910390fd5b80601e60176101000a81548160ff02191690831515021790555050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600061123a611229600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611a46565b6019546133a090919063ffffffff16565b905090565b6000600360009054906101000a900460ff16905090565b60006112ff611263612a9e565b846112fa85600a6000611274612a9e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612a4090919063ffffffff16565b612aa6565b6001905092915050565b611311612a9e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461139e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161139590614607565b60405180910390fd5b80601c8190555050565b600e6020528060005260406000206000915054906101000a900460ff1681565b601e60159054906101000a900460ff1681565b6113e3612a9e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611470576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161146790614607565b60405180910390fd5b80600660016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600b6020528060005260406000206000915054906101000a900460ff1681565b600042905090565b60145481565b60006114ec612a9e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611579576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161157090614607565b60405180910390fd5b60008290508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156115c457600080fd5b505afa1580156115d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115fc9190613f72565b73ffffffffffffffffffffffffffffffffffffffff1663e6a43905308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561165e57600080fd5b505afa158015611672573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116969190613f72565b6040518363ffffffff1660e01b81526004016116b3929190614445565b60206040518083038186803b1580156116cb57600080fd5b505afa1580156116df573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117039190613f72565b9150600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156118c4578073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561178057600080fd5b505afa158015611794573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117b89190613f72565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561181a57600080fd5b505afa15801561182e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118529190613f72565b6040518363ffffffff1660e01b815260040161186f929190614445565b602060405180830381600087803b15801561188957600080fd5b505af115801561189d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118c19190613f72565b91505b81601e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080601d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600c6000601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600e6000601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050919050565b60155481565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b601a5481565b601b5481565b60175481565b611aa9612a9e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611b36576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b2d90614607565b60405180910390fd5b80600e60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b60125481565b600d6020528060005260406000206000915054906101000a900460ff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b611c0e612a9e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611c9b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c9290614607565b60405180910390fd5b61dead73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a361dead6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60045481565b606060028054611d7090614997565b80601f0160208091040260200160405190810160405280929190818152602001828054611d9c90614997565b8015611de95780601f10611dbe57610100808354040283529160200191611de9565b820191906000526020600020905b815481529060010190602001808311611dcc57829003601f168201915b5050505050905090565b6000601c54905090565b60185481565b611e0b612a9e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611e98576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e8f90614607565b60405180910390fd5b8160128190555080601381905550611ebd601354601254612a4090919063ffffffff16565b6017819055505050565b6000611f8a611ed4612a9e565b84611f8585604051806060016040528060258152602001614d7960259139600a6000611efe612a9e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461333c9092919063ffffffff16565b612aa6565b6001905092915050565b611f9c612a9e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612029576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161202090614607565b60405180910390fd5b80601e60166101000a81548160ff02191690831515021790555050565b600061205a612053612a9e565b8484612c71565b506001905092915050565b61206d612a9e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146120fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120f190614607565b60405180910390fd5b816010819055508060118190555061211f601154601054612a4090919063ffffffff16565b6016819055505050565b6000600f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b612187612a9e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612214576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161220b90614607565b60405180910390fd5b80601e60156101000a81548160ff0219169083151502179055507f53726dfcaf90650aa7eb35524f4d3220f07413c8d6cb404cc8c18bf5591bc1598160405161225d91906144cf565b60405180910390a150565b60115481565b601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60135481565b600c6020528060005260406000206000915054906101000a900460ff1681565b600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601e60169054906101000a900460ff1681565b60105481565b6000600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b612388612a9e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612415576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161240c90614607565b60405180910390fd5b80600f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b612478612a9e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612505576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124fc90614607565b60405180910390fd5b80601a8190555050565b612517612a9e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146125a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161259b90614607565b60405180910390fd5b81601481905550806015819055506125c9601554601454612a4090919063ffffffff16565b6018819055505050565b6125db612a9e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612668576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161265f90614607565b60405180910390fd5b80600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b60165481565b6126d1612a9e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461275e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161275590614607565b60405180910390fd5b80601b8190555050565b612770612a9e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146127fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127f490614607565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561286d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161286490614547565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600660009054906101000a900460ff1681565b612945612a9e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146129d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129c990614607565b60405180910390fd5b80600d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b601e60179054906101000a900460ff1681565b6000808284612a4f919061477c565b905083811015612a94576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a8b90614587565b60405180910390fd5b8091505092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612b16576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b0d90614647565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612b86576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b7d90614567565b60405180910390fd5b80600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051612c649190614667565b60405180910390a3505050565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415612ce2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612cd990614627565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612d52576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d4990614527565b60405180910390fd5b600f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16158015612df65750600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b612e35576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612e2c906145a7565b60405180910390fd5b601e60149054906101000a900460ff1615612e5c57612e558484846133ea565b9050613335565b600d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16158015612f005750600d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15612f4b57601a54821115612f4a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612f41906145c7565b60405180910390fd5b5b6000612f5630611a46565b90506000601c548210159050808015612f7c5750601e60149054906101000a900460ff16155b8015612fd25750600e60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015612fea5750601e60159054906101000a900460ff165b1561301457601e60169054906101000a900460ff161561300a57601c5491505b613013826135bd565b5b61309d846040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600960008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461333c9092919063ffffffff16565b600960008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600b60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806131835750600b60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156131905784905061319e565b61319b87878761373a565b90505b601e60179054906101000a900460ff1680156132045750600c60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561323357601b546132278261321989611a46565b612a4090919063ffffffff16565b111561323257600080fd5b5b61328581600960008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612a4090919063ffffffff16565b600960008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516133259190614667565b60405180910390a3600193505050505b9392505050565b6000838311158290613384576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161337b9190614505565b60405180910390fd5b5060008385613393919061485d565b9050809150509392505050565b60006133e283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061333c565b905092915050565b6000613475826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600960008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461333c9092919063ffffffff16565b600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061350a82600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612a4090919063ffffffff16565b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516135aa9190614667565b60405180910390a3600190509392505050565b6001601e60146101000a81548160ff021916908315150217905550600061361660026136086018546135fa6014548761396190919063ffffffff16565b6139dc90919063ffffffff16565b6139dc90919063ffffffff16565b9050600061362d82846133a090919063ffffffff16565b905061363881613a26565b6000479050600061366961365860026014546139dc90919063ffffffff16565b6018546133a090919063ffffffff16565b905060006136a760026136998461368b6014548861396190919063ffffffff16565b6139dc90919063ffffffff16565b6139dc90919063ffffffff16565b905060006136be82856133a090919063ffffffff16565b905060008111156136f6576136f5600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682613d23565b5b6000821180156137065750600086115b15613716576137158683613d6e565b5b5050505050506000601e60146101000a81548160ff02191690831515021790555050565b60008060009050600e60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156137c2576137bb60646137ad6016548661396190919063ffffffff16565b6139dc90919063ffffffff16565b9050613840565b600e60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561383f5761383c606461382e6017548661396190919063ffffffff16565b6139dc90919063ffffffff16565b90505b5b60008111156139445761389b81600960003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612a4090919063ffffffff16565b600960003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161393b9190614667565b60405180910390a35b61395781846133a090919063ffffffff16565b9150509392505050565b60008083141561397457600090506139d6565b600082846139829190614803565b905082848261399191906147d2565b146139d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016139c8906145e7565b60405180910390fd5b809150505b92915050565b6000613a1e83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250613e7d565b905092915050565b6000600267ffffffffffffffff811115613a69577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051908082528060200260200182016040528015613a975781602001602082028036833780820191505090505b5090503081600081518110613ad5577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015613b7757600080fd5b505afa158015613b8b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613baf9190613f72565b81600181518110613be9577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050613c5030601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684612aa6565b601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401613cb49594939291906146b2565b600060405180830381600087803b158015613cce57600080fd5b505af1158015613ce2573d6000803e3d6000fd5b505050507f32cde87eb454f3a0b875ab23547023107cfad454363ec88ba5695e2c24aa52a78282604051613d17929190614682565b60405180910390a15050565b8173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015613d69573d6000803e3d6000fd5b505050565b613d9b30601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684612aa6565b601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d719823085600080600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518863ffffffff1660e01b8152600401613e249695949392919061446e565b6060604051808303818588803b158015613e3d57600080fd5b505af1158015613e51573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190613e76919061412c565b5050505050565b60008083118290613ec4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613ebb9190614505565b60405180910390fd5b5060008385613ed391906147d2565b9050809150509392505050565b600081359050613eef81614d0b565b92915050565b600081519050613f0481614d0b565b92915050565b600081359050613f1981614d22565b92915050565b600081359050613f2e81614d39565b92915050565b600081519050613f4381614d39565b92915050565b600060208284031215613f5b57600080fd5b6000613f6984828501613ee0565b91505092915050565b600060208284031215613f8457600080fd5b6000613f9284828501613ef5565b91505092915050565b60008060408385031215613fae57600080fd5b6000613fbc85828601613ee0565b9250506020613fcd85828601613ee0565b9150509250929050565b600080600060608486031215613fec57600080fd5b6000613ffa86828701613ee0565b935050602061400b86828701613ee0565b925050604061401c86828701613f1f565b9150509250925092565b6000806040838503121561403957600080fd5b600061404785828601613ee0565b925050602061405885828601613f0a565b9150509250929050565b6000806040838503121561407557600080fd5b600061408385828601613ee0565b925050602061409485828601613f1f565b9150509250929050565b6000602082840312156140b057600080fd5b60006140be84828501613f0a565b91505092915050565b6000602082840312156140d957600080fd5b60006140e784828501613f1f565b91505092915050565b6000806040838503121561410357600080fd5b600061411185828601613f1f565b925050602061412285828601613f1f565b9150509250929050565b60008060006060848603121561414157600080fd5b600061414f86828701613f34565b935050602061416086828701613f34565b925050604061417186828701613f34565b9150509250925092565b600061418783836141b1565b60208301905092915050565b61419c816148f8565b82525050565b6141ab816148a3565b82525050565b6141ba81614891565b82525050565b6141c981614891565b82525050565b60006141da82614737565b6141e4818561475a565b93506141ef83614727565b8060005b83811015614220578151614207888261417b565b97506142128361474d565b9250506001810190506141f3565b5085935050505092915050565b614236816148b5565b82525050565b6142458161490a565b82525050565b6142548161492e565b82525050565b600061426582614742565b61426f818561476b565b935061427f818560208601614964565b61428881614a56565b840191505092915050565b60006142a060238361476b565b91506142ab82614a67565b604082019050919050565b60006142c360268361476b565b91506142ce82614ab6565b604082019050919050565b60006142e660228361476b565b91506142f182614b05565b604082019050919050565b6000614309601b8361476b565b915061431482614b54565b602082019050919050565b600061432c60138361476b565b915061433782614b7d565b602082019050919050565b600061434f60288361476b565b915061435a82614ba6565b604082019050919050565b600061437260218361476b565b915061437d82614bf5565b604082019050919050565b600061439560208361476b565b91506143a082614c44565b602082019050919050565b60006143b860258361476b565b91506143c382614c6d565b604082019050919050565b60006143db60248361476b565b91506143e682614cbc565b604082019050919050565b6143fa816148e1565b82525050565b614409816148eb565b82525050565b600060208201905061442460008301846141c0565b92915050565b600060208201905061443f60008301846141a2565b92915050565b600060408201905061445a60008301856141c0565b61446760208301846141c0565b9392505050565b600060c08201905061448360008301896141c0565b61449060208301886143f1565b61449d604083018761424b565b6144aa606083018661424b565b6144b76080830185614193565b6144c460a08301846143f1565b979650505050505050565b60006020820190506144e4600083018461422d565b92915050565b60006020820190506144ff600083018461423c565b92915050565b6000602082019050818103600083015261451f818461425a565b905092915050565b6000602082019050818103600083015261454081614293565b9050919050565b60006020820190508181036000830152614560816142b6565b9050919050565b60006020820190508181036000830152614580816142d9565b9050919050565b600060208201905081810360008301526145a0816142fc565b9050919050565b600060208201905081810360008301526145c08161431f565b9050919050565b600060208201905081810360008301526145e081614342565b9050919050565b6000602082019050818103600083015261460081614365565b9050919050565b6000602082019050818103600083015261462081614388565b9050919050565b60006020820190508181036000830152614640816143ab565b9050919050565b60006020820190508181036000830152614660816143ce565b9050919050565b600060208201905061467c60008301846143f1565b92915050565b600060408201905061469760008301856143f1565b81810360208301526146a981846141cf565b90509392505050565b600060a0820190506146c760008301886143f1565b6146d4602083018761424b565b81810360408301526146e681866141cf565b90506146f560608301856141c0565b61470260808301846143f1565b9695505050505050565b60006020820190506147216000830184614400565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b6000614787826148e1565b9150614792836148e1565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156147c7576147c66149c9565b5b828201905092915050565b60006147dd826148e1565b91506147e8836148e1565b9250826147f8576147f76149f8565b5b828204905092915050565b600061480e826148e1565b9150614819836148e1565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615614852576148516149c9565b5b828202905092915050565b6000614868826148e1565b9150614873836148e1565b925082821015614886576148856149c9565b5b828203905092915050565b600061489c826148c1565b9050919050565b60006148ae826148c1565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b600061490382614940565b9050919050565b60006149158261491c565b9050919050565b6000614927826148c1565b9050919050565b6000614939826148e1565b9050919050565b600061494b82614952565b9050919050565b600061495d826148c1565b9050919050565b60005b83811015614982578082015181840152602081019050614967565b83811115614991576000848401525b50505050565b600060028204905060018216806149af57607f821691505b602082108114156149c3576149c2614a27565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f426c61636b6c6973746564206164647265737300000000000000000000000000600082015250565b7f5472616e7366657220616d6f756e74206578636565647320746865206d61785460008201527f78416d6f756e742e000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b614d1481614891565b8114614d1f57600080fd5b50565b614d2b816148b5565b8114614d3657600080fd5b50565b614d42816148e1565b8114614d4d57600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220716488e3c76b2e4fbb6d168066f4ea5b060c9c85bae95c3679eadc542b58f02e64736f6c63430008040033