0x6102a0604052610bb861014090815250600a610160908152506003610180908152506001601060006101000a81548160ff0219169083151502179055506001601060016101000a81548160ff0219169083151502179055506001601060026101000a81548160ff0219169083151502179055506422ecb25c006101a090815250641e449a94006101c090815250631dcd650060115561022660125573c16157e00b1bff1522c6f01246b4fb621da048d0601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060c86014556103e86101e0908152506102bc6102009081525061012c6102209081525073212bcfe60f8e71aecbd490c141eb6973e7b6b25173ffffffffffffffffffffffffffffffffffffffff166102409073ffffffffffffffffffffffffffffffffffffffff1681525073c88c655c62e55de376561fc9154df9548d761f4573ffffffffffffffffffffffffffffffffffffffff166102609073ffffffffffffffffffffffffffffffffffffffff16815250737520573d4cb32f5e094200dd598d1893176c841d73ffffffffffffffffffffffffffffffffffffffff166102809073ffffffffffffffffffffffffffffffffffffffff16815250348015620001f757600080fd5b5060405162006cec38038062006cec83398181016040528101906200021d91906200097a565b81816040518060400160405280600a81526020017f414242204c6567616379000000000000000000000000000000000000000000008152506040518060400160405280600181526020017f310000000000000000000000000000000000000000000000000000000000000081525060008280519060200120905060008280519060200120905060007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f90508260e081815250508161010081815250504660a08181525050620002f48184846200046c60201b60201c565b608081815250503073ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff168152505080610120818152505050505050508160039080519060200190620003559291906200072d565b5080600490805190602001906200036e9291906200072d565b506200037f620004a860201b60201c565b6001819055505050620003a76200039b620004b160201b60201c565b620004b960201b60201c565b620003bb336101f46200057f60201b60201c565b73df8d2b9c6ed300edc38f24133a2e1ac150ff7f176000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550735f4ec3df9cbd43714fe2740f5e3616155c5b8419600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505062000c57565b600083838346306040516020016200048995949392919062000a7a565b6040516020818303038152906040528051906020012090509392505050565b60006001905090565b600033905090565b6000600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6200058f6200072360201b60201c565b6bffffffffffffffffffffffff16816bffffffffffffffffffffffff161115620005f0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620005e79062000b5e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141562000663576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200065a9062000bd0565b60405180910390fd5b60405180604001604052808373ffffffffffffffffffffffffffffffffffffffff168152602001826bffffffffffffffffffffffff16815250600960008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160000160146101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055509050505050565b6000612710905090565b8280546200073b9062000c21565b90600052602060002090601f0160209004810192826200075f5760008555620007ab565b82601f106200077a57805160ff1916838001178555620007ab565b82800160010185558215620007ab579182015b82811115620007aa5782518255916020019190600101906200078d565b5b509050620007ba9190620007be565b5090565b5b80821115620007d9576000816000905550600101620007bf565b5090565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6200084682620007fb565b810181811067ffffffffffffffff821117156200086857620008676200080c565b5b80604052505050565b60006200087d620007dd565b90506200088b82826200083b565b919050565b600067ffffffffffffffff821115620008ae57620008ad6200080c565b5b620008b982620007fb565b9050602081019050919050565b60005b83811015620008e6578082015181840152602081019050620008c9565b83811115620008f6576000848401525b50505050565b6000620009136200090d8462000890565b62000871565b905082815260208101848484011115620009325762000931620007f6565b5b6200093f848285620008c6565b509392505050565b600082601f8301126200095f576200095e620007f1565b5b815162000971848260208601620008fc565b91505092915050565b60008060408385031215620009945762000993620007e7565b5b600083015167ffffffffffffffff811115620009b557620009b4620007ec565b5b620009c38582860162000947565b925050602083015167ffffffffffffffff811115620009e757620009e6620007ec565b5b620009f58582860162000947565b9150509250929050565b6000819050919050565b62000a1481620009ff565b82525050565b6000819050919050565b62000a2f8162000a1a565b82525050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000a628262000a35565b9050919050565b62000a748162000a55565b82525050565b600060a08201905062000a91600083018862000a09565b62000aa0602083018762000a09565b62000aaf604083018662000a09565b62000abe606083018562000a24565b62000acd608083018462000a69565b9695505050505050565b600082825260208201905092915050565b7f455243323938313a20726f79616c7479206665652077696c6c2065786365656460008201527f2073616c65507269636500000000000000000000000000000000000000000000602082015250565b600062000b46602a8362000ad7565b915062000b538262000ae8565b604082019050919050565b6000602082019050818103600083015262000b798162000b37565b9050919050565b7f455243323938313a20696e76616c696420726563656976657200000000000000600082015250565b600062000bb860198362000ad7565b915062000bc58262000b80565b602082019050919050565b6000602082019050818103600083015262000beb8162000ba9565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168062000c3a57607f821691505b6020821081141562000c515762000c5062000bf2565b5b50919050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e0516102005161022051610240516102605161028051615f8662000d66600039600081816116c701526133b501526000818161166a015261333f01526000818161160d01526132c90152600061326601526000613229015260006131ec0152600081816114210152612097015260008181611b8601526120fd015260008181611f3d015261249d015260008181611a45015261291b015260008181610c0c015281816119e301528181611bc50152611edb01526000613d7f01526000613dc101526000613da001526000613cd501526000613d2b01526000613d540152615f866000f3fe6080604052600436106103295760003560e01c80635a2e832d116101a5578063a22cb465116100ec578063cfc86f7b11610095578063e0f9b4791161006f578063e0f9b47914610b2e578063e7588bbb14610b59578063e985e9c514610b82578063f2fde38b14610bbf57610329565b8063cfc86f7b14610abe578063d2039bf314610ae9578063dab823a814610b1257610329565b8063b88d4fde116100c6578063b88d4fde14610a1b578063c87b56dd14610a44578063ce7c2ac214610a8157610329565b8063a22cb4651461099e578063ab59fa4d146109c7578063b3713669146109f057610329565b806379de186a1161014e578063877d210111610128578063877d21011461091f5780638da5cb5b1461094857806395d89b411461097357610329565b806379de186a1461088c5780637a233fb3146108b75780637f023e07146108e257610329565b80636817c76c1161017f5780636817c76c1461080d57806370a0823114610838578063715018a61461087557610329565b80635a2e832d1461077a5780635b2ba2ac146107a55780636352211e146107d057610329565b80632a55205a1161027457806341dbd0d61161021d578063484b973c116101f7578063484b973c146106cf578063486d13b3146106f85780634ee7b7f51461073557806355f804b31461075157610329565b806341dbd0d61461065057806342842e0e1461067b5780634322d8c3146106a457610329565b8063383027d01161024e578063383027d0146105f45780633ccfd60b1461061d57806340c10f191461063457610329565b80632a55205a1461056257806330c8d881146105a057806331c515b8146105cb57610329565b80630f4161aa116102d657806323b872dd116102b057806323b872dd146104d157806325418cb2146104fa57806329db19341461052557610329565b80630f4161aa146104505780631029a8f21461047b57806318160ddd146104a657610329565b806306fdde031161030757806306fdde03146103bf578063081812fc146103ea578063095ea7b31461042757610329565b806301ffc9a71461032e578063031bd4c41461036b57806304634d8d14610396575b600080fd5b34801561033a57600080fd5b506103556004803603810190610350919061429b565b610be8565b60405161036291906142e3565b60405180910390f35b34801561037757600080fd5b50610380610c0a565b60405161038d9190614317565b60405180910390f35b3480156103a257600080fd5b506103bd60048036038101906103b891906143d4565b610c2e565b005b3480156103cb57600080fd5b506103d4610c44565b6040516103e191906144ad565b60405180910390f35b3480156103f657600080fd5b50610411600480360381019061040c91906144fb565b610cd6565b60405161041e9190614537565b60405180910390f35b34801561043357600080fd5b5061044e60048036038101906104499190614552565b610d55565b005b34801561045c57600080fd5b50610465610e99565b60405161047291906142e3565b60405180910390f35b34801561048757600080fd5b50610490610eac565b60405161049d91906142e3565b60405180910390f35b3480156104b257600080fd5b506104bb610ebf565b6040516104c89190614317565b60405180910390f35b3480156104dd57600080fd5b506104f860048036038101906104f39190614592565b610ed6565b005b34801561050657600080fd5b5061050f6111fb565b60405161051c91906145fe565b60405180910390f35b34801561053157600080fd5b5061054c600480360381019061054791906144fb565b611201565b6040516105599190614537565b60405180910390f35b34801561056e57600080fd5b5061058960048036038101906105849190614619565b611234565b604051610597929190614659565b60405180910390f35b3480156105ac57600080fd5b506105b561141f565b6040516105c291906145fe565b60405180910390f35b3480156105d757600080fd5b506105f260048036038101906105ed91906146ae565b611443565b005b34801561060057600080fd5b5061061b600480360381019061061691906144fb565b611483565b005b34801561062957600080fd5b506106326115aa565b005b61064e60048036038101906106499190614552565b611883565b005b34801561065c57600080fd5b50610665611b5e565b6040516106729190614317565b60405180910390f35b34801561068757600080fd5b506106a2600480360381019061069d9190614592565b611b64565b005b3480156106b057600080fd5b506106b9611b84565b6040516106c691906145fe565b60405180910390f35b3480156106db57600080fd5b506106f660048036038101906106f19190614552565b611ba8565b005b34801561070457600080fd5b5061071f600480360381019061071a91906146ee565b611c9d565b60405161072c9190614317565b60405180910390f35b61074f600480360381019061074a91906148a5565b611cb5565b005b34801561075d57600080fd5b50610778600480360381019061077391906149b5565b61206e565b005b34801561078657600080fd5b5061078f612090565b60405161079c9190614317565b60405180910390f35b3480156107b157600080fd5b506107ba6120c0565b6040516107c79190614537565b60405180910390f35b3480156107dc57600080fd5b506107f760048036038101906107f291906144fb565b6120e4565b6040516108049190614537565b60405180910390f35b34801561081957600080fd5b506108226120f6565b60405161082f9190614317565b60405180910390f35b34801561084457600080fd5b5061085f600480360381019061085a91906146ee565b612126565b60405161086c9190614317565b60405180910390f35b34801561088157600080fd5b5061088a6121df565b005b34801561089857600080fd5b506108a16121f3565b6040516108ae91906142e3565b60405180910390f35b3480156108c357600080fd5b506108cc612206565b6040516108d99190614317565b60405180910390f35b3480156108ee57600080fd5b50610909600480360381019061090491906146ee565b612218565b6040516109169190614317565b60405180910390f35b34801561092b57600080fd5b5061094660048036038101906109419190614a2a565b612230565b005b34801561095457600080fd5b5061095d612242565b60405161096a9190614537565b60405180910390f35b34801561097f57600080fd5b5061098861226c565b60405161099591906144ad565b60405180910390f35b3480156109aa57600080fd5b506109c560048036038101906109c09190614a57565b6122fe565b005b3480156109d357600080fd5b506109ee60048036038101906109e99190614a97565b612476565b005b3480156109fc57600080fd5b50610a0561249b565b604051610a129190614317565b60405180910390f35b348015610a2757600080fd5b50610a426004803603810190610a3d9190614ac4565b6124bf565b005b348015610a5057600080fd5b50610a6b6004803603810190610a6691906144fb565b612532565b604051610a7891906144ad565b60405180910390f35b348015610a8d57600080fd5b50610aa86004803603810190610aa391906146ee565b6125d1565b604051610ab59190614317565b60405180910390f35b348015610aca57600080fd5b50610ad36125e9565b604051610ae091906144ad565b60405180910390f35b348015610af557600080fd5b50610b106004803603810190610b0b91906146ee565b612677565b005b610b2c6004803603810190610b2791906144fb565b6126c2565b005b348015610b3a57600080fd5b50610b43612919565b604051610b509190614317565b60405180910390f35b348015610b6557600080fd5b50610b806004803603810190610b7b9190614552565b61293d565b005b348015610b8e57600080fd5b50610ba96004803603810190610ba49190614b47565b6129d5565b604051610bb691906142e3565b60405180910390f35b348015610bcb57600080fd5b50610be66004803603810190610be191906146ee565b612a69565b005b6000610bf382612aed565b80610c035750610c0282612b7f565b5b9050919050565b7f000000000000000000000000000000000000000000000000000000000000000081565b610c36612bf9565b610c408282612c77565b5050565b606060038054610c5390614bb6565b80601f0160208091040260200160405190810160405280929190818152602001828054610c7f90614bb6565b8015610ccc5780601f10610ca157610100808354040283529160200191610ccc565b820191906000526020600020905b815481529060010190602001808311610caf57829003601f168201915b5050505050905090565b6000610ce182612e0d565b610d17576040517fcf4700e400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6007600083815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000610d60826120e4565b90508073ffffffffffffffffffffffffffffffffffffffff16610d81612e6c565b73ffffffffffffffffffffffffffffffffffffffff1614610de457610dad81610da8612e6c565b6129d5565b610de3576040517fcfb3b94200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b826007600084815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550818373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a4505050565b601060029054906101000a900460ff1681565b601060009054906101000a900460ff1681565b6000610ec9612e74565b6002546001540303905090565b6000610ee182612e7d565b90508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610f48576040517fa114810000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080610f5484612f4b565b91509150610f6a8187610f65612e6c565b612f72565b610fb657610f7f86610f7a612e6c565b6129d5565b610fb5576040517f59c896be00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16141561101d576040517fea553b3400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61102a8686866001612fb6565b801561103557600082555b600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600081546001900391905081905550600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000815460010191905081905550611103856110df888887612fbc565b7c020000000000000000000000000000000000000000000000000000000017612fe4565b600560008681526020019081526020016000208190555060007c02000000000000000000000000000000000000000000000000000000008416141561118b576000600185019050600060056000838152602001908152602001600020541415611189576001548114611188578360056000838152602001908152602001600020819055505b5b505b838573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46111f3868686600161300f565b505050505050565b60115481565b600d6020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000600a60008681526020019081526020016000206040518060400160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016000820160149054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff166bffffffffffffffffffffffff16815250509050600073ffffffffffffffffffffffffffffffffffffffff16816000015173ffffffffffffffffffffffffffffffffffffffff1614156113ca5760096040518060400160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016000820160149054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff166bffffffffffffffffffffffff168152505090505b60006113d4613015565b6bffffffffffffffffffffffff1682602001516bffffffffffffffffffffffff16866114009190614c17565b61140a9190614ca0565b90508160000151819350935050509250929050565b7f000000000000000000000000000000000000000000000000000000000000000081565b61144b612bf9565b81601060016101000a81548160ff02191690831515021790555080601060026101000a81548160ff0219169083151502179055505050565b61148b612bf9565b600073ffffffffffffffffffffffffffffffffffffffff16600d600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561152e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161152590614d1d565b60405180910390fd5b600d600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055807fb63c28e63a0c74e576e7c530da1542f956a1cfc7fb520af576f914e2874c644d61158f836120e4565b600060405161159f929190614d3d565b60405180910390a250565b6115b261301f565b73ffffffffffffffffffffffffffffffffffffffff166115d0612242565b73ffffffffffffffffffffffffffffffffffffffff16148061164457506115f561301f565b73ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16145b806116a1575061165261301f565b73ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16145b806116fe57506116af61301f565b73ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16145b61173d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161173490614db2565b60405180910390fd5b6000601660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054116117bf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117b690614e1e565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc601660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549081150290604051600060405180830381858888f1935050505061183c57600080fd5b6000601660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550565b60011515601060029054906101000a900460ff161515146118d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118d090614eb0565b60405180910390fd5b60003373ffffffffffffffffffffffffffffffffffffffff16601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156119565760125461271061193f6120f6565b6119499190614ca0565b6119539190614c17565b90505b60c860c783836119646120f6565b61196e9190614ed0565b6119789190614c17565b6119829190614c17565b61198c9190614ca0565b3410156119ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119c590614f50565b60405180910390fd5b816119d7610ebf565b6119e19190614f70565b7f00000000000000000000000000000000000000000000000000000000000000001015611a43576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a3a90615012565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000082600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611aaf9190614f70565b1115611af0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ae79061507e565b60405180910390fd5b611afa8383613027565b81600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611b499190614f70565b92505081905550611b59346131e5565b505050565b60125481565b611b7f838383604051806020016040528060008152506124bf565b505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b611bb0612bf9565b80611bb9610ebf565b611bc39190614f70565b7f00000000000000000000000000000000000000000000000000000000000000001015611c25576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c1c90615012565b60405180910390fd5b600081601454611c35919061509e565b1215611c76576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c6d9061517e565b60405180910390fd5b611c808282613027565b8060146000828254611c92919061509e565b925050819055505050565b600e6020528060005260406000206000915090505481565b60011515601060019054906101000a900460ff16151514611d0b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d02906151ea565b60405180910390fd5b60003373ffffffffffffffffffffffffffffffffffffffff16601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611d8857601254612710611d716120f6565b611d7b9190614ca0565b611d859190614c17565b90505b600060c860c78684611d986120f6565b611da29190614ed0565b611dac9190614c17565b611db69190614c17565b611dc09190614ca0565b9050600284602001511415611e83573373ffffffffffffffffffffffffffffffffffffffff16601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611e4a57601254612710611e33612090565b611e3d9190614ca0565b611e479190614c17565b91505b60c860c78684611e58612090565b611e629190614ed0565b611e6c9190614c17565b611e769190614c17565b611e809190614ca0565b90505b80341015611ec6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ebd90614f50565b60405180910390fd5b84611ecf610ebf565b611ed99190614f70565b7f00000000000000000000000000000000000000000000000000000000000000001015611f3b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f3290615256565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000085600e6000876000015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611fab9190614f70565b1115611fec576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fe39061507e565b60405180910390fd5b611ff68484613488565b612004846000015186613027565b84600e6000866000015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546120579190614f70565b92505081905550612067346131e5565b5050505050565b612076612bf9565b806015908051906020019061208c92919061418c565b5050565b60006120bb7f0000000000000000000000000000000000000000000000000000000000000000613545565b905090565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006120ef82612e7d565b9050919050565b60006121217f0000000000000000000000000000000000000000000000000000000000000000613545565b905090565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561218e576040517f8f4eb60400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054169050919050565b6121e7612bf9565b6121f1600061361d565b565b601060019054906101000a900460ff1681565b6000612213601154613545565b905090565b600f6020528060005260406000206000915090505481565b612238612bf9565b8060118190555050565b6000600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606004805461227b90614bb6565b80601f01602080910402602001604051908101604052809291908181526020018280546122a790614bb6565b80156122f45780601f106122c9576101008083540402835291602001916122f4565b820191906000526020600020905b8154815290600101906020018083116122d757829003601f168201915b5050505050905090565b612306612e6c565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561236b576040517fb06307db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8060086000612378612e6c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff16612425612e6c565b73ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c318360405161246a91906142e3565b60405180910390a35050565b61247e612bf9565b80601060006101000a81548160ff02191690831515021790555050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6124ca848484610ed6565b60008373ffffffffffffffffffffffffffffffffffffffff163b1461252c576124f5848484846136e3565b61252b576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b50505050565b606061253d82612e0d565b612573576040517fa14c4b5000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061257d613834565b905060008151141561259e57604051806020016040528060008152506125c9565b806125a884613925565b6040516020016125b99291906152b2565b6040516020818303038152906040525b915050919050565b60166020528060005260406000206000915090505481565b601580546125f690614bb6565b80601f016020809104026020016040519081016040528092919081815260200182805461262290614bb6565b801561266f5780601f106126445761010080835404028352916020019161266f565b820191906000526020600020905b81548152906001019060200180831161265257829003601f168201915b505050505081565b61267f612bf9565b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60011515601060009054906101000a900460ff16151514612718576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161270f90615322565b60405180910390fd5b60c860c7612724612206565b61272e9190614c17565b6127389190614ca0565b34101561277a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161277190614f50565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600d600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461281c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128139061538e565b60405180910390fd5b612825816120e4565b600d600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550807fb63c28e63a0c74e576e7c530da1542f956a1cfc7fb520af576f914e2874c644d6128a1836120e4565b60016040516128b1929190614d3d565b60405180910390a234601660006128c6612242565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461290f9190614f70565b9250508190555050565b7f000000000000000000000000000000000000000000000000000000000000000081565b612945612bf9565b6103e98110612989576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612980906153fa565b60405180910390fd5b81601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550806012819055505050565b6000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b612a71612bf9565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415612ae1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612ad89061548c565b60405180910390fd5b612aea8161361d565b50565b60006301ffc9a760e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480612b4857506380ac58cd60e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80612b785750635b5e139f60e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b9050919050565b60007f2a55205a000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480612bf25750612bf182613975565b5b9050919050565b612c0161301f565b73ffffffffffffffffffffffffffffffffffffffff16612c1f612242565b73ffffffffffffffffffffffffffffffffffffffff1614612c75576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c6c906154f8565b60405180910390fd5b565b612c7f613015565b6bffffffffffffffffffffffff16816bffffffffffffffffffffffff161115612cdd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612cd49061558a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612d4d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d44906155f6565b60405180910390fd5b60405180604001604052808373ffffffffffffffffffffffffffffffffffffffff168152602001826bffffffffffffffffffffffff16815250600960008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160000160146101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055509050505050565b600081612e18612e74565b11158015612e27575060015482105b8015612e65575060007c0100000000000000000000000000000000000000000000000000000000600560008581526020019081526020016000205416145b9050919050565b600033905090565b60006001905090565b60008082905080612e8c612e74565b11612f1457600154811015612f135760006005600083815260200190815260200160002054905060007c010000000000000000000000000000000000000000000000000000000082161415612f11575b6000811415612f07576005600083600190039350838152602001908152602001600020549050612edc565b8092505050612f46565b505b5b6040517fdf2d9b4200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b919050565b60008060006007600085815260200190815260200160002090508092508254915050915091565b600073ffffffffffffffffffffffffffffffffffffffff8316925073ffffffffffffffffffffffffffffffffffffffff821691508382148383141790509392505050565b50505050565b60008060e883901c905060e8612fd38686846139df565b62ffffff16901b9150509392505050565b600073ffffffffffffffffffffffffffffffffffffffff83169250814260a01b178317905092915050565b50505050565b6000612710905090565b600033905090565b600060015490506000821415613069576040517fb562e8dd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6130766000848385612fb6565b600160406001901b178202600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506130ed836130de6000866000612fbc565b6130e7856139e8565b17612fe4565b6005600083815260200190815260200160002081905550600080838301905073ffffffffffffffffffffffffffffffffffffffff85169150828260007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a4600183015b81811461318e57808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a4600181019050613153565b5060008214156131ca576040517f2e07630000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8060018190555050506131e0600084838561300f565b505050565b60006127107f0000000000000000000000000000000000000000000000000000000000000000836132169190614c17565b6132209190614ca0565b905060006127107f0000000000000000000000000000000000000000000000000000000000000000846132539190614c17565b61325d9190614ca0565b905060006127107f0000000000000000000000000000000000000000000000000000000000000000856132909190614c17565b61329a9190614ca0565b90506000818385876132ac9190614ed0565b6132b69190614ed0565b6132c09190614ed0565b905083601660007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546133319190614f70565b9250508190555082601660007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546133a79190614f70565b9250508190555081601660007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461341d9190614f70565b925050819055508060166000613431612242565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461347a9190614f70565b925050819055505050505050565b6000613493836139f8565b905060006134a082613a54565b905060006134ae8285613a6e565b905060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461353e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161353590615688565b60405180910390fd5b5050505050565b600080600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa1580156135b5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906135d99190615714565b5050509150506001633b9aca0082633b9aca00866135f7919061578f565b61360191906158a6565b61360b919061578f565b613615919061578f565b915050919050565b6000600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60008373ffffffffffffffffffffffffffffffffffffffff1663150b7a02613709612e6c565b8786866040518563ffffffff1660e01b815260040161372b9493929190615965565b6020604051808303816000875af192505050801561376757506040513d601f19601f8201168201806040525081019061376491906159c6565b60015b6137e1573d8060008114613797576040519150601f19603f3d011682016040523d82523d6000602084013e61379c565b606091505b506000815114156137d9576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050949350505050565b606060006015805461384590614bb6565b905011156138df576015805461385a90614bb6565b80601f016020809104026020016040519081016040528092919081815260200182805461388690614bb6565b80156138d35780601f106138a8576101008083540402835291602001916138d3565b820191906000526020600020905b8154815290600101906020018083116138b657829003601f168201915b50505050509050613922565b6139003073ffffffffffffffffffffffffffffffffffffffff166014613a95565b6040516020016139109190615a8b565b60405160208183030381529060405290505b90565b606060806040510190508060405280825b60011561396157600183039250600a81066030018353600a810490508061395c57613961565b613936565b508181036020830392508083525050919050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b60009392505050565b60006001821460e11b9050919050565b60007f981d5b43c373d93722e3bc49845c5e666a67bf8faef06370b7808b92ec8087fa82600001518360200151604051602001613a3793929190615ad1565b604051602081830303815290604052805190602001209050919050565b6000613a67613a61613cd1565b83613deb565b9050919050565b6000806000613a7d8585613e1e565b91509150613a8a81613e70565b819250505092915050565b606060006002836002613aa89190614c17565b613ab29190614f70565b67ffffffffffffffff811115613acb57613aca614720565b5b6040519080825280601f01601f191660200182016040528015613afd5781602001600182028036833780820191505090505b5090507f300000000000000000000000000000000000000000000000000000000000000081600081518110613b3557613b34615b08565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f780000000000000000000000000000000000000000000000000000000000000081600181518110613b9957613b98615b08565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060006001846002613bd99190614c17565b613be39190614f70565b90505b6001811115613c83577f3031323334353637383961626364656600000000000000000000000000000000600f861660108110613c2557613c24615b08565b5b1a60f81b828281518110613c3c57613c3b615b08565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600485901c945080613c7c90615b37565b9050613be6565b5060008414613cc7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613cbe90615bad565b60405180910390fd5b8091505092915050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff16148015613d4d57507f000000000000000000000000000000000000000000000000000000000000000046145b15613d7a577f00000000000000000000000000000000000000000000000000000000000000009050613de8565b613de57f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000614045565b90505b90565b60008282604051602001613e00929190615c3a565b60405160208183030381529060405280519060200120905092915050565b600080604183511415613e605760008060006020860151925060408601519150606086015160001a9050613e548782858561407f565b94509450505050613e69565b60006002915091505b9250929050565b60006004811115613e8457613e83615c71565b5b816004811115613e9757613e96615c71565b5b1415613ea257614042565b60016004811115613eb657613eb5615c71565b5b816004811115613ec957613ec8615c71565b5b1415613f0a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613f0190615cec565b60405180910390fd5b60026004811115613f1e57613f1d615c71565b5b816004811115613f3157613f30615c71565b5b1415613f72576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613f6990615d58565b60405180910390fd5b60036004811115613f8657613f85615c71565b5b816004811115613f9957613f98615c71565b5b1415613fda576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613fd190615dea565b60405180910390fd5b600480811115613fed57613fec615c71565b5b81600481111561400057613fff615c71565b5b1415614041576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161403890615e7c565b60405180910390fd5b5b50565b60008383834630604051602001614060959493929190615e9c565b6040516020818303038152906040528051906020012090509392505050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08360001c11156140ba576000600391509150614183565b601b8560ff16141580156140d25750601c8560ff1614155b156140e4576000600491509150614183565b6000600187878787604051600081526020016040526040516141099493929190615f0b565b6020604051602081039080840390855afa15801561412b573d6000803e3d6000fd5b505050602060405103519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561417a57600060019250925050614183565b80600092509250505b94509492505050565b82805461419890614bb6565b90600052602060002090601f0160209004810192826141ba5760008555614201565b82601f106141d357805160ff1916838001178555614201565b82800160010185558215614201579182015b828111156142005782518255916020019190600101906141e5565b5b50905061420e9190614212565b5090565b5b8082111561422b576000816000905550600101614213565b5090565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61427881614243565b811461428357600080fd5b50565b6000813590506142958161426f565b92915050565b6000602082840312156142b1576142b0614239565b5b60006142bf84828501614286565b91505092915050565b60008115159050919050565b6142dd816142c8565b82525050565b60006020820190506142f860008301846142d4565b92915050565b6000819050919050565b614311816142fe565b82525050565b600060208201905061432c6000830184614308565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061435d82614332565b9050919050565b61436d81614352565b811461437857600080fd5b50565b60008135905061438a81614364565b92915050565b60006bffffffffffffffffffffffff82169050919050565b6143b181614390565b81146143bc57600080fd5b50565b6000813590506143ce816143a8565b92915050565b600080604083850312156143eb576143ea614239565b5b60006143f98582860161437b565b925050602061440a858286016143bf565b9150509250929050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561444e578082015181840152602081019050614433565b8381111561445d576000848401525b50505050565b6000601f19601f8301169050919050565b600061447f82614414565b614489818561441f565b9350614499818560208601614430565b6144a281614463565b840191505092915050565b600060208201905081810360008301526144c78184614474565b905092915050565b6144d8816142fe565b81146144e357600080fd5b50565b6000813590506144f5816144cf565b92915050565b60006020828403121561451157614510614239565b5b600061451f848285016144e6565b91505092915050565b61453181614352565b82525050565b600060208201905061454c6000830184614528565b92915050565b6000806040838503121561456957614568614239565b5b60006145778582860161437b565b9250506020614588858286016144e6565b9150509250929050565b6000806000606084860312156145ab576145aa614239565b5b60006145b98682870161437b565b93505060206145ca8682870161437b565b92505060406145db868287016144e6565b9150509250925092565b6000819050919050565b6145f8816145e5565b82525050565b600060208201905061461360008301846145ef565b92915050565b600080604083850312156146305761462f614239565b5b600061463e858286016144e6565b925050602061464f858286016144e6565b9150509250929050565b600060408201905061466e6000830185614528565b61467b6020830184614308565b9392505050565b61468b816142c8565b811461469657600080fd5b50565b6000813590506146a881614682565b92915050565b600080604083850312156146c5576146c4614239565b5b60006146d385828601614699565b92505060206146e485828601614699565b9150509250929050565b60006020828403121561470457614703614239565b5b60006147128482850161437b565b91505092915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61475882614463565b810181811067ffffffffffffffff8211171561477757614776614720565b5b80604052505050565b600061478a61422f565b9050614796828261474f565b919050565b6000604082840312156147b1576147b061471b565b5b6147bb6040614780565b905060006147cb8482850161437b565b60008301525060206147df848285016144e6565b60208301525092915050565b600080fd5b600080fd5b600067ffffffffffffffff8211156148105761480f614720565b5b61481982614463565b9050602081019050919050565b82818337600083830152505050565b6000614848614843846147f5565b614780565b905082815260208101848484011115614864576148636147f0565b5b61486f848285614826565b509392505050565b600082601f83011261488c5761488b6147eb565b5b813561489c848260208601614835565b91505092915050565b6000806000608084860312156148be576148bd614239565b5b60006148cc868287016144e6565b93505060206148dd8682870161479b565b925050606084013567ffffffffffffffff8111156148fe576148fd61423e565b5b61490a86828701614877565b9150509250925092565b600067ffffffffffffffff82111561492f5761492e614720565b5b61493882614463565b9050602081019050919050565b600061495861495384614914565b614780565b905082815260208101848484011115614974576149736147f0565b5b61497f848285614826565b509392505050565b600082601f83011261499c5761499b6147eb565b5b81356149ac848260208601614945565b91505092915050565b6000602082840312156149cb576149ca614239565b5b600082013567ffffffffffffffff8111156149e9576149e861423e565b5b6149f584828501614987565b91505092915050565b614a07816145e5565b8114614a1257600080fd5b50565b600081359050614a24816149fe565b92915050565b600060208284031215614a4057614a3f614239565b5b6000614a4e84828501614a15565b91505092915050565b60008060408385031215614a6e57614a6d614239565b5b6000614a7c8582860161437b565b9250506020614a8d85828601614699565b9150509250929050565b600060208284031215614aad57614aac614239565b5b6000614abb84828501614699565b91505092915050565b60008060008060808587031215614ade57614add614239565b5b6000614aec8782880161437b565b9450506020614afd8782880161437b565b9350506040614b0e878288016144e6565b925050606085013567ffffffffffffffff811115614b2f57614b2e61423e565b5b614b3b87828801614877565b91505092959194509250565b60008060408385031215614b5e57614b5d614239565b5b6000614b6c8582860161437b565b9250506020614b7d8582860161437b565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680614bce57607f821691505b60208210811415614be257614be1614b87565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000614c22826142fe565b9150614c2d836142fe565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615614c6657614c65614be8565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000614cab826142fe565b9150614cb6836142fe565b925082614cc657614cc5614c71565b5b828204905092915050565b7f414242204c65676163793a20556e72656465656d656400000000000000000000600082015250565b6000614d0760168361441f565b9150614d1282614cd1565b602082019050919050565b60006020820190508181036000830152614d3681614cfa565b9050919050565b6000604082019050614d526000830185614528565b614d5f60208301846142d4565b9392505050565b7f414242204c65676163793a204e6f2042656e6566696369617279000000000000600082015250565b6000614d9c601a8361441f565b9150614da782614d66565b602082019050919050565b60006020820190508181036000830152614dcb81614d8f565b9050919050565b7f414242204c65676163793a20302042616c616e63650000000000000000000000600082015250565b6000614e0860158361441f565b9150614e1382614dd2565b602082019050919050565b60006020820190508181036000830152614e3781614dfb565b9050919050565b7f414242204c65676163793a205075626c6963204d696e74696e67206973206e6f60008201527f7420456e61626c65640000000000000000000000000000000000000000000000602082015250565b6000614e9a60298361441f565b9150614ea582614e3e565b604082019050919050565b60006020820190508181036000830152614ec981614e8d565b9050919050565b6000614edb826142fe565b9150614ee6836142fe565b925082821015614ef957614ef8614be8565b5b828203905092915050565b7f414242204c65676163793a20496e73756666696369656e7420416d6f756e7400600082015250565b6000614f3a601f8361441f565b9150614f4582614f04565b602082019050919050565b60006020820190508181036000830152614f6981614f2d565b9050919050565b6000614f7b826142fe565b9150614f86836142fe565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115614fbb57614fba614be8565b5b828201905092915050565b7f414242204c65676163793a20546f6b656e204c696d6974000000000000000000600082015250565b6000614ffc60178361441f565b915061500782614fc6565b602082019050919050565b6000602082019050818103600083015261502b81614fef565b9050919050565b7f414242204c65676163793a204d6178207065722057616c6c6574000000000000600082015250565b6000615068601a8361441f565b915061507382615032565b602082019050919050565b600060208201905081810360008301526150978161505b565b9050919050565b60006150a9826145e5565b91506150b4836145e5565b9250827f8000000000000000000000000000000000000000000000000000000000000000018212600084121516156150ef576150ee614be8565b5b827f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01821360008412161561512757615126614be8565b5b828203905092915050565b7f414242204c65676163793a2030206c6566740000000000000000000000000000600082015250565b600061516860128361441f565b915061517382615132565b602082019050919050565b600060208201905081810360008301526151978161515b565b9050919050565b7f414242204c65676163793a204e6f7420456e61626c6564000000000000000000600082015250565b60006151d460178361441f565b91506151df8261519e565b602082019050919050565b60006020820190508181036000830152615203816151c7565b9050919050565b7f414242204c65676163793a20416c6c20546f6b656e73206d696e746564000000600082015250565b6000615240601d8361441f565b915061524b8261520a565b602082019050919050565b6000602082019050818103600083015261526f81615233565b9050919050565b600081905092915050565b600061528c82614414565b6152968185615276565b93506152a6818560208601614430565b80840191505092915050565b60006152be8285615281565b91506152ca8284615281565b91508190509392505050565b7f414242204c65676163793a204e6f7420656e61626c6564000000000000000000600082015250565b600061530c60178361441f565b9150615317826152d6565b602082019050919050565b6000602082019050818103600083015261533b816152ff565b9050919050565b7f414242204c65676163793a20416c72656164792072656465656d656400000000600082015250565b6000615378601c8361441f565b915061538382615342565b602082019050919050565b600060208201905081810360008301526153a78161536b565b9050919050565b7f546f204269670000000000000000000000000000000000000000000000000000600082015250565b60006153e460068361441f565b91506153ef826153ae565b602082019050919050565b60006020820190508181036000830152615413816153d7565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b600061547660268361441f565b91506154818261541a565b604082019050919050565b600060208201905081810360008301526154a581615469565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006154e260208361441f565b91506154ed826154ac565b602082019050919050565b60006020820190508181036000830152615511816154d5565b9050919050565b7f455243323938313a20726f79616c7479206665652077696c6c2065786365656460008201527f2073616c65507269636500000000000000000000000000000000000000000000602082015250565b6000615574602a8361441f565b915061557f82615518565b604082019050919050565b600060208201905081810360008301526155a381615567565b9050919050565b7f455243323938313a20696e76616c696420726563656976657200000000000000600082015250565b60006155e060198361441f565b91506155eb826155aa565b602082019050919050565b6000602082019050818103600083015261560f816155d3565b9050919050565b7f4d696e747061737356616c696461746f723a204d696e7470617373207369676e60008201527f617475726520766572696669636174696f6e206572726f720000000000000000602082015250565b600061567260388361441f565b915061567d82615616565b604082019050919050565b600060208201905081810360008301526156a181615665565b9050919050565b600069ffffffffffffffffffff82169050919050565b6156c7816156a8565b81146156d257600080fd5b50565b6000815190506156e4816156be565b92915050565b6000815190506156f9816149fe565b92915050565b60008151905061570e816144cf565b92915050565b600080600080600060a086880312156157305761572f614239565b5b600061573e888289016156d5565b955050602061574f888289016156ea565b9450506040615760888289016156ff565b9350506060615771888289016156ff565b9250506080615782888289016156d5565b9150509295509295909350565b600061579a826145e5565b91506157a5836145e5565b9250827f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821160008413600084131616156157e4576157e3614be8565b5b817f8000000000000000000000000000000000000000000000000000000000000000058312600084126000841316161561582157615820614be8565b5b827f8000000000000000000000000000000000000000000000000000000000000000058212600084136000841216161561585e5761585d614be8565b5b827f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff058212600084126000841216161561589b5761589a614be8565b5b828202905092915050565b60006158b1826145e5565b91506158bc836145e5565b9250826158cc576158cb614c71565b5b600160000383147f80000000000000000000000000000000000000000000000000000000000000008314161561590557615904614be8565b5b828205905092915050565b600081519050919050565b600082825260208201905092915050565b600061593782615910565b615941818561591b565b9350615951818560208601614430565b61595a81614463565b840191505092915050565b600060808201905061597a6000830187614528565b6159876020830186614528565b6159946040830185614308565b81810360608301526159a6818461592c565b905095945050505050565b6000815190506159c08161426f565b92915050565b6000602082840312156159dc576159db614239565b5b60006159ea848285016159b1565b91505092915050565b7f68747470733a2f2f6d657461646174612e626f776c696e652e6170702f000000600082015250565b6000615a29601d83615276565b9150615a34826159f3565b601d82019050919050565b7f2f00000000000000000000000000000000000000000000000000000000000000600082015250565b6000615a75600183615276565b9150615a8082615a3f565b600182019050919050565b6000615a9682615a1c565b9150615aa28284615281565b9150615aad82615a68565b915081905092915050565b6000819050919050565b615acb81615ab8565b82525050565b6000606082019050615ae66000830186615ac2565b615af36020830185614528565b615b006040830184614308565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000615b42826142fe565b91506000821415615b5657615b55614be8565b5b600182039050919050565b7f537472696e67733a20686578206c656e67746820696e73756666696369656e74600082015250565b6000615b9760208361441f565b9150615ba282615b61565b602082019050919050565b60006020820190508181036000830152615bc681615b8a565b9050919050565b7f1901000000000000000000000000000000000000000000000000000000000000600082015250565b6000615c03600283615276565b9150615c0e82615bcd565b600282019050919050565b6000819050919050565b615c34615c2f82615ab8565b615c19565b82525050565b6000615c4582615bf6565b9150615c518285615c23565b602082019150615c618284615c23565b6020820191508190509392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f45434453413a20696e76616c6964207369676e61747572650000000000000000600082015250565b6000615cd660188361441f565b9150615ce182615ca0565b602082019050919050565b60006020820190508181036000830152615d0581615cc9565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265206c656e67746800600082015250565b6000615d42601f8361441f565b9150615d4d82615d0c565b602082019050919050565b60006020820190508181036000830152615d7181615d35565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265202773272076616c60008201527f7565000000000000000000000000000000000000000000000000000000000000602082015250565b6000615dd460228361441f565b9150615ddf82615d78565b604082019050919050565b60006020820190508181036000830152615e0381615dc7565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265202776272076616c60008201527f7565000000000000000000000000000000000000000000000000000000000000602082015250565b6000615e6660228361441f565b9150615e7182615e0a565b604082019050919050565b60006020820190508181036000830152615e9581615e59565b9050919050565b600060a082019050615eb16000830188615ac2565b615ebe6020830187615ac2565b615ecb6040830186615ac2565b615ed86060830185614308565b615ee56080830184614528565b9695505050505050565b600060ff82169050919050565b615f0581615eef565b82525050565b6000608082019050615f206000830187615ac2565b615f2d6020830186615efc565b615f3a6040830185615ac2565b615f476060830184615ac2565b9594505050505056fea26469706673582212208ef095e607807234fdfd6b3c1e4a02044f5b9da3d8087c8bfac68b3585cf22e664736f6c634300080a003300000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000a414242204c65676163790000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000034142420000000000000000000000000000000000000000000000000000000000