60806040526b0cecb8f27f4200f3a00000006009556009546000196200002691906200092c565b6000196200003591906200087d565b600a556040518060400160405280601281526020017f446f676661636520414d4d4f20746f6b656e0000000000000000000000000000815250600c90805190602001906200008592919062000718565b506040518060400160405280600581526020017f24414d4d4f000000000000000000000000000000000000000000000000000000815250600d9080519060200190620000d392919062000718565b506012600e60006101000a81548160ff021916908360ff1602179055506003600f55600f546010556002601155601154601255600460135560135460145573e78dab9780ad0136581ca4a81775d7e5258da036601560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160165560165460175561dead601860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555069d3c21bcecceda10000006019556a069e10de76676d08000000601a556001601c60156101000a81548160ff021916908315150217905550348015620001f957600080fd5b5060006200020c620006e760201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350600a5460036000620002c1620006ef60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156200035f57600080fd5b505afa15801562000374573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200039a9190620007df565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015620003fd57600080fd5b505afa15801562000412573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004389190620007df565b6040518363ffffffff1660e01b81526004016200045792919062000833565b602060405180830381600087803b1580156200047257600080fd5b505af115801562000487573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004ad9190620007df565b601c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080601b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060016006600062000544620006ef60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160066000601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555062000677620006ef60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600954604051620006d8919062000860565b60405180910390a35062000a10565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b8280546200072690620008f6565b90600052602060002090601f0160209004810192826200074a576000855562000796565b82601f106200076557805160ff191683800117855562000796565b8280016001018555821562000796579182015b828111156200079557825182559160200191906001019062000778565b5b509050620007a59190620007a9565b5090565b5b80821115620007c4576000816000905550600101620007aa565b5090565b600081519050620007d981620009f6565b92915050565b600060208284031215620007f857620007f7620009f1565b5b60006200080884828501620007c8565b91505092915050565b6200081c81620008b8565b82525050565b6200082d81620008ec565b82525050565b60006040820190506200084a600083018562000811565b62000859602083018462000811565b9392505050565b600060208201905062000877600083018462000822565b92915050565b60006200088a82620008ec565b91506200089783620008ec565b925082821015620008ad57620008ac62000964565b5b828203905092915050565b6000620008c582620008cc565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060028204905060018216806200090f57607f821691505b60208210811415620009265762000925620009c2565b5b50919050565b60006200093982620008ec565b91506200094683620008ec565b92508262000959576200095862000993565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600080fd5b62000a0181620008b8565b811462000a0d57600080fd5b50565b615d4a8062000a206000396000f3fe6080604052600436106102555760003560e01c80636bc87c3a11610139578063a69df4b5116100b6578063c49b9a801161007a578063c49b9a80146108e9578063d2d7ad8314610912578063dd4670641461093d578063dd62ed3e14610966578063ea2f0b37146109a3578063f2fde38b146109cc5761025c565b8063a69df4b514610816578063a9059cbb1461082d578063aacebbe31461086a578063b6c5232414610893578063c0b0fda2146108be5761025c565b806388f82020116100fd57806388f820201461071d5780638da5cb5b1461075a5780638e50c5be1461078557806395d89b41146107ae578063a457c2d7146107d95761025c565b80636bc87c3a1461064857806370a0823114610673578063715018a6146106b057806375f0a874146106c75780637d1db4a5146106f25761025c565b80633685d419116101d25780634549b039116101965780634549b0391461052657806349bd5a5e146105635780634a74bb021461058e57806352390c02146105b95780635342acb4146105e25780636256d1811461061f5761025c565b80633685d41914610443578063395093511461046c5780633b124fe7146104a95780633bd5d173146104d4578063437823ec146104fd5761025c565b806322976e0d1161021957806322976e0d1461034857806323b872dd1461037357806327c8f835146103b05780632d838119146103db578063313ce567146104185761025c565b806306fdde0314610261578063080437511461028c578063095ea7b3146102b55780631694505e146102f257806318160ddd1461031d5761025c565b3661025c57005b600080fd5b34801561026d57600080fd5b506102766109f5565b6040516102839190615136565b60405180910390f35b34801561029857600080fd5b506102b360048036038101906102ae9190614bc8565b610a87565b005b3480156102c157600080fd5b506102dc60048036038101906102d79190614b5b565b610b26565b6040516102e99190615100565b60405180910390f35b3480156102fe57600080fd5b50610307610b44565b604051610314919061511b565b60405180910390f35b34801561032957600080fd5b50610332610b6a565b60405161033f9190615378565b60405180910390f35b34801561035457600080fd5b5061035d610b74565b60405161036a9190615378565b60405180910390f35b34801561037f57600080fd5b5061039a60048036038101906103959190614b08565b610b7a565b6040516103a79190615100565b60405180910390f35b3480156103bc57600080fd5b506103c5610c53565b6040516103d29190615069565b60405180910390f35b3480156103e757600080fd5b5061040260048036038101906103fd9190614bc8565b610c79565b60405161040f9190615378565b60405180910390f35b34801561042457600080fd5b5061042d610ce7565b60405161043a9190615424565b60405180910390f35b34801561044f57600080fd5b5061046a60048036038101906104659190614a41565b610cfe565b005b34801561047857600080fd5b50610493600480360381019061048e9190614b5b565b61104d565b6040516104a09190615100565b60405180910390f35b3480156104b557600080fd5b506104be611100565b6040516104cb9190615378565b60405180910390f35b3480156104e057600080fd5b506104fb60048036038101906104f69190614bc8565b611106565b005b34801561050957600080fd5b50610524600480360381019061051f9190614a41565b611281565b005b34801561053257600080fd5b5061054d60048036038101906105489190614bf5565b611371565b60405161055a9190615378565b60405180910390f35b34801561056f57600080fd5b506105786113f5565b6040516105859190615069565b60405180910390f35b34801561059a57600080fd5b506105a361141b565b6040516105b09190615100565b60405180910390f35b3480156105c557600080fd5b506105e060048036038101906105db9190614a41565b61142e565b005b3480156105ee57600080fd5b5061060960048036038101906106049190614a41565b6116e2565b6040516106169190615100565b60405180910390f35b34801561062b57600080fd5b5061064660048036038101906106419190614bc8565b611738565b005b34801561065457600080fd5b5061065d611835565b60405161066a9190615378565b60405180910390f35b34801561067f57600080fd5b5061069a60048036038101906106959190614a41565b61183b565b6040516106a79190615378565b60405180910390f35b3480156106bc57600080fd5b506106c5611926565b005b3480156106d357600080fd5b506106dc611a79565b6040516106e99190615084565b60405180910390f35b3480156106fe57600080fd5b50610707611a9f565b6040516107149190615378565b60405180910390f35b34801561072957600080fd5b50610744600480360381019061073f9190614a41565b611aa5565b6040516107519190615100565b60405180910390f35b34801561076657600080fd5b5061076f611afb565b60405161077c9190615069565b60405180910390f35b34801561079157600080fd5b506107ac60048036038101906107a79190614c88565b611b24565b005b3480156107ba57600080fd5b506107c3611c55565b6040516107d09190615136565b60405180910390f35b3480156107e557600080fd5b5061080060048036038101906107fb9190614b5b565b611ce7565b60405161080d9190615100565b60405180910390f35b34801561082257600080fd5b5061082b611db4565b005b34801561083957600080fd5b50610854600480360381019061084f9190614b5b565b611f88565b6040516108619190615100565b60405180910390f35b34801561087657600080fd5b50610891600480360381019061088c9190614a9b565b611fa6565b005b34801561089f57600080fd5b506108a861207f565b6040516108b59190615378565b60405180910390f35b3480156108ca57600080fd5b506108d3612089565b6040516108e09190615378565b60405180910390f35b3480156108f557600080fd5b50610910600480360381019061090b9190614b9b565b61208f565b005b34801561091e57600080fd5b50610927612178565b6040516109349190615378565b60405180910390f35b34801561094957600080fd5b50610964600480360381019061095f9190614bc8565b61217e565b005b34801561097257600080fd5b5061098d60048036038101906109889190614ac8565b612345565b60405161099a9190615378565b60405180910390f35b3480156109af57600080fd5b506109ca60048036038101906109c59190614a41565b6123cc565b005b3480156109d857600080fd5b506109f360048036038101906109ee9190614a41565b6124bc565b005b6060600c8054610a049061568b565b80601f0160208091040260200160405190810160405280929190818152602001828054610a309061568b565b8015610a7d5780601f10610a5257610100808354040283529160200191610a7d565b820191906000526020600020905b815481529060010190602001808311610a6057829003601f168201915b5050505050905090565b610a8f61267e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b1c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b1390615278565b60405180910390fd5b8060198190555050565b6000610b3a610b3361267e565b8484612686565b6001905092915050565b601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600954905090565b60135481565b6000610b87848484612851565b610c4884610b9361267e565b610c4385604051806060016040528060288152602001615cc860289139600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610bf961267e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546129cc9092919063ffffffff16565b612686565b600190509392505050565b601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600a54821115610cc0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cb790615158565b60405180910390fd5b6000610cca612a30565b9050610cdf8184612a5b90919063ffffffff16565b915050919050565b6000600e60009054906101000a900460ff16905090565b610d0661267e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d93576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d8a90615278565b60405180910390fd5b600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16610e1f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e16906151d8565b60405180910390fd5b60005b600880549050811015611049578173ffffffffffffffffffffffffffffffffffffffff1660088281548110610e5a57610e596157c2565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156110365760086001600880549050610eb59190615575565b81548110610ec657610ec56157c2565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660088281548110610f0557610f046157c2565b5b9060005260206000200160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506008805480610ffc57610ffb615793565b5b6001900381819060005260206000200160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690559055611049565b8080611041906156bd565b915050610e22565b5050565b60006110f661105a61267e565b846110f1856005600061106b61267e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612aa590919063ffffffff16565b612686565b6001905092915050565b600f5481565b600061111061267e565b9050600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561119f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161119690615338565b60405180910390fd5b60006111aa83612b03565b5050505050905061120381600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612b5f90919063ffffffff16565b600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061125b81600a54612b5f90919063ffffffff16565b600a8190555061127683600b54612aa590919063ffffffff16565b600b81905550505050565b61128961267e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611316576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161130d90615278565b60405180910390fd5b6001600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60006009548311156113b8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113af90615218565b60405180910390fd5b816113d85760006113c884612b03565b50505050509050809150506113ef565b60006113e384612b03565b50505050915050809150505b92915050565b601c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601c60159054906101000a900460ff1681565b61143661267e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146114c3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114ba90615278565b60405180910390fd5b600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611550576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611547906151d8565b60405180910390fd5b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541115611624576115e0600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610c79565b600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b6001600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506008819080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b61174061267e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146117cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117c490615278565b60405180910390fd5b80601a819055506117ef60c86117e1610b6a565b612a5b90919063ffffffff16565b601a5411611832576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611829906151f8565b60405180910390fd5b50565b60115481565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156118d657600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050611921565b61191e600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610c79565b90505b919050565b61192e61267e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146119bb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119b290615278565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601a5481565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b611b2c61267e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611bb9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bb090615278565b60405180910390fd5b600a611bf282611be485611bd6888a612aa590919063ffffffff16565b612aa590919063ffffffff16565b612aa590919063ffffffff16565b1115611c33576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c2a90615318565b60405180910390fd5b83600f8190555082601181905550816013819055508060168190555050505050565b6060600d8054611c649061568b565b80601f0160208091040260200160405190810160405280929190818152602001828054611c909061568b565b8015611cdd5780601f10611cb257610100808354040283529160200191611cdd565b820191906000526020600020905b815481529060010190602001808311611cc057829003601f168201915b5050505050905090565b6000611daa611cf461267e565b84611da585604051806060016040528060258152602001615cf06025913960056000611d1e61267e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546129cc9092919063ffffffff16565b612686565b6001905092915050565b3373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611e44576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e3b90615358565b60405180910390fd5b6002544211611e88576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e7f906152f8565b60405180910390fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000611f9c611f9561267e565b8484612851565b6001905092915050565b611fae61267e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461203b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161203290615278565b60405180910390fd5b80601560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600254905090565b60165481565b61209761267e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612124576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161211b90615278565b60405180910390fd5b80601c60156101000a81548160ff0219169083151502179055507f53726dfcaf90650aa7eb35524f4d3220f07413c8d6cb404cc8c18bf5591bc1598160405161216d9190615100565b60405180910390a150565b60195481565b61218661267e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612213576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161220a90615278565b60405180910390fd5b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080426122c19190615494565b600281905550600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6123d461267e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612461576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161245890615278565b60405180910390fd5b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6124c461267e565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612551576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161254890615278565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156125c1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125b890615178565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156126f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126ed906152d8565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612766576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161275d90615198565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516128449190615378565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156128c1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128b8906152b8565b60405180910390fd5b60008111612904576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128fb90615298565b60405180910390fd5b600061290f3061183b565b9050600060195482101590508080156129355750601c60149054906101000a900460ff16155b801561298e5750601c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b80156129a65750601c60159054906101000a900460ff165b156129ba5760195491506129b982612ba9565b5b6129c5858585612d45565b5050505050565b6000838311158290612a14576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a0b9190615136565b60405180910390fd5b5060008385612a239190615575565b9050809150509392505050565b6000806000612a3d6131e1565b91509150612a548183612a5b90919063ffffffff16565b9250505090565b6000612a9d83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250613494565b905092915050565b6000808284612ab49190615494565b905083811015612af9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612af0906151b8565b60405180910390fd5b8091505092915050565b6000806000806000806000806000612b1a8a6134f7565b9250925092506000806000612b388d8686612b33612a30565b613551565b9250925092508282828888889b509b509b509b509b509b5050505050505091939550919395565b6000612ba183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506129cc565b905092915050565b6001601c60146101000a81548160ff0219169083151502179055506000612c03612be0601354601154612aa590919063ffffffff16565b612bf5601154856135da90919063ffffffff16565b612a5b90919063ffffffff16565b90506000612c1b600283612a5b90919063ffffffff16565b90506000612c328284612b5f90919063ffffffff16565b90506000479050612c4283613655565b6000612c578247612b5f90919063ffffffff16565b9050612c6383826138a7565b612c7e612c798688612b5f90919063ffffffff16565b613655565b601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f19350505050158015612ce6573d6000803e3d6000fd5b507f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb561848285604051612d1a939291906153ed565b60405180910390a150505050506000601c60146101000a81548160ff02191690831515021790555050565b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680612de65750600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b15612df857612df361399b565b612e3e565b601a54811115612e3d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612e3490615238565b60405180910390fd5b5b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff168015612ee15750600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15612ef657612ef1838383613a1c565b61312d565b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16158015612f995750600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b15612fae57612fa9838383613c7c565b61312c565b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156130525750600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561306757613062838383613edc565b61312b565b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156131095750600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b1561311e576131198383836140cf565b61312a565b613129838383613edc565b5b5b5b5b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806131ce5750600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156131dc576131db6143c4565b5b505050565b6000806000600a5490506000600954905060005b6008805490508110156134575782600360006008848154811061321b5761321a6157c2565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054118061330957508160046000600884815481106132a1576132a06157c2565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b1561332057600a5460095494509450505050613490565b6133b0600360006008848154811061333b5761333a6157c2565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205484612b5f90919063ffffffff16565b925061344260046000600884815481106133cd576133cc6157c2565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483612b5f90919063ffffffff16565b9150808061344f906156bd565b9150506131f5565b5061346f600954600a54612a5b90919063ffffffff16565b82101561348757600a54600954935093505050613490565b81819350935050505b9091565b600080831182906134db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016134d29190615136565b60405180910390fd5b50600083856134ea91906154ea565b9050809150509392505050565b600080600080613506856143ea565b905060006135138661441b565b9050600061353c8261352e858a612b5f90919063ffffffff16565b612b5f90919063ffffffff16565b90508083839550955095505050509193909250565b60008060008061356a85896135da90919063ffffffff16565b9050600061358186896135da90919063ffffffff16565b9050600061359887896135da90919063ffffffff16565b905060006135c1826135b38587612b5f90919063ffffffff16565b612b5f90919063ffffffff16565b9050838184965096509650505050509450945094915050565b6000808314156135ed576000905061364f565b600082846135fb919061551b565b905082848261360a91906154ea565b1461364a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161364190615258565b60405180910390fd5b809150505b92915050565b6000600267ffffffffffffffff811115613672576136716157f1565b5b6040519080825280602002602001820160405280156136a05781602001602082028036833780820191505090505b50905030816000815181106136b8576136b76157c2565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561375a57600080fd5b505afa15801561376e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906137929190614a6e565b816001815181106137a6576137a56157c2565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061380d30601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684612686565b601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401613871959493929190615393565b600060405180830381600087803b15801561388b57600080fd5b505af115801561389f573d6000803e3d6000fd5b505050505050565b6138d430601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684612686565b601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d719823085600080613920611afb565b426040518863ffffffff1660e01b81526004016139429695949392919061509f565b6060604051808303818588803b15801561395b57600080fd5b505af115801561396f573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906139949190614c35565b5050505050565b6000600f541480156139af57506000601154145b80156139bd57506000601354145b80156139cb57506000601654145b156139d557613a1a565b600f546010819055506011546012819055506016546017819055506013546014819055506000600f819055506000601181905550600060138190555060006016819055505b565b600080600080600080613a2e87612b03565b955095509550955095509550613a8c87600460008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612b5f90919063ffffffff16565b600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613b2186600360008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612b5f90919063ffffffff16565b600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613bb685600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612aa590919063ffffffff16565b600360008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613c028161444c565b613c0c84836145f1565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051613c699190615378565b60405180910390a3505050505050505050565b600080600080600080613c8e87612b03565b955095509550955095509550613cec86600360008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612b5f90919063ffffffff16565b600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613d8183600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612aa590919063ffffffff16565b600460008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613e1685600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612aa590919063ffffffff16565b600360008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613e628161444c565b613e6c84836145f1565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051613ec99190615378565b60405180910390a3505050505050505050565b600080600080600080613eee87612b03565b955095509550955095509550613f068984878a61462b565b8096508194505050613f1a8984878a61482a565b8096508194505050613f7486600360008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612b5f90919063ffffffff16565b600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061400985600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612aa590919063ffffffff16565b600360008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506140558161444c565b61405f84836145f1565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516140bc9190615378565b60405180910390a3505050505050505050565b6000806000806000806140e187612b03565b95509550955095509550955061413f87600460008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612b5f90919063ffffffff16565b600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506141d486600360008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612b5f90919063ffffffff16565b600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061426983600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612aa590919063ffffffff16565b600460008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506142fe85600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612aa590919063ffffffff16565b600360008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061434a8161444c565b61435484836145f1565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516143b19190615378565b60405180910390a3505050505050505050565b601054600f81905550601254601181905550601754601681905550601454601381905550565b60006144146064614406600f54856135da90919063ffffffff16565b612a5b90919063ffffffff16565b9050919050565b60006144456064614437601154856135da90919063ffffffff16565b612a5b90919063ffffffff16565b9050919050565b6000614456612a30565b9050600061446d82846135da90919063ffffffff16565b90506144c181600360003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612aa590919063ffffffff16565b600360003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600760003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156145ec576145a883600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612aa590919063ffffffff16565b600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b505050565b61460682600a54612b5f90919063ffffffff16565b600a8190555061462181600b54612aa590919063ffffffff16565b600b819055505050565b6000806000601654141561464457848491509150614821565b600061466e601654614660606487612a5b90919063ffffffff16565b6135da90919063ffffffff16565b9050600061468c61467d612a30565b836135da90919063ffffffff16565b90506146a18187612b5f90919063ffffffff16565b95506146b68288612b5f90919063ffffffff16565b965061472c8160036000601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612aa590919063ffffffff16565b60036000601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516148109190615378565b60405180910390a386869350935050505b94509492505050565b60008060006013541415614843578484915091506149ba565b600061486d60135461485f606487612a5b90919063ffffffff16565b6135da90919063ffffffff16565b9050600061488b61487c612a30565b836135da90919063ffffffff16565b90506148a08187612b5f90919063ffffffff16565b95506148b58288612b5f90919063ffffffff16565b965061490981600360003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612aa590919063ffffffff16565b600360003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516149a99190615378565b60405180910390a386869350935050505b94509492505050565b6000813590506149d281615c6b565b92915050565b6000815190506149e781615c6b565b92915050565b6000813590506149fc81615c82565b92915050565b600081359050614a1181615c99565b92915050565b600081359050614a2681615cb0565b92915050565b600081519050614a3b81615cb0565b92915050565b600060208284031215614a5757614a56615820565b5b6000614a65848285016149c3565b91505092915050565b600060208284031215614a8457614a83615820565b5b6000614a92848285016149d8565b91505092915050565b600060208284031215614ab157614ab0615820565b5b6000614abf848285016149ed565b91505092915050565b60008060408385031215614adf57614ade615820565b5b6000614aed858286016149c3565b9250506020614afe858286016149c3565b9150509250929050565b600080600060608486031215614b2157614b20615820565b5b6000614b2f868287016149c3565b9350506020614b40868287016149c3565b9250506040614b5186828701614a17565b9150509250925092565b60008060408385031215614b7257614b71615820565b5b6000614b80858286016149c3565b9250506020614b9185828601614a17565b9150509250929050565b600060208284031215614bb157614bb0615820565b5b6000614bbf84828501614a02565b91505092915050565b600060208284031215614bde57614bdd615820565b5b6000614bec84828501614a17565b91505092915050565b60008060408385031215614c0c57614c0b615820565b5b6000614c1a85828601614a17565b9250506020614c2b85828601614a02565b9150509250929050565b600080600060608486031215614c4e57614c4d615820565b5b6000614c5c86828701614a2c565b9350506020614c6d86828701614a2c565b9250506040614c7e86828701614a2c565b9150509250925092565b60008060008060808587031215614ca257614ca1615820565b5b6000614cb087828801614a17565b9450506020614cc187828801614a17565b9350506040614cd287828801614a17565b9250506060614ce387828801614a17565b91505092959194509250565b6000614cfb8383614d16565b60208301905092915050565b614d10816155bb565b82525050565b614d1f816155a9565b82525050565b614d2e816155a9565b82525050565b6000614d3f8261544f565b614d498185615472565b9350614d548361543f565b8060005b83811015614d85578151614d6c8882614cef565b9750614d7783615465565b925050600181019050614d58565b5085935050505092915050565b614d9b816155cd565b82525050565b614daa81615610565b82525050565b614db981615622565b82525050565b6000614dca8261545a565b614dd48185615483565b9350614de4818560208601615658565b614ded81615825565b840191505092915050565b6000614e05602a83615483565b9150614e1082615836565b604082019050919050565b6000614e28602683615483565b9150614e3382615885565b604082019050919050565b6000614e4b602283615483565b9150614e56826158d4565b604082019050919050565b6000614e6e601b83615483565b9150614e7982615923565b602082019050919050565b6000614e91601b83615483565b9150614e9c8261594c565b602082019050919050565b6000614eb4600d83615483565b9150614ebf82615975565b602082019050919050565b6000614ed7601f83615483565b9150614ee28261599e565b602082019050919050565b6000614efa602883615483565b9150614f05826159c7565b604082019050919050565b6000614f1d602183615483565b9150614f2882615a16565b604082019050919050565b6000614f40602083615483565b9150614f4b82615a65565b602082019050919050565b6000614f63602983615483565b9150614f6e82615a8e565b604082019050919050565b6000614f86602583615483565b9150614f9182615add565b604082019050919050565b6000614fa9602483615483565b9150614fb482615b2c565b604082019050919050565b6000614fcc601f83615483565b9150614fd782615b7b565b602082019050919050565b6000614fef600c83615483565b9150614ffa82615ba4565b602082019050919050565b6000615012602c83615483565b915061501d82615bcd565b604082019050919050565b6000615035602383615483565b915061504082615c1c565b604082019050919050565b615054816155f9565b82525050565b61506381615603565b82525050565b600060208201905061507e6000830184614d25565b92915050565b60006020820190506150996000830184614d07565b92915050565b600060c0820190506150b46000830189614d25565b6150c1602083018861504b565b6150ce6040830187614db0565b6150db6060830186614db0565b6150e86080830185614d25565b6150f560a083018461504b565b979650505050505050565b60006020820190506151156000830184614d92565b92915050565b60006020820190506151306000830184614da1565b92915050565b600060208201905081810360008301526151508184614dbf565b905092915050565b6000602082019050818103600083015261517181614df8565b9050919050565b6000602082019050818103600083015261519181614e1b565b9050919050565b600060208201905081810360008301526151b181614e3e565b9050919050565b600060208201905081810360008301526151d181614e61565b9050919050565b600060208201905081810360008301526151f181614e84565b9050919050565b6000602082019050818103600083015261521181614ea7565b9050919050565b6000602082019050818103600083015261523181614eca565b9050919050565b6000602082019050818103600083015261525181614eed565b9050919050565b6000602082019050818103600083015261527181614f10565b9050919050565b6000602082019050818103600083015261529181614f33565b9050919050565b600060208201905081810360008301526152b181614f56565b9050919050565b600060208201905081810360008301526152d181614f79565b9050919050565b600060208201905081810360008301526152f181614f9c565b9050919050565b6000602082019050818103600083015261531181614fbf565b9050919050565b6000602082019050818103600083015261533181614fe2565b9050919050565b6000602082019050818103600083015261535181615005565b9050919050565b6000602082019050818103600083015261537181615028565b9050919050565b600060208201905061538d600083018461504b565b92915050565b600060a0820190506153a8600083018861504b565b6153b56020830187614db0565b81810360408301526153c78186614d34565b90506153d66060830185614d25565b6153e3608083018461504b565b9695505050505050565b6000606082019050615402600083018661504b565b61540f602083018561504b565b61541c604083018461504b565b949350505050565b6000602082019050615439600083018461505a565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600061549f826155f9565b91506154aa836155f9565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156154df576154de615706565b5b828201905092915050565b60006154f5826155f9565b9150615500836155f9565b9250826155105761550f615735565b5b828204905092915050565b6000615526826155f9565b9150615531836155f9565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561556a57615569615706565b5b828202905092915050565b6000615580826155f9565b915061558b836155f9565b92508282101561559e5761559d615706565b5b828203905092915050565b60006155b4826155d9565b9050919050565b60006155c6826155d9565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b600061561b82615634565b9050919050565b600061562d826155f9565b9050919050565b600061563f82615646565b9050919050565b6000615651826155d9565b9050919050565b60005b8381101561567657808201518184015260208101905061565b565b83811115615685576000848401525b50505050565b600060028204905060018216806156a357607f821691505b602082108114156156b7576156b6615764565b5b50919050565b60006156c8826155f9565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156156fb576156fa615706565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f4163636f756e7420697320616c7265616479206578636c756465640000000000600082015250565b7f76616c756520746f6f206c6f7700000000000000000000000000000000000000600082015250565b7f416d6f756e74206d757374206265206c657373207468616e20737570706c7900600082015250565b7f5472616e7366657220616d6f756e74206578636565647320746865206d61785460008201527f78416d6f756e742e000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f436f6e7472616374206973206c6f636b656420756e74696c2037206461797300600082015250565b7f74617820746f6f20686967680000000000000000000000000000000000000000600082015250565b7f4578636c75646564206164647265737365732063616e6e6f742063616c6c207460008201527f6869732066756e6374696f6e0000000000000000000000000000000000000000602082015250565b7f596f7520646f6e27742068617665207065726d697373696f6e20746f20756e6c60008201527f6f636b0000000000000000000000000000000000000000000000000000000000602082015250565b615c74816155a9565b8114615c7f57600080fd5b50565b615c8b816155bb565b8114615c9657600080fd5b50565b615ca2816155cd565b8114615cad57600080fd5b50565b615cb9816155f9565b8114615cc457600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212208a12a741017846efd1d0bda2b2fd90817fe87bc6d2ee30f3d04b26223227aebf64736f6c63430008070033