60806040523480156200001157600080fd5b506040518060400160405280600981526020017f466f72546865446f6700000000000000000000000000000000000000000000008152506040518060400160405280600381526020017f46544400000000000000000000000000000000000000000000000000000000008152508160039080519060200190620000969291906200060d565b508060049080519060200190620000af9291906200060d565b5050506000600560006101000a81548160ff021916908315150217905550620000e26000801b33620001f360201b60201c565b620001147f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a33620001f360201b60201c565b620001543362000129620002e560201b60201c565b600a6200013791906200088f565b635f5e1000620001489190620009cc565b620002ee60201b60201c565b62000164620002e560201b60201c565b600a6200017291906200088f565b635f5e1000620001839190620009cc565b600781905550620001bb7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a633620001f360201b60201c565b620001ed7f832387ff8355724ce19b4e13d42ca7e8b0d3d6e27508713bc847b0ef4335ecd633620001f360201b60201c565b62000b86565b6200020582826200046760201b60201c565b620002e15760016006600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555062000286620004d260201b60201c565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b60006012905090565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141562000361576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620003589062000787565b60405180910390fd5b6200037560008383620004da60201b60201c565b8060026000828254620003899190620007d7565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254620003e09190620007d7565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051620004479190620007a9565b60405180910390a362000463600083836200059760201b60201c565b5050565b60006006600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b600033905090565b620004ea6200059c60201b60201c565b600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156200057a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620005719062000743565b60405180910390fd5b62000592838383620005f160201b62000e2d1760201c565b505050565b505050565b620005ac620005f660201b60201c565b15620005ef576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620005e69062000765565b60405180910390fd5b565b505050565b6000600560009054906101000a900460ff16905090565b8280546200061b9062000a44565b90600052602060002090601f0160209004810192826200063f57600085556200068b565b82601f106200065a57805160ff19168380011785556200068b565b828001600101855582156200068b579182015b828111156200068a5782518255916020019190600101906200066d565b5b5090506200069a91906200069e565b5090565b5b80821115620006b95760008160009055506001016200069f565b5090565b6000620006cc602583620007c6565b9150620006d98262000ae5565b604082019050919050565b6000620006f3601083620007c6565b9150620007008262000b34565b602082019050919050565b60006200071a601f83620007c6565b9150620007278262000b5d565b602082019050919050565b6200073d8162000a2d565b82525050565b600060208201905081810360008301526200075e81620006bd565b9050919050565b600060208201905081810360008301526200078081620006e4565b9050919050565b60006020820190508181036000830152620007a2816200070b565b9050919050565b6000602082019050620007c0600083018462000732565b92915050565b600082825260208201905092915050565b6000620007e48262000a2d565b9150620007f18362000a2d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111562000829576200082862000a7a565b5b828201905092915050565b6000808291508390505b600185111562000886578086048111156200085e576200085d62000a7a565b5b60018516156200086e5780820291505b80810290506200087e8562000ad8565b94506200083e565b94509492505050565b60006200089c8262000a2d565b9150620008a98362000a37565b9250620008d87fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484620008e0565b905092915050565b600082620008f25760019050620009c5565b81620009025760009050620009c5565b81600181146200091b576002811462000926576200095c565b6001915050620009c5565b60ff8411156200093b576200093a62000a7a565b5b8360020a91508482111562000955576200095462000a7a565b5b50620009c5565b5060208310610133831016604e8410600b8410161715620009965782820a90508381111562000990576200098f62000a7a565b5b620009c5565b620009a5848484600162000834565b92509050818404811115620009bf57620009be62000a7a565b5b81810290505b9392505050565b6000620009d98262000a2d565b9150620009e68362000a2d565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161562000a225762000a2162000a7a565b5b828202905092915050565b6000819050919050565b600060ff82169050919050565b6000600282049050600182168062000a5d57607f821691505b6020821081141562000a745762000a7362000aa9565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60008160011c9050919050565b7f546f6b656e207472616e736665722066726f6d204c6f636b656441646472657360008201527f734c697374000000000000000000000000000000000000000000000000000000602082015250565b7f5061757361626c653a2070617573656400000000000000000000000000000000600082015250565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b612d9c8062000b966000396000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c806370a0823111610104578063a7cd26fd116100a2578063d547741f11610071578063d547741f1461057f578063dd62ed3e1461059b578063e63ab1e9146105cb578063fb03582d146105e9576101da565b8063a7cd26fd146104e3578063a9059cbb14610513578063cfb17ceb14610543578063d539139314610561576101da565b806391d14854116100de57806391d148541461044757806395d89b4114610477578063a217fddf14610495578063a457c2d7146104b3576101da565b806370a08231146103f157806379cc6790146104215780638456cb591461043d576101da565b80632f2ff15d1161017c5780633f4ba83a1161014b5780633f4ba83a1461039157806340c10f191461039b57806342966c68146103b75780635c975abb146103d3576101da565b80632f2ff15d1461030b578063313ce5671461032757806336568abe146103455780633950935114610361576101da565b806312a0a4b9116101b857806312a0a4b91461025d57806318160ddd1461028d57806323b872dd146102ab578063248a9ca3146102db576101da565b806301ffc9a7146101df57806306fdde031461020f578063095ea7b31461022d575b600080fd5b6101f960048036038101906101f49190611f27565b610619565b6040516102069190612301565b60405180910390f35b610217610693565b6040516102249190612337565b60405180910390f35b61024760048036038101906102429190611e7a565b610725565b6040516102549190612301565b60405180910390f35b61027760048036038101906102729190611dba565b610748565b6040516102849190612301565b60405180910390f35b6102956107d6565b6040516102a29190612559565b60405180910390f35b6102c560048036038101906102c09190611e27565b6107e0565b6040516102d29190612301565b60405180910390f35b6102f560048036038101906102f09190611eba565b61080f565b604051610302919061231c565b60405180910390f35b61032560048036038101906103209190611ee7565b61082f565b005b61032f610850565b60405161033c9190612574565b60405180910390f35b61035f600480360381019061035a9190611ee7565b610859565b005b61037b60048036038101906103769190611e7a565b6108dc565b6040516103889190612301565b60405180910390f35b610399610913565b005b6103b560048036038101906103b09190611e7a565b610948565b005b6103d160048036038101906103cc9190611f54565b6109d8565b005b6103db6109ec565b6040516103e89190612301565b60405180910390f35b61040b60048036038101906104069190611dba565b610a03565b6040516104189190612559565b60405180910390f35b61043b60048036038101906104369190611e7a565b610a4b565b005b610445610a6b565b005b610461600480360381019061045c9190611ee7565b610aa0565b60405161046e9190612301565b60405180910390f35b61047f610b0b565b60405161048c9190612337565b60405180910390f35b61049d610b9d565b6040516104aa919061231c565b60405180910390f35b6104cd60048036038101906104c89190611e7a565b610ba4565b6040516104da9190612301565b60405180910390f35b6104fd60048036038101906104f89190611dba565b610c1b565b60405161050a9190612301565b60405180910390f35b61052d60048036038101906105289190611e7a565b610ca0565b60405161053a9190612301565b60405180910390f35b61054b610cc3565b604051610558919061231c565b60405180910390f35b610569610ce7565b604051610576919061231c565b60405180910390f35b61059960048036038101906105949190611ee7565b610d0b565b005b6105b560048036038101906105b09190611de7565b610d2c565b6040516105c29190612559565b60405180910390f35b6105d3610db3565b6040516105e0919061231c565b60405180910390f35b61060360048036038101906105fe9190611dba565b610dd7565b6040516106109190612301565b60405180910390f35b60007f7965db0b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061068c575061068b82610e32565b5b9050919050565b6060600380546106a290612782565b80601f01602080910402602001604051908101604052809291908181526020018280546106ce90612782565b801561071b5780601f106106f05761010080835404028352916020019161071b565b820191906000526020600020905b8154815290600101906020018083116106fe57829003601f168201915b5050505050905090565b600080610730610e9c565b905061073d818585610ea4565b600191505092915050565b60007f832387ff8355724ce19b4e13d42ca7e8b0d3d6e27508713bc847b0ef4335ecd66107748161106f565b6001600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001915050919050565b6000600254905090565b6000806107eb610e9c565b90506107f8858285611083565b61080385858561110f565b60019150509392505050565b600060066000838152602001908152602001600020600101549050919050565b6108388261080f565b6108418161106f565b61084b8383611390565b505050565b60006012905090565b610861610e9c565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146108ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108c5906124f9565b60405180910390fd5b6108d88282611471565b5050565b6000806108e7610e9c565b90506109088185856108f98589610d2c565b61090391906125b6565b610ea4565b600191505092915050565b7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a61093d8161106f565b610945611553565b50565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a66109728161106f565b6007548261097e6107d6565b61098891906125b6565b11156109c9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109c090612539565b60405180910390fd5b6109d383836115b6565b505050565b6109e96109e3610e9c565b82611716565b50565b6000600560009054906101000a900460ff16905090565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610a5d82610a57610e9c565b83611083565b610a678282611716565b5050565b7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a610a958161106f565b610a9d6118ed565b50565b60006006600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b606060048054610b1a90612782565b80601f0160208091040260200160405190810160405280929190818152602001828054610b4690612782565b8015610b935780601f10610b6857610100808354040283529160200191610b93565b820191906000526020600020905b815481529060010190602001808311610b7657829003601f168201915b5050505050905090565b6000801b81565b600080610baf610e9c565b90506000610bbd8286610d2c565b905083811015610c02576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bf9906124d9565b60405180910390fd5b610c0f8286868403610ea4565b60019250505092915050565b60007f832387ff8355724ce19b4e13d42ca7e8b0d3d6e27508713bc847b0ef4335ecd6610c478161106f565b600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81549060ff02191690556001915050919050565b600080610cab610e9c565b9050610cb881858561110f565b600191505092915050565b7f832387ff8355724ce19b4e13d42ca7e8b0d3d6e27508713bc847b0ef4335ecd681565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a681565b610d148261080f565b610d1d8161106f565b610d278383611471565b505050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a81565b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b505050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610f14576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f0b906124b9565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610f84576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f7b906123f9565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516110629190612559565b60405180910390a3505050565b6110808161107b610e9c565b611950565b50565b600061108f8484610d2c565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811461110957818110156110fb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110f290612419565b60405180910390fd5b6111088484848403610ea4565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561117f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161117690612499565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156111ef576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111e690612379565b60405180910390fd5b6111fa8383836119ed565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611280576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161127790612439565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461131391906125b6565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516113779190612559565b60405180910390a361138a848484611a92565b50505050565b61139a8282610aa0565b61146d5760016006600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550611412610e9c565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b61147b8282610aa0565b1561154f5760006006600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506114f4610e9c565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45b5050565b61155b611a97565b6000600560006101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa61159f610e9c565b6040516115ac91906122e6565b60405180910390a1565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611626576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161161d90612519565b60405180910390fd5b611632600083836119ed565b806002600082825461164491906125b6565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461169991906125b6565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516116fe9190612559565b60405180910390a361171260008383611a92565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611786576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161177d90612479565b60405180910390fd5b611792826000836119ed565b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611818576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161180f906123b9565b60405180910390fd5b8181036000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816002600082825461186f9190612666565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516118d49190612559565b60405180910390a36118e883600084611a92565b505050565b6118f5611ae0565b6001600560006101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611939610e9c565b60405161194691906122e6565b60405180910390a1565b61195a8282610aa0565b6119e95761197f8173ffffffffffffffffffffffffffffffffffffffff166014611b2a565b61198d8360001c6020611b2a565b60405160200161199e9291906122ac565b6040516020818303038152906040526040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119e09190612337565b60405180910390fd5b5050565b6119f5611ae0565b600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611a82576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a79906123d9565b60405180910390fd5b611a8d838383610e2d565b505050565b505050565b611a9f6109ec565b611ade576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ad590612399565b60405180910390fd5b565b611ae86109ec565b15611b28576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b1f90612459565b60405180910390fd5b565b606060006002836002611b3d919061260c565b611b4791906125b6565b67ffffffffffffffff811115611b6057611b5f612841565b5b6040519080825280601f01601f191660200182016040528015611b925781602001600182028036833780820191505090505b5090507f300000000000000000000000000000000000000000000000000000000000000081600081518110611bca57611bc9612812565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f780000000000000000000000000000000000000000000000000000000000000081600181518110611c2e57611c2d612812565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060006001846002611c6e919061260c565b611c7891906125b6565b90505b6001811115611d18577f3031323334353637383961626364656600000000000000000000000000000000600f861660108110611cba57611cb9612812565b5b1a60f81b828281518110611cd157611cd0612812565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600485901c945080611d1190612758565b9050611c7b565b5060008414611d5c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d5390612359565b60405180910390fd5b8091505092915050565b600081359050611d7581612d0a565b92915050565b600081359050611d8a81612d21565b92915050565b600081359050611d9f81612d38565b92915050565b600081359050611db481612d4f565b92915050565b600060208284031215611dd057611dcf612870565b5b6000611dde84828501611d66565b91505092915050565b60008060408385031215611dfe57611dfd612870565b5b6000611e0c85828601611d66565b9250506020611e1d85828601611d66565b9150509250929050565b600080600060608486031215611e4057611e3f612870565b5b6000611e4e86828701611d66565b9350506020611e5f86828701611d66565b9250506040611e7086828701611da5565b9150509250925092565b60008060408385031215611e9157611e90612870565b5b6000611e9f85828601611d66565b9250506020611eb085828601611da5565b9150509250929050565b600060208284031215611ed057611ecf612870565b5b6000611ede84828501611d7b565b91505092915050565b60008060408385031215611efe57611efd612870565b5b6000611f0c85828601611d7b565b9250506020611f1d85828601611d66565b9150509250929050565b600060208284031215611f3d57611f3c612870565b5b6000611f4b84828501611d90565b91505092915050565b600060208284031215611f6a57611f69612870565b5b6000611f7884828501611da5565b91505092915050565b611f8a8161269a565b82525050565b611f99816126ac565b82525050565b611fa8816126b8565b82525050565b6000611fb98261258f565b611fc3818561259a565b9350611fd3818560208601612725565b611fdc81612875565b840191505092915050565b6000611ff28261258f565b611ffc81856125ab565b935061200c818560208601612725565b80840191505092915050565b600061202560208361259a565b915061203082612886565b602082019050919050565b600061204860238361259a565b9150612053826128af565b604082019050919050565b600061206b60148361259a565b9150612076826128fe565b602082019050919050565b600061208e60228361259a565b915061209982612927565b604082019050919050565b60006120b160258361259a565b91506120bc82612976565b604082019050919050565b60006120d460228361259a565b91506120df826129c5565b604082019050919050565b60006120f7601d8361259a565b915061210282612a14565b602082019050919050565b600061211a60268361259a565b915061212582612a3d565b604082019050919050565b600061213d60108361259a565b915061214882612a8c565b602082019050919050565b600061216060218361259a565b915061216b82612ab5565b604082019050919050565b600061218360258361259a565b915061218e82612b04565b604082019050919050565b60006121a660248361259a565b91506121b182612b53565b604082019050919050565b60006121c96017836125ab565b91506121d482612ba2565b601782019050919050565b60006121ec60258361259a565b91506121f782612bcb565b604082019050919050565b600061220f6011836125ab565b915061221a82612c1a565b601182019050919050565b6000612232602f8361259a565b915061223d82612c43565b604082019050919050565b6000612255601f8361259a565b915061226082612c92565b602082019050919050565b600061227860348361259a565b915061228382612cbb565b604082019050919050565b6122978161270e565b82525050565b6122a681612718565b82525050565b60006122b7826121bc565b91506122c38285611fe7565b91506122ce82612202565b91506122da8284611fe7565b91508190509392505050565b60006020820190506122fb6000830184611f81565b92915050565b60006020820190506123166000830184611f90565b92915050565b60006020820190506123316000830184611f9f565b92915050565b600060208201905081810360008301526123518184611fae565b905092915050565b6000602082019050818103600083015261237281612018565b9050919050565b600060208201905081810360008301526123928161203b565b9050919050565b600060208201905081810360008301526123b28161205e565b9050919050565b600060208201905081810360008301526123d281612081565b9050919050565b600060208201905081810360008301526123f2816120a4565b9050919050565b60006020820190508181036000830152612412816120c7565b9050919050565b60006020820190508181036000830152612432816120ea565b9050919050565b600060208201905081810360008301526124528161210d565b9050919050565b6000602082019050818103600083015261247281612130565b9050919050565b6000602082019050818103600083015261249281612153565b9050919050565b600060208201905081810360008301526124b281612176565b9050919050565b600060208201905081810360008301526124d281612199565b9050919050565b600060208201905081810360008301526124f2816121df565b9050919050565b6000602082019050818103600083015261251281612225565b9050919050565b6000602082019050818103600083015261253281612248565b9050919050565b600060208201905081810360008301526125528161226b565b9050919050565b600060208201905061256e600083018461228e565b92915050565b6000602082019050612589600083018461229d565b92915050565b600081519050919050565b600082825260208201905092915050565b600081905092915050565b60006125c18261270e565b91506125cc8361270e565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612601576126006127b4565b5b828201905092915050565b60006126178261270e565b91506126228361270e565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561265b5761265a6127b4565b5b828202905092915050565b60006126718261270e565b915061267c8361270e565b92508282101561268f5761268e6127b4565b5b828203905092915050565b60006126a5826126ee565b9050919050565b60008115159050919050565b6000819050919050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b83811015612743578082015181840152602081019050612728565b83811115612752576000848401525b50505050565b60006127638261270e565b91506000821415612777576127766127b4565b5b600182039050919050565b6000600282049050600182168061279a57607f821691505b602082108114156127ae576127ad6127e3565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f537472696e67733a20686578206c656e67746820696e73756666696369656e74600082015250565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f5061757361626c653a206e6f7420706175736564000000000000000000000000600082015250565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b7f546f6b656e207472616e736665722066726f6d204c6f636b656441646472657360008201527f734c697374000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b7f5061757361626c653a2070617573656400000000000000000000000000000000600082015250565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000600082015250565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b7f206973206d697373696e6720726f6c6520000000000000000000000000000000600082015250565b7f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560008201527f20726f6c657320666f722073656c660000000000000000000000000000000000602082015250565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b7f546865206e756d626572206f66206164646974696f6e616c2069737375616e6360008201527f6520686173206265656e2065786365656465642e000000000000000000000000602082015250565b612d138161269a565b8114612d1e57600080fd5b50565b612d2a816126b8565b8114612d3557600080fd5b50565b612d41816126c2565b8114612d4c57600080fd5b50565b612d588161270e565b8114612d6357600080fd5b5056fea2646970667358221220131c4e3a2fa76f44e7bb7b44a44dd98fabda3f3b26f05ee0f6d2e72c51b5630164736f6c63430008070033