0x6101606040523480156200001257600080fd5b506040518060400160405280600281526020017f6232000000000000000000000000000000000000000000000000000000000000815250806040518060400160405280600181526020017f31000000000000000000000000000000000000000000000000000000000000008152506040518060400160405280600281526020017f62320000000000000000000000000000000000000000000000000000000000008152506040518060400160405280600281526020017f62320000000000000000000000000000000000000000000000000000000000008152508160039081620000fd919062000687565b5080600490816200010f919062000687565b50505062000132620001266200020e60201b60201c565b6200021660201b60201c565b6000600960146101000a81548160ff02191690831515021790555062000168600a83620002dc60201b6200183a1790919060201c565b61012081815250506200018b600b82620002dc60201b6200183a1790919060201c565b6101408181525050818051906020012060e08181525050808051906020012061010081815250504660a08181525050620001ca6200033960201b60201c565b608081815250503073ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff168152505050505062000991565b600033905090565b6000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60006020835110156200030257620002fa836200039660201b60201c565b905062000333565b8262000319836200040360201b6200187e1760201c565b60000190816200032a919062000687565b5060ff60001b90505b92915050565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60e0516101005146306040516020016200037b959493929190620007df565b60405160208183030381529060405280519060200120905090565b600080829050601f81511115620003e657826040517f305a27a9000000000000000000000000000000000000000000000000000000008152600401620003dd9190620008cb565b60405180910390fd5b805181620003f49062000921565b60001c1760001b915050919050565b6000819050919050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200048f57607f821691505b602082108103620004a557620004a462000447565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026200050f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82620004d0565b6200051b8683620004d0565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b600062000568620005626200055c8462000533565b6200053d565b62000533565b9050919050565b6000819050919050565b620005848362000547565b6200059c62000593826200056f565b848454620004dd565b825550505050565b600090565b620005b3620005a4565b620005c081848462000579565b505050565b5b81811015620005e857620005dc600082620005a9565b600181019050620005c6565b5050565b601f82111562000637576200060181620004ab565b6200060c84620004c0565b810160208510156200061c578190505b620006346200062b85620004c0565b830182620005c5565b50505b505050565b600082821c905092915050565b60006200065c600019846008026200063c565b1980831691505092915050565b600062000677838362000649565b9150826002028217905092915050565b62000692826200040d565b67ffffffffffffffff811115620006ae57620006ad62000418565b5b620006ba825462000476565b620006c7828285620005ec565b600060209050601f831160018114620006ff5760008415620006ea578287015190505b620006f6858262000669565b86555062000766565b601f1984166200070f86620004ab565b60005b82811015620007395784890151825560018201915060208501945060208101905062000712565b8683101562000759578489015162000755601f89168262000649565b8355505b6001600288020188555050505b505050505050565b6000819050919050565b62000783816200076e565b82525050565b620007948162000533565b82525050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620007c7826200079a565b9050919050565b620007d981620007ba565b82525050565b600060a082019050620007f6600083018862000778565b62000805602083018762000778565b62000814604083018662000778565b62000823606083018562000789565b620008326080830184620007ce565b9695505050505050565b600082825260208201905092915050565b60005b838110156200086d57808201518184015260208101905062000850565b60008484015250505050565b6000601f19601f8301169050919050565b600062000897826200040d565b620008a381856200083c565b9350620008b58185602086016200084d565b620008c08162000879565b840191505092915050565b60006020820190508181036000830152620008e781846200088a565b905092915050565b600081519050919050565b6000819050602082019050919050565b60006200091882516200076e565b80915050919050565b60006200092e82620008ef565b826200093a84620008fa565b905062000947816200090a565b925060208210156200098a57620009857fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff83602003600802620004d0565b831692505b5050919050565b60805160a05160c05160e051610100516101205161014051615b1d620009ec6000396000610f8601526000610f52015260006127890152600061276801526000611d5f01526000611db501526000611dde0152615b1d6000f3fe608060405234801561001057600080fd5b50600436106102485760003560e01c8063715018a61161013b578063981b24d0116100b8578063d505accf1161007c578063d505accf14610733578063d9d98ce41461074f578063dd62ed3e1461077f578063f1127ed8146107af578063f2fde38b146107df57610248565b8063981b24d0146106575780639ab24eb014610687578063a457c2d7146106b7578063a9059cbb146106e7578063c3cda5201461071757610248565b80638da5cb5b116100ff5780638da5cb5b146105c35780638e539e8c146105e157806391ddadf41461061157806395d89b411461062f5780639711715a1461064d57610248565b8063715018a61461053f57806379cc6790146105495780637ecebe00146105655780638456cb591461059557806384b0196e1461059f57610248565b806342966c68116101c95780635c975abb1161018d5780635c975abb146104615780635cffe9de1461047f578063613255ab146104af5780636fcfff45146104df57806370a082311461050f57610248565b806342966c68146103ab5780634bf5d7e9146103c75780634ee2cd7e146103e5578063587cde1e146104155780635c19a95c1461044557610248565b80633644e515116102105780633644e5151461030757806339509351146103255780633a46b1a8146103555780633f4ba83a1461038557806340c10f191461038f57610248565b806306fdde031461024d578063095ea7b31461026b57806318160ddd1461029b57806323b872dd146102b9578063313ce567146102e9575b600080fd5b6102556107fb565b6040516102629190613b39565b60405180910390f35b61028560048036038101906102809190613bf9565b61088d565b6040516102929190613c54565b60405180910390f35b6102a36108b0565b6040516102b09190613c7e565b60405180910390f35b6102d360048036038101906102ce9190613c99565b6108ba565b6040516102e09190613c54565b60405180910390f35b6102f16108e9565b6040516102fe9190613d08565b60405180910390f35b61030f6108f2565b60405161031c9190613d3c565b60405180910390f35b61033f600480360381019061033a9190613bf9565b610901565b60405161034c9190613c54565b60405180910390f35b61036f600480360381019061036a9190613bf9565b610938565b60405161037c9190613c7e565b60405180910390f35b61038d6109db565b005b6103a960048036038101906103a49190613bf9565b6109ed565b005b6103c560048036038101906103c09190613d57565b610a03565b005b6103cf610a17565b6040516103dc9190613b39565b60405180910390f35b6103ff60048036038101906103fa9190613bf9565b610aa5565b60405161040c9190613c7e565b60405180910390f35b61042f600480360381019061042a9190613d84565b610b15565b60405161043c9190613dc0565b60405180910390f35b61045f600480360381019061045a9190613d84565b610b7e565b005b610469610b92565b6040516104769190613c54565b60405180910390f35b61049960048036038101906104949190613e7e565b610ba9565b6040516104a69190613c54565b60405180910390f35b6104c960048036038101906104c49190613d84565b610d96565b6040516104d69190613c7e565b60405180910390f35b6104f960048036038101906104f49190613d84565b610e0d565b6040516105069190613f25565b60405180910390f35b61052960048036038101906105249190613d84565b610e61565b6040516105369190613c7e565b60405180910390f35b610547610ea9565b005b610563600480360381019061055e9190613bf9565b610ebd565b005b61057f600480360381019061057a9190613d84565b610edd565b60405161058c9190613c7e565b60405180910390f35b61059d610f2d565b005b6105a7610f3f565b6040516105ba9796959493929190614039565b60405180910390f35b6105cb611041565b6040516105d89190613dc0565b60405180910390f35b6105fb60048036038101906105f69190613d57565b61106b565b6040516106089190613c7e565b60405180910390f35b6106196110d0565b60405161062691906140de565b60405180910390f35b6106376110e0565b6040516106449190613b39565b60405180910390f35b610655611172565b005b610671600480360381019061066c9190613d57565b611185565b60405161067e9190613c7e565b60405180910390f35b6106a1600480360381019061069c9190613d84565b6111b6565b6040516106ae9190613c7e565b60405180910390f35b6106d160048036038101906106cc9190613bf9565b6112be565b6040516106de9190613c54565b60405180910390f35b61070160048036038101906106fc9190613bf9565b611335565b60405161070e9190613c54565b60405180910390f35b610731600480360381019061072c9190614151565b611358565b005b61074d600480360381019061074891906141de565b61145c565b005b61076960048036038101906107649190613bf9565b61159e565b6040516107769190613c7e565b60405180910390f35b61079960048036038101906107949190614280565b611620565b6040516107a69190613c7e565b60405180910390f35b6107c960048036038101906107c491906142ec565b6116a7565b6040516107d691906143a1565b60405180910390f35b6107f960048036038101906107f49190613d84565b6117b7565b005b60606003805461080a906143eb565b80601f0160208091040260200160405190810160405280929190818152602001828054610836906143eb565b80156108835780601f1061085857610100808354040283529160200191610883565b820191906000526020600020905b81548152906001019060200180831161086657829003601f168201915b5050505050905090565b600080610898611888565b90506108a5818585611890565b600191505092915050565b6000600254905090565b6000806108c5611888565b90506108d2858285611a59565b6108dd858585611ae5565b60019150509392505050565b60006012905090565b60006108fc611d5b565b905090565b60008061090c611888565b905061092d81858561091e8589611620565b610928919061444b565b611890565b600191505092915050565b60006109426110d0565b65ffffffffffff16821061098b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610982906144cb565b60405180910390fd5b6109d3600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002083611e12565b905092915050565b6109e3611f5a565b6109eb611fd8565b565b6109f5611f5a565b6109ff828261203b565b5050565b610a14610a0e611888565b82612049565b50565b606043610a226110d0565b65ffffffffffff1614610a6a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a6190614537565b60405180910390fd5b6040518060400160405280601d81526020017f6d6f64653d626c6f636b6e756d6265722666726f6d3d64656661756c74000000815250905090565b6000806000610af284600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020612057565b9150915081610b0957610b0485610e61565b610b0b565b805b9250505092915050565b6000600e60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b610b8f610b89611888565b8261214c565b50565b6000600960149054906101000a900460ff16905090565b6000610bb485610d96565b841115610bf6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bed906145c9565b60405180910390fd5b6000610c02868661159e565b9050610c0e878661203b565b7f439148f0bbc682ca079e46d6e2c2f0c1e3b820f1a291b069d8882abf8cf18dd98773ffffffffffffffffffffffffffffffffffffffff166323e30c8b338989868a8a6040518763ffffffff1660e01b8152600401610c7296959493929190614636565b6020604051808303816000875af1158015610c91573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cb591906146a7565b14610cf5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cec90614746565b60405180910390fd5b6000610cff612266565b9050610d1788308489610d12919061444b565b611a59565b6000821480610d525750600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b15610d7157610d6c888388610d67919061444b565b612049565b610d87565b610d7b8887612049565b610d86888284611ae5565b5b60019250505095945050505050565b60003073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614610dd2576000610e06565b610dda6108b0565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff610e059190614766565b5b9050919050565b6000610e5a600f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208054905061226b565b9050919050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610eb1611f5a565b610ebb60006122be565b565b610ecf82610ec9611888565b83611a59565b610ed98282612049565b5050565b6000610f26600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020612384565b9050919050565b610f35611f5a565b610f3d612392565b565b600060608060008060006060610f7f600a7f00000000000000000000000000000000000000000000000000000000000000006123f590919063ffffffff16565b610fb3600b7f00000000000000000000000000000000000000000000000000000000000000006123f590919063ffffffff16565b46306000801b600067ffffffffffffffff811115610fd457610fd361479a565b5b6040519080825280602002602001820160405280156110025781602001602082028036833780820191505090505b507f0f00000000000000000000000000000000000000000000000000000000000000959493929190965096509650965096509650965090919293949596565b6000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60006110756110d0565b65ffffffffffff1682106110be576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110b5906144cb565b60405180910390fd5b6110c9601083611e12565b9050919050565b60006110db436124a5565b905090565b6060600480546110ef906143eb565b80601f016020809104026020016040519081016040528092919081815260200182805461111b906143eb565b80156111685780601f1061113d57610100808354040283529160200191611168565b820191906000526020600020905b81548152906001019060200180831161114b57829003601f168201915b5050505050905090565b61117a611f5a565b6111826124fa565b50565b6000806000611195846006612057565b91509150816111ab576111a66108b0565b6111ad565b805b92505050919050565b600080600f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208054905090506000811461129557600f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600182038154811061125a576112596147c9565b5b9060005260206000200160000160049054906101000a90047bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16611298565b60005b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16915050919050565b6000806112c9611888565b905060006112d78286611620565b90508381101561131c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113139061486a565b60405180910390fd5b6113298286868403611890565b60019250505092915050565b600080611340611888565b905061134d818585611ae5565b600191505092915050565b8342111561139b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611392906148d6565b60405180910390fd5b60006113fd6113f57fe48329057bfd03d55e49b547132e39cffd9c1820ad7b9d4c5307691425d15adf8989896040516020016113da94939291906148f6565b60405160208183030381529060405280519060200120612550565b85858561256a565b905061140881612595565b8614611449576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161144090614987565b60405180910390fd5b611453818861214c565b50505050505050565b8342111561149f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611496906149f3565b60405180910390fd5b60007f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98888886114ce8c612595565b896040516020016114e496959493929190614a13565b604051602081830303815290604052805190602001209050600061150782612550565b905060006115178287878761256a565b90508973ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614611587576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161157e90614ac0565b60405180910390fd5b6115928a8a8a611890565b50505050505050505050565b60003073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161461160e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161160590614b2c565b60405180910390fd5b61161883836125f3565b905092915050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6116af613a6b565b600f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208263ffffffff1681548110611706576117056147c9565b5b906000526020600020016040518060400160405290816000820160009054906101000a900463ffffffff1663ffffffff1663ffffffff1681526020016000820160049054906101000a90047bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1681525050905092915050565b6117bf611f5a565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361182e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161182590614bbe565b60405180910390fd5b611837816122be565b50565b60006020835110156118565761184f836125fb565b9050611878565b826118608361187e565b600001908161186f9190614d8a565b5060ff60001b90505b92915050565b6000819050919050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036118ff576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118f690614ece565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361196e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161196590614f60565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611a4c9190613c7e565b60405180910390a3505050565b6000611a658484611620565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114611adf5781811015611ad1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ac890614fcc565b60405180910390fd5b611ade8484848403611890565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611b54576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b4b9061505e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611bc3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bba906150f0565b60405180910390fd5b611bce838383612663565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611c54576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c4b90615182565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611d429190613c7e565b60405180910390a3611d55848484612733565b50505050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff16148015611dd757507f000000000000000000000000000000000000000000000000000000000000000046145b15611e04577f00000000000000000000000000000000000000000000000000000000000000009050611e0f565b611e0c612743565b90505b90565b600080838054905090506000808290506005831115611e88576000611e36846127d9565b84611e419190614766565b905085611e4e88836128d2565b60000160009054906101000a900463ffffffff1663ffffffff161115611e7657809150611e86565b600181611e83919061444b565b92505b505b5b80821015611ee8576000611e9d83836128e7565b905085611eaa88836128d2565b60000160009054906101000a900463ffffffff1663ffffffff161115611ed257809150611ee2565b600181611edf919061444b565b92505b50611e89565b60008114611f2e57611efd86600183036128d2565b60000160049054906101000a90047bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16611f31565b60005b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16935050505092915050565b611f62611888565b73ffffffffffffffffffffffffffffffffffffffff16611f80611041565b73ffffffffffffffffffffffffffffffffffffffff1614611fd6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fcd906151ee565b60405180910390fd5b565b611fe061290d565b6000600960146101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612024611888565b6040516120319190613dc0565b60405180910390a1565b6120458282612956565b5050565b61205382826129e3565b5050565b6000806000841161209d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120949061525a565b60405180910390fd5b6120a5612a01565b8411156120e7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120de906152c6565b60405180910390fd5b60006120ff8585600001612a1290919063ffffffff16565b90508360000180549050810361211c576000809250925050612145565b6001846001018281548110612134576121336147c9565b5b906000526020600020015492509250505b9250929050565b600061215783610b15565b9050600061216484610e61565b905082600e60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508273ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f60405160405180910390a4612260828483612acb565b50505050565b600090565b600063ffffffff80168211156122b6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122ad90615358565b60405180910390fd5b819050919050565b6000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600081600001549050919050565b61239a612cc4565b6001600960146101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586123de611888565b6040516123eb9190613dc0565b60405180910390a1565b606060ff60001b83146124125761240b83612d0e565b905061249f565b81805461241e906143eb565b80601f016020809104026020016040519081016040528092919081815260200182805461244a906143eb565b80156124975780601f1061246c57610100808354040283529160200191612497565b820191906000526020600020905b81548152906001019060200180831161247a57829003601f168201915b505050505090505b92915050565b600065ffffffffffff80168211156124f2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124e9906153ea565b60405180910390fd5b819050919050565b60006125066008612d82565b6000612510612a01565b90507f8030e83b04d87bef53480e26263266d6ca66863aa8506aca6f2559d18aa1cb67816040516125419190613c7e565b60405180910390a18091505090565b600061256361255d611d5b565b83612d98565b9050919050565b600080600061257b87878787612dd9565b9150915061258881612ebb565b8192505050949350505050565b600080600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090506125e281612384565b91506125ed81612d82565b50919050565b600092915050565b600080829050601f8151111561264857826040517f305a27a900000000000000000000000000000000000000000000000000000000815260040161263f9190613b39565b60405180910390fd5b8051816126549061543a565b60001c1760001b915050919050565b61266b612cc4565b612676838383613021565b60006103e89050600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156126e75750600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156126f257508082115b1561272d5761271684737c6f0bbeccc4c0f445024fa4818668509d8b928783611ae5565b61272c848483856127279190614766565b611ae5565b5b50505050565b61273e8383836130d9565b505050565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f7f00000000000000000000000000000000000000000000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000046306040516020016127be9594939291906154a1565b60405160208183030381529060405280519060200120905090565b60008082036127eb57600090506128cd565b600060016127f884613104565b901c6001901b90506001818481612812576128116154f4565b5b048201901c9050600181848161282b5761282a6154f4565b5b048201901c90506001818481612844576128436154f4565b5b048201901c9050600181848161285d5761285c6154f4565b5b048201901c90506001818481612876576128756154f4565b5b048201901c9050600181848161288f5761288e6154f4565b5b048201901c905060018184816128a8576128a76154f4565b5b048201901c90506128c9818285816128c3576128c26154f4565b5b046131e5565b9150505b919050565b60008260005281602060002001905092915050565b600060028284186128f89190615523565b828416612905919061444b565b905092915050565b612915610b92565b612954576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161294b906155a0565b60405180910390fd5b565b61296082826131fe565b612968613354565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1661298e6108b0565b11156129cf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129c690615632565b60405180910390fd5b6129dd60106133788361338e565b50505050565b6129ed8282613669565b6129fb60106138368361338e565b50505050565b6000612a0d6008612384565b905090565b600080838054905003612a285760009050612ac5565b600080848054905090505b80821015612a7c576000612a4783836128e7565b905084612a54878361384c565b600001541115612a6657809150612a76565b600181612a73919061444b565b92505b50612a33565b600082118015612aa4575083612a9e86600185612a999190614766565b61384c565b60000154145b15612abf57600182612ab69190614766565b92505050612ac5565b81925050505b92915050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015612b075750600081115b15612cbf57600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614612be557600080612b8e600f60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206138368561338e565b915091508473ffffffffffffffffffffffffffffffffffffffff167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a7248383604051612bda929190615652565b60405180910390a250505b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614612cbe57600080612c67600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206133788561338e565b915091508373ffffffffffffffffffffffffffffffffffffffff167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a7248383604051612cb3929190615652565b60405180910390a250505b5b505050565b612ccc610b92565b15612d0c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d03906156c7565b60405180910390fd5b565b60606000612d1b8361386e565b90506000602067ffffffffffffffff811115612d3a57612d3961479a565b5b6040519080825280601f01601f191660200182016040528015612d6c5781602001600182028036833780820191505090505b5090508181528360208201528092505050919050565b6001816000016000828254019250508190555050565b60006040517f190100000000000000000000000000000000000000000000000000000000000081528360028201528260228201526042812091505092915050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08360001c1115612e14576000600391509150612eb2565b600060018787878760405160008152602001604052604051612e3994939291906156e7565b6020604051602081039080840390855afa158015612e5b573d6000803e3d6000fd5b505050602060405103519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603612ea957600060019250925050612eb2565b80600092509250505b94509492505050565b60006004811115612ecf57612ece61572c565b5b816004811115612ee257612ee161572c565b5b031561301e5760016004811115612efc57612efb61572c565b5b816004811115612f0f57612f0e61572c565b5b03612f4f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612f46906157a7565b60405180910390fd5b60026004811115612f6357612f6261572c565b5b816004811115612f7657612f7561572c565b5b03612fb6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612fad90615813565b60405180910390fd5b60036004811115612fca57612fc961572c565b5b816004811115612fdd57612fdc61572c565b5b0361301d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613014906158a5565b60405180910390fd5b5b50565b61302c8383836138be565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361307657613069826138c3565b613071613916565b6130d4565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036130c0576130b3836138c3565b6130bb613916565b6130d3565b6130c9836138c3565b6130d2826138c3565b5b5b505050565b6130e483838361392a565b6130ff6130f084610b15565b6130f984610b15565b83612acb565b505050565b600080600090506000608084901c111561312657608083901c92506080810190505b6000604084901c111561314157604083901c92506040810190505b6000602084901c111561315c57602083901c92506020810190505b6000601084901c111561317757601083901c92506010810190505b6000600884901c111561319257600883901c92506008810190505b6000600484901c11156131ad57600483901c92506004810190505b6000600284901c11156131c857600283901c92506002810190505b6000600184901c11156131dc576001810190505b80915050919050565b60008183106131f457816131f6565b825b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361326d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161326490615911565b60405180910390fd5b61327960008383612663565b806002600082825461328b919061444b565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161333c9190613c7e565b60405180910390a361335060008383612733565b5050565b60007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff905090565b60008183613386919061444b565b905092915050565b6000806000858054905090506000808214613454576133b087600184036128d2565b6040518060400160405290816000820160009054906101000a900463ffffffff1663ffffffff1663ffffffff1681526020016000820160049054906101000a90047bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1681525050613490565b6040518060400160405280600063ffffffff16815260200160007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff168152505b905080602001517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1693506134c584868863ffffffff16565b92506000821180156134ef57506134da6110d0565b65ffffffffffff16816000015163ffffffff16145b15613560576134fd8361392f565b61350a88600185036128d2565b60000160046101000a8154817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff02191690837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16021790555061365f565b8660405180604001604052806135846135776110d0565b65ffffffffffff1661226b565b63ffffffff1681526020016135988661392f565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff168152509080600181540180825580915050600190039060005260206000200160009091909190915060008201518160000160006101000a81548163ffffffff021916908363ffffffff16021790555060208201518160000160046101000a8154817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff02191690837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16021790555050505b5050935093915050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036136d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016136cf906159a3565b60405180910390fd5b6136e482600083612663565b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508181101561376a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161376190615a35565b60405180910390fd5b8181036000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600260008282540392505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161381d9190613c7e565b60405180910390a361383183600084612733565b505050565b600081836138449190614766565b905092915050565b600080836000528260206000200190506138658161399a565b91505092915050565b60008060ff8360001c169050601f8111156138b5576040517fb3512b0c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80915050919050565b505050565b613913600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002061390e83610e61565b6139a4565b50565b61392860066139236108b0565b6139a4565b565b505050565b60007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8016821115613992576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161398990615ac7565b60405180910390fd5b819050919050565b6000819050919050565b60006139ae612a01565b9050806139bd84600001613a1f565b1015613a1a5782600001819080600181540180825580915050600190039060005260206000200160009091909190915055826001018290806001815401808255809150506001900390600052602060002001600090919091909150555b505050565b600080828054905003613a355760009050613a66565b8160018380549050613a479190614766565b81548110613a5857613a576147c9565b5b906000526020600020015490505b919050565b6040518060400160405280600063ffffffff16815260200160007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1681525090565b600081519050919050565b600082825260208201905092915050565b60005b83811015613ae3578082015181840152602081019050613ac8565b60008484015250505050565b6000601f19601f8301169050919050565b6000613b0b82613aa9565b613b158185613ab4565b9350613b25818560208601613ac5565b613b2e81613aef565b840191505092915050565b60006020820190508181036000830152613b538184613b00565b905092915050565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000613b9082613b65565b9050919050565b613ba081613b85565b8114613bab57600080fd5b50565b600081359050613bbd81613b97565b92915050565b6000819050919050565b613bd681613bc3565b8114613be157600080fd5b50565b600081359050613bf381613bcd565b92915050565b60008060408385031215613c1057613c0f613b5b565b5b6000613c1e85828601613bae565b9250506020613c2f85828601613be4565b9150509250929050565b60008115159050919050565b613c4e81613c39565b82525050565b6000602082019050613c696000830184613c45565b92915050565b613c7881613bc3565b82525050565b6000602082019050613c936000830184613c6f565b92915050565b600080600060608486031215613cb257613cb1613b5b565b5b6000613cc086828701613bae565b9350506020613cd186828701613bae565b9250506040613ce286828701613be4565b9150509250925092565b600060ff82169050919050565b613d0281613cec565b82525050565b6000602082019050613d1d6000830184613cf9565b92915050565b6000819050919050565b613d3681613d23565b82525050565b6000602082019050613d516000830184613d2d565b92915050565b600060208284031215613d6d57613d6c613b5b565b5b6000613d7b84828501613be4565b91505092915050565b600060208284031215613d9a57613d99613b5b565b5b6000613da884828501613bae565b91505092915050565b613dba81613b85565b82525050565b6000602082019050613dd56000830184613db1565b92915050565b6000613de682613b85565b9050919050565b613df681613ddb565b8114613e0157600080fd5b50565b600081359050613e1381613ded565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f840112613e3e57613e3d613e19565b5b8235905067ffffffffffffffff811115613e5b57613e5a613e1e565b5b602083019150836001820283011115613e7757613e76613e23565b5b9250929050565b600080600080600060808688031215613e9a57613e99613b5b565b5b6000613ea888828901613e04565b9550506020613eb988828901613bae565b9450506040613eca88828901613be4565b935050606086013567ffffffffffffffff811115613eeb57613eea613b60565b5b613ef788828901613e28565b92509250509295509295909350565b600063ffffffff82169050919050565b613f1f81613f06565b82525050565b6000602082019050613f3a6000830184613f16565b92915050565b60007fff0000000000000000000000000000000000000000000000000000000000000082169050919050565b613f7581613f40565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b613fb081613bc3565b82525050565b6000613fc28383613fa7565b60208301905092915050565b6000602082019050919050565b6000613fe682613f7b565b613ff08185613f86565b9350613ffb83613f97565b8060005b8381101561402c5781516140138882613fb6565b975061401e83613fce565b925050600181019050613fff565b5085935050505092915050565b600060e08201905061404e600083018a613f6c565b81810360208301526140608189613b00565b905081810360408301526140748188613b00565b90506140836060830187613c6f565b6140906080830186613db1565b61409d60a0830185613d2d565b81810360c08301526140af8184613fdb565b905098975050505050505050565b600065ffffffffffff82169050919050565b6140d8816140bd565b82525050565b60006020820190506140f360008301846140cf565b92915050565b61410281613cec565b811461410d57600080fd5b50565b60008135905061411f816140f9565b92915050565b61412e81613d23565b811461413957600080fd5b50565b60008135905061414b81614125565b92915050565b60008060008060008060c0878903121561416e5761416d613b5b565b5b600061417c89828a01613bae565b965050602061418d89828a01613be4565b955050604061419e89828a01613be4565b94505060606141af89828a01614110565b93505060806141c089828a0161413c565b92505060a06141d189828a0161413c565b9150509295509295509295565b600080600080600080600060e0888a0312156141fd576141fc613b5b565b5b600061420b8a828b01613bae565b975050602061421c8a828b01613bae565b965050604061422d8a828b01613be4565b955050606061423e8a828b01613be4565b945050608061424f8a828b01614110565b93505060a06142608a828b0161413c565b92505060c06142718a828b0161413c565b91505092959891949750929550565b6000806040838503121561429757614296613b5b565b5b60006142a585828601613bae565b92505060206142b685828601613bae565b9150509250929050565b6142c981613f06565b81146142d457600080fd5b50565b6000813590506142e6816142c0565b92915050565b6000806040838503121561430357614302613b5b565b5b600061431185828601613bae565b9250506020614322858286016142d7565b9150509250929050565b61433581613f06565b82525050565b60007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff82169050919050565b61436c8161433b565b82525050565b604082016000820151614388600085018261432c565b50602082015161439b6020850182614363565b50505050565b60006040820190506143b66000830184614372565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061440357607f821691505b602082108103614416576144156143bc565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061445682613bc3565b915061446183613bc3565b92508282019050808211156144795761447861441c565b5b92915050565b7f4552433230566f7465733a20667574757265206c6f6f6b757000000000000000600082015250565b60006144b5601983613ab4565b91506144c08261447f565b602082019050919050565b600060208201905081810360008301526144e4816144a8565b9050919050565b7f4552433230566f7465733a2062726f6b656e20636c6f636b206d6f6465000000600082015250565b6000614521601d83613ab4565b915061452c826144eb565b602082019050919050565b6000602082019050818103600083015261455081614514565b9050919050565b7f4552433230466c6173684d696e743a20616d6f756e742065786365656473206d60008201527f6178466c6173684c6f616e000000000000000000000000000000000000000000602082015250565b60006145b3602b83613ab4565b91506145be82614557565b604082019050919050565b600060208201905081810360008301526145e2816145a6565b9050919050565b600082825260208201905092915050565b82818337600083830152505050565b600061461583856145e9565b93506146228385846145fa565b61462b83613aef565b840190509392505050565b600060a08201905061464b6000830189613db1565b6146586020830188613db1565b6146656040830187613c6f565b6146726060830186613c6f565b8181036080830152614685818486614609565b9050979650505050505050565b6000815190506146a181614125565b92915050565b6000602082840312156146bd576146bc613b5b565b5b60006146cb84828501614692565b91505092915050565b7f4552433230466c6173684d696e743a20696e76616c69642072657475726e207660008201527f616c756500000000000000000000000000000000000000000000000000000000602082015250565b6000614730602483613ab4565b915061473b826146d4565b604082019050919050565b6000602082019050818103600083015261475f81614723565b9050919050565b600061477182613bc3565b915061477c83613bc3565b92508282039050818111156147945761479361441c565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000614854602583613ab4565b915061485f826147f8565b604082019050919050565b6000602082019050818103600083015261488381614847565b9050919050565b7f4552433230566f7465733a207369676e61747572652065787069726564000000600082015250565b60006148c0601d83613ab4565b91506148cb8261488a565b602082019050919050565b600060208201905081810360008301526148ef816148b3565b9050919050565b600060808201905061490b6000830187613d2d565b6149186020830186613db1565b6149256040830185613c6f565b6149326060830184613c6f565b95945050505050565b7f4552433230566f7465733a20696e76616c6964206e6f6e636500000000000000600082015250565b6000614971601983613ab4565b915061497c8261493b565b602082019050919050565b600060208201905081810360008301526149a081614964565b9050919050565b7f45524332305065726d69743a206578706972656420646561646c696e65000000600082015250565b60006149dd601d83613ab4565b91506149e8826149a7565b602082019050919050565b60006020820190508181036000830152614a0c816149d0565b9050919050565b600060c082019050614a286000830189613d2d565b614a356020830188613db1565b614a426040830187613db1565b614a4f6060830186613c6f565b614a5c6080830185613c6f565b614a6960a0830184613c6f565b979650505050505050565b7f45524332305065726d69743a20696e76616c6964207369676e61747572650000600082015250565b6000614aaa601e83613ab4565b9150614ab582614a74565b602082019050919050565b60006020820190508181036000830152614ad981614a9d565b9050919050565b7f4552433230466c6173684d696e743a2077726f6e6720746f6b656e0000000000600082015250565b6000614b16601b83613ab4565b9150614b2182614ae0565b602082019050919050565b60006020820190508181036000830152614b4581614b09565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000614ba8602683613ab4565b9150614bb382614b4c565b604082019050919050565b60006020820190508181036000830152614bd781614b9b565b9050919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302614c407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82614c03565b614c4a8683614c03565b95508019841693508086168417925050509392505050565b6000819050919050565b6000614c87614c82614c7d84613bc3565b614c62565b613bc3565b9050919050565b6000819050919050565b614ca183614c6c565b614cb5614cad82614c8e565b848454614c10565b825550505050565b600090565b614cca614cbd565b614cd5818484614c98565b505050565b5b81811015614cf957614cee600082614cc2565b600181019050614cdb565b5050565b601f821115614d3e57614d0f81614bde565b614d1884614bf3565b81016020851015614d27578190505b614d3b614d3385614bf3565b830182614cda565b50505b505050565b600082821c905092915050565b6000614d6160001984600802614d43565b1980831691505092915050565b6000614d7a8383614d50565b9150826002028217905092915050565b614d9382613aa9565b67ffffffffffffffff811115614dac57614dab61479a565b5b614db682546143eb565b614dc1828285614cfd565b600060209050601f831160018114614df45760008415614de2578287015190505b614dec8582614d6e565b865550614e54565b601f198416614e0286614bde565b60005b82811015614e2a57848901518255600182019150602085019450602081019050614e05565b86831015614e475784890151614e43601f891682614d50565b8355505b6001600288020188555050505b505050505050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000614eb8602483613ab4565b9150614ec382614e5c565b604082019050919050565b60006020820190508181036000830152614ee781614eab565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000614f4a602283613ab4565b9150614f5582614eee565b604082019050919050565b60006020820190508181036000830152614f7981614f3d565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b6000614fb6601d83613ab4565b9150614fc182614f80565b602082019050919050565b60006020820190508181036000830152614fe581614fa9565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000615048602583613ab4565b915061505382614fec565b604082019050919050565b600060208201905081810360008301526150778161503b565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006150da602383613ab4565b91506150e58261507e565b604082019050919050565b60006020820190508181036000830152615109816150cd565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b600061516c602683613ab4565b915061517782615110565b604082019050919050565b6000602082019050818103600083015261519b8161515f565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006151d8602083613ab4565b91506151e3826151a2565b602082019050919050565b60006020820190508181036000830152615207816151cb565b9050919050565b7f4552433230536e617073686f743a206964206973203000000000000000000000600082015250565b6000615244601683613ab4565b915061524f8261520e565b602082019050919050565b6000602082019050818103600083015261527381615237565b9050919050565b7f4552433230536e617073686f743a206e6f6e6578697374656e74206964000000600082015250565b60006152b0601d83613ab4565b91506152bb8261527a565b602082019050919050565b600060208201905081810360008301526152df816152a3565b9050919050565b7f53616665436173743a2076616c756520646f65736e27742066697420696e203360008201527f3220626974730000000000000000000000000000000000000000000000000000602082015250565b6000615342602683613ab4565b915061534d826152e6565b604082019050919050565b6000602082019050818103600083015261537181615335565b9050919050565b7f53616665436173743a2076616c756520646f65736e27742066697420696e203460008201527f3820626974730000000000000000000000000000000000000000000000000000602082015250565b60006153d4602683613ab4565b91506153df82615378565b604082019050919050565b60006020820190508181036000830152615403816153c7565b9050919050565b600081519050919050565b6000819050602082019050919050565b60006154318251613d23565b80915050919050565b60006154458261540a565b8261544f84615415565b905061545a81615425565b9250602082101561549a576154957fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff83602003600802614c03565b831692505b5050919050565b600060a0820190506154b66000830188613d2d565b6154c36020830187613d2d565b6154d06040830186613d2d565b6154dd6060830185613c6f565b6154ea6080830184613db1565b9695505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061552e82613bc3565b915061553983613bc3565b925082615549576155486154f4565b5b828204905092915050565b7f5061757361626c653a206e6f7420706175736564000000000000000000000000600082015250565b600061558a601483613ab4565b915061559582615554565b602082019050919050565b600060208201905081810360008301526155b98161557d565b9050919050565b7f4552433230566f7465733a20746f74616c20737570706c79207269736b73206f60008201527f766572666c6f77696e6720766f74657300000000000000000000000000000000602082015250565b600061561c603083613ab4565b9150615627826155c0565b604082019050919050565b6000602082019050818103600083015261564b8161560f565b9050919050565b60006040820190506156676000830185613c6f565b6156746020830184613c6f565b9392505050565b7f5061757361626c653a2070617573656400000000000000000000000000000000600082015250565b60006156b1601083613ab4565b91506156bc8261567b565b602082019050919050565b600060208201905081810360008301526156e0816156a4565b9050919050565b60006080820190506156fc6000830187613d2d565b6157096020830186613cf9565b6157166040830185613d2d565b6157236060830184613d2d565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f45434453413a20696e76616c6964207369676e61747572650000000000000000600082015250565b6000615791601883613ab4565b915061579c8261575b565b602082019050919050565b600060208201905081810360008301526157c081615784565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265206c656e67746800600082015250565b60006157fd601f83613ab4565b9150615808826157c7565b602082019050919050565b6000602082019050818103600083015261582c816157f0565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265202773272076616c60008201527f7565000000000000000000000000000000000000000000000000000000000000602082015250565b600061588f602283613ab4565b915061589a82615833565b604082019050919050565b600060208201905081810360008301526158be81615882565b9050919050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b60006158fb601f83613ab4565b9150615906826158c5565b602082019050919050565b6000602082019050818103600083015261592a816158ee565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b600061598d602183613ab4565b915061599882615931565b604082019050919050565b600060208201905081810360008301526159bc81615980565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b6000615a1f602283613ab4565b9150615a2a826159c3565b604082019050919050565b60006020820190508181036000830152615a4e81615a12565b9050919050565b7f53616665436173743a2076616c756520646f65736e27742066697420696e203260008201527f3234206269747300000000000000000000000000000000000000000000000000602082015250565b6000615ab1602783613ab4565b9150615abc82615a55565b604082019050919050565b60006020820190508181036000830152615ae081615aa4565b905091905056fea2646970667358221220a43838f4ea11e60e8abe6237b977430aaf6de45abf19d769b9ef2db73b8388a864736f6c63430008120033