0x60806040526040518060a001604052806040518060400160405280600781526020017f236666386463300000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600781526020017f236363393666300000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600781526020017f234135383146410000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600781526020017f233839394546380000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600781526020017f2339384537464600000000000000000000000000000000000000000000000000815250815250600990600562000146929190620007b0565b506040518060a001604052806040518060400160405280600581526020017f506f77657200000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600681526020017f576973646f6d000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600381526020017f576172000000000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600481526020017f54696d650000000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600681526020017f5765616c74680000000000000000000000000000000000000000000000000000815250815250600e90600562000289929190620007b0565b503480156200029757600080fd5b506040518060400160405280600f81526020017f48617a6172647320436f6f6b69657300000000000000000000000000000000008152506040518060400160405280600781526020017f434f4f4b4945530000000000000000000000000000000000000000000000000081525081600090805190602001906200031c9291906200080a565b508060019080519060200190620003359291906200080a565b5050506200034b336001620003b160201b60201c565b6200035e336002620003b160201b60201c565b62000371336004620003b160201b60201c565b62000384336003620003b160201b60201c565b62000397336005620003b160201b60201c565b620003ab33610539620003b160201b60201c565b62000b52565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000423576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200041a9062000989565b60405180910390fd5b6200043481620005f760201b60201c565b1562000477576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200046e90620009fb565b60405180910390fd5b6200048d6000838360016200064060201b60201c565b6200049e81620005f760201b60201c565b15620004e1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620004d890620009fb565b60405180910390fd5b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4620005f36000838360016200076d60201b60201c565b5050565b60008073ffffffffffffffffffffffffffffffffffffffff1662000621836200077360201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b60018111156200076757600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614620006d85780600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254620006d0919062000a56565b925050819055505b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614620007665780600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546200075e919062000a91565b925050819055505b5b50505050565b50505050565b60006002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b8260058101928215620007f7579160200282015b82811115620007f6578251829080519060200190620007e59291906200080a565b5091602001919060010190620007c4565b5b5090506200080691906200089b565b5090565b828054620008189062000b1d565b90600052602060002090601f0160209004810192826200083c576000855562000888565b82601f106200085757805160ff191683800117855562000888565b8280016001018555821562000888579182015b82811115620008875782518255916020019190600101906200086a565b5b509050620008979190620008c3565b5090565b5b80821115620008bf5760008181620008b59190620008e2565b506001016200089c565b5090565b5b80821115620008de576000816000905550600101620008c4565b5090565b508054620008f09062000b1d565b6000825580601f1062000904575062000925565b601f016020900490600052602060002090810190620009249190620008c3565b5b50565b600082825260208201905092915050565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b60006200097160208362000928565b91506200097e8262000939565b602082019050919050565b60006020820190508181036000830152620009a48162000962565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b6000620009e3601c8362000928565b9150620009f082620009ab565b602082019050919050565b6000602082019050818103600083015262000a1681620009d4565b9050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000a638262000a1d565b915062000a708362000a1d565b92508282101562000a865762000a8562000a27565b5b828203905092915050565b600062000a9e8262000a1d565b915062000aab8362000a1d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111562000ae35762000ae262000a27565b5b828201905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168062000b3657607f821691505b60208210810362000b4c5762000b4b62000aee565b5b50919050565b613dfc8062000b626000396000f3fe6080604052600436106101c15760003560e01c8063723ce009116100f7578063afe2d99911610095578063ca61c5f211610064578063ca61c5f2146105fc578063d74cc68914610627578063e985e9c514610652578063eab81cbd1461068f576101c1565b8063afe2d99914610542578063b3db9f1a1461056b578063b88d4fde14610596578063c87b56dd146105bf576101c1565b806396fe2d2c116100d157806396fe2d2c146104ac578063a22cb465146104d7578063a2cefc3714610500578063ad6d007d14610517576101c1565b8063723ce0091461042b57806393e9a0841461045657806395d89b4114610481576101c1565b80631ae9ec8a116101645780633edc4e5f1161013e5780633edc4e5f1461035d57806342842e0e146103885780636352211e146103b157806370a08231146103ee576101c1565b80631ae9ec8a146102e057806323b872dd1461031d57806324bec7f614610346576101c1565b806306fdde03116101a057806306fdde0314610245578063081812fc14610270578063095ea7b3146102ad578063099e2dd8146102d6576101c1565b8062549709146101c657806301ffc9a7146101dd578063053f14da1461021a575b600080fd5b3480156101d257600080fd5b506101db6106a6565b005b3480156101e957600080fd5b5061020460048036038101906101ff9190611f35565b61076e565b6040516102119190611f7d565b60405180910390f35b34801561022657600080fd5b5061022f610850565b60405161023c9190611fb1565b60405180910390f35b34801561025157600080fd5b5061025a610856565b6040516102679190612065565b60405180910390f35b34801561027c57600080fd5b50610297600480360381019061029291906120b3565b6108e8565b6040516102a49190612121565b60405180910390f35b3480156102b957600080fd5b506102d460048036038101906102cf9190612168565b61092e565b005b6102de610a45565b005b3480156102ec57600080fd5b50610307600480360381019061030291906120b3565b610af4565b6040516103149190612121565b60405180910390f35b34801561032957600080fd5b50610344600480360381019061033f91906121a8565b610b06565b005b34801561035257600080fd5b5061035b610b66565b005b34801561036957600080fd5b50610372610bcc565b60405161037f9190611fb1565b60405180910390f35b34801561039457600080fd5b506103af60048036038101906103aa91906121a8565b610bd1565b005b3480156103bd57600080fd5b506103d860048036038101906103d391906120b3565b610bf1565b6040516103e59190612121565b60405180910390f35b3480156103fa57600080fd5b50610415600480360381019061041091906121fb565b610c77565b6040516104229190611fb1565b60405180910390f35b34801561043757600080fd5b50610440610d2e565b60405161044d9190611fb1565b60405180910390f35b34801561046257600080fd5b5061046b610d33565b6040516104789190611fb1565b60405180910390f35b34801561048d57600080fd5b50610496610d39565b6040516104a39190612065565b60405180910390f35b3480156104b857600080fd5b506104c1610dcb565b6040516104ce9190611fb1565b60405180910390f35b3480156104e357600080fd5b506104fe60048036038101906104f99190612254565b610dd0565b005b34801561050c57600080fd5b50610515610de6565b005b34801561052357600080fd5b5061052c610e57565b6040516105399190611fb1565b60405180910390f35b34801561054e57600080fd5b50610569600480360381019061056491906120b3565b610e5c565b005b34801561057757600080fd5b50610580610f0a565b60405161058d9190611fb1565b60405180910390f35b3480156105a257600080fd5b506105bd60048036038101906105b891906123c9565b610f10565b005b3480156105cb57600080fd5b506105e660048036038101906105e191906120b3565b610f72565b6040516105f39190612065565b60405180910390f35b34801561060857600080fd5b50610611610ffa565b60405161061e919061250a565b60405180910390f35b34801561063357600080fd5b5061063c6110d3565b6040516106499190611fb1565b60405180910390f35b34801561065e57600080fd5b506106796004803603810190610674919061252c565b6110d8565b6040516106869190611f7d565b60405180910390f35b34801561069b57600080fd5b506106a461116c565b005b6000600a436106b5919061259b565b90506000600a80436106c791906125fb565b6106d1919061259b565b90506000600a6064436106e491906125fb565b6106ee919061259b565b905060008360ff16148015610706575060028260ff16145b8015610715575060048160ff16145b610754576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161074b90612678565b60405180910390fd5b6107696107616001610bf1565b3360016112f8565b505050565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061083957507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806108495750610848826115f1565b5b9050919050565b60065481565b606060008054610865906126c7565b80601f0160208091040260200160405190810160405280929190818152602001828054610891906126c7565b80156108de5780601f106108b3576101008083540402835291602001916108de565b820191906000526020600020905b8154815290600101906020018083116108c157829003601f168201915b5050505050905090565b60006108f38261165b565b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600061093982610bf1565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036109a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109a09061276a565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166109c86116a6565b73ffffffffffffffffffffffffffffffffffffffff1614806109f757506109f6816109f16116a6565b6110d8565b5b610a36576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a2d906127fc565b60405180910390fd5b610a4083836116ae565b505050565b6006543411610a89576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a8090612868565b60405180910390fd5b6000610a956005610bf1565b90506000600654905034600681905550610aba610ab26005610bf1565b3360056112f8565b8173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050505050565b6000610aff82610bf1565b9050919050565b610b17610b116116a6565b82611767565b610b56576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b4d906128fa565b60405180910390fd5b610b618383836112f8565b505050565b6000600243610b75919061259b565b14610bb5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bac90612966565b60405180910390fd5b610bca610bc26004610bf1565b3360046112f8565b565b600481565b610bec83838360405180602001604052806000815250610f10565b505050565b600080610bfd836117fc565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610c6e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c65906129d2565b60405180910390fd5b80915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610ce7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cde90612a64565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600181565b60075481565b606060018054610d48906126c7565b80601f0160208091040260200160405190810160405280929190818152602001828054610d74906126c7565b8015610dc15780601f10610d9657610100808354040283529160200191610dc1565b820191906000526020600020905b815481529060010190602001808311610da457829003601f168201915b5050505050905090565b600281565b610de2610ddb6116a6565b8383611839565b5050565b62093a8060075442610df89190612a84565b1015610e39576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3090612b04565b60405180910390fd5b42600781905550610e55610e4d6003610bf1565b3360036112f8565b565b600381565b600854604051602001610e6f9190611fb1565b6040516020818303038152906040528051906020012060001c81604051602001610e999190611fb1565b6040516020818303038152906040528051906020012060001c11610ef2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ee990612b70565b60405180910390fd5b610f07610eff6002610bf1565b3360026112f8565b50565b60085481565b610f21610f1b6116a6565b83611767565b610f60576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f57906128fa565b60405180910390fd5b610f6c848484846119a5565b50505050565b60606000610fd0600e600185610f889190612a84565b60058110610f9957610f98612b90565b5b01610fab610fa686611a01565b611a4f565b604051602001610fbc929190612dbf565b604051602081830303815290604052611a4f565b905080604051602001610fe39190612e50565b604051602081830303815290604052915050919050565b60606000600567ffffffffffffffff8111156110195761101861229e565b5b6040519080825280602002602001820160405280156110475781602001602082028036833780820191505090505b50905060005b60058110156110cb5761106b6001826110669190612e72565b610bf1565b82828151811061107e5761107d612b90565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505080806110c390612ec8565b91505061104d565b508091505090565b600581565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b3373ffffffffffffffffffffffffffffffffffffffff1661118d6001610bf1565b73ffffffffffffffffffffffffffffffffffffffff1614806111e357503373ffffffffffffffffffffffffffffffffffffffff166111cb6002610bf1565b73ffffffffffffffffffffffffffffffffffffffff16145b8061122257503373ffffffffffffffffffffffffffffffffffffffff1661120a6004610bf1565b73ffffffffffffffffffffffffffffffffffffffff16145b8061126157503373ffffffffffffffffffffffffffffffffffffffff166112496003610bf1565b73ffffffffffffffffffffffffffffffffffffffff16145b806112a057503373ffffffffffffffffffffffffffffffffffffffff166112886005610bf1565b73ffffffffffffffffffffffffffffffffffffffff16145b6112df576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112d690612f82565b60405180910390fd5b6112f66112ed610539610bf1565b336105396112f8565b565b8273ffffffffffffffffffffffffffffffffffffffff1661131882610bf1565b73ffffffffffffffffffffffffffffffffffffffff161461136e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161136590613014565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036113dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113d4906130a6565b60405180910390fd5b6113ea8383836001611bb2565b8273ffffffffffffffffffffffffffffffffffffffff1661140a82610bf1565b73ffffffffffffffffffffffffffffffffffffffff1614611460576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161145790613014565b60405180910390fd5b6004600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46115ec8383836001611cd8565b505050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b61166481611cde565b6116a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161169a906129d2565b60405180910390fd5b50565b600033905090565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff1661172183610bf1565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60008061177383610bf1565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614806117b557506117b481856110d8565b5b806117f357508373ffffffffffffffffffffffffffffffffffffffff166117db846108e8565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b60006002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036118a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161189e90613112565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516119989190611f7d565b60405180910390a3505050565b6119b08484846112f8565b6119bc84848484611d1f565b6119fb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119f2906131a4565b60405180910390fd5b50505050565b6060806009600184611a139190612a84565b60058110611a2457611a23612b90565b5b01604051602001611a359190613c18565b604051602081830303815290604052905080915050919050565b60606000825103611a7157604051806020016040528060008152509050611bad565b6000604051806060016040528060408152602001613d876040913990506000600360028551611aa09190612e72565b611aaa91906125fb565b6004611ab69190613c49565b67ffffffffffffffff811115611acf57611ace61229e565b5b6040519080825280601f01601f191660200182016040528015611b015781602001600182028036833780820191505090505b509050600182016020820185865187015b80821015611b6d576003820191508151603f8160121c168501518453600184019350603f81600c1c168501518453600184019350603f8160061c168501518453600184019350603f8116850151845360018401935050611b12565b5050600386510660018114611b895760028114611b9c57611ba4565b603d6001830353603d6002830353611ba4565b603d60018303535b50505080925050505b919050565b6001811115611cd257600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614611c465780600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611c3e9190612a84565b925050819055505b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614611cd15780600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611cc99190612e72565b925050819055505b5b50505050565b50505050565b60008073ffffffffffffffffffffffffffffffffffffffff16611d00836117fc565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b6000611d408473ffffffffffffffffffffffffffffffffffffffff16611ea6565b15611e99578373ffffffffffffffffffffffffffffffffffffffff1663150b7a02611d696116a6565b8786866040518563ffffffff1660e01b8152600401611d8b9493929190613cf8565b6020604051808303816000875af1925050508015611dc757506040513d601f19601f82011682018060405250810190611dc49190613d59565b60015b611e49573d8060008114611df7576040519150601f19603f3d011682016040523d82523d6000602084013e611dfc565b606091505b506000815103611e41576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e38906131a4565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050611e9e565b600190505b949350505050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b611f1281611edd565b8114611f1d57600080fd5b50565b600081359050611f2f81611f09565b92915050565b600060208284031215611f4b57611f4a611ed3565b5b6000611f5984828501611f20565b91505092915050565b60008115159050919050565b611f7781611f62565b82525050565b6000602082019050611f926000830184611f6e565b92915050565b6000819050919050565b611fab81611f98565b82525050565b6000602082019050611fc66000830184611fa2565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015612006578082015181840152602081019050611feb565b83811115612015576000848401525b50505050565b6000601f19601f8301169050919050565b600061203782611fcc565b6120418185611fd7565b9350612051818560208601611fe8565b61205a8161201b565b840191505092915050565b6000602082019050818103600083015261207f818461202c565b905092915050565b61209081611f98565b811461209b57600080fd5b50565b6000813590506120ad81612087565b92915050565b6000602082840312156120c9576120c8611ed3565b5b60006120d78482850161209e565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061210b826120e0565b9050919050565b61211b81612100565b82525050565b60006020820190506121366000830184612112565b92915050565b61214581612100565b811461215057600080fd5b50565b6000813590506121628161213c565b92915050565b6000806040838503121561217f5761217e611ed3565b5b600061218d85828601612153565b925050602061219e8582860161209e565b9150509250929050565b6000806000606084860312156121c1576121c0611ed3565b5b60006121cf86828701612153565b93505060206121e086828701612153565b92505060406121f18682870161209e565b9150509250925092565b60006020828403121561221157612210611ed3565b5b600061221f84828501612153565b91505092915050565b61223181611f62565b811461223c57600080fd5b50565b60008135905061224e81612228565b92915050565b6000806040838503121561226b5761226a611ed3565b5b600061227985828601612153565b925050602061228a8582860161223f565b9150509250929050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6122d68261201b565b810181811067ffffffffffffffff821117156122f5576122f461229e565b5b80604052505050565b6000612308611ec9565b905061231482826122cd565b919050565b600067ffffffffffffffff8211156123345761233361229e565b5b61233d8261201b565b9050602081019050919050565b82818337600083830152505050565b600061236c61236784612319565b6122fe565b90508281526020810184848401111561238857612387612299565b5b61239384828561234a565b509392505050565b600082601f8301126123b0576123af612294565b5b81356123c0848260208601612359565b91505092915050565b600080600080608085870312156123e3576123e2611ed3565b5b60006123f187828801612153565b945050602061240287828801612153565b93505060406124138782880161209e565b925050606085013567ffffffffffffffff81111561243457612433611ed8565b5b6124408782880161239b565b91505092959194509250565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61248181612100565b82525050565b60006124938383612478565b60208301905092915050565b6000602082019050919050565b60006124b78261244c565b6124c18185612457565b93506124cc83612468565b8060005b838110156124fd5781516124e48882612487565b97506124ef8361249f565b9250506001810190506124d0565b5085935050505092915050565b6000602082019050818103600083015261252481846124ac565b905092915050565b6000806040838503121561254357612542611ed3565b5b600061255185828601612153565b925050602061256285828601612153565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006125a682611f98565b91506125b183611f98565b9250826125c1576125c061256c565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061260682611f98565b915061261183611f98565b9250826126215761262061256c565b5b828204905092915050565b7f4e6f7420612034323020626c6f636b0000000000000000000000000000000000600082015250565b6000612662600f83611fd7565b915061266d8261262c565b602082019050919050565b6000602082019050818103600083015261269181612655565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806126df57607f821691505b6020821081036126f2576126f1612698565b5b50919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b6000612754602183611fd7565b915061275f826126f8565b604082019050919050565b6000602082019050818103600083015261278381612747565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60008201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c000000602082015250565b60006127e6603d83611fd7565b91506127f18261278a565b604082019050919050565b60006020820190508181036000830152612815816127d9565b9050919050565b7f4e6f7420656e6f7567682066756e647300000000000000000000000000000000600082015250565b6000612852601083611fd7565b915061285d8261281c565b602082019050919050565b6000602082019050818103600083015261288181612845565b9050919050565b7f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560008201527f72206f7220617070726f76656400000000000000000000000000000000000000602082015250565b60006128e4602d83611fd7565b91506128ef82612888565b604082019050919050565b60006020820190508181036000830152612913816128d7565b9050919050565b7f4e6f7420616e206576656e20626c6f636b000000000000000000000000000000600082015250565b6000612950601183611fd7565b915061295b8261291a565b602082019050919050565b6000602082019050818103600083015261297f81612943565b9050919050565b7f4552433732313a20696e76616c696420746f6b656e2049440000000000000000600082015250565b60006129bc601883611fd7565b91506129c782612986565b602082019050919050565b600060208201905081810360008301526129eb816129af565b9050919050565b7f4552433732313a2061646472657373207a65726f206973206e6f74206120766160008201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b6000612a4e602983611fd7565b9150612a59826129f2565b604082019050919050565b60006020820190508181036000830152612a7d81612a41565b9050919050565b6000612a8f82611f98565b9150612a9a83611f98565b925082821015612aad57612aac6125cc565b5b828203905092915050565b7f4e6f742061207765656b00000000000000000000000000000000000000000000600082015250565b6000612aee600a83611fd7565b9150612af982612ab8565b602082019050919050565b60006020820190508181036000830152612b1d81612ae1565b9050919050565b7f4e6f742067726561746572207468616e2070726576696f757300000000000000600082015250565b6000612b5a601983611fd7565b9150612b6582612b24565b602082019050919050565b60006020820190508181036000830152612b8981612b4d565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081905092915050565b7f7b226e616d65223a202200000000000000000000000000000000000000000000600082015250565b6000612c00600a83612bbf565b9150612c0b82612bca565b600a82019050919050565b60008190508160005260206000209050919050565b60008154612c38816126c7565b612c428186612bbf565b94506001821660008114612c5d5760018114612c6e57612ca1565b60ff19831686528186019350612ca1565b612c7785612c16565b60005b83811015612c9957815481890152600182019150602081019050612c7a565b838801955050505b50505092915050565b7f222c20226465736372697074696f6e223a202248617a6172647320436f6f6b6960008201527f65732c2059756d6d21222c2022696d616765223a2022646174613a696d61676560208201527f2f7376672b786d6c3b6261736536342c00000000000000000000000000000000604082015250565b6000612d2c605083612bbf565b9150612d3782612caa565b605082019050919050565b6000612d4d82611fcc565b612d578185612bbf565b9350612d67818560208601611fe8565b80840191505092915050565b7f227d000000000000000000000000000000000000000000000000000000000000600082015250565b6000612da9600283612bbf565b9150612db482612d73565b600282019050919050565b6000612dca82612bf3565b9150612dd68285612c2b565b9150612de182612d1f565b9150612ded8284612d42565b9150612df882612d9c565b91508190509392505050565b7f646174613a6170706c69636174696f6e2f6a736f6e3b6261736536342c000000600082015250565b6000612e3a601d83612bbf565b9150612e4582612e04565b601d82019050919050565b6000612e5b82612e2d565b9150612e678284612d42565b915081905092915050565b6000612e7d82611f98565b9150612e8883611f98565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612ebd57612ebc6125cc565b5b828201905092915050565b6000612ed382611f98565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612f0557612f046125cc565b5b600182019050919050565b7f4d757374206f776e206f6e65206f6620746865206f7468657220636f6f6b696560008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b6000612f6c602183611fd7565b9150612f7782612f10565b604082019050919050565b60006020820190508181036000830152612f9b81612f5f565b9050919050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b6000612ffe602583611fd7565b915061300982612fa2565b604082019050919050565b6000602082019050818103600083015261302d81612ff1565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000613090602483611fd7565b915061309b82613034565b604082019050919050565b600060208201905081810360008301526130bf81613083565b9050919050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b60006130fc601983611fd7565b9150613107826130c6565b602082019050919050565b6000602082019050818103600083015261312b816130ef565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b600061318e603283611fd7565b915061319982613132565b604082019050919050565b600060208201905081810360008301526131bd81613181565b9050919050565b7f3c7376672066696c6c3d22000000000000000000000000000000000000000000815250565b7f222077696474683d22313030707822206865696768743d22313030707822207660008201527f657273696f6e3d22312e31222076696577426f783d223020302037303020373060208201527f302220786d6c6e733d22687474703a2f2f7777772e77332e6f72672f3230303060408201527f2f737667223e3c673e3c7061746820643d226d33353020353630632d37352e3960608201527f343920302d3134372e30322d32392e3732372d3230302e31352d38332e37363660808201527f2d35322e3731312d35332e3539382d38312e3035392d3132342e34342d37392e60a08201527f3832342d3139392e343820302e30393337352d352e3530373820322e3134383460c08201527f2d31302e38323820352e373835322d31342e393820332e3132352d332e35373060e08201527f3320372e343431342d362e333437372031322e3033392d372e353131372032306101008201527f2e3634382d352e323033312033382e3130322d31392e3133332034372e3934396101208201527f2d33382e32313920352e343337352d31302e3534372031372e3932322d31352e6101408201527f3332382032392e3032372d31312e3132392035312e35322031392e35353520316101608201527f30302e36312d31392e373632203130302e36312d36392e3330316c2d302e34346101808201527f3134312d342e313532332d302e35313137322d332e38393834632d302e3639396101a08201527f32322d362e3434313420312e333238312d31322e38373920352e353738312d316101c08201527f372e37383120342e323436312d342e3837352031302e3333362d372e373933206101e08201527f31362e3832342d382e303237332033332e3433382d312e313434352036322e316102008201527f33372d32342e3534372036392e3738392d35362e393120352e393032332d32346102208201527f2e3934312033312e35372d34302e33322035372e3236322d33342e34313820316102408201527f32372e32312032392e353836203231362e3037203134312e3033203231362e306102608201527f37203237312e30322030203135332e362d3132352e36203237382e35352d32386102808201527f30203237382e35357a6d2d3233332e30332d3236362e343263322e38393435206102a08201527f35362e3432322032362e303339203130392e31382036362e313438203134392e6102c08201527f39342034342e3238352034352e303335203130332e35352036392e38313220316102e08201527f36362e38382036392e383132203132382e36362030203233332e33332d3130346103008201527f2e3032203233332e33332d3233312e383920302d3130382e31372d37342e30316103208201527f322d3230302e39322d3137392e39372d3232352e35366c2d312e3536323520306103408201527f2e3330343639632d31302e3430362034342e3536362d34362e3031322037382e6103608201527f3931342d39302e30392038392e3133332d342e393638382036322e3235342d356103808201527f372e313931203131312e33352d3132302e3636203131312e33352d382e3030336103a08201527f3920302d31362e3035352d302e38363332382d32342e3130322d322e353636346103c08201527f2d31322e3837392031372e3338332d33302e3134382033312e3031322d34392e6103e08201527f39382033392e34387a222f3e3c7061746820643d226d3434332e3333203139386104008201527f2e333363302031392e3333322d31352e3636382033352d33352033352d31392e6104208201527f33323820302d33352d31352e3636382d33352d333520302d31392e33323820316104408201527f352e3637322d33352033352d33352031392e33333220302033352031352e36376104608201527f32203335203335222f3e3c7061746820643d226d323830203333382e333363306104808201527f2031392e3333322d31352e3637322033352d3335203335732d33352d31352e366104a08201527f36382d33352d333563302d31392e3332382031352e3637322d33352033352d336104c08201527f357333352031352e363732203335203335222f3e3c7061746820643d226d34366104e08201527f362e36372033383563302031392e3332382d31352e3637322033352d333520336105008201527f352d31392e33333220302d33352d31352e3637322d33352d33357331352e36366105208201527f382d33352033352d33356331392e33323820302033352031352e3637322033356105408201527f203335222f3e3c7061746820643d226d3337332e33332032383063302031322e6105608201527f3838372d31302e3434352032332e3333322d32332e3333322032332e333332736105808201527f2d32332e3333322d31302e3434352d32332e3333322d32332e3333322031302e6105a08201527f3434352d32332e3333322032332e3333322d32332e3333322032332e333332206105c08201527f31302e3434352032332e3333322032332e333332222f3e3c7061746820643d226105e08201527f6d3332362e36372034323063302031322e3838372d31302e3434392032332e336106008201527f33322d32332e3333362032332e333332732d32332e3333322d31302e3434352d6106208201527f32332e3333322d32332e3333322031302e3434352d32332e3333322032332e336106408201527f33322d32332e3333322032332e3333362031302e3434352032332e33333620326106608201527f332e333332222f3e3c7061746820643d226d3330332e33332032332e333332636106808201527f302031322e3838372d31302e3434352032332e3333362d32332e3333322032336106a08201527f2e333336732d32332e3333322d31302e3434392d32332e3333322d32332e33336106c08201527f362031302e3434352d32332e3333322032332e3333322d32332e3333322032336106e08201527f2e3333322031302e3434352032332e3333322032332e333332222f3e3c7061746107008201527f6820643d226d323130203132382e333363302031392e3333322d31352e3637326107208201527f2033352d3335203335732d33352d31352e3636382d33352d333563302d31392e6107408201527f3332382031352e3637322d33352033352d33357333352031352e3637322033356107608201527f203335222f3e3c7061746820643d226d3531332e33332032383063302031322e6107808201527f3838372d31302e3434352032332e3333322d32332e3333322032332e333332736107a08201527f2d32332e3333322d31302e3434352d32332e3333322d32332e3333322031302e6107c08201527f3434352d32332e3333322032332e3333322d32332e3333322032332e333332206107e08201527f31302e3434352032332e3333322032332e333332222f3e3c2f673e3c2f7376676108008201527f3e0000000000000000000000000000000000000000000000000000000000000061082082015250565b6000613c0161082183612bbf565b9150613c0c826131ea565b61082182019050919050565b6000613c23826131c4565b600b82019150613c338284612c2b565b9150613c3e82613bf3565b915081905092915050565b6000613c5482611f98565b9150613c5f83611f98565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615613c9857613c976125cc565b5b828202905092915050565b600081519050919050565b600082825260208201905092915050565b6000613cca82613ca3565b613cd48185613cae565b9350613ce4818560208601611fe8565b613ced8161201b565b840191505092915050565b6000608082019050613d0d6000830187612112565b613d1a6020830186612112565b613d276040830185611fa2565b8181036060830152613d398184613cbf565b905095945050505050565b600081519050613d5381611f09565b92915050565b600060208284031215613d6f57613d6e611ed3565b5b6000613d7d84828501613d44565b9150509291505056fe4142434445464748494a4b4c4d4e4f505152535455565758595a6162636465666768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2fa2646970667358221220f208ccf83331c03849998fe5654d313111730b5c3382ebc48dd569e1c0398a5c64736f6c634300080d0033