0x6101606040523480156200001257600080fd5b506040518060400160405280600981526020017f69686176656d6167650000000000000000000000000000000000000000000000815250806040518060400160405280600181526020017f31000000000000000000000000000000000000000000000000000000000000008152506040518060400160405280600981526020017f69686176656d61676500000000000000000000000000000000000000000000008152506040518060400160405280600381526020017f69686d00000000000000000000000000000000000000000000000000000000008152508160039081620000fd919062000687565b5080600490816200010f919062000687565b50505062000132620001266200020e60201b60201c565b6200021660201b60201c565b6000600960146101000a81548160ff02191690831515021790555062000168600a83620002dc60201b620017fd1790919060201c565b61012081815250506200018b600b82620002dc60201b620017fd1790919060201c565b6101408181525050818051906020012060e08181525050808051906020012061010081815250504660a08181525050620001ca6200033960201b60201c565b608081815250503073ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff168152505050505062000991565b600033905090565b6000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60006020835110156200030257620002fa836200039660201b60201c565b905062000333565b8262000319836200040360201b620018411760201c565b60000190816200032a919062000687565b5060ff60001b90505b92915050565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60e0516101005146306040516020016200037b959493929190620007df565b60405160208183030381529060405280519060200120905090565b600080829050601f81511115620003e657826040517f305a27a9000000000000000000000000000000000000000000000000000000008152600401620003dd9190620008cb565b60405180910390fd5b805181620003f49062000921565b60001c1760001b915050919050565b6000819050919050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200048f57607f821691505b602082108103620004a557620004a462000447565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026200050f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82620004d0565b6200051b8683620004d0565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b600062000568620005626200055c8462000533565b6200053d565b62000533565b9050919050565b6000819050919050565b620005848362000547565b6200059c62000593826200056f565b848454620004dd565b825550505050565b600090565b620005b3620005a4565b620005c081848462000579565b505050565b5b81811015620005e857620005dc600082620005a9565b600181019050620005c6565b5050565b601f82111562000637576200060181620004ab565b6200060c84620004c0565b810160208510156200061c578190505b620006346200062b85620004c0565b830182620005c5565b50505b505050565b600082821c905092915050565b60006200065c600019846008026200063c565b1980831691505092915050565b600062000677838362000649565b9150826002028217905092915050565b62000692826200040d565b67ffffffffffffffff811115620006ae57620006ad62000418565b5b620006ba825462000476565b620006c7828285620005ec565b600060209050601f831160018114620006ff5760008415620006ea578287015190505b620006f6858262000669565b86555062000766565b601f1984166200070f86620004ab565b60005b82811015620007395784890151825560018201915060208501945060208101905062000712565b8683101562000759578489015162000755601f89168262000649565b8355505b6001600288020188555050505b505050505050565b6000819050919050565b62000783816200076e565b82525050565b620007948162000533565b82525050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620007c7826200079a565b9050919050565b620007d981620007ba565b82525050565b600060a082019050620007f6600083018862000778565b62000805602083018762000778565b62000814604083018662000778565b62000823606083018562000789565b620008326080830184620007ce565b9695505050505050565b600082825260208201905092915050565b60005b838110156200086d57808201518184015260208101905062000850565b60008484015250505050565b6000601f19601f8301169050919050565b600062000897826200040d565b620008a381856200083c565b9350620008b58185602086016200084d565b620008c08162000879565b840191505092915050565b60006020820190508181036000830152620008e781846200088a565b905092915050565b600081519050919050565b6000819050602082019050919050565b60006200091882516200076e565b80915050919050565b60006200092e82620008ef565b826200093a84620008fa565b905062000947816200090a565b925060208210156200098a57620009857fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff83602003600802620004d0565b831692505b5050919050565b60805160a05160c05160e051610100516101205161014051615a28620009ec6000396000610f4901526000610f15015260006126940152600061267301526000611d2201526000611d7801526000611da10152615a286000f3fe608060405234801561001057600080fd5b506004361061023d5760003560e01c8063715018a61161013b578063981b24d0116100b8578063d505accf1161007c578063d505accf1461070c578063d9d98ce414610728578063dd62ed3e14610758578063f1127ed814610788578063f2fde38b146107b85761023d565b8063981b24d0146106305780639ab24eb014610660578063a457c2d714610690578063a9059cbb146106c0578063c3cda520146106f05761023d565b80638da5cb5b116100ff5780638da5cb5b1461059c5780638e539e8c146105ba57806391ddadf4146105ea57806395d89b41146106085780639711715a146106265761023d565b8063715018a61461051857806379cc6790146105225780637ecebe001461053e5780638456cb591461056e57806384b0196e146105785761023d565b806342966c68116101c95780635c975abb1161018d5780635c975abb1461043a5780635cffe9de14610458578063613255ab146104885780636fcfff45146104b857806370a08231146104e85761023d565b806342966c68146103845780634bf5d7e9146103a05780634ee2cd7e146103be578063587cde1e146103ee5780635c19a95c1461041e5761023d565b8063313ce56711610210578063313ce567146102de5780633644e515146102fc578063395093511461031a5780633a46b1a81461034a5780633f4ba83a1461037a5761023d565b806306fdde0314610242578063095ea7b31461026057806318160ddd1461029057806323b872dd146102ae575b600080fd5b61024a6107d4565b6040516102579190613a44565b60405180910390f35b61027a60048036038101906102759190613b04565b610866565b6040516102879190613b5f565b60405180910390f35b610298610889565b6040516102a59190613b89565b60405180910390f35b6102c860048036038101906102c39190613ba4565b610893565b6040516102d59190613b5f565b60405180910390f35b6102e66108c2565b6040516102f39190613c13565b60405180910390f35b6103046108cb565b6040516103119190613c47565b60405180910390f35b610334600480360381019061032f9190613b04565b6108da565b6040516103419190613b5f565b60405180910390f35b610364600480360381019061035f9190613b04565b610911565b6040516103719190613b89565b60405180910390f35b6103826109b4565b005b61039e60048036038101906103999190613c62565b6109c6565b005b6103a86109da565b6040516103b59190613a44565b60405180910390f35b6103d860048036038101906103d39190613b04565b610a68565b6040516103e59190613b89565b60405180910390f35b61040860048036038101906104039190613c8f565b610ad8565b6040516104159190613ccb565b60405180910390f35b61043860048036038101906104339190613c8f565b610b41565b005b610442610b55565b60405161044f9190613b5f565b60405180910390f35b610472600480360381019061046d9190613d89565b610b6c565b60405161047f9190613b5f565b60405180910390f35b6104a2600480360381019061049d9190613c8f565b610d59565b6040516104af9190613b89565b60405180910390f35b6104d260048036038101906104cd9190613c8f565b610dd0565b6040516104df9190613e30565b60405180910390f35b61050260048036038101906104fd9190613c8f565b610e24565b60405161050f9190613b89565b60405180910390f35b610520610e6c565b005b61053c60048036038101906105379190613b04565b610e80565b005b61055860048036038101906105539190613c8f565b610ea0565b6040516105659190613b89565b60405180910390f35b610576610ef0565b005b610580610f02565b6040516105939796959493929190613f44565b60405180910390f35b6105a4611004565b6040516105b19190613ccb565b60405180910390f35b6105d460048036038101906105cf9190613c62565b61102e565b6040516105e19190613b89565b60405180910390f35b6105f2611093565b6040516105ff9190613fe9565b60405180910390f35b6106106110a3565b60405161061d9190613a44565b60405180910390f35b61062e611135565b005b61064a60048036038101906106459190613c62565b611148565b6040516106579190613b89565b60405180910390f35b61067a60048036038101906106759190613c8f565b611179565b6040516106879190613b89565b60405180910390f35b6106aa60048036038101906106a59190613b04565b611281565b6040516106b79190613b5f565b60405180910390f35b6106da60048036038101906106d59190613b04565b6112f8565b6040516106e79190613b5f565b60405180910390f35b61070a6004803603810190610705919061405c565b61131b565b005b610726600480360381019061072191906140e9565b61141f565b005b610742600480360381019061073d9190613b04565b611561565b60405161074f9190613b89565b60405180910390f35b610772600480360381019061076d919061418b565b6115e3565b60405161077f9190613b89565b60405180910390f35b6107a2600480360381019061079d91906141f7565b61166a565b6040516107af91906142ac565b60405180910390f35b6107d260048036038101906107cd9190613c8f565b61177a565b005b6060600380546107e3906142f6565b80601f016020809104026020016040519081016040528092919081815260200182805461080f906142f6565b801561085c5780601f106108315761010080835404028352916020019161085c565b820191906000526020600020905b81548152906001019060200180831161083f57829003601f168201915b5050505050905090565b60008061087161184b565b905061087e818585611853565b600191505092915050565b6000600254905090565b60008061089e61184b565b90506108ab858285611a1c565b6108b6858585611aa8565b60019150509392505050565b60006012905090565b60006108d5611d1e565b905090565b6000806108e561184b565b90506109068185856108f785896115e3565b6109019190614356565b611853565b600191505092915050565b600061091b611093565b65ffffffffffff168210610964576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161095b906143d6565b60405180910390fd5b6109ac600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002083611dd5565b905092915050565b6109bc611f1d565b6109c4611f9b565b565b6109d76109d161184b565b82611ffe565b50565b6060436109e5611093565b65ffffffffffff1614610a2d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a2490614442565b60405180910390fd5b6040518060400160405280601d81526020017f6d6f64653d626c6f636b6e756d6265722666726f6d3d64656661756c74000000815250905090565b6000806000610ab584600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002061200c565b9150915081610acc57610ac785610e24565b610ace565b805b9250505092915050565b6000600e60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b610b52610b4c61184b565b82612101565b50565b6000600960149054906101000a900460ff16905090565b6000610b7785610d59565b841115610bb9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bb0906144d4565b60405180910390fd5b6000610bc58686611561565b9050610bd1878661221b565b7f439148f0bbc682ca079e46d6e2c2f0c1e3b820f1a291b069d8882abf8cf18dd98773ffffffffffffffffffffffffffffffffffffffff166323e30c8b338989868a8a6040518763ffffffff1660e01b8152600401610c3596959493929190614541565b6020604051808303816000875af1158015610c54573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c7891906145b2565b14610cb8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610caf90614651565b60405180910390fd5b6000610cc2612229565b9050610cda88308489610cd59190614356565b611a1c565b6000821480610d155750600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b15610d3457610d2f888388610d2a9190614356565b611ffe565b610d4a565b610d3e8887611ffe565b610d49888284611aa8565b5b60019250505095945050505050565b60003073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614610d95576000610dc9565b610d9d610889565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff610dc89190614671565b5b9050919050565b6000610e1d600f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208054905061222e565b9050919050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610e74611f1d565b610e7e6000612281565b565b610e9282610e8c61184b565b83611a1c565b610e9c8282611ffe565b5050565b6000610ee9600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020612347565b9050919050565b610ef8611f1d565b610f00612355565b565b600060608060008060006060610f42600a7f00000000000000000000000000000000000000000000000000000000000000006123b890919063ffffffff16565b610f76600b7f00000000000000000000000000000000000000000000000000000000000000006123b890919063ffffffff16565b46306000801b600067ffffffffffffffff811115610f9757610f966146a5565b5b604051908082528060200260200182016040528015610fc55781602001602082028036833780820191505090505b507f0f00000000000000000000000000000000000000000000000000000000000000959493929190965096509650965096509650965090919293949596565b6000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000611038611093565b65ffffffffffff168210611081576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611078906143d6565b60405180910390fd5b61108c601083611dd5565b9050919050565b600061109e43612468565b905090565b6060600480546110b2906142f6565b80601f01602080910402602001604051908101604052809291908181526020018280546110de906142f6565b801561112b5780601f106111005761010080835404028352916020019161112b565b820191906000526020600020905b81548152906001019060200180831161110e57829003601f168201915b5050505050905090565b61113d611f1d565b6111456124bd565b50565b600080600061115884600661200c565b915091508161116e57611169610889565b611170565b805b92505050919050565b600080600f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208054905090506000811461125857600f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600182038154811061121d5761121c6146d4565b5b9060005260206000200160000160049054906101000a90047bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1661125b565b60005b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16915050919050565b60008061128c61184b565b9050600061129a82866115e3565b9050838110156112df576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112d690614775565b60405180910390fd5b6112ec8286868403611853565b60019250505092915050565b60008061130361184b565b9050611310818585611aa8565b600191505092915050565b8342111561135e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611355906147e1565b60405180910390fd5b60006113c06113b87fe48329057bfd03d55e49b547132e39cffd9c1820ad7b9d4c5307691425d15adf89898960405160200161139d9493929190614801565b60405160208183030381529060405280519060200120612513565b85858561252d565b90506113cb81612558565b861461140c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161140390614892565b60405180910390fd5b6114168188612101565b50505050505050565b83421115611462576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611459906148fe565b60405180910390fd5b60007f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98888886114918c612558565b896040516020016114a79695949392919061491e565b60405160208183030381529060405280519060200120905060006114ca82612513565b905060006114da8287878761252d565b90508973ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461154a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611541906149cb565b60405180910390fd5b6115558a8a8a611853565b50505050505050505050565b60003073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16146115d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115c890614a37565b60405180910390fd5b6115db83836125b6565b905092915050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b611672613976565b600f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208263ffffffff16815481106116c9576116c86146d4565b5b906000526020600020016040518060400160405290816000820160009054906101000a900463ffffffff1663ffffffff1663ffffffff1681526020016000820160049054906101000a90047bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1681525050905092915050565b611782611f1d565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036117f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117e890614ac9565b60405180910390fd5b6117fa81612281565b50565b600060208351101561181957611812836125be565b905061183b565b8261182383611841565b60000190816118329190614c95565b5060ff60001b90505b92915050565b6000819050919050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036118c2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118b990614dd9565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611931576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161192890614e6b565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611a0f9190613b89565b60405180910390a3505050565b6000611a2884846115e3565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114611aa25781811015611a94576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a8b90614ed7565b60405180910390fd5b611aa18484848403611853565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611b17576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b0e90614f69565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611b86576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b7d90614ffb565b60405180910390fd5b611b91838383612626565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611c17576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c0e9061508d565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611d059190613b89565b60405180910390a3611d1884848461263e565b50505050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff16148015611d9a57507f000000000000000000000000000000000000000000000000000000000000000046145b15611dc7577f00000000000000000000000000000000000000000000000000000000000000009050611dd2565b611dcf61264e565b90505b90565b600080838054905090506000808290506005831115611e4b576000611df9846126e4565b84611e049190614671565b905085611e1188836127dd565b60000160009054906101000a900463ffffffff1663ffffffff161115611e3957809150611e49565b600181611e469190614356565b92505b505b5b80821015611eab576000611e6083836127f2565b905085611e6d88836127dd565b60000160009054906101000a900463ffffffff1663ffffffff161115611e9557809150611ea5565b600181611ea29190614356565b92505b50611e4c565b60008114611ef157611ec086600183036127dd565b60000160049054906101000a90047bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16611ef4565b60005b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16935050505092915050565b611f2561184b565b73ffffffffffffffffffffffffffffffffffffffff16611f43611004565b73ffffffffffffffffffffffffffffffffffffffff1614611f99576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f90906150f9565b60405180910390fd5b565b611fa3612818565b6000600960146101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa611fe761184b565b604051611ff49190613ccb565b60405180910390a1565b6120088282612861565b5050565b60008060008411612052576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161204990615165565b60405180910390fd5b61205a61287f565b84111561209c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612093906151d1565b60405180910390fd5b60006120b4858560000161289090919063ffffffff16565b9050836000018054905081036120d15760008092509250506120fa565b60018460010182815481106120e9576120e86146d4565b5b906000526020600020015492509250505b9250929050565b600061210c83610ad8565b9050600061211984610e24565b905082600e60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508273ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f60405160405180910390a4612215828483612949565b50505050565b6122258282612b42565b5050565b600090565b600063ffffffff8016821115612279576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161227090615263565b60405180910390fd5b819050919050565b6000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600081600001549050919050565b61235d612bcf565b6001600960146101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586123a161184b565b6040516123ae9190613ccb565b60405180910390a1565b606060ff60001b83146123d5576123ce83612c19565b9050612462565b8180546123e1906142f6565b80601f016020809104026020016040519081016040528092919081815260200182805461240d906142f6565b801561245a5780601f1061242f5761010080835404028352916020019161245a565b820191906000526020600020905b81548152906001019060200180831161243d57829003601f168201915b505050505090505b92915050565b600065ffffffffffff80168211156124b5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124ac906152f5565b60405180910390fd5b819050919050565b60006124c96008612c8d565b60006124d361287f565b90507f8030e83b04d87bef53480e26263266d6ca66863aa8506aca6f2559d18aa1cb67816040516125049190613b89565b60405180910390a18091505090565b6000612526612520611d1e565b83612ca3565b9050919050565b600080600061253e87878787612ce4565b9150915061254b81612dc6565b8192505050949350505050565b600080600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090506125a581612347565b91506125b081612c8d565b50919050565b600092915050565b600080829050601f8151111561260b57826040517f305a27a90000000000000000000000000000000000000000000000000000000081526004016126029190613a44565b60405180910390fd5b80518161261790615345565b60001c1760001b915050919050565b61262e612bcf565b612639838383612f2c565b505050565b612649838383612fe4565b505050565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f7f00000000000000000000000000000000000000000000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000046306040516020016126c99594939291906153ac565b60405160208183030381529060405280519060200120905090565b60008082036126f657600090506127d8565b600060016127038461300f565b901c6001901b9050600181848161271d5761271c6153ff565b5b048201901c90506001818481612736576127356153ff565b5b048201901c9050600181848161274f5761274e6153ff565b5b048201901c90506001818481612768576127676153ff565b5b048201901c90506001818481612781576127806153ff565b5b048201901c9050600181848161279a576127996153ff565b5b048201901c905060018184816127b3576127b26153ff565b5b048201901c90506127d4818285816127ce576127cd6153ff565b5b046130f0565b9150505b919050565b60008260005281602060002001905092915050565b60006002828418612803919061542e565b8284166128109190614356565b905092915050565b612820610b55565b61285f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612856906154ab565b60405180910390fd5b565b61286b8282613109565b61287960106132d6836132ec565b50505050565b600061288b6008612347565b905090565b6000808380549050036128a65760009050612943565b600080848054905090505b808210156128fa5760006128c583836127f2565b9050846128d287836135c7565b6000015411156128e4578091506128f4565b6001816128f19190614356565b92505b506128b1565b60008211801561292257508361291c866001856129179190614671565b6135c7565b60000154145b1561293d576001826129349190614671565b92505050612943565b81925050505b92915050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156129855750600081115b15612b3d57600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614612a6357600080612a0c600f60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206132d6856132ec565b915091508473ffffffffffffffffffffffffffffffffffffffff167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a7248383604051612a589291906154cb565b60405180910390a250505b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614612b3c57600080612ae5600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206135e9856132ec565b915091508373ffffffffffffffffffffffffffffffffffffffff167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a7248383604051612b319291906154cb565b60405180910390a250505b5b505050565b612b4c82826135ff565b612b54613755565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16612b7a610889565b1115612bbb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612bb290615566565b60405180910390fd5b612bc960106135e9836132ec565b50505050565b612bd7610b55565b15612c17576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c0e906155d2565b60405180910390fd5b565b60606000612c2683613779565b90506000602067ffffffffffffffff811115612c4557612c446146a5565b5b6040519080825280601f01601f191660200182016040528015612c775781602001600182028036833780820191505090505b5090508181528360208201528092505050919050565b6001816000016000828254019250508190555050565b60006040517f190100000000000000000000000000000000000000000000000000000000000081528360028201528260228201526042812091505092915050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08360001c1115612d1f576000600391509150612dbd565b600060018787878760405160008152602001604052604051612d4494939291906155f2565b6020604051602081039080840390855afa158015612d66573d6000803e3d6000fd5b505050602060405103519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603612db457600060019250925050612dbd565b80600092509250505b94509492505050565b60006004811115612dda57612dd9615637565b5b816004811115612ded57612dec615637565b5b0315612f295760016004811115612e0757612e06615637565b5b816004811115612e1a57612e19615637565b5b03612e5a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612e51906156b2565b60405180910390fd5b60026004811115612e6e57612e6d615637565b5b816004811115612e8157612e80615637565b5b03612ec1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612eb89061571e565b60405180910390fd5b60036004811115612ed557612ed4615637565b5b816004811115612ee857612ee7615637565b5b03612f28576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612f1f906157b0565b60405180910390fd5b5b50565b612f378383836137c9565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612f8157612f74826137ce565b612f7c613821565b612fdf565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612fcb57612fbe836137ce565b612fc6613821565b612fde565b612fd4836137ce565b612fdd826137ce565b5b5b505050565b612fef838383613835565b61300a612ffb84610ad8565b61300484610ad8565b83612949565b505050565b600080600090506000608084901c111561303157608083901c92506080810190505b6000604084901c111561304c57604083901c92506040810190505b6000602084901c111561306757602083901c92506020810190505b6000601084901c111561308257601083901c92506010810190505b6000600884901c111561309d57600883901c92506008810190505b6000600484901c11156130b857600483901c92506004810190505b6000600284901c11156130d357600283901c92506002810190505b6000600184901c11156130e7576001810190505b80915050919050565b60008183106130ff5781613101565b825b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603613178576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161316f90615842565b60405180910390fd5b61318482600083612626565b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508181101561320a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613201906158d4565b60405180910390fd5b8181036000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600260008282540392505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516132bd9190613b89565b60405180910390a36132d18360008461263e565b505050565b600081836132e49190614671565b905092915050565b60008060008580549050905060008082146133b25761330e87600184036127dd565b6040518060400160405290816000820160009054906101000a900463ffffffff1663ffffffff1663ffffffff1681526020016000820160049054906101000a90047bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16815250506133ee565b6040518060400160405280600063ffffffff16815260200160007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff168152505b905080602001517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16935061342384868863ffffffff16565b925060008211801561344d5750613438611093565b65ffffffffffff16816000015163ffffffff16145b156134be5761345b8361383a565b61346888600185036127dd565b60000160046101000a8154817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff02191690837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1602179055506135bd565b8660405180604001604052806134e26134d5611093565b65ffffffffffff1661222e565b63ffffffff1681526020016134f68661383a565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff168152509080600181540180825580915050600190039060005260206000200160009091909190915060008201518160000160006101000a81548163ffffffff021916908363ffffffff16021790555060208201518160000160046101000a8154817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff02191690837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16021790555050505b5050935093915050565b600080836000528260206000200190506135e0816138a5565b91505092915050565b600081836135f79190614356565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361366e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161366590615940565b60405180910390fd5b61367a60008383612626565b806002600082825461368c9190614356565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161373d9190613b89565b60405180910390a36137516000838361263e565b5050565b60007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff905090565b60008060ff8360001c169050601f8111156137c0576040517fb3512b0c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80915050919050565b505050565b61381e600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002061381983610e24565b6138af565b50565b613833600661382e610889565b6138af565b565b505050565b60007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff801682111561389d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613894906159d2565b60405180910390fd5b819050919050565b6000819050919050565b60006138b961287f565b9050806138c88460000161392a565b10156139255782600001819080600181540180825580915050600190039060005260206000200160009091909190915055826001018290806001815401808255809150506001900390600052602060002001600090919091909150555b505050565b6000808280549050036139405760009050613971565b81600183805490506139529190614671565b81548110613963576139626146d4565b5b906000526020600020015490505b919050565b6040518060400160405280600063ffffffff16815260200160007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1681525090565b600081519050919050565b600082825260208201905092915050565b60005b838110156139ee5780820151818401526020810190506139d3565b60008484015250505050565b6000601f19601f8301169050919050565b6000613a16826139b4565b613a2081856139bf565b9350613a308185602086016139d0565b613a39816139fa565b840191505092915050565b60006020820190508181036000830152613a5e8184613a0b565b905092915050565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000613a9b82613a70565b9050919050565b613aab81613a90565b8114613ab657600080fd5b50565b600081359050613ac881613aa2565b92915050565b6000819050919050565b613ae181613ace565b8114613aec57600080fd5b50565b600081359050613afe81613ad8565b92915050565b60008060408385031215613b1b57613b1a613a66565b5b6000613b2985828601613ab9565b9250506020613b3a85828601613aef565b9150509250929050565b60008115159050919050565b613b5981613b44565b82525050565b6000602082019050613b746000830184613b50565b92915050565b613b8381613ace565b82525050565b6000602082019050613b9e6000830184613b7a565b92915050565b600080600060608486031215613bbd57613bbc613a66565b5b6000613bcb86828701613ab9565b9350506020613bdc86828701613ab9565b9250506040613bed86828701613aef565b9150509250925092565b600060ff82169050919050565b613c0d81613bf7565b82525050565b6000602082019050613c286000830184613c04565b92915050565b6000819050919050565b613c4181613c2e565b82525050565b6000602082019050613c5c6000830184613c38565b92915050565b600060208284031215613c7857613c77613a66565b5b6000613c8684828501613aef565b91505092915050565b600060208284031215613ca557613ca4613a66565b5b6000613cb384828501613ab9565b91505092915050565b613cc581613a90565b82525050565b6000602082019050613ce06000830184613cbc565b92915050565b6000613cf182613a90565b9050919050565b613d0181613ce6565b8114613d0c57600080fd5b50565b600081359050613d1e81613cf8565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f840112613d4957613d48613d24565b5b8235905067ffffffffffffffff811115613d6657613d65613d29565b5b602083019150836001820283011115613d8257613d81613d2e565b5b9250929050565b600080600080600060808688031215613da557613da4613a66565b5b6000613db388828901613d0f565b9550506020613dc488828901613ab9565b9450506040613dd588828901613aef565b935050606086013567ffffffffffffffff811115613df657613df5613a6b565b5b613e0288828901613d33565b92509250509295509295909350565b600063ffffffff82169050919050565b613e2a81613e11565b82525050565b6000602082019050613e456000830184613e21565b92915050565b60007fff0000000000000000000000000000000000000000000000000000000000000082169050919050565b613e8081613e4b565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b613ebb81613ace565b82525050565b6000613ecd8383613eb2565b60208301905092915050565b6000602082019050919050565b6000613ef182613e86565b613efb8185613e91565b9350613f0683613ea2565b8060005b83811015613f37578151613f1e8882613ec1565b9750613f2983613ed9565b925050600181019050613f0a565b5085935050505092915050565b600060e082019050613f59600083018a613e77565b8181036020830152613f6b8189613a0b565b90508181036040830152613f7f8188613a0b565b9050613f8e6060830187613b7a565b613f9b6080830186613cbc565b613fa860a0830185613c38565b81810360c0830152613fba8184613ee6565b905098975050505050505050565b600065ffffffffffff82169050919050565b613fe381613fc8565b82525050565b6000602082019050613ffe6000830184613fda565b92915050565b61400d81613bf7565b811461401857600080fd5b50565b60008135905061402a81614004565b92915050565b61403981613c2e565b811461404457600080fd5b50565b60008135905061405681614030565b92915050565b60008060008060008060c0878903121561407957614078613a66565b5b600061408789828a01613ab9565b965050602061409889828a01613aef565b95505060406140a989828a01613aef565b94505060606140ba89828a0161401b565b93505060806140cb89828a01614047565b92505060a06140dc89828a01614047565b9150509295509295509295565b600080600080600080600060e0888a03121561410857614107613a66565b5b60006141168a828b01613ab9565b97505060206141278a828b01613ab9565b96505060406141388a828b01613aef565b95505060606141498a828b01613aef565b945050608061415a8a828b0161401b565b93505060a061416b8a828b01614047565b92505060c061417c8a828b01614047565b91505092959891949750929550565b600080604083850312156141a2576141a1613a66565b5b60006141b085828601613ab9565b92505060206141c185828601613ab9565b9150509250929050565b6141d481613e11565b81146141df57600080fd5b50565b6000813590506141f1816141cb565b92915050565b6000806040838503121561420e5761420d613a66565b5b600061421c85828601613ab9565b925050602061422d858286016141e2565b9150509250929050565b61424081613e11565b82525050565b60007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff82169050919050565b61427781614246565b82525050565b6040820160008201516142936000850182614237565b5060208201516142a6602085018261426e565b50505050565b60006040820190506142c1600083018461427d565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061430e57607f821691505b602082108103614321576143206142c7565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061436182613ace565b915061436c83613ace565b925082820190508082111561438457614383614327565b5b92915050565b7f4552433230566f7465733a20667574757265206c6f6f6b757000000000000000600082015250565b60006143c06019836139bf565b91506143cb8261438a565b602082019050919050565b600060208201905081810360008301526143ef816143b3565b9050919050565b7f4552433230566f7465733a2062726f6b656e20636c6f636b206d6f6465000000600082015250565b600061442c601d836139bf565b9150614437826143f6565b602082019050919050565b6000602082019050818103600083015261445b8161441f565b9050919050565b7f4552433230466c6173684d696e743a20616d6f756e742065786365656473206d60008201527f6178466c6173684c6f616e000000000000000000000000000000000000000000602082015250565b60006144be602b836139bf565b91506144c982614462565b604082019050919050565b600060208201905081810360008301526144ed816144b1565b9050919050565b600082825260208201905092915050565b82818337600083830152505050565b600061452083856144f4565b935061452d838584614505565b614536836139fa565b840190509392505050565b600060a0820190506145566000830189613cbc565b6145636020830188613cbc565b6145706040830187613b7a565b61457d6060830186613b7a565b8181036080830152614590818486614514565b9050979650505050505050565b6000815190506145ac81614030565b92915050565b6000602082840312156145c8576145c7613a66565b5b60006145d68482850161459d565b91505092915050565b7f4552433230466c6173684d696e743a20696e76616c69642072657475726e207660008201527f616c756500000000000000000000000000000000000000000000000000000000602082015250565b600061463b6024836139bf565b9150614646826145df565b604082019050919050565b6000602082019050818103600083015261466a8161462e565b9050919050565b600061467c82613ace565b915061468783613ace565b925082820390508181111561469f5761469e614327565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b600061475f6025836139bf565b915061476a82614703565b604082019050919050565b6000602082019050818103600083015261478e81614752565b9050919050565b7f4552433230566f7465733a207369676e61747572652065787069726564000000600082015250565b60006147cb601d836139bf565b91506147d682614795565b602082019050919050565b600060208201905081810360008301526147fa816147be565b9050919050565b60006080820190506148166000830187613c38565b6148236020830186613cbc565b6148306040830185613b7a565b61483d6060830184613b7a565b95945050505050565b7f4552433230566f7465733a20696e76616c6964206e6f6e636500000000000000600082015250565b600061487c6019836139bf565b915061488782614846565b602082019050919050565b600060208201905081810360008301526148ab8161486f565b9050919050565b7f45524332305065726d69743a206578706972656420646561646c696e65000000600082015250565b60006148e8601d836139bf565b91506148f3826148b2565b602082019050919050565b60006020820190508181036000830152614917816148db565b9050919050565b600060c0820190506149336000830189613c38565b6149406020830188613cbc565b61494d6040830187613cbc565b61495a6060830186613b7a565b6149676080830185613b7a565b61497460a0830184613b7a565b979650505050505050565b7f45524332305065726d69743a20696e76616c6964207369676e61747572650000600082015250565b60006149b5601e836139bf565b91506149c08261497f565b602082019050919050565b600060208201905081810360008301526149e4816149a8565b9050919050565b7f4552433230466c6173684d696e743a2077726f6e6720746f6b656e0000000000600082015250565b6000614a21601b836139bf565b9150614a2c826149eb565b602082019050919050565b60006020820190508181036000830152614a5081614a14565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000614ab36026836139bf565b9150614abe82614a57565b604082019050919050565b60006020820190508181036000830152614ae281614aa6565b9050919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302614b4b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82614b0e565b614b558683614b0e565b95508019841693508086168417925050509392505050565b6000819050919050565b6000614b92614b8d614b8884613ace565b614b6d565b613ace565b9050919050565b6000819050919050565b614bac83614b77565b614bc0614bb882614b99565b848454614b1b565b825550505050565b600090565b614bd5614bc8565b614be0818484614ba3565b505050565b5b81811015614c0457614bf9600082614bcd565b600181019050614be6565b5050565b601f821115614c4957614c1a81614ae9565b614c2384614afe565b81016020851015614c32578190505b614c46614c3e85614afe565b830182614be5565b50505b505050565b600082821c905092915050565b6000614c6c60001984600802614c4e565b1980831691505092915050565b6000614c858383614c5b565b9150826002028217905092915050565b614c9e826139b4565b67ffffffffffffffff811115614cb757614cb66146a5565b5b614cc182546142f6565b614ccc828285614c08565b600060209050601f831160018114614cff5760008415614ced578287015190505b614cf78582614c79565b865550614d5f565b601f198416614d0d86614ae9565b60005b82811015614d3557848901518255600182019150602085019450602081019050614d10565b86831015614d525784890151614d4e601f891682614c5b565b8355505b6001600288020188555050505b505050505050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000614dc36024836139bf565b9150614dce82614d67565b604082019050919050565b60006020820190508181036000830152614df281614db6565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000614e556022836139bf565b9150614e6082614df9565b604082019050919050565b60006020820190508181036000830152614e8481614e48565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b6000614ec1601d836139bf565b9150614ecc82614e8b565b602082019050919050565b60006020820190508181036000830152614ef081614eb4565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000614f536025836139bf565b9150614f5e82614ef7565b604082019050919050565b60006020820190508181036000830152614f8281614f46565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000614fe56023836139bf565b9150614ff082614f89565b604082019050919050565b6000602082019050818103600083015261501481614fd8565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b60006150776026836139bf565b91506150828261501b565b604082019050919050565b600060208201905081810360008301526150a68161506a565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006150e36020836139bf565b91506150ee826150ad565b602082019050919050565b60006020820190508181036000830152615112816150d6565b9050919050565b7f4552433230536e617073686f743a206964206973203000000000000000000000600082015250565b600061514f6016836139bf565b915061515a82615119565b602082019050919050565b6000602082019050818103600083015261517e81615142565b9050919050565b7f4552433230536e617073686f743a206e6f6e6578697374656e74206964000000600082015250565b60006151bb601d836139bf565b91506151c682615185565b602082019050919050565b600060208201905081810360008301526151ea816151ae565b9050919050565b7f53616665436173743a2076616c756520646f65736e27742066697420696e203360008201527f3220626974730000000000000000000000000000000000000000000000000000602082015250565b600061524d6026836139bf565b9150615258826151f1565b604082019050919050565b6000602082019050818103600083015261527c81615240565b9050919050565b7f53616665436173743a2076616c756520646f65736e27742066697420696e203460008201527f3820626974730000000000000000000000000000000000000000000000000000602082015250565b60006152df6026836139bf565b91506152ea82615283565b604082019050919050565b6000602082019050818103600083015261530e816152d2565b9050919050565b600081519050919050565b6000819050602082019050919050565b600061533c8251613c2e565b80915050919050565b600061535082615315565b8261535a84615320565b905061536581615330565b925060208210156153a5576153a07fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff83602003600802614b0e565b831692505b5050919050565b600060a0820190506153c16000830188613c38565b6153ce6020830187613c38565b6153db6040830186613c38565b6153e86060830185613b7a565b6153f56080830184613cbc565b9695505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061543982613ace565b915061544483613ace565b925082615454576154536153ff565b5b828204905092915050565b7f5061757361626c653a206e6f7420706175736564000000000000000000000000600082015250565b60006154956014836139bf565b91506154a08261545f565b602082019050919050565b600060208201905081810360008301526154c481615488565b9050919050565b60006040820190506154e06000830185613b7a565b6154ed6020830184613b7a565b9392505050565b7f4552433230566f7465733a20746f74616c20737570706c79207269736b73206f60008201527f766572666c6f77696e6720766f74657300000000000000000000000000000000602082015250565b60006155506030836139bf565b915061555b826154f4565b604082019050919050565b6000602082019050818103600083015261557f81615543565b9050919050565b7f5061757361626c653a2070617573656400000000000000000000000000000000600082015250565b60006155bc6010836139bf565b91506155c782615586565b602082019050919050565b600060208201905081810360008301526155eb816155af565b9050919050565b60006080820190506156076000830187613c38565b6156146020830186613c04565b6156216040830185613c38565b61562e6060830184613c38565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f45434453413a20696e76616c6964207369676e61747572650000000000000000600082015250565b600061569c6018836139bf565b91506156a782615666565b602082019050919050565b600060208201905081810360008301526156cb8161568f565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265206c656e67746800600082015250565b6000615708601f836139bf565b9150615713826156d2565b602082019050919050565b60006020820190508181036000830152615737816156fb565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265202773272076616c60008201527f7565000000000000000000000000000000000000000000000000000000000000602082015250565b600061579a6022836139bf565b91506157a58261573e565b604082019050919050565b600060208201905081810360008301526157c98161578d565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b600061582c6021836139bf565b9150615837826157d0565b604082019050919050565b6000602082019050818103600083015261585b8161581f565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b60006158be6022836139bf565b91506158c982615862565b604082019050919050565b600060208201905081810360008301526158ed816158b1565b9050919050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b600061592a601f836139bf565b9150615935826158f4565b602082019050919050565b600060208201905081810360008301526159598161591d565b9050919050565b7f53616665436173743a2076616c756520646f65736e27742066697420696e203260008201527f3234206269747300000000000000000000000000000000000000000000000000602082015250565b60006159bc6027836139bf565b91506159c782615960565b604082019050919050565b600060208201905081810360008301526159eb816159af565b905091905056fea26469706673582212203ef679fb7adadb485466ae8bfb44c173f5c0f766d35eacf9e904fc2bccd05e0264736f6c63430008120033