From e636a50c4ada822146de3b949bcda5f421e2963e Mon Sep 17 00:00:00 2001 From: Your Name Date: Tue, 28 Oct 2025 19:08:18 +0800 Subject: [PATCH] 1 --- application/extra/chat.php | 22 + composer.json | 3 +- ...euNin52_myb0ao7-Q6oVNq1WbWPxd3TYpFzLglr2E4 | 1 + .../028e21433349279a5bfd75394ee98fe4.png | Bin 0 -> 7505 bytes .../045e097320773c23321a2d3a33a9da0b.png | Bin 0 -> 308718 bytes .../046f2fddfc4f6778ff890a62547d8a1a.png | Bin 0 -> 1896 bytes .../0be1df1ea8d1d248a1b8eaea3309a732.png | Bin 0 -> 9992 bytes .../0c37315a83f9424a4717ef684984c9c0.png | Bin 0 -> 4380 bytes .../1130ab158b1c31b1e1d356fa78bb5f4a.gif | Bin 0 -> 37155 bytes .../113eb988efc1fe17cb90cdf5311e5b63.png | Bin 0 -> 1071 bytes .../18b5f444e19f31e421d0485d45befeb8.gif | Bin 0 -> 36738 bytes .../215f0aa658e271b3018f2d421bea694f.png | Bin 0 -> 4155 bytes .../22a4bf60a2cf92bd6d2f300914673d21.png | Bin 0 -> 603 bytes .../26dff8fb21473e219c6f024fc6a5e39a.png | Bin 0 -> 4914 bytes .../283592b4d4f74d84b530035fa7265d73.png | Bin 0 -> 106575 bytes .../29559cc94ff33b1f39f570c5f7bc37c1.png | Bin 0 -> 7447 bytes .../2a3992a220f306d129ac1659304694bd.gif | Bin 0 -> 37719 bytes .../35730af2c38c4f13e83c3be53b463333.png | Bin 0 -> 26889 bytes .../3c7eb06563d1cf28b4b34bb0d1647659.png | Bin 0 -> 5626 bytes .../3fbe0412147a5d7f1c3116219ed39d32.png | Bin 0 -> 1516 bytes .../408f106f7e8d709156a45b6a96ea6d9c.png | Bin 0 -> 2761 bytes .../4782356b4587dc4f4a218f2540a0bafc.png | Bin 0 -> 1508 bytes .../495059abd025e7bb657c5983e3b30a52.png | Bin 0 -> 2268 bytes .../4a9bde33fd13459833431db72282e91c.png | Bin 0 -> 5544 bytes .../4ce2fdff833f8a37de9a6d760deee994.gif | Bin 0 -> 38836 bytes .../50e077b0a5df1c48dcd9be4e47b03324.png | Bin 0 -> 48025 bytes .../58fe6c2a400d6d18a43949f3d8c58021.png | Bin 0 -> 4333 bytes .../5cb05c3cb99058ad38477205f9ecdcbb.png | Bin 0 -> 5334 bytes .../629ac892b94afeb3bd547c9f6d53e432.png | Bin 0 -> 39145 bytes .../63cbe4b8088a28a129923b65f412fcb2.png | Bin 0 -> 77568 bytes .../6586d6090fca4fab8fecbaeb53cb4656.png | Bin 0 -> 2497 bytes .../6bfd03d0ad7f3d7f6ba7494c903cdc0c.png | Bin 0 -> 155662 bytes .../6d0a8c85ba41464b5493226c91c72459.png | Bin 0 -> 5397 bytes .../6e30b6357d3285d7d007ac308e7b2b12.png | Bin 0 -> 4429 bytes .../70845d2cb5fc68882b27ad3de9a100e0.png | Bin 0 -> 30069 bytes .../76574bb482da1fd62539c0253f0152d6.png | Bin 0 -> 953 bytes .../7e7da5a9fe78d731c217f14922b627bc.png | Bin 0 -> 5809 bytes .../85e17aecf52b9f367353ceef450d18d0.png | Bin 0 -> 18218 bytes .../92bf692d57b8fc2e76815ce6627ef1f9.png | Bin 0 -> 2469 bytes .../9464fe770d388c7982df73b2d1b1d457.png | Bin 0 -> 3733 bytes .../94eb324f16b6b48e65c4ea1cf7d3c1fd.png | Bin 0 -> 7296 bytes .../968a4300d7b2e14794cdd11e140d4c68.png | Bin 0 -> 40320 bytes .../9918d064eefa8fb1fda5715db2c248ab.png | Bin 0 -> 7434 bytes .../9ff8442f8cda57f88aac61059d7d3f21.png | Bin 0 -> 3879 bytes .../a44ee2a893e6b296efcd167fe0dc246d.png | Bin 0 -> 53279 bytes .../a83953b2f0db3f387584a78a041fccbf.png | Bin 0 -> 15425 bytes .../ac3bdfced7c4c5f17f03b48f6d3fa3ec.png | Bin 0 -> 3353 bytes .../aead1d736d0cddba13ffbbb5e8603629.png | Bin 0 -> 57508 bytes .../af8b36bc0745b57e8e18dba7732631cd.png | Bin 0 -> 6257 bytes .../b043e999f27c299374bd7ab19deec2f1.png | Bin 0 -> 15718 bytes .../b530150a466c8cda0a4cd5b29e2c8d11.png | Bin 0 -> 189653 bytes .../b5f6e0543a90f542095b468c98b1f8cd.png | Bin 0 -> 11904 bytes .../c0dde28052c763691491a4dd7f5f0dc7.png | Bin 0 -> 15894 bytes .../c25fb96bad1d53e61afb25cc9fe0b499.gif | Bin 0 -> 36656 bytes .../c47b048175b325b1e78f837a3b696794.png | Bin 0 -> 1454 bytes .../c92d07a10eec8850ab9a481638e5159b.gif | Bin 0 -> 37406 bytes .../ce9cb18e6cd8dda71287195d97fc5c2d.png | Bin 0 -> 30425 bytes .../d2107905b46fb6aabd98b6d75dff0b2f.gif | Bin 0 -> 37252 bytes .../d2b5d4d6eff681076b08b493bf5a5193.png | Bin 0 -> 16201 bytes .../d41c873b7d96f5874083c5a9565657c9.gif | Bin 0 -> 38235 bytes .../d49bc66b70c240bfa399f9f414bdbefa.png | Bin 0 -> 3673 bytes .../ddc71411f2cd9ac0daf0e93fca64e8bb.png | Bin 0 -> 6799 bytes .../e65f9b968d33f335cdff6b5e0befef8e.png | Bin 0 -> 8223 bytes .../ee10ab2a0282712a0c6d20e619c1b8e8.png | Bin 0 -> 9577 bytes .../f09ef51624e48d7d8c58cd602110c46e.png | Bin 0 -> 1377 bytes .../f6c52397b662f42a29c4e0e6244b1b16.png | Bin 0 -> 7173 bytes .../f930c59d338a97a158ee53cb65bde082.png | Bin 0 -> 1198 bytes .../fd5379d520a4a31a8e58b64da3a8790d.png | Bin 0 -> 3266 bytes .../fd8c70d6121f801a333262bbb1459dfd.png | Bin 0 -> 9941 bytes .../fb5f5d3ade8990c789217b35fba27ef8.png | Bin 0 -> 578636 bytes .../1581418ab3b7131a11d398ce7d6bcbc9.png | Bin 0 -> 41431 bytes .../1c424c60b7fa6cd7f28fbbea55682b8a.png | Bin 0 -> 39945 bytes .../4566b366604fdf49215cb1fb80e37335.png | Bin 0 -> 39503 bytes .../4b302bd0bfd187da3d76d05e1127d18c.png | Bin 0 -> 39935 bytes .../a237bec8f02040f8f3af6ec31bc60543.png | Bin 0 -> 39502 bytes .../cd8919a7436ebd5d9605cd9d4a750973.png | Bin 0 -> 39977 bytes .../ffe24eebd854389d191c5783f99d8c43.png | Bin 0 -> 40377 bytes .../a38cd3b6694e1b1f409172af506452e9.png | Bin 0 -> 43805 bytes thinkphp/.gitignore | 0 thinkphp/.htaccess | 0 thinkphp/.travis.yml | 0 thinkphp/CONTRIBUTING.md | 0 thinkphp/LICENSE.txt | 0 thinkphp/README.md | 0 thinkphp/base.php | 0 thinkphp/codecov.yml | 0 thinkphp/composer.json | 5 +- thinkphp/console.php | 0 thinkphp/convention.php | 0 thinkphp/helper.php | 0 thinkphp/lang/zh-cn.php | 0 thinkphp/library/think/App.php | 2 +- thinkphp/library/think/Build.php | 0 thinkphp/library/think/Cache.php | 0 thinkphp/library/think/Collection.php | 4 +- thinkphp/library/think/Config.php | 0 thinkphp/library/think/Console.php | 0 thinkphp/library/think/Controller.php | 2 +- thinkphp/library/think/Cookie.php | 0 thinkphp/library/think/Db.php | 0 thinkphp/library/think/Debug.php | 0 thinkphp/library/think/Env.php | 0 thinkphp/library/think/Error.php | 0 thinkphp/library/think/Exception.php | 0 thinkphp/library/think/File.php | 11 +- thinkphp/library/think/Hook.php | 0 thinkphp/library/think/Lang.php | 0 thinkphp/library/think/Loader.php | 0 thinkphp/library/think/Log.php | 0 thinkphp/library/think/Model.php | 12 + thinkphp/library/think/Paginator.php | 0 thinkphp/library/think/Process.php | 2 +- thinkphp/library/think/Request.php | 17 +- thinkphp/library/think/Response.php | 0 thinkphp/library/think/Route.php | 0 thinkphp/library/think/Session.php | 0 thinkphp/library/think/Template.php | 0 thinkphp/library/think/Url.php | 0 thinkphp/library/think/Validate.php | 0 thinkphp/library/think/View.php | 0 thinkphp/library/think/cache/Driver.php | 0 thinkphp/library/think/cache/driver/File.php | 0 thinkphp/library/think/cache/driver/Lite.php | 0 .../library/think/cache/driver/Memcache.php | 0 .../library/think/cache/driver/Memcached.php | 0 thinkphp/library/think/cache/driver/Redis.php | 0 .../library/think/cache/driver/Sqlite.php | 0 .../library/think/cache/driver/Wincache.php | 0 .../library/think/cache/driver/Xcache.php | 0 thinkphp/library/think/config/driver/Ini.php | 0 thinkphp/library/think/config/driver/Json.php | 0 thinkphp/library/think/config/driver/Xml.php | 0 thinkphp/library/think/console/Command.php | 2 +- thinkphp/library/think/console/Input.php | 0 thinkphp/library/think/console/LICENSE | 0 thinkphp/library/think/console/Output.php | 0 thinkphp/library/think/console/bin/README.md | 0 .../library/think/console/bin/hiddeninput.exe | Bin .../library/think/console/command/Build.php | 0 .../library/think/console/command/Clear.php | 0 .../library/think/console/command/Help.php | 0 .../library/think/console/command/Lists.php | 0 .../library/think/console/command/Make.php | 0 .../think/console/command/make/Controller.php | 0 .../think/console/command/make/Model.php | 0 .../command/make/stubs/controller.plain.stub | 0 .../command/make/stubs/controller.stub | 0 .../console/command/make/stubs/model.stub | 0 .../console/command/optimize/Autoload.php | 0 .../think/console/command/optimize/Config.php | 0 .../think/console/command/optimize/Route.php | 0 .../think/console/command/optimize/Schema.php | 0 .../library/think/console/input/Argument.php | 0 .../think/console/input/Definition.php | 0 .../library/think/console/input/Option.php | 0 thinkphp/library/think/console/output/Ask.php | 0 .../think/console/output/Descriptor.php | 0 .../think/console/output/Formatter.php | 0 .../library/think/console/output/Question.php | 0 .../console/output/descriptor/Console.php | 0 .../think/console/output/driver/Buffer.php | 0 .../think/console/output/driver/Console.php | 0 .../think/console/output/driver/Nothing.php | 0 .../think/console/output/formatter/Stack.php | 4 +- .../think/console/output/formatter/Style.php | 0 .../think/console/output/question/Choice.php | 0 .../console/output/question/Confirmation.php | 0 thinkphp/library/think/controller/Rest.php | 0 thinkphp/library/think/controller/Yar.php | 0 thinkphp/library/think/db/Builder.php | 0 thinkphp/library/think/db/Connection.php | 6 +- thinkphp/library/think/db/Expression.php | 0 thinkphp/library/think/db/Query.php | 2 +- thinkphp/library/think/db/builder/Mysql.php | 0 thinkphp/library/think/db/builder/Pgsql.php | 0 thinkphp/library/think/db/builder/Sqlite.php | 0 thinkphp/library/think/db/builder/Sqlsrv.php | 0 thinkphp/library/think/db/connector/Mysql.php | 0 thinkphp/library/think/db/connector/Pgsql.php | 0 .../library/think/db/connector/Sqlite.php | 0 .../library/think/db/connector/Sqlsrv.php | 0 thinkphp/library/think/db/connector/pgsql.sql | 0 .../think/db/exception/BindParamException.php | 0 .../db/exception/DataNotFoundException.php | 0 .../db/exception/ModelNotFoundException.php | 0 thinkphp/library/think/debug/Console.php | 0 thinkphp/library/think/debug/Html.php | 0 .../exception/ClassNotFoundException.php | 0 .../library/think/exception/DbException.php | 0 .../think/exception/ErrorException.php | 0 thinkphp/library/think/exception/Handle.php | 0 .../library/think/exception/HttpException.php | 2 +- .../think/exception/HttpResponseException.php | 0 .../library/think/exception/PDOException.php | 0 .../exception/RouteNotFoundException.php | 0 .../exception/TemplateNotFoundException.php | 0 .../think/exception/ThrowableError.php | 0 .../think/exception/ValidateException.php | 0 thinkphp/library/think/log/driver/File.php | 0 thinkphp/library/think/log/driver/Socket.php | 0 thinkphp/library/think/log/driver/Test.php | 0 thinkphp/library/think/model/Collection.php | 0 thinkphp/library/think/model/Merge.php | 0 thinkphp/library/think/model/Pivot.php | 0 thinkphp/library/think/model/Relation.php | 0 .../think/model/relation/BelongsTo.php | 0 .../think/model/relation/BelongsToMany.php | 0 .../library/think/model/relation/HasMany.php | 0 .../think/model/relation/HasManyThrough.php | 0 .../library/think/model/relation/HasOne.php | 0 .../think/model/relation/MorphMany.php | 0 .../library/think/model/relation/MorphOne.php | 0 .../library/think/model/relation/MorphTo.php | 3 +- .../library/think/model/relation/OneToOne.php | 0 .../think/paginator/driver/Bootstrap.php | 0 thinkphp/library/think/process/Builder.php | 0 thinkphp/library/think/process/Utils.php | 0 .../think/process/exception/Failed.php | 0 .../think/process/exception/Timeout.php | 0 .../library/think/process/pipes/Pipes.php | 0 thinkphp/library/think/process/pipes/Unix.php | 0 .../library/think/process/pipes/Windows.php | 2 +- thinkphp/library/think/response/Json.php | 0 thinkphp/library/think/response/Jsonp.php | 0 thinkphp/library/think/response/Redirect.php | 0 thinkphp/library/think/response/View.php | 0 thinkphp/library/think/response/Xml.php | 0 .../library/think/session/driver/Memcache.php | 0 .../think/session/driver/Memcached.php | 0 .../library/think/session/driver/Redis.php | 0 thinkphp/library/think/template/TagLib.php | 0 .../library/think/template/driver/File.php | 0 thinkphp/library/think/template/taglib/Cx.php | 0 thinkphp/library/think/view/driver/Php.php | 0 thinkphp/library/think/view/driver/Think.php | 0 thinkphp/library/traits/controller/Jump.php | 0 thinkphp/library/traits/model/SoftDelete.php | 0 thinkphp/library/traits/think/Instance.php | 0 thinkphp/logo.png | Bin thinkphp/phpunit.xml | 0 thinkphp/start.php | 0 thinkphp/tests/.gitignore | 0 thinkphp/tests/README.md | 0 thinkphp/tests/application/config.php | 0 thinkphp/tests/application/database.php | 0 .../application/index/controller/Index.php | 0 thinkphp/tests/application/route.php | 0 thinkphp/tests/application/views/display.html | 0 .../tests/application/views/display.phtml | 0 thinkphp/tests/application/views/extend.html | 0 thinkphp/tests/application/views/extend2.html | 0 thinkphp/tests/application/views/include.html | 0 .../tests/application/views/include2.html | 0 thinkphp/tests/application/views/layout.html | 0 thinkphp/tests/application/views/layout2.html | 0 thinkphp/tests/conf/memcached.ini | 0 thinkphp/tests/conf/redis.ini | 0 thinkphp/tests/conf/timezone.ini | 0 thinkphp/tests/mock.php | 0 thinkphp/tests/thinkphp/baseTest.php | 0 .../tests/thinkphp/library/think/appTest.php | 0 .../thinkphp/library/think/behavior/One.php | 0 .../thinkphp/library/think/behavior/Three.php | 0 .../thinkphp/library/think/behavior/Two.php | 0 .../thinkphp/library/think/buildTest.php | 0 .../think/cache/driver/cacheTestCase.php | 0 .../library/think/cache/driver/fileTest.php | 0 .../library/think/cache/driver/liteTest.php | 0 .../think/cache/driver/memcacheTest.php | 0 .../think/cache/driver/memcachedTest.php | 0 .../library/think/cache/driver/redisTest.php | 0 .../thinkphp/library/think/cacheTest.php | 0 .../library/think/config/ConfigInitTrait.php | 0 .../think/config/driver/fixtures/config.ini | 0 .../think/config/driver/fixtures/config.json | 0 .../think/config/driver/fixtures/config.xml | 0 .../library/think/config/driver/iniTest.php | 0 .../library/think/config/driver/jsonTest.php | 0 .../library/think/config/driver/xmlTest.php | 0 .../thinkphp/library/think/configTest.php | 0 .../library/think/controller/.gitignore | 0 .../thinkphp/library/think/controllerTest.php | 0 .../thinkphp/library/think/cookieTest.php | 0 .../library/think/db/driver/.gitignore | 0 .../tests/thinkphp/library/think/dbTest.php | 0 .../thinkphp/library/think/debugTest.php | 0 .../thinkphp/library/think/exceptionTest.php | 0 .../tests/thinkphp/library/think/hookTest.php | 0 .../thinkphp/library/think/lang/lang.php | 0 .../tests/thinkphp/library/think/langTest.php | 0 .../library/think/loader/test/Hello.php | 0 .../thinkphp/library/think/loaderTest.php | 0 .../library/think/log/driver/fileTest.php | 0 .../tests/thinkphp/library/think/logTest.php | 0 .../thinkphp/library/think/model/.gitignore | 0 .../thinkphp/library/think/paginateTest.php | 0 .../thinkphp/library/think/requestTest.php | 0 .../thinkphp/library/think/responseTest.php | 0 .../thinkphp/library/think/routeTest.php | 0 .../thinkphp/library/think/session/.gitignore | 0 .../thinkphp/library/think/sessionTest.php | 0 .../library/think/template/driver/.gitignore | 0 .../library/think/template/taglib/cxTest.php | 0 .../thinkphp/library/think/templateTest.php | 0 .../tests/thinkphp/library/think/urlTest.php | 0 .../thinkphp/library/think/validateTest.php | 0 .../library/think/view/driver/.gitignore | 0 .../think/view/theme/index/template.html | 0 .../tests/thinkphp/library/think/viewTest.php | 0 .../library/traits/controller/jumpTest.php | 0 .../library/traits/model/softDeleteTest.php | 0 .../library/traits/think/instanceTest.php | 0 thinkphp/tpl/default_index.tpl | 0 thinkphp/tpl/dispatch_jump.tpl | 0 thinkphp/tpl/page_trace.tpl | 0 thinkphp/tpl/think_exception.tpl | 0 vendor/autoload.php | 18 - vendor/composer/ClassLoader.php | 152 +- vendor/composer/InstalledVersions.php | 1191 ++++--- vendor/composer/autoload_classmap.php | 2 +- vendor/composer/autoload_files.php | 9 +- vendor/composer/autoload_namespaces.php | 2 +- vendor/composer/autoload_psr4.php | 11 +- vendor/composer/autoload_real.php | 51 +- vendor/composer/autoload_static.php | 48 +- vendor/composer/installed.json | 647 +++- vendor/composer/installed.php | 1061 ++++--- vendor/composer/platform_check.php | 4 +- .../fastadmin-addons/composer.json | 4 +- .../src/addons/Controller.php | 2 +- vendor/guzzlehttp/guzzle/CHANGELOG.md | 19 - vendor/guzzlehttp/guzzle/composer.json | 4 +- vendor/guzzlehttp/guzzle/package-lock.json | 6 - .../guzzle/src/Cookie/SetCookie.php | 4 - .../guzzle/src/Handler/CurlFactory.php | 9 +- .../guzzle/src/Handler/CurlMultiHandler.php | 5 +- .../guzzlehttp/guzzle/src/Handler/Proxy.php | 12 +- .../guzzle/src/Handler/StreamHandler.php | 19 +- vendor/guzzlehttp/guzzle/src/Middleware.php | 4 +- vendor/guzzlehttp/guzzle/src/Pool.php | 2 +- vendor/guzzlehttp/guzzle/src/Utils.php | 2 +- vendor/guzzlehttp/guzzle/src/functions.php | 2 +- vendor/maennchen/zipstream-php/.gitattributes | 6 - .../zipstream-php/.github/CODE_OF_CONDUCT.md | 132 - .../zipstream-php/.github/CONTRIBUTING.md | 139 - .../zipstream-php/.github/FUNDING.yml | 1 - .../.github/ISSUE_TEMPLATE/BUG.yml | 71 - .../.github/ISSUE_TEMPLATE/FEATURE.yml | 11 - .../.github/PULL_REQUEST_TEMPLATE.md | 6 - .../PULL_REQUEST_TEMPLATE/FAILING_TEST.md | 13 - .../.github/PULL_REQUEST_TEMPLATE/FIX.md | 13 - .../PULL_REQUEST_TEMPLATE/IMPROVEMENT.md | 9 - .../PULL_REQUEST_TEMPLATE/NEW_FEATURE.md | 9 - .../zipstream-php/.github/SECURITY.md | 22 - .../zipstream-php/.github/dependabot.yml | 15 - .../zipstream-php/.github/scorecard.yml | 14 - .../.github/workflows/branch_main.yml | 24 - .../.github/workflows/part_dependabot.yml | 30 - .../.github/workflows/part_docs.yml | 51 - .../.github/workflows/part_release.yml | 94 - .../.github/workflows/part_test.yml | 181 -- .../zipstream-php/.github/workflows/pr.yml | 50 - .../.github/workflows/scorecard.yml | 78 - .../.github/workflows/tag-beta.yml | 29 - .../.github/workflows/tag-stable.yml | 55 - vendor/maennchen/zipstream-php/.gitignore | 12 - .../maennchen/zipstream-php/.phive/phars.xml | 2 +- .../zipstream-php/.php-cs-fixer.dist.php | 8 +- .../.phpdoc/template/base.html.twig | 2 +- vendor/maennchen/zipstream-php/.tool-versions | 2 +- vendor/maennchen/zipstream-php/README.md | 149 +- vendor/maennchen/zipstream-php/composer.json | 45 +- .../zipstream-php/guides/ContentLength.rst | 102 +- .../zipstream-php/guides/FlySystem.rst | 19 +- .../zipstream-php/guides/Options.rst | 87 +- .../zipstream-php/guides/PSR7Streams.rst | 7 +- .../zipstream-php/guides/StreamOutput.rst | 22 +- .../zipstream-php/guides/Symfony.rst | 30 +- .../maennchen/zipstream-php/guides/index.rst | 54 +- .../maennchen/zipstream-php/phpunit.xml.dist | 13 +- vendor/maennchen/zipstream-php/psalm.xml | 46 +- vendor/maennchen/zipstream-php/src/Bigint.php | 174 ++ .../src/CentralDirectoryFileHeader.php | 52 - .../zipstream-php/src/CompressionMethod.php | 106 - .../zipstream-php/src/DataDescriptor.php | 26 - .../zipstream-php/src/DeflateStream.php | 27 + .../src/EndOfCentralDirectory.php | 35 - .../maennchen/zipstream-php/src/Exception.php | 7 +- .../Exception/DosTimeOverflowException.php | 23 - .../src/Exception/EncodingException.php | 14 + .../src/Exception/FileNotFoundException.php | 9 +- .../Exception/FileNotReadableException.php | 9 +- .../Exception/FileSizeIncorrectException.php | 23 - .../IncompatibleOptionsException.php | 14 + .../src/Exception/OverflowException.php | 3 - .../src/Exception/ResourceActionException.php | 29 - .../SimulationFileUnknownException.php | 19 - .../Exception/StreamNotReadableException.php | 10 +- .../Exception/StreamNotSeekableException.php | 22 - vendor/maennchen/zipstream-php/src/File.php | 746 ++--- .../src/GeneralPurposeBitFlag.php | 89 - .../zipstream-php/src/LocalFileHeader.php | 40 - .../zipstream-php/src/OperationMode.php | 35 - .../zipstream-php/src/Option/Archive.php | 276 ++ .../zipstream-php/src/Option/File.php | 122 + .../zipstream-php/src/Option/Method.php | 23 + .../zipstream-php/src/Option/Version.php | 27 + .../maennchen/zipstream-php/src/PackField.php | 56 - vendor/maennchen/zipstream-php/src/Stream.php | 265 ++ vendor/maennchen/zipstream-php/src/Time.php | 39 - .../maennchen/zipstream-php/src/Version.php | 12 - .../src/Zip64/DataDescriptor.php | 28 - .../src/Zip64/EndOfCentralDirectory.php | 43 - .../Zip64/EndOfCentralDirectoryLocator.php | 29 - .../Zip64/ExtendedInformationExtraField.php | 45 - .../maennchen/zipstream-php/src/ZipStream.php | 1067 +++---- .../src/Zs/ExtendedInformationExtraField.php | 23 - .../zipstream-php/test/Assertions.php | 49 - .../zipstream-php/test/BigintTest.php | 66 + .../test/CentralDirectoryFileHeaderTest.php | 60 - .../zipstream-php/test/DataDescriptorTest.php | 26 - .../test/EndOfCentralDirectoryTest.php | 35 - .../zipstream-php/test/EndlessCycleStream.php | 104 - .../test/FaultInjectionResource.php | 141 - .../test/LocalFileHeaderTest.php | 47 - .../zipstream-php/test/PackFieldTest.php | 42 - .../zipstream-php/test/ResourceStream.php | 159 - .../maennchen/zipstream-php/test/Tempfile.php | 42 - .../maennchen/zipstream-php/test/TimeTest.php | 44 - vendor/maennchen/zipstream-php/test/Util.php | 127 - .../test/Zip64/DataDescriptorTest.php | 28 - .../EndOfCentralDirectoryLocatorTest.php | 28 - .../test/Zip64/EndOfCentralDirectoryTest.php | 41 - .../ExtendedInformationExtraFieldTest.php | 42 - .../zipstream-php/test/ZipStreamTest.php | 1287 +++----- .../Zs/ExtendedInformationExtraFieldTest.php | 22 - .../test/bug/BugHonorFileTimeTest.php | 40 + vendor/myclabs/php-enum/LICENSE | 18 + vendor/myclabs/php-enum/README.md | 194 ++ vendor/myclabs/php-enum/SECURITY.md | 11 + vendor/myclabs/php-enum/composer.json | 36 + vendor/myclabs/php-enum/src/Enum.php | 318 ++ .../php-enum/src/PHPUnit/Comparator.php | 54 + vendor/myclabs/php-enum/stubs/Stringable.php | 11 + vendor/phpoffice/phpspreadsheet/CHANGELOG.md | 9 + vendor/phpoffice/phpspreadsheet/README.md | 17 +- vendor/phpoffice/phpspreadsheet/composer.json | 2 +- vendor/psr/http-factory/LICENSE | 0 vendor/psr/http-factory/README.md | 0 vendor/psr/http-factory/composer.json | 7 +- .../src/RequestFactoryInterface.php | 0 .../src/ResponseFactoryInterface.php | 0 .../src/ServerRequestFactoryInterface.php | 0 .../src/StreamFactoryInterface.php | 0 .../src/UploadedFileFactoryInterface.php | 12 +- .../http-factory/src/UriFactoryInterface.php | 0 vendor/psr/http-message/composer.json | 4 +- .../psr/http-message/src/MessageInterface.php | 24 +- .../psr/http-message/src/RequestInterface.php | 15 +- .../http-message/src/ResponseInterface.php | 8 +- .../src/ServerRequestInterface.php | 24 +- .../psr/http-message/src/StreamInterface.php | 28 +- .../src/UploadedFileInterface.php | 14 +- vendor/psr/http-message/src/UriInterface.php | 34 +- .../symfony/deprecation-contracts/.gitignore | 3 + vendor/symfony/deprecation-contracts/LICENSE | 2 +- .../symfony/deprecation-contracts/README.md | 2 +- .../deprecation-contracts/composer.json | 4 +- .../event-dispatcher-contracts/.gitignore | 3 + .../event-dispatcher-contracts/Event.php | 3 + .../EventDispatcherInterface.php | 8 +- .../event-dispatcher-contracts/LICENSE | 2 +- .../event-dispatcher-contracts/README.md | 2 +- .../event-dispatcher-contracts/composer.json | 7 +- vendor/symfony/finder/CHANGELOG.md | 11 - .../symfony/finder/Comparator/Comparator.php | 32 +- .../finder/Comparator/DateComparator.php | 10 +- .../finder/Comparator/NumberComparator.php | 8 +- vendor/symfony/finder/Finder.php | 116 +- vendor/symfony/finder/Gitignore.php | 6 +- .../ExcludeDirectoryFilterIterator.php | 33 +- .../Iterator/FileTypeFilterIterator.php | 14 +- .../Iterator/FilecontentFilterIterator.php | 4 +- .../symfony/finder/Iterator/LazyIterator.php | 2 +- .../Iterator/MultiplePcreFilterIterator.php | 16 +- .../finder/Iterator/PathFilterIterator.php | 4 +- .../Iterator/RecursiveDirectoryIterator.php | 47 +- .../finder/Iterator/SortableIterator.php | 35 +- .../Iterator/VcsIgnoredFilterIterator.php | 56 +- vendor/symfony/finder/LICENSE | 2 +- vendor/symfony/finder/SplFileInfo.php | 12 +- vendor/symfony/finder/composer.json | 5 +- vendor/symfony/service-contracts/.gitignore | 3 + .../Attribute/SubscribedService.php | 24 +- vendor/symfony/service-contracts/LICENSE | 2 +- vendor/symfony/service-contracts/README.md | 2 +- .../service-contracts/ResetInterface.php | 3 - .../ServiceCollectionInterface.php | 26 - .../service-contracts/ServiceLocatorTrait.php | 28 +- .../ServiceMethodsSubscriberTrait.php | 80 - .../ServiceProviderInterface.php | 11 +- .../ServiceSubscriberInterface.php | 13 +- .../ServiceSubscriberTrait.php | 53 +- .../Test/ServiceLocatorTest.php | 81 +- .../Test/ServiceLocatorTestCase.php | 97 - .../symfony/service-contracts/composer.json | 15 +- vendor/symfony/var-exporter/CHANGELOG.md | 13 - .../Exception/ClassNotFoundException.php | 4 +- .../var-exporter/Exception/LogicException.php | 16 - .../NotInstantiableTypeException.php | 4 +- vendor/symfony/var-exporter/Hydrator.php | 78 - vendor/symfony/var-exporter/Instantiator.php | 61 +- .../var-exporter/Internal/Exporter.php | 83 +- .../var-exporter/Internal/Hydrator.php | 219 +- .../Internal/LazyObjectRegistry.php | 177 -- .../var-exporter/Internal/LazyObjectState.php | 133 - .../var-exporter/Internal/LazyObjectTrait.php | 34 - .../var-exporter/Internal/Reference.php | 12 +- .../var-exporter/Internal/Registry.php | 28 +- vendor/symfony/var-exporter/LICENSE | 2 +- .../symfony/var-exporter/LazyGhostTrait.php | 409 --- .../var-exporter/LazyObjectInterface.php | 32 - .../symfony/var-exporter/LazyProxyTrait.php | 355 --- vendor/symfony/var-exporter/ProxyHelper.php | 553 ---- vendor/symfony/var-exporter/README.md | 119 +- vendor/symfony/var-exporter/VarExporter.php | 8 +- vendor/symfony/var-exporter/composer.json | 9 +- .../_www_wwwroot_fengketrade_think.pid | 1 + vendor/workerman/channel/README.md | 101 + vendor/workerman/channel/composer.json | 12 + vendor/workerman/channel/src/Client.php | 393 +++ vendor/workerman/channel/src/Queue.php | 89 + vendor/workerman/channel/src/Server.php | 179 ++ vendor/workerman/channel/test/queue.php | 53 + vendor/workerman/channel/test/server.php | 28 + .../workerman/channel/test/start_channel.php | 23 + .../workerman/channel/test/start_client.php | 34 + vendor/workerman/channel/test/start_send.php | 35 + vendor/workerman/phpsocket.io/README.md | 184 ++ vendor/workerman/phpsocket.io/composer.json | 30 + .../phpsocket.io/src/ChannelAdapter.php | 116 + vendor/workerman/phpsocket.io/src/Client.php | 250 ++ vendor/workerman/phpsocket.io/src/Debug.php | 14 + .../phpsocket.io/src/DefaultAdapter.php | 100 + .../phpsocket.io/src/Engine/Engine.php | 276 ++ .../phpsocket.io/src/Engine/Parser.php | 253 ++ .../src/Engine/Protocols/Http/Request.php | 58 + .../src/Engine/Protocols/Http/Response.php | 189 ++ .../src/Engine/Protocols/SocketIO.php | 170 + .../src/Engine/Protocols/WebSocket.php | 84 + .../Engine/Protocols/WebSocket/RFC6455.php | 300 ++ .../phpsocket.io/src/Engine/Socket.php | 360 +++ .../phpsocket.io/src/Engine/Transport.php | 80 + .../src/Engine/Transports/Polling.php | 176 ++ .../src/Engine/Transports/PollingJsonp.php | 60 + .../src/Engine/Transports/PollingXHR.php | 66 + .../src/Engine/Transports/WebSocket.php | 64 + .../phpsocket.io/src/Event/Emitter.php | 96 + vendor/workerman/phpsocket.io/src/Nsp.php | 158 + .../phpsocket.io/src/Parser/Decoder.php | 113 + .../phpsocket.io/src/Parser/Encoder.php | 72 + .../phpsocket.io/src/Parser/Parser.php | 65 + vendor/workerman/phpsocket.io/src/Socket.php | 468 +++ .../workerman/phpsocket.io/src/SocketIO.php | 177 ++ vendor/workerman/workerman-584743.status | 11 + .../workerman/workerman/.github/FUNDING.yml | 4 + vendor/workerman/workerman/.gitignore | 6 + vendor/workerman/workerman/Autoloader.php | 69 + .../Connection/AsyncTcpConnection.php | 382 +++ .../Connection/AsyncUdpConnection.php | 203 ++ .../Connection/ConnectionInterface.php | 126 + .../workerman/Connection/TcpConnection.php | 1004 ++++++ .../workerman/Connection/UdpConnection.php | 208 ++ vendor/workerman/workerman/Events/Ev.php | 189 ++ vendor/workerman/workerman/Events/Event.php | 215 ++ .../workerman/Events/EventInterface.php | 107 + .../workerman/workerman/Events/Libevent.php | 225 ++ .../workerman/workerman/Events/React/Base.php | 264 ++ .../workerman/Events/React/ExtEventLoop.php | 27 + .../Events/React/ExtLibEventLoop.php | 27 + .../Events/React/StreamSelectLoop.php | 26 + vendor/workerman/workerman/Events/Select.php | 357 +++ vendor/workerman/workerman/Events/Swoole.php | 285 ++ vendor/workerman/workerman/Events/Uv.php | 260 ++ vendor/workerman/workerman/Lib/Constants.php | 44 + vendor/workerman/workerman/Lib/Timer.php | 22 + vendor/workerman/workerman/MIT-LICENSE.txt | 21 + .../workerman/workerman/Protocols/Frame.php | 61 + vendor/workerman/workerman/Protocols/Http.php | 323 ++ .../workerman/Protocols/Http/Chunk.php | 48 + .../workerman/Protocols/Http/Request.php | 694 +++++ .../workerman/Protocols/Http/Response.php | 458 +++ .../Protocols/Http/ServerSentEvents.php | 64 + .../workerman/Protocols/Http/Session.php | 461 +++ .../Http/Session/FileSessionHandler.php | 183 ++ .../Session/RedisClusterSessionHandler.php | 46 + .../Http/Session/RedisSessionHandler.php | 154 + .../Http/Session/SessionHandlerInterface.php | 114 + .../workerman/Protocols/Http/mime.types | 90 + .../workerman/Protocols/ProtocolInterface.php | 52 + vendor/workerman/workerman/Protocols/Text.php | 70 + .../workerman/Protocols/Websocket.php | 562 ++++ vendor/workerman/workerman/Protocols/Ws.php | 432 +++ vendor/workerman/workerman/README.md | 342 ++ vendor/workerman/workerman/Timer.php | 220 ++ vendor/workerman/workerman/Worker.php | 2756 +++++++++++++++++ vendor/workerman/workerman/composer.json | 38 + 607 files changed, 21949 insertions(+), 9346 deletions(-) create mode 100644 application/extra/chat.php create mode 100644 public/.well-known/acme-challenge/YeuNin52_myb0ao7-Q6oVNq1WbWPxd3TYpFzLglr2E4 create mode 100644 public/storage/decorate/20221115/028e21433349279a5bfd75394ee98fe4.png create mode 100644 public/storage/decorate/20221115/045e097320773c23321a2d3a33a9da0b.png create mode 100644 public/storage/decorate/20221115/046f2fddfc4f6778ff890a62547d8a1a.png create mode 100644 public/storage/decorate/20221115/0be1df1ea8d1d248a1b8eaea3309a732.png create mode 100644 public/storage/decorate/20221115/0c37315a83f9424a4717ef684984c9c0.png create mode 100644 public/storage/decorate/20221115/1130ab158b1c31b1e1d356fa78bb5f4a.gif create mode 100644 public/storage/decorate/20221115/113eb988efc1fe17cb90cdf5311e5b63.png create mode 100644 public/storage/decorate/20221115/18b5f444e19f31e421d0485d45befeb8.gif create mode 100644 public/storage/decorate/20221115/215f0aa658e271b3018f2d421bea694f.png create mode 100644 public/storage/decorate/20221115/22a4bf60a2cf92bd6d2f300914673d21.png create mode 100644 public/storage/decorate/20221115/26dff8fb21473e219c6f024fc6a5e39a.png create mode 100644 public/storage/decorate/20221115/283592b4d4f74d84b530035fa7265d73.png create mode 100644 public/storage/decorate/20221115/29559cc94ff33b1f39f570c5f7bc37c1.png create mode 100644 public/storage/decorate/20221115/2a3992a220f306d129ac1659304694bd.gif create mode 100644 public/storage/decorate/20221115/35730af2c38c4f13e83c3be53b463333.png create mode 100644 public/storage/decorate/20221115/3c7eb06563d1cf28b4b34bb0d1647659.png create mode 100644 public/storage/decorate/20221115/3fbe0412147a5d7f1c3116219ed39d32.png create mode 100644 public/storage/decorate/20221115/408f106f7e8d709156a45b6a96ea6d9c.png create mode 100644 public/storage/decorate/20221115/4782356b4587dc4f4a218f2540a0bafc.png create mode 100644 public/storage/decorate/20221115/495059abd025e7bb657c5983e3b30a52.png create mode 100644 public/storage/decorate/20221115/4a9bde33fd13459833431db72282e91c.png create mode 100644 public/storage/decorate/20221115/4ce2fdff833f8a37de9a6d760deee994.gif create mode 100644 public/storage/decorate/20221115/50e077b0a5df1c48dcd9be4e47b03324.png create mode 100644 public/storage/decorate/20221115/58fe6c2a400d6d18a43949f3d8c58021.png create mode 100644 public/storage/decorate/20221115/5cb05c3cb99058ad38477205f9ecdcbb.png create mode 100644 public/storage/decorate/20221115/629ac892b94afeb3bd547c9f6d53e432.png create mode 100644 public/storage/decorate/20221115/63cbe4b8088a28a129923b65f412fcb2.png create mode 100644 public/storage/decorate/20221115/6586d6090fca4fab8fecbaeb53cb4656.png create mode 100644 public/storage/decorate/20221115/6bfd03d0ad7f3d7f6ba7494c903cdc0c.png create mode 100644 public/storage/decorate/20221115/6d0a8c85ba41464b5493226c91c72459.png create mode 100644 public/storage/decorate/20221115/6e30b6357d3285d7d007ac308e7b2b12.png create mode 100644 public/storage/decorate/20221115/70845d2cb5fc68882b27ad3de9a100e0.png create mode 100644 public/storage/decorate/20221115/76574bb482da1fd62539c0253f0152d6.png create mode 100644 public/storage/decorate/20221115/7e7da5a9fe78d731c217f14922b627bc.png create mode 100644 public/storage/decorate/20221115/85e17aecf52b9f367353ceef450d18d0.png create mode 100644 public/storage/decorate/20221115/92bf692d57b8fc2e76815ce6627ef1f9.png create mode 100644 public/storage/decorate/20221115/9464fe770d388c7982df73b2d1b1d457.png create mode 100644 public/storage/decorate/20221115/94eb324f16b6b48e65c4ea1cf7d3c1fd.png create mode 100644 public/storage/decorate/20221115/968a4300d7b2e14794cdd11e140d4c68.png create mode 100644 public/storage/decorate/20221115/9918d064eefa8fb1fda5715db2c248ab.png create mode 100644 public/storage/decorate/20221115/9ff8442f8cda57f88aac61059d7d3f21.png create mode 100644 public/storage/decorate/20221115/a44ee2a893e6b296efcd167fe0dc246d.png create mode 100644 public/storage/decorate/20221115/a83953b2f0db3f387584a78a041fccbf.png create mode 100644 public/storage/decorate/20221115/ac3bdfced7c4c5f17f03b48f6d3fa3ec.png create mode 100644 public/storage/decorate/20221115/aead1d736d0cddba13ffbbb5e8603629.png create mode 100644 public/storage/decorate/20221115/af8b36bc0745b57e8e18dba7732631cd.png create mode 100644 public/storage/decorate/20221115/b043e999f27c299374bd7ab19deec2f1.png create mode 100644 public/storage/decorate/20221115/b530150a466c8cda0a4cd5b29e2c8d11.png create mode 100644 public/storage/decorate/20221115/b5f6e0543a90f542095b468c98b1f8cd.png create mode 100644 public/storage/decorate/20221115/c0dde28052c763691491a4dd7f5f0dc7.png create mode 100644 public/storage/decorate/20221115/c25fb96bad1d53e61afb25cc9fe0b499.gif create mode 100644 public/storage/decorate/20221115/c47b048175b325b1e78f837a3b696794.png create mode 100644 public/storage/decorate/20221115/c92d07a10eec8850ab9a481638e5159b.gif create mode 100644 public/storage/decorate/20221115/ce9cb18e6cd8dda71287195d97fc5c2d.png create mode 100644 public/storage/decorate/20221115/d2107905b46fb6aabd98b6d75dff0b2f.gif create mode 100644 public/storage/decorate/20221115/d2b5d4d6eff681076b08b493bf5a5193.png create mode 100644 public/storage/decorate/20221115/d41c873b7d96f5874083c5a9565657c9.gif create mode 100644 public/storage/decorate/20221115/d49bc66b70c240bfa399f9f414bdbefa.png create mode 100644 public/storage/decorate/20221115/ddc71411f2cd9ac0daf0e93fca64e8bb.png create mode 100644 public/storage/decorate/20221115/e65f9b968d33f335cdff6b5e0befef8e.png create mode 100644 public/storage/decorate/20221115/ee10ab2a0282712a0c6d20e619c1b8e8.png create mode 100644 public/storage/decorate/20221115/f09ef51624e48d7d8c58cd602110c46e.png create mode 100644 public/storage/decorate/20221115/f6c52397b662f42a29c4e0e6244b1b16.png create mode 100644 public/storage/decorate/20221115/f930c59d338a97a158ee53cb65bde082.png create mode 100644 public/storage/decorate/20221115/fd5379d520a4a31a8e58b64da3a8790d.png create mode 100644 public/storage/decorate/20221115/fd8c70d6121f801a333262bbb1459dfd.png create mode 100644 public/storage/default/20230110/fb5f5d3ade8990c789217b35fba27ef8.png create mode 100644 public/uploads/20251022/1581418ab3b7131a11d398ce7d6bcbc9.png create mode 100644 public/uploads/20251022/1c424c60b7fa6cd7f28fbbea55682b8a.png create mode 100644 public/uploads/20251022/4566b366604fdf49215cb1fb80e37335.png create mode 100644 public/uploads/20251022/4b302bd0bfd187da3d76d05e1127d18c.png create mode 100644 public/uploads/20251022/a237bec8f02040f8f3af6ec31bc60543.png create mode 100644 public/uploads/20251022/cd8919a7436ebd5d9605cd9d4a750973.png create mode 100644 public/uploads/20251022/ffe24eebd854389d191c5783f99d8c43.png create mode 100644 public/uploads/20251028/a38cd3b6694e1b1f409172af506452e9.png mode change 100755 => 100644 thinkphp/.gitignore mode change 100755 => 100644 thinkphp/.htaccess mode change 100755 => 100644 thinkphp/.travis.yml mode change 100755 => 100644 thinkphp/CONTRIBUTING.md mode change 100755 => 100644 thinkphp/LICENSE.txt mode change 100755 => 100644 thinkphp/README.md mode change 100755 => 100644 thinkphp/base.php mode change 100755 => 100644 thinkphp/codecov.yml mode change 100755 => 100644 thinkphp/composer.json mode change 100755 => 100644 thinkphp/console.php mode change 100755 => 100644 thinkphp/convention.php mode change 100755 => 100644 thinkphp/helper.php mode change 100755 => 100644 thinkphp/lang/zh-cn.php mode change 100755 => 100644 thinkphp/library/think/App.php mode change 100755 => 100644 thinkphp/library/think/Build.php mode change 100755 => 100644 thinkphp/library/think/Cache.php mode change 100755 => 100644 thinkphp/library/think/Collection.php mode change 100755 => 100644 thinkphp/library/think/Config.php mode change 100755 => 100644 thinkphp/library/think/Console.php mode change 100755 => 100644 thinkphp/library/think/Controller.php mode change 100755 => 100644 thinkphp/library/think/Cookie.php mode change 100755 => 100644 thinkphp/library/think/Db.php mode change 100755 => 100644 thinkphp/library/think/Debug.php mode change 100755 => 100644 thinkphp/library/think/Env.php mode change 100755 => 100644 thinkphp/library/think/Error.php mode change 100755 => 100644 thinkphp/library/think/Exception.php mode change 100755 => 100644 thinkphp/library/think/File.php mode change 100755 => 100644 thinkphp/library/think/Hook.php mode change 100755 => 100644 thinkphp/library/think/Lang.php mode change 100755 => 100644 thinkphp/library/think/Loader.php mode change 100755 => 100644 thinkphp/library/think/Log.php mode change 100755 => 100644 thinkphp/library/think/Model.php mode change 100755 => 100644 thinkphp/library/think/Paginator.php mode change 100755 => 100644 thinkphp/library/think/Process.php mode change 100755 => 100644 thinkphp/library/think/Request.php mode change 100755 => 100644 thinkphp/library/think/Response.php mode change 100755 => 100644 thinkphp/library/think/Route.php mode change 100755 => 100644 thinkphp/library/think/Session.php mode change 100755 => 100644 thinkphp/library/think/Template.php mode change 100755 => 100644 thinkphp/library/think/Url.php mode change 100755 => 100644 thinkphp/library/think/Validate.php mode change 100755 => 100644 thinkphp/library/think/View.php mode change 100755 => 100644 thinkphp/library/think/cache/Driver.php mode change 100755 => 100644 thinkphp/library/think/cache/driver/File.php mode change 100755 => 100644 thinkphp/library/think/cache/driver/Lite.php mode change 100755 => 100644 thinkphp/library/think/cache/driver/Memcache.php mode change 100755 => 100644 thinkphp/library/think/cache/driver/Memcached.php mode change 100755 => 100644 thinkphp/library/think/cache/driver/Redis.php mode change 100755 => 100644 thinkphp/library/think/cache/driver/Sqlite.php mode change 100755 => 100644 thinkphp/library/think/cache/driver/Wincache.php mode change 100755 => 100644 thinkphp/library/think/cache/driver/Xcache.php mode change 100755 => 100644 thinkphp/library/think/config/driver/Ini.php mode change 100755 => 100644 thinkphp/library/think/config/driver/Json.php mode change 100755 => 100644 thinkphp/library/think/config/driver/Xml.php mode change 100755 => 100644 thinkphp/library/think/console/Command.php mode change 100755 => 100644 thinkphp/library/think/console/Input.php mode change 100755 => 100644 thinkphp/library/think/console/LICENSE mode change 100755 => 100644 thinkphp/library/think/console/Output.php mode change 100755 => 100644 thinkphp/library/think/console/bin/README.md mode change 100755 => 100644 thinkphp/library/think/console/bin/hiddeninput.exe mode change 100755 => 100644 thinkphp/library/think/console/command/Build.php mode change 100755 => 100644 thinkphp/library/think/console/command/Clear.php mode change 100755 => 100644 thinkphp/library/think/console/command/Help.php mode change 100755 => 100644 thinkphp/library/think/console/command/Lists.php mode change 100755 => 100644 thinkphp/library/think/console/command/Make.php mode change 100755 => 100644 thinkphp/library/think/console/command/make/Controller.php mode change 100755 => 100644 thinkphp/library/think/console/command/make/Model.php mode change 100755 => 100644 thinkphp/library/think/console/command/make/stubs/controller.plain.stub mode change 100755 => 100644 thinkphp/library/think/console/command/make/stubs/controller.stub mode change 100755 => 100644 thinkphp/library/think/console/command/make/stubs/model.stub mode change 100755 => 100644 thinkphp/library/think/console/command/optimize/Autoload.php mode change 100755 => 100644 thinkphp/library/think/console/command/optimize/Config.php mode change 100755 => 100644 thinkphp/library/think/console/command/optimize/Route.php mode change 100755 => 100644 thinkphp/library/think/console/command/optimize/Schema.php mode change 100755 => 100644 thinkphp/library/think/console/input/Argument.php mode change 100755 => 100644 thinkphp/library/think/console/input/Definition.php mode change 100755 => 100644 thinkphp/library/think/console/input/Option.php mode change 100755 => 100644 thinkphp/library/think/console/output/Ask.php mode change 100755 => 100644 thinkphp/library/think/console/output/Descriptor.php mode change 100755 => 100644 thinkphp/library/think/console/output/Formatter.php mode change 100755 => 100644 thinkphp/library/think/console/output/Question.php mode change 100755 => 100644 thinkphp/library/think/console/output/descriptor/Console.php mode change 100755 => 100644 thinkphp/library/think/console/output/driver/Buffer.php mode change 100755 => 100644 thinkphp/library/think/console/output/driver/Console.php mode change 100755 => 100644 thinkphp/library/think/console/output/driver/Nothing.php mode change 100755 => 100644 thinkphp/library/think/console/output/formatter/Stack.php mode change 100755 => 100644 thinkphp/library/think/console/output/formatter/Style.php mode change 100755 => 100644 thinkphp/library/think/console/output/question/Choice.php mode change 100755 => 100644 thinkphp/library/think/console/output/question/Confirmation.php mode change 100755 => 100644 thinkphp/library/think/controller/Rest.php mode change 100755 => 100644 thinkphp/library/think/controller/Yar.php mode change 100755 => 100644 thinkphp/library/think/db/Builder.php mode change 100755 => 100644 thinkphp/library/think/db/Connection.php mode change 100755 => 100644 thinkphp/library/think/db/Expression.php mode change 100755 => 100644 thinkphp/library/think/db/Query.php mode change 100755 => 100644 thinkphp/library/think/db/builder/Mysql.php mode change 100755 => 100644 thinkphp/library/think/db/builder/Pgsql.php mode change 100755 => 100644 thinkphp/library/think/db/builder/Sqlite.php mode change 100755 => 100644 thinkphp/library/think/db/builder/Sqlsrv.php mode change 100755 => 100644 thinkphp/library/think/db/connector/Mysql.php mode change 100755 => 100644 thinkphp/library/think/db/connector/Pgsql.php mode change 100755 => 100644 thinkphp/library/think/db/connector/Sqlite.php mode change 100755 => 100644 thinkphp/library/think/db/connector/Sqlsrv.php mode change 100755 => 100644 thinkphp/library/think/db/connector/pgsql.sql mode change 100755 => 100644 thinkphp/library/think/db/exception/BindParamException.php mode change 100755 => 100644 thinkphp/library/think/db/exception/DataNotFoundException.php mode change 100755 => 100644 thinkphp/library/think/db/exception/ModelNotFoundException.php mode change 100755 => 100644 thinkphp/library/think/debug/Console.php mode change 100755 => 100644 thinkphp/library/think/debug/Html.php mode change 100755 => 100644 thinkphp/library/think/exception/ClassNotFoundException.php mode change 100755 => 100644 thinkphp/library/think/exception/DbException.php mode change 100755 => 100644 thinkphp/library/think/exception/ErrorException.php mode change 100755 => 100644 thinkphp/library/think/exception/Handle.php mode change 100755 => 100644 thinkphp/library/think/exception/HttpException.php mode change 100755 => 100644 thinkphp/library/think/exception/HttpResponseException.php mode change 100755 => 100644 thinkphp/library/think/exception/PDOException.php mode change 100755 => 100644 thinkphp/library/think/exception/RouteNotFoundException.php mode change 100755 => 100644 thinkphp/library/think/exception/TemplateNotFoundException.php mode change 100755 => 100644 thinkphp/library/think/exception/ThrowableError.php mode change 100755 => 100644 thinkphp/library/think/exception/ValidateException.php mode change 100755 => 100644 thinkphp/library/think/log/driver/File.php mode change 100755 => 100644 thinkphp/library/think/log/driver/Socket.php mode change 100755 => 100644 thinkphp/library/think/log/driver/Test.php mode change 100755 => 100644 thinkphp/library/think/model/Collection.php mode change 100755 => 100644 thinkphp/library/think/model/Merge.php mode change 100755 => 100644 thinkphp/library/think/model/Pivot.php mode change 100755 => 100644 thinkphp/library/think/model/Relation.php mode change 100755 => 100644 thinkphp/library/think/model/relation/BelongsTo.php mode change 100755 => 100644 thinkphp/library/think/model/relation/BelongsToMany.php mode change 100755 => 100644 thinkphp/library/think/model/relation/HasMany.php mode change 100755 => 100644 thinkphp/library/think/model/relation/HasManyThrough.php mode change 100755 => 100644 thinkphp/library/think/model/relation/HasOne.php mode change 100755 => 100644 thinkphp/library/think/model/relation/MorphMany.php mode change 100755 => 100644 thinkphp/library/think/model/relation/MorphOne.php mode change 100755 => 100644 thinkphp/library/think/model/relation/MorphTo.php mode change 100755 => 100644 thinkphp/library/think/model/relation/OneToOne.php mode change 100755 => 100644 thinkphp/library/think/paginator/driver/Bootstrap.php mode change 100755 => 100644 thinkphp/library/think/process/Builder.php mode change 100755 => 100644 thinkphp/library/think/process/Utils.php mode change 100755 => 100644 thinkphp/library/think/process/exception/Failed.php mode change 100755 => 100644 thinkphp/library/think/process/exception/Timeout.php mode change 100755 => 100644 thinkphp/library/think/process/pipes/Pipes.php mode change 100755 => 100644 thinkphp/library/think/process/pipes/Unix.php mode change 100755 => 100644 thinkphp/library/think/process/pipes/Windows.php mode change 100755 => 100644 thinkphp/library/think/response/Json.php mode change 100755 => 100644 thinkphp/library/think/response/Jsonp.php mode change 100755 => 100644 thinkphp/library/think/response/Redirect.php mode change 100755 => 100644 thinkphp/library/think/response/View.php mode change 100755 => 100644 thinkphp/library/think/response/Xml.php mode change 100755 => 100644 thinkphp/library/think/session/driver/Memcache.php mode change 100755 => 100644 thinkphp/library/think/session/driver/Memcached.php mode change 100755 => 100644 thinkphp/library/think/session/driver/Redis.php mode change 100755 => 100644 thinkphp/library/think/template/TagLib.php mode change 100755 => 100644 thinkphp/library/think/template/driver/File.php mode change 100755 => 100644 thinkphp/library/think/template/taglib/Cx.php mode change 100755 => 100644 thinkphp/library/think/view/driver/Php.php mode change 100755 => 100644 thinkphp/library/think/view/driver/Think.php mode change 100755 => 100644 thinkphp/library/traits/controller/Jump.php mode change 100755 => 100644 thinkphp/library/traits/model/SoftDelete.php mode change 100755 => 100644 thinkphp/library/traits/think/Instance.php mode change 100755 => 100644 thinkphp/logo.png mode change 100755 => 100644 thinkphp/phpunit.xml mode change 100755 => 100644 thinkphp/start.php mode change 100755 => 100644 thinkphp/tests/.gitignore mode change 100755 => 100644 thinkphp/tests/README.md mode change 100755 => 100644 thinkphp/tests/application/config.php mode change 100755 => 100644 thinkphp/tests/application/database.php mode change 100755 => 100644 thinkphp/tests/application/index/controller/Index.php mode change 100755 => 100644 thinkphp/tests/application/route.php mode change 100755 => 100644 thinkphp/tests/application/views/display.html mode change 100755 => 100644 thinkphp/tests/application/views/display.phtml mode change 100755 => 100644 thinkphp/tests/application/views/extend.html mode change 100755 => 100644 thinkphp/tests/application/views/extend2.html mode change 100755 => 100644 thinkphp/tests/application/views/include.html mode change 100755 => 100644 thinkphp/tests/application/views/include2.html mode change 100755 => 100644 thinkphp/tests/application/views/layout.html mode change 100755 => 100644 thinkphp/tests/application/views/layout2.html mode change 100755 => 100644 thinkphp/tests/conf/memcached.ini mode change 100755 => 100644 thinkphp/tests/conf/redis.ini mode change 100755 => 100644 thinkphp/tests/conf/timezone.ini mode change 100755 => 100644 thinkphp/tests/mock.php mode change 100755 => 100644 thinkphp/tests/thinkphp/baseTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/appTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/behavior/One.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/behavior/Three.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/behavior/Two.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/buildTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/cache/driver/cacheTestCase.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/cache/driver/fileTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/cache/driver/liteTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/cache/driver/memcacheTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/cache/driver/memcachedTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/cache/driver/redisTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/cacheTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/config/ConfigInitTrait.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/config/driver/fixtures/config.ini mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/config/driver/fixtures/config.json mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/config/driver/fixtures/config.xml mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/config/driver/iniTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/config/driver/jsonTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/config/driver/xmlTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/configTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/controller/.gitignore mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/controllerTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/cookieTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/db/driver/.gitignore mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/dbTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/debugTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/exceptionTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/hookTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/lang/lang.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/langTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/loader/test/Hello.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/loaderTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/log/driver/fileTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/logTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/model/.gitignore mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/paginateTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/requestTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/responseTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/routeTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/session/.gitignore mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/sessionTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/template/driver/.gitignore mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/template/taglib/cxTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/templateTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/urlTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/validateTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/view/driver/.gitignore mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/view/theme/index/template.html mode change 100755 => 100644 thinkphp/tests/thinkphp/library/think/viewTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/traits/controller/jumpTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/traits/model/softDeleteTest.php mode change 100755 => 100644 thinkphp/tests/thinkphp/library/traits/think/instanceTest.php mode change 100755 => 100644 thinkphp/tpl/default_index.tpl mode change 100755 => 100644 thinkphp/tpl/dispatch_jump.tpl mode change 100755 => 100644 thinkphp/tpl/page_trace.tpl mode change 100755 => 100644 thinkphp/tpl/think_exception.tpl delete mode 100644 vendor/guzzlehttp/guzzle/package-lock.json delete mode 100644 vendor/maennchen/zipstream-php/.gitattributes delete mode 100644 vendor/maennchen/zipstream-php/.github/CODE_OF_CONDUCT.md delete mode 100644 vendor/maennchen/zipstream-php/.github/CONTRIBUTING.md delete mode 100644 vendor/maennchen/zipstream-php/.github/FUNDING.yml delete mode 100644 vendor/maennchen/zipstream-php/.github/ISSUE_TEMPLATE/BUG.yml delete mode 100644 vendor/maennchen/zipstream-php/.github/ISSUE_TEMPLATE/FEATURE.yml delete mode 100644 vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE.md delete mode 100644 vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/FAILING_TEST.md delete mode 100644 vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/FIX.md delete mode 100644 vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/IMPROVEMENT.md delete mode 100644 vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/NEW_FEATURE.md delete mode 100644 vendor/maennchen/zipstream-php/.github/SECURITY.md delete mode 100644 vendor/maennchen/zipstream-php/.github/dependabot.yml delete mode 100644 vendor/maennchen/zipstream-php/.github/scorecard.yml delete mode 100644 vendor/maennchen/zipstream-php/.github/workflows/branch_main.yml delete mode 100644 vendor/maennchen/zipstream-php/.github/workflows/part_dependabot.yml delete mode 100644 vendor/maennchen/zipstream-php/.github/workflows/part_docs.yml delete mode 100644 vendor/maennchen/zipstream-php/.github/workflows/part_release.yml delete mode 100644 vendor/maennchen/zipstream-php/.github/workflows/part_test.yml delete mode 100644 vendor/maennchen/zipstream-php/.github/workflows/pr.yml delete mode 100644 vendor/maennchen/zipstream-php/.github/workflows/scorecard.yml delete mode 100644 vendor/maennchen/zipstream-php/.github/workflows/tag-beta.yml delete mode 100644 vendor/maennchen/zipstream-php/.github/workflows/tag-stable.yml delete mode 100644 vendor/maennchen/zipstream-php/.gitignore create mode 100644 vendor/maennchen/zipstream-php/src/Bigint.php delete mode 100644 vendor/maennchen/zipstream-php/src/CentralDirectoryFileHeader.php delete mode 100644 vendor/maennchen/zipstream-php/src/CompressionMethod.php delete mode 100644 vendor/maennchen/zipstream-php/src/DataDescriptor.php create mode 100644 vendor/maennchen/zipstream-php/src/DeflateStream.php delete mode 100644 vendor/maennchen/zipstream-php/src/EndOfCentralDirectory.php delete mode 100644 vendor/maennchen/zipstream-php/src/Exception/DosTimeOverflowException.php create mode 100644 vendor/maennchen/zipstream-php/src/Exception/EncodingException.php delete mode 100644 vendor/maennchen/zipstream-php/src/Exception/FileSizeIncorrectException.php create mode 100644 vendor/maennchen/zipstream-php/src/Exception/IncompatibleOptionsException.php delete mode 100644 vendor/maennchen/zipstream-php/src/Exception/ResourceActionException.php delete mode 100644 vendor/maennchen/zipstream-php/src/Exception/SimulationFileUnknownException.php delete mode 100644 vendor/maennchen/zipstream-php/src/Exception/StreamNotSeekableException.php delete mode 100644 vendor/maennchen/zipstream-php/src/GeneralPurposeBitFlag.php delete mode 100644 vendor/maennchen/zipstream-php/src/LocalFileHeader.php delete mode 100644 vendor/maennchen/zipstream-php/src/OperationMode.php create mode 100644 vendor/maennchen/zipstream-php/src/Option/Archive.php create mode 100644 vendor/maennchen/zipstream-php/src/Option/File.php create mode 100644 vendor/maennchen/zipstream-php/src/Option/Method.php create mode 100644 vendor/maennchen/zipstream-php/src/Option/Version.php delete mode 100644 vendor/maennchen/zipstream-php/src/PackField.php create mode 100644 vendor/maennchen/zipstream-php/src/Stream.php delete mode 100644 vendor/maennchen/zipstream-php/src/Time.php delete mode 100644 vendor/maennchen/zipstream-php/src/Version.php delete mode 100644 vendor/maennchen/zipstream-php/src/Zip64/DataDescriptor.php delete mode 100644 vendor/maennchen/zipstream-php/src/Zip64/EndOfCentralDirectory.php delete mode 100644 vendor/maennchen/zipstream-php/src/Zip64/EndOfCentralDirectoryLocator.php delete mode 100644 vendor/maennchen/zipstream-php/src/Zip64/ExtendedInformationExtraField.php delete mode 100644 vendor/maennchen/zipstream-php/src/Zs/ExtendedInformationExtraField.php delete mode 100644 vendor/maennchen/zipstream-php/test/Assertions.php create mode 100644 vendor/maennchen/zipstream-php/test/BigintTest.php delete mode 100644 vendor/maennchen/zipstream-php/test/CentralDirectoryFileHeaderTest.php delete mode 100644 vendor/maennchen/zipstream-php/test/DataDescriptorTest.php delete mode 100644 vendor/maennchen/zipstream-php/test/EndOfCentralDirectoryTest.php delete mode 100644 vendor/maennchen/zipstream-php/test/EndlessCycleStream.php delete mode 100644 vendor/maennchen/zipstream-php/test/FaultInjectionResource.php delete mode 100644 vendor/maennchen/zipstream-php/test/LocalFileHeaderTest.php delete mode 100644 vendor/maennchen/zipstream-php/test/PackFieldTest.php delete mode 100644 vendor/maennchen/zipstream-php/test/ResourceStream.php delete mode 100644 vendor/maennchen/zipstream-php/test/Tempfile.php delete mode 100644 vendor/maennchen/zipstream-php/test/TimeTest.php delete mode 100644 vendor/maennchen/zipstream-php/test/Util.php delete mode 100644 vendor/maennchen/zipstream-php/test/Zip64/DataDescriptorTest.php delete mode 100644 vendor/maennchen/zipstream-php/test/Zip64/EndOfCentralDirectoryLocatorTest.php delete mode 100644 vendor/maennchen/zipstream-php/test/Zip64/EndOfCentralDirectoryTest.php delete mode 100644 vendor/maennchen/zipstream-php/test/Zip64/ExtendedInformationExtraFieldTest.php delete mode 100644 vendor/maennchen/zipstream-php/test/Zs/ExtendedInformationExtraFieldTest.php create mode 100644 vendor/maennchen/zipstream-php/test/bug/BugHonorFileTimeTest.php create mode 100644 vendor/myclabs/php-enum/LICENSE create mode 100644 vendor/myclabs/php-enum/README.md create mode 100644 vendor/myclabs/php-enum/SECURITY.md create mode 100644 vendor/myclabs/php-enum/composer.json create mode 100644 vendor/myclabs/php-enum/src/Enum.php create mode 100644 vendor/myclabs/php-enum/src/PHPUnit/Comparator.php create mode 100644 vendor/myclabs/php-enum/stubs/Stringable.php mode change 100755 => 100644 vendor/psr/http-factory/LICENSE mode change 100755 => 100644 vendor/psr/http-factory/README.md mode change 100755 => 100644 vendor/psr/http-factory/composer.json mode change 100755 => 100644 vendor/psr/http-factory/src/RequestFactoryInterface.php mode change 100755 => 100644 vendor/psr/http-factory/src/ResponseFactoryInterface.php mode change 100755 => 100644 vendor/psr/http-factory/src/ServerRequestFactoryInterface.php mode change 100755 => 100644 vendor/psr/http-factory/src/StreamFactoryInterface.php mode change 100755 => 100644 vendor/psr/http-factory/src/UploadedFileFactoryInterface.php mode change 100755 => 100644 vendor/psr/http-factory/src/UriFactoryInterface.php create mode 100644 vendor/symfony/deprecation-contracts/.gitignore create mode 100644 vendor/symfony/event-dispatcher-contracts/.gitignore create mode 100644 vendor/symfony/service-contracts/.gitignore delete mode 100644 vendor/symfony/service-contracts/ServiceCollectionInterface.php delete mode 100644 vendor/symfony/service-contracts/ServiceMethodsSubscriberTrait.php delete mode 100644 vendor/symfony/service-contracts/Test/ServiceLocatorTestCase.php delete mode 100644 vendor/symfony/var-exporter/Exception/LogicException.php delete mode 100644 vendor/symfony/var-exporter/Hydrator.php delete mode 100644 vendor/symfony/var-exporter/Internal/LazyObjectRegistry.php delete mode 100644 vendor/symfony/var-exporter/Internal/LazyObjectState.php delete mode 100644 vendor/symfony/var-exporter/Internal/LazyObjectTrait.php delete mode 100644 vendor/symfony/var-exporter/LazyGhostTrait.php delete mode 100644 vendor/symfony/var-exporter/LazyObjectInterface.php delete mode 100644 vendor/symfony/var-exporter/LazyProxyTrait.php delete mode 100644 vendor/symfony/var-exporter/ProxyHelper.php create mode 100644 vendor/workerman/_www_wwwroot_fengketrade_think.pid create mode 100644 vendor/workerman/channel/README.md create mode 100644 vendor/workerman/channel/composer.json create mode 100644 vendor/workerman/channel/src/Client.php create mode 100644 vendor/workerman/channel/src/Queue.php create mode 100644 vendor/workerman/channel/src/Server.php create mode 100644 vendor/workerman/channel/test/queue.php create mode 100644 vendor/workerman/channel/test/server.php create mode 100644 vendor/workerman/channel/test/start_channel.php create mode 100644 vendor/workerman/channel/test/start_client.php create mode 100644 vendor/workerman/channel/test/start_send.php create mode 100644 vendor/workerman/phpsocket.io/README.md create mode 100644 vendor/workerman/phpsocket.io/composer.json create mode 100644 vendor/workerman/phpsocket.io/src/ChannelAdapter.php create mode 100644 vendor/workerman/phpsocket.io/src/Client.php create mode 100644 vendor/workerman/phpsocket.io/src/Debug.php create mode 100644 vendor/workerman/phpsocket.io/src/DefaultAdapter.php create mode 100644 vendor/workerman/phpsocket.io/src/Engine/Engine.php create mode 100644 vendor/workerman/phpsocket.io/src/Engine/Parser.php create mode 100644 vendor/workerman/phpsocket.io/src/Engine/Protocols/Http/Request.php create mode 100644 vendor/workerman/phpsocket.io/src/Engine/Protocols/Http/Response.php create mode 100644 vendor/workerman/phpsocket.io/src/Engine/Protocols/SocketIO.php create mode 100644 vendor/workerman/phpsocket.io/src/Engine/Protocols/WebSocket.php create mode 100644 vendor/workerman/phpsocket.io/src/Engine/Protocols/WebSocket/RFC6455.php create mode 100644 vendor/workerman/phpsocket.io/src/Engine/Socket.php create mode 100644 vendor/workerman/phpsocket.io/src/Engine/Transport.php create mode 100644 vendor/workerman/phpsocket.io/src/Engine/Transports/Polling.php create mode 100644 vendor/workerman/phpsocket.io/src/Engine/Transports/PollingJsonp.php create mode 100644 vendor/workerman/phpsocket.io/src/Engine/Transports/PollingXHR.php create mode 100644 vendor/workerman/phpsocket.io/src/Engine/Transports/WebSocket.php create mode 100644 vendor/workerman/phpsocket.io/src/Event/Emitter.php create mode 100644 vendor/workerman/phpsocket.io/src/Nsp.php create mode 100644 vendor/workerman/phpsocket.io/src/Parser/Decoder.php create mode 100644 vendor/workerman/phpsocket.io/src/Parser/Encoder.php create mode 100644 vendor/workerman/phpsocket.io/src/Parser/Parser.php create mode 100644 vendor/workerman/phpsocket.io/src/Socket.php create mode 100644 vendor/workerman/phpsocket.io/src/SocketIO.php create mode 100755 vendor/workerman/workerman-584743.status create mode 100644 vendor/workerman/workerman/.github/FUNDING.yml create mode 100644 vendor/workerman/workerman/.gitignore create mode 100644 vendor/workerman/workerman/Autoloader.php create mode 100644 vendor/workerman/workerman/Connection/AsyncTcpConnection.php create mode 100644 vendor/workerman/workerman/Connection/AsyncUdpConnection.php create mode 100644 vendor/workerman/workerman/Connection/ConnectionInterface.php create mode 100644 vendor/workerman/workerman/Connection/TcpConnection.php create mode 100644 vendor/workerman/workerman/Connection/UdpConnection.php create mode 100644 vendor/workerman/workerman/Events/Ev.php create mode 100644 vendor/workerman/workerman/Events/Event.php create mode 100644 vendor/workerman/workerman/Events/EventInterface.php create mode 100644 vendor/workerman/workerman/Events/Libevent.php create mode 100644 vendor/workerman/workerman/Events/React/Base.php create mode 100644 vendor/workerman/workerman/Events/React/ExtEventLoop.php create mode 100644 vendor/workerman/workerman/Events/React/ExtLibEventLoop.php create mode 100644 vendor/workerman/workerman/Events/React/StreamSelectLoop.php create mode 100644 vendor/workerman/workerman/Events/Select.php create mode 100644 vendor/workerman/workerman/Events/Swoole.php create mode 100644 vendor/workerman/workerman/Events/Uv.php create mode 100644 vendor/workerman/workerman/Lib/Constants.php create mode 100644 vendor/workerman/workerman/Lib/Timer.php create mode 100644 vendor/workerman/workerman/MIT-LICENSE.txt create mode 100644 vendor/workerman/workerman/Protocols/Frame.php create mode 100644 vendor/workerman/workerman/Protocols/Http.php create mode 100644 vendor/workerman/workerman/Protocols/Http/Chunk.php create mode 100644 vendor/workerman/workerman/Protocols/Http/Request.php create mode 100644 vendor/workerman/workerman/Protocols/Http/Response.php create mode 100644 vendor/workerman/workerman/Protocols/Http/ServerSentEvents.php create mode 100644 vendor/workerman/workerman/Protocols/Http/Session.php create mode 100644 vendor/workerman/workerman/Protocols/Http/Session/FileSessionHandler.php create mode 100644 vendor/workerman/workerman/Protocols/Http/Session/RedisClusterSessionHandler.php create mode 100644 vendor/workerman/workerman/Protocols/Http/Session/RedisSessionHandler.php create mode 100644 vendor/workerman/workerman/Protocols/Http/Session/SessionHandlerInterface.php create mode 100644 vendor/workerman/workerman/Protocols/Http/mime.types create mode 100644 vendor/workerman/workerman/Protocols/ProtocolInterface.php create mode 100644 vendor/workerman/workerman/Protocols/Text.php create mode 100644 vendor/workerman/workerman/Protocols/Websocket.php create mode 100644 vendor/workerman/workerman/Protocols/Ws.php create mode 100644 vendor/workerman/workerman/README.md create mode 100644 vendor/workerman/workerman/Timer.php create mode 100644 vendor/workerman/workerman/Worker.php create mode 100644 vendor/workerman/workerman/composer.json diff --git a/application/extra/chat.php b/application/extra/chat.php new file mode 100644 index 0000000..81d8160 --- /dev/null +++ b/application/extra/chat.php @@ -0,0 +1,22 @@ + [ + 'shop' => [ + 'room_id' => 'admin', + ], + ], + 'basic' => [ + 'allocate' => 'busy', + 'auto_customer_service' => '1', + 'last_customer_service' => '1', + ], + 'system' => [ + 'inside_host' => '127.0.0.1', + 'inside_port' => '9292', + 'port' => '2222', + 'ssl' => 'reverse_proxy', + 'ssl_cert' => '', + 'ssl_key' => '', + ], +]; \ No newline at end of file diff --git a/composer.json b/composer.json index c0a92bc..1c119e9 100755 --- a/composer.json +++ b/composer.json @@ -30,7 +30,8 @@ "ext-curl": "*", "ext-pdo": "*", "ext-bcmath": "*", - "phpseclib/phpseclib": "*" + "phpseclib/phpseclib": "*", + "workerman/phpsocket.io": "^2.2" }, "config": { "preferred-install": "dist", diff --git a/public/.well-known/acme-challenge/YeuNin52_myb0ao7-Q6oVNq1WbWPxd3TYpFzLglr2E4 b/public/.well-known/acme-challenge/YeuNin52_myb0ao7-Q6oVNq1WbWPxd3TYpFzLglr2E4 new file mode 100644 index 0000000..d054c4a --- /dev/null +++ b/public/.well-known/acme-challenge/YeuNin52_myb0ao7-Q6oVNq1WbWPxd3TYpFzLglr2E4 @@ -0,0 +1 @@ +YeuNin52_myb0ao7-Q6oVNq1WbWPxd3TYpFzLglr2E4.Y-Wf0Wz0fQw2z-90a64NwX_EKH1xHYPID6S8FanXT10 \ No newline at end of file diff --git a/public/storage/decorate/20221115/028e21433349279a5bfd75394ee98fe4.png b/public/storage/decorate/20221115/028e21433349279a5bfd75394ee98fe4.png new file mode 100644 index 0000000000000000000000000000000000000000..8d6dc6cbd60b715a74560037eca05e9ae15840db GIT binary patch literal 7505 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 z z^#y?A&WK3cQC38^ZxP5l7imSazGtC{&XqrJ>QVX9=h}Qx(<}&Vm86 zkB9lPbw}zwC=R?6&LvI09Xav(!$OGvrl;o_F>ri1$DV4*+pc#)fiUka_wCCezw0Uq zH;G*@%w+dVk=fj=VKDGZkZIXXF_nTib{O{l0ov4}x}n%-6#;(6)azdpGavW%a(D{+ zbW(tbP+Pw%8$&?O19>G_7KvBv=r;uh%z_N{&RhzP?xS#UIW(vZpn@6I8YI6(_w;`$?hCSK#l`34v{sE+~H;9j3^9_hn8VV0#pY6~p00000NkvXXu0mjfC=4(- literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/045e097320773c23321a2d3a33a9da0b.png b/public/storage/decorate/20221115/045e097320773c23321a2d3a33a9da0b.png new file mode 100644 index 0000000000000000000000000000000000000000..27301ae497b809ce9bcec6cb582a67adba1ffbc8 GIT binary patch literal 308718 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%0AhVG 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%0Dyk~kpit$T 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

)JeyasG|We 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 z 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

-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 qvtR$Zs8G literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/046f2fddfc4f6778ff890a62547d8a1a.png b/public/storage/decorate/20221115/046f2fddfc4f6778ff890a62547d8a1a.png new file mode 100644 index 0000000000000000000000000000000000000000..ca7f77d8564c747294038d29792b72aadd6b4c1c GIT binary patch literal 1896 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 z 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 literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/113eb988efc1fe17cb90cdf5311e5b63.png b/public/storage/decorate/20221115/113eb988efc1fe17cb90cdf5311e5b63.png new file mode 100644 index 0000000000000000000000000000000000000000..5b7c39a60160158521004dee8c251890a2d84e8b GIT binary patch literal 1071 zcmV+~1kn45P)004R>004l5008;`004mK004C`008P>0026e000+ooVrmw00002 zVoOIv0RM-N%)bBt010qNS#tmY79{`x79{~mQY7#I00WmvL_t(|+U;9WZqq;zeQO)> z!3X99bx%-kfGd%pel@)SZBLMJf+i z*~DINqxzdI@q1* zmj#^vTAW*_52TARXBk7lmlN5uP9K0g%1-pFv@Vn<^KWg?|ASrK#;Ucz{Jcf_fYt^Y z0a@CD_y3DD(_CL8KpwS9AAs!B$2BpK$+iVx7Hw18DQN+n`K%zGzoZV+E<~Pc3k#A( zL>-g~uhI}jIg#JZXo)SPf>l`s4y|#uZkN0gj1F1_d?lPZqs*rFZLI5X(f#Brh%AMNh!;-fF5MfMgqul;C9B2FGtvUVRm1Ji6lDL%-bsDQ( z1AsJWwCD&{ivh9IBq<{hsch{SumQ261uQ%RYE*!YhgdwwRRrYDI1tT7Dd66j`%kk` z3UDWc0U%Nq_UagLq8nRc{=!&5>68VexeLLm7!c+z6tLP!Tae~11gBgmRF*Xx;zH6i z59G017C@{@WeNdqr7-~bWhTI_GzI`q6;YrN;7%d8gesM7i~toQ)h^_m097he2yiQn zfkqPG_f*t2BEA6k@-UQ{pi;oXsdjRS z>K<`}ED-Q5z6QzyceDN&%(eOKUqQ@7MwaV^+;RM8OwOX#cGRlzai0 zwoSGQVI?cYE9C5lbLHHuQ`r$HcA@gRZN85ouBv}mbz~Q96MhV-7)Dl3A!K>W<9-k6 z7v1gZBkDvpYMb-}n#wokn_Hjr1{1EndBKHy)b2NuKPNsYsC2TCdJf p$Z0UWzut4Q7xD1$@bGXIzX9$=$Occ-Mfd;!002ovPDHLkV1f+w&Y%DQ literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/18b5f444e19f31e421d0485d45befeb8.gif b/public/storage/decorate/20221115/18b5f444e19f31e421d0485d45befeb8.gif new file mode 100644 index 0000000000000000000000000000000000000000..16fb35fa385a41f893647d94b10ca823ecdd485a GIT binary patch literal 36738 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 ZZQiB*8BD8~_rE(8qhO8z@a;l7{})NfFI@lt literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/215f0aa658e271b3018f2d421bea694f.png b/public/storage/decorate/20221115/215f0aa658e271b3018f2d421bea694f.png new file mode 100644 index 0000000000000000000000000000000000000000..c47094ffb3243904ee3cf39321899d2480e106e1 GIT binary patch literal 4155 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 E0A?Wd*Z=?k literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/26dff8fb21473e219c6f024fc6a5e39a.png b/public/storage/decorate/20221115/26dff8fb21473e219c6f024fc6a5e39a.png new file mode 100644 index 0000000000000000000000000000000000000000..8979127dd65520702b343ece369111194c2041ad GIT binary patch literal 4914 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 literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/283592b4d4f74d84b530035fa7265d73.png b/public/storage/decorate/20221115/283592b4d4f74d84b530035fa7265d73.png new file mode 100644 index 0000000000000000000000000000000000000000..8ff95535ab363979d7f50c9c0da67f300c3540a4 GIT binary patch literal 106575 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%0AN8 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 P00000NkvXXu0mjfgxvKn literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/29559cc94ff33b1f39f570c5f7bc37c1.png b/public/storage/decorate/20221115/29559cc94ff33b1f39f570c5f7bc37c1.png new file mode 100644 index 0000000000000000000000000000000000000000..0de898f5b4d3bb3721e6cc306b5de2e3ebcb4c31 GIT binary patch literal 7447 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 VJcN1+RmlJV002ovPDHLkV1mkZiE97= literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/2a3992a220f306d129ac1659304694bd.gif b/public/storage/decorate/20221115/2a3992a220f306d129ac1659304694bd.gif new file mode 100644 index 0000000000000000000000000000000000000000..207c7999429a4f60a7cc6ecb0c407dc9abf6e621 GIT binary patch literal 37719 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 literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/3c7eb06563d1cf28b4b34bb0d1647659.png b/public/storage/decorate/20221115/3c7eb06563d1cf28b4b34bb0d1647659.png new file mode 100644 index 0000000000000000000000000000000000000000..b067ec39b59388274658cff9578a47a3898239f6 GIT binary patch literal 5626 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 U?(eLo`2YX_07*qoM6N<$f|#+HXaE2J literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/3fbe0412147a5d7f1c3116219ed39d32.png b/public/storage/decorate/20221115/3fbe0412147a5d7f1c3116219ed39d32.png new file mode 100644 index 0000000000000000000000000000000000000000..9007789af679522cba11dd48baeb58cf361cc039 GIT binary patch literal 1516 zcmV004R>004l5008;`004mK004C`008P>0026e000+ooVrmw00002 zVoOIv0RM-N%)bBt010qNS#tmY79{`x79{~mQY7#I00mS@L_t(|+U;9Qa^gr3%@Ueb zZ!{;cIDzpA21N|?uxdB~_ypJ|08Y?w0^kI;SDpqOg->Al1gLMIh;c7^kW{l^jPGU^A?S{sI2& zAKb4C1$^sjch%7c004_OtqKHS(|;*>>?h&sSL_*y>jT*E%XVEF3?E}A3$6ffRNlnN z12H|OGjoQ}x(T>y>LD;ZfnxzQubOj|4Sg6f1w5U|@OcL@|E4Z$j3HEJ+#?NFuO~x1 zh6RHD$G> zGV@bXb1$XbE6*ynX%|AOE6Xu2}uhyBpXtJ>kD$awhc4c#)3!}Cj=C- zfY}{ki3HhlO#x^Th6w@aGJpO=qQXO@y@2oqC@w5gKr$5`>7iSTbaB!GMWm31s62vA zG)&iYIX(a|=1EWs-lJK%bZLK0ssIxS?0U2 z06lFZ*^u94oz({_M`jD41zEn?y;vl3XMF0yD4f<4N1N^`8QiJ?Hwr0K^84{0)O>)Q zrT{#eHT*7tm;AHRe>TECkZA}JhnJ>w9CVEFwJ|TCZjIIQ;xMxLzytrWcmMuZP4H$Q zc&;Kqp)W)+{70_~x2;p3S4oD`sf}3{P(%|g;{EMLLE`PDjN>}Ud{S4B|~>?2q6 z8rfP3y%{UnQv~P>*~XxW`EmVmQ;r{RVpFR01pom1XQ2Sg1!+h2F7LY6CEtuIvo<#;k9nA4}Hw;B*9piD0e0jFpKvZQ5o%=1Fn*uS6?I&MH4 z|G>)!EEio@O*#w~8%{#g+M<&gMr6i1xya4PYGaw*trF-vKbX}It^mvR6%PUw0@t^C zOcsKixZ^;tYW~4BucjnS>RVg5t(5=m=X>5`iK;|v3X0c4@e;ce&wK zL|@?s$EHi>r3QE|^knYRC|p4aSDT9lznUF}LS?Sw{Bl*!(ne-KuH@*ax`svOMcRQl zsJLrbM-gMvFGPe3v$ttaY3WRP74gy32RVyKK|X_k16Bjn&*?Jg{a;IU@|gv|VQy-o zJ~UEIu`bx@spll%9qT5#4C?3-3}kS2fnDSR1U7uvcENM|^h^0?oN>k(0{jEhmg-s3 SCAYi)0000PxmO9xsyp)ir2KUL8p?$fexCH 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 literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/50e077b0a5df1c48dcd9be4e47b03324.png b/public/storage/decorate/20221115/50e077b0a5df1c48dcd9be4e47b03324.png new file mode 100644 index 0000000000000000000000000000000000000000..3fe104a7cac864c5cd13dd6b895d9e3825e7f37e GIT binary patch literal 48025 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 literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/58fe6c2a400d6d18a43949f3d8c58021.png b/public/storage/decorate/20221115/58fe6c2a400d6d18a43949f3d8c58021.png new file mode 100644 index 0000000000000000000000000000000000000000..a832f864603b7635f8494719c0336af2838ae5c8 GIT binary patch literal 4333 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 bYufQIUO^tv)dq1A00000NkvXXu0mjfWAj9~ literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/5cb05c3cb99058ad38477205f9ecdcbb.png b/public/storage/decorate/20221115/5cb05c3cb99058ad38477205f9ecdcbb.png new file mode 100644 index 0000000000000000000000000000000000000000..7eae3caebfe81a1c7a43c14dca5df4bf1f2d2f31 GIT binary patch literal 5334 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 literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/63cbe4b8088a28a129923b65f412fcb2.png b/public/storage/decorate/20221115/63cbe4b8088a28a129923b65f412fcb2.png new file mode 100644 index 0000000000000000000000000000000000000000..693a733c2dbc0dae0d456b126e301e8cb49c0bca GIT binary patch literal 77568 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�GV%dwOW{DS8g;=Kj65gD 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 F{||oF)J*^Y literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/6586d6090fca4fab8fecbaeb53cb4656.png b/public/storage/decorate/20221115/6586d6090fca4fab8fecbaeb53cb4656.png new file mode 100644 index 0000000000000000000000000000000000000000..7d46da83e9276c5d6f4b61318bb7452491253908 GIT binary patch literal 2497 zcmcJR`9G9<8^@_vgB<`*mO6&-ac+S(}QBoDczlK;q_R zNLvtSe>-rF5;_FzPkbV^0tev$GbbzvBr3_@_JLkx$pAO^VQozfK^47_1>oW!#=yz| z1gcIH<=znh1Pc?q&Z^P24QkM(n8Qze_qnRoJ~@a7e6pCNp#r7t2CuRF;U)b{1zT8~hot*h6KvDnuh#<&hoOPvC7}#$1 zur%39w$Ngr-m>sItagXb;c{`8}$0-E>YS1R1g6gc7KvknU_^9j^oyY%|>ql6&XOjA-nJ;EK@z93l6T;a-+us)jF{oK~V6w@qtm!(&mp z4U>7qu(E>kH#hmvc@1ya;Vwnp%X>=g$(6{Hw_)zkiRa?f>5Rx!MkKs`Z^627_gm)q zN`88KWx4pEohYlZP?iCr2CubPp-yfklg7 zSK6N}MBP;mIGSME&=t*?j+GsN-xVAll;3eJ1ZdDrDSk-ycujSl9}T5@-})W$$H~%) zIwVxSxjAss+Vn4nj2TYDK>#hv&v%C`>E?-(cAu)`3h7)&_&S!OvgCaHa27reRh~c# zfl4~1fV`*Jw`bN+i^Ctdss> z!)S}qarw;3xT_m4LPuT+xFwfJ3~(iqa0sZkL9&^Z#fE|-(mF>=)9$4>&wu(a1KE^PKRJj3S6>#Sd;TN{MtRTgaO zMTa~w5}Q?~La*dOnmLXP9;V3lj3QXD44zHQZjOJ(pHcR0W-vF-_Z~bLub~Z@_1!+nK?&!BSTH&?I})0y4RQ=KQQ+LqO%vo+Nb}j?p;~UtWBAC+^X$C z-pLCcJyuLeEShwm|SU#$^HP2v4a?@++=j8}S6}4sn z9&ykK5v=i@=wTT6gBF(5y$9jF%zEch8*cO(U+`m~5sBt>&nh(kY`(BON_wSu>q=Tg zf7tKJKB3`cQkz3D3bIKc*O)xq$qmDP#6Kb_5PyEeEk;8j(nQ&g4&L|Xx)>(GCt+w% z7)bZ@<=ug)w|QFmF}r8kY-eg|lYtg}-3l(g$T75;P6i7OT{9xdNkj`5@@1}`+x4C5H+w>n``ZR0BvQu+BC7tei1-Bl+czREWr zZs5B7ja>xH8TbFnBDLJyDOBZ6|nuZh(dtF#OZ^cS|KdN8%5 z6$qY%$!OeCw#4sr4hc=NWD$9?Xba`nh+6lM+gi@pbj(bJ@QS_!SMx&dkAz|Z)Xot? z>pU@^0w_SjZ}Do^v@1}$O(nQ;bQ30+5FC_<+ZNVyh7eT3zWRq+=XfUy0pQb9Dx-9= zyA9)$OrDkv%mnu>u63fGsK;z?%k<&u^HF6~&(;9$ zl7ByI#i7bJ-0dx53|@>{QlK28IRQ~44n|+60!}Q3A5tNi23SJn7mrfLlo~cMMwLX> z8+J>%-TsqTJ5fu0Lm6a8zTiK`>fqi~sm+Py8yJs8!aMtjO%BC}l0VK32%q+#MFmTW zQsE7SL%nn*0M~ELKRz=&{L_Rv?6RU|vYFGA2Q>eVUzjyiT=B+mYF2N(0l#fuoETCLOZ~>;r)dU7C z%KGZ*+^7$8;eSLn_%2hjp>V6l?pY<$f*h70Y zO^T8IL2r;ysZk^7?---4hfVD=2YblU34>oavK>Sfu|CPKkI#rvO~wXDbN-J{zDLMvwPG{TLl$%U9f3~lW|8sE^<_md|&Po)>s zct=Z+Fm;zYQIP9FHVyvEB8G6_aly0V`%_a7GvWhn`*09U&?J)ZI{agZD}|oxAsPeDYNBV4DfW zhV5$o6@3S~bx)_rZL2D2SZE(LrA_nn_-66{84-I&_5@-USHo5};*9wz%#E#) J6^8DS{{=z|Y8LIrq+;ec!S}LKYwd5J=b(P?msf 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 literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/6e30b6357d3285d7d007ac308e7b2b12.png b/public/storage/decorate/20221115/6e30b6357d3285d7d007ac308e7b2b12.png new file mode 100644 index 0000000000000000000000000000000000000000..4275556eacaab4b63f8fed53c2f9a8f820090c25 GIT binary patch literal 4429 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 T^RrXz00000NkvXXu0mjf4H=Gz literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/70845d2cb5fc68882b27ad3de9a100e0.png b/public/storage/decorate/20221115/70845d2cb5fc68882b27ad3de9a100e0.png new file mode 100644 index 0000000000000000000000000000000000000000..2152b961ffc3938ba2d7eb7de4d639664870ff84 GIT binary patch literal 30069 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 bym$Tr$oKt5Q8E*e00000NkvXXu0mjfwI#F% literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/7e7da5a9fe78d731c217f14922b627bc.png b/public/storage/decorate/20221115/7e7da5a9fe78d731c217f14922b627bc.png new file mode 100644 index 0000000000000000000000000000000000000000..4dd70c6bcf7b6c4cbdee537a99a08d0c6426abeb GIT binary patch literal 5809 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 literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/92bf692d57b8fc2e76815ce6627ef1f9.png b/public/storage/decorate/20221115/92bf692d57b8fc2e76815ce6627ef1f9.png new file mode 100644 index 0000000000000000000000000000000000000000..a3999e78ca883e2ba3758f5d0b26c4b3aff24394 GIT binary patch literal 2469 zcmV;W30n4vP)Px;Ur9tkRCr$PTx*O}FWHbSagHmu+-JF`3Idz$ae znX_jui#xl_va`(m*|~h@%zV$j_xJf;qReA`r&5g{XXY|#mrD3NsigqtfM@|Q1#}k) za({#8;omZ^gEjewiLZ}cKg@kf@2}jQjQjSY?=1Qq1)oQ21qo>yTm*Cq7G^oVuGZU#Zzw6*&9Hat(R&G^d&b;&-S=>u$4NM?8Z6K}#;1x(q zZ3E;m@ImwlI7jL*fZbL)c%&4UyHOe7QYL4F6+noy;N>`PvcqrVl}poyho z(Y_*84OC9M4Y8fziJcuS-SI8sk!_jVJ@`vx@O=PZ7+!Mnk~HZ6auRhw;%|_^k*;OU zM+*SjvaR>424;zcz6(QVlnXu7<*k1$1ZaEzW5#NcB_0AXZ19Emi&UFV4oJfK}DA6buIR+M76I~zOJLdX_bMwXf zim4b#yeHw0B93+4)$()!K;Pch|6|cE0Qi82n??bU1LZ8J_eFLaFzq&NgBw|f01QcG z9;h6MZkb!-0cZg+8^ovNyeE-}eoK`B0`UQamtgRAXGhDE1pqzzOyAD{whLGZVpfF! zeFWky5QkxO92VW6NeA0?vO+r)PK58}<;blOWknJSUbVpRHd1$sTnJ+NkOWp&fGYFO(%UD#S&SMB>`y!5P-}S1(NP%Y0zLA zX#IusxK_}rP~97HYBX*Dz1!K*`jcV_+6uB=g8NakE0mxE#^6^cXH9)R9%RKqsO0&U zUHx;jN&jIOtOc+PK=U{ObQ<73z`oOYSL@a*2avdjct5_YNxJfT5nAIgHr#bPe zT|v2{4p1GSN1y2%L!elfpt=OrB`C15)r+L-Zoclt#$cpJkgTrnR6`>5af>(LB{P0D z1GHS|+CaZtO9<}n0`-4-?bZr=F`>ucS z!u3gcYb~{or0cNEsPSA3uZsAsmA`A}=3GAs5+CX6TMWZ5k-SIJXJIe{21y8MQQaio z5_Hhe{40~5`exS#4!BD54ZWb{= z+@R}D47F(jj~JCp&WkwZx*-%Vxb6oH+5{{Jx+_Fulm}M7CS9#KDB66Q#JOB212=@d zt)VEqfaX%d?r@BYbO>al>y61Zf(mFYRWI6C9iS4vP{a?K_`UgRM$#i7P}Kn{wlQH_ zc~}P8RV7eGY9DVsS1}i>OVB5jJL&+96rc=M80j+Xj&ke__g>J^FCc-+ zhHF#Gbz2jq;X}k2DGDpXII1Y=9xoO1NnDU)M-cA={Ky51q)kKs#n>DH+VR&BXfZ$> zGo*weYX<`k2-qg#)*!}m#L{x?+B^`&VZv1cs2k)PFnEp72`C4UXcKvcN0g(LVRsY& zmS5;OmSybW0Y)0M2F4I=KCzhKoiJJ$Qf3O`t9j`xoP*TfCTRacv29j#C6UD-7J+D;=ql!7j!PoWl5%do8zG4^IC$bBA_q}{ zJGW4=>vtf;54?oWhgh&dHt!g)GX;Jcl&cs_tpzuq56Xt40T)tsgIJ`9h#m(kPY*7M zZvueanGqK#HU%+JNfJCU1I01`)RWc9&WqK{9f8E;Rm@cevm<5NSD1@Ad)6ReT2PLy zAr%`n)4tGnhmNjHE=Jm{=%RB@x71wba5U7EP51_0;g9hv-ybMuul?Sq{aCnaTa zF+y1q#s=(rwSz7f!%_g(Pjol$VxUfXW{(RLD`nbOl8a@X56gND2`~GZAQv-uSj2*f z4$y(Ck!pD9K6f(dhc%Iljd!xTX1As`HTA8l34mO=gT!+p_bO@5CVZQz=VFD2dbT3Qw0EO_3jNVu>G+xbIp7 z2*lqd{<`dNllXWXQfq~v7&TOcDv_v3H~r-UP`id5kCPv;BH66uSO jPRZ~v!GBzCOyK_ka%lRpBKWGz00000NkvXXu0mjfyETAS literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/9464fe770d388c7982df73b2d1b1d457.png b/public/storage/decorate/20221115/9464fe770d388c7982df73b2d1b1d457.png new file mode 100644 index 0000000000000000000000000000000000000000..4f2af5937e3d620836f0c36811329fff10d50615 GIT binary patch literal 3733 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 literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/94eb324f16b6b48e65c4ea1cf7d3c1fd.png b/public/storage/decorate/20221115/94eb324f16b6b48e65c4ea1cf7d3c1fd.png new file mode 100644 index 0000000000000000000000000000000000000000..63b52e23603745a9f1fe32fd0f38f0cf53cfe4c5 GIT binary patch literal 7296 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 literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/9918d064eefa8fb1fda5715db2c248ab.png b/public/storage/decorate/20221115/9918d064eefa8fb1fda5715db2c248ab.png new file mode 100644 index 0000000000000000000000000000000000000000..7a82cb5011d30eeba1dc6ff483b6a486068c9a5f GIT binary patch literal 7434 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 literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/a44ee2a893e6b296efcd167fe0dc246d.png b/public/storage/decorate/20221115/a44ee2a893e6b296efcd167fe0dc246d.png new file mode 100644 index 0000000000000000000000000000000000000000..3ad9a2aeb58caffe9b82ec161dd13f6bcb10cd2f GIT binary patch literal 53279 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 literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/ac3bdfced7c4c5f17f03b48f6d3fa3ec.png b/public/storage/decorate/20221115/ac3bdfced7c4c5f17f03b48f6d3fa3ec.png new file mode 100644 index 0000000000000000000000000000000000000000..d5b7f9ba0970bbad6b60c25ab008eec0bc6e02b9 GIT binary patch literal 3353 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 literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/af8b36bc0745b57e8e18dba7732631cd.png b/public/storage/decorate/20221115/af8b36bc0745b57e8e18dba7732631cd.png new file mode 100644 index 0000000000000000000000000000000000000000..1470edf5951f686e914ca602b0b7e4be2b83d9db GIT binary patch literal 6257 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�( z3HjI{3Qa0mb;YjJkDW2k)Zw2nix|D(x-YHMz4zp%9~z8?n{`^9NLxVAf_FhtaUMb2 zEm-Ylrp{AI8GHBc&n*n3MlTV(*@<4KWh#7M^KNeFz2sMSVY_Z*vvj`ER0=pMUM<`$ zY)k?9Ks7_owJ7jyKWXQ+VuSv@Ae z3Aw`Y(HFv4l?69nOgy=%TRC6)bYbn;hI1PzLcOX_D^zIN!no!{?2(rcq|mBL$E zm`F5vZVL-)^v$)iP=Tg$*=#gkx)#EcN*qd$Tfyk|6@?EwnF3}Kt`?yC__l8&iW)!4 zN(v|f?sjJ6Urbfh`7{bBFwzroq3N!1?#K5#$~^K-nZfYa{Vm;&q%X?bI8Y2rNua*G z2)4OZ$dnk-qffxcU$imR6(>26zg1ho$0l=O6D=zrxC;_I9|ZhNR?81Guiki6jrl~& z?5}DO69?P)(Z8EDY2CkSMd=nB3C%d?Tmb`5Trd2 zh5J*2<`*q%zLm$9oM_QcYukU_n~h$*;^SNNrnu>H0m=>3h<;pmoo@Dz2zp#?g<)y| z%X*X>!p9JVM@?$ebNL;3$2GQ3aq{2PA|@N>+&8{63o2Zu0GA4w>T5VhSKLf8^QRO3 z*s+ONlKWdwutyNY7ewIs-D|&F@RbdpLZ*MwNB{1M$RG8>ckix9XO(jy%BKksP6JRk z`BP2f=cjT%xsdk=pnL=fABeL2`rh^5qmAkRAzuGbikK*o#qVykrIc)=0yGK`8v%vN zb`^pECjbWofi~yMt)&w9+x(IO1fL*aNCA4FphXeH7DYshCL_1(UcWJq8T^Nk|JWe@ YKb-_+OP;nG)&Kwi07*qoM6N<$f>Gzc9RL6T literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/b530150a466c8cda0a4cd5b29e2c8d11.png b/public/storage/decorate/20221115/b530150a466c8cda0a4cd5b29e2c8d11.png new file mode 100644 index 0000000000000000000000000000000000000000..9a8305722b7ba7744d346ec33ae782902a39d700 GIT binary patch literal 189653 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 z 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%0D;`ETcJtn6{&v8uo!;SCc2XSNMhEp?O%vkMR zz*-tz2(Br!js%eW%Zi>c4Y0gb+$nR$v-evJgU@Fge;&eH(H6RaH9dwHJ6qm&VWi&+ z*|HpOmvS|AgYJ3ixWN=-g%s;jGz~SCZUMe7adcVzzLKV$3T__hd^P{I9;apdrS)+fM}d=CWC}udnAsAJx7wUdKj! z3n6CB?9m?X3n(R}iK%!wo(6ihAoUa4zxsRsO=_BB&>oh>=W0q#&_1E$HTdDFU#Zr= z3sh`h;2*Jc7-u7#tnL66sQ28sy7IKv`%b}SF10!BGzGq^KP`zex_-QZ z^=_&N)#|dDV-q<+5*MQ!69&2fNdLva6~Hlg4(wXgfn0B=F0Vd10r!@`CRR5SG)P-2 zHDZ!hAnqakopI`&=0(0Zw@FL5*1tUq7I3$(K9$TP5Iao)&V+St0(UH~BiC^LP^Im~ zig59pe*uEiw|a1yo3e5MHsBcWI_=Hi7U%EJl!Im-1_gQzKk@1@&CjL@*85v6p_P^Ta#q#BM z8Vj$Ytz$jEQxP_JUctI-!dTkU&pfJ)b+~T}E})<{?`ZlQ+9Q-s0MI*ni*Wa?zBSuQ zdKmp3A4?s_sh@05*K|yF(Be_nEu-^T0z6Mz-z-y74w8vS(w}EKTjkV#jJi=$Etv|0 zZWSV1>U|2%_pI!%gK{Gd&owh~`r&0dJ0y5n3i&pdEp30V;*Y%YH6YCj(P!Qz53m1Q z?S!{saV%tA((;YskbS*PbD}0!c3S$+l#jzCPd-{ZMinQ8aLNOW8b`A80HthdW;uF; z9)KN;zY42=Kb2MfD-0r|&Cp}`M1(iN(`rl~{{_4;&a!#}X)A6J!KZ=BnR!~Zxo8Hg z!gu+tdlDqilh3-bk0#E-Sak*;vu|Z077KZ*vwrS!zNO8F>d`2{xQp9@r(DG&*|AS{ zB7c@VDVgoy)$mrTA4!LXN)SHT!0q*jTa8{>3}W%RVHn z)+qFwk7x4FNIL6&1ae8xyIsBLhd;_VSRfcV)auNBG+&#+{TH|r7aKGkHce#Kq5U-` zM3!9o45y2t}0;VjkIztTec2WiGInkNS6_fSgw9Xw9adwg8+<7B8%~$O-YQ zuJ=^HcO%i#72&&rc()#Yg%2HJUF9>asIIhN-Dg|xEUm}Gb9Lp>)<7yjGOD_8mCo*Q zWS2hqekeI+C=2Js`Z;W~ell%-E9)mMyB028qqWs){R~}pwSEdv@x6CHo8X_1!aMWn zSuWk?{NlYIq6}PLZgru6(QmbhD*x8SYF2;}>;qk4L-ys=vQIS?u(s%=HE!r*8E2oe z+$}J1)Y9W!*uRzFK7CM0yNA8~Ez4XDMaGrQVsvmGR962&xzZ1i{*wmNCtPoSE}Xa2 z=4J$Iwkr|xJFV+hI-zx~@`ClhMJG^B4H?`UZ7*Ah9;gkjq=i2bj3$6xL$M9zT1+N? z(ch`CXIhG*pSfH>g_l)!3MpTnSwmW5uS-p;h_ez&4`p`d+3(k`;UuC@U8B!Y0M9;U zBrPdbJzfnfmfMPNXe)VdcI&oW^*NuLhNRW0Ev!Ti_p)~T(!s-G$Fojwe1?KDF1Hl{ zo34W!`?Tzdu##$D_>wHX%@rI2s3V42K3MBOZ@Mc@94Q;UlI=u)7m62MUfe}(e(7n`Hv!gCILBpJHKPVI zWz#w~kTtLzhc$kS_MhvaN=K6QjX>ZLpFB#=M{izri}MQ}hCE{+Ti~0{OdjA$)_3^e z=fj=v_1+gh5nklA_!sLtQy`#%iFd^RPwtl$%vWW5Yw+2m>@lQUj%&Sw4W4TbF5lv7lJ4wN+%^QG8YK#a60 zR)EFIDyyQGy+$9%I1OPKms_4Qm)ktpD7Tu#EPle=C^J1hF}P=9hF?XUBt<@2^)7tC z#sk1JbTE}#O^8wlaP@ z-`$R6Y?3F0)OD9Y)oWBzgIKY3Y%i`{h{@<=-t_%ti;I`$z(Mo6KSpE26p6%|s4O!(#x`CB|`1$NC%x$N#{N^n;dou2CSBM;bloPdxi3HZwsoQh?bL0|dBEIMQbyV{l{Da)SH7Uqv=%XG(M7^crctq$b*%mgBa z`I}7Z<+D1*qpaGkbQCNZ{CD~{O1j5*#0JBnqnx6%)6s#ReaE1gTiiY9WU*}AwAx$t zt?sq3INq-Nw(Ah>9Oc)}u)D*IAxc+jMxN5QpBfAIiGfatYLGG4Z|Zp+p8e*&g1cJ& zxv506dAFNVi_|f^#{FB}_>T+&*VUb`g$t?l z8>s8z0+5=dnMA-kuKp3BETIep8#l^ycwR~w^ju`z%!&8Nv+REmxPLutbguDraLZ8F zu1dB6FtiRei~@;j_-P&2%By5kWj}IJk?+41G4&lHfK-{wNmw6!bV0CJRkXo~= zRYXWEMS8stG6okQ_(AH+SYalYifzw_vK2H|-g_N1Zi4CD<5I>n(&1E`hG~Zgo4$fW zuDI=TH+P-jdc}W?sv8QVUHsXdiFFdxbg8X{2K0@}vSLBwA}_8npe8B?#EsOff>$v{ zpk&r@Ojkl8{3_QHskl>kJ76~RrYE$5CrB=)Oon8KrSI?UGLQ>9*hC+n6PqJCe_^cI zKDEyLbC|@~PT`!#7qOm8fu`2goZL1DBmrC-=(Rb8HMq2h*e_Im7L&*xhkUu&sm2WDRXe+Qiis*gM9 zBgTuwo07SiQq-}9KM;1nesRf4CfZfTUawl|k+-Ga?-ITW{}`O=@{fb21oB70iU8LJ z#U}$n;e?gZpcUA62=SK)sC%py&?@_HZi*dw?sow{H-sT2jRLhT(|i{AYdDyy1Q3ei9+XXdF3-Y4Ar}bQAvf20TTMJKYg=9Oe@30L&-ogWLuXskOJ9 zF6TT8!)qN@;0f(VbyDQuL-I0MS%VF*0iXXJ7I1syEtXya+7igs(a>u2a|;Fc$oG~z zehOgZ4a#H43J#Lit%tawF`$s89(<*J?!q>v3b^laZjvT_*6~3eQhl%a7gxwNWFI(yqPJF;eapTE*76OtK|PoiuqQkxtu?mOkP~~Ss)x2VZx1Pd z&0NkVAm*f@m-4fXv0e9U_aduO{>sMFn%Hpc=6(v3cUsq99Iyl`<j;LOR3 zuu%ummJ{IZQGkN3b_ppwJM8%}dnm?)Vu<&OROQ;KxYtCT_M$M`&^mneoqf2GS zwnQBD^{$DGFwC5Ei%a5{ueM*?q5w6QghGf!U8heBjBF>{Ar}79F{DQb9?Blu)8U+s zR*3RN97#tPVUtNIFDt8o-1OKBrDY`-onPbhSNGttZ-v26K9L&KZ<4>&MJuHw)QYpD z&+>Ke((BLwihWuE9P0S2L;0QjQ-bljBpfKmSz zBc)!S%t)lQz%Rn^*5J)gjklb#%Lu^uhwbBYBsK{(Jn?T=WkrmL+N z%z{5NjnBxFd_O%sg9dC`?kAYyx%PM4qv49vj?cV|BR|iHvV! zsQ~Jlh~>(6DlVG?KAtih&OD&O3(7hFSr&P2vV=Wxwvs5|Ax#q)Zr2pQYD*jegc^va zwzR>5ig8@pa$2?GIWM-<6yaZGNpGz5Sa^r48PgfeYi*k9T zZ2@Ii4ek<}j&&eqzUAMa#YO!ElN;|x3zA85_(con*Sllwa+HIIS^veem z-rxZFD)^E38^7}9DaTp?+6I-&2D!+4y{YqG4L8>?KdQhaAaP!3&!d=<#+&QR1@3M1 z>qjaL?W^YRHGOK5DY-jBX3|P6ldDTvKN={Ao+V$SK5AjkdQx$1)@S;bV$9G@0P13* ze*|FXczYGcwlVivu+kH$Yuvlb2LWpC7pc`hAXb=1%XI2H8u(}}Okf3AxGz6a+KxOm zWsY819%5W`9=JfhMCg+FJDwlm7BD>z9eC!dE!s1{%= aCRe|P|@4)vwW)NMSY@7 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℞L|k$^{!T%!>D25T49LrWQSJ-z828 z&*Rf3?9_8;d&n3m?~9+;mg0O@c<)lL3yA*M z#=Zaf$6rxTA1?_n!y7`(&JTjgS($ZhPwO_FNm)qd?~qRtL4@_E^fMr0$Rt{A+jtts zkoQAu~Xb`H*c?t*6b>E8aiAkcGXEA-8I$_LQOn$8Z9mv4)r z4<@KGm#|yLqmHC+eh{^DrgH9|ntX=R(j;jOr&wTwY67_4$Hq|}u7!79QBKZw@z>$D$%=oN{rHjqC{kWed8Z*P#LpzqyFMDfx>Ty z()x#FrhX}P?Yc$B^;YV8az(HLr5D5_wPj;{N9cKlFalwVQ8K2IbuPKTQ zWuO?hgj``))YcySI00X470bCIhs8T%#g=&?%BZEi_1|j`)kwBWuHas86UjsVsi@wr z6}WMAFIQ7Q-xCDgFN|I)%%Z~bS3)sPZFy1~FL|B81+(Gv2sHVqMK|@CbY=k2uROVs zHbnvQhxDp@+29$~WFJRC(F~zk;OC@RJuyl&9$ZF%?R(Pci?q?M?3_&5^t`6HdZ@dP z@9P(J3BF2oBtxEao1S$B&C*5vGuwX=cYdF=Ix?!wx=l?!duy+4`Wli`7tocD78svC z3tbUID*3iL1W658m_$8_Vj;OCd%zDNcgW#poT0G9<`B$w#LOxZ^g(*QmtL?5-hpj+ zmGt2|*)~d3s>kjj>LcoBYAf$_P0_8NGilWi^}AEM)M*Gt1#raHkG_qz&=sWXNB|r| z;aoOvdDrWD<>F`(N9F(&>}CDL->4!wWNdGG4AWN{12wjt2ORT+VT9u)jue9RD$K!1B8XI zp`n^!>R1Dxl0Y}JSBCP7dJhtkFt4OZs=#MF*hw!$-VESM6@U;nNLcl|gvIzQ*acKj zY&U&)MyB{m$V@1FIjCC|P{&g(8Wo^#*28Xsc2GAgOUuSEuvg6%?yVLQZ--)%?@0SB zK|HY$HzjkCv+nQZQ6cb}$0?@+w7+%(B$9I2EYU> zw2e(VF!(R{;Ic^4sYN;yS%-7x5FtwdxRGgh!ze)Ic5cj_h@3S$!=)>$JA2IP1o8d{WqGT-E z%C~6!O8eqpLq56PJy~gR*}aW+8T?iu)XRDk9-IEh_?=H1t?Iu;YmU=-RUJ+aZR5|R z$1cm6$LTq{_NH~M>7e&NS$P%O&H|)BPgeABV~!ceycTA%w60i?9H4+RBQ^kc3=k^g z@f;yg)zlU97PQA3m#%QH5#jrwzW z(FyyWy!p-tJKkdEx!>j;`0y^}(q-way)gn(Rsyq@JH&r1?Oes78FE{>AN&sdmYj+$ zZIY_PER4s`b;D4(ObcNP)nMw3ep&J~zO7?t*P}2saZ6^aZEG=kEO|SXeN|)3nfG?e z5~$M1IiAF5dH0<(C%ioQRp&`1RR7*Hk&(jUO%N|sIy3zRa!!(kaaMNHwk%NjmMXXr zFbJzXxN+2C(rf%RHt@1z&IzkAVYvE(A~Z8t@97C{Mz>$n+UE%1_uD`XF}q6?g=*|AR6Ps^&4&%{oFjWh2PS{NMO_=dJF zF~$a!$yX&_9aNm8t6r8?6%tA(m0r}TivPMnFl+CKMzJn?*OZnqk#u)A8K;t2foIdE zpkFloSDQKon}`C;s(?_Z*XvDtdjTG;jS2k;rjTFGE4VcahI=M9~?8OBi5*kf{c00=xDmkAL;5IyWiNHsO?rO+n}wMV4a6( zf9T_e*}e|)q~X@atd-a@YSU%*E__M7NhLH>SeK-5i$%Tzg3HpqSeEvpGMxxGuTnu3 zQh;&<(Nh#r;LtjCD9>BMk-r1^R9|=Bdvt09s`a}zRI*vHokr<5ff^%p1tUJT;Ew)Z zV4WL_l)^6Hph;0rTjgHOLHRMhZ*{qxg z`=&G+HE7jPQz~-bry%$>%hTt>RPDl>JmYhhL}O3K8vIg230}V z1M@ff2WmY;rwqwUL5p!ry|YxkC{+REAsgNeAoT@?yDXP=3{4x!strv~UOWToYBQUz z0ixeK|7>xV>BZTg8(wM(8)e6j>J%YF-$cshAbSqZeYOf|R7JX8OH8X6|e_Bd{v7~&ozEVS$oNz}@_%jKFs4!^^Kl)6=&_>Z$S5 z3Qt)_3R132S8O#t4hiH`@}7^o>nAjspY7&*_X6MyZi)~_6OMbnIP-V%!H!Zjw&I(< zRN@}<&T^eJxkpOHNFl2q>D(VDTbypaZKI{p=Q8GOW7HbPl1feLLA;gE#lJYB!u&Sd zg$5=7JF|*_W87%u*e@@+Z8P#+b0-Xw7kMyN6U!Aq@_elZul}n>F~+t3@vlFG^XYWT zKYCRn>!C94-bUp^C*mKuD`K~kLl3uh1zlZoSjMP3n@%gTGn@yPVMG__P{=U(40j?U z))Th#yxlqkj67#}`j=2UHf_w0)pwWq#_ddPRNDk#Me8>n3d-YqZ9|$vPhQnol@$^4 zAX8s8aWlVa7K=?+P;ljfe3S*jXC*EPY>9@XNPZ0jA?#ib$u@?lty7e!<@}I zJL^?D$%H@}w!qZ{Kf3eOtgM(ATfUl~V~mQ!#+A(C_rw6Aie*sF$?=rS;YEI>_y{L>M2Gu26a;B zBrmb+UL&Wgv+Z5RU|A|LzW4ZC?t9yPa!i|kI$r~*7Xkgp}5HRE8$pNclyR$%6EXQ1=ZGHLrY(D}vd3K^k(6WNBdS%L*; z+~mlOBeB_&bKNG{;h)W9PeE{sA>~DBRn~fDw7HAws)*}eyq*khKoI9~(_k)j36#?r zf0`eVu&Zj;f&)Mm2oX?J#S&PG4+9zT2CQCEIiOw|3Jui1G z0RKINm@mXAIU$#%$VHs`$Wb6Z~x`xKnJ|2BV<6Q8VUJdJW}<5pXm-D;+N2EeCq z_3>2_-z$n+F@FT>Zu{L4o1i!yrfYsdLxNdbr2qmCl1OIoI9x6SK!dpRfXC!Tg*Z)r7u z){_TXTU*tU#_tKBhpqO9Ol0_!|5l$j$1$hEhrS_nL+fscbJMR{oO^v(Am8PrheG#j z-7+YD3L%QtP2#-OIj=3|pC(|o)4ng}e~P8gMc;=EeAMn+ANiua#+h{IJ@Gq1we5k2 zUt5ZNPDiuv$)EPozOGKb=IO`Usc-h(=l%LF*BRyS3(NoPamoXFex93rK07ALM(r|t zyv>9+L)2vTS*JRgy;nPTe19k3Q_o|YKmPT{TX_C&xxznl+)46Isk)S`be{X2^6aSu zy)*0S{AVNoH;x0hZ~gTIT6Q@1tE64yeV?d*bgW-X?fc^5L}hRHp7y!l(SF>gb4R19 z$&Y3Fu;E9|*yvl0{-D=<)9t4n^FQO+|Cf)JhuOAWo zyct(}JcaLMG3wP&`d%@jpZcOui ziErJJ>Z7N!RC2<5rhn))?Ed#m6o5*40xI|EQ`toIMC} zNA0a#KT{!2Kl_rAy-a<>%$Kfs&&rd%w8hz<_Ot0@kF ze0o+w{i$MVpR4a2*W3AUiV7GjV)Px^y8GQ}Wbp(JSg{(T4U>OV zTm8YFnJB_c^3d3OJwfOYSDyW+zjj+z|B%m3uCaH1*TA@{#uIdIu*J_KCe5=uXdte#=(0B;dquW?qHJ^ENhoBy?+t^FSHfTUC-PCfN$_d}vA&$;WGRhpG zkreWC#bb4FjwElUqR|8zX6*qJVieJna3|VH8J0|! z_^Je(j<*$#I;fuTR(xA5zt>c_UKxp?=*hF3V{)9flGlo~o-I&^OswC{U|qUiq}RSn4TzIVCDi{FyPW9r0Ao3$HQgrfWQy2^nWtNGZtijlSL2G0^g)I}S=2Eol5 zZphR-9&+TM1TB+mWwhyiEUev>Hr5Ya)CKEyEq?lI^o z)nUJOUX4RT?!HI^Ndhy(df``iw0uu4h}|QO9JSj_7$PI(sUpT~O?-4N(=X(el?l*7 zADGm~nHodOa)B5WHn-;ZrK^g|V&%>jg+*r8AeuI3O%kGC&mh%kc=39rpmJ1{3P(edZcR>gbgtNnCPyzEvLF1!d+RZJ_6zF6TN_nSWuZBF zRJl-dc#m~TB4N_ox!I*tOiqDgHf_TlINlP7?cZ36RBH>i9WX#2W#$v$r~eWCV0u2>6gBqiF?r?$$b4%7}9HYi*!6$ zPE+yN(wDO$cS5nwDg+XSH4We{gAR^=S5m&jHenVQRnh0E>)u}Zi{Q%|d6lpZ-7+~S z&4g3f93WgO;>h)UW>Sbss00S;u|oFJ>mwM!<5hPc1jNh0uNJw`>jLbxiW$9-#P#OX z`#f?BNDT&>PCw(ls$njKW9nk)zE(VHD5^CirW8P_=W?M4r|*_O=8c=Ic$AENT-c=D zYzn8ec^C^cx9A0r!%vczB%w(HVmKQc$IvIl!MpkoeiD5ZwMgO$ST$SVP7g4B_aijX zSc<56mm-Jg*6IP;C|w|f2aEzD2*Rjb(s<49ny@PhQWRN% zsNvsM@V4IW_@KkSIe<25vVFO-tod z;FpB~dO%Nd0|_6djA8ge$!!X0Y-L>eBXNNFu~##jEQTnC4hz#D2mRekWAKk2?a-|j zG2p*>P&ee*JKZWOagk28I4#8DQx$PwUGS13&Wf+y03 zGl~U(SuXaZy0HtO2Y1iy(1{lwTU};d>~8$6q{dr|RalKm-fmVG|sxYt*t3pynC+%t$sbW%3_0=0>wRSsk~X#NF-TIBrIQu+<6Y2E zF$wUaEm3F*NNd3BuR^l0J>@U=n!T0@fC@9`wg|-y&tkjLmA|;jL;=;HEBT@>Q^&6S zQxCHGz|7<2L)4F_jw)R-A@fKc7&Ao+x(y~gL64}Fw6ZPiHn2|ikYLu6_a#UixM34s z&8j%-pC|uj<L2j4-nia00!}=kws+-D!>XfBctz)=az#N9!2mW1JOgCvX5Fd;_S+WYj zDe}vek<<$3S_|h8)EEaT&3Uf$L}&KGtXc$OL&Jm_@P&D_#jW0~iAie4*O>1hU#Q*c zBkgOo0juPe7(|`P&+8@I1ge@vFX8GgJ6$^q9?FebTn}@*#J6NtGbC|>QLoQ>un!8Y zwoX|yQ<2v^Jz^ymdH4v4+siRzo^A0P(E_CI>VxA!UyMCCgUiV<7CA5&Zzx)_gCMWG ziT4H!&dg{mAXZ_%Y~x`BV=%RXU0nuyaD(2VH!3d9$%1|vvXUdg(-YLKZmMYCtMTIE zZJf>XvN)};xCnVthv1u~r;`=Bw%p+?@laGk2Qb}YioqSpd~i^OXOpB;>Mbx5cz2z- z)Y~Y~5pZmD)OK(r1wEY|q_$Wraa-8vM-V4dNFs~`=_7UmKN4S@4Mi6w8x-ReFRP%9 zD!yBc1Mp3fj@l43>&8tcXws(DF_Ldj(DE#fb@q-oUDBTVM;uWLz1VGjA^t_@6GP&r zviY?5s^fEXj1*IiWDDQ4iigxawzV~H4aKuk9E$lWjNmvyomPBPtA#gIkafkIwadr2=~ z>%_TWM%nR_eW99atC^aKs6}7)Ox;x8GTOZGMesppP~kIeLQ3MU3i|Y&tL&w&U(aq; z{H$S1V(4x8ky<|O>|&Sv3xbfgnv4n=vR#3?9(CgmHEBr!`%W8udlscw3pZ;aU_%j=q!s{qo89Kq9oUL`}NjO~WPT=)kKDeKVR z)7En1t#!cafSV3yo5FzdE!@0jkTbTal`O(5CJ<}vS$gzYJQS{D1-0IC7RfJahJrFq zWWc`6ub}CLPtGqGm$(`IwWl%o=qlEuSclG4b$L#2C=~-jsNxgl zh>8|AK{4O#ZCQ}kxSW;NxD;$Jog&2GGomAvU+jnCo^k>+MF%yx6U)bRVkiO28FLu3 zY=Vi+(i`F+{gXHlH9m2p?6BlTuBgAf(QxC0`Ts0ly+FalIo*s)xYPvDa+=jk*;X^3 z)97W~uq{A{#ghCeoJr7nT{Pp}+`_6ku-;eId|ZeO93!!(mKqhl<<1o9A^%Z-8U6Lu z(jgYM6}1JT6`>43*95BzUtwl1;VCHv_zdQ>P-jZom+)IfTNQMQ5$*sczF??Eg!-ju zu1M5G3BJqeF(X4Ai|Pnku&ItqS@2!@sm_(AoKzXt_X-(aO9NAvTDY6lJtKUbDy|q= zR8eF&RZ_YUW^h8(m|OA(^&sw`H*8&X?O?3Y&r`b$Rlz=}C4;B- zCDvp^-J)Xn{7x|Oniw&`D=F~0B_#7uER84MLWCr4VTEm0cGuZixV7j3Jb48>Cxy(M@s6Wr_gea` zacC{BANDv)`RPMyR~Fqp*2_Op+$V2xbKdy#;=v5qUl^gQODq&+rK9d3k_%4iiBF0z zlf$ej6f*d{5aBlP;K8<9n*KCM;=Xf!>;o!h}odG1BI&8JRl=e8UGu3@J#c6grt;+SW=x zSOLMMLPXKY@CnAZ)kWT>Mcv8OrYt#OfGmQ9e`I%xN4UCC4OlZ}FO37A} zi1hfv;cGdCGY3klWIZ%>>BSzyqVhU+H&m%hXE6WQ@Bd2NA%aN}k?cwQ3WBs{5O4+` zt2?3&;02UIm$$0r1yw+aRE?kBR*U>Y4=YRIB7&tSK*$xt^ZU4xV72h~L0ggvKf9G< zMTJlW-cYhSJTIeoa|^pTi$L%+>j3Iz+*_~7mnz8wu#73`S`!9rS^lxq^AuVXATtq-(&}GS^k$!Wg@ZO##R=JcHe3fX@Sj^bO9^y*Tg-7K}@FQK3#L58h z7itaqde0YnqcvzX)f}RdF1~oK`ZYZYxC00EK|^o0a2b~v2$--F+q7yuCD8bXe-rnH z>M4`4zvWF*<()m(?6r^W4P#uJQ2{}9Vny|6(Qq2uc63F)wt)#Im{+O-QZsdxK4O?) z<^sjpkn3F+od^+s+#q-=O>Zz;={D?9RNegd-~T0}j-FJS1hIn01V>e}bY&Z=EW}(; zh&WKo2T};knX^NuecYN!QUI^SfY}B~5)-%%Km<|Stk5BLUD_=bw-6J42hz8KPsbI0 z%^QF)sla|M!O&fKO@pv=tQZ1hlYlvEyt~QqD1JDI-uf0UH}I&p(L|#?Az;#+H%>c9 zb%s^C-L=|PBeSM9+IhgmrfUVbrdNp#)rWO(*d49gKxgzdIlj!YP~Rzpd9LA1;fHE% zbX42TOT2F8Z(_tul0|n30mqs(D=ZiUT_`qY=PF&HbeUH)T!GtWRyS2onZ%T>csdc_ z*ADv~9}nX?x$HRX9S`Eft6X#vslpoVID|S(hL0=(Wm0R!;B|i^Z?C9$!Cnzl^PjgeGKzk z!K3lRJlbZ<#!bcnBU@2@0s;vrm-CpJZx0;bbX_S%{M>fA!4LiA2u^|zqi>t+)8Y*> z?oL|r`>s_bjQNRuCvtB>27SOoXo8rTbuzK*bPN$=&a6K<=8CgU7E`x=yjoRYE z%^oiD!Q+8}ab|C`c^esO9h1{Xkd0kGH!xNwI{x)i?xYE8b-)P=RFD4q@4t^JOKYIi zJLb2ewH3T>z+ePqC?_Xi*$i%C4UG=7bG6u=tIqa$Kr=0#%npRQ2<>DCk`2x`ed={7 z&TdB48I|dX_smt1I3+Kq?CnqI?_w2La+r{OIOOj4w%;K^*pNS))s~<^M%)A!`VH8y z!H{vE0GHB#7J5T5o9)|Jr>nM8m^X@}(Yy;6G5eSYleQHp;K~7!4!1%Zr)C{%d#v8* zV9p$#035u*!Oj=^C@}W$tD~EpzzN9>*miU(!3mrr9}}B~rcU9tVO!iZ6fw*Fj=arG zvd!3tx{A#a@K$(a^n`Pe!_WGB&T0$Q>@)Jhgb9O_;fHvsRjejRYrDk;MAMZ9FX?Qw zZ+boDmS#xleTaj3l-~Nv)NWg4Lt^I+yKTp>UEkdv`=ZqzACHhNqBr4=_;yD`6U+9o zwVLPjYMae}Y(KGQ80{epl|*yDnN&bkmd}pu)qOrVHqMhq+Zb@_S8iYWrKyXF6ZUVm zlM{XI(X65S@P%VUpZI=sw4F*H=Fs^xiSTZid42nG)|K`yt#&WgT>|vmTfPps{`>F0 zKR`@RDcf0@syT+~^R(+~1;^Qf9p1HrNaN$^33DF520P9KY)hm+uAuvn2HKg`{;MD8A9^?9#H!Cr^r^`k2&N42w4jp#_5~Fb_6-XI2pK)_oEO)3Fo-jM?Cx1 zbcoK&0kXq=F;dz4`WWa#9i6va<~{O^w~H+T9Fhb`| zQ@~2(rk{_kAI6pwhZ*~wPqTZg*-j%U%tiD4GeHja%=1u`i6ryC*{J# zzSidruH%FC_Q3q@mzXEXPu%flM(Z>?`b?)jv@Jt7y2qDW%$j{jYa+Cz+n;^s0}b~$ zIbiXI{ihJ5xu5lRl6N0>jPEv9>Gt@$mGm8aNW&R_TTGAc{$9viI%aPEuit-<8lb zUJ^0N=j6U*;wIZa*!4TNM}q!VHBXrP0S9{p@_CpXV*wXrfD-M?LYt>SRsIL6oY zNcGvd8^j>%DZe*b+Pm-b_?j;>%(Opn{^rzw>UaXRpJD53kUXdVAEx}HH2#aG_>Uex zC+ANTT0b++FEq{d&o=(-GunQ0b8zf;SE#+_xo=S7N3Q?F#}_wJr!@Ve$NvLy WZX&wmaWJp|0000PyA07*naRCr$HeFu0{W!m0tqDvARq$LJ47jhBGwhf_93pi?CLHmuB?5H zAc8KSpsNcC7DN=VQv^{u2+{>9(xry0Nemd0OUhQ5j2!Q#|d4- zUW<;sx&?dPZtNX6P%HSoKCbqAn%MH?dVQM(gLU9a06hU*TEp|(2VlJptPTXQuwOsz zR1IIh+L!yU1F?L$-rTBTD1adVIs&*@bJ7891@Nh^VP2m;+Ar0nVhx;lu^zhIRF^N; zqpZLk&~U#FWYoZOoc|>>tknW|#}9nmub<{R{|i>_3KtcKHEZ-*0U!RN>-al>l&Vej zq8)u&(=f?m!+$a|w4#f3*NXzg>eYIp-;0s3;1TGkbFm)oyzZkRSJN@o?#AoA25GtH zb*(T?zMw$px~{EQf%`Qbw7i0Enxp$^Fi+Q>+0G z^c$dkQWNt$Zy;!pmw$&Bq2sBG7>w1#v)9ZuG`!UBDm<%c8Uw^?kMjaz?p!@0DFN?; z!P)=qF()S<_YNJZd8$i>Y6J20*LqBJB<2ISwz@a}Uv}PNryIB4aD(Qk&T~}@h#&|H zp`&kgZu-CYoaIgruCERlRR)6UD6uxa1Tg4-F+tDg(Z0zm#7$LIQ&j?jhI!dHm<8bO z^O@=YfpcdM7=&R}G2m4KV##8Cyaqh^yCS5?S1EgYE(gYV$JJy zJYrb){C0ufDgbPR_WKFe0=kZpk~|a_=fLAB0<-}9J`XetV6|w_b>`sa4}5 zUY`e9S^MD+?;F4rJl@F$e6n`lz4My!3pp z*A0us3Qe;JAf*x$_8lrXP{WRZhHjPRrYZ&Eo3HeV(4>%aQHRUzz?tkFXxua!?b%Q~8$O>8k&%(8UAuNE*Pl64fY0aeM0#3pxwOkw0;|<75@MmgQ(#oe zx)l<^uj|Mde53Zm*+_KO%PwE8+nhz%jEk5_J$8Hpt{L16>FMm0K`AjS!WY9=Hk-42ui>ZYICSdQPh%?mH{-0AUG$Yc5;~?<^R`twEj#BZT3qHr zkDf;NOep7vqpKAFB(TTh5fDpCN^t!6ahy1DLWoaLC<#1Ldi3al zUcGvuZr!@b$tlA8j}IU{tphw>Hv$1aY}N=vRh@@1*K|B`?af++G_4Sb1q<{?KuvITqg>=8h&zWQpkZQE83d+UwWXqu$VY3ko8uMx!@;s{t%?AzrZ4JC) zAU@N_LBrD*6afIa1sgDIc=vJuoQvq{JE|e|oe0P*$LdR=&NFxbj?!LZ29-++7mSO!8x0GtgJGZ0D=sCuY6Xb*n+ z=_esLRgqcEnXkw12nN9-5R@3&44%7q@nW=S(E`_9cO4=kBJkk{tB_EO&4&b|2zGm9 zIXAb8L@I_IO>ekC%Qm0)TOdBwGXXqb#fw+z@DrytW5h$9d{eF9EC0oz87Si&f13u9yE+H31=p9Ro|1_sgh_H>eQ(ty8hU)V~C53 z6ECVV+oC)z&Vz$$im&wabTRZZXU@cBmtBTyuDM3Qm^XI~qO3+^A|=CSkA&3}0ESI4 z4cRU~(uWS!41*S$H~MnEJ{&sU3;TjqJka6D$B;W~!)~_-@u*5d31;SEnV`uqRunJr zIyACheYqS~n*%8+DMG~32UK2wDX>%SE{{=QD0i2DQZgDhZj9{gY|NN316N#e1$y`H zT?$5|r3{Sfswo|~@8;XIcPj>BuD<$0_M$d!b_g9hH5Edg&GV>8ov6=Lj)?zPMw-U? z^yzGDTvHD_c7Bc#5A~LKfnJk}sLe(`ly?*m{G4D=)e#IzMzdzkuw%y#eEjjpxb3#v z(56irQF(J_uS85lpHj(CU??>eCV#HId8k&}_giWszMQK!*L7U5j%dH-N8EC2R{=p0 zD3ohMRZ}P^3OoWrAe1yreRVM!H!>==2anFf9d~Eo;6eHuW$6vG6r2kT0!WotuU$L&I}_xLtd(91x#NsrH(>XmN{8SX`_Lr zOWUA91DW^Zk3Wv?-MixtfB1vAyi|*COx}e?4cox!EQHM#DPXAVZ5V{ye#@Pj&|Fm0 zmvi)nJ{`wuy69t%-hmr#ZYSvlrL&dms0d@$(dU{tiKcvi5{SB*WBPv

    F(O6c%M8 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 literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/c25fb96bad1d53e61afb25cc9fe0b499.gif b/public/storage/decorate/20221115/c25fb96bad1d53e61afb25cc9fe0b499.gif new file mode 100644 index 0000000000000000000000000000000000000000..ce504aa678383c16d3346f6935c8b0bd629e0df2 GIT binary patch literal 36656 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 literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/c47b048175b325b1e78f837a3b696794.png b/public/storage/decorate/20221115/c47b048175b325b1e78f837a3b696794.png new file mode 100644 index 0000000000000000000000000000000000000000..4659d8f6228a36f36e1cee9a3642096bf062adc5 GIT binary patch literal 1454 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 literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/d2107905b46fb6aabd98b6d75dff0b2f.gif b/public/storage/decorate/20221115/d2107905b46fb6aabd98b6d75dff0b2f.gif new file mode 100644 index 0000000000000000000000000000000000000000..9ef97e84ab0b937a4530bbb95540573ffa58ad78 GIT binary patch literal 37252 zcmeHwcTiK^yKWjG1r$OLEri|!q7+d>3ta+&B27A>R}~a73B5@u(gX~>BV9oB3%%+G z2#AV)G!;=45ETUR#$P%2+*5ut=Z`yc=MD)oBw?++*CuP;XFc!xtY;e<6ErkkZ~z?O zI{@&D`G|7ZtvtP3t^MuciSKQiJ549QcW7+90&cuQZp?FS&Wdc#3vG`oZcU4C%u9Tk zklB1G|F!Sf=8I#S&rg1Ns=l=(`(;UUuh9JGtqZ>>4hM-Be`Z?m=MwjCJNziq+pW>v zqnqqDnC`Tg>~>mw@51jD+kdNZ{Lx~)`RKw{%f%lpj$55}zoK0a5i@IJ^4{h52^AUopco$K3Wo@@6#*Sh?6JKcZ$;s3oRoDQdl>XK;gRL2}t(W>+1J)a3)}JPq zf!m{gU;AA?_FVbccm3#PHlAeeKS|#m%Kki&wK-L|H+AR7Uxhob)4zX+-uaZa^DcXLBk#v($zFf$ z{&4-)OzGZC>CdMPU!K?Pzo^-HQSqy{X>YXo*HFj)`gxS`d8=v{Da-M zHM?6?KNq|9K0e&r?)deD@$+f#{@mcNnUSCKj}Kl?eOvDNxze}4I`;F; zK1?0Fo!?)7zP~f^bMy7j-T9x}GY22v{QR==^T*1;mk$T~YX{%9e(i1l`nd=A|N0@e z3t5e^f8lxSq#q8@J=7I_L_X`Ns3O|K)aSwF$&|<#!_Xu-Q z#$x`~BFy&`R_FI0Ft+AIj9y@f2S!~$TKd{Wxg}8faS?Lr0aW>|=Q&>`1Sdf;o^3|(KSC1(LhIlEfXliOI z<5ZPZRTY^H6hk8dm=~xR5Gwx91L%8%x`lWLg?R@CV16Ia#WnD9*soJq=2-uJ5&l8{ zcG!SWrN3Q}l3Sp^a=1&7vWgP!_eK4)p}F~~e+=NiZ0Ya+yYcV;OlX*u$NwJff7v+H zIwHtJ*~%j{@N$To2eY~O?-K=S>4kW>gaw9J2L}56^S?+W1%?HNk^+M;s>hU6Ff!&Y zZr%aEKas^UdzhPR83%-hxdga*80(+<{fUydx4V{(o~p(P6*WD=34Ik613eub4NU`_ z&T$+;MMqurm%7H^&c^JkALw@3-yAG7|KM*wrKhcG8K@Yli5{kw7Brs>sRwHUp$|CHaj!@bZT{5F{h+I} z<9>TvYfE!e+J;veJ@b`rV?!f;;(nIoY?fGBeU?X}3~Sl9Lh>;^Sgt zqNx<}&8QoZ*RMr{U%hfUEHorIC@{d^&)3JBE0RROS04qQWAPE4#4gf%y(2m@n2o5kx z&P)c+h>sV;g)Pv;`cgF-pguyjwSV@eu?g#D8L9Nev7^=0YTAOGg=rYUTLre8?xR_L zb|72Gmr}C?VW}ehJXP|fp`aIKg(AyaUr8(_q`vV^ftC{N$ESuvizN!3)dRYcc-}LV zpxjD`u`3JW&A@SznH6UJR(m*bj$xwbmI%K5?5)Qh%r}|RD!~DW^ugI%+kz)h!!;CF zP?J!6Dvzc(*@{EK)Vcbimtx0Vh!d3~-{^g#a$^9Bf0zP>opp+SNNG#Qs~~wbHcITJ z1?vJKx|R%QAbm-3nfo?!flB>Ap$A63)Qx7Rur(aWca%AnR`RYo0_eBt52;pfSW7|{ zL8lbYufJ?bQpU|D^L_2KGKqrIcrPic4Fl-1IV(eeo8WZIXlfB8<1ZEtME@W=*J&&v z%EBFn7jh4pgK_Wbh`EY+qy+Z~^0mg}69k%#paOojGyn*uo$Dg#m8CN%z`HRl9=YFH z5{K5Q38thU(wY&DBt<1600vkZAoOUAWfCP~ zhH4^4dRt8p0B@WO5T!MczK zt4}uSz!mq!NT1HdP4=Lm^;X_)KD-{K?vZbsxua!HdHq4c=bI>gbI20_a%IbTA3#Dq1wBReX%n3)C;IzyH z@Zx-t-fVR?#S{p(Qcm>5SL!{a9mvC+JV8#hn7raPiCaHs17YRJwT=CmkQBO!Q_lblCVcV43?$cX-D|;gB+X4;VkQelXbc8heX@dnF1%{Mu3tJpn3~ zFk&pAuBYC?`I6WcdLyCv^EsR{%4Qy5K&$P>T{+N^m{Fu6X#=EKCu4M1fgPcSWaoUe zU?R&l?$r|jnhl9YDt42Tq{O6xbmG8yn^dH7xM~6jh5@jofF6p0Q||yW@VBNn=V0v0 z-4jOqdRU@FO6)u)nk^WgE)KHTV1ks}G#)Hy;ouEaz&)9Q3aHO9;%;loH9Ex=R#^`6 ztM`ko+_b>S(B*>*ETIB!+9ioB2;2q(;<74GBp=%vJSgCv70k(fR38UqA&_0*3KAmc zO%)3JCkcW+I|8hPaw55!(@ae)me=#@wvG`tQN#5^{e3ict*WeMu{H?g7}C#a-ciHC zYfq;PqJ67+KD111t$mb6U&O|8TMOOsLqFCMT)*FaWy?yje%^AZef|gH)BPaskV(hZ z0xM%|%(VUR!=1Oa_rwe6R67C?cnC@VZYg}ocn%rQ-+BHaHuID1z0Cv1tyYT`Aj+lD&0sjdqj|e4q z=(+EJ>{;<_IVcPTkqd0HOa`dZON<>nH`OPk>K<;4NOI|uAwJM+)H}#K4pa!sS^V(b z7+}Xn0>)5iQC|v*h;jA^ww==Fva;26iio4k>I&tNbYgig*MTnix8=HmJwz(3hM2)# zXV~L;XKx&mE^CAoBbB8OqT}cxRz5AcTXAe=?YKeXs=B5)w0p11utZ^5_1k=JU8`XM z^`Pfe7_py=SsBh? zAvRdUODqN{<(^XEszyAu=j&|i?MBsZmkDF6k~GRK*+39@KZ81Q*||TKWc;1ljdFr62xV22Yp^SXO7j@^SaiH(6iu6jS@yUau&idmg)%nPPf7gXfC)W(5F-jV5` zi+9Bmk_CW}1(5W1b<=`0pA=zC9GztZmTA?{brCG=pK`s>MxRPRO13)>I*VA@GQ)pl z$%=Ggc<+c*n)cMNpgPIODF!stJCf?qUi{DS&)@?@pj$au!&}2ZhB-cw#)JHB?Euky zMJDS>Xr+UUg}4VJ2m&sn#J7ct6B~olVoR4_m%e+f{@2Z{lBH2+Gz;XAHyrYY!%7LW zymweB`EM&Ff9DM%|CY+Cosq=5_R2WqHWuf`N1M!`jVv*Wrp`2dXBvQFmcm5OaRO?shxTJEVU^SBBUt;n>j#ih;6A?B{9V zvPIPF%I0Mylh4=RbMBi>vO%OkK#+{O64EF;TH%IseZk3~nH(^Sk#otM_v3u6>Qw|3 zlhh9Y-+<2MmwB>_-Hv|uXi3ExFH+NrIevEK*p`W%gWR+C+GCc2$1|(0RoK>^eWTC> z8I%j_db-wm1JAb5#EY-f@P856^)Mv;lQ0F?K`n*el3n7FOynoKX5p>J7wOcqmfT4| zto{L9jYsIL-zU(y8?0h*e7!}_GM*snYw*V4(#e4fj|*pSjoz5n9h2zcp^6w}vE$H+ z6>Y!~3V2400dVM7Mf&>(fr{}FW*vG8e^eL8#R*=~U?A@G_ZFbz{9pjID2&`I*HmzY zAlQJ<9fhkr(Lf4$K;Xt+6O$!|Fww{jF~vBV&LF>spYDneTRvGQ6tS~sZdC+2DIimqLIPlXD)Gjv$RR#ooG`%OIW zEkUcH8KpGBi&dx~TM{7<+_^<4R8(6dmC>PqRj5cuu#-Vcp1Egap7j}H0* z-i{*5pIUs>|Tvu3Z;M&L>R=x+0(w0SFX2(wiIUIkj-Dv$1!fOjpnIXuQ zT`bV-LvU$QY^|4gX#5Cw|D)0cHWvIu&i>h zM6sSH(726vBbgkxGSdkdbL5+jI#@Av{?$ki@}2-r3RMkdojJVhDS#?og#o5dCF9 zXqZY|mi75WI0DQ@jAbLVPq^JqCUZ!^)kw|~f=C~JQ(>1QjnM)Gkxt{pFEdzpu8U`S z=`CQ&Cj9P`8SLnh%SR?y<&-$k4ED4Rl(<)0T{EooauN-pXkfBN6$n(@N)V?>l+@HD zOEkl<0SPPVv9Q!5w0Nf~KiTR8B?h36O$u_I3hPJJde(zCXb6Kga!GA+KtQ7oR49zx z!zv2H;0s^Oj`qp)4t$G42KZnU+h*g){`ZHe7+v972ZW$pFil5~{n*O&UbuW6x%Ur1 z=|Ujy4F!A4!wlD9hU-xJ#gwTX5}N;B`UL?%0WtvTe?XHEj6Pd;u?aP(HQZR-7u`yl z!5XD6C=dhPTS<#c2B|9UqXm|w6{#bc(#!Y|gIa8lUDNB<3A#%uQb1JimO^54<%n^M zR9A{eoF_S7D443Cmr?m=(Jjx;G9E)ca_#X;6OAf_vU3_iFUUN5S?9)bs_Yz2tx+FW z+Hx+B7M?`j7S}lYvL7W!TeD+V*60*6NDm1iklT7=>N(pW&944IKqK5bBGC8GI2Z4x;Gm z!=OYcr3`POAPZG&ncmcaiOs1<0*DegH~!{+>L4p=cGH936}zFIcapwK$v+pDhX?Ux zC4yiea${c(-+UgKrLmt%1%TKvx^hM}y<~dKU^5s7W&?lz?6rYcd_^Mq_wQizI4TE>hOg1bDwioqhtTeennn~DJ;w1XBu zwm5`|t@AmBbH;J;X*;`udgX{8Tq7cr%%6GfDW^C|A)}^uxxW!wmB@@{HL-F7{CIMV?O_(XSVgV zDbetmF3@zVU{?1z1e+sTMtJHe{3?SPF%|LfBLXMwz ztUinlV~{aTYkoIUi1t$p;o-t7=*ypugiRKMS<}TMewcN(#M+=!on7lBz2gDp>gL-r zp%rHRE$sf?ja^d%{1$C$v%pOo@1yE>T_>4*>)u}%n@$f{e&`)Y<_l~^aKCB$gs==w zHhI04IPM~#I!^9QfDMrE$>YpL3OBg~1dj)F^yeD(dvRXIW=c8Ma^|VHjcWI5TxF1j zZ+jwHH>%kMR6P)!<4b#2YZhA^2W0iyi7U3_H@qy_9JlIpk$)a==S$*v(%w2KUAgNp zM$|nX+j{H8WcQP6Q?wUV-dyoA0JCj&jIPM{)WO6kpMFXbJ|p}D0C9s`YtLVv zfbB&LBH2hL&v~zBG7(?D+a4_;!s}ro^rNRI5&!U~lu43Gu~kB>KORfu#q13B$*Os- zB#CLDL3l;r5ypU=j?W70*6cur1m8T1rfC%Kpo*!S@oceErr}wtn^05A(gGl2c-CE! zb?up`)R9{pV!7bURB@pyg(VDJcuICcnx`E&Bz=SCOa{u*SET{;Mj4Xy)hr?dXk*(f z1CU?R7~zxTzymn5l@KO$e+_IbqzbhepRY6PDxG!UtcLLgJ2ftODct(#A!eb<{&H)gn2s?(` zn%*5JNZU~-%5vK~v^>`Qs}2Cx7Ti3>V@pqmP7>T8rWgxb2ENnuSYarLcn;GxVmntn zB(2D2gH(u)3GR9JW3;=qlMCab&ogofqidp2H)w6D7{wFNaVc6_u$PAOHlQ0FeJDfWpYLHI}&&vJOmEsArsOR9|AyxWuq)Qhime>iS!;trx|O--=EU zzNSA=*%b*6M&rH^Y{mSmOg zBv>_*+FgCjE1^=j_Zm*(wsXA|0j(xuM~=xhC?Sj#n&v1~Tb7`TRVFFmcs2n~va2RX zHingB7FE@|Iz4Jf6E`h#NItJ%op^2kRil_*X*0+s_98&6iQAMOUBk=oixPNJ@FyKx z1s?(R^XxP19$$A>(8HY|O*k)e^_cSV(ymz5+z$m*4YEDkpgs+TvSlG({4BU%tMSzS zzz=QYO9QbyR~}h=a(z~c9k_I+1cpCP|AOEpmHc^HM$uw(;MuSOs0m8|y;C6~TzL>C^mHH^z^S5-;Q}doBxTnV0}YdXhs%xDGs}f+*F6PgDnM z&?$@XkS1Ln`69oL#x?dk5LZeb0*Q96@PynFY2`OCfCa;V#yWFR%%QzwA zQx$OXZ4h^JqWsaP!ei2z{8qyo{d|G@o3Z?=Bhn4iLWfnvLr^{hZAAvHRSHY%S zjS0#$m)`htY_<4vDENuJ=L4aZ%PF$4TWTt zzXmaGE*oKyw?9F{Q1CniUTtndjiur?aYC%g@-D@CS|CO^s8U_>HU0D7~?`d}rBL?3nB-C2`x64J}Cv zwI^HhYmrigvAD8S^4;^#;A{7!#{j8g=l7U8KsTn-5&D)Sytf{+P74P{)99C2m+yN*)$( zqyQS28bR}vOvYbE%SoDq*L~eINyw}d6Gta-=U~k%-Nl50#k82)a#f{3OR4;YR`Ed& z^wlJ>Ga$_on!XdOsIT_;I};)QR-n7|Jp;`N`5Q#(BzzSk{Y~24i8qpd$uI^QkxR>a zQ&6$NC#jeLTX+k=_Fqhv4fRY+D%79FjVTvtbD3VZv zzR84)d?e9Zw5h+>m>wIpCYyIMA&De%aIYU^OuvPHUwxw?ifAa;pn;N+XeV?f35#`% z4#-q-qgFF(6XV`O9a-5s7A0jJ;M8gDiGoY=%c@v2a7Yb(ere}DM_!I=kp@YMgOses$ifR)L z^yU$MMG{BLxClSUwat9Zfgs>+{gWUR=>B+c*5T^oI03f~x(>iyUhxatU09a)6E8Ez zul(xM_-Hoe?gc7Raiv}-YAW(`q1touokE@Z?SZ9)m+mPl1on_;H}1bC8!C0KnE28M z>EM|q6S2gb=@pJC)|`Ll6L49gCVvwE??^Q)8RDxc&iJEZuzmFcvwB=gFe=kn`NSKt_%w$mtm7Wl1^yOQS`bfO0(&GNXV^uuvtDN=mS4!nt31aIBV!*QT2f1~a+3@3Y%D zmlF4p42+Iz5r)_Qf=+JQjX(9X=Lann9uncRRxIU8pCJ~fAIXLiIxgw8(xfjaeK01y z=F>iya@C9Lx~$RA8hF7esV5XE%)%71#+gN|`5>w%x3 ztGH@6MlVUd5jdKx<>;ytqpu1uifrxvy&bxnwj@vm*iDz>i!mq*G|FG>%{Cu(j+3{# zRyN9o$P$>fHF`bKo9~d%X_^b^+3E**W=8-slw0XN`HCIRgvcNeF_{agz#!*s7|iGb z&>x>m3sO)kvEU>8*JQxWu%yuvAg+djq!Hw3d^~t!bvbwngs3d^+0Yd_C_!u+az zy$6?1=pv=-uKdsyZvri_afuQ(5Ffb#7J$@~~xkls0 zTx%Ub+kh@6L7}O!slMf}K{;a-3kNQs$%*be*!8Fv?JN3Q%mn;G1t!a%SP;Y`Zzh?T z@f-?i?+>w|OC1=A_@pkRj0_UEBcc z%ZUVea>Io&xrC1Z>X^`;y@A5}srjlL|9(rDm>Jj9&{N{~bVK2bB)07_mPpPqh1BgA zKBa=KUwNspOG3*(1ib1x^jZhja+4Ube&I9u!NsaZVDxgyclM5r3NB?3UuBsBhhkGC z%8=t&%0c9tNiHSO(TIc)p__B1RD|rumNTP!8$-%x_N)6dzTgk{i60{QA(9^=`M-9? z`guI^Inx79$&HqU~CP zHgyT9f=t1bW+}m3P$TYi=Zm>uOudDtNs$m5Q;y753rG<=*5dj21W~xSWQGf%NK{Wi znRhn78Ov2G)D^ZTd0ANdwFWpQT6+uRxencm<*pU4H&mQ1S{a>^H0ua{qsuaI4rBN5 zx(&9ziM!FfC-lRS{Vbkf%K_z#3>P$S^So}AM#wcW>w0LZqW?bo-rSeR6JW7UjryE> z&j#xp(^w2PCgYyA#ifSsSTOTWEXnyx0)j8R7NQ_9z>8c>VjuDxm|- z&-y%g1&!%i@H6MWbGtPV%K>l2+@}hZhG}=Bdrp0V7dF0fk4aeQ5OQ36f*M6{{&6bg z5?SO%^C0?c+glhJKtt)X3dwX}F5l^9Ew(8$Be}-LIm?(Flq@v9F_Iu$ZpDf=TOzp%Rlu@_;i54dD>UJ44#^B~eF!VBz2Bre z+P5QE0+0|%ugJe}g`;2A;YtK6j~xlYn(hlPk&J=FYEDC;Chy7vI|Y=foCBM) ze04<>*{H^$R~5#>&EKU${1*Il6f)#Il-R z7t_OF`f>^S)m|;Yj{(t z00=G-6!?f+BN&cl%EuIrCKqIk%GC$Wo5M9yR@(k zg2FQ{{}uI1`2Gk2qB|pd)xMy8*5tu@*mCN3HUnAEr0cgaf_UN16kGS>-8JN;ppolM zb;zI>kdO76^R=O8Pbdfv6vd9UJ3YGc5?S^r;uHHZy!z);ld2{n+B6(>!~ToE_NOB! zBk!?TBv_hsUrB8q7IqBV9N=>*6CM0PZ2f$&M~o38VE+2feV95wOr0O5&JR=P|1xzB zW~!X!m^$Zw2*O~PYzd{4!~~*D$zmdxl;=1ZxEyQ1$LrnrocnKtTz`|KL0r2DWK8^ruhRx4wDN za2?!{@I_^8A@lqN^xLHH&o9$XiX2VwQwx0a5bYOUXYgIca>Ve|O{W*?Ot%;+D^er% zsva`0BUJvzWUzD1+-0v?HJ9FKR(_>`cH1WfyXNdlL{4s&?oX^7@)L8x%h0oT)ICWD z9i+2SoymUye2nFaBLGSIEvKihx%b8X+}pA5p6fq$sssh)->~J~{Hlf&N_ z=ZSr{u#YyKxlj;e22Eb1(G?XnJUk-cuJ(L||M=T*u;9`26O7wBo_Xb{?BN|_L5~<& zPl2fh^QX?YSTeqq)7lxrWksa0puNNP)*t%gnPqPa`t^n`z`ZdBn5$dxbNAP4 z$;wT!AFu0lu0rb?S|EZ7$`8LOnfVFr*#S2HK%ErS>Dln11P!9^1LONdD+N`-;`ZGv zg9zVo6-8oe0l6P!h^O?}jdw#w(I<6H6)COb$Cxtgg)f}uMx1JBy=UD)(zF^YpMEj* zQ$QBtnEZB=?0qqxYnsvXm&eW2f`fa{|MkJ>CZKAmX$+;l-r~b)c}^v?*Q0OpB|h4g ztj>V5IRwp}yDE6KDTq9EZt>*1_3b}59<6r_rt9%|{{fVzcW@F-e|~?vgAQqb*GxhU zz5;(P-0il`bo3L-q=&SofF`lY3XKp^?TzMs*L{Vi@sjhq7#A1?r&nEQgZfO%n4Zf;vT@5eF93AGa0t`klhIsm z%6W1vA*sz$yiSLYTY^Kgd1WL^-Vx#7>BjjuzZrVbh!N&xktt(yq)-bmP;ybw*ZbO3 zR<%(Ekz&Oo=gc@_DZo04DsB02;jU%$t;=xi(OF7)$Cb;7ZGAk5ILZRTWp^)Sm3v>GM|AHcMb){Ev9OLWGJ!mKKjWH?M0<^bd3v-wT_KG0pkyZj_RC- z#C>_EHy0sEoXK3TRlc4>bdA|Lx-xln?$4Vy^Q}Q|SVS)!wI%{N^=UW|VyAFOl$C=3 zbK$6fm5sPuzcGNPKu@^9rE-m$sqj66+@3_4BBMcRUMe>Vj0@PoL%7U{K(1_(bs}6O zh`a>FL*XlI1+XwUic=rwmSKFBiSGoVNr($LPc@oV09GwYQ^mVVpe(fBORzW-BA8HD zS7Ir5jIjWsq5EYk3zXED67OvO;&(-!s!Zl=ZnQaI$*iWoEeL^>CS=Ajk zN>I3mD;a3)KaxDq)Ko$tpnV}s^U-6|m_DT9>WdFmp7dq}mc&@AzdtHB_7UB7`uc}f zCEM%%Ri3#S2(iUM`A;3bH2V(%?zCVqd(rvYo-W}023+piwC_d_^jS?K+DrRE;2&#F zzF_H!i5h67ZNys>lYo9R}YlJ=JIn8v%0 z&1jFTVEI49!4A?gL92dYf{5i>U`b)cq3pbJE;>muU0+sSw6XDP6D6%N^=JK88gy#5m**-ie}X(4nZDbs z{_rW)tZ*fB#qfcp75R%mkFgvve2{ALf`UdO&$EXQ!a&aptbnEG*^4Qk#Tp%k&X4og zkt%OmoFuM4pv1gGxw@nr?|!`W{6t-Cen2VDF&oo`RrRn>@k2<3anz+UI< z@mee}D4-p~LUo&0T8o_wg%R8G3r-E z5(9vtCM4Jc+-L6k@mg6LaOrXDK&anU_?J>5TF+x8q@UR2T#%E~fpAJ@;Q>*iPc+2& zPCT(1PV8SF*5k2}(9xwya(l0&XdAII6oPTGd>8N=je3$9G+ZwX;}G!%VfSR|O^!Va zXaCVMS_l<}jikK=fT}dfuzN6l$6G<8&-;p{3Y>dcQ&i>fcYPYHhz@K1<%0sb**Z*2 z4buWcrD7&lS!qtyqSp#9`gm95-%`9#plJR!wTkzZ zTIrPg3sTqRTL`n9$r&>ZV@mDECpJLcirgR9?|)M=tx3Q5@#SE}$JZD?#>*~_dp%!7 zgg!kid)uX_>tUp@*{Ig-yE!1>)!j1+Ulzn7;OUkjBdUJL&jVXN9E>Nx@dqIth8iuuNH*<%gnrB7j)fHXEz_Dr_w3 zU2!?SP2;r2V*2OEaOl!nb)ZY`&{hK59X+R=cS{Y8Mha!VZ%xDvmW6j$gmcLRY&Gt{ zN~g7dY4o@DyL+>#8--MC0v|d^9fI;9C?A6IzXs+1aEB)T(uQ>7g$mv$Hx3M0&%W{@iF0B5U!9FmA`{SzGnJO&Kb~TO zN$)G)u$-KKIU-5p0x%t)E`=*kc+J^*K$tcfH})s>IeCOw>E3V&jySw0#F-xXWyb5m z(K8<#^>|E({5>GVT((#ooDE852Tq66kq>vz_pzPYZtOi`%%P*t!lA)%O%{;KW3Yfa ziKX$1^SR>e$2P)y5fZTHfOLY$d)GKN0DdgfA_|6O!;L%l!e!`0T{uc@0-ufy-<4Es zpk1uULw5k8S*3C@y|BPuS!qZZC{9A2zH0n79__c`#VQqv=>`1utAYeS@h&TYXZ0qQ zUPpK6Kt+B#L1DS?2#yS78AeN&AOXC?f?d~0 zK2U)wbT899N?xIfg`=^$@<_iVA-)XF?|rYvYL8i4wms?B)FOo#U|-BPQG!0Ty3^40 zL1dyK-J*M;s-s)?r4H-YqU*|!`hBiff%$gq*E%LbF!i0R%MU)a8(>ui`?>=dl>Tii zho*r6*N^&?rCVbkhPcl8sq{WaVWcs1zQxvu<}uPUvN1fNN=ceNxSh0^t)eh zF9at>lLam-sPwRuj}PcM{_ zc&dyR+#1Otb)}9W2Xp{&a z(c?@N*1h-p?uMooy=gGM6Ol5(t^-L)KK|UczU;$kSi@|!hzzXQZ9(|M7}<=n{`}+O z{snEB?~D>SDWLLlORq^9n=rP#I?GiuRi|i>p(0*mQDgI!)L(qL_ClGB?~6%WUPD?L z_xf;KX8RJp#3CB!s7d2})q4G$w`Bj-QmmS;jMV8)6KCoAQ{Q;M$(J?1=}$CMWmxXt_nvcef=)tQ@Tf!$-i3U8D+$1_Tw6~H4&^qUJ>E_RwoM^-^b|X5f5S#(rK$r{3;X6nkRxSF_De@<;G42Z++V z<_x)ELSzcuw=M(pgY{DJyq4tMVJXvhoMvqHwu)JPF6%AN3HA^!CwFY#p?diLyy5Dh z57nU$)u9j7fAXRFkF3pfl1Eq*^>(6%X|5P|I\+n1S2ZNtjW?=*_{C17q4Yc2<4 z?xrG6U11a0A{qm-h*H+OG!G;BVx=kFgp3NkJD7UgPTeur@uJgbKwrhINlz%@w6)x- zs+yUabgb-Xk~Ha@yb`O^;xKV?tOdZW^7C5kErTMYV1w>n$jpV}3k_^#x2G0myCf}M zJvOyosLeb2rVb15n3dD=jYl=W7PwvSnu@DS7O3B55Q9~eAIj%_k)fn#tPPuWsV!E< zXEaMa&I^*DgzJO-9q$C$YN~l1{Zx204KFVj+ag(X^$6K+#PF%-*^cuHX`|}r?iToz zZ!f;QS0W=~bL@fdTF6R4$@bI8o$mK)gSVm{B+9Ah^lR>dT%6RO0n0rFQD9cU44 zLW%D?6Xc!xp9&;){*Y zP@?>_!@X)qoa=|Cnx#J-m9Gm+;;gKMt@jWtKes2Q%WHl{-ICx)`*XTR=jwo5yws;h zT@OBSk__GiPSU^3svbFcHRxWO>*atW`<>5htIt~*ia0!}u{@quaIgKf%|}_2GXrDo zr%z;I6V^s@L`@UZrq-87(s*hUj;!r$txFFvL%GgvheVc+zl1_Rx?rL{oRVH3v%i35 zh5mpKF9^lUgt%N5Q0icY^0^qX>*xTDAvwTAFjs<1Qiqr*=r;dkBC4Van+&p~I!CG8 zD#u0#e1*B)QVp5q2I-}*5673eQrdRZE~i|{Vi=u%vms#KwJml!3>_MEjkIR(wtsAf5y#V7WtBU&V&FYp^mSxwTjfJgEZ#2%BFK3&AAG(D9OlFf3KJMuS5V z`ZiuXPW5!#ax!Cpf5o)2j8`xT@7clXe)DhZahyO2mAM{I@;F?NA4c)RC?0+o#s8m; z;;S@^$sAtq&0V?e(c6?(tJB)aClu}P|1FBA2RKq%A1yt!;$+A^I{Ns4C31LeL7uq` z$JRElFZWPI(@^}0wa*@;-4)62%37ZoONT6N?rMJVs0$&rUx|FaEZO0Zt;kh-rB5f$*WB)NJeJeqV{QIsd~-BCG-=A>O;}-GR^d`ff4DU z=%ZE{N#<XvhNVlivd6LFlE!#`^R7c2?Z5C8xG literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/d2b5d4d6eff681076b08b493bf5a5193.png b/public/storage/decorate/20221115/d2b5d4d6eff681076b08b493bf5a5193.png new file mode 100644 index 0000000000000000000000000000000000000000..f0616eb25b11dc0105aa2f25ce368529bbe2e1d0 GIT binary patch literal 16201 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 literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/d41c873b7d96f5874083c5a9565657c9.gif b/public/storage/decorate/20221115/d41c873b7d96f5874083c5a9565657c9.gif new file mode 100644 index 0000000000000000000000000000000000000000..eb5fd4b59ec58aec89682f5f5163d67f9aba4b1c GIT binary patch literal 38235 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%0AZukZJ6j-9=K>;6}OQgcAM&f49ljxH_4 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 W1uor5_c!(`t=oGgY&#jS<$nRY;zWx8 literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/d49bc66b70c240bfa399f9f414bdbefa.png b/public/storage/decorate/20221115/d49bc66b70c240bfa399f9f414bdbefa.png new file mode 100644 index 0000000000000000000000000000000000000000..870b89d1f1383058b9b6003e9847ea56aaf306f8 GIT binary patch literal 3673 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 RMj8MB002ovPDHLkV1mfiX*2); literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/ee10ab2a0282712a0c6d20e619c1b8e8.png b/public/storage/decorate/20221115/ee10ab2a0282712a0c6d20e619c1b8e8.png new file mode 100644 index 0000000000000000000000000000000000000000..b3022920cff433653c01650ef9eac37ca8630c36 GIT binary patch literal 9577 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 TSD)+{00000NkvXXu0mjf`M;C@ literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/f09ef51624e48d7d8c58cd602110c46e.png b/public/storage/decorate/20221115/f09ef51624e48d7d8c58cd602110c46e.png new file mode 100644 index 0000000000000000000000000000000000000000..c7840d0eb7f00dcb18cbcb6bd52e76990aa6daf4 GIT binary patch literal 1377 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

    wS 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 Hu0mjf_Mvx- literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/f930c59d338a97a158ee53cb65bde082.png b/public/storage/decorate/20221115/f930c59d338a97a158ee53cb65bde082.png new file mode 100644 index 0000000000000000000000000000000000000000..86cacd585131dfabf32eb6334c59659e449712be GIT binary patch literal 1198 zcmV;f1X25mP)004R>004l5008;`004mK004C`008P>0026e000+ooVrmw00002 zVoOIv0RM-N%)bBt010qNS#tmY79{`x79{~mQY7#I00b6EL_t(|+U=W7R@*QT$44>j z%?WBwKsZ6|z9#RnYPdiHC!m}laAJL3t zSqcyTc0Ac={>(_$j0S+3nwpxLw+u7=3(o>CgeJUeGyy~~nVA|s5WxLx4-U#1f6qayZ&?5ja(=hRn1Cf-r00i*&P$_iJ~3%NfC#e5k1v)4 zT=c|1ZO0+udxvpP{WVYB{K8b^KPUVQ-+omppi=X-Bq#}}+F0(=d8qR)jDN;C^8?@I|_B~$kDureMvZ-Tw^&m#OY z>C%^bpy}Fr002)K1+PGW+zP1xw&B`#fQJ&Xh5&2@U}tvfnO=@3{WHovfEbWHa_*?3 zI&K2#mpB&4%Zaxc-5(X67rU@=DlLhXT9vswM37H@b^y2^hcB6jjhmp92W(N92bKZ( zA}&$4H;3GcSKtAmf1EB1-zaKQA|Lqe+I9c{aiuR{DLl}aXbZ?o-XNNxka_^giQ^mR z89~}wlMN%gP;m;5VMF;imQuP8BE$kj!0HeT^)zUbdPoc)0-{uq?@FqG4Y67V`X$C< zuv&^E>!%A ze~Xlj5bufgs{8tgq`gjil99RQiQV6lYbL zFA8JO`-P6}HQb0`dQ5$m-Y-;1b$=18Lv6t%g^;~&xksjvI_C%itai)IlZwbdLc;^A z-E#Bzjqe;?cc_5O;^KXZ2r_grBLdEMEPT3TpdCY4VXF(SL3Sf7gq$~fU=~OPoH>hr zx)rbBib>A$m)E72thfi<-_ew-PCKm1&0qs$9Qy?^ce)deTS$EZ{}S(3pGGc1B-t+Z z3@TtN$s@P0d^2Kfo7d$f-EjHvj+t M07*qoM6N<$f|}(D{{R30 literal 0 HcmV?d00001 diff --git a/public/storage/decorate/20221115/fd5379d520a4a31a8e58b64da3a8790d.png b/public/storage/decorate/20221115/fd5379d520a4a31a8e58b64da3a8790d.png new file mode 100644 index 0000000000000000000000000000000000000000..4b34d35801a7641774eb8985da3b56ced5140a93 GIT binary patch literal 3266 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

    eHTO!@wBsNePBw5a52AvrpU>of1A0qV1l;^Wk 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

    -=9L(vcip(=KF;TJseh->MrBM2yi-0+ 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

    S3gx%ipfBU(IdB=0eBoMGIf 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
  1. K++h5~@bjYX_rsbIDZghAlExG^3hwQuS-0NLrIPmj?I5P$c>gW>+nbCIHgK~e2HTfl=L+S;+hl{Q zF<8QUj2j)}P9ISm?Gv0MO-mBv$xN3*J#+Qg5XfAdM~NB)kM}v^9af|LyZV?sD|nAr zkEOuYc{kMIi)x)yV8{`o6RTAp1w;W8N=)d0NpO_-Y!ltsgica{Xpj)+O2oDnBnCIA zO+#t(xVCn<0nJnnpVGLGQO$X&`K*b4V+&MV@iue?ut?-Rglgx|R&{FN-ZDw8cBr)q z(&Jc~2Hdl8DsfD&h`_k^~v89dvTNtZprv`X! zVBUV1@1d*;08hI8On+zFI0r2~p-p|d>yJBi&hh!c{m-%8`{Z_{^{QLPvV6R9^AZqm z3uZOouIo`to^2p6vRuEevox0Tfq#9xxND`;cH3dBtG1gP%@trmd`BA4;Nvbp3`!rL$CxE1 zAGs~j390=)1jJNZacU!4*II(9fPRa3NoB9Ds$jHo)UAi9)wi^L_BINMg%J+nv^Iw=djihm|`aT^iIYcShGQoQ~xX2&CJ61BW) zl|%$_)z>SdpkljG%VRa=}ZMa?9q`0s7tnM!VcUneyIvisUKB4-2NJo@?s~&tL0t zaSLuBu6v?O9`4l}7Bv`CTFl7!RXaYr=@!;6<-fqIiM#{^*l1}Qe z2ahPf^Bbf$zJ!_#2{}Oupxc_i?K%8(ME*&pCbjmhy?oBoJU>l&Jm5V)QVf9ip4xuC zwykfO!!Bvr&ugcBUwh1TG@0|#ySGLh?`@5}{p?TLF{qAWf-Wxvad;FHEQJ^3!cDgS z?tjVb<1g`@pZf>A^IP9yJ;3LG_9scMZc(1>5p;su4%jZa8s-X+6T&p^!qvQAqi;=Z z)=>MvsTh=mMOs#g^hFYUkVrd3INX1LAKhgwb!-h^q}ShMmfz*%Wx5wRX#^3+qHD0^g z6SC{(F1<%-9P14$l!DeQ_s!LCeq1K&6%bppSieBX*xXe z1@9b>_}0CgZ{JhiImp;6)}h~{+dYDD&U7>)&!X8($EHX}NP8J3&zP5EWLD7Y4WMT@ zM$z#U700-%%<_Uwarom0^fs<>`?LQEn?ofVY{BMj)NFzDV&oP-r*m$>zsl{W4fVe7zPR+JII5SD0ueYNP?^F{je%8mgVk>UCV* zQ^kX)=54KYv(SLk@N`wBy~E$eJ&~`q0QeGFsd!q=TUYK~4uJ6_{8pRPXyp^vA|wrn zUh1{N7G?olB}SmD?`h)R(`u?7hPG~7eMhTc`n+;3P=6YF`vgIxMVrq2e#)j-o09V` zp7ZmG9jt!uCzKW7{)7*HMu4jwL07=}d0>4BxSrQw16`@@xz7$;&K$PEa~s$%iZ1G~ zYA#dPSdIcwk7U{UeRT-SOiPw7*4NHEXO`O(S;TK$>Sh7jm-eK@G;!G%CNI)REaxY- zYQK%;Cwd%=UuvUr3X0#`G+X9PF>zBm?v{oa)4NXMBt$@sEWS~bYP>aoTF4Mn5tHcH z=EPTkBt%9bA!>k?iYwQvMk=`00u*L3*Q6#=RbNuoZHQHi_=IYwKy4a_<#X^eye$#B zF+Q+P2{MWb`o!W;@QzTFpb$)8WCH2MZNhklJDre=WqEhWcd7TKAVmC#-0Cxlig#|j#j&@Cfb-10eh(Icun=Z zWv<-&z;Ww#pBG;cc0Zg`<|lNmaOu*JXK!!O+1`b`_6hLdGhC4|D|4phoJn3Xn$Ac% zf~O0T@WPD&AL}J-A51vhFWB2(!{tI|ltHKDQ@1v`vbMvs-N3D#48ubP_L#&eT7a1; zMFGx3rvrz3@Z0YhKL2WmXL<#Q^6(J;pSL|@P&%IU+H)vRT;`2cJnwhU%9eMrj#v9xZTIZ^kQhd^2~`Ikk2MBU6ojNt|1z=t{Dk0Upi(*SM{uYifL}m}ICMcw0b<@0Hwt$MM>a{}5k#Wrs^gZ!vvzk9XhN+_hxjSWO6NcrK+wvi|FYNK-7ZMI%zQs50 zt?`vNkNMNXdps%}x!oiTI%qMa9}*I;h;sy2LRuo7jG`>jqQE+f3<7Au{LzT@G_dyk zWv)N>8D72cdDeGcBHMTwC${qMFqCQ#wOAFb_K{=*Nw>+?Zj)V`f;&M+yUgx=hw;6) zVLBpB0=dueF7A#5Rg5Z$IFJ|*J~0|iN0Mrlc|p{~C^kgCV>M>U4WY^j5@P)S7|cQ!E8sei0e&pm}KKX{3-94>Gb)zEv(>^{&mr{Hww9OCWSfNzhW((I}Z(vIbJ^ z_Etc?0q+uZOF_Ec@_1{(f2Z}kL>>mHzlp^&Xna> zCOoO`xi_!ew`i{o&R4+v3Q|6!Z5J9Ay7;|3*0V5twT*VLGg+!fQ+I_)FFn%AN@)a% zMO%xiHE?Z@t=hJ0?p;NjaH<4AiW2H7D_^Ry`LF+JO<3E{ zW)^dhC?trfKATc~0dW_0ljJ*hUK+qH~1=;qH;gt=F_dQ9G zGc9KvO-szUWFrZ9mm_^kDhWcyL)Sqr+$6hno53eO2G4zhqIZF`2+ZeWCZ|X2ed8Ov z|9^cMfA=24j>bqoqIe&fKvwNE7=a`aCS%B)Wp}q=bRvBG6Uul}u=}8-n-yHS?pVJV zFv+{FdUEOOugc42T6upy>yZF zE^l*beMCPwWne~_B1fhc@o}swNb)`}9)F04%zWRf>fu^B=&5`&BO@asBcA8~ zJnA<>P+1g)+M3426K_BO7;@G70f z`{*s6p>zjquD{NEqdmTQb;NZ&4bo*WR(3{PT*$|KZsi5 zrPu4RU@W6?jBYg?QTP($#~7PYj&lzBeb^bXytc%%4?o0{51iq-2Os3@@){jkL>M!o zpwy7pBhwan7*$j}4kc4TeJ9Kj=~1*6$WEN5xAXw{>IHUR|0aVwAD}L1^-Ci$keD!b zfgS`ODo856@gym$G+s-Jxa1E~aW4sux1pMdG~%ur zBEk160qF`z$V5Bp?9fx7o>(p+%4r6yew>$XXw%as>nMYq!0j{VXmvhp<+ zs9#h!pgE35(eY`pJ^{#%C_E)2$keq%eV+b(oEHAr^Cp%#?gi7A?=1}6>)wYur%sQ~ zQG?acvQPh=_zV+(uRfo)u&#i)OqM(J?jzb#2?SFyMnk=m<}xrj(A6}n*K$>03XV^` zzcy%@)WT2qGJ@nO;45)~N~3Ho=7W$zDyDm;F-CD4&(}RX4A>LWO%9~ZK56PH$y+{b z@+I?t2)NUrBsGGmN3{x3r5YV&(&7qs?HE%>gTWKLJL|ERSXL5akK1<^#isb{>LPI^ z0;A}(DhVtR!&e3YpaF@(i((AgL{y~OItR5T4!I3>`fbp>Ky+N$wx_(Zh()yk*~6GS zIKXyWWGl0HQ-aN~#VYyE2kgH5DhpfN%=UWR9qcd|7v!xDiw{16IsX8Ihc0q+d6lP^ zRx#ZU|>uI&upw>*tAoaSf z1OW;D6QUlQy!%o~ueHw$!4^J{tSQzU!BoHulM0it1L=d0M(HV}2pO6$y?{OcFuhyX z8QyuFyPH?B{e80j0W)nwj>D+pv>+r&70T+}id7{!=LMnBL(JkFlFtO^#C9%h-nqt| z^~)^Iwpm;`i_Mg4H{ayV+c)^FP0yR!;y^N52apdoxU_IT|LG&Md^~%PxAqO!4*Hb7 z!?~3e7H2a0-tmpMFOwbY^WS{@1x^pPd2M8wUs>SK-?_^hrEq%K=cTv4&VA?3^Yqdx zpXhyAuwq_iW!is@KMa#`PMwAL4O`(CXwpCINTzk?CuP7^$SEnbed_oKG&I+J0T8 zeox=8Us>I&ru$)&nxtk6BZ#;LV6%x=kO zdqB2wKdrN;DOMNQTs}o_Zk6uLGK+I3C}&pKooO+%GRJ(oL*D673<>93k_ zeZ&=D4I&w>+@RwFC?q6wDf);E5vSpuM({C2U#1S@3vdS^)IMMe4Iuyvi8l9P?5@3U z`Py5`drr8xVEE~Wgrynf^s;jLgyH2K#}D^&PI}ANuXT9rOqVZSf={2xSnc-7_O~e7 zK}PHu$LQ_vpqIaeJpKSflhO9R3dyfHL_@-{ABkWdb4+Ny<2;)H(TAyC#eHy@@dk$Kry|RMOKY@xz8)G$IUVBrn(s_t*!eOha7#{~ zHP8vD%}Fu<03ZNKL_t(zuFp9Kin~|YzWz4D{Y{J!T2`^S!5X1-amPinh&|#r3kJ)G36V;`U`>loH>bb1$p`Pe z%GTBm&OY-=ls30-zRw3cH~8x29`EeWvoq@{2Rr23!p}Z5!+-Ehi(YY^H{N=k+pP<< zW=^ua*ki3bLspi2x`Kua;1$CQF~9nck=ddhNy@qO%ghf7(XUp_zP zvkQH`etm)e`@IY7lw-WxVz|4@nblREfBH#2^7K=D@iU*|-26OQX0gWMT@n1Bk%$Zo z28+>V)Rmy=4$~r;e7GvCqV+*AFTBHfLwo)t3r~KW)`iDGJ>A&_q&o*$4>XSpBL@uX zhLqdanAv)lgZIA8!3Qsq75ij12Msadja96X&?d1MJnDltyTO5!v`$^Xt~^aKZiAIj zKE@VSv7}vlRUZLm^ouZcB(-Yo(Xi)^0&x;v8n!UuW(@O~H0)J|QB6W{+Svt+MZ9Y) zLP*Z2l>*U7_b?dp#-Z>5uj`81)iXnxz^)=f+mA4lHBIu5_&q_L?v42y=X%8T zsmdB-en_~Oe)vOy{qYSuLgOxne(6#74z;KO&W{A^QvK5Dd(@zM`n>sU_51`#m%|_) zs<&vfzG-lO#QAjBrbAF3Zg*;*G%wUxaYA!G3Dy%}Z-RN1W+SDs$Pyu-I!~r4+IUYA z0Fn?u+(NH3_Nji7&=j@#3L%t7Luw}gLsgC1=Ek>ewyPSyy01#z$4IF{I5rVNXspx^ zTel}IQwiFIlyD;kfIz$i`}yQqABk!e=_7)1W8?cmV6n#ZkvfxN1vt`p#i%sx7Ia#8 z`lug*1iNd&fDg`MA~}W*(8qL2%AulTM{8~cZ`zptHul7MhEKLAcpLV1@H2Dl&&|<4 zvxb~HO`!`cEuG@*@-q3t3^LQ9)oBIIu|n4B(VAVroO^6c<ZAuJ9r4Xsd*oYy|Texz}c%WRp{2DuV*I8Xz;q-|I=ofundH4JL+11PZ zP);+<7U=J^xlf1u@*^3K-0!*X?w@gWAFdoMfwVX?KhLFhn{mJ3#mn!r(1O4DV^8o@ zOS!yrllvFv$wnD>Uw($RkEDA+{~9@HjwJV`L{H zU@b9}$X0I!rOhZ`LUl}gaE+7uSNZ(X0ojFpe&@9VvgI>e`sl~`@lSu2&wTvj zEVa61){;|_90RP$uwt>A2ZcZoy@LWH(#y&Ot5Sey5R{FHblsth5kJCc5$Hy5f%e=< ztaMQ^I27?2R$2i(N50})vzXNt@|BC^r!JALJ;dD~{2}fAt909emJfVE+bC@xb>`|3 zqO+=ZU@dmxB$&m(*Q^jSRj0Y{8*4~{8I?&ZHS!iroX;^BL&b{{+lzD{(HrVzmDps` zuvbNiLUjTLk&h?MbqYhA-kbP&g2gr8n$$!~T&GRECG~zeb?%hL6H{$y;t{NgdNLp3 z$JDc$LVo$wG3r)M(b`BDDodS-qozeN^}Bh$#=+Bcw}Dcouyb8*x=uY**F8b}J+<&h zyzvl#Pv8CCkNy8S{sN{lfE*t78mQjulN|NCo?tbQK75|aG!?!&^}e`1CP908Tn__! zn5t{~`qUb1-v99aOY>^%PrWG8-5OwX_BZFCSn`JILGupHBA#bQW0e8?MNE$jU6*$vJo70UmnfX|C878+}Ln#1hN*ogp{% z*p?-MfoC18?XjJ$@cdu>dt4qmUjDN`r8is9F+x!)Cifw=d~~!M4B+ke_ps9D!fL_6 zxTMv}c>0+hXU-`H``cJ6wAvPpA@o8Z&IkhH7PR*s$})UL>q68W4Gf`*VXOve8Ju|B zC}Zdiy9XtEBjxUO<@}6r?u4LDI4BJ78_)V2%x8v!vGUpt*!69G`bon>D}ClN&mX^j zoBU$NkInb_&WmsG^_$8YrKeL`*2jka(DM&Ix5BgeK6!V@8$bAcPCfZ^%wPIajLeqS zOEAY$@$tJIe@sVrx%UxO0@_?F$JE<+LIG7DGJH-wKVdQxZ9waw5r<7k95c&m9{=P+iTi3*C-57Q?|NNCi;5Vq$U`+ zRUu%-gA=?c-gyc&IA+LBKElfCeXKn3JbrVX(apCxxcMgK?j}|oqtTeskFg!Wm@Eo2 z0f3?zzVx*6jNxdDVSk;4*_?+iK8$2NuH1N)H`Xun?)Cw@X295Nk`0BAKf1^hbMNxz zyXzDuPH|&*jy{V#ytK@vnVhZl9lrI$H|U&QA#cIsgAML}u*=?{n-AtO+WPmJy5u^A*j&+l1k*!icKf94TdCmv?&PyQL> zJ8#ij$QXOa$U8Fi(bz>JICW@wfVAhqbioT*G>4SRUN%ObNhaG_3bz=+xil1proq2b zNMkEO$r0BGmZ-HSyu*7cvs4qWX|0A-(HOg3V;JScpluKyv;j3^E|p-B+E^=9_E;(h z*Xnyzq%QDaRltXDSx1nWLeZLp6`|U}52?#(I>E;k9=>&aKNTI4254%at0bIMHxC2x zCY`K)9|_baO>3&VI;9Soz~oajZ<+)iVJ@TT_mRRzeedWxkLDvaL^|sJQEi;=Wb-_n zG=RHI{5j&sk=L3a_z*Zd1T3Wjo)gc=;q#;$@;KX(CtcX`DCPSX}^rK!Cq% zVA$z?9Mx+*bfX5E6F9hm{-43k$Q@U_8&FsldU)wjvNU%j_-ZY zBx+*@)@3RU1WHrW8Oh;9n-Ywvv>60oHEow~Qavg8O9CIM-U!MA@r>D28vw1!_=!bY z(c~j(Hi)J>i4$d!=!r*XI!GtS7u$HZk2T3D)e-C{$3f%n#{|O=MOvHWGmDhFW6I$T z##oBZ8haZdV+!hZS%oWHuxxv6@uO$@t7?PEnLYZeDRbaB+bX zr-l8!EyQ>_-7pre4By8{EtIH)9R*Wrw0jBU!K;tSuq2q+Sfwl-8+R>NZ^Em09PezG z>^QjHhvmG@uYPigg1fZFB^T!`fA?cue(TB%HwK<919Rtce(8x-`u$s6Ti>H&h4pdC zZ(J6>`cjv>!##Fp70rY>1e<$)@_~6idjB$>J?O$WzJ3>G|A4>#xBn8fGBi3y1??>u zHPKe`cz_M}2H+Ei*396Lb19SH*ftam}aj*G<78)DyL8qNq24UZmR+0Sm+}_Ih{XsB!nvXG16eA@h#h zIC6nfg<|CCWAVNF$z~s*d+sB2cW+Sc-N6jE*uL=&x^nVVf>c5a!Qn>Tp($~)ZJ-DlHwQ49>X`Qi!3irnRY`R+|tmQL`J9B{BR z=F<;7!c$8f?!5W~{>|M39=LR#Pb_5o^Y^dv+`@2~UnxL`(S_`Pel_`-uT%$Gap zc*x9b5A`G3*3&8ns78S9p~_6@QzWetG>i-0;Z*S^hM*NFqJ}unEEb0;OA5x!udVRe z|Ke}K%yV?le-gfP9C4oh=AXmI*fU%M)) ziMv1+5sQ*VP!#L7ChQu;wO|QmT@Hb)OXu7tSp9s?-LL-|TerSXH}_aFjL~2|q-o6v z;9@epE}B`y#rLRI`%NjEZt%;B=9kog6H>3!Uz504%pM%pg^i()Z3O4O^7*J@yH`9s z*5%_EX)qlOW}@{P2}@O|Y|c}k8cMI`4x*+q>Ap$7sdoetn6I+5CO}Trv+!|UU5`pF zI7GiPRAUl8Un#w+C^({3yU{eK8iP1}OaOe}I8TuIu-S_qI@e?BKjx(qg1`~a9`n0G zM1K)5edzjR`E;r3+i_+$#~zdA|3Vt~CKx_^C;q(`?`s0;bV;Z_(Q#%n={$jQ>Z$gj zARe0c6VN@v#(k=6I;MI3k=>inrq^wre5Qu56F^>SO+ck(Z-Ds9wtcF`WNwpe=Z|dJ zv^HL+dl&C$-On)A(eCe1eOhgsRW|QRovflF013?4dXiR}zeZgtvP*-uRS`L8EKXyv zqQP#^#Yhmop7X(^!=RdhcXi0R2xLSYTKJ%V$g^PISY?|9#2^;bIlM8*{5&3yk%HVR zQWiMIh*gZnY@!4ZuM9yP)?P>3i;P=KGib2GGU&R{TRT2$b!{Wd3;PV%Y0_mBA2Klz7T zdGXI!UM%DH3j(h9f)T@`=QB>P47quAgN-{G7atNvqkd?&2UiHCc+|vD`YL2G?sW*I z78GKxN7ybcJz^!=i+f57cMdYX{f_bnFBe=d=5gIFi}{$db1<{&`OL)*7Z*az$5AFQ z_I&1?np!!JqGNd0Vk<&$6{R@3AYw#o4ov4Oq!NkIl~VaIfHr zHN%SD#_t!{%y4eC%r3NjYX@JHL1ML&*;YZNE9|E0IzXK076*W7` zxfCLw_r7)>ZGiHsOv6Dn9myFr$joW`U!t(fB$GJisK7>}Jrfaf!j)>r#fajR2vAJi zjSG!P%p5|tWQhR6yXXLCYBG>$$YglS5bYxg1c4SQWz6ef(zd+wWC${JlxEBj!FEpK zdMo6nWcAVuXgOfCxrg7m1N)a5?A>O#e+M(%XVH}GZ{K3`&NVtMnD6u$?hV=8-(Y*= zE;sHf>(IndjR#Z?m#?Kc^QB-~QhBxic*J(#16%Tg|wA z>neZaoX{Qa@MLF~Cmvj-z1QcjJYd1UMmTk;Aw1Y7nnjW5MKj39<806Qj3;q(c&EP+(aGr_p~x zJjM_4Mv+s`vHJNQH(&gh?7sKMoNaq@V+k3aeKhLY(x<& z72Ql`W>mWZVIU;>^GF<@dO6g7Q%SJ|QblM~GzegEEmZ4PcBcz}X4ZPFDJ(c1jd_xo4tC4BekJN1li!$wGYowVmLwRzn#RgLz@9K$AWmrnJ z#vPP~-TySkn#83|W4Q+K)uT-cj|RHO{66Achffot)(`zX3E-QzKlH_it{siU?sXi^ zkB$NEM^!yBLk`{1se3g5p9c3+Gfs}Fck2A;cW{J#d%B=g_b1!c1nkXqaA>j}ap*+* zCV_jUC9lA80=o^<7ij=+X^cyS+iL)SY(r8#dc>!lenyVFaj)tRQ-%ZxfS9l%0g_`X z0jgZn3Sa{GhXA0f@R3q~uZB55Qsf8zkj5l#cP0vjU`${~-e@%KRWyrsjS{J3{`MAIFTKjzVu8zqkt!6POXm$^?^(aG!Tawy=9U)_GDiIo zt&W7Ot3LV!sN%|CI~g{$70C@{o^g4-ATX^}sAzc~sk>xS%{Vixky{Qq*xS*47FzO3mdDHN<_k`Cr9UmBF zwhgl$GUISVr9HF2-}19z!o5v7|%V2m2UThPgBJeC&c{arYXncYhbVa*0y9 z7(XOakJnC2aqsRmIVX;3Q2nDEKFwJogFZ%6-ux>f^>eZOWVTeOnEI3^zCH)n(B7-W zuy)Z`<*22Zp0-s|l}10jpGeFUnh@8XB;md`?Nc>1XqVKcDZ5&gO1b9IMi8pR{D~ki ze5)X<`v5Uj!cK};Bnp_Jc^<*zJd_xWX7o#g>$EWK737rCIr#{te3qW?qplC*0Sxvq zn>RSKeS=n((djIp-mvMnRBw^B#SZ1}OZ?uS{|=YOhLfF=lf@46v^jO+ z5nnlTj8W zSdVpzP?CwmL_lT$<9sw@@iCf80JC0$VBzW;G#;XyDf z5%i7m)|0CvC*i`%5IX>qw3U)*Z8b}d;1`YEqVUyxwc~;h_U?F(iO%6cJTO=Z^CI|p z2A`zx-Rc15K0>z2hFgQh`~jZc!g&@y`PbQS%IJfCN89=kam?6|HCIbSb9`rsygiGS zJ_a+Y=N^)rEKMb_Kro##nTgTGqLL!9-(+{LNfHi1M>SXwfp2v3jMd{cnsG+cF)=k< zHf90@CZ%KrMxro-3gR{RczFS-HQor7(k)?uO2O7_Y7@~U(>4jd0ZG#yOtH%9{S{R8 zrZEMQaPHzaHx0oh2nt8y<9l4Gt{+8jn{C%4t{tkj3A_&>ys2lW>OHQBQ$W3@r$@En zh&qqas#o9VM}D@xkR1!%?g92D%N!y49doY&^M}CwB+ySv-O2Mw$C zX}lxjKJuugpQG=S=s#9<;DOtbCNuS)H#Y6WWTN&xaypdDhfqhcUsfm;q`|)9G|#|AQmz%3_zL#Wn{A2W)QL zrqw=0yWOMR&as)WzrTkoV}yY?vGY8`*qqGfv^yDdozq;uaSh*^Xkz=QhX{zI(OgJMSw`{>&^VyNWA9 z=r)^W+&L)uz3+Nn-^lsS4t#J>aB2?z%7b%QZS#$Hw;32AGX-}yw)p0^@9@Gi1+%lk z(X}W-Y-i&IH}=qlc~xG>N0@j12%h>ym_3InV;LJvg2KG2!TWKhC)4NCrZ69NB!|-J zC+_vWVAoA0u%`0qp6aA?DsU*WO!fX)mycklLSXmkf{A6Og@R@%Nx=r-tcq%EZ9rF4 z&?hmUgkzGq$As2C2`Cy&ubK^$!|&Fpm6Zu_4=Reog2|!=Gn(2-h-l(Uhx!2`!cYvD z4w>{IvuFo&L1~>*&cwu3g$mYt7RTEx(c-Cg59>>=UVoYY^I!ft`v=O}%1KUj`W$Sm zv%A&fR(6&4Zo%`9uhHx5GIoY-6;3|!1Pgh|jZ!)H+|$gVbkyHdDZp?n)lebowdE!&Fp8Wzc|0tMFjHVk+R!pd^ zin25DzaWHZ^kbMr6p3EnW37-#R^UY*k81FZ!3ct-3ZM|9&7|+?Bq(u`kQubv!89Yi z)kne7nv!v8=q^6Q$rrxF*7h5;w%()H1|)>(Eu2H0!!DhI?lL}V+6`Iky9@2~rsj=J z-fV(aIb`}yxH+NY)TlH!>uulke~G|YXxtO6BGpu5*GNPr)viUn;v433q7d!plkvJj z;cMl9Ht;|c1nQs7 zC_Gw4pqV74TH(?O+$|GVm@09^<$D3~n)oI9Gzpfco}U2F)Adfy`7|A-?;Wo9_gV*iRMk|AZG!kW zwAj?=>GuRkZj?%ORA5z_We@*XJt+xbGj-q8=TiT!+9-{7Nwad~mn6S+kiDtT2-%rmNk`yj!V#N5VT9!yz1c|>fZvv5%DhPD27mxddjrUA^*QntM zSUrwO%95JuscWdm3o7l4Gz68T0ZB{Wwqzzv zt~f`YpTy>^V1JLNmBY@?4%^#1%+AhXjm0@nQ53?_ zGe0}a#>N(9tIZ>ye4gE{P1fJM#)5HlyOzyTpj4I?GESXoapp95Js^)U;F0jXi~$>? z2V@A=24U)3Z!7=yZMc(la9M_WVKf}FGNb&&Gbd=xc6sE9Wq$U#E~~9|{`k9l{Ijn+ ze6P)8XXm(f%khmHjtl2|T`I#%N@P6do9hLa_dTaFSnSM_XWbC}q~(JN6$(bNCO9wZV?Tw?o(@qsB!Gr6 zYtp=lQ}`G_-UP(e+&iM2HttQ_pVGKb-){o&X&d(>bf^1C^WJRpH26=N`SflBwT3U! z%%lJ~?myF15Hz&@&9+xC(!^aVFVXC!X1>*GpXhUQMJISu3nPb|Q>pvk{F^ev)^@uZ z07cYVCNmo(x>N?664K_s)1aC6-s9Av-r-6|Q96pU#Q8DKd&WM5k?iFyzW3_a_{ab2 z-{GYz->2KlSu&1C&n$E6?lxBE`H82W<;Nd5&002MuzroR78s0q?ag<%)a~%?SKgpw zhCJW~tmN~|ATiTx0F&Z<&|G?tc!%=^>O&jVmsLAe9Zo%k3xK!n6v_ePgH7CEKq4`Nkn8i_rh$JOJ zi}Nc5Q)u#-xDyoKX(yCaL|`jv{-U5l4&)fbc(UF+gZw z--ki{VcqC4ZPKHQObP(gb=|8`_q1`B#-GE(K3!H|N<%G^e-CNdkN(|!U$s@+xL&_U zDmrqMR-VR!O0t(uR@IQnCN=-lhfX(dqD(^+m>R35n2?xhRZde0Y4oizR>`ymp>{;A zLH(o%lB#ReKXKHAQK#B?RI&Pqp`WJ8sA=?PdJ!FQR6FfZX{|C8(CU}-U>($R}?Ywg26kb+gSj%xN`Ldb2BTfEiNJBbvWkP z001BWNklsd3dBcybC=Z_yY{$SbglO|PUb}Xe)@y&lqbHsrX~=?kg{#2yB)vR5 zUw^ddGRGg&0R5NfBpAtY`w)w*CE9g*^YAc z2e;W+?C~ove3AzczV(AYqjlm0@9gzi+uG!@`_6NAX%UBT;p80MuA!IbjQk!3!$=1K zWcdv56r&zzBAANW;P8DNX;;(7b1N2OmG#|Cws)>_>hWipfAUM%i=W2#?q@7LkPNSa z!(oy$VkW4XDl%x&%Brska?rNMpV7HeeKK{bVHrYga*`mTx(cMJ1{0_tNO>R&v^i=F zYM-n$?JMsOpq_g*C$3O35VGE?2kZ=sk9-t=zF*)&Eq|$yNJx61ZiPZkZ5kC zl`_djdQ83Z9u-|-x;c{R7eeyHs+*E_lG57Jz=x!N+f#av7i8)!u35CFBKR|6I&V6U|!X$V|nuwvuuLnNVE0Ei(d9T?~0TnM)8;XA~H zTk#ztwTV=)XG{34V$jV=Qh#n~;N5!x+3NQcsMbRT8b3ee_ryE(h++-%mx(fmpP6oV zO=pkl(=md#A z4GCa30eiE~RArN~O)$B59ExUhR38uBsQWS{ZPX0Bsa;4tNuXVh0{6|<)uGqwp{cjf z>S2%4cp^q|F{K44DTcbzV4evyNTZDvvX0|tq7RFSOEnSqv??P(46TggU2E~`DkGuK zq7$7rA=*~V1{=UZB(yGoz7)|UIK650j})0g6tx!3XOV?9m|p^KD7W@G7#z^*jMNe@1x_-fj9=cJKVZ?ojbSh;=QMTaKP-$EbUgCJkQBmHrTj(#b!~C z)-dKN@`f=vlmpyIX}5Yj^4K%H|L$AdDN7#vI^g520F8BHR zyUObF3}?HB7goo7`I6yIA3px@3Tr!XZctB{ZIUtwAyn}lz1CrNL#TJv^+3Mp=L0M3VKL&4rQn3)8_EmuX$@ZQyRx*9+jCNsKDG&yC> zsX!w!k3eAl#@Mj#BG4AXno}X6{N96pNLfzS37{ZU}qfxjEAO^ zeAO?h+p8wTU`h`18kG{7qD@J9cLFfUa3eTJdhZbL@oI3Y%yiqV-+7<^=hy#d?BFVo ztS!>+WFRH^c);vl$w#}Z?BBY=*1`gv)-D&?tDIk2gYkeXn|Ilij2k;Uyt;p#C)Um~ z96Ll>2!;+mM)Dhx637L!;^2rG&LXYDqou?7l2(@C+=#c|zfNc6BFmrq6&616CFowD za2EBmsBHydz<@DXuzydQRZP&}E73G1`cO19w1(iLV2qN25PG!oGYs;VR^PJ%ohHH9 zaCo1hd4(t~UIbBFgW0H27O~M*JI;mb{}W51;^RUx{{nT8FFg#8e4gPquF)xWfRfTX zbmjsw_W^b+m)~{N|kTLgdKnsT9U|noeS&Snz*hd%<2?LO2tI&ehX}lYL2rV zY?g=iq-Z)Zfuoj+jP}vd4z37ZwN`AHoK+~&bkW3&?BBXOh(IjI3pBmpO0 zI2MSeZ*=Ii+EtvI9Mg|AiTNRLKV7#@lshCePPcKY{Nd*t^Y>oLA3fYZ#gC`m-;-lp}sCt=S?#i zX_&h-%OX?%X#Q)wqw+kL>RQz{p?+Vp57oOHz`S}knt)8ySN~2n=Mq_Z0`6g(FnsLv zZA1)W6sqSN+j0>&8&$k3qNz++!N(AhX-CIf#M&tAmH2Ex zQQk*coMzD9XY1~5wzoI1xd}i$%g9CUmWy~*yd&-o{xW3kiY`a5rv>wtC^9ZpT8`8I}qj1~`(k7A5eKuJ{Tv@DOD>+<|V z^Yl8iy!^v;UVdkb?_J&HTOW+MaC!z7JAC!sF;ASC;f4D$o;vF}G3R*cyIZWRb$RmA zNq+FkI=}JKh|B#BkF2%mX-Ox8^D8;0*`d3$gXWf(t~mb3SCo~79>4mT`xtHR@x2X4 z-}m|X(<6TJ{tP!TymoiYxN8}v zwE;LpuvY<0r~pg)S1}b5{ZE85*=iD@Lk%yEGWRf&%umwVT8F^$X2UR)QxPf7{!W&IQh}0IMK-}{{YeK z#(BJR7^mP%#?Fy znE)pD54PFdACR4Uj?0e4^*hV_l%b&2=CGCOTiHX^{Q~hf_yLgybM4I1+=kIY#pE9ioWo(|0+<6KKr2 znja^=WTL&hSH;*i+U_y9`6jY=m7F1^8uavY*ptr$$Mh63En(Cq-!>L(Rz*}wT4IyT z!K$p}(JZCn(@o$x)o$D1g(*sln93{$?}OQ?^E6k#M6j#kBTuaPH_1oNI4}|;?+3b| zUQjF&Blehf7wODFYX#XbYtSri<8iFzK-le1W)e=!I8A z9O_HNDME(YHe_8eIqFMPhcPlx3b!0~qZ_@WTI`A1PLj;YvHTH^+EKK5<#4SU1+Z9z z`U4&#L@3C;%G?9g9|GWduXjyekfX{?x3_Ub;NAdUOr0kR|04tWqsrDzl&P{ZRj$%Z zA9*g5=S{H76nJkChpKlIAh~8zO_)xjTvg9e|4H+&VZzRJ;{B6#RiJwc+&B9bo=*!n z+J#rP?IxP6ObZt^p-IkQ^|;4zN}2>hM3(xS2STAjz{>h3yFtXbC~%RSXe_APC#oOFBx8K zU?hG_mgT(p*4x~=ag&+3F4(}PG8@7B)ypi-^=P%TkUZ3l+1%P@c5V@I!?3+59@_wFs{A((3qCS9cF&4z)z0%5C%+JkocXOLN`v+Wn;m0_A<_uTfco{7Qh*etFV5{xc z=znD*BQb$EYnnR}_GR{m1+QM;<9EKX!3TR#bTan6r?=YSSB&_|x9;*MR~>JTlwog;&tF(%X0(Nt4%r`L3y*XReb?omf6wtJ+wdPh zGtZaK!{(JOzPBl?myV|vbDo|%;KxpaW*x5F7~>_wb`6qQd?%-H%K6zAfBC6XoHGR% zF08S5|6^b}!POyZSJC7+r_=zl*0cn>+W^uvZT+V?DO4sXBq5+dPlCBt0PQKk(gb~L z98EKt^n8jOmrPxn|H8Ep!`o|MiK_7#?}OG@10)LV_7gyT`Y@A}A{u@r!N5jfY!Zx# zW+Vx;ClMz_&uD0?n#esW13bY@snVNEEhs5e=33!jG-A;J(>*SLc2%52upXhGk2`JF z*r0$gK|^efjbueg&U-=T3GH&~adB5d6vQcoLc7~$+`rA2|HVJ##c%yO%kz#_Sx^)u z{rw@Q88Ii0xf3Uu9}id_joIEg;Kr>@?wie7pPy%LVS#xZiwj*Avx18)%W|GED92$= zlp)-s8yBE4^rKJI)T3J9#$&{J3?)(y8H@&u$`V;P&Fr&3#o7PxZ__>X2}(0Vse+n7 zyDbp%Oq5tvj4#pA9_4;;!dF)y-UUs6*~jhgQx0}fH^yi|ZcOl{!C^{8%D9h{?AC)V zT@YL=(-D2HT!N z5ANXZyn`+Gk-Uw4@Kea#dBo)i5}Z}74RkXSK&g0?OqhddjDTZoP{gF&PHAd8D(!FD z`L63y3F)9bLFr`b<_GW&;F`PC)zl=Jppp1$rBI8eqsgblgLpyJBDRZd&tf`rNOuvs z3%G0svKdT1$EXziSiu=wf5__sd9clBZx6~b#ojJjjF8bN2xS(^a)cHoG5I*9 zD&AP=%wl_snBEFL>ky&`m2v53v9m7hxCk}2k@rZny!`(V`u zGkI}BaWZ{v8i-GW?_`q&5i_(&!h&0C5N=Fxmv*5y+yJWn5B}C51qqb;+_ev}dsM zE6`m4+d)l^bHO>yh{covm~?wHJaF+rzV?+rV145zAN|;~terT8>6Dy0yTrlnEO+kQ zBG1>bSs>i&>l;|QEObg{I)-9*fSvJVIf$ANGEX#^&S)6|pGyX&MBNgiv$V22*f$!B zu>!8Z+8E9)W-WyTz&yFNBpX9hWm473S|e>a2W@MJkDX;*&fkBL58i)+H*Q|z(T{zW zC%4vl<@dgf7CX$fVtEIWNnp$-YUO+Yh3Z2BC-H*1lCOPV_?@dl(NeNZX*uD?A6e#0 z&u5%2H&{JUva)12xV6c@dTYRbA3puDHm$jmx9+yN_}B@4?m~w@f9XBe{WwIya9~oL z-;QNqh2QzXfZtz-r&nhA>2n#KgPW{&m3aqSBjNH^L3y&x%>ID?>QaXb?InKWwQb(m zb9j@nn>kM9ZNBv2S$_7^2s^XS_|5+Vo_>a6`HSELQ5VOs;qTIL>P$kjPgx9`bRb@- z&CTk$U(M?#Gv^R(J#Z~2-!mfh=#@d*<6^sUI zkr=tbOvJ!%eu+?xug6s57<*;l9a*PG=7;>=|NBq)<^i{sd)(cK{+jNbrNym3JoZe+$y z(_=z0r4qx5N)RlKBPnvMq%78iIS|yLn1-Ev1=<_aFH9|M0C(`FMfcLj7~Xt|^8Iz% z^K(dd74M_ycFJrVm*7_x0DH(}9XHfMP=gX|Zywv7NAoUZU7TbLixOWr zEP~a*r>rW*jWDjj4@Z={J7hB!bd0;Rj_VI-b!O14MUg|k&YA)LJoh1ehy{-Z?sD7@;lqz68kQp-nFO!+&1WX>0TXppLv^UBa%k+Dxcu^JMIm}De4BGd0o zosFP57E1AA>s08GAsY`^G{sdX2@G{PnW#e=l1>d=n*FIiReIjU=2~iFgmg^5XL4+l z6OkZLWqkzHvy?%;})}XIm;_cEG{f^<%1hMdj2$~lhe|YgUu~w z+XYz<5E}@tNi)rZmH{M}_hDrPo3|0$LVZE$JbB@;Ss>1?a5!5coz!;?=0(01b}9i; zqunD3n8a~ZD7~ZA&UoO)h@=vpjCcy!G2(rX2J!3bq$2^N|7Ifl`S1 zig2Zp3ADs;V%E@GHJn&oU|EE>-nq;A#+Z%uAtz3hw3oYl<@Yyu{R5@!OZe9>dH%(Fo`YQYj~-d&(xNBZ^W4AM z<^DO(t-XS4TaGQW#0q1w;Wj`0z%2JKS^mx28Q)tMdc8J3^VAYQb*iAVyAI3- zS6|02{v@I~Xv`FeGO>7}F`maC6DEmq?2pu>SKsO0^s!15Q$2VH6*p^4ZziqP;KSJz zmV<3;9ap-pR)D5$?xD6-w6}IdJPMfKt4EW4P608K29kzwprm9sRR+rlf;>JtE{4ge zK7KC+2sZuIzEGkMi5A7y)qroB5k@NHebkUzj0TglL9fFK1uy>gKjja9_kU-m9h|AP za1^#hSvWKYuNFHHmii?p7TV0(4qv&m!E3vH{*&{knbC~1zQcX93k*!g{SM|!4?3cy z2CJUnAnJq0+WQGUX45|_Xfa}c=#jG@VeN&V!anpFq*V47!Ui5 z1_!iNDaU;Z@96es$nzeI9OL0;uzeqH(k*t-g;`{Af%0HTPYt$X5Z!0z<|f8;nVDZE zn_oi2R)D=3WhU?httVLAy|7{k@u{Q=;E{6mRN1d9Q>)2mQ~dAross&xPRzuJhJsK5 zUJSDI6z1&n9K88eWcecP?i#oZ5fAzQN7{SFTDD~OeZN(;!wEOv&i!J)G%rj~-~>j^ zP^2h(B#5R)CgdQCmJJxNKNt|;j|QYKh7AJ-D8Qf%*t9=5z<^|FY?8tNq(BbS3}?s* zFU`yE_3M25rgKl&p@KhD?QqV$-7~aKTW0J64h~Rn+mHQo)G-2Xo5ncjBZTjgw?5_s!!|GFh2?gg+?EH zAI|kUtc*J{RFXlOp*Kg!U<7(V?ZRqYS~-%UMkz>Cf^{|2fwjn6gR%}^lqe_U`H*s6 zQI`d}DDjJeWH7*Hnwpwya~*VwE6cD-sWZIKFttL&;mn*wX}qLJx{cl(!|Xn0ehf~N zG}i5QJoaW_&3mLjR9C@sfBg1O@hbwkcg&xrAO2O^3&Hz*P)lnmR=L2wW7yj+Q<0N-_8BT zjb?8*7<Te|ej-Uo#z@X70+<^G+D|NEc) zHb;kl%CCI&=eTlp$knGVQ5?^hPmfsN*aq>WX~O2_n6g-K|Hctp+iPGH^~nr93@$E# zUarZE>G9MUr}6e8Ubaz*fN}^4$|Wdm$g?ykow~;7dAn?{JS0l6mKdDYyxRuQHKV5C zIk3U+(Ku}F$nrIwxcW5jzws?Txc3oH|MbsL%};pmx4y=?tYGMaK}cfkm{mR~QWHl^ zDp(VOx4!sv!sVwF=P&2HdfW2a2MMp=JmLO5&xLLH^i!6NEzQll!hiDR9X_+0GCA1i zd~W%jR~NjtH{-nraB~J%&lSvSa3js#2ZleqtvC?NH{MJ5SZmzS^3p|5W+q7OSsUi; z3=4+Sga-?Fuuz;!;biVfk59P1u6X*>+uWFsNfbOjt{6@4;%f`FC#^01&WEU1Dy;G$ z@Y#pVfzngH&13bx0exo)%?2>{0sd(@5Z={Up#2O*)BsQ#f7*@-CXByjdD_(71Q|Af zqp8!=Sh-^VXoh|STdLI@s%uSO5iK>jlZMT44!J3~;~nYYeKrsFsLLF^ zvrYvhX-4J+ErHTeN!n5k>IgtB!D#ENlEq|#-B@Gzg}=`DbH56kSFxN&+z^z*x+&Rw zMpBg2rNP>o#Mk)ggd|l^FVGIOt68M$*m*@(%}CEbPI0`4JvwB4a~)+NRT*Rhbdpog zj;Zf{fFA6iMngDV1o{_5sW`_|-Q$I?SeMZK=y9 z%2suCpWf;)@jW6qm7%U&$6oq8a^Xc7jFE+aPC^1cK#a%x;CtV!wjhFN>0DrtRu%}2 z>rUIrXDoHQp+gx(I##GmN7t#as^Asa`4QE8j!_BeXdTHFeyGvwm%$HUF~OUVrCa*Xppgk@ z$izNIUIxT|dB0!1W~D5D#@2^EJKH|D%P|vCDK4s}tIrI0K;Jr~sOQ)`a^;Nf;URg^nF%S9Ooaeh{F9CGvZ#T#L zN@n@fiKu01(pyws`Rc$yJ4oA0fU{K)yi|Woys#7~*TW=0U}YmSPtR^b{rv5IfzOA$`;96^NWRQrK3q+dy5pBnB27!;yB2c&GK|zSa zOAXFYmt=+sLrEJuzZJPFOD>W+NqfBZNZm+;V1a;#tr`P z55JGs-{I%K^dz5pZkK1DeT+Z(=3Qnt_IWlPGoQ~Ws+ze>8F<6tet~fXf-u<3@L7RV z7UczqX}nQ*ukmghQ9}~#!+qNfF9xp+gDfLanyRdVfOkQeG!98RzH=W(ue5z7bSU5c zAA*3C4!(%4t{4wy!O^L@P z!4G(>N?zJj6!&lQ!ymu{le0e37+dnK_hECG@;5)X%UhEp?%X)xtv@T67oLCj7dCly zn(+1a4!HJ&=Y?}AlLs}k%7x@Nql~Y8Q1JE?2D>?n6T_!2um2B7001BWNkl<_8dUIDL2y^nt2(hdjTb5)^zx@UbFVc++;J>%0`MeE#Pq#J|nxaw-^n3L=&;NMLa zmSyYmB%*IA4?edovWh&_P5Smg)1o-L{Vkd}wf~G3Jp38-q-khkWV%>At95G$ZzM3S zxab1bSEQ;bt)1|M>w{Ze2x6xNS&f|bzQ1HIc<~|65z&=Ug<#tczWFcst^ezva4_3r zYdayYG`ZIlsbMZ4m1Dh1xG+qa&t`m3&$*CoGF}@qQi}4!3Ddj)Q^3}ct#dhcEEL6z z6YtS}MCLWQGvE`FG%$6fBBT;yikf9`LPJ@wb{>0=mEgUV6X1%LI~ z1Lm_CNj*cdlZa)<4zDcf&XcTv@mEoLjyI8^OaVABft@EXllkbTM0oZM za1Rv+9U;VF)x{XKU0Z_O2y#1iIOkhNByU@q1sW+WZR=G8^kEVsZPKJ>zwg=oBC!LZ zF*->h&mbQ`I>y!>$%dF&Nqu;LU!0I6mZDftlohHhk;;GxlRIVRWZsdChKRKkN5>3? z8;BnT9pfszPN)`B=F0+%28j1F8=%<1D~?+6TU;;^MAVfA|h? z_pfcidan&jZEg2-6Nqkroo;F$aG!l2tM?phkVl-`{*+FEx1Fes(2TAlO|Z)HwGyxI zl$7tvY@S}UhJfLG^ z3F(sugp}DPn4q;nbV4%NfovO}tYJxFy*^@-hW{smlO|1glW;>kh{0HoEeqB*gkS#Z zr}^;C0pI%0hfE*rVSnLqKKI$@c;)(weDC`=_|A9UW^-M*a``+Lwo}%#ij%_=s$v}} zGVI|Db&e3Q>MVi!D+b2d6mJty7A-ZNL6}&m;G&czIa((ey9h~OstPw4;IxkZypcu? zPp7^JbdfQuUC2}&lB#%Lp{S9#1V7w9#}kjez`Gy4!ANU9^UJ@=8+F0q_rAlx8`LOR z`Me5CwAxF{m7*jBBAU`u?kRrnhnnx*s;G0rARY1derAV(7cLFQobv_OOvTr}n{eb) zo&y76w!jXz4cNVE(BuPj_;~k}Oh+B|4VK7XY%^kHkHrFx|XGm_phky6? zNv~hWXpMJuM_lR~myKlxf`>uT`j2#pX%t2?dk)G+Bsdc|AEG*(b77*^$hsBF z|55-fVVo}~iRuB@_;EC=ShB1e8Xohu%*f($N^w2vzM?|)k3OrP6zXBmH7w9cdw%00 z7Pf<1OV^$#o1`%c=oXmuC$$iOSinS{kY8263C`7c?Lji~JmtIJ{5}5QpZsGM$G536 zM_L(7u357h>kKLt66+Zn&-P*wz;n9BmQmciS75gWJg^If8(VzNdZbo30c%Uh(hv+P zCAATJ=1H~S+zjh#T%yr9@CkJ>r(WA({KbEZ{Ih?9YWxZ(YD8*)!h_K-xE6sBf=aKQTR3lwIGIhin6%*pDC#FU&AbBsBG5C1Fxx3S>M3GP54sW417 zIDY?aHlEm}y!_A*{YK^m=s;c8;$ztjmsVT_E+vM99DDU3I&MkwBS5f%@fBz2E-4DnH z3NnwKTU;Vc%L%HQq7+nRiI+gkP%kFf!I1Ur2^<3$XuLT=>;gZXqc;aszDAjlP25*= z*3txfa)e)7BN>j+oWo7`vDFMEfofHhN86sH@xGN0(riaSy9C}X*b)gSckNiNn3~X%ImhJ1)t0Gkf=@=sa0{L9BKa0B9b+W}2`mcDAZux;n`hM|Y>J@WJ40O;EoiG33pO`5xOm|_ zufOpQH*W27^Y%TmT=>MZm)KYv@%nZHvGA`Ad9ya711nQybyk z+f#mcc8(JnTkr!V8$=OSI-?LU*=U$e5*sLS?VU5Tx8p+5qwulX(=RUdU@t=>kpbcsSs-?|+B?_1FJP>JQ$eN-brk84{>v z$6B-ICD8U6;aZk*ekkOUFj%A{*0Z;$IJXApbjdr@Ikyaym1BKvfM^xisRRZ|hI633 z#_J%X6BNeQltme60iXCh!(aN(NnidI7(R{n3F3nDPVf}m zzyA^2=gy%dr>YG;`jjJ~uLXYpCNuZ4k*J+qwz??L*BWav)`TF@m`O>*<6`Gj(WvB{ zqoo7xk10-nLPD_MgRLaRmIhbMNp#G{Dnwlx`-DzVktjfv#PQhE9$F(w8hqW8pf7{I zi>m>)VR~X|tc74x*OM)cF)S3@#CCM!q{|u}#%|QtzTf6(K+`ceRi`i*VvXP{OS!j? zo*tvhMPwmM5z#QO!aZEr!JpqkjdP0GjB)^SK#jk0f-;`6Dkv8Pbyc&N&nZob$ur7D ziOdTUfzj2gRM`Mi&Qa4@NC>#KiQXFFeZlZW@_nl`6-cm24+6{1eS2RoOy1)2R#ay_pe_$b_R$)#X57=d48n@XI=A< zV-H)A0RN+a`=htz)NxLoCqK^qb|2k2t3b5@*R7SMcTK-dEA8zDe%Iz@QP2bGZP~JX z{;9vyJnsz<2w_Z?wrG5 z@OpqAZ6l)#$Y2MOb-W&7CBsDq1$v2Q8Zgl6j)ukz3BcV})Kwi13(hM{RdM;T9oEMq zUjN|@?(J*d|L72{7QAx(NfPDx#vlDTufF;*NXq3)7s)cADi;g~IYVVgk{VJK$CyP- z2~OesCboV8r8a}Wbp)oiD7c(;OixajolHq}LZTD$EG3D*RiwEKT}cN{@R)?7<@b>W z@PzDk%Gm%2J%M{yD@GgJ)F)Fuy!jF9=XZGGv8(KT{65uuN}dGkSqg!DKucIP7D$17 zw9dPSDSv#c<_p(0`0DlZ+`M^6Sy#L;cBE#G8;*G6euYmHe(mQka7j-1#_Pv?{d)`k z`5Oy<_eRNE$Bv2i+&+PeL&f!Tipy)B&!5Zq@|BF|(kXdyLKVk&X2I5;jV;af$1<*u zVYi$ICgog62LrSl@ZpD^(P+SUL)bsEeEUt$&V`ICy8^jGIm@CfkQY8pvUU|uWO8Vd zo3ISbyMV9`KCd#q_*N_}1KU-0t3Jq3s;jFhuK}PgPB2xB{pbg+p7yzKz(RP(t9`akBiH~*AsOR*?DwSfg- zYR^WRv5_QD)>IZQB$`W^=Mc*Whb2!928>gSuBY5TuI#TQLWrf{7&-$1CKG~Q4W8}h5g4!Tt>{K8ISI&{ceVFW#ERON>2}Q2 z(Q1L#8A@kpt>Sy{f-;>88DvFunM7N)xzc|`q>Wn_T8(`LAjYeklBtxS&+hTnWVstC)H0_keT{7q~ zk`&T4oYm+=V@@WNd-q68MLn62oE*dPKINU8$b5>TMu|nr1u~yAzrT+wDokBc*EMBX zQr9I}mXV6WI*Ta{>H0R~mtNrT;27C|fPHX>!Pa?vVX(6)X`(6SQwGCz^k{%n4qF$L z$H(M(#=<&ekfYNyxE?u!iu9+@Se};AX!D+Xl3@k>Eh{sw*Zx}p>#YKQ2#{|J@BcLdU}^C7+7uNd?fzyE$79m_ZttTJV?>sn#o5fyRA$laOgHX zy3s$?+Xyrih}MYCu<0f;Jck;ehru?e0bXU1UpG+pi8D)`KMeXH+$8b}HyvEW;cbnn zs|c1nXoYbO?2IR$yGA{?{P3N->>oSs-8&}J6`%jybBu=@{Hx!6jSt>ELg}0&QxwIV zgM(w%@^#imDLStZJ;%8PVoQ`yaBhd%K7q(OqEc`QaR%Rbc3Q`LHf1)QqLm^`5|Sh) zWl9p11Wsidi&lL9T2y?h(SO$)LNXKw&Vcukz74#oQQk7p8Ar#593CHV{^CV8)`slg zd=IHBau10RSqQqZp_QPtM-sz$JmBZ9o#&}!pUL5r4^DEfZKZ4^6@HX(_t5grAr#Xo zfA*bYe(#3m*eW(Jrd++Od1hOFG66W!Y3E zLvQhQ#+^OO-l68fp~nq|{NNqKTkkBm_TrfPM=7tpUh&z_3>fZg@a8)UoN;I~L+|XO zp8RQ?9>l&um@ta#$%n>$hSl8c!=UC+u+ zuWpI*0qKk)Vf87F5$Wm$0y9m#_aKYGdQ0U!+nXCqKlmYk^qc=JCvSg)S{58>gHHxz zBp79xd&s?FO@}PBg@vn`V$;^7N{}pNj1Ea^oF(5_W53pns|q)pFc`ovSJ53L0#X&Z zR=mYlCB~-mIY{~q$-0a;y>tdD}#a(aSBqc)zz zERIRngvm)ky?29=c6d`!mkTltW>I46V-jDZYmcfcm`%|xu5eZ}#6gC^Ob@9SC8;hc zCi_%(Z?jWPnccgIzWOAxeu1heNfQ;bItLotKCM-!H^=-z9j&zsK;EE%v z*==BoPB%!?L3oFe9#a%?Whwf&tN11x_lM=K7UaH2j4=xODM>SQafmIaL8r8OiLOtw zGL9wcCaq%vCDpD*<3r!_t^tGH_*NoKB-dHZ>x~B$t@~kAO3b0rB!>#Uyg3F=;snVx zhO&77I)!wM_knLe%N4eqW2Os6I>FDUl#4m4D)93K+SS+wY0

    tE}U=j0B$ z;CEQ4)>0)Ino3-Lb9N11(DL#5q#ARFBE2+BR!P9iTXi=1QG?=Vsv^NY0v6tpqdADl z^J=Bt=})jMj%*WreTjiqWS1Z@`>W_5+szJ9tgddI8CwR&$cj%D-7v26^-rN1`-Orh z2_isHMC|J_s(fSvV0I(okUGXl3;Ld-cEd+(SEfNkI7I8~pC9^Q{pOb*dLK=4Fo}pt zNnnv(r#3eo{oF}q9gP(dB?*gxf7aQ&Y>0~-8}X+*a2g%UX-BNlJAX(1%@sGrvJNWG znj5lY)7%~+mnwccz*w<%l~L~?=d18Nog;^%2A?QiN&9N1Ty;*@WQzlHj^hjc6d-!* zV@sTiz$HlcT5ikQ!IC{+al@E5l1J$sOczfy|Hludt}Z=|q~iWxRs+QN=0s;W7ApZ? zr_k2z3cEg(==}{X3zh=4qKGOS&9$f3cJm&sMpg$jKLr_4hFqE14N6?8n9R})mU|x` zT6;YNH;nKUDd9Qu%ZiTrIF*Bg zV-n1@%Ylp~hI?D$%_Q17GaRG=?~YfxBm^N@8kGqUMeydzn;d0?8KQ8a3@2^_lJ7|%@GWdU}wX0|EE^u(_`df z%yN8>zKZG@wO15bAq8Zf0%$y}^BZ1@F7C@doD(2$P!FLX{h&=RsG| z?Xu`=2$>ebO;zQw_fLz@`tOKtM#3q|5Sfr74fdbc4E}(}up9{W2-VXT>P-M(fzU&Q=pq5p@mT=mwhrJ* z?;k2bEH^S>dQcltLCfnkIpQWRq>~QeeoN|nEd^jSDZl^tAe%2vL?`>QEj|XuR{_%h z&h<(l7&CP)Z_c^sI;tB?`cHS218L-`0+;JN_l=rB83NRpuIQv}uWM)|l|B#$rgq|{ zZ;6;IZZHip3rhMiIsoig<|>JB+y99R2#8jqH2hB!E4WS_gHLJ}qKiufQ%8gm;ZgLe%{=5i}hn$L?Xn!jh1->Q&rwtT(QIGEbe z=bG4=4qRKaEDN0PBhPquPM#rB|EdJ;Ru5^tUS+M9v0J!_fruKOUZfeFUg#N}4o#{D z77HAjt*#ky*)2AzgFj|=i>HzkE7rcBca>Rf``=kW zPp$k~iaB%8PS~sv9L2%tqWtr!xr&>vrAIXd(%sSz02n>zvwrpaXxxS!$!I-Fk@;n- zw%qaYDuFe*3>9+8qlhRu8sz>{JH_7MeN-56zjJzsDp^Vyda9Grx4VSHv73aTZ*gvB znlbd~+V@p$NdEpbS0&-*O(IUDKv#e9(XIaj`Fb7{I7?x`r_6%cUAAM7b)BC6-n7b2+ z1z8%9+R?m4XpfaF_F>bQc8{w=X@0a1)?3s+(nymLZ5>!SMaF!ArtM8Mqd%Y#9+%ei z_V>414?d6B#HtgM;6O*Rpd4XB4_5pkk5$X5EGwkHR5&7y$H~|EnIAPIt}53H7RhDz zHX@ULhm;m8cZGO8xaA*MD_K46Xu(V62U8xJ$g`A0mo5YJ+{{lk=EO)EHyT3j}=fSUv{# zyE`1iT1&#{7QXw=q>Bslg98%Ic)Bc2r`M7im1g4WI&@|ky8AAHmz$^Z&t@ZZ4T-v` zS+)Z7sHI=@>*MQoO?sMGnkv7ID_&f8=Sd4R)`C?3z5a4x(>cQ5#O@_38+;m}`Fm8^ zeYlYd&3|Y$E45V2WA>iH>Vkrve@=dxS)eNRm+xWT-vz?dNjqHV#+m1KK|j1BW5ywT zfKUCCcsH}S(+`mY|6kfwjrC`3llaWdr-^&po#{jS%%ejg#$m!m3&{GID= zK_P^2k}KYpT>rYdUvXNv=$^~ncVzzoiQ_qVKd9^slXRF{&rl_BxETH3#!Bfz#~Kgv zOI!R{zU?~O^yxEKO$!yS5vI-9gz`2Vem~>vNS%jE<>rVV;aTAdDVbi@Ynd{d6g7!+ z5_wqTipY@7E3lL-2KMhY7mkTM)xBtwopiY>>faJpx23#g;c%)OYuGETZpt>v?nujd z`S-WL!g{WhqRfHogNlA(Ntz@Rr_8znb{oP|f{T=9^`)4#c&xHmvpQwUCsAi7N##&* zOkNaPT6$!mL|b->M?wOvl6aBkWLB6j4A+&n%}XdMW!6dj%raLUAE5VHa#7XFCx$*k z;$UjEk=0bvxX92{&k({MUF6;&V_w4_RPJ?;R=O@O04rsl(IkR-_ptwm-NML_nDeU! z=)d8FGIKq&b)n5xFA3D&hwA)OW6e7D<04Y`(cyK~6FZd8P%L(q(-b;Q7#h5^(9)rS zS5WMxyiOQ%zCDS)*G7>p zW@Q^N34EyWL^f|j8_lcZhA5HRm)doX7!2o|i+q6QMMpB`r za5=BnV3BkhR0hO#_0MX@Y|co(f!BS`V#T1AXlv_PKr-vV%iFW$-&N0qc4-6}O9VN5 zWl?mfw2#~MO>cuq%>=gN_o)!oC-sby4a5|ZiPj2nT4TPFE)`+;HH^n(wpL3IvD}w`Vjbi zD&O4;=vxnnZ$|cn)uG*l&zyX|n7P)1(51QhGW7*4zJDyPAAV*=H0Y~9cHoHW#Vg3+ zGf)T~q7~n0+DD1aj@DA2$#*8?F>{JpYf4tUa?MrjyfMydcK4arFJA9}bCDQs;^q7d z`E1B1`^(NvGM{%c7XLk$RiWt@vtAWIA!CG;KHRd}{5ux->sCWxg@UEWeJxQ2Un0T3 zKJqMsAK@^0y}wuVVh!r=n5|o~a>zVRRhb@k@uHuy8y~w&gU>vnlCW8CtcsrDy!$Fx zai{wwy{TkyKvHuwBM9=a=9dcJo^NOU2hOr(x&F0+fBjV$P_P0d!E=m94pZwa>j#yW zW8vOgvLz*tDhr1tFuZTPqKt+smoIWZ`sJV z8(T$iMEjEdTdvsIYu=k8 zGuuMz-ojJ$Jt8YY5Mfy+VG`l)di6*eyx5dKioz%83^L5%Cs{`Srh+QMd+eGif-UxH z<_S(*vTW+8Lu!?^uOLhpoH@x;AxX4}V(6e=P+fhtMwSPYy?=usFBrReRY?9oSs6yA>f(siDHzpP?GeYv2a z6eT)e-I9ifp3QjP_hP&)TfsI{2Qvj@FutSBqA|AT_m|Y?IMA{%X?gjG=QsKYpTfT} z1cNS&NKA%&ero}=I2>I2-yZ>1c!U!Xsbq{hh6y6?D1Mc;WM*T5_-r$#InKTwLn2Le zVA1yVZ2(Nd`)R57@892-E@^{u#;>tKR-@Kejk}^Kq$JnfF{i*5c)|RBz zvjT}pNqKvF_LGWuEb$bU4{3FiKbuPVt&Otej9wxx-DT1)T+t;MluwpBKh;fp7c#IOL!E&s8Gh zr-=XF2If>Rj@AsPVZix)n?gv!=SP*%-Z___FM}E8GXb zcZvUt-t=}Qmg_%lbY0zYnANQBZdq;d7toXIIRh=))&_PDgj?FE+1JA(=ezg&Y3dSo z4{8J>28z8+a+gey2k!XeQT-c=ZhzdD5JAp`h=~6#=|L4)MPP}Wlorgw*L-Z7rw_c$&=3bWd=WG zs%(ZA9Odob!x2O*m@nv&7}vW(FP-MMo6P%+D(X9dv z^`IyJ4$zYeGQpW2K78N@tZ>A>o0i+3S_SjjUvXffVrG-=F(rsh%6bWK4-R%F_HabC zUO}IBD)-^6Fi=z~2Xv}UNlctWT;1Hni@sjDZ4RAVmAepI{FqDZ?!cAY<4EGh2^Bu> zBz$9p(}Hvvq9;wYIlm0fZNDj)1C4yZY{+;xtHxq6bGd8gl2b4@Rr$ETNzguRYUX^dk;_;Vg<)5 zK>7Rm_S+StT|lDN;u&0f&e}3LsefZeB<|bepisJz78-k+(Rv4c050gA+SdCrP0d&K zf3G#k`of%(#!&;lAFg4Q5w6H$>{@q8TrGv6VDL!XNQtKwQXHomw)ofo%lP&-Jjvi% zs|marhbv|$WU2d%jVp<1-bB-gJZ*pNZ=jaSgj?V~uJ+QWDdtI#(qnAf1R)%JTB90@ zGs-`{(K*9gp85BG$sD8@^D5({+POJ>ddW>a{q7KBZ6mhyYv4A&--#s~W(_02Bk_C; zU2d2E=NNt*MdkZLlfB)5oS8Q;94iV-z+}FzF1mullfnBPNo-Bq(0J)@_AAC^P-lrqDOKYW2|ImRA%pkb8rnwJ%qW3kH!$+P^+F4 z@2)d%&OHQ+Is@w(h}ln~Ov3AFI>eZtl{`B}C&3}1_0VD>Xzou&leRF7m=To1OqC_e z3Aiwf_z<5g0X`*x(6yBU6NfzP61)AYoA$G82LjIPb{EU~*A3$~$d>3BiT=N#<#&0m zQQ+1i`0<1ytJMc@dfy|%wr6V5f)yUPiIX@vZ zFho76W)25hj{vTi)zgH7v|Lm{c1Mz0KW}nxPEg%FRpOV5YXa2!E*M z>i6zleIj~g(ODVxsOGK9s|AF!-H62&D`I(xt!as?evP2j$Zc8vFby12hj*GKuUUHf zpHD^Q>P5RM8BjZf%aHXeOslqRrNwZs!Z&h*@ULQFD_QDfBpN{8U+ z=$@06DXulCPe(^d{`QjpfI4K2p3{hw@SgDi0Z6sZE0fM`v8~eLZi})iV2gfuO`g6v z;tc5M`R{0*Ni}Mr^89Q_dA#|FqXfxM8X8`zB#T~DrYA6 zT0&ncW&uR(>puk#_nislPoF-)s?{lMVJ{5A|Njbq96b1yW=_vwdirNvlf$W zrlHVND94wAIC44{e@6qZfM)v=_B&qBX1K5R&3jgcnzViu+xz!14K-?IWK};kjT*I! znJdVg^1=bJL7P)p^tS4(@D^%3oWd!tezWTY9neSx@WxqK7)Y*n`LxHo(L zp2mZA!;SISiZFiYRVxgNR*|xBoq?b{qAKK5CBN+qXeHd4h-?N&-yJ}DJRv3vzRa`+^oVpo3jw_tQ$#{>BZvnA_BFMa~ptM0GNU z$zHZax6;uLSDzydM^wJy8pHN%0U#@K(vks+zU#wde(>}Sk=>QVlmb|8(n8Qo+S3A^ ztdktSF#coiqDv{;y}&UcMP$=rssTY)T-&zFXuN4ZsZL4zOC<@&!{WoMn=a}CQIlqn zZGw2Z-0^Z602(QcP&5dKrf_jFu zTWQBahTgZazGi^`GsM^?8(UsXybv?knNppdPwHw>REGNuvF!ZTF61QO;`{uz)iV(yW!Y&hH%P* zA;yXUzwu7uZmK7f?Wq1(Lj`m^aP99y2~=W8gqbZZ@?&Z(UgfiVj!22Hf_x;~ZYBb` zV<#K@raj2bu!(5+;+65+fj{Zrn|4ZrtFUY6TU*3J$9LApyeNOp?aqdEHeALe&d58e zA_+I$WGG48zCv_7S9}^8MA()nYEPV;VKGk3*;*JSHd;@>!L%|%T^kfUUUox7aIzD z!^ngr2zxS3NYW}41m?ef(f6KjvEBc{A25xVqxq^-T77yj2B3kIT8U7JSG+GDz%_m} zTsS$sv00SOn>l=U$LqV!KRc>a&Z|#nwTcCKjs3aG&YUjUqD^x_$>FM`WMVQakB%u7 z(eJY-rG1nlIeIF!2-d=gj>=-Q7?ygsXUCz9L3GkGKX2N6Iuj^-=C?{INF$($n&t>bI zJd`Mj!O&)7!V4Ump;2Z@j`z)HscZveN}1MUv#;hC_YmR?Co-GVdUNLZcX{DwD_6WT>J_|NXnOSBPhMo$AV09zIo( zl`kh~Uj*EYeo)dRj^T8_lSTA+84*1!xi&XK?W3_U=FiZ1a8Nb*=P^9#CPp@aZ!U~Li& zgZ#xXBK=jMq2+&pj)Wquh7pwttB-OO@zCiRnomoC$rlyrEuy=V@$&wfgl<0a*cQ;7 z_r*=VY;-Qg41W>5Whcfw0>+=5zz!^N<#kx>i_?X@CM&{cLkt9^eKFz4O zY@#p+jz$WwvdlbFj(#Xj#hk7?TU-o)ir~Bm#J0TT1stkzMtkad2W5qc|A@UlA4zOK8zln+LjtY{Ba?8}&X1Js`2OtXIv_xESu43O?KW_+;F!=t zAC1HxiX+<0_d2Tpakp`eeNlO2JtsT6Zc)`)doTE==bRpLn-y&F-YGZu(RP;qOiY*$ z_zRHBfjKq2vA>pVFkMYvqP){|$wUY_l%@@TN~QoClaNCKOyP5aWPCSTl!D;r1>tfs zV{5h0FT-g$SI|!SRiE4^3BK^Xu$DkXvQgoxwE@X(i;W zZUJ5!a%(m(v`A*3A6KKMv{Wwojvnrr6=R0jlSwgq!Z$Di+<^PLH!)1Cl%6|NqkAq= zYd;UfUPmy=pT4!Gq7RzM9@C&soU2haS4#@I?0lM_GA+&yKikk#t%-|miMzcqhpIXz ztZjZu5o?fu%uVHZn}fIqgu(e~Z2G>mAFt#t|IC$wJ8dF8x0FNlPI6A@{gk24E$+W09RV+%5oXTO zmR2Tu-;q1ztklOHm?)@j$g`uMzh2kw`7$KaX1?;*gKD|Px2wj5jneSZ>i4)4r?QnK zhl3@^LEE&XdVEi}V$X3h`H4P8`lIBHn_8Du1&4o?e<+{XL<=EfSscvO2l^%Eo6o(h#l1gJ=7QPWFr2X`imDNvmL%P=B0HfN6OQB_iFEL(9kk|g{_x) z+tDPpLRMl14UoUga~QUd?w?q*EFgJoXKSmMcdD9sV?1@LaNXqZ-(@_mwyh!ex>I^^ zIsLif-9&!=>+>{(uEzEEYA-nhvta)xb1Rg@@LZv>qi?nV;3)wcTG@nXh5 zy3P-)Kwv9hWl;^)U`JZ11{qt80*btGo3)^hsN3Y z`(W?h)6UzI!-Bg9y^~GSpDWL97ZYh^!#maW&MoMXL%O&<_YC4Z+TSM-{jpf9b6FMZ zdu`SEVHd2Ss$gPb>e-}+0|EasE<4K;7WtmZ$qYz>Mlfm|DZ%UH(%48TJCN^>%tixs zs}w>+nD{8=ttoJ-Bdmo}3UjluPRONRK)Qm88x{aCZ7F{6|1v}L^j^@y$Hh)?nvPzzdjwtI{d3pPZFDtrlFX1~E_2dBn`04d3EHZv z1;?dN!p(Vkn-EnYI1NHih<6>my4!OH3Hc?46=MEEfe_8-)hrkI*<8df@6e+sb1Rz8-o`p8{8GrjthKSa6F9sm<6)l zU~S&YB}Qt@8-ta6yELmVR@0Y$C8b^u=We=2vKtM~scWLG89uCo3F+6Idj(%>*fnjX zQ|+A}o?_`4srJX}7g?$XR;^fej+8nJ23grZ=Dsde`|@4$>KL#8DF(ueS?BTl?*;hi zNk0SkV(plJRKA*(BJV6;B8!2z&NP$k`c6#InMiP-=T zPhLSGlIBSbJszr+&_LVM)6eA6uUE5zY(Yx@ZhQ>)j!Yez5by8nbQTrs86@#NIfL>l z_;%?Nac5-tX`_K_oro#T&G2R(zwp{Py~HMyIcZyhZp2RtL5?5|a*{ikAwEihea3&f zS_k9ko@@&S=bYeB!lA)IqW0l9ml?++lP6=esO-q-A-TecM)yOX3Iab2t)YB{RNdmU z9fZQuxl=sdvx9qBG_>IXi)jBh;-RHCyB`4apXlAx=^%}6SL}R1CwDJ0o_eLftUoNY zcyUjLxYI3zU_#61NnH${bVf}{dq3bcbXMsF(^Rsy+?}YpL_Uf^mJY`brO`Aq%OODz z%VpiH=jQbIqO|^H>RrcK&pN3t{=^aL5VewC?vTrZlEIyu*(DQN1=0hWoQkyOzRTn5 zpib}Qjvl3j-BaJ(HA{5Vy5!qbI%@5$ArLs(ZJV#V%P#= z=56cCFTlE>!e^sI=)p|vidZ&S1t`*A5!SiQXCJ}hFiGb$@04y@O`*Z0P@Uh-F}UrP zlR4a$CA%qiilqAVOLp{DU;cf@e>(&5r-Eyx)l4P~t9j}9cd{6Y%38?}(1kGiKmR|J z!Zi{u2gWdoj90jhC&aS`v)~Yn&^{2K{Jfc-v^mf|dRxHV>?!oo>Cmxnwt|95NJrvC z--BxDm9JBcXa;FUdh(26wx^`=C-EM+p(iF3>8497e7^BI)`#K|Up|kILsPbjJ(fgr z#~S1CY{}+(5JCR>9tigN8g-%lT~G0C$;1`(8$Zn}Vkr+(?w!;(n8;UecAfX31cZDD63P%4P zj|!QoCnV}I+RYh=yYw!C!zMizzf4%Ir1isAwav|=q!pQ~ZkeqvVZ($$y365hMf{`jTh{3OlEWI5%_Nzz#A z-}GsOJ4rXyL0hf^X%lsU9Jx+CYnN{Ry@V0~1RC^$3RJy_<*Xu%Cly6z2BA;2*39u- ziX~{X^6URg@!3}C*!rIpSczD&xV;$BhhF>VT7<9;sG8Iz)ZH6=M&$VOotI1|3UE_Y zeQhX;o6B0`sy}$^JC{2*D;6`)NWDtwjLuVb{w-x)!t02yq&$#b)o%*VvN)*0IT+u5 z(NB#}5KGd;XmcqVF<aD!lZpb+3`9?o*Gub2bQg9{&g9Wqu4gB0&_aM$aiF@<^oA7(uU^SLhzfKZ8 zx}7aN{zDo2k?KwA?9YV8TW$qu-+0$Zb#1F_Ya9ArLy{`+yAdYXDpreKz%$R|G&?I+ zUCdXh<(N6@N@2~sNvtW&IpB!+Wr;)h#KG*m2-8Nq>{r}CfOvVvhaF-y(e`A~QVRUz zm&@bPc@mZEW%KljRi_w^=Lcp_qIxCF9PPN3vM-xnnO@W{%zyf)A>5(i**|Z%ZR)AL zurU2&ye>91d0vgk7_-{t;FR@hkM`&O4`vQ+5RvN%oswC(Qyv^}e$+W$c}XelUzA$P zdEmLOJVYlXXRoG$MIuTdtnRZ~q1n)wR`2of>Gr^cSLUrlM-q+b_~Zcb3R;qgokU=kO*{!%!SBX>qPa(k83%#I$LwdnX zzqmuahi(279A5yOS-JC@?5{d#BE>D7rlZgvVd8JufN_c%DN%N4sE5sIMPp($`gZdE=yq~{ zq;XjP~PV6Cj(P%iI7!XwMc>C~I zbvnRNd%D@l-BniZqQT7cvSFz2w|cqObd01P36m+4Nf{?$xpszlh5O3fv3~Kc*~=fN znX!~C{`$7{VKq*{TG0O^Wg9U-4xPZJWjVl+)rn{%z~5dv(B!AFD}`UsFe%VB>M7Uxq`z@f3Q1iR9Z#P~Crf+huiWfDL6q@z8aI+Ir= z;z3<7G>`VV8V_~bFuN1^lf58?U@ZCRoGO=fLrbLYE`_ z3E^AqZ7$u8ymc2%`iJ_GX8d~gSTJ0v{?Ac3=?;4hG(QH2M~>%UlYu4|PwKOZ=~?-d-|ibFj2z+8%R3dR+1U>N6Y{5}K_@0A z_UR*6?yPQn|Mbl2R)1f>WFG|=?*v#OG{Dyv$H&LFyXUQ9%CegtV5Xnkh1m5VfE2T< ztgMVrV28{Tlh;%r1Tp*1*6>31YdMGfD@&zcKVi-Y#1{wo^IM(?ttffKqeP|K*dsl8 zNB7+_1$Xwr_}{`Wsme7{iU8bTB+{h#4GK)7&mDdmuw>9`1dTQ){K_5F#TMuXd*VqyNkUUGcDscXHgWc(O}7$$2o9>yzGgP1X4cQ zGwAQMM^G^k2v34VzKgj>tB3&!%&B$%R!>)VO_}`_*8IkvpR{xca4C0GzCRp`QqLCg z3Hs%q*_HT+PxwtYHl=ghm9=Lhq~z+-cyCN%*>GCCl_4#>pa`G$im86bu*vI-E^ z$lk8S>GN1dPk$=f(f59gL&hujO(E{2#FA8z_|lgwHrfP7_s6uH_UrBj~a9d%q(P}`Htaw zH^5t5G=zv-ZvqkfZ;hpx`{wH10w~VEHZiAgjkKZNf5n{$`h!B^y-lqPFXs!`Dw?#Hq=LwII>2fN{pRdU(11`EJMMh01`^Ti$u}WF%1sY9yXSxo*uCD& zz1*+Vqn9x2LbRv87n|?d%Zl(RcL5!fQjKqf9$7>lg>^utuzl2p?J6)n5Ua#{5N_n%gPGP1&G{a1)GQ3E z#2O~tty05}0xYtae+`d>;||F%s(pSjTVeW9@Xa};Wj+NAuV1RE?js6Pj2_AMSuRiH znmlD^RA^f8Z#;40=-^{*oS@8?W~M+8l1(-Z^Bmx$a zm-L|Xgcm^47`}I89yT6I@PzIH;Sq~AMQJRFxPiGCC~=MA=82<1@XjBhRA)yB2S9}&WVP>Jx_+u-CkYL%9en7{33 zcq#pl{sa<5zW5h*i*yi%bsHslmp3GFYoDurz0qVK8yo7259#9`5@;PhvPg;}z zcl#}?bCRiaf?2@IAlq=g<9J%X-1E7&vxEy^CH%yG#O|vHctpU^N~5-JGINF9Hm-aT z=A2w)A4#xB@}^HCa3#X?GojO>5?>Gi$oRev8k%Nsnx270#5ZL!23#b^IvU~(skUpq zNjJb_ZPq*%**{%o{4(2Tu`nU)@_MkjGH4%`t-(z-!rt-By!n@@%QVX{?Rb0o^a%Q^$lkSvm+7PSa3&L33ps3 z;|9Ndtx&9vpj(5i{VZ3cjih7`tcAtnw8ERE4OU-Iv!8d^n4xgv%= z6sPaLaUCS-@w6qtiNKoRtqaeZiM&nTq5Qv?HbH)%2F{AaewTzd&$nORZ!D zJ-@u(wbIs--V-ZHS8=oHRJSYtH%3sD?{DWojs<@!e+<@mBY_#K4Ap!P+UtF%c;XX@AB-i^FnQj}Cz`(PM! zy{{Hg_izC(I8=9EjlDzC!Ln9vZB}l$e7~)q@t$0}ab0Y?uuvIP_2)0g9mdIbu-<&5 zIHYCZD)5QpxMy-~*M0MT`6DWdTTqb8fT0 zP%AF2neTF6J+$Ee#h@Q`QQcI9A6jG3F_cAsTc(I$hnn~G?<9RqKRf^6KOI;4-D!cs z{)w&m8aHM#=NZKFng0olfS?&EC7$5na{ZreGnz`h&ss7f3tlDLzSUP=Mxjd2UcbR( z)pbcadr%!?a#G-&s5DRP3(C>?jUp4+FW)0?luT1jOJ6`s-;o&&@AoU9h8tndF&KTB z5b;V2bgeyWYlW_3K`Sy8OX+62eo5PI5e9rqC_b-H^|GC^8RIQ{`(iMcMGsPU?8W#@ zOWRq7^s>FeWT7|AP%Na}b6?(7MRijd+^yTZi1fS^*8Y6cQc}fB;5A`8HcSntcjz1`KI4Z3UDE@ z5%+!h$CS0s$!H_|)t|Y))Q27<&8OoFPi;i3`cp8o``~TAwO#Uz zw}Ti19+KFWQ&(Odgci1P)e{lQf33JQA<`1d=zxQ)GVY%&CXycf+ut6iy2&$NFzZh` z)@4%gnW`u%9{7zyRRPy4W=?Swmy}VV%+6mtrZ1`~iYL(KD(De1zfR$Ie_2%dp6z!h zi{GZ>N%-wmwl)N9o5w~?%F*DZ&wQ%)IRV3T+(0(!$Ra zxp@Q9#LLTzqzCs_IY|k3x9+=-3t#5&V~Ae*SM%HWzG#k+&@uY4zzDIM*_B($CRt0f z&Vj9Rd6m%1(Oy=R(1*WiWs7sM-aI&vG5YyWzM)lCJzb#z>wJyczM0#!x{|ZyD);PH z6*6Nh{W6n8`W^5U*uHu3Y*$W^e{E*>NU1r@GifS-qqXaGTETtuJZAl@gPUd~r#Psa zW^9dH+fY?SMYdTtVv(hMnj~Wj5!p?i;J2-_gD(-%ujw2AH2m4RTSJw(k#WzP|8D8H zEVkg8KC!&S+6w?CXhUl5rV2cbZ#9y)1~P_Rzvgx*I1G*!#h#USQ0D(B-V&FZJtW;G zk#sk1z=EEAEb|$lz_-#DpNhLl7ac%CqUo_YJSNk+36kLad1CJ0h^+NG=9P%-jpR!b z11{ChaB#(U3~Bn2&}WBbF?m*EBX^sLW@! z5Dnc~L8Y}cQC9}$BR+gNgy=lOmP}4!*xwk!c67a+X?)mt1%uNI*7zSX4b3`#xXV`6 zlf}pfJxEoHFwxep0rfJ=>-@o`_ z5-vOcm@3Mo)!EM%Vh!Pf*x(S%z+5wXL*^YcR5NEL$ohR=Dp82UyE5L?a$&ro=R7VT zY-ji=98hLF`3}CY3GL8Ynd{ACaG(3WB=U;;%-<4uLVvF9Ki%R_%?Y|lRZO2j$1Kk$z}Hs3sW z?Hr7*6-FNL_Mt7swf8&$?CyEcY!|BG{0k3MjAG$f5ey|YDljc^SHxSQ6WP5xDt{CRymuGnzrrwW1@hyekMQhr}` z9vF=x)H`mpw&y@@9M*<&*@+nMS7Ty_tRZNo>x~J8x9EF_J#3=bd3pepN5EfwFAD|p zuK@Pon?c&ymZAP$m8gkQqEvC@1=Q(_8&b9>h{Xu;97B zMk|JByy%t&T2R1J=;n0%v{ro{O%=1Vb>fU&@5D}2kGV?L=8(yx?-08eG@MA0c<`g0 zES*b&@Q}?0pG@DsbCHIAx4NRPvtOuNU<>SNlGvH>2sXjL4vK$-ImPa}{H)Ae*chdR zq}X|0n`ph_s1IzGCI!3Zz_a`)UGwrY)7Bm*Dk$&`vYIpy@!V#Dz&V>EeIgEfiD{uz zi6)d*P~(aE9=!GQg_+F?R>yc+P4dTB`m~y=vBj3Fy~@MAkoQL4X;4@+6|CbIMSAaH z+F2DJPI!Umla-??>_mT1k3mx2)AoT2J$0j>#OcaN*r!?Vmu=Ya;rLz$0v3^@fexh# zDfbTT=aptP?JT5bq}6qFTJ-lGyr{t=I>65Bb->l06P8{6+%;Qg0j*_iM@k#A+~RTm z*smgJJ03Y{QT?Ad85hA%P|ibW5va(A5~})jR3sjIb_3|i*dXV#>k?<;CqDiCHR!I1 z^kGUWP*#&URIi~*>ppA}(;^xrt)&OWvH#o!mb8fkY`kVGH2~hoKOZ1M4$+m8T0<8|KI<~eLuLLxsK$zj&q!xoX_|5e!U4V3R_3W*#hX~D~i1*B5!Ll zDN`jbbmghh(=YyBzQ!s|U*^-%lVujT&76#T?g-n-$#6;be!l3e0we4SKwWfos%m`T z{Rj4W=zfPfy>o2!zbHl0*N-(rL#v%rC#MT2b}TJMv-FE45{f#L{Ob*H*8V(Alv>-? zRw2ULm^{YOe_fNtjTWsVU7N2XfGLiwafs&&Qj4P;N@PjeX7@iQTX}QB^K79uOpA}N zaaS}-fR`Iq6@)&ap%gj$FG}&|H1B%=`Cxxv5=SFH4W)hJ=A8CUf>aasMks}A+_15H z*|$>!KLrH^UU$BT#Zp{=Horz)Pb;f8iWjF|URO`Ug1 zYtSyXpK;Nm%$i<2UM{I{sVG+a4AL%n>&2Z<-Y7-krh3n|VwVhwd^sMp>599B1_|xh z)4l2f^~!>NczQ^{6-s9^O|Jp6q|UG`ud*-L78*m{xu{;)gY6>9F7|;gIQ`oS81zp> zJd^)*o&*Hez9<6&-8SQXKixHtZ3}!*&=F0sYXP2>YgdN~VnCz7%1beo+YiI!1NWTv z*C#C2#y*V|>c49kqU3;Cg5bRg68RZ42k1(z0}0^jU|z&%nGK_OpQ9(I{*TS*al1=+ zBuPT-)j?7(Z|g>b?}k(x{W>FoN$sfxpAF(c@%xnJo^APWF3-hlx4cLqZmGf18~FKx>ROb`^1S3d?v<)m&A#0SMg4DZ!OZ{ z7(1xqH)ssGmKq_Yr|sCfiF#?p8{6fBdwRH{o1bj|RIx;8J%7~$r^yn~$NHp%l#oXx z!wNGyD@+vyEIwpO-5am^d(2h_a-Ul`-6XumNPQ|O>kLHiKg;dgB#?7zi;IgK7V%lzYV{I!%>exF)c~FHTXAP%{0cKJiwrsc2~zB% zEG~L_xG~X=jBlCcbI{6|jLk{z?A_H0;1KD5JcZg!;d*cB{CTce{?!#QbJFsrVQ4Nk z&XWLBD^YfN-@Q?yg z%zmi#^%fJ6KE8t#jOoGs5rJDk=2R|ZZMUo7*_2I!@iP_nkA!V;Q7k3`yX+fi=Nw|V~5~r^jLG>u^%pKJsnF?V6 zIJw)%Q)rmzU)DGcV(xe^>6)(f z4i->B6M8Iw|=NbhF7%jwh4S|)q4vJ84+@Hct2#5@uX|ba)lRe7Fa;{=V;jq9Xx!X-{ ze4OV_G$o&=4qlso4rq*KZ1_0$@{?=Zu;$nEJUcmD+Gt4Zsr4GXwx|0^!@|X;yZQph zqM^nH;=HKqSzn_aE?Z${p(Ro;zzD=qJ$K5<3wfFlEnhTwZcocD5UT6$djRqio_S>Z3|r7xVRIutSoB4Amd?CONAieQW1D%2?!p z#;KxV9E2o{qTY-x=x%Fh%wfojECHh#MgH(e9%aVdE;y$ULbmTJ44l0ESin%&O`HJ3 z!P6wy0?*9L!|u`lF&r$5Lr&WtFb_jn+3~0hBe$rip_?R7S_EU3gVrarF9ts$Dh_ln ztcl7g)fKi>Rn^pyo7*uzi8AAOrx?uVEAjbh(79B#!zVd_R)Um zVbA6V`8t9`Dkcbg1@aNXjD)uBTyCaGXz<)4MdAgJ|b^;})=wkPM ziWh$*CcxI$oNB0HqEsyOm%I(>dI|KF5m+(3D7rQgW$}`~xbTv%f zB$M{}@|_-7YL~gDbgoy|eOoG6iMC^uaD|c|y$oh2S2q>2k~YFmYsCx%h2DUb%pBMz;9 z8HpRlct#>`LJ$BJhE!VCMPblQ`&F4!Glv6=>VFLfws)KZE~w?81Tz5a&M<<=~BEJwxpC(;bxl8;(!?$K+<1Fph)88PjzmY_CMkK-s=qc4;E3Huv-AuZljS`9o+;Cn z<6nKz%RpRpUsfMSB z;etng7B5X7X*H|MhBFtID$*iWhtT8SnZ}8#EhFN-+`Z)OAe3$n!t81p@S2z(YtsDstGUT(aYf z?@yMjWYa8vIo?tBhn9}GRBw&vO&5pZMu((&ifRJ8R z+3Qi4$$r>AV_#0GnuDY2T5YoPaZpYZ1;qUnr+;upw<|DOd=;olAVv<`SC5N`?nRjNhQD$5bqcobHU>O2me7==(Cs` zx-nm8V+0Ul>)em66ed@K-?%y!pri+u5ZNC*MmZNY<%rdAlopONYUJTcRQehj)Gn)V zCsc{U%_i;vcdAgPisMaDps)MDMpoc;IpJR#;_gBZb8xarg`99>j{$n(gvE!$F9{&6 zG1DS$nI{dVM-h{3;-itN_tL^$qF2qJx@=RM`z*2XKX@{m#t*AOwXl z_mfk49lz?^G1#W!);ESI|7};aH(yG9PjyFAx!p$_Vidn)SH4S#DeT`1TbJ0=SMe_M zMit*uEn~IjOrMffi^`(mH;Xm+k-C~JGXvxWLI z%6uJi29x0tX~WajiY*lUL>76+)2D8i1dGg8G~9p|)jw8q%$^#i1o8@=N4N=gA`E{Q z`?D&~SL}9@zN3z6o|9GtJP%;*-1GId+$E2k-w^% zdBxm%>Yn2&<<9wDAL85qig7LiP42jKhxTjFuIGee-KziIF-GG`GO%d$jy=o zsjIK2COh;)b0kU3$sPCw91F#XD&jog4&JOK*Dg_76y0h1grRnfd}6!N<;HyL4d8n`{!6xL5F3e_7!Cp>q;~CG(5K(#0!8#j>_ks zqqwz<12r!Hg5%pJ%fCs-Dgo(VuO8UWuYc!woue}JZxN#>SM&VED&H$Y)dIUawPl#6 zri==^?St1vVq2bsNUBI*IQ{hP$@6nJhoR$RyV33!`vY`;f{|9vdXpgs#zKqojM^5{ z4#~w#nE_S>bH+6EhHKT{DpnI$fru5$y6SL2fRz-uS)MG;r|81OS5jVr!a@&0Hjd=BxF zc95p!=9REfyxLjPs7mTe*xz(s%k|zmSI8Gq@anR#im#yc3IE0)GWO_5cXlwbKcp+#K{o`d(M4)LykcIrPl|mFE3kZdmGn(J!_|@MSyS$2+ zGt83vD!2K?`R5*JiZKIv0m*K>4*{la1OlWuqhdesfc?#lDT0+I`cv~Wy-XQnd?k;Q z0NqYae*P&w8{Q|2&3x_Id#jUg@%6m35iGYBkO{W$z7~LQzzv+@e?-Uj!RP~FZOx)F z;?aEp>fJ^nCz6!V@pMy36`65taFSVp5p#?FfW5uddA~&01T|2 zf+xOVe4W7(PlOaNsm2S*=GFLc4nGW1?sz$GAM{E&0qlUM*7}|g6f5$5dGO9F6|0QY;gCe3bX6HG zs2a3E%+0-rEAj2y58WvOYv5EfOh|bMoB~CJ3jhwl-NEuZFdU3P>;L?NXIkpltKQ+0 zEN6$)c0e;IDaVj}sm_GgUjFY{-UN;WfjFjHDwYtz6+i^6MTk9_f^F`!FwBA;zb!`s zeDdAy>*Ua51^ODSGPev|Q%gbA(t@ zy*?%g)2*o@>vsv6ixN17eoj_pgG46`oxHH-WK&XMb2D_|M_lG+4(+Ie@NUy;S~F$n zK_^K2eC|hCT@!)-baRybUTOfq075#DVK$Qn3SZz%7@O;eA>sCFoc(B1Z4kpCvSSkg zBqk%%1@Z^u4-}9<$_tvV#y@#6hP7$xSzfE>x@3N9d<&ms=L-E>S`P#vO+TAk(D=HS zJARX2Sr}KtU`9cGe1bMv%P>n;s>`iap$M^3X*p3o)j)5y;5jWX#II~TfpCw$Tz~2b z=qj>ejfll?&jq%vgE){zJe$zz0xO`gTx`gG{LU>#gFTQ5TEGyrBoKMMd(^LRxHtWT zivx~y6Yugmob-EY(rhSalQfVpm%=y%nHOY~9A)w2biu}bq=2ii4%4qEeC$7crBuN) z@TfhpH1u~3C^6N{VU`0t9=<*h{Dyn$f{=jV;sOt!Gz#_uHz_o#Z|6$OhF>7F8z%Vl6 zBI@q2N0|uz8h!Zv9j(r8CDL>`a8#W0DEwxzH@IPzt+&_YUXH!sr9#07gOs|Lgv*7bH`p)&)X?AC4s`)aY5ZBo7%5O z*`!9GBog>EF1v~#3_)$KzuvVmLeK6B>6{85;jzuSr@lyB0v^W#M0A3Jalwb*BaMH3ORG%>DyCww5%?Pt zNMhttn66y9i!>_@%8h$M_kq_l7e?Z{_b>3?NG;p@JYv=7Mj!n>KX>D=GUT^J+{(3| zM#)ke<(x0^SxMA>D9-F=`&H=LwQHmpcorLY?o&Qpj0>^Sq6m%B@$*u<_J(76K3&bt zbolvI!t@LHJ$tvGcB9^(4UqWcM&U6I%e3uaZ=Ov3h&}m?A#fSj?M?s+`RlPu?01s3 zb-wDOnEZ`N_47w^Bev?Z!~k%fMOcUy@BY-ZsE999LRoJ;b= ze6H%5ye@6I?N8TBvX>nZ*wm3->om63eu^!Dx}VG@22)U zEN@h={iN`(?PBcy=C9us@Z;4TDo*g>^BQtc@Udm!T_A9c zk6TKA-EN?cJ9fN0w=R>bW_q6wWsRmV8yZAg=_H6lS>~Ek8Tem-m($&vzjAu~{BR<) z;=cLSWLieNd1$cKq%ZQ9oo)S$=KW!12RtSV-KM77;cWSzA9e);Fs#e?hTbY9K9}(< zY|&BiZB_T!1D|6o;J&%T2ZyM3`1&aQ`m)q;B~tKZwk(y)b})*KG?3M_e^7u^y(bjC z{;%(YRbkc)4yoGM!F9N=}c2}0+D4r(0(Qw*CJ9Y*CX%u=1@=4Runr!^}ZEVr3zu_`6$ zhxfgk*b7pVn76l^v8W$>mzSm9dr<7VL}~?GE_hxYAlo$pvue@jW~IH(W??e6lToLR zriupbbEiKn97z$dBD7{zq=>hroTD2$3H9MQS)BKjg_K)HuAWQOi}O%$>9#^Q7mSXK zVI*Tm*BOJ2_X0DOEf7D2qbR}I!7O=RjB*K_ZByo+K2H)wQ6NfUEmyKQ3FjsFhdE%! z)HKN#^wbUx4`WGIa=dU;qkTigeH$no%qlzdTnG;<+1HKoDNS43dwR1(v%IAJW_4-2 zzT^IY{=}D^WWY4%Wc|SO^WFYLvy+98$&}lEewkJ;f%B@Dbdd4&za=es?DKwn=db_b z+#s>~A~@AoWQM_Y?rQ>G*OvxxS%_**;TYp@u+T1O538k3{9TM$aDK3a!y%UHw>G#5 zA@_)NZo}Hpp&I9CyJHMv4VX@(vRgPtDdQjqb{Z~8onwMzT5=Ld?*lg`DT#UnpDw5R zoNxY!Va(XJ{-cs~-Z_dDxc;8q8us*II)Vea%~;QQ*~`9jsm}}a1IBpqG(4=&IaTm$ z@VW$Xb-GL<)two`;HG6Q9vm`jCNwZ){VV69v`CyOy}ZilpQT2-lP_SeAb4bIAN~Sq z6Br6<7XmPM!3imxLJ0} zq?LN-QoSS>4ily8O)SXF!>%)tB}L-njO-L`dmi+bSDHcmt#j->WXryt)tx`Gt^REw z)XlknN}`hj6xb&7#1R@v__xWyv?F|wmuQvsx~pAKB@5%1Hs~(ygfxsO&$^;na?a4N zeX-tpSB(w&*Kvfg<$Rcarc{f$uL1K*k9t_}Jn2mW6DRt6tb3EnTq5_ifMrz%+62g8 zNV0ks#ig?oAqr|>r&iL;q-m^xCJv|*471NYP{00Ikf?b6x92Tv;JzaFI(%0+p=}fC zLV5uRmY0$^GDae7i$Lk5taj}DZ~6~nHTC*noT%KIoz9=p>ug-HQX=vyRS42}Z04tY zSJP?|FP|=%72nlc&75Z`*yx;E5MUGb^SJg`vjm{sK8u!B`RmLJR6BgE#t+GyvV@$O zPQi<;A(Mg5EmS9W+QV3IsD#E8RHIALG45Yho{Qh??ONX#( zLqFGt&GduA;o&6F;y)vn29tsr;iDmWGw(GC#h_Rq2&;JByF7j5QvExz&hXsF`esWT z5Ke?YrdT}qBb->yBdJlZ^7G>I2Tu4%ao_~$@Vv}UD+>?>9B^;(94ik3ILjE|>@=<% zjlW>&*N=%1o;m;h8Ghc^|498f?kv@re|Mv}y^fn`iON zL^X*LOn@*ddAw2cf0#EBH&wv?-Q_@(1^fG784rKJ5(-sA~=XL7(RZ* z5=|-e3)aFH0%N7wydqS0?l__wye*z2T@(8+wtk_)xgaAWkvM);|6mlh={DR#TN^B| z6_>fY@_!3k-^#HTIR1_Cov1gFSg$^qRHnXF`DCN*ZrckcGnNvAV!$;mHm!IBk~<7x z@ShzT+cf>=bU7Lso{fU=Jrtjdi5?AVXq%rAg@>7O_sgb6tjF*jD~mX;hv4^rOOA6I zmNvgbRvBhf;DL)?76EVBqNJar^r`!k^fUt-`jg_UO~db4{!G_JOW&!TIRh_+#ueA} zd8^|DIi@o{lY!-yRa&*kVDKBtv-Ge#elcb_=nes=^x z!!r^deGxkBhECe6>iJtGF1+yELGIwk@ISvEjt~7}lQ@uk->?hy#A+~r;9mHctBuXC zA>F?r^$XG;+I9wGE$kVJlc)r?Q+5Pf2f%|Eu>7HaX2zJaBm^6BsEN-WS5aE6YomA# zj(`je8SkuMlN!%k_?-|<7|BoL!v`Sy)N{uG_X68%8FR;@>XG6T@awJN+J+nZtwvei z@Y}#EWER`rPS7acV(x16P7oqG3NyBE!Q;Frl-4(pf%EqmdcX#mzX(#-Jz~$3x5{2c z>oFEQ_}W3w%Xc!?CBp94UB6PLjGPd~${P&+PV-cRgmv29w|qxyej8`NBVw;Ad}rHb63R)X( z0ue%2#-WX45{f`&eFTE+#tq}U`fQ);kEBgpcevlfSs)1>GqgW4$Uw-sOc69A=L|w1 zBlkPYk=Vi0e3{3M4?>(`X~!$APJ_ul*9!yLQ`9m8b}qO6Y`#?uo!w+_NIsrz@>Hw6 z&yqdunT$i~ct4=DhI?g(AP{7vfAX`pSJ>Rdd?+lk9qh)cLP3;k3=2E65IuycB-M* zBHAAdfOOqzzA6_HO*7SUFPH`$F1jYV1z|;w|JWNcKKOXrgMn(=cDIxM zgfSNCP(beEuK$gE`;^_?eb49q60-w$WL%(Tw#zw-WOaMM<>c3ctqADx6ScUea%voj zr|9Qu%VBvmu2uK^>%V?4-joyMT<^PqTqWIZVH$ayQu8Ap7kp$COlaT)4wnzx)EQyY z0Eu7QE$fQY7>|@YviHPm4R9kAGh!;2WpLV>ykytmldEAm3a5WTMaRx+lz||#+KuI) zue=aUoyR{?`v?WY2e4%Pw2Ve_e7@T~%!^_=H|)G$3&Q9f-(#0%?=vdtnnIZ+&~{RW zMOmYT-g&T_Q-#6}*BOaH|6z6-K@ln54J#Xf%UVI&%FXf^ioE+2S3tVtKFZK^p&oM; zJ@DR39>|@oMH+WP^YQQCyY9^iShu>(s6#tjK=2|^Nei^_c$by=Tf^<$Nqh~IEY`o4 zYo)OK$P1s+zo<9bu87*1M)uwi(=dZ(sS#|)HhOx&Ebu6j{wlbRYkaT}jV{`JVzHHp zATGKy#kfE#n_guw8=ftwOauyo>*zuzXCP+`3^4v|osje#x5igY?h=A_Yl1fi);BH? zPL75McL9Tl2nT)>3-j?$Pv4@M2Z6k{N8wFTk4fsICc zW4fh)lv^R;0rHsPG#QKv*C&Jv^^b;>VME{$NR?xHzCwl_Hq#G6g++jE2`4x@gb;2U z0&Fvm%eO@>q{?7mZ$Th6U7wKbv`SG1HZd%eN^@IK0X1-Zf5BGMS`3;CTu6aqFtQAm zRsv3#tX;{|w=UIRBsc1fyH@y&0)ab|>I^4+{;m@fD*XSCO7cmSW|AtS0hdO?CQ!1% z4-*3S-Y)M`FciyyfC_>kfzZ<>10<0(Kkvk^%%aGF8Qcp(Vx3^=cW^S~p-@mS6We+W zmrZ=K)_i;lOH6_3ZYmU{Zu^{?7b+|cmgZ)K7a5aGJK_rKvM|^9lTb*{;WS33kj80f zN&PU%jW2e8MEP-)P?C=S}!rkGd^z^6^>|vu0yo13}e%_fGT5no7zX290tr^lH5|^P8-ij|et=jFp zy0yz6Oz(e(43E8SyD?Hj1%?EA3^MB@AAo||;y>}BW^K)4;x(!09}_vKh;mB>c7AM5 z!v5w&_Y&*Ws~<-Jf=i*Y*TTv^R((WWo-yH~Ol33uMV@7Ik_#^)oD>0|k6z?}GWV^Z zl+Hncsd8!t-3C=4NB>F04J4K!Ls4)s0eW$X!tNLbHI8FJ{!JN9{K3h#B5ZuRg5^<; z)Q7wK78Olhw2z_SH?e!@b=y4hhpuEdO%XiwFVx zGWOeMHYhd8XA)pEls~}_i=(+Cm(f>2o9xdVhu+bI9=;vsIj6m02GSv&de8b#V`)G9 z2IMDBRW>u?3nj)q?e0o%W+BJLZ-B05*jR6K~=QtUULGNgz$a3fC?s?IC zJ0<`d83REH!BNyZ#|HvTpHwgnHYT$N$Bs_@8iUR{sPbBm?9;mKxZ@p?NL+d%pUZ-XAbtIyf`tw5`dXEcSWYx3DG~?- z;MMNO5INju)JK`IA3`oghY6O?j}mEIe$|0cP9|yz8KF{*;xanL5C#srS!LWBz2u7#Bg`D^|Nwik?YE@cGp!`Y?ptN zk}Ga|Ikrn~f8Odgs)e}{S_OT&nr@R3_%h%2i??A#nRuyQxtw4|e0D2l@I}|Fe>=gP zzKyHLLnfsEGmuL7zC5`xXJ}O#=zDBOvyYvAWY%j^emJU)JvT^vE=spOcgP?wAQ#|T z1?pEprQuD_gX!W$=P3oJ3sMHn?%OsGWuXIt^x3f~i~x%)56QaiSzWvGFAWQlL;w_0 zQAqnB6D#!G#Orok#@M(#IpDJQM+6{Lc7e%BvhqN;+Q17MU-r~yEgnQ&HCN93erzw8O423_}2HA`-|o&`rdB|ztqLs zHgDtky?+Qeo6G?c-SaNU({i(u%j4OA*IB^v8^_zni*X;{S9pdxbeDf-2rxzw0v=Lp zA-{)zTngV=MDX>U`P_Q^Sy?Zy0#Ci25*mJH{mbjYfl_f?e;OEt?Uv;CfF@3q@K zujQNIkr`eC#dJp)<*ml_O@gcUB^J>hj|bx*0g_nIn0D zq7CwBmg;=GI^1zS&4_am0tkh;3Mu`_o1l0t=UvCU^2GGkZx8rQ;hn_WG4xs$*J^Rl zL1Y!yXJhT?c>rz|PzM4P3$5GbCvn?_nnD)$Xm5auS}oQU-_Ug1qup;MDqT|oW1hUa z2cSp4nR4B^us+{t0uI@Z=lfFEWd|u@hhEH8r_U=b^@5M5V%bM6hZPsb?(cG`&w)zp zc8tyAd~3N$O_8T>4!3*Fcar@;*)TiarvMiYEvNF=eF<<9KfquO52t;$hm$?;wo_aH z3TAzMv~bu%#)RMuQWTZ%Y;ELATKG*lYI)>|`Q zb9@`vIq;x#v;Ms7GWH|t8~%`A1l>}#2DmK3$ynmacn`v#1%r6~ukr7}5OwxtJ{Lv6 z-04ob-F+1cvv$TE$n9lnTRg*3tYZ}8IV>P_kG&3s0n{n*u60U)II>qTpm%eN=p>7DlR_GWMOA6XPs285n(#ULIw zyhV5zg10$0Yyct7p;asDl|&`WRjdy9>wWR{hW9Q1sqj}4A%iVULc87l5Mf}VwR3gq z^k4`*u8pS}e6U^C9!=x8P#XkhhPXS9mYze%jW%|?Pz-Mql@NLUg6Y zG@Ge$op#5rtmV)& z8B{}qoX9vBIDm|H&vw*0d(6`(jy$Al5@MA+jH}V8>7tO$W2ix=g_0lXL%~-B9lnwV z4ZXN_6s@<#14Nva*md3*r5!dJ&y6^U@35@aarcg2tbgXmRwz1Qq!%Ee^c9-?AQLni zMGB3!AIekJmK56k3dX}i*oAO{dhQ4RUK%B_`^!t16%ku+swBmfVdav-863ybluIjW}xm{YLJW#;#B=K_cgYI^; z=W2K1^H~(C^S(ZmniAX)>&E5zet2jpdH-ZQ7pa^Fyc^MlP-f7+_=5&`$)T7ggIdkh zI1r{O7(KTlFu%ZB>zgvjz|J@as(2j8(3LF41@+isJ^ru_%M-f%2DARllI9zvx6||0 zrXjm=TmohyMC-rBNGS#bot9N*8UHhpPTy*C@t*Z!_j$f~3KtY}|B0Z6B2C(+c*$B? zfY50J(chNE%}B59C+m@~`pvPMd&fS>Y*3>*^@-83M)?At$uKeRHVn5^(@S;m&ivMx^4Q9~X{8%%a{P~Nl0^09QR#CdWFIeQ;a9y8$avlcnOsUoo0>2B`6|=8yG~e@x z*Px`kQI-w;PF^2drtY#HFKPWjj7x8Zym20n{2b1qQv~xHmQ^qE>(|Z2Ua&MZysQKo z&EQYH)=#(^Ki7(|t-nmYWA1N})N3O7yAmIF>b*Uzp;Kkn{G!7_B!LL<6Dj>X;_!OLve;wF{gM87fhuOLSy?7~ z9MMa6v&@B7oBt}9zlD{rQ+H#dGY#e_)xcAtf!raB4ch;kxI`_R*1uNAZ9`}UX&n`xNrj_P zc+j*@hl8%zu`q)U{ut8~!7XxNjR?tYd$4mQsul+McIq@3m28%XaJF*2J!E@C?zy+e z!uYkOta=MKhBMd9bcWEcU8st{VXG_#1gBLDWc&5lv7D4j?c#_;3#;kxLuo9QR4Rf# zK(Jlr4FRf^-k%*nK`V6bl#LJSTp4ff81m`Onk&~=;3&~>J;WXBv3Iz(072l)rJ$u{ zA77U}q50^6hI*x|#x7-3{Hh1iR=R0tfM%1&%lw%dhtG~)EunZn0^mlFusCh*6h}N!^&m+2M24 zF3#frO5qbD;qXkLQq0^B?-eMy`8_ zhOoqEC+bR2@W|!6iw}#K18j}1{$c*o0R*$9756SB&5v3h8}R@RLJMdj19O?=XhyG& zd}F*&qUE&F8K@*=aI!{>K?*mJ(rn@gQ!)L)8w=Hq!f%xjz!*AL{+abB`^VsprOw6ApojWe#~%sR%O;%B52srOlh6Uh3COyVL9h& zRXlmbRTN5~@Uar=%7-^_#XD`GU%5VS^$gPExW;~RsC5WR+ZaMX%>s)-?4$rj7S0TJ zsB2AhKCo>8(5F6>v*{eU0lY=iUB>C$6~yC~mJ1rX=7A{Oq~v5Vv;qu#azd`M%~=eq zpPFAwtZE&w|Lq?y`HnOkw?t}I=#fer*XyQ-i*c|+QPsM@(r9oWBZfGswa_3Zu%;F2 ztjew56zZ(!t{2T)uMb)@biYg$*EcM;B{wYQ73y;RTrWbw)u>c-aapPP+Vby@O1fQ3 zE_pmk7TP>fVzI2^*tI1v9V5h{xxHXbqQK6eaLS05<6_ao(E57gDNn13wt$znVw!Q~ z!lh5n#@mtGfoM(RAd%~FurwW<3~8wL*YBK0uVn$e879hHFt$?5{KL^QKwlHWgeN0N zJxU5&DChyT%_HvTKy2^H=JvzSOj>b_Nz#{B{yW`W(($5HfvU{Ynp2vTEro&Hc^ zNod^m^AN=d%OD%t@3$uR!pU?RW+o7Ak}5&)5|RyFJZ4Nbtud$gNbY}X@VzTUV>O|nw0BJ> zRi=Q;N0j@am0-Yc*sV)*9?C{>`y{YmR9+bNHeQo~QB0Dj5kT2%M%kgl-k7%!PWv(X z8|fAfj)dpGoE4BPhaNWym{`7IiUs`92Ht=yJl=TX@zReZu7UN2RMSG=A7Ss34?g!Q z)6E}IiRFOd1)FQ*1}P+-9z#D^elA9h!eD*8Z253D9!Otp6MuR2LJ?D4j5qoXk)O0$ zSnPe&u58uH<%F%`&W6bp*7K;^xsVht;n-bUG1g5m+cm!BrCaY7$UHIhyyrtwCU!bI zbvo;(75=7}9z8~e?wDK7tmeA|&vFzC?p{HMB4?e^kiA=A-L|8$e6UVNY<-2bv8ZJFB(r|>eM&!Z^V z>i6YQT8m3FW-hepgDqw1={(D;%pq#DVJJ};7vrV8_%Fj{iep8b_v)i%qJ9B6akVp# z^x{3pasazf5veTw+lL=Q%p508w(hH?Cx*YPE8Euln#SlP(;gFz<{{jnzlH@87EWaM z<+b8#4U;{&-x$;{zuUv$krXQH=nWsm#JU|1VNRoDtr<^Gs8yacGPTSfQ^md6LpU+2 zZFd}A8N=+ZXL@oGl5NCDta$m@a>-tt>Lst%+)}qIF`3IHqkBX>V@c;SufOPRS8VHK zxm`ol{hf0-K2SF)S5fzfo)mZ4%0UsCC;P>hxqaOk6mpmWdH4Vy8QTe&6S|OVS5rbZ zm0UdeW_k%cN9Ga#4yUbf2>ii^_{AgW#EqMP81EiIao@MeU$$$9i()Mn8P3^+HshWW z2Sej~l2UdI463Eb{h6Ip1L0WldjPoc!Ghv{3Yqb$euX1rY19 z2`okae$-}$?@V7GH10RWEOW`DX?qF@&}tx@FbKq&5%;e zT6QXKm1MHNc5q;iaO#d2SE6cmyg+3pV<-*3?anWqRy_ud(tMr%neBvOD~K4i#i7%! z-5dgMG*B@h`)@_Mqf}R>&%aSX=YC&fAS*`3jd$VQ9^z!Yo3z5>Hj$FMIPZpQu?{hE zLhf?gR*-e5%Ec|>I9#ByY@%9gefBi=Hx6@sFXjZH3C_tKY?|hoqEAk+!Gz=7(c)`ft;=!78?F_wg%nsGIv&QNoG1ilG)mCszPl(@oF8sOPR~J zJ?@*6WnKMq<@fT*vTY>A6vEm4&Q%k^Lv*35JYcZgTD@GRf=4ue+NG>D(`oAa@b6ot zv`3|wXnW5Yr{LiCJjMT}z%&E_V@MU*p&W40w?#tB&hAa@o>K31iK!gERu#b@v$VWi zn8$>5roDqdKh(uKME@&DedQ+CRvVdgJQ#~-qu3>W-V zsu%bsNeFJ}Tu#V`fl(jMWl*~D|8RIOWeFTFZ>xFFweATFSeahXEoLUx?N8JA8HOBw8?_Q0UuKfiI3jW3Y7pi5^H_OX!;%E=gn$I((s_)0@PRns^m6l8 zd#2Vp9&Ym?d*i%EdMVN&9*m^6!QD)NltDeA+$djD+b=VTSZe`&SRwCuH=$pe4rhFOhS@lAapGfB6z!; z^ZZh|Z!+^}kZ3!<4_pt?5?z~a#UvZp2AmPye2(8oln+Op=@HM(JNcb;w?zdLcWwI$(+=gj29MA*qn zOop~_t{l-u8`SobWSuHhSO&~}8+xVY<`hJ3E1>l5yI{suO)!2`yG?b6?x35`clOS zm}1B%RRy8K&0_wrAyNm`kr(Z$hs(mlpjdwQxZnxHzcSr?pbqHmpRP&1IT?oezrWPR z;=NDVnkscdTpe$~1Ab9=MF? zMPiDjlGdT21&D%;7{Ae~u37G}xrd52GW_&d&agnn9`otj3JkJ)QUdR{`^aMrsl6 z4@Up*qW|2gaD4pu13Xy};Hol9>!vdSi6a3b_+DMeOfNVb4X%$05SrCGI-L2{CutI8dRs? z0+6w(_5hCtLp<6$w%!xvBs>(=q3x(b5`zT6W^4Vs%lCJNJyZ%P6#KnZfV|OuF~+wD zfYGa0bI(e?YK~jHL<}L9V%U4npDk`DS(W^^Ye5n_@x$=o6D>oZ!i3>hAJWm$k-Fwe zih#?3`l}Vvb0dOUmV#^9J_vAKa%4*t2z`o)?|-B@!@l$LhMvi3RI}ODTwZfbcKnqy z^^1qbQP7IB0?PmPNXjALo1X^chDv~qyE}eoH4UXw%#ao!qXw|#j0h5O!K>;du)ow; ziN~me)66@dxwjrhGMgh3)caFc@11~WUB$0^D}}5hUUQpIwA>aXlRKm74_!g91x=0% zBQF63|78K@DG^=N2pUWu(w{l&?j3`C;%e#TzMA?0uVXGi`p&TK*Q`;mE>C)*G1zeI^%ySr0V1gc2jsaO0U0je7v5UoBWLHiX$|4D z`F=ipy57@QN8a#xlDyh@NYL(2P5|{*dE=^%MTUc9_15K-(%g26VMPovA608hA#-Kq z1zJlsC9$jA`(_QR>f|Ji;!BT|^|4@Z4`7bJ1l(H>b9GDg);|D5Ef+@Y`rT^!=X#I3 z5YamBAHwB~DzUJ)Ex`PmJIpcvL%-gbw+Sd~#V=1Mey@HX=a;9OC>7pygp@p(@O!}8 z`{$L}RYp4<(iRSK<~B~3eN=n(8nrm@=K$ES+ZePlA4FmvhvURh6?T zFTM#iT9s-#HB4BdXf|SB34Z|!kL9?)%_ZvBj9u#9lj?!@&-yR8^qLfMCu}LT6Ox1g z30G8IYWOl!YoT=JdG9nXfG^{?hQ5#=!z-(0;IZx5J^gl*o*jxj=znrfjz-ppI|*po z{)-eeBOYpn@ngF0S(S(BH&^mDOQz?=MZ-x&z>>U6zz|H1kDfvEG*yZa5~&n)EC^VE z_aU92Z9I=o%sXAFq3^yP5}9n!?s+Gb7P3OP(Dap8PHL5s*yZNF#)7$6btXw&fS$6j zMHC6+eHmlJeD^p~Ds~N7%^L(LC)63@%Mb>tWqtRmc3u{Th9Ce_nKI8Kbl zTgYfiflI$KD{jy;023w0ms~RXG-~nHE`BSDJ!49Yu+FccTH=WRJBjLTGSxQul%#B_ z<~O>fn$;w>*nmiOJ2MeBoLNdEpWs^>5IK!mpOx?GJ-kRxkwSWj!)E^?FtO`^-jmzD znLO8lp>(CZiekRlNRL2OqTKh(J*>lUuov)wKXBbMRVu9GU94Lo>gFUAm+Oox`6sWq zi%qu4YNf>k%f!ueGWc~HY>ETkAfcq-HSgs`U2a4%M@qDBEN4f5kViLgUq|R5Tdgz{ zdf74t1m-jWuZ9<_QNRPom{sEa@UQXt0m6?ZFWDZchG@0~G^DiOAC$f}r(C^Cl%BP- zr+@%+&(dug@`HXaG)yIfEg`cg)2q9Wi|65Te^UVQeTWbcIZX(pI*Ap$S1Lx>@C)pRy6MrWCD&l10Z-&Yu;e+Y=MOis8shiw)86v z1YU>{cu7$8fli6mmx{i^6a%_3zo#p$7eh2mK)1$=wksfVF(_UmEA@OHzL7fp z3^ZkI;P2l4>IUo!+sJ`ckMK`_C_#A^X0Pt_fkz>ecnaKdTY~$x<(jt zr7K;H1-qvviDpAM&`9zQA+AKD6!@nJ%wrV_f+mS5JkRqXYL|oJANQCMJa>Ra6v~gp zpAN{C%F%iN$Ie{!JY*EHDG&nWpN$n4*<_L_!f@D)4c0Tjp3NYs6`p4?o<+tl)OCB? zKpp!et6@)Mmlw-|yMc_-ow9zbO0-@rs^9ejjKbC5d9=VQM*5hUNF`1B6gkwDd${H= zO(AtEKZq<3W_`5Xv{}SZ%!l|@DK&tFF9HrvF?#R0M~bUuKameO&A$Wy61M~(?o9#X zRRMGv`4LYB4t_tJEzuYe65L$!tiCC_=Lf-Q01gW8kk^K)Po65e@f6Pj_Znx*30PVye?pUiPiB?a|Zfe!oNl?-%Uu7F!G1cB-n`< zRVzB4_2EbDD**DYz$q2VFgx2iwE$`6vet%nQpR;gU7xQ^xhD{4K#pjkSAiSD4NJD^ z>V4%buNed+AQ&vx)%P*_6*%Ex2>`q*Z;ncnTnxJXO2pcb%Yek=65wRv2I<;g(E^fQ zU47?N;jRc}uG`o^igdnkTvSi0OaplKLb^@kLxt~N9qZl=t(IRvIFZ775dkMPY6K_0 zFWOzkOhazx71TVYV(W|vIJuDRCa#=ueaV! z3!!1edZ%Q2&toU7d_&&dE)+k)6<)0tO|5o$1{6!2DCVm|-@Sg1vf#>=e0)PCYQs~D zD8I2pN+T{nCwnm!Z#&L1Y;Ge^G|VOL2V59{$wBV2oQ2URY$dBn@+F>JD$=V-vB>Dn zG;0Uj3(x`emve0lgLy*gCzoY2($i1&CE|YB`Pe^E0t(VfyaorG{03NDCTq$11mRk7 z9(^hJuI}wAhFGE=IL1rt2JXo8N;)vmV?ZRGTXFka4zz-Z+01v-_t-QL6e(QBdsdM$ zemw{NdYG(bfZ0LPCCT=IWqS&2gLV$=RJUBr9{Cl zb!UQ;JTzf%C8=S(3@m;yBBDXoqI%XQA~JI$e%Jz=RR;Hui}-MUcjJgr$IhU+3~YV3 zVF?4yXzUa4sZPu_a46^wX1Z~CQpnc@8wjJ*%Nq9 zpO)P$ujy7dyABE1`xcwWio=Ylaj5D&gO7icyR=?7?CAoN?+9b#rAwYM;N&DMxQDsv zlB5RIG#ptBBJMvYef}G9Z;ada@qd-|B34&X^C?_BJzHe^%x=du3Gr?L-#k|gLtwg= zI}eX#hW9}n z`5wlw!M10F=X&0Brrpc!Wr_R}fwRl_#v-zxe4{<~bqgMKzZ({?i$CAMxvw#YIz)H3 zrJ;-b8Tb?OfXxVI7e|e;F&{rXIfA}bS!2AIr5EqAEB(XSwmR;`c}Z?yl|O#=jJ|{w zcU@9iaefl{hwAbBTjq$|H%p68fB`8`eBmIbU06D5K+5}L;qPAIpmPHuKB}I$Ch4YZ zXMO_A(BAL!;NX5!U3(l!Zacuv<@W|mCd^}y(bWWLwsfX=*LrybbQnHsRo`AwEvp^$ zyj6?C;}v;NIv?HE)Z7-ik}rkP5rBIChjfAIE6Eq0>3B3LNo!t|OtLm1OsOh!FCJcs zeuV3`Sw&rCzc!F0O4wn(i7fL{SLQ&n6Hbe{T?TADdTocbm(rq*3 z|8NkDDW+pI3cR3!39cjjIzm1*Or?%Meki*0m=Y9sve9ZrcHZ#e`kz3Anx^l*9D(L1 z6Hs6$7gc)lDbov(&L8_>_&09s1-GS!J5*x`15q0REYG7H%z_pn0QoGwQwPeY&u3Yi z7s2 zkJ69tjnFT}iM#ue#l*oNjt)w|bZ{V`fJna?qWsqp|NqPzC_oOprdVUTg3P-mQ zdAJD1yZn$3W}}J4%-A0XlH*EjMeZ)UqaON)$8&-=?_Im^u?=A6mZKPjsp23lQ?|kQ z6!Taet$<%kDtt6Rk?-G!dYgrsoGr??%c3yZz_8y+nz74#kN`4Hx~t+WllV&qJECfssqS#6B3l2Tj4lE8(hA zyx%nX5@3J12?`K%?WNY)le+Yo72VrBBJARU00wX_GL#3j)puVcGa;X~-O=YfLG_icsM zJ@(mq`+62pUK(Z^XozpDRKFU|J$KY`Ms3xwCq_uEvQj(i=L+DS4t4Je z!qER9GVF+gZGf_;ptAKnM~3EhFBd=i-xE=jq}Tae$i_W4RbUY zV=A9!7Zeo@l!6_G?!o*<%91pag7eANyws(&zj2$X4OEo{ZKm-00jugKlN(ye9F}PE ze1`Y%7rZ+aznx@I7rM^fWqv!PQoncl&6-D!-QOO8CrQJPGn|AunfhNAVEm!m)Ofgu z1I|MaDCB+Xv#qPlFE@yg1q6?S)<8=@BMAJ2eb(n(5|%|(W){isKg4R1Mmbi&Pthvh zfmp`~^@@@DmFt zm-%~Dmaw;P7WGt^c57rx4A3+s*;kb~!Sl|6^;G%Ye24kSx8|!)2$}9U)ZiXCkffP* z;v=xv@=2QJ6v)&a0SRBT#Gg*EszH7~IT=G4$yNWTgvDhS^o$HRONhT`n9VrOz;*|j zx68j6W5IOGNFFi=>h(|Q;R)OYd!Zl4p&C1LPv+Pi{Z!D-3kIBcVk9ttzk;^NBPk*v zmqb!>$^L8H`)C<#`aLYK%xI^@_ix6PI^%tXeY)_UpvL#AHY z7?#fd#Tnjs^QJ+%o_5z#z_?-dnnJ!?tSb6Os*DFuCWU6M(tpeW$n3XJqh2rx5hK1B zG#^Mr2Y>E-Fn>J?u&&c(KEXb1rq@mg4*1(KX%QDXOjewv2%w22RQMj~qKxzX@`-~J z9xD>Yu%EunUsM3mc8flhNCA*(q3mFz2pC%Vbg~Fox1f_H{G0O1Zj@T?*Ul0)IMzPn zkv1ajq{dE039L5}U<1_vsQkBEt!{Lr9@3S2m{lR>&&J~tGSv~eKcg8|0hyWY6&U`u zl$!#8;cEwrL(n7}8@z0|aBw0at9X+`nN_H8$*bUud#+hQ3O0t1R6w(7>fRxtnt9}0 z2@P70v-Qcbnkjh>vx@AIlE4xJ!>@wpHHx_3=@5uP$-#rdlt2-{_qAG0OXa{EHyP#| zE#23?|2!zP6VFrHn1d+^64}yR70oyXe4V@~VHE?h+}_R>QD=?Xv{!!k5ey2v;z~ik zpihF#Yy1yiZygp@{Pl|x0}MU%AT^YLA`IQ#C{ikjbVv(GgLHR@iUCrBAX1{D0@5HN zQUW593PUI@66#(1ckX+i^SoLcL?aR)G6oNUDH2L%x*3;VyS&=QXqaXJraZ zkAiFOunwkH_ZSF~zqtLMNCZ&yvR(mUd^NQ5DdGHS&Jw3&{g=+so{-kJi~18-?+oVr zdw7S~$tShg&uj$(WFpY@R)7UfE8^(anHS1n-@T_CdY#IHW0}vQHa9Wqj7s>u3r~v2 z9zVVCCZ%yy#O%FyS)|zX&A1)m1?zyz&(11J97D)KYg{_Jlx}wpDCvw#^|HpHlq|9X zg1!2%eEqM2{}Q2tTAcatT!G@n?i>iUSiR?2Gn~z*;^yz1&=l!-XZ^WD>Ce&$MmJCE$5ZJ_hk&TWiJX3 z@(KeS^X2_YAk9Ipz_)|4I~O1!v!kDHYQep}O3BB=HNxjMQf5#E7X9<82hLnz{nP0O z>1`F*6!jp9Vg#^{+b?WMxjPX-=dtr0o1k}c$8Dta%(LI^nnV1o8ogs~agN)0%t#2m z4sxpeDmG|7Y1Lna`?HbHS>pD*V7G^5WX|=G&NKfJ-8re1uC~Zukk-JYG`{rd9|#o@ z@xZ%)|zL4+Ii`l+vp&) za=+DVt!6vzCZMfGf0Y>Toh-m&1+RX%_XsdljZh_}0%As!0kxWqSIgWPSc#4|B@(9Y zfm5#oJrTq1YcTNo@AbG{zvU~0?FKpYx(X_|5|M##B-8^8=y&&aY?8F^oO%nG+Sfku zH1vI;u#9>IE=VMrqVjx!;@a1nti=3W#LjO5VdbG4{W4BOUo7 zoiP*of%m?bImIyg@GYNu^bl^cMwh>E>@(m0=x{318K0hk_>&g6#;h9Ma)M=)f`h2# zrt_CN2+8%&(&(zJZ)|n{t?az-(^`r2vTzFyK_`TbQr7_w%cgRH0$~q3pEf;W6>bfz+eQ&PP=;9oUt#dd%6xqgl1wIVYML zJ)O*hZU;C<)A*kD9D7{c%-sg=f%S}7y_*5pbToaO!YOkqn$s@&x9aWn=^LChyunGZ z|0<>(5g|j+$64qgcg-`h(UxA_p7z6xoX528zlqzooWDcbhsDefV!#2tkZ>08Yurtq zh5PCg()Y+`>}MygF4=vrrR{VuG4jd8s z!AD0%%cE)y0DDRB6Q^fR9$V1WtpPl4fkC}8^^!&ikJTJK?ycE~z6||mH7DD;BAW#hLFUN^ZKoF zkFLy-|6J*;an)CDm|oO`EQP?|ho|D@5K*}*_$EM+I7{H|!4iiW zQ;FmFD(NrS0rf!DG>V>oD)nG8~3Uuk`MCYF!`v``6kEFSUH*mv-e0xx%u@ z-*bu*b#vgZ>0N=goQc|}`xX-C5x6#P!&4(o^%?fa?&DWY4V`pK$ug{kbKhQ8J*2CW z^BC(B7v7$fsoh=wJgSy5|K?0H&lYUNDSNlUpH98O%eDLdW#*4JN@l*?T5m@mWnBxt zu9tb^hQ;7ksmugtRA5@BU6T+i&kWzcKzHTj8&XEs>@QtUdoS|T@YX5BP`<&eTyi=y zyRf_O0q4jL^r`b!TE2n|y3@O3O%KNJRnWM$3IzJEQHd&Uf9Q$**0xr5X8KU`i_J6> z}qsnX@PJ%9yy9 zc0B}j*Vl;Kl*#t~Qm}wypzbW}G<+|s*3S~l5;kEEI?C+%OO~a2_;^DfF=}vm0%(l! zDZQ?Z$zW!HO#lD%FI^1Pf({>pEFXy5{8~$|K9(1-`GujWN&T4xY_JukCc~wC%Jan z^2>`u3@Iwh_gb}1pcb6Psb~7h>^gFJDTT=!6?3C$ad~<{wRlvi?v!K8*^2 zozktgq-BiPR3{1xVw#^^=gm{4iuJ%;8-)5pn zxaa0i>N5JzJ4+%PaYN(H5vf~sNu=Th4%lWJ!?#4waQZ(i65W#^X6(~j#>_|z+uLBx z@SW8Vw=u#%%>_&skf~1r_5AwJTJv`+y*3FqA#;Y4K~|DV#c_(=*!j(m7o#Wddo8?d zal#vrE1Z0QHQ{#gO>rW_5TmqQEBJnK+MkuvkA6w7K;qb!+w9V}_6keuz9PKNu76^7 zjqg{?ORb9JPwe|lK4>m1v4SHeT@;B|05V-nk;|tjG2`R?Td;BLapmwcev+eK>02*g zcp|lomHt4wBH^(uE7(OZ;;Sv+`^LHJ+ePm>`!;*Sb}@?(zHD7g*=;ONYKH3jbKl5w z6xZkWej|M+e?;yXvdv?J27fy&Zm#_+ziGAVNjzJZY{G5?I_qe%HJiWV%i~6sh&UCE zEm>$6-%5~}N`C5jkNT)>c!^Jne&^~-I~tWsNR&c*gR~;eyGvJ_ZVr4VBA4Uz?NAQ6 z^YDC+Ojk5@{|o!|RBcP-H!*!_S@7A|5o*N!i{BsQz{caV+Z>c`TK}D^)ET-S!AGU@ zGWG$S41MFSjP3NgEtUle8=s!ssTHv$@g5x80zPH}I9&l<{Thb!hcCGB_R%v@|03Sf z3+!Cibw1Q4cpnUy{U%n}^e1oJ0BC*PQ__EFV0w>~ydE0=o(&hucM>c`U)fQcoSOpf zddh05G!{k@B7m4{4YFJ{PQ;s11S?f>lV)i5rhK~VUv9F#h(40?z=suybCDNd z1;tu+&5D&K?P=2a?E4rT!sWNKO4MlxcP;YCOT^!HB-GFG7KwYO%wuL6T+aSz96jHW zjH4i@Ew>7}lRlu4ZRNw;b)Pn9^3?+o`a;?;iG-pL@=5D%;lD7U0Pd3wFN!SusApp5 zW-gSx&k7fc(K#h~zFq$*wi0LRuDWxXA$&B6*{32B>$D9zQiuhK`8I?pOaLug5Zijg zfDq-DYWA&0u0(EaT`kVt_qh@b-jiHx0*$72Nt=jgD zbU5`)^eAmP79xit&bQ}^ubfm=Sk}*d z+-I%(CgtRv9HzFrY0t!Q{ys#mD3|taT{$7wo0gZtnJ7)%cY4U;y9h+ZgPfmf@17ax zxB=};@H}tb?Uq0I| z)pqpiTkhFoaigtHNkskf^XNwCLa?#DJ@^;|pjExT5}zIi#j zlyM;Z_WA{@?@XaQ@x9{Liao2quCVlf!DT8?1QEYw};2iy>AM z`uNM$bQe2x_u+geKkP`sCv12r7I35^u^JeZ$4WT{F{WA$m3rT`D&dKbCN7bSL&xcb z@a(hNEj-LsHBfS>6BTZFZ1`r|O%}FcDPqJrJzJl)!Miz``}^1(KC;1W7~nF~$e*kk#?i04-cDP@UQhm;22hotqGbWlZ;_dPQ~;5kxB0O=}Mz zi>Y>ziQ`;oDD!FWK%{hO;BT84pziNZF2*^FTIa@OSE4rst2+V!S!w#*oY*l3I1)~U zL3ov;EP;{q)J}vCKSefP0wqaGJhNv%B#xj?G52{XBp1Ea^kZAdwHiz zI8fcQ@A;m{H|v&rC3gh5c$GVtefAmmkjK)k3{gz#lYenBXV26yk=9@~pm8Yg=EayAaLn z@&(C^se#Oxq5*hOyC*H2o1GlVJJ;BeKnno|bgUVp*7oyyMkLad3eCJKpQ1k90wbU1botJhyKrnLYW;_2amEML{{YN*JMOF>@4zQ4t|0 zZ$Q7yW-A`BHdJ~PTHaJVo+ zaZ>XxBoL*S6kqjnWIvs*?O?6Q_4d!ND=I)gb|`5+K7!t3S#Jyp?}9pO0=jX7O+`&B zSuPtPJgwN!9)dkceN--u{B!s{%z&VIbiM1Qx|#s(g;S9%N%Yx~;a5Cb3U1bro!xsq z^5@9#eaYe(-9&8pxx0Kbhk#NP%Fcv1&Bi#|{NU9}Bmm>Q-4Xgas056}o`AGLbb$Lc ziu=;;xk%u_zf-{=RFeUxVr^7DQ73f7#=8KEm3_SsS7{1)3Ksxc_*7}G2j73+L&E!z zP?{y}HiV0Se1$`>aLag(i}Ku&;7ME7|Fmjwc1hvxmAVU0zb{zd^C?WFQP57rrmoT; zfvKQ|SW57heJH$IDBR;DfYmox{RI%)f%odmDUZ_hK_e+B`F^=9X?GzXqMlX$i653Nndv;9Li2p!(YDm6MPv z`ktdVnSp6&z>9HZRl2lU;r?2c|@k8`k;mp$7)d?OP><@r9_VnqNw@0PuB zL?lB$O1LjkYTN|Eb+QXjFUy`iO;3 zhntFCJ}<&bzYYb@wZ%kwzHN`A5Ne(gJVV6g-U*`S-xL4b^?vo+&teXJ^Jf9LKPFcq zbaQk#$m`9}{RM1VVNX+O=jxf24rTd~i4_V}Q${t$^EAQ(kx|h>piOiCIsGc~nfWi< z5Xf*o_Iw#YBkSn!QSXKL8vq9b;Uk1o(vrl*NJEP+^5LPH9g?1>O?nB-7D_DYBa%yT z#Gwq^;UU~NH^N4AbRZ_879ycFv2?YZ^jN(5dM6P%fpz?5#sve?OU(t?Yup??dMnAr zn?b@qw38^J6lGqU8t-aZ#CuQUC5C15;zeF;kH@?5KPi&2c)R38*g3G%fL4Mu4Z@Nx$o%l^% z!Dkx|QSPW?KOgEz)QZ-*b{W%LU&rXZ)rs1Tm+|zmZEM7fB{-k27c0$l@OmIlSs(Ci^o#gu0pk>WTjy(VNnz z2O%gCJn;jM#kq+|=RgF_XPc3Pu4&#j%*l*At0dW`kqrF#o&BIBT8^b){x@^6)XJ}l zqy*aRk-TSPv25ooZk2#vpIt$gILPP@fR2eqM@k~!d{?#wATIXI%X=OtxO@$?3BuHgxK5GWn&~eCy7UHf7MK-C&Vyd**;yfIzX$STy_Yd9^*;lmNFd( zGPaF;YXL6ph#@8il?9MO4dWXNjj(SMkIu41ec*gh$;3tPK!pIhA|6Mqc#nlW``r)? zU~yx(Az6Kwqjf}BR$WdXe+0cYofj(OpdMX4N{Cic3oR($Q;w+To(4N|Gu5Us%BRJo97QS3$t7AE84T^J!}xstQa9OWo=8H&8>l zL8R5z(W!;oPB%h#&V7=3T~~jmr%SkvIkj6folLXSzT-8t(ewfnWg2>erKd1NJ8m>e z)%?FlTe0Xv$vr2NBCc17@>ni*QQRK@qkg}Ft)fNe?dKUmXwr8*J3{%|ckfg(6{7YXq#&HW9&U5V zf1{M=Dlaz*isisQMucUhB+k8cnfYq_3Z(q+7NT(W)1o~rWx{3ZNuB1=Pq$RD29we( z*+eY0BwCKC#Gmmb^Re?ki9<9(g_IsJ#L{W%QGs6SZl;9qhcLA9NgTzvY5qeeuXO1F zySqsz-?Vn0$@*0k7bhps7Oj3?qGMk58F`FQ`=b67C#TyR5OZl%pDtEYtLp6F;urG7 z@3Qq3Hm6<5axN=Xtv;F~b~+}6FJ{OczHt6S{E;PY8BJ^^q|7_cgGCP&;K^kJdfz)9 zHi9{U@?)w9Sx7X8Ipa7l=8#C6dT{!ozJa_%5odbR+CbH*>aanDG~bAn``PXKzc26ME0-d-I25Y6|ENv z0x7(rZHDeLGWPtO+qF=}B!AC$%G`QW203!Wk!mIZLQ!>83Cbaky?;{j;+aT|sqk)j zM9S&x39owQBuJLdM;lpcFrs4YT3n=yOA}UNamx(C{LG0x8%!oAU7!(VYfYve)%%`& zls<^D!F(ft*D9Y+!pbCSl}eV7{^ecZg#_8ewzfjWkryFoLQEl+6lxE{_^ucH`|30_ z0=tv}g3v3n$k&AFjoEj(6*noBxQ^C#nsXP5#Uy z#{^~l`^XO>(6D{`CGZvkVvO1*2CwN>QhV~g0G0;u7YFOSL_+g6>DPkneqoyW5kVOyc zp$v$S#geRKs8@pAdZps!>ZNc55}+sk71$@POmlk73CG~`)=ydjpo;La9i8bnZ=1<+ zWFV!~iV-;1;DW`Hzxzq*az?yyet{G6th(QgjUa7&7@`oL`QiFp4#gM?-%->4`8nE{ zT?9*M`SQ_&hXEz|^u*;_Rk5!TcMbd`LiS%#Ng5c_q<(>Y<}1@ngUgHmZq+os^nLX= zr|R|mu*XTdIH!*_qBnQD+75j)Y3=@~Cun;A&A!Pc!Tg=1KE(xt(h+zML_t{AMS0Ygv588(*)05AtkdR&C(fX zGda8sO-$f_Ac)S_pC@l2Q8H{Osy%E!HM-n&6;qd6iUhPvf9dvsUyK=kvAhl+&>0Pb z+@1H{569>5iy=R$;e1xm{G~VBh$!a3JA8B+BaHmKB*pb;2zH0U*(CDIjI@qXih@54B4?Lpey?kwcT57;KP6jc~>EVYFsj zBQ9o718upI=^wNA52_*Ru_LHYPHnaZWC@?!ICpIWAP(w3+iPp_#&;zJ8I3sD9f>jk zC@?=TfRMK2LH%}h%>sJBGy->L!`7ZknYre5sB1=aIwfnJd?}as&|=nP1LCWw-1vBN z_{cE_(5Puw%q!X)4HK5yrE*S5}Hqx`YOW9|^zddj820*>&z zBRhQzornn!1Uk#HBq7lL544D_8C=-V+pwf3j!W^dS-f1^9JZ)&D=CJEW{X*#kA?)2 zzvrbH85JDu3lr?I=xZ*brrIRWQ5Q%^(m!!*6e|;G8REnI|AOrI)NLFSQJ_GBw#9h% zP=SBu*Ehjg+Fu`Qmn9SP+5ZiMw)0yUZMyIU>6;0eF_HCQy_qMwTuRP8RJFknhiQ?g z-+SO%Qd6%8#o>GL|7b%M7t^J*kNmmspZv6(!%Mz&D~^Jmm79bs-f8l(8Lb)Ld%X=L zlMdq;I>K=dS^^s%Ea5|7sGHC3F$4>uh!ew-yp63d2uOBCb9^c{;!umlr*=^ZFtD^O z*kmDC(sxrI{pd2#-0%?f~5JZ0ZCd% z#~I`R|Av1OQJsX%12TkkY1Y~t*b>#rc}>VKrephw3co^f(J5HJJJnEr2UY<+{2!|p zjSR^lKhm*$GwPRAv~Vo&mSrS?r$;f#^6+;IKDZ}^yxCMJGhLd`pFghxXAd6BZ+qNI zLDdK*6E#S2#60jo!MwPRhkJjM?g#)Z&D_R3Xy}$#IiK*)3&&>?PONf;(~M?|ak(69 ze=qrQ`^=T4FOe`tXswdrg-?jJxP~N2>Sc0o9Tkfj>q=zg5CnvOXu0WoC_TTk{Bi$q zWQJgDc}+98BT)uMD&5-d2MefmwX|aw`iync(8HZ}R^R%G`0gw4837DQf=MOjdn==Q zh!=`GWR4igUi^CuiFrdb;Jr9i#5R#1|6xX4Ml8nPN z_yMR4ehX8j)*ko|4#UivibrSfc)%E)zmw2QB_ME-aS4Gk#*sRYRM%K#FK?ER zumdu*OaZ?;c^FcD9$Z1lLW;+5Ny4d%Rb|({z6SgWJwdy%itVMD0sntdJ_ANr$ zT*1?(UdeC3sdYq0V0!eK;s-5*y*fh0Lxv+rU({9rT>Dk%28;U)$&bZar{_`Qe%F+1CBL0Z~; zq`yp0EeT+@J{k0K-c~nT?ceceFz2*n&_1tn0hz@%(9NHa3`%_>#;y-tge;i3WSom7 zLPZxg&7>a#MsR(Xeo7W=PyP0V_m{)-Gp!Nf#waZDjMhcHWJ3QOu^0^&YYx{5 zUxgegTcP-2oe`Hg3Z1c8*O09ok2Wnj9i|zwyHV#o%w9{JwV8Ul2205vdX{%gcL4x4|8uz4 zeeJbM*lu#gjL17`oA6)jl>lX>(d~fnAiQNopedDL>{_(-nJt_Do53=FVWxJkp~3gX z3&Lf=0BeO#oOt;Ld@VCl)An(+&3E)?qp`SQD9J;z+$ZZC`adb1-%Hk$)xfxc9BLQ_ zKvW?~bh}Qt9(ECUHUO=PITy%7Hu!$M$%vo#l zeAq$benF9mo20P)@6pDF9=eJd6(iIIH)f1xeYzR@fQsu#xe%z!XmQdun*4XS-g zCtl>3`!y#;zra`>H6fSAgv%+$77k*F|N5v~cPU9)mHJ}9UlVX0+jmQ!X4Xx|t8!&k z^VAi#B^y-qSXwr9Qg?hRRhb1<8N8wKUb0g|e z4HA7@7R`-SCFNUl$M6?26z)V5lQ!!S)mwu{*fAzoM!qjG+$~C354{8r%3s`Us5m_h zg{|9p44qH_EV6l6#^~m2;w_w5?(Ly0ndW?7@sjE?So0tjfl{O-ASjcgG!7i z8AhYlwk7^2q2G#Wlytl>|2qC@JadSLA3RNtDm&!&<1>#BzOv}Y%P4O0@f>2lcOlz4 zk}nIG)s}TAh`UtsMWOLT~JcC@3(wYuD23m&LV_h$l#YrV7LmqIK z<03TWXLeN9QE*wuEDa1wV#JI5lZ|a)Tmj45<|` zaG^N;JCcmHr2&PZs=SpLq>>@ZcGC~;{r}&pt{U5uVqOyxc#0bm-4+Bz6*WAgzdw3p zWUN($LW%_<(X$>%MGOAUp%LKJa3J-T(5}{~R!mf9252`~^Ry)wO-wQz8dFbRzltR> z1&Md@<4biR5G;Yzt#lk;FTg+|O;{C<2g$o|5^~&5UAbGdF(nv%A4g$Br8GGxtj&<| zMgPeO!#x9uSKs`-;0dp>B#q|+0l)nj_==wOby86KTS9P0=Ly`pJzAS1=G*vSGViO9EAENv zR!{_Gvwm>CC5_5OD)Q@FFGgr$8WHjOnS1X}v3sK=YlAL(D_$)$E6+hnep=!kY=7dz zuij{90XRJS=j!r2UK3fQI)YWMP*ip7BlsbTr5}G*NmNfndYyS%uT^%E|8teod#^g^ zzc+Nw$@6eYU4-I&=N14oxCD&g3&M8Q{$+Goa^7ylqB7n7E5Qcg&j z$wn;~m%T_$5igLfU?xv6am|c(X^2X4juQRrrFeWEX}EUrmQ_+em5*9i88CV>M08 zE;8%n&zB)-Fh(FVx~6%b(?I+Czptt*@FzAcy0V`jVMqEtUD+ohF36R~pV%<(8qD$E zS7Xo&TA!Kg-yoEDB-|@q^k?4#uaAW*QnFmch~a;%rW(*Znz&=6-wIgeo}?wj;lKzc zB|y_H*7}BuwIZx+bqZk$D1_tRJ>6WTXx~P}aJ~e1K|NsP7RTNr5gTOGtiN|IL_%h# z88U}yPrG;WwWw{gPQ_vQQ0%EcQB)LM$ z`HIKT##*(6J%=5TZMKj=%1UVP_;l)Ds?1(G%b}#-h3v@m0$-kxc+I0+AM9XY2zUAX zJ>`Wnl)U7M0S{Fp#t?ls|8QFjDZ(wTj+q-@Y^vpQk38Pe3;a2K`N!1rQ7~tfXTW&D zG97~xNASar0BbUzFgWzsl;6AcV5!Qs<@JVoHY&0G%{sF8BW%c5;NM?^H()|aa{JtE z6Y=!e{h#i;Q15?ZrFBqeC3KUYK~$CnD;aV#mPy~5h_}n){0c4bjSzj1dY=7$)J(v; zrgAaFQv$O%pMduEfUj~CENZooY<=jd9}ejVe;?4(5dT3RLDh zp#lJW5l4x#E;Kz8pf%W=_WyXm)mjK;pijCz=Lz;uA#*|nb{%mEzaz~ivH4<8#>IL^oxqim?%==dQddJF2$KO1;A*)H$~sf1K5yN+^?mX8 zW6%=_(e?2QpcdYxeYlcr2U#}d=L@Q!*mEDRzWf*MJN=OA094r0P`dwsE3@?(4}?fK zMiJAH1ywlkz5~F)5bB9NF3QrFT|Av`ETTWh_JIGp3<$j=|KtrQKDSR5^USB4kX(|W=6ev$uBP_49H>zW*K!{E(d0df|CE=HRxVsiv9d)sl68}VE$&5Yx}USA(_eR|QA*~T3tK|^H#An9SI zlLuW_#;qJU{S%4s+x3Gwi5h9`m2%oXiUo$^Vd;NOwh&>1TBHFYpm zJi$eLz3o9rGFW-?&aLkqXa?qKNl88fjqm@_bE4*l$|Der92^_GCqOjO(eKO-bjFck zh$PuUg;tyr3TbEpH)d=&-RW12A`p{h3ir8u$2mbpT~6CEGB#@*P10H{O0!)Hv|BO? z;;V(R+o^iL+bMWN%fol=4rMy}vV@3E*1JGLyQY`?a>#kOerq<^LUOH{GVx8hQIMnB zbOA;yGzYi9G~JNeE{d9ersdf%P){Zn?fXccK7m2X2U`~XW?)+4TrWdhFTecmke1Fp zP{njIQE}Bm0}EccTZnkYK^r0cgkqt0q8=eqpR_RetEXq5ipeP)j7DfeaEe$n9BRsz zD_Qf`Rob4C`E_y77~B)Vnd=86D6=c0OG{|5(57%yxC>&>aDN2StQr{`40PtpA+9WT zlJtw@PD#>^osJ(@)OL5EO7;^p}>Slr(K3mGXRlO~jrERTsjP)X{NoYHKK z<|#kB#PD^J469Xctw>qG>XYb+;_C`b#N)%_dxYp{@=GOsX!R}(UTJhIhC!<415SQ+ z1{_q_`HMwzmI?Ef@{%@H<`tPj%gx`lSds4G8pI>1$qlaUMUR3XFngmzf?VgV(ZT)z)QCX(rb6IgAa^68J+YvoV-UHsb_ z@bVyvtFLh9c0|{-{Ib#@Qaj#^1D1!=kG8X6>ii-T`8)hbKyazJn8ME!Tx2EoWwF|p zEaaByv_0MLi>95as0~E#4Kw5`Em~=&4?OD(8ydpW)u@%8tdX7^GT5Z+2+-kbM<2H( ztx%UzrdjEHy^|c0&J^3DkKF@+tadN8-QSruK13gnCP9?`=Sq_o$qxr$IyGVWqkS+G zh*X*abjGQ~erK`0g;au6@|2QuhR#1rCY1yAc6B5}_d^ z+sLu6iKRh3pl6rVhC#S#cG(qgH^(v~2cQPW$NO+qud7{|6Dzby6x1p1LM zEJF9Fb5;j`x@eKoG$enmc}w?SQ%<))A1T`wJU)M&J`9jnCR1cCNa(f9Cezj^RYyZq zOe@xV1y?7VroKh~G^hSDttVh&6jnRy|OLcG>xpPc_r5`qc<)`DlisZ$?;uMGm)QXhQH^$T{25Y2%|0C_=y)#<6g=Tj~iqzf9$FHhygh{FLF z63V_ip`HJaRp-W?`YCo2LHN^RZQsj|T17XY^)gYN`rIguGDMD@GS|=r=|D*9wfDnI z29M%Pg4J*Lx=uNx%ebNV9eWw`379QTc*7h|#wXdl*WIlxv z=8OqAnb;xo%o4gmVHr5aqr|~$(kMwbIP!q^mC=F!z8a&=ptZzz6@1a(iQpC2hx*D( zcumaU4GmNCAIYKmiQy36i*k%~w2I`>UF8yv$vT~bP=vQZ%QxpxM-Ok4j8HYKv=IJG zLkyzSxTJPfnix0!?DZ-3Jn7KL|H1+!1UURoLrOU*9DJlGr#dxJy@4T_SpxAAlNmI` z7+eh{TR9gZxt6ouFjR{(2(rn&Y^$NjR5%dEeCZOjjBuy@uXH-wBqq$*p^ju0b(Uc)twKDJ0tB@NwTuJfI`Mj$bW6u=K12%~7ifVlzxtRPLauruds z%FlU)-g6U5V{*zRQf9V$v4N9WZ`z7)a>WC6Lz~szqr|L*3Z_`@_`uukX zzbu8;N}2lY{slGXgsFF5Ht(8s#WvsdF5e*yil>X`5ov+POmpZd2}8rr#hC$Es%GdA zk&*Z3rL2ZHDEF><+*;u#rA-|SK^M=M@^|(zkdhPY4`?XBzCIA3VWCK=o$Oa6S0FUH zr#oTdGsPLPSSfd)V>)yz^86eB%>5w%z56c6n02WOwd3+#VSgTvd>Z5AJY;C1L%O5_MdpJ*iI}g$_+e(Bz!%#AmMCDz`WR`%bf&)&Z zHxqY$O#1WOjo|@Ude5qR^+fnjeyL5M<7YMnl55c3+}u(oU#)Mc!icoM-IIJCVS0&J z>=|TU79O6DIuq0b*+j|-&@KLmfPMMfmsI;)A8m3}L*#WZ{e6EznU8tsrj$gzk4G8GU^N zE=QBrFSCsh^NC!Jc9x<;hz1*wnT=m^KWJlaAP5ZGZ8r)lz+kiyyuvO1Oq3Rm7S{DU zb)TK$AW1>E*~$!a(N8rgJp%@l|BSTd{D8==J)uiAAY zhIoJ@KP_~p?HC=wzuXtPQr5cv0NT8^PVw&if4U2x30~VyIgu{U!ZTpXj%_)v5z$h^|2_p6-n=u3ej-=!>~)_HgM+O1AJpm1!BAuWPV>MH)f0r@ zi1+c3hFjTkOwA{vEq=4EKrbCzoIuUCbh1>X^Kb0T?!#&QV9l9n>KPsN9s&4%tQxq~)v?IJPP(f-E9mu!ATvnXGF33=QD{%<;kF!7FpV~}B?FKI{H zKr?wBT83dLbc>)&UO{HUAhu)pqBe;7C~W^{!C4}#>0w=X` zbL}jsA5;MJL`J6nC+rTtpf7c8T7DQylt6slXxX8YK3b^O`D_9eOS2f#I;gdRh7c({ z8XB$_m6Jx3k?5kA2`KI^gqMB2bkDPS*j_&#&d<&vFexpH1U)_X>8AQg#`K21MQ8$NB=d?sQ z518^O7~BbGOL-rLF0pfke#@x>T4}NxrRgwMY4#{ph*j|t_~8TLJ3N8ega|)`Jl<^r zhIL4U713PT5sbtE&@F>}I#;d(6JR%aFUy$|=o*y>C@~%L)F7I(xtQ@6NYX<#{-f5l zRL|Dq3e3X{ii7Lw?aB{b4(~D~+0XmSi@k|-)_{0~`$BYPg=o|iP_{9jkU#}QYrXuc zoAru-R`-qfMIUhPx=I1|%ywXs$Kj_OVOzKay6oeYc&(7L#n%3 z@s&4akN*7%Acfh@g=k#1R$$dbku2z%@9(%9QWFZ9{J29V8T}zYe?$eT2oM+h5610}mlq&Hp^eFB$S3`pWNRI8tGssX#VaQX|bZ)eJ6Z8XR za12-nVlS1=iZ7iU0GB_DoOi0Cz#8It1dmQf<|q^m^f^2RZtN{oAQL_ zeFOW+pIF0R{^nVbr*v_C+#+4E=_05KCV;sVi>@H;iEWd)rpQHoy}0uj4E-KMMH*fW zWe?0P%27>w$aMILBM30q9To17$OZdE8eQBFFJ_Q|CXtRV27jU%5z7Q>&57ydNkL!|FY|D!>v^zj%*r92mt`}dq(Q}K+R-gem%eR2RRE66vjeB=_L8KglVYl z94+X6#T69|M@$`K2qTZuctU;e6D;wVC{@?aZ@4= z8_5~Fo}*Zq*+`$JoN&92K&LE5r+jkzzhHu>;g3;J1;Z_ly|w~qwB)x-S7eq((*kTR`IX+?dxxE z!nS`JO(KzW^C;;H5?@Lkd{ei*gOIn=FAoMNvf8rCuxG6JrWfis=j6KSYK*51aTw>E|1gHm?L6DH=JYlGSNHEqfl?KJ z=W&)MT?nS)P%CgYDf&a%Ifpxci1wtL&eM@VEddVH3NumMvl`4yT!oHWQI=K%O;t9Ji^N>6MTsD9SM-&S`fd7y%_%wb zv6COpXqI4WSg8|3SOZR$Gl`y(5G0zjeDql&zv2Yw0`B=r0MUC{<0O`ve-}o%3Qy+m zQR-fteg$2NP;l{S*;?&~S^mZbxKp})o09;$Zg4k58}=5_HGNU`)3`JAU4XNgAJ0Om zGzcAT_34@>O+q|Fk<^MK8E5DMX^wqJz27^_p*$SvcIuvhMK z#vz-LuYw^!lew%T;GWQlMw$I$rGxG(aB*D7bw{NctAzjBEhKf&$R73E6vk0=+YJ-4 zNlw=Wlnn9DMaEZ>aZyd&>%Ap99slIZHv=tu>i}hCwBkqDd6(FDQ;f@t*!I2vnS0!U zb%FFcwn9sXUY(OPivURXl1bnhF|1U&ooJM5SrSTuv6)_xWO*)DT`avU9gkqoQIZ-$ zv^$35If`>rqwoB3D%lQ^;PBQTFckKpLk5wix@$Q_S+6B7V(M;4d0L|sH>2hDSkLUb z>QF{dB$WKeyWp%=)30lzZf_D0InavYR?-^WHJYN)ay5xQZYzc%m5~MM8l*mGMu#G2 zBD4zsX7q(NI$pJHU6G$oTMW6$EY0YJ#WR%ri6Ita+ft|z24eE(xIW&VfU2l^=n$D3 zUL(G{&rnGUD<$5J%B?rmfWa!yWzNlJpM&~g= z=k-5UnY~dXMM0PU{k=*4yzvxrcrylk7H_5R6$g+OB5WS_59jB=<{^SOv-uYtU%6v<&WG%_|uW17qLLrAe?H%RKJG@S^(i+$~3&m*hy9pKIgFU zVxyNR1x}xLhpSyrtkk)?R8sr1R(xv9EuNlEsCSN3i{s@@PZ33qi^}3wUO7NWmEs3vaUTG z%CwDZh)HP3VGzwQZBAt<$F&-VY7&v0zH7_v`)L_x-znw__KMio)0n)l6V9@)6E*e{+ulR#v+i~1-&yV3m-SvEL6qZ09Wg_95aCJMj^6)O>qEJ znEq|0&^S5LE@y!>0U5{44_9GEb%sjELLDDm4~3S7(Cjc^v7wm$hzMcfbzOR5NZm_z z?6y~SX@{{iH7cq?8h@7$Y8+i4BG!hxmpsipKe9zm%cYr^w?3}3_{=`dpzgg2tbaIw zB$B1LullAo<{4bEfhFs_;nRK`RSWa(wXzY7iFG-0-6Z-xS*!s6IMcwZc33{@Lg|~7 z)i-@cewSGHZdwH}DZuJ`#l#}|x~(XnnH)oB_F6oa7RmntWyQ|W5}PJ9RamHZeY2Xp z)VdJ8q*I55wLK$a;6L_CuI6&i8P2+q@7NR#80LT)Qar5XqpYtv+pn{}-yH@Yfj9FvA3D6Iz> z4Mc7Rc*Y%irE7j(JjH*wjYHfuHdLi61Y;{;C`ONe!?1wBM*9PnW)2gTnc}QoL>c|} z6=2OvVGfm6p|DNXsNo5&(;K;6U6_rYMfSJWypo$kJG zjxGfGWT@5*0)kou+EoBFa4P7~&O_|aujuUS8-{t;dQh{8rN5tSHyxj7iPwu+3i|QT zDCFn+ZcnecJcwO3UgjFmr);jxyn~j|{_XdhvEJ`|8c+XcOXRh=;lMQQNJjOvj$YSkh#N~u72``Fsya1&7sJCTg6=S zLG7lg6jIH71VVwplRuAtv;sG0Kteu}f7SU9fLpSeb>+qVdLu{k0418iAb=r=#3uOF zBc30lq2l;LQIzhx+sCuZ_z=wGMzdAR-T{=J7H0q^LopI!hk1!((PZKQNXp*>Apj>7 z;%LB_4#>pc1LYD0;JH23Uxm!%Qf4h06>U7772fzes3qUrbu9JQO}(J9oDJaelL-M$ z$Mt;QKju7S+O2~DweIDQ)0&!^2NBB-O;U#>ggX*j&~ zcW=`9jtW4m0ZBV*>>%bt*^pTX&CopcYN)ma0%{%snIr!CyjJQ{h14%ynlizo*=B-h zI=37Y!-CI(pgaS9enz_ z5RDrLnWY>^arXO~#qub12!cJA*-z4c-Up{cfYb5b{@uPNkJHcgg2-~k+?Nu!YN`9+ z2=^drX}$Urgjri(hE~hJHPlrRHp>R-mO>~f08(!=(UiSL(v`4hxF z4!Ewc4yC)$T&d=`Mj&%U;|w8Yz3|{})~Q6pj=<*PPY?+-g+vKJ2Vg;A3{-z&uNsUV zS2YXbV*NsEK5nVobc^a-eZukf&M!>6W(giqvcSwm74t=k(3mFi=l`_-$cp|n+- zC1D#2rN^e?6gjhFeKEg-3oHWPD(2)m6*E-y{c%%RilTuNh!i)4_ASI6mN!tE#Ktjc zmv=@P+wNJZ`ZGP`mzC3dlo&G=9c@OR^F%ybQ5!KDaJ>Ci#O3Evuf!|nR0DOWa&X>TL>a6XCfTQqL^p^F)Oi3H1F|s z*A(PTWQ1EeDb5d7G;O`F|LM!)K7;qjY-Fou_H)$E^<2WZg3^`lU0hQ0A*qU|PF^p# zd0`UkvpaayAxfGGR1X;;mK^8ei#+D}SmF|_R1&SU)Fkid)>_&sh!}FB*HA^fKRPVM zH5N!!A|Sp0!!(m;par%!}G+zcJ z>BhH%|tu{cgMEoi10|HfUa&peh^HvIw*~r|YRz@J0!cq(aH&ln)8zg`yfe-*nJa zgj?bik0ip0yP!xl)%5f6ad^ypuOZ^Cxvcsn2_<7rk>JLQcx{a9gk%;7N74QW9}T#>L2F*3kQ8PeZ#cbLTv~4h z=@~}pJYKrV)mvzn@~g=MsLeEv&^3+NEQ9JFKy#uyj$+Qq(UP&6iz!)RQ~VK#lAk^9 zhR1}VjA3c0oBvnV>@AWON5d+6#aPKGHJFz=!$lw}#IY_d&`@J!r8oXL==Qs-@2JP7LK=__#5{sM6_pU$2ZCS$nLF zTyAQ&WXiP{n||U^a%1q?XJcuwkkscWNnSRlf zYdyx8xJhR$6wE*e%H!=yI$4Yx5$#R=SDMl~GZK94ls{9XXUl%o6Mn6Lc=vXz@Ws`B z3=UC{OJ=t70Bib)<4%)dvDL6oy!O^U#9|W%I2Xt)kB1H6!FeE}o9y3Z8iW!OyxkA8 zDfQ^ccJ81r0`5hiQL3dT7s@mUyn484j4oD<(h(?>AI>gFCE_;0&QG#(`94^`Z>+Sc zkL9RL1IL=v#(gG^+J4~P%fUek3g1{q^=k&iSyYq~?((m&l82*!Pptmr{uYUKKmp3H z(k1^NAr(9Fs;n^wUAx zcb}F%jf< zZHk@uj$!X0Z*<5Gp(|h{QK4;8+;1pJA9KU)dsVh|u#)0~dc~ zP0`0VH4LD9JY#0&kOjdPwy5)IfnK{9>sxC|4b7?HI9!aIT|$L3b#$29%H4C=lq$5f zr~h(+e0@4Pc&Vp(9)&}o=}Rj&^@a!H9Te@#l}WPb?|ov!BFKr*+>YUR(&##;?=1-O z@SRD5bj^o2D%zg`UJDQQM;ASX!re}6A{U61I&Bp#TACJwBVg@J&)EHg7|ReH^nUV= zudQ|=9AfHqS0^^*5%QJyHbJ7`E3id5Q`esVaM-B$NPm6q|Tf!lo3!O1MQk0vYoEwvr?{ z7Wv@X0=aZ>Z3WDlh=9P_T84e~YXJcPVT7&)1#&%xM*6eDc7jFVz}`carRLso{{@W; BQ9=L! literal 0 HcmV?d00001 diff --git a/public/uploads/20251022/4566b366604fdf49215cb1fb80e37335.png b/public/uploads/20251022/4566b366604fdf49215cb1fb80e37335.png new file mode 100644 index 0000000000000000000000000000000000000000..82f228be77fd5c36743305fc449dd4a7262c4c09 GIT binary patch literal 39503 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 X*W0ome$fJ6VKUM;)vLLB^Wpyh8qK}F literal 0 HcmV?d00001 diff --git a/public/uploads/20251022/4b302bd0bfd187da3d76d05e1127d18c.png b/public/uploads/20251022/4b302bd0bfd187da3d76d05e1127d18c.png new file mode 100644 index 0000000000000000000000000000000000000000..667993e49fbb4c7a4120ddd7a334fb00f3ca8a5a GIT binary patch literal 39935 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�MMNoQ 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 literal 0 HcmV?d00001 diff --git a/public/uploads/20251022/cd8919a7436ebd5d9605cd9d4a750973.png b/public/uploads/20251022/cd8919a7436ebd5d9605cd9d4a750973.png new file mode 100644 index 0000000000000000000000000000000000000000..fc84d6753e69749443f60e53ca6e785d6d25d2ec GIT binary patch literal 39977 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 ZQ4weP>^62(#9@et*jQ{cFWl%B{a^9OwCex> literal 0 HcmV?d00001 diff --git a/public/uploads/20251028/a38cd3b6694e1b1f409172af506452e9.png b/public/uploads/20251028/a38cd3b6694e1b1f409172af506452e9.png new file mode 100644 index 0000000000000000000000000000000000000000..dd29d1e619b18f72729b469f11a72ca1e3970096 GIT binary patch literal 43805 zcmZsCcRW@9AHQ*NadDA#g=>UTnc4fAm02O##I?!Z`yx9#d!|rUg={x_Tzf`F_TJm? z+|T3p{p^39L{-<^LjnkJ5p0!nT!NRf`fxYrmCW#je~_-l0fA@~ z2tc@sAOadnxg^fU&^gsW5Y@2HphM5e$)KRe;EJWo?hm`V)199_&4PXdeLe#Xhy9s? zF2hPOuvgSQOdhjZhdaM^$0u`GO~9^?LC8y$E&}U!0Y1BpKW}bMn>TN7c5g%fcufsL z`9R{7cr|{@m-Dwx-@bDZs+5REb8#(^FvHh3&dVN8wfzg1QLl&u% zN%JN{&1|&{;q`8=oYCgnYsbcmjZ(LNZWKgE2fe(u+tc3_sL67~y_H8zf4`^kzF7Zs zJd$%WI>BD-nyYCU3)D@HdF|Dy-hahoxJ)nS~J;n-9cD_JZ0@@yfTW&Dj}7j47t8IZm&<4JRW_~bdwYm*m-vyLtZJO2)jq9 zw;LC5RiG|){4&dJ{B?Gn3A>(6UmCyodSPPCZqwyOa9eCqQIQdKuF0ny|M~&ZB?!~I zE>`cAbSueT=ez;Q!{>gNGxH~Q%;joAMJ=?Sj-k0f7xbTJ2=~voEF5P@czpfZaPZVQ z>&>p+cE$@OC6v1KxrN$CA=Qyj8gyjaL&_{PHphA4%wM__xjG*~_pJkk47{g1SpsH7 zs&0YJn$H!Np-E+Ww1VWUArQj5l3yPyP5oNG@u03VcrL0IpNRZU4CBFKCKOk{Kk5F9 z(VvdSOg>wc7hBbXzN^zk&*+YK=Z(X{!tyiQQDiR$v!(ouhKL53wmXcP4?B3X3xAV> zuT5*e8vY_lX^VTR$w1Py6f3bD$w22 zqitzfT*rd#5KO6cOXLjum1D@!raC2tn-J(yQCeBB6kXw1m z0TXNO!gLo}bkoG!5bAvSL|MjMd#NJ~LLUE%hP>%TN}6@dJ-k9@DeqB5d=8RunV5{g ztt~r#2YEF_b?%~&cN=sOSU|57gj5?Z7;izD_ul0u6a-^*;k?w0Q}R3-QogJ_aT%2Q zq|EGvw*8ER%=$b_c^D~ipC~vk{V8bi)ujRY@ zA{U?krH&!?njZf8YiHy8d#}Tlg>sQOPXtm_4(ch=?kIHRywq`CCpFE;L2rBZm%8RJ zhMONp`*i2eH3*E8|MYn0&zn2h&J?Q_W%z&ZY@M&>oVJI`g%F;#7!!Ej9nhp)TwnuqHVwT_*!OgyN1p(}WVP;G@Y zyHfOCySaEvL9F=G%dP4-i~zaJmD2)U2dNquKgdqLxuXvrk?GPBh$}tF0#t{Kv2XrG zyZ)!Yni^KKJhCy;Y0%<^=jtf0;SOW~WIsLNY-avuC0z0>%=yQJT@rmT9P^vbch=NlZhr{gd~EflJKe=Bsx@<85dIMwEDMx*+SL{rn|a%RZScp!SpeJ6nq5QcdJ2 zzh8-gda|{eKUAj$1@W%wHXYFLm-Z9mrY#Wc!*OI={dekCNuct9Cf{8K#FY8WM7^ex z1oSe;l>;+AFmBXuemxZ7aB#3;HlFibin*^mEp&I~?ppF^tI66QbgyB;_PAuE0&lao zuMP)K$#Twviz+*6Q{!MeUPNk6s<v|yg9<{n?>tIVk)j=>dx@GdG`Ll6htMI!e zZ=mRAs|+7Y*b`8oO`LnQ>e9bCir{ex4VNAo;4d|NcH}l)olWu`{z%omNRMY96ZkJj z4@}R`F@9VzOpiw#6iA7XHz4E*WsU!Tzeb@ShbDhLWHmu!&cD`;O+t}(aM@8xtW{u? z>?)!qBJa@9rL>Y2!;Pl|iIGp5q%3nq$-aRDm(!N$XQO04u$!Rcm+3I?9l-p;=}l&WO`~w#jm$)<73kc1Eko`J2er;6m71Y3cak2ee^Lr0 zdk@Eh(fR0Bye8$LeJ$1fbU}fx=kC{=P;?0q#{@?4i5U{iL@Efni??O90cjqgvIvx7 zxCh3QgF*?Gaa7Tz;gkqTi@tfN6BrXX*@;8O3Z8a%BoLzZ=&`(}AE;1cn;$aiv_^?- z<&JA|B1Mr>TMe|knOQ0HFuZ{_2rkq_k{J{<*+=N{<{5(Q`%T^Y_PO^Y(Dcj!pycdd zJp+{adB?F%9Y?$R7cy!!5@5XM1X2a6ZIQ5O+~ zB^gnJ!W#=G*GDM3g^nMqrpd(S6oVb1*ZA#1pKas|A*{i<_TdzdTI0y<15T=Q&ZX|L zc>cw`KK>R! z?5^~4HVFAj8{pmFs}pM5ZNBxdT<4uvkEZPyhd!-gvDStZ+kZirtD^l>>nsgOn@-_5qAekY1enBe>^r%W*q5Q1uyQy0#l5*eu!aW&C=^F57}_)u}AZZ+Gdf!1l# zG(6IlxI1j2vJcK@77_NW=hAs;&+VQx>f&fbV>5(88tT5BW*!?kRZwwHd>UUwx{<}b zqx?RFjy=Kpx^4Lk{n3r@UP^X)Tt5`|IX@!kZiOJFisVc0*%=<8cPde=%x^7_S~40D z_%cl|TEBBK?|4#ylpy;Rs$K!on!Q9?8>ET4WUsR4Dp`~3^J=>9DmgyKkA6i2yW39K z)YJiu7CjnB%ag60JXfLKPh0!l*x1%-$GS!#bA_?`-RYA5jY8wz*)$`lO@#N{+ugNR z1gjrrfM)wJB~D+p7ELM8^o)>KGD9h6?vkc>6OgikC~M4IFcWfcT4Ql zBB;64(a&^^{l3F-zy#0F>*;WP)nh%Opq=gHERVUV0Ja05f*;P8hUPx5Tc*le*mo-j zfYK}FyUwA~7i;X_7}V4FTARONFka@?ca$JxtSR!Ql0OzL%XtBa|ED#a$sw-W z>kPuoGW2%X^IuQ0S$0Goq@7N>fi(S)>G=SuYS=ChTAa5K8if->Znj@Ymj$+GV`tV8QPbaLs#YlCBjcZd$iG_n`#KN*?YO$-25uW>pp4@ z)#*SXeU^)Xrlp!x#aOM(dQSd)niL!h2VeC`^P=vz-e4@@p4oQ^Z^_ny-p z7TINU?mHXKuPr6zc!6u!4oX>mN90Mf-CtuCu!vyxTBh75_w!pQue<-Ecy#O|-X%)E9=*pbiOMX9jtv>$LV-po+NlKKdDP z`eLW?)Cddo_dj?C2(i`>a0-O9WIy%P6rTwqoGVa{OB=HseoqJ`%$E;8(c|=Dt!&fo z2jJzcKM`7XaC-b0{}Mj=BSF}84i}#=!UN_xL)kV5l*H>RO@uX^U{2X|C&;Day)6v! z@MYg1G(tYmi00j2MgGy0_gevlb@+or@hFaFVUjN8klYcz~4bF9z2X9)Vp=_qb0C^q- znx`gF*lS3TH`vwe6D5MH=}gBB0cQq!;C?)R03w$fXp)#n-lkW7pb_D+usFl#U#OlQVSKQ6mTQe0OE2ylv?@X8(BX-;_w zdt!T`D0)$1E^}foF7xjUjDBgZhrf*s%IZrQ8=qV%~w@|ht6RyL#Vg;thi;Th9PSwEE zd^#;?i5TYQ=d%lhcGc!ZKkNe(1S%HXX@R1`_ReT7GAjJOHg}zUs*Gk}_BdGZ;_;dM z5%=PrL0AjoRS^s|LSp6YnqZ87YnO*y3Y?s7+kKz+FE|jpDXn0lo4k=;GX5ag2%@&iU7I+Uiq75Imd=4Y9qyi z!y8XF{bqq1jwXjxHJ|nTdQZEt%Rb!-Rlx(beGcmB=}9Y!c?MCt#?zRDE5*UST%Tsa z``lu=k)sO?L`S;?{(e67N;2(IAVcT$4H?i$#pI?jp+0e=mZwT;jnS0Rm|oKC6>i@$?J4!sUt4rC#-J6tg%`{SH@ zGUd}yRV`Qq|GWB}m^7xrc;2X|yL)_cs9nfip}L4{KGmz2CEcAU*UPR^H4 z*ES*+&82ox4|D2G$+OR;>b=^!`?{bfA2(orns10!xVZ=Y)oo?TB~9|{J$l*GBU$5L zf-!_kF_1+Y2!~BsiqKWZ;_}K0vPaJ6{)9FDpL)0b#&<`Btf74V6O<3`-#?7;IsS;( zc)RfYk>L-0iKES;hbp~wxF!_m2P#uMWu_o>&{m&fB}Q=|nUk_&u7#9>tf zSO0h6EG`7F&noglLiv_U-f76v zlS3F9LQdORVggkaQDo2lNP<3+c`b`lg)}^1B7FYtUDJgC(!_XM#LI*K&WCFTJk|HI z#hYMr8Yxcx+(+ma{P}`;3llj=4#`ZP7UoCBeXqB|A$N+Or5cE24<7&Gq_p~;acxyw zX>;r?GaCr47qw^a?^lL0KZ3Ra^5|V+cOm z@~pG&r?-4|=^M-;`Anj`B6nZ^TP4TfxHAYE{1RpB?(QD09&BE3j|h1w9upSX^Td|) zPp0DcgS*yblX-C`v*u;wVxCl54WVxIf;L=Ce#^Mxc0F_A2Yc7(hLAWD;H8g*mbk+B zpURf8iKsw0qLWLSSe64r<9I6BhxXShDV$x%Ancm$)+HtDW9q-HKJa%Q@0Hxj!89I1 z>y* z{-WA?JDk1LFb@$Kibx5zqELQH-4Ul<#2$fQqI@adBJA+^K!e3o*KDMiE#Dfw$12{J zfNMgC`xbIk?=#JRSnajZjBsS>BuB{#u(mYbEp2d)%zN|G!9m_>Mg-6NE!ALLo)Ucr zbr=AqEEb$T4KK-<{u~m&=p_Pcx5PZ3v(>%LZe3Pg^25(ws|m*zzontXkxdHNWLydV z+u+`6jht-Q&I%p5w39|o>c%zY&0CqAq2BOZ`@bG7{?wA^@tsNdr^5?7lq;!ON;syJ z&gcQeY?6H7cXjf28uwz)4}xwCqr^3;0gfIk`#EFNwj{!uj9_JDR3yAlX>HDq5D%0_B9KM?@VI1{UE5L4we7 zf$pl8keLVf5SNb6U%<0Do}|;af#UJGTF|@?al-iSA18iCg)Cr(PI2t1slYQflSccF z?}akx^9BD|aEb{)AR!9Bh~NYq^^L-vO@?SpCiQCrL<>}f89*x^R`p-2lHsau;|EhB zF8|tD@q<2)08&F?y@8G%BG(V90yL|{NK=#3z(4pyr?RkTIci_t($f>p1W*)`qlA-? zEd6~0W?&8)EZT9aE2}`sUSf3!Y0((~dKJp&PN7@I?KrIkARov=1`Ov`sP~VSZB`NX0t=j-uZw`qVEFZz{86zkj~h7bEY)825r|>QUQ9T#i$-9 ztpfmQx_))Fklgc~(A2gWQQp!)+eaDJgAJ|onMBlhYzKxsKJ zMwAAzV%R{#BO^=2w(<0f#Z@@iNw5YcLHpw1htj`?aRU*+l~xTKI#!5WO5l4KZdWi_ z(Es}_cV$R9ptsCm$0=N^{}m;xjn!L5QwK=^y@d=bvV@fWvjKBF!G3f0e z=_l_BdX-w<69JYL1ugmVwB(K#0cH?VG zJ~NeZ9;<)CplK+u4TM1xRl=YTG{8rT#&Ve-X9$!0kJ;imv1M_#s=&0M30!(LyZTi9sz1^-e=oa6tMmLF_2nR?A38 z(5O;N1nc*2-^K=@NJ?O;9tHPPG2nfU0an4r*tpctj6J@hNYG4W@|ih-AV{1Xc#7Ee zxdA&c$3x(1Vjt@=6O?QxRwQ$toJpr<3{p1~XGf{~otGb=WbJ?jG+Q!jLdkvtZj<-I z*dH*%pp3xZn5<26G-Ed@vNZ=TnWi`Cor9_<0Utl?e|eow79@|K}~jkZI<;uOEe=g#!iD zdJfIk?qi*K)qhA0EO&_dkn0gXd5FlM9%bEn!8!0Te~a2Tt>%QkIX!KDP`~Sf?av0g z9UJ3XqOSD(nhWbApKR-?x4`h{wA= zdMBfe7!#r>OzbbIB1A;c9DjY=By|IS&Bc>*z{*=ZEZmt}B%hREBo_j2Y=7Ae7?qjc zmXc@<8W5`J%fWLFpTOc<>e zWycWfeb@C8)%Zn?&-LWL8m$DUiD0dy{4orm9&8bzG7{pcV#SPOH^h^+lxEiWP^|R3 zpjgeu2uQ)QZ>SM(Qs)n_g+N#q*luL9-yZ_oO&Qp3Q{Qrv=b=b^?B2wA**gqXu>^7d zqQvJ;qsK$F=m3Aljv!nNsEs(l6|${ppzHjQZ;3GF5$yvYj4QLaxd2p?#= z%C=D=)YQ}x_sYL~vC(c&h#VdDzW3Ct{B9Ow&^9Lu(4jPc{&9cvyzchqaud^dbFtZY z4Hy??QNR4Jy?1r>^}i(Z=z7=fcQ76UKB1R{e<)>S!_8Tz%myISjRS`8alfPg$c!@` zEiKi(Jd2THwfeuoq(Y8!lE!m@aQFuB-_oQnw*(&<){mwp|4E>Gq+bZQscVA)H!fL{ zr?W27k{5e`A4gnPaQ)#AU^d=1l1EiM#@f+pB7c?%ByMIUW@aekHQ2g0#!B68uTM+! z^X22DFOXSIaiRY>e8;}Lx&XX_&FMbC9EB17{9N}3T>)5B>q#%vwVa(R2c%97cmW%^ z;^6SmZCI5nlJsIgVi$RSu%eYe@;@!$-^Je$3bf87)?cl6U1x()d@sn81bm^3Rto=I zRs;&U(w9DW(?-gR1RU&}71l=_LFdbf8a6#i_wy@p?VuowM9l+0&_>wB`Jeww-TdP* ze{7*F#p1oj8m4dp$j634vHsT=>yzej<QnY=Htvt*o{pU(yuVKb!1=;nq71DVUI!O$$97Uk!Q_!Bv{&xn)@ zZh=R+YHYhcSjlj__}HJu-|oTf`k~rt@MIy8OM{jvG7i%b4y<-x-*dO^=~pZPSC#&^ zm-9a7fSg(cc%A?L{X1WDoUCX)&5S2vj+fWbq1EACUtgaFF*Y^^<1-0#s9hl3u4pG0Ur93uF~r;z)5a=_UE!|M1t4+RSY;-+q*!2~u zp;{lbF`$6sQe*3l(a(S%_A8Xh{y|wE@RqQLUIwE=Ql7Z3VL}_nP3tmjzYQ%O5IVp#^fjO5_wgbzv%F9QWzW)wPMe`{L6SC8Ex#NEp*a1bEGds25 zHdP|-R&e0?nC$@iuhEN1AYvg^m+83}$uVU6t#QTi;lU|0vAcgMr~^j~#;mjTas}1Sr}*Mb_HS>{-Oq{CIMxP&qvx zl~PK47`_YW$R?b{zjk*!ozMKNMGtnI)}dAu3~viOBGi!F2N@Z`qczvG8b3*3GBDNh z@aKKbhoX+R1$kc2f|=-*f{0x>N5i6eYY+ZQ3RvhF^vGBZWMbCUgg_l>KkHNtQ7p53 zyv1W-o#&E5;H!k&t5q3#`v)^>5QB<0 z4t0vrVgF@GK7Yy{E_+?=n`i3fE#^%qS<9Nw(*+I62;qaZu!i5wM^H$Ok|Kz&C?kR@ zxtHH{-%E|~iUBN2Ij$VvDi#-Nt|5?oA)N)F#icKdY4{&d%iJ{~M;!>D+Xngs_4vk@ zRmnn0n2m1^Qr&=RL1Ok#DTuxju#cwvcY-B9sKK8)i2_NJYhS8ULiZI4Od4GE`gWD{@lFZ40zx+Kmpc0BCs5`@BVNv`2J@M*8a_VJnZBo*b2_W!3(Yrt5>66Qrlt` zom}@yZ;a!FEpookJveNX+xR_8ydl&6kQ2%Jq^Eo960rVQVUo_CcE@||6qnt)E9`5J z;E0W9j`Bv6`|WDX-JC}euCz%Ru{dfGUNoUTK}J;C|FrH=|8RveiZ~p_9j95r4IhBB z7=a?FO4P<7PUUA{kD zZ8)5+65akN0_wUZ*LtUcIcGJYq+JHynbX9vQ5KmU;%TiCwZ9WO!<=Z0PS|%}GF&WO z<1<6DWNtqM7zxnt<6oxslGuW4C;%9+9paLa`CH%#Xc|lJe#nm>JOO>62R?E%dFr?# za?7#5%46}!7|;^{5`Zj-vYLY7bw>k`K)_gv=NBtR30(Lnn@h?y_5ZTL1fReCt3@>| ze;#IC7*e;lVA21NS^TVb+(Sy!sc&t;g%IGr_g(InvjGY?7Jhi^>8qn;djQ%LFOWL? zzzkf&j7O{tDc60{+YP`N{rAAlo+VTR)QW^1;59F42DJ8TW@^^|?WWTcx>FRkNNG0x zU01qaE@uW0S&Vad@v3$F7rn^GQbj%hNQElq+O^(FwvMcK@>m#{1>Wg`i|0)N(*k#c zB1`-_@1amsMdU&N%>lSmiwZn@9Ew$Xb{e4i{bWI-3h-<^Xa>EVI_r~NywX>zh}^Iz zv8s?qeZ3zT015vCYl{<`P6F0$GV@2tasf~+FL546#}5Ig1%_Fv$uEP*m4d4LbpdeR z-tWqM20W%PU_8pKj;l{VRM?pYHHqp7A#w|VnO@^w-foDDk>%pe0*r}f+_DRl>_dpx#f8jqW?9W`Ef4v%kt{s6bC?q&J3Hc*gr2-0{+eSpDdU4|6>7ay_;hg+V zewnFqXPJtDnXE0`wD0ALHNb&YV{q7mJqu-jFH+$LacsG-?Gnhv zQ~Gma`Cld&gGzWz&8w3t_1K|;ii`@8MimTaS7}>56@b86THH8L8fJ?KMkRW(PS1_l0I|x8lzk0Mhah&Na_i3Y0O%D8%p|cZe;GGQHXpl7xOLn9KVM^# zcubukLFy>rK3u>4>KGz&?_=*ma4*Un>?(l0%M`)S4d5_R_QdLz|eig~+os^nt3uFVQ{|+|;cHo!KpNT^@`b6e^Ul0%wxa|Po35#mK0RIl7 ze%MXds2;BLmmca@Swu?TULA`61mul@VA*i0b}X2^x!m0Z(B#C7V{01^lh4bml|veVN)1ED$Z*6L@e zk2mHTe_fnxm)=}oZgR<-M`Gi7-%PL02Lm|Yb5TBwM*}1KHdd-@+yC*2_r~W>dncjz zmAUsZIM~>e6fhANKz^whXo44_cl`ku*QO(yA=p5)GtU2r{hMKKqX7WH^uOEC3~8$m zh^^lJ{Q=8o|80Ck(#S6XUB`+>qxQ5-fR2uCv$B)(~ zZvJQ%nYq)o(ctXsKzwq{^mp6u0L5r%P(_5(?}-9vnt)Xnjy?y{poNSMwLx&HtG#w_ zAQ~qXiHX>)TV>w8?GqeCt`8SY12Cr1XS77Cr?+>cD}nt95(D4u#I?uOuHUNaO-e{$ z?E*=J;&3S5C*Xggl^TED@w z^3=Q}D1#LT5esY>!#>6%0H9Iuq`k>K@s9@&9vlI% zd+d`JuwA5D`lLo#ICJ?MfDEaA4Kg7oqvfWRh~>;z`@E$;avVBNnJ=3``p5DI6CSc0 ziC@V}BtcSua)?1udh2 z^x?yow^vubgYhLtwOVzW>kOAK>Ky*mpPv(=2(Wwt+7%=Qo}_uSR1hc4_Qi1-35UpG zN!@Oz#Xb4Cxq_3xOJHxGZqQGYoWz^h6clC#xyu$|I`~*4FtIa*+mt5A%&e^Pni?U~ z#aL+`rm;X=eDn)3m~{IZkXgtiT-2$A&r%fBSjv`@A>7;_UYbJeOLx`-=wwV~TgMU_o)3nVhy zW&YFxG`N8icirR`OCjg4cRb7v5Xc=^~wG^TM=nieL2|1$A3uR*-{1V0+JD|HF#H| zym9=jxS^5EDA7p-D|wt$WR4A<*EpTi)9>D#W`1d4tEvQ51ZQpCE(Vg{JN?aAM&`D~ zN9uV+ftFL8a%bxt>?7Veoare9t68%;zxHAw2S5p?`!dokIa5l9fGl#shY1}ug{x`ULTEIlWO-- zGyuigtvz8)(oyfckaL+u9FYcYyHvZdeMx@0k-Bqi~a|- zF-#xDcJ>oA0NW;)2AX>)4$wyQb!TJDUQLjy$23km!OjrC42L@xD*d3Ka;KG!YM^-M zdPY~a)q!9fOa3r8bu5srp>d&r5O{9x1F!tip!@pJEs)AQQ%(hP*%L?H3-*c!irGFp zVlu{oN;qP^gz?QTTJQ@A)OArm+7CN z72FDe67y17;O$yg(!OGnL@^ow0e8G<^~4Quq0Tj+uWx$m+e3nMTT)w(iGvOIUpg3fD=>x&0?KneXn~|i{`sb^jItcvK@f1j|=kb=FMIKFrG?0-tiAW zwMEIYgVDB|{ET*kZ|q+Pb-8P}5}-Sq_3s{6WrZhQ)4C5=>m?nzD+7^#Axb zn>Hlhbo}QmOkVG7N_J~V{_ZSUm~sxagf&$7glscHLcdFJTJ0u}#nLY_wpWB{@`uzk zg~Tc+lRL=AZ$Z+uVU2IGlS+lLVKaO`DE-2X-O*xawyqus1zmrlcMjKB|&*;afu_k%MnB zGUK$!5d3%3z^964ZCjxEpKoW5^|7tRlvAC1BrrOO!Zw|wYj&RMZ@DW>x7xszJrsxWE5+*mB;OxpV z>^>U@-E3L<17PC6^BG*uTY0lUL|DO^n%@jbt@noOg*SnFjal4N2L<7@1tpTAycpX_ zvZy~lDBaP;3R@Z7ogR~UB&_6@5OOB*mv$+=i&dqxZ~n^NNm?qa9st}Uvw~Tt zoHjmYAF6kW@_ddB`-F2%R_*fB#MGRlMfao_7yh#F`l2H!rKMIa=pIK2@dX2 zxha371SyX}@~qH-g4V>=9sy|gfiOvt2*SQ7!Nn#2p3{rrrTtc8VUOSH?X8foJR%V; z7F?w@weFC?Jvl;buenZbIzJOI1f(4}xUj0b~b$N&q<@Wp?iSqCv>c(HltTp!8esa65zL*!2n^)P*w*w>$UxhP! zm+Y43c&#ur!0rqv&wq>7a%AArl!YfY>po-8#=L6P z{9<;f&FzHY$3bgEUNWxz_SPg}PTWS7oAgZoP}-;G>G^l&^5{ez+k+(XENTLO?MzOSqb;2^$edD4*CsmC|ilU{coA<67Gp4E@1 z)Qk^c4s88Enj%`xtOTQW?tLqac(W$arDE(KL5oFbzkoV}p zqa{OdkXRT1&Z+uI6O)F%_2zRHB*16Oq_rE{^A)2M&NsZG@<2A?ZJA1CP6uT7czAl1 zS$Sdi3V+u!LcqBOXQtnHg)C77U`8C}@R9g7mv|PCY*vAfM-BghVA`M*s(MC2FSa(a7$qv6#~T7vpf?U@di(j;7`-zT-iDNy;2pM1 zLdp-IofHxfKCQ1%x+MJvXJ$@Qtv~0XY`>BU9?6!NC^e*j=T#M57BBd{B>k^EZzJpC zC+l?LIVVa1iu5K6?@{bINGN;PZ`bFhpx5B%-n1i4UGiPvWdm8fdE4$3NGRidgd954 z5=<{#jKmXhos>;WGtOL&dXI)L}1D6Dj2?Z zUJ)ik#gxh~AoBPNfA!YFPx)ZDJdPZczne=x7{15?3gYHHN8xpY0?GXyb2^aoT$I=6v}EWN>@%&RX?v?qBw!-i#)nTV^BP)i2x=Wae<6JU zl#@kCA$MtWobLUj5H1b_IuvoA8XsDoeIc`Ob*aA)v33{ZPk+LSWJI%IXj3dJc<;=Ule&a5@9P~u4^<|W;$QMa-N^&V z!D~YKm~(KJpQ+Y*1-I^n@yi5%j15@p)C_Y`6d`o50Eaj~SysA2Mv{M$i+AMq4FlST zR|_9mJ5Cd^JiGiMe3$Q`(0vLQP+rDd+8m3>D!Zg45dw5|UV#Bvuty$QZV#eZNH6=r z9!G>IxKZ#pl*37|yJrM{3;Zu;Kn5LAp-Hcu5W9er*loa@BExPH82S(KhIoYEqkS*P zi*@C_XXYhfd7xVD&0zdB#AW5F_j5RwI`Z-a#^1`nXAI*a?4#!U`p?e1Bbri57>1J= zW8N8iJipCR*2I_K2AByOrN-AbS$wmyjbuv#_mz2R>#2W(qH^k#{TCz^Y?Ddl<$gPs zU%`5a1Z-5#Ss!wmc=5-a!eQc_CnyGfJKo?Fz;c!YgbMAweEnod(6(YOHC6kGyyZF| zL}5+9<8PH?7${O0&_nuBeN=!UhYc}o7@L>ov105%RMGSw4gH^)0LqR%)_-OUw0X@* zj#uWVk~z$wp&Ct3b){cfK=F-}z2Vs{aG(-=3Gmc~X9F354|C=9py*(pEpRD!BzhWe zTxFC_*q;@cUI(4KRf9M;c@-rQB0Q7_Y~+r{RUbaopv?;?=bWPNB}Iug^jrZ)Q{PvG z?Rzq%^MxKdIrL$VSw37|B$FEsC%YR!OGBAM@M4R-l`*Q8a-fwl@2|XcgYW>1bSpGN zhzx*I#S5dRm9?K=pGP=Vo1^6OkeOv&h)G1yL|P@g(1XQ_2Z=vdJUf{eUYQ#0zb$~a zMJk)Gx)}~H1OV#srazaEfl*Geb5%r?uJdaX1@DO9-!jXsjOl>%EOMY%9pq&6T!-+3 z%>HZBS|G8#Z^O^Sbzf$k71!vp_$tjVfN%r~g=sk#fX?-};4C2~e-I6YepYV69#1= z%OOyOL`|Xz$bwxe&!Plmb?n?anh24^TS|)Oa4m4qRoi#)X!tP!QgSqeFR=qFF5fL6 zkD>$xIhqJbdm9VWF02&eR`24H7IEK|5_l6*$wO)G(YMx!GbIt9&9ognm-uKA&HzRo z4Yj?O2cw+a5hU&O!MQ7fp>ST|z`UU92mJbqojI=p!3xk~E3kZf@#?44Pt2xzNED1X zDjk?8PCR1DoFfR6C<}rx0=JEoDYT`56v2q1mxG=uT0mmpbi)OoyKX*W4e&&hjan5u zLPm$3R+6U#3e%)uAXfhJHq^J;LPo|Ppo7?fVR(vOKljy_abvIegQml;Wf6q{s~X^V^! zMlb_sH2ZNSoZkkh0W>d9mCwz9qoYHJ97Szs&}Nw{q<_WmZDeGGvHDm-iVYO3uhw3u zT$G3TRYim^#q}iU?xb~O2Z<^lFV1;I9KNa0bLJ>{VaZpyLDl=DjZzsSRdnp_u!um_ zXAwb-tSTC3*rO2#=1a8RJDR`petvQ;n8Iw1=-p>@BW0BN#i-S>*G=3GTU_k)!bFtt zga*6gF++T~x!ND`!RA&Zs$`L#Z7LTccl5dh4qM64HSZx@BS9WXV@zBGiIRv-$ti0=%EInJKN} zszSMp=Fo~fEs!w#HH;9q<67sy#LzxBg(*@oGvwf}QVGvLaB$0RyqdvYE^|^s9Ys&< zO3PzSsA&x}$M-o5Yce=TKSZ%&Xu%w=*?>6i=T+teWS+3eGyd9{*JMGV*bG%3Zye14 zbd4S>eG_^}*qX6p)}L9SG3$=F_$|;$TA=jW^YgPHa!1(X_s~#K&~1wq)XpBI`*l7r ztEN5IblUW~vi++Lpqv;f z@Q*Z;#N@2fjgL0v#?=N=-X|k1tP-|edxpzwQOzGWY#wDwAR0I?e}CGwZl%jXb_WlB z_uV%L{x3dBjz_Epd2*+|xa0IJ{q@w-XM=n0LO8*M+d@yrzMiu1JMca-6nzu&2Z~Dt zf0zVQzWcW5H%!_xm_@t79S#v30l2&wdprjHS5LOi>rYbF$nQjXD5z&M(eUuXJBgE&~TF{?#v_zx<1u)ikdarv2)+-|LsggcTj6@gmhA zUuT~`UOAm>onmV~sM3ycg~^{@Nk7p0rJbDoPru&ehk!s;4RYssxxo)vC`qNQ&G(o; zr_wKfXNcGwzyIx-QNx6n;_@C2JQbhk8u!Fs!SANmAH{2Xd!N?4TlY;)xifbDDk;?l z(F#jWrm-DrNROqvf}_JzlT(lh8CGfg3!7h@UC1F%fY~*5#~NUh*aEVvf4@D`MS80l(K+snCMFK{V{C7jGPoCQYkA2A zEC*Cx>(%Rp6{-im_!QUjiKkRxia&F%B0`)}^p?ZDl%G^`n%Ey1bN}&5wq5(l?aQ&r zC;=NTj}tSieeS*Yf7p8KsHnfNZ&!Ngp}Ucgh7qK@L?oo88&QyMkOq-X=~58s1}TR| z8j+Be?(R5ye$V^7XPvdqU#^A9%zWoNd-lHX>vP>6B{wdK)eCpw8-f4|$&#jVkWGI4t9TIDhkf=Sf1uX%a0Od%LycEMb) z&B4umzBR)ex;Ni>8xb|S84SMgXIer}q^NhFhthdD`LCn{O@*>F&K|x>P!<91CiPS? z&wWW35ygdGeR;@JBO)|Nc-5z^= z_Ap%%olR$^%PK+G88f(x6-o!MKQsE_PSPqei-b!X@WMNw7X3Js*LD+%zP!7rWIRo9 zY#k9n!)SJ(be`1}8*Re?QR?eMg8elapM6Mj@3Cg;pbn(s?;lFF-Id!qiLJL>_MR6} zEc>dpp;OsCi%Nyt=D64s3a*e)7|8x(yZ_n=Is3*_F;3#z-|fV9ftFQt(t*L zp8#JHRmODT5g}$cneTl}vKF@#bbIo6SGA|r0f=^qH>*5X}GvQJ4OED9X z^-rTD6P88R^*$AJeH+V{EX+i4%P}Ky7=OoVj6@T|ab!my9a?NyuV6^iLogWBR`>%W z6#`Q}&?P2cCJL zNFQP=xngN!qv-R_O7Z*jK&Nn8EPYnZY(+4lGfuy>R~sh9i1<~PlU3vZ-$mrzCyboG zS2Bz~0|%mL3rjxG{S60uwW1%ZI%cxDPN)f4a?4b6;%i3jcInvaKugp?FZl!q}i-ZLtGDn(X^#j8dlunw~&v`|`pqP;8Q5^lY{m$kco}d~Bu~CFR8XB@2{=+8 z6B0UMV_|hsMRjqpvom~FW<`8C|KySQPPDbf5UdXRgF3p~K#ao00#Ui6%zEpCD$k)fJddRzP!!85&|+)89U2!VuvIbN%#5gaF0w8D@{D?mI4MYEfRhOP~kdgLA@V$A+TG$P+05uut_Fa{gE{l=DA z^bvkF%e&|BF4Mo^k7_HtKiS}-Byq|=->t%EZS_r=&s};%%h9W{fPb?QEnZoF+RthX zuA2U|-(j;(i8e{^EH+7_9o%Z79W3Z^v}^wKY1jFA)90A!m53!F<)HI3yrKB8b5UWn z;I;O%J;CI1-zk-~b*n1ug%>7FVb;ih2*&jLl^p4?>2>*vf3f~m$y3<6OzW+t>Xr4R zr%NKXhh~-jBsfI2Y@(6y_-lY&qRHc5i_^_ZT<Ti`kC?>_pvyqUHxOE{BRNj7WLJeaod~8(w z)U-F2m1n$=GIYDH#cdS8!ea1r5nmW}7j56|x$crB0i2qChg#PC*<_Zf0fw)4UzgES@^kJD`FrMLS<#Vj9F=S-GvkzaUp@Vs|0 zbMnV}rX;<@c?*@lM@CyIYHpVT=N2+Wxqavnd?lFqfZ$nYq?SGUO031&dUpxu?C~)6 zy($4HV&qyniEtsu$IR2rJ90p`o1ENfd_FdR5?Nrs=VqZDUP^7hi2dzyO!CsdbkMk9 z((mGA(&gY+vgDRCyV9$LzJJN>Q;!E0PYA8fD8C!u81A(Qw7An>kXgEGPmL9o>=eIx zv&L+by}Qb6bxyu-{+?g*Lqz7^tKWBq>e|@ZTI77c8Ei>qP3=)jRInKnA1(N(bXx2l zv>FNw?zg9U?|amF@B1WI-^A$d#|8g($>B(DA0gSU|J%f^5IxTSqxkSHLtBGajlxTm zZC-gf+~bMTh|_W)zYmU!8sUQ0T2J=?g>P=qprIn6r0ePtlN-&I+oV=y)}?=c_$ z+7_NAlCh4>d!m2)QPA%^SJ3Z1*Z$T|>y^>Bk_2QlilzaY#+-2%@2Cs*0kDJ}pXJE& zANF?8tqrqZY<%2`;kx>)}xPb$aj=`u%H(;TJImHiJkPj>y#-AlK>k85msD-!j5blJH37kxo6qNQs<;kP_Z$E0|GW_wRg)ccJA9b5( z@3C8Um=l7D3vGV*KGAxmvHCPP6Dcuy|M>g2Z<;z4d?imfT;*z{jlyWY!-O{Cgm#~; zML#q4>Wn1{FpDQ&zjP6a<#mK-aM%s0njV25Q;3w#!PskUp|@|_j+&qcky<>umo6E(NGO75uk zYw*>6E=u9{6Gf~Y?ItrbOXHseIF=e~*)U$#u_Yg@w)f7nz4QUi>(ro98JyC+=L%Vk zzApJ*V{ay%+cDGP`J;ioS5;y?TI^4_$brfWwt2D_i!XnJo z;=hfK&5h3MpWE^NVlan{OeO;QzcDY2Vom~E^Zi2q#qt3Sy%joKx zy{&w!Z-cl(&ge9ob#eScBjBT@PHi)wkBm0GS~@`E`2qK_7$rC`84w`R@>rkI*1U^} zuV-Dn4#EMiM5a6JYQMkJkdJ}lSs8a}skH0;DN29=g1 zpegu#qDSpua$O&v{Vy&9vQU4T zgX(L`=HOr71tZ1m)oMtKT+A@#*)NL5fTZtRIuqpSG0EM#g^*RXwz;Rn8ve~cxA2bt zc}l)4CP)mGHxXN>Y)TZ4jcQ;P8u60J(|VR1F!8Cq$qa7Z6ym?Ey&T@|;(p=sxhV&$ zXz@!)!r8uZr!UEn-;1Zo-A`_p8jMGYJ&)Bd#}2frSB$D7k_t*R##r2iC_ZP;t6mmacqFXP6SQ-kJG{)8k)LVpdE(g1^X-P)#z(Vn zv;LpE5$peei5?25&f)&bN*9=m8VBq`B^N)1N~WaSU7dpycP4kFSTSy8TJbKM5_7&y z-S@d|*U>qbdGBAmI-9+qJUev;i>ga(1;^4ZvdXD^2LMiHYmG83z+!>~nU=0@?;t-5AGB!%FW7>GR}H~3(4gAxRJ|ceB#(GzKF5qh zg!q{T>a=)fR-3st4>#ZGu7H$cmTz8+D5LXBR;t4xDI~jff0ju$A za!X4~@^W{_x*PFPaueWvkPqe1u6)y$TK8+CukehIZKhTyE?7Bic}XPlycyrw#YLQ= zn<)Zh*L4hw2R@E_ZVk30p>p;?mC#Y?85B^e1}MRcH#E>9=V$|=I{*kXbeu|+Zg(+< zot~cRISu`%!^A}9i_A;>Jzru6arH(er|Ck@n;?+ogaS(m2uXpbZe}kwXa#{qNNH$j z1TUM>bCAi3?hsNMR1){te^i!Ool0u_OVk@-<}+&FTf1A*eZIsczP8dGRp+`ju8`=0 zH%y|i$|5HtWY&c_KlF4FKn5(2!FE1c&|z-6u+gj#4wnIb4=z{1zl9ECghr11H^3$2 zwiJl5E%|U2n+pD^*9qOjWq2G<+hve#kQlOD9Zu{g-3tUJFN?`%IF;E-Tf>6Co9b=d={g?r!3)NJg!&&Ohb zZAGXuVFCBPbUElq`lC^bLJqY^kdU5LCIuSWfLkZkY%zU==kg4^%Qvann^uw4W}WB= zYB=9%>8me-#;UgZj76+C%xZv` zta>e6;TV9Eb|55SEb9qS;qE9Igk?}6mUfS6T>a-6h=&kH`wph@UGJDYlmOl3OTZE@ zx(%=w{kC&}$~@fPP1e|`sWC3qjXw2`NEL}^P=kcy)9qJaPN4-HcE{|3ppTrr8vtY6 zlwM29dS@U2(-jshDokABIwGzhbOc>$4~`ojH|UI>)P6uf$Hvj}qPb>3(_}uknP~&C zBFd+4k`4$M==&_&@6KNV#~8XIb`$8DxdMZdElBbqfYkP_ttNKtZCLb;TEKN8ck8KU z0M_r_oV#6{pto!SltK8#;-K4xT^5So^GUe%6a=2+gC&+jh)zMsZWG}b3jrn4FalS*rR=3?glW<3G{GS&p5@@vOYjErtOBwa+GwT- zGJNBf(I0QqpV+BJ+a8IaBY8V`F9R8vp2^*|?islI{*Z)ZhfyK!lnEe_JVONMDn0K} z$I1I*(Sy=ec*HDvaDui&oM5fA(T8!ecmzRr;J+VQyk#6GSBfoB`@DH)3xoCoi1sT2 zi$Qc0tO^1X6pNqU9;ded25|BB*7Mn4LYl|eYxX8L>20@bJUa<0++zq18_2gN7cW13 zXMooXi>M&h2*3}<@J8-8?{NG5qgpI>>HW?W{qEDwPX?mClw~QSe70Y}Jt?Zuz{XRt z{jka^c_jM{Zia@Q@zZviSYZuvc(lq1m(+$p&_+`U{82<^m|n8dqnIp`a_R0 zk39ZRr72yJAOOO#ao2qoZ?bKv3%~JXhVw70>C->`ZQk>{c<-_RiH{*%oOosYaw`iF zm6UYt7>1%~XY$L+UA?TK$88m|@Y~IMzpv+p_!P^FtSbYS=6*ztFw9OSQG_372HYXC zJdPmyhly*u)Df6(=y!8YQiwH^J1)R5Q=~>mmx_`Y4>M%(wQDp~tSv{dX~=&;+-y3L zA|&kgdaC_g7I!xf8k;xo7IXR8!d&SHBrabef{SX{RjO&c(m>k#FRAQ_DodD-_;;&6 zmZ-MSQ!E7V@5qcGp>zxSKhS1YiHq~$dH_GICr7qq;G7}sD@R3(Ch(jV=pJqDfi>$H z4n_)(NqLt0tTIS35UD*SUtIahH~PV@*e1u%J#BCVBjgRgxPSqQl||amq3Bj_XKHNR z5KNJva2$$!gi9Ja0BEsyi{xwqvSchQkwhwN0i`1RbU&fU`FW`}{)PVD5f~(`ZITX@ z3@m465CSaJz<}D-)m1j)TZShv;l9u->=%??Y?Aj!v3Ep~qtTesC#%R@A9vI?9${*> zfi-<(L{**c*zp}$P~OSC=9Bbx`8^(tC(mS8 z-MLO6QR8|YqdXaz#a-O-!4Jy8koc9)F3j5PpJ?WC~VaoUk^Czzh zOKT(h`w0Pwb?g4mNE`9yP&vxyoDYZ~e;j1X*7Zf$n7~A3!3isMUbqcsERA%hsqrIG z3+rskTvCDFpK=WMwnVnvpF%-}-;Rw6EFAIAeq#`s4ZdXRq{T8o?&_sRpC!B!I8n0* z=Y7UHa%uNFDWiw_t5tUBGAX#nLpIg7`l;T9i$zjld9Bbj|NHzq&^s(>JrJFQhR#`G zBAC1bO>@QR@d?-9&k!ds85F@d`BGLKoQ4jc_>5_*KIEVLoWUXN9Gy>Un|Ry*@JEvy zVE4NZhZ|ERCr}Y4KNa&6d*Bs=?G$0(Wmt@x?)0*nz=GfJf9L^O@0L;3mTMR4ki2aH zx;U;g)DWLz#y5aVav;Y` zhtkC72<@>d54wW%#d)yGJY2JESdEi9WAC6UfP8rdox^18!Tet*Uh`?ZLlJ)VR!FP; z9e>wJ1zkniyy`pOF6^MMPf!1_2}IX2J zX(BA$vF$it2(xEoGyr6f^^b4@V-VqcCiMmvN+5dy1?366}$?RWK1}DdNUE4x{;6fE>(N2)WC(e1j&w|F>70%@*x1zl0^l!zg$?l- z3Y;}-;y#c-p#|Hy7B0ntFVZz#X;u?0?kd4We8=0I6-40`1IOs}j`Y>laU^NLL=5G? z(eITy)4xQGq%X9IMcq|Wl6d>NXQw|i*s6Wmeze7_m*3L(!O9VR!Lsme%k{6F=Cq{v zlQd>TA`sKJY}1VaMexWJ&7^S=88_o`196sBD-?}`R=+MBly*-!SImkSRw~J{%aHO- zt>~lEyM=7=Lr#n(mu;!ya92OjBzoMj_kum^&XhrA752fota{-ZiPfJ+m8coIX$DBqRYGjob0#bMr|Wo!Hp1M|VuPQ1 zK4wjN!+gEpy5rv`)?muSmoyFIcJ^q^iNB=Xd3MtGbELU854TqFdAE|ybNEBhZzkBvbiwNjbv_e z9FGCAO2AC}hui6Zct5mJ9D0uNN;`;3*^D}>WGzCG$Nq6nUw7FTuRi7sig+Co=pPy_qO%03uHjy_3KVrHDhx?z@~Pb>UM zr;4=FQ9g^(iMdj#kL9C~oBSL7b38NR_V^iUe(`u6N5;%YV3(Lin@%(%Aa`IwX+|xM z6$9q5LT^j*Hd4X3_~B9>TTR3>L0Y2gF^*&y@^m~sq^m_53Tq3Hfy%8U3^QLL(gd?1b44y_mE;OcS{jyBYkB;D# zgQbRN6wiFAw#Ix+$-7^Gb9zLelqM7fJ9t|~FSRt2`w7=VacwOQiQ^M>{~T#4hW}wTrjUb7?Gv%S*jSe2x4f8~)E*e#EAbCj z6bVvFMV`Dvlg_#)%X=_?J_Vo9r-V5YgE#Mf$wRz#^Q-@>EIL*;|wXC)fmpA0EM%5 z2u=z5HZ=xbes`ahVdkdnB8`Ni@+HW9q@HQYQ#Y~`Ds`F6mvEC9Z%%gRBwt%Dy`0SP zVCPB^hZ(>A+*LuR)BfW1Q&x}i9WB1dixAJa>=;TG;kU($Ea}H>f?MV1JQ9huUXKvb4=NBWYhz| zTDfn>czm53iFm?763Rh)>)Y9(CDMCh{JQr9Obem$;ihMKPj6?=`?hp> zTFBK(xHxdJGpK#d067{`s!KVgA-X`4X2_ zOs`8iI8rxuc;B%r4#(pWQ7oE$;j!jbWM?reIPDLTNkMvlG(8fd4<#B&-S_H_52XtG zG*4t=clYEf54H0Vi*Li?-<@ zz6I9iiAJT7Ds9k5SLUn|azU+?mFlaVEcJO|QslBEa8+O&>w;3Hb{+4v2D>h3k4GGh zZ;`3o(A9nMb(CPbTT_U{95}&`dck|{d=%jG`LrOB=>)s*F&e7N0`XQ5k8-%5(YAop z_QETFMgmpyEnm9<-7f(P+~Tf9u>V7s=v`ffPWaPXS*a|xXkG6U#NYBbZ?GJY^MkYZ zQ6RNMh-|RUv=rvY243T#G zV{7v~%6(2Yzl6?j7UIgARp5gMM9MC=O)+e9qbnY2&8!5Av6s>FudZ)?jPu;H7#(zd zyK7s{IqFope7cW`N|d;Y61fy*?cDodxKN?khtmEmsJX3|)~5?I`Eq&)R9*a@bpkUV zCLEMUC)gPSFM5Z&n9O`-QPd<#f+hK_KT$~ttHC0GHVKnox-$)Y&LJMs_q|?+OgPoY z+3pbtKfwz<&8`~7gLfQoYGgthxSV;zt!+-(o{`Vny&iem!p?<{aB3NM_j5tv@wi}m z8DcZ~bPN}?ydQ0t(y;Cde`*&F;RTCIY%B16wHNil4rec_A!`U~%YeL>F^J%R>T7@r z46zy1G-Tl@WEgD&yNX(#1$RMNdUnL#zd9qx~VSbTtZMC~ynh}zKlG6HL?hv2_>3|DZajGr(%NJ|IO9wtCT9`Q+$mg+-JgajmzpOVPGX(Rptb1EFa5>kGy^{T0^i^uAh4Co<+z5ekf zKd)fBW?6}iQw)R!uzrd@Kp!1JZ+T^Z4)F%b%K=`wTbYw3AAzkP-OyE<$9F42Av;(~ zsg&c*b!^!H{8;=UZ=c;NWpC2P$yi}nUiT_Mi$n6ytZv0G))FO z3ynR$u7v_h+>Fa7uN%r;js?mBsIHm>0+v_3%K|pgS=)bKd&E;|A1+j6-Ws4CObuYP zYy89z`nJ@W!E~Iha!@ua%u!pL|%a&D`tkZ@$V8Z|2Tn9%* zDQ0ODBz&o``&Wvg)qIP)@%K1~K=xPF&S+BUGs|!Mp{7b7BBgNB;!u2OOce#BR61fY zm1{BnP(T%^NtvZ3N)T7emnk6#4g6s+jww4L+Z~} z$H5)-Tg}P z;NLqOlzhWyt?f~J5rJ&1H7n8v@>q4-{B8&|Dg5%;;f3G$?{SL~-T>(;Ztl$?dl>@I+bzE1wukwD`2Jeqe zp0Tg>e(}si{Gx3xDhRd~EoLl!(X4glW0YTNY%yt{^PL2hg1c-)&+fC=w&1mv8;#$` z<`|im?kvs;{64$8E8SP}3E!)2e}TaP<_`bfbyearubYA3L@_s49CDN76g;ToHOdB7 zP{$0)+kq_vP!a%opB{Dp7bscem;_MCZ;Oi)-c+YXTe@PRU>jnrz@rxm`aozX$|fj)>=b2f51+x$nAki@`Xj=1=B#%tdt|9qtYJjv|; z@+7)PbF5lz>#yEr-&MwDrA%sH`8+7i+?^jfT&)E`91-@pITuJiihj6qjelHg`sef>!{F6CRvIIcs- zvcj$Q+7qMeuvc5Ujlb*Uk*Fa5TMLlncll$`3E=T@k^^>u0GkT!2(rXGufoiq7#v(b ziUj@dKb*XD0Z>JbSYP-LmuHDh*gX5CtLrUnjDM`72xMy*YEZNA0!>w-tI(yFyf-?0 z(1&$i8GTLP#`>~xe&qkTRpHz8*|oG(@rm;ZWXtPLOS@%O{P-5`)o8NByiHbU15g*4 z7G;VtoO7qEGi_DX+w1 zrd>ZM6#wV!EJ}uK_tGK)#yvHf*-i7<=3{#VN=E7c{Az$=lhVZd;#`Sz9qCph><@fh_B~SDVYD*m)V$9+*GO7RV**U=ZJPwgG-I7awVQDov zsrZB)K(Wc+13Qq_>7Mr}4WC~liux1Ct5I^s;2dNKb z8OO{XXuIvcJREUPjP(+wQ^A=!R4mTOcrWL($$x9hkZm}(YH@EYNo*k9;Iw$U=|<)8 zbzn|RE;_@8?e*O^!(6Hu>Xq!E+t)jb_n}yGmXBo z3J2r4Qp!uF_PT1sQ0itkA8Sy~EyxZmm?cC_w15@*t(pN7dzn94$lY-n5isYap%Ta>pux<88W9ffgCgEJ~`Go~0<@0~IB zilTEC3WjQEHP1ivbK8|4U)%nlbWY zr#R6N?ywA)@2+>ja3H1LPrL~vMl zY_7M9C<>16IEl`RBQP)(P>ws{Uo@_Lz%J&ds`};Qy7+$InwfH7P{)5D9Z$_o%m78B zzpa5#vVtwd;gFOA*go_$#y8u9j2UEQ9$9lYdB+mphSndNmIG49;tqC%>GTkhfcZYk?hM2oBdEkOB8?b zt(TVU&w$6I1su(|Sq-ev?vf_+9uG0i2j}n3ruRg*`4&F^8+jFLG@>1Qw5S}W(nXF+0^wHltA_h!lG^9g=YW#D{er&mMurm zltsbClqvfBI7>Xh#;PZQwli5@jo%w*LT7xw=?A`ck4|->%hdCRtfY0?#QOD6khfEX zaq-B~%R?iSalp(^c1`i`VW3P>3!+?IqY0l9n4*)%LBT1X!1Ujet%q%_GR`hpTKs3C z9zH~HMw2+uvmiLF>k+!w)m?I8YV0J!Ijadpszpospr;+Bf+IJ)pHQ*y7gp?3A24z7RW*-h6&vy{dD{5o0FrJMW088>|H{3pGr=8XESJ! z`o7-!WhnGltCmjE06arEn!M{z(;Rtbt!N1Uo8m?LWxcxcmBX^ zF8@gx=ZLX)pyL*i0P-S;5Gn-M6WC7sU%%pL0@o8p5$O3`>V>(jb2;f4;u0b3AxSNz zI^R$g>6fEyy5bH~`><>wAhiK}e6e0p!+p(O?LXc}X{sQGjgEg&p;8_4GWJ>{p^FU_ zsg6VC=#YzZ1KpV_sMffIXK@!~!5F7RgYY>nB5%w5wdb(}_t35LuRPnzf zFpjOFoO3>gQXrwyLU0-}!t3N*`fv{_zc@)wK&q6t6p8{`17YBz`;&=s^+5=gJZnFU z%HeP=@?1sx2T&gy&ZtRT$;pP}O@axK>bkShR6=hSTD*)Gymz>glaek$yIi93TxvuJ z4Egc{Ls$L3xs){sHG3SCBgQa+o8@>>Etfz7Jc>8aWgw<@BIH_UNAwZE-m3(0KiI;9 z{Q$b2b|+eY7{A4uUT#*jrH_4M_O&i z7&FIKcA|lb?Fb)-XXys`vusZ{#};VTm9KtMj{v_nrg=9Wp6b|WL`H;pS6qbd7vs;i zk0fuG@h3s>7bJmgBu-C8B&Pr+qgo-4=t_$K@}|z~#Jc-7BtuI~Nr@js7JFi`W5hKy`B%4@XX0pMU1Yr!&>cGMd zB%#?(BaivD$b{y6GiedTkXzPpL|b?&v9X`cu3v9+Sj*aB5RgU+2$gdCXE5Eizj^y& zcjgtC1XqMWm;#s(1Mnm`K?fZ6_V@-M9wl_QOBnf6*?bo0(tM%IT~R!3n^cmxJ^(zp zI6`Q|Ha~Kdj{@f}o0hMbT^~Zm<%V!4&)Qd<$r9eigNeQ~sV>09B7@QlhP{bZA*SO> z+=G6&bgjtN{Evnp`eWQ45j7jLG#6mB`)HgVcFFhvd~4?BDNuv=iZC ztVnaQaHhnu3i%itXFI9`A6P+b*m)4bbL^kN8%9(-Vumki*%#L={D{)))uh9FrB_(rqDU(6ZxmQSMT^zXG&(n_B55B5qoB~qFz?MxeABU3`{!+NpTPh#N z5em;=12hY1NJnLqrzv&VqTj`QkYz{wPUll;6=~6+Tm-xku8}wnGgmtNrGS#p>c1MV zc$=2i-=MyC52V+=BgzF`j(}Zg6Fj=bqy~CaTV`EjuP+CCJb?AVrG!P~ropK@5fhZh zYJ`5HjI;H`((&}nSe}Amem8j-=X%F`jsbs#IAM6O*u?7~60$w+nWA_Pb zTz~g3?jM6ANW3)QGQ>0L4P?$4u^gz-%Y z+(ylEHg(ZiVJiMOW{7#KlC^nA3W_*E)8GJAcE|8IBGB0wD0;7f>YONRNJo}D4Bu82 zgVxj3hYl zY|8+}Au7Q+@N^DxSETJ{18p|XNyE>dpSFW3-rcH@z-K%UQ5y#+1$bu@@@VfGo;Hg` zTPYk+p}xM@#QlO9BsJ&(BQE-8HpFgID#kAQtOrZQ9qj8Z+k+xs`Ew{^AsnGHWD_Mo z8H=#3mW39sSwIRAx=?mkzOpA_QuYYHtbr1XyM&I2Y_2|{hlkA_^%mlahsZ?ty44#{ zA`cU%ka=M-+H&|;)sg}Ofx?9)28=CFZEt4 zoi_F5B!8?TbzAODkGnono*<4)=1wtrbaDt7M-Sm1kh^us%6Qm@ zT~!yhA!iyHIbz5q4~RJr`J>AJrCfEN~48eRi6Q}a@;If@%)uqWjDT=s7Q)`4JPis zIvbCb9mL2M4@W1)Z*6xM3szNc-5gMvH-FaF%MK0#~e)E*&Mm6MW<>$^{z?q)- zc&s=e4ifeu4FUm_jK92Q-ZLAH5Bj6Slu~Z0pTs|&$qb{4%+3KSH)-@srn$?xL(U&x zH{d);0OOtHvcbEX9-%kH_>lE@s?esJUWh9?K2$a{mMWvC!}$PV#^jpY9NSW6KLNDq zdc&93HP)(Wt&8r_;v}F<=#PSq{=>VIniqky=(D_1YfGrRggjxiuByO9}3aOF}y ziiZRQvShEn6!z{-RhZ0&HSUI>F%V)hGJR@gzQ0*~zmDvy!vp z&c) z74;aV10$pvi;-@>kZyg z>}ZWkFyB!(I=fjgV`&rkF5wv_PCxlU!^nHjrg&?YQSL~7aYKNC{utK*)%I+-cPu@cCbwT+|7Db8W z&zV_yurP67XwOh(tT1Nw;Rm!Ejp{4B6Lec>9IuaRZg+07Q|pmzS}>+ZLlEz%1l+my zi(S`f%BF+O!g4f`b*CykS}wLbx@Wy$mo%hVh5GzMS1irP#<4?-41pKkD&DUJ_04n{ zZ)K!|bDel4J7S)L#b{L~dpc5fjvf-yA6B#)DT$kyk>!anz_PqZTe?s+WlVgx+}N)X ziWy7l9Y9HG)@22c;V)>C>n$)$;+f^S&NTBLkh|;5mi&bOa{BW$GqosgjxmjDpok`T z+YDZ;Q_@?oh(^+3dGW5A%B1ZOT!&AE3**-h77QyXIWIjrUyZgV{@NKrJ|j!$Q>)Ih zE;Gu@rhB(6?>hIVmQ{eSmIY5anJhYaK5+9azVZ-G#ThBQe~%QfI{^L6Q~T$XE5NB0rpcwOa=reMK-Ptz<`O8# z5$qa~q2>2{hEc@eQADCf2vr0L`JFsY)*}({LDR~EVB9hoELv^1=oJqx~`QopF^Raic`VAs>A%;qrLr%>w`g=!3 zFYorA>Gzk{CT<6!TEa#?!ag~?O8UY^lVww;Zad;~t>`f+4Wb?n7j14%gXW-5_Lnj4 zvTJF;kVrNYfuSU2$Cu^fawLDwDx!x_BYiqzS$;Y>Y0zrh{1Hpn_U?Gbpw2e^59hrc z8pj6oE#emdFyyWIdtC9~#Po>6dZ@#8;tnjdF(u>6AqzmQ6jGd4R=9g{j&?q@nEYT{uaJ zQz};7RJBc}pS51?txVnrNd-5Tj`mHxs>y_ zEVlZ`X)%ZLlJ{-7L-r%wM~uZKoUiiiFS|JOu0o$jVRel%y@*T6{su}U0O3)h(&2%$ z{-;(!hbr0Amv#m_|2QW_RX5Vs&`tSRZC-`?6cQxTUh z;wPq*hdvPTd;?_{A^-Y|u!l&=a)UHYvI8vx7uP(A#Q2g>+3Q{94zJ=lkVzxcskX~v z3VD;9`ZnneRe+n-my++_=equJzBBxx_tb%3v;R`JR{7=HjOH=!@25fXSsP(z<@aZ| z@Q&-PBOdkyK@#&Q_BbA@?vOxGIVvfhmKnXQIZ|p&B-mHap9uA@TB$O7?&YltGD@gSBYA?29@SxeGfHaock?b<+6r;S=Ka?Qz6C0`8GE&vQ>YS?IxH-8eaYop z*n5!3E%CB>7j^5PLGE^&=4ZmY)sG*k0~>h-ZLLO>ZO$a!mCdR6-8p0qEnf?}n*mYi z3wIfKj;eudd!<<-*$=Knp4ZI;JV|5Fo{s!*9^cg{fJ|#rE+?gm$+krce#oN3} zFs||q87;#HgOS-VlfBwdgPc{tm}m0Wr!;m~GF!vn4P`x|n{+siqv!2jG@tP);-o6$ z-#e%n{rbhYFDb@)ciuj}rz;1y_G4ZSm!c+EEQK$YdT%pM`;w}|rorzEk3Yij~$)TH5TofrSH}*&F}h@fX-LH@qM0cCD@Rq?MkUiz}CT< zpXHk7959`=d;+IMjrXl$s)B?4)doYRFZg3klPQ374lxk`G@)<4mb@o&MYCtluH+3@ zZ?XFYW`?r*UB2lWqK0o`68P9v!QL0cPW+l?UfZn^epBRW`oqkX#WU}j=Q_cpd6E6` zzF@iPicN+IKd1v^f_&zdIKVwJ42MN6yACQ2g#XCVYQMD)NQ~rA($Xp=BHcrSgh(^eAR*EX(lCHZN+}>A zh|~~*!jKY=bV@f$cZo=yd;9#(`+48@e9nJ+X71gv@3q&u*7y2{$eQQGUG$NfZ@PJa zQ^5}QnhgPX&8b~z^hxOV@E~IUN4?OTcRTods!sg8N_S`ST?vu<*{)M$`E>E1(pFHFNKoKGjMXZ>G zvxTT(A<=Qy6LpHD^%cIocvfP%-wT=-EY&zN>`{BdcUoDog`xpE*H;s#wIzFdTR~P8 zU-sb1QsTWPi%8|x{+{&Xw&?8TPS)NGk0rZdZ%94C^m#kOW1P<=>JMeT*;EGOU$lso zixLP03d^%OFOM(mCyp;zLXF&FX!v;zWZFd?OrbkZ^RTB6u6i9T>MY$yauSD*L8un5 z{puOw&}1-&vU1+F-ZX4=-n&*N>9&~z}M zJ%ZCs%Gf~+BrlbSyytj{)w{yj=0s+y9bWrVCN2+5_<4!FYRfAe?4OQoXYU8d4=98A zay+)pRS-fT;x-ffIo`Z&b`^WWKtdj$D$5I>H`cat1Z02luq!y|&cLrROKCFT9ew(( zsLMN_PZIYi!w>b>?I916$pWxF>5>M4LMGO@|RE0U23{#8=B z6)51>BzY`v-*i@GdoE2!5kkzuD1={4Fue4wuJw7}t9ZonhbP4|4H}^SK95|H$<3>K zsBAN*%UzseWp`uXDx2+~S}=Q(jp&`e+a028-Tl_pFP&_5=0{;K8XGkQXJ|{yOO=x$9j7!1NwXa@asv<3qQ4ya|$fkS;b&JK=?DzCvym*kR*rS)i8#sE}xY8S) zd^bR|K;1k|G)>&&l%ape<}_nU>O?j!;x$9i$&=|`6q=eppHOm#)8iaR2*y;@i$=DqWgmsa3K_so)bz2 zu)&?H@Iv#%oul_UeryTcOngf(o5sHCE<$|!F?|J*_o6TP#`!)=J@U2Vk0j+Kv0$3E z$=RWc%#n-C$l7R+x=fQ=Nr^9KiQmPahX|UQtSY?oTAE3a@2V1g$}T()Dnv52+i%14 zQ5u9*89LP!U$8ByY$4`IKb8{<6+M6+E>?1Y8%WJSfg3s~QK9l$qtr92Z{T%UhB|Ch zGoBGQbTjMPF0~kgtP<%#aHuRdsL&c+d^OITW@2w19H^_n$5vV0leIf>wi~NkJ|K+n z$@wTNC2yA{P4V9S&`Pw_SCH5#6}$=X)=tSDEPM^0?SucmO(>-g!_!$%!{ZFY^;NuX z9MSrd-3_Lq981qBg7_LY2G_)r8j6lnX9QxBj(1ch3LdfjOv`ss=jQE;WsD{jdxSFr zt~YD57K7$Eo%US~&e_c7R>+d%brWTiaQg*awc3rdVzWK!%&R3~IJ?AQ(Oh;EpKLl9 zig}T7HO9k5AY0VQp=$H}x%a~T}!*o;`6bPoXZ>(iK^<1!FNkul%>tV-0@ z$y^1SwRM)m8l7F=-1%04)%K>JvSzl9jocAvVCE)tzd!lDU-Pv2&?EQm=Yx~WME{)& zYkp9pFFD(pcQaazNd50zz^}ikkWpNRzoqvRjN)m4*?)^WOzX9LP7^T7a<=a{PIUdXTpm&_JIX#f{WD;)fsk9k%@Dn2_xkWPRb_Eq@CN}Q8iAMd z4sg|h>pp|%$ zF-y`WEv;W+KWY|Pux3G9g zA02ho`pvCuE+dgKpGA5)mI~s4a0o#h5TzhE;{Sz!RQIC08N4&IGddZ9GJkt?c%URR zKGnYeB&oHp0`8^Ku<4pZH`!I=M`GsU*G?WG z|LQiH$az?@UOxVd1KEaI=R5xH0JtFXpVfqKUH;{P=q~@G)a}U;BHgDcwn8d_C`P;I zYv**65a~CK_3?PFuhv9zpX7&%$8>9|o7gVKYgDTAc9Q!Xc0}i%rW?P|ia^YLEXPb? zQg`XaN%+7cqn{x0lfY>@p!x2nO?u>Gc7xsx-aPP@K?0_UfwC4qp7Vh~@Nj`V&zi_i zhNAu#H@iQmo8R>UM)0_OzA5M(bu`ypZkvBx2!E`nkI@>{3b**!DiOUE6o9ce=Jsfd z&6FeHo=sGooQe+&lFLUVeex|4)IUpWY|BSJ9w7l}AL}OqlB_s>?D4t=y8=muLjsw3 zJ6q&;*dlUS+WG`b-6_Kk0X)a>iL*RKGYg;TgMkA|z+#lmJ1#db8(wztbFv!gZ5HQS zdQ|TB6LY=euW}<>HvgGu1Z;-G`m+6{N!u>Zn1&57UiV{fS~)m1V)!tN&gnkkxH5y%iXRY4RZ{&WfpGqR zB#;Bs-(7`2)RcxAzA@FE_taZ6(Y~+z+*s$&=Tx8rpnKi{MfU^1V5d8Oo!tx&Ew%| zZ3I0Qr{6ClO6_^zyhkCB>C{sm6clXr>lJQEXTa)B(yWO|GdDT*)`mMH@Gp)?CeUu@z+_M|MuA@WSv3dFS(#% zv)AQr?ltV!z>$oS%TsO)Yg2(_>R{zPg`C$Qh#XYoZ_uBH+r$3levE3<6G6HKD!CjC zM#5GTIJ`A<3V8gbeAojsJSs`E$3T9OTyJ+ZMElpBtrb?0`>=GQgA>&-*M=+p)B7ba zaZJj@Uk!pdIYRdim*u+8*1W`LXxb##~<2A^_7P-0|bK7jtq- z%24}{2jT5-(G)y@6Mqph+5-gX3zik(K)Ij@Y13m-kXc^K|NNGc0h`CP9xAXnYfl5) z?w`QNh1Cz8lJXsHFABoyDUzp>iL42K8~g@p9&9Bc*L5J1!DLLP0i8mQ7tlM~Gcoef zD6kYj(&wTchZF%^Bmo#P_En(LqY{`V_d$MeZ$gYcfgc=HnxR8ijSj)>Z{YxE8sN=3 z1|S&dg9CSSkPI7J1C`&sUw@*!Hpc)bVJ+TQ*-9f@#?)~f9V=$VXdG|}T!9?`@=rj% zuLr0wHrNMq+p*|+vt`X8m;oMZMM>`~I>DnK%vZHR;*G$pZFkIXHS6|p?^|JYfJv_u zc{Y)wez#5$g6ug1Q=bbkauD(m1}KWLE`aY)G4)?Bz<{3njdNHt$fyT4F@l%hQt&#{ zo(wA8s5?&VOzE4Tuvqx=F6Pb$M&E_dw<1nRg4BMk*+iJ<9f9*Dn&!bbcJJ0VgCVF# z#{Bt*pxb*FlV#&2gR0ZKscON-oSC>0|k4vGN-dx z;E+Ugw-y04rx$2b{jk3aNMmIpT@oi9wCArreA1u(EyxGu`)lKfm*d7&KN)!5{@t`n?WZG!RwaDn5uJo|M9o)$9l-?6O_$Z$r9 zWLn^gEM)4|LEZGUeyi#wg!ot`GeDaZ0fdZS@Cv1CHjpjk?U$Q3o8=P)K;7iP_X(dW z`{OTHfcvlqrT4iGzc`7FJBjZapiK9L_`POrZS5S$+tqB)EWvyXb9S`;-c?oMT#vFE zZ-oKAfx3=uE$R?}OFP`3Av*A|#rnPp>A;Jzmc3AMF_9NcVy-#OQEhvFZaHBU?arI{ zL{VImz64%8cILM9Vw5pr7FxGD1{p7bH{b^3w=HwNryv`uDkd%Kpm0VaI>W+2uiZ*3 zNqNFB{~Kku4Aex|`ddN5mTdAu zd8yCmKtxais0qU*7e{+w)5W&^nd?zE0J(D*D4DeMn7k(}fsaem&uvh5ENwcQ-SxLj zUyybrqp1~t1=;3?s5TKZ+v9578*4rtVuKM4u%1MrLg$ai&38?TPQzjHIxP_zkMwmv zeU33K0a6!zjpu?kIdZ^} zM|k@8fU%ockXIqSly3zy8-f%!(xEa#m6&Nmy>za#;%OjmZT1`A{6{0=_iadoSNEO) z;Kbn}nUvEH8I|`IH+hN4`o`Gs4mP!|EOZhk4c_sZc#Z1&gC|%6%5|r1)qnH~_}%O` z1_H4W*V8LZz{w>kf4xP5-Zo9l9^&W$+H)&R9kE~ka&Lg&@bc8 zfN*33SehTj%Q?Q@08fI$pdtzKDDRLQuJ1JGtUGWbkdwr|`9&6>ePn*(&H!utqWwcW7g9`7V6-qBNxsr8zg1s1++lVm4KGbBoHf?Y1Ad~w)umiE~iMML(hC>lj#Q&nG;rSn_d#Ijx9=V&8D z5yLwnqRI&s4qq5et||>*$jj6)Z~4oJ3t*zR&o7g>3shzNW(|2Ji*>%^IPR?I7}h~L z$dl6|I>Z}mP@^>Gm$l05H^uaTmRFoY?$Hqy5a;;)OD5L&d&EA~hVg&p44JbWFu!lQEX|^FM7S zprdyI%)PEG6aS*Ha^$Rx47Kw`WztudhwKWwI8Fr?{QJ!+kS5b*E|C-H;wl{{vpT)a z)xP^`mvb#1u&~WAD1*~mmc9jaueA=PN{Tn;8!Yf$WEzcdsb)SYPFDRbPPb}Q zdV7m9R~7@hU-!&+d@4HEW9HgE+C#%?jWNN951c)MMfebe8~>X>tzk(DYlSIDqdlW} zo+?&JUNKxl1wxWkHoJ8YpF!Z>NPe_F=;`7D2|zxjeh{T_L2k%|<}>Z+w<&iMp(@(X z66+^|xDqh1A}P+CmLrVgJ{TSI+^h5%3PAvcOmZ!^e>s$SW-);w{Xqmq7bF0v57LNO z9Sy)gHV$miuK8N&B?>_dZk$y}(uA2?dzcy)79mniQBDsMvus0-83C`hiBX7QNC)GY z)=T&dRxJ&7i`>gR(E4tV4Q&#u zFA2n((1{kCTb5+A4&p#Z3%G&;xDLF@H|D2IPEj)E-H&qw;Gt3{-*FHFR0b8@9oP)`3o%Dy@sq0ancq_6arP@j-WV z6hz?KL=kjQLpub6;4@0^10ms4uIBSaeTp26@y4CjdIIAh z0^8|wFDT7KAta$VKF(sgh&a>+3Vn^ydRA#857IzQQXqc}3g z9=}iinUeckXgF8$*Jy=U(qeSDZ)bGwg`Tl-0lDOM&g?(LLoGq4-TmF)(eDY=r`&VN z(uH&+kJdi~X*GHORNNl?Qvc=0&HFip-pmYjp~>mNS!lhwQ|Xjx!Ox)We{?Z1Wm<`o zfiP0sB5gK#q^!Q`5W`h&n2ixL^4}KIGxjrW{CT|2b3itm9_W3us5jFj@58HnMuBH{ zxkn4L`G;=1<+qY!8}hdu!{9BMktNl>lM-bnpX3hHN*_5G*Wn-UswGQIRun0k^BQrE zsunD#$d9b8R8y!%3h9rIdb#xt@57!U8+9@aIzUx)7=yFoxtV*cPE%s@10S@EErBP- zoc2OzuA^z@ppHpJf1+wAd!iJ;B#4o)s~ekQK6+Y%{*scsFWNLt9R)zxb|iE_WxXU6eM?v$IhOBu3W&b-&W$n4Zq-z3Rj zRI%~t?X1^xP2&l={Y4u^sAGqc`J+?t}YI zX3bjE1qH=!O!A;|+WWg}=Z#J~FcPhc{g5!u`8c~DiRqZ192psA+$=2l#{r9u&VjyG zp=s`UaGZ~!LC4NT;ebir_*_OA-KVsTeCu25vkr&V=!!d&<-y%4&F#kv42EUecjzW3 zxslDE`(uM+M&Jho+aIg)G@CBP<7f@~PEDS4C>7t~ISe``g9A0nVYS<``|+ehEv?ow z&$ri+HW#%;3tC)OIk_$~CV6tsGubIAcehfU*Fw5*f7}x7o%q>W!Z^|_8`#twMCm>G zD7(-21KLkqi>Omq&7tljUIte#r_r0ac>jHreY~6G`u=L6LuZTGl-G9_0aicss#lw!+Lbm?L-3RXTBdeafi+vm2gw(vI`Bj>6;6Fy1N8L2w#H%gBM8HP- zmFx=KzqYGWipJ$4Nr@Zz#lY16$ems}7;i^bIVu0w11_tD2l?Vo7S#;&r92ZD(I}y& z{n0=wT@&no(-ssHflxO1JaYMY^xPfeJ@1`Vp`4eyx^kkE_O5aHpBq}AFZ7dBKe|p@2?Qsu zE*;a}Q|*Y{tadvlEEKBM_^g@qU4~1An9`eWX*7`D<0!?rsTgrcQ#LmEH88JHe;Gxp z)bRwli^6jW78;+`7Je)2b86rwud@5jRM-Z=FZ;;&k!eBitD}3Jy`Xk8BJHpy_&h&@ zYNl2*Mx@kaWtIH%b=UT0=b`82cyI%giksF9YU%^p&hgLn>m3I&6_LsxbdLG?Qn*EO z%$xrF+W6oXhh;Si3^DlcO^^s~L>+IB>c31a)2|CyLQJroB(ovQRn>`-Q{Lo~FwBlz z7v2B;^)^w>bNyUqEyYe&2@&yhPZ*9CL;h``tSz(>d(=#P^oN+?z6a(RHQ@H+$4+Zz zjFlc-7G$udl$ARqDBsrpk*)E}q-LhWlxxmI6+EjJE(2SsB=QTiO{=ZEa?PF}3XX5~ zG=HlYXwTALp%1A3)sm2d?ibc^*81Q*|Kv7^B0l#AETJXql;?m`VbR;!J^6xTtoKTux}c*e zU)UKQ!dVVnx!=fsxqA~>71OTVfvFt$AK!Q=D8Ighy7?py;aX^CL%~_VQ4k%<(>93Z z@pVZ!40q1=iYU{IqUl@6xA6Gp?OO~yN3ENJdPsxNw6u6z-r-NWvO_4%M2594nnK49 z89A>wM`jwXy^VfoA4RIdvW3e%I}(W_db`4EtgzTkk^IK1uCBo*zwM_q1_gaux_4%) zS&wdb-@1MMn@3**e(5$LrjxE{Dnh*lx z;1S?pNjBgBiXA9#lI7?i3_@9`h-eT#eE&YK4wORqUYBY>sgN@YwXO7 zd#4V=RgJ+Gb$$&aJBUM5K^AJzeT%n%HK7VxbE`me>xJ<;1p_#P_NKoYUj?x7HTcAK zJ_-S$6%r=KzdZod8yJ|knQ#KEvcH2*v;q^-|LSBc{?q6RxjT510WaVdC~A3jP0cF6 z2*i88AT5=&_Gb@T95ocU2T7*)c+jkaH^G={f^Kh81(q(bJNphITVpz$B8V1LY@${Y z#X9%`8o`#Hn!=jE4HomeQ>y(zI1r5}WJMXY_f~YtHP}8gDUwVL5yF`34U;jK`%SOIH1T=&400U0)==C#UQC`$T<`u ziEZ$X0Ea^(_!@*YOkk7G2z*n&!&UX6>v!CZYy^ga;Cw74TRwq{BhNNS7`j>MyB?G1$-#VyoQB^6UKRBm>37X!BSJwQbfyJg#8y=K#^wv literal 0 HcmV?d00001 diff --git a/thinkphp/.gitignore b/thinkphp/.gitignore old mode 100755 new mode 100644 diff --git a/thinkphp/.htaccess b/thinkphp/.htaccess old mode 100755 new mode 100644 diff --git a/thinkphp/.travis.yml b/thinkphp/.travis.yml old mode 100755 new mode 100644 diff --git a/thinkphp/CONTRIBUTING.md b/thinkphp/CONTRIBUTING.md old mode 100755 new mode 100644 diff --git a/thinkphp/LICENSE.txt b/thinkphp/LICENSE.txt old mode 100755 new mode 100644 diff --git a/thinkphp/README.md b/thinkphp/README.md old mode 100755 new mode 100644 diff --git a/thinkphp/base.php b/thinkphp/base.php old mode 100755 new mode 100644 diff --git a/thinkphp/codecov.yml b/thinkphp/codecov.yml old mode 100755 new mode 100644 diff --git a/thinkphp/composer.json b/thinkphp/composer.json old mode 100755 new mode 100644 index caf6c7e..c739abd --- a/thinkphp/composer.json +++ b/thinkphp/composer.json @@ -17,7 +17,10 @@ ], "require": { "php": ">=7.1.0", - "topthink/think-installer": "~1.0" + "topthink/think-installer": "~1.0", + "ext-fileinfo": "*", + "ext-mbstring": "*", + "ext-json": "*" }, "require-dev": { "phpunit/phpunit": "4.8.*", diff --git a/thinkphp/console.php b/thinkphp/console.php old mode 100755 new mode 100644 diff --git a/thinkphp/convention.php b/thinkphp/convention.php old mode 100755 new mode 100644 diff --git a/thinkphp/helper.php b/thinkphp/helper.php old mode 100755 new mode 100644 diff --git a/thinkphp/lang/zh-cn.php b/thinkphp/lang/zh-cn.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/App.php b/thinkphp/library/think/App.php old mode 100755 new mode 100644 index a1b1f28..8504bb3 --- a/thinkphp/library/think/App.php +++ b/thinkphp/library/think/App.php @@ -74,7 +74,7 @@ class App * @return Response * @throws Exception */ - public static function run(Request $request = null) + public static function run(?Request $request = null) { $request = is_null($request) ? Request::instance() : $request; diff --git a/thinkphp/library/think/Build.php b/thinkphp/library/think/Build.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/Cache.php b/thinkphp/library/think/Cache.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/Collection.php b/thinkphp/library/think/Collection.php old mode 100755 new mode 100644 index 0ff1dfc..3c1f801 --- a/thinkphp/library/think/Collection.php +++ b/thinkphp/library/think/Collection.php @@ -263,7 +263,7 @@ class Collection implements ArrayAccess, Countable, IteratorAggregate, JsonSeria * @param callable|null $callback 回调函数 * @return static */ - public function filter(callable $callback = null) + public function filter(?callable $callback = null) { return new static(array_filter($this->items, $callback ?: null)); } @@ -317,7 +317,7 @@ class Collection implements ArrayAccess, Countable, IteratorAggregate, JsonSeria * @param callable|null $callback 回调函数 * @return static */ - public function sort(callable $callback = null) + public function sort(?callable $callback = null) { $items = $this->items; $callback = $callback ?: function ($a, $b) { diff --git a/thinkphp/library/think/Config.php b/thinkphp/library/think/Config.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/Console.php b/thinkphp/library/think/Console.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/Controller.php b/thinkphp/library/think/Controller.php old mode 100755 new mode 100644 index 77225b7..b214c48 --- a/thinkphp/library/think/Controller.php +++ b/thinkphp/library/think/Controller.php @@ -50,7 +50,7 @@ class Controller * @access public * @param Request $request Request 对象 */ - public function __construct(Request $request = null) + public function __construct(?Request $request = null) { $this->view = View::instance(Config::get('template'), Config::get('view_replace_str')); $this->request = is_null($request) ? Request::instance() : $request; diff --git a/thinkphp/library/think/Cookie.php b/thinkphp/library/think/Cookie.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/Db.php b/thinkphp/library/think/Db.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/Debug.php b/thinkphp/library/think/Debug.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/Env.php b/thinkphp/library/think/Env.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/Error.php b/thinkphp/library/think/Error.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/Exception.php b/thinkphp/library/think/Exception.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/File.php b/thinkphp/library/think/File.php old mode 100755 new mode 100644 index d2ed220..052f4d1 --- a/thinkphp/library/think/File.php +++ b/thinkphp/library/think/File.php @@ -150,12 +150,19 @@ class File extends SplFileObject */ protected function checkPath($path) { - if (is_dir($path) || mkdir($path, 0755, true)) { + if (is_dir($path)) { + return true; + } + + if (@mkdir($path, 0755, true)) { + return true; + } + + if (is_dir($path)) { return true; } $this->error = ['directory {:path} creation failed', ['path' => $path]]; - return false; } diff --git a/thinkphp/library/think/Hook.php b/thinkphp/library/think/Hook.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/Lang.php b/thinkphp/library/think/Lang.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/Loader.php b/thinkphp/library/think/Loader.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/Log.php b/thinkphp/library/think/Log.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/Model.php b/thinkphp/library/think/Model.php old mode 100755 new mode 100644 index 92aca5b..6abed0c --- a/thinkphp/library/think/Model.php +++ b/thinkphp/library/think/Model.php @@ -537,6 +537,11 @@ abstract class Model implements \JsonSerializable, \ArrayAccess list($type, $param) = explode(':', $type, 2); } switch ($type) { + case 'string': + case 'bigint': + $value = (string) $value; + break; + case 'int': case 'integer': $value = (int) $value; break; @@ -547,6 +552,7 @@ abstract class Model implements \JsonSerializable, \ArrayAccess $value = (float) number_format($value, $param, '.', ''); } break; + case 'bool': case 'boolean': $value = (bool) $value; break; @@ -670,6 +676,11 @@ abstract class Model implements \JsonSerializable, \ArrayAccess list($type, $param) = explode(':', $type, 2); } switch ($type) { + case 'string': + case 'bigint': + $value = (string) $value; + break; + case 'int': case 'integer': $value = (int) $value; break; @@ -680,6 +691,7 @@ abstract class Model implements \JsonSerializable, \ArrayAccess $value = (float) number_format($value, $param, '.', ''); } break; + case 'bool': case 'boolean': $value = (bool) $value; break; diff --git a/thinkphp/library/think/Paginator.php b/thinkphp/library/think/Paginator.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/Process.php b/thinkphp/library/think/Process.php old mode 100755 new mode 100644 index 6f3faa3..7348be4 --- a/thinkphp/library/think/Process.php +++ b/thinkphp/library/think/Process.php @@ -123,7 +123,7 @@ class Process * @throws \RuntimeException * @api */ - public function __construct($commandline, $cwd = null, array $env = null, $input = null, $timeout = 60, array $options = []) + public function __construct($commandline, $cwd = null, ?array $env = null, $input = null, $timeout = 60, array $options = []) { if (!function_exists('proc_open')) { throw new \RuntimeException('The Process class relies on proc_open, which is not available on your PHP installation.'); diff --git a/thinkphp/library/think/Request.php b/thinkphp/library/think/Request.php old mode 100755 new mode 100644 index 4baf026..0721333 --- a/thinkphp/library/think/Request.php +++ b/thinkphp/library/think/Request.php @@ -521,19 +521,24 @@ class Request // 获取原始请求类型 return $this->server('REQUEST_METHOD') ?: 'GET'; } elseif (!$this->method) { - if (isset($_POST[Config::get('var_method')])) { - $method = strtoupper($_POST[Config::get('var_method')]); + $varMethod = Config::get('var_method'); + if ($varMethod && isset($_POST[$varMethod])) { + $method = strtoupper($_POST[$varMethod]); if (in_array($method, ['GET', 'POST', 'DELETE', 'PUT', 'PATCH'])) { $this->method = $method; $this->{$this->method}($_POST); } else { $this->method = 'POST'; } - unset($_POST[Config::get('var_method')]); - } elseif (isset($_SERVER['HTTP_X_HTTP_METHOD_OVERRIDE'])) { - $this->method = strtoupper($_SERVER['HTTP_X_HTTP_METHOD_OVERRIDE']); + unset($_POST[$varMethod]); } else { - $this->method = $this->server('REQUEST_METHOD') ?: 'GET'; + $method = $this->server('REQUEST_METHOD') ?: 'GET'; + $httpMethodOverride = strtoupper($_SERVER['HTTP_X_HTTP_METHOD_OVERRIDE'] ?? ''); + if ($method === 'POST' && in_array($httpMethodOverride, ['GET', 'POST', 'DELETE', 'PUT', 'PATCH'])) { + $this->method = $httpMethodOverride; + } else { + $this->method = $method; + } } } return $this->method; diff --git a/thinkphp/library/think/Response.php b/thinkphp/library/think/Response.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/Route.php b/thinkphp/library/think/Route.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/Session.php b/thinkphp/library/think/Session.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/Template.php b/thinkphp/library/think/Template.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/Url.php b/thinkphp/library/think/Url.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/Validate.php b/thinkphp/library/think/Validate.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/View.php b/thinkphp/library/think/View.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/cache/Driver.php b/thinkphp/library/think/cache/Driver.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/cache/driver/File.php b/thinkphp/library/think/cache/driver/File.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/cache/driver/Lite.php b/thinkphp/library/think/cache/driver/Lite.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/cache/driver/Memcache.php b/thinkphp/library/think/cache/driver/Memcache.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/cache/driver/Memcached.php b/thinkphp/library/think/cache/driver/Memcached.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/cache/driver/Redis.php b/thinkphp/library/think/cache/driver/Redis.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/cache/driver/Sqlite.php b/thinkphp/library/think/cache/driver/Sqlite.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/cache/driver/Wincache.php b/thinkphp/library/think/cache/driver/Wincache.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/cache/driver/Xcache.php b/thinkphp/library/think/cache/driver/Xcache.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/config/driver/Ini.php b/thinkphp/library/think/config/driver/Ini.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/config/driver/Json.php b/thinkphp/library/think/config/driver/Json.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/config/driver/Xml.php b/thinkphp/library/think/config/driver/Xml.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/Command.php b/thinkphp/library/think/console/Command.php old mode 100755 new mode 100644 index d0caad2..0f8bfd0 --- a/thinkphp/library/think/console/Command.php +++ b/thinkphp/library/think/console/Command.php @@ -72,7 +72,7 @@ class Command * 设置控制台 * @param Console $console */ - public function setConsole(Console $console = null) + public function setConsole(?Console $console = null) { $this->console = $console; } diff --git a/thinkphp/library/think/console/Input.php b/thinkphp/library/think/console/Input.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/LICENSE b/thinkphp/library/think/console/LICENSE old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/Output.php b/thinkphp/library/think/console/Output.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/bin/README.md b/thinkphp/library/think/console/bin/README.md old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/bin/hiddeninput.exe b/thinkphp/library/think/console/bin/hiddeninput.exe old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/command/Build.php b/thinkphp/library/think/console/command/Build.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/command/Clear.php b/thinkphp/library/think/console/command/Clear.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/command/Help.php b/thinkphp/library/think/console/command/Help.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/command/Lists.php b/thinkphp/library/think/console/command/Lists.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/command/Make.php b/thinkphp/library/think/console/command/Make.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/command/make/Controller.php b/thinkphp/library/think/console/command/make/Controller.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/command/make/Model.php b/thinkphp/library/think/console/command/make/Model.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/command/make/stubs/controller.plain.stub b/thinkphp/library/think/console/command/make/stubs/controller.plain.stub old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/command/make/stubs/controller.stub b/thinkphp/library/think/console/command/make/stubs/controller.stub old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/command/make/stubs/model.stub b/thinkphp/library/think/console/command/make/stubs/model.stub old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/command/optimize/Autoload.php b/thinkphp/library/think/console/command/optimize/Autoload.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/command/optimize/Config.php b/thinkphp/library/think/console/command/optimize/Config.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/command/optimize/Route.php b/thinkphp/library/think/console/command/optimize/Route.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/command/optimize/Schema.php b/thinkphp/library/think/console/command/optimize/Schema.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/input/Argument.php b/thinkphp/library/think/console/input/Argument.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/input/Definition.php b/thinkphp/library/think/console/input/Definition.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/input/Option.php b/thinkphp/library/think/console/input/Option.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/output/Ask.php b/thinkphp/library/think/console/output/Ask.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/output/Descriptor.php b/thinkphp/library/think/console/output/Descriptor.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/output/Formatter.php b/thinkphp/library/think/console/output/Formatter.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/output/Question.php b/thinkphp/library/think/console/output/Question.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/output/descriptor/Console.php b/thinkphp/library/think/console/output/descriptor/Console.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/output/driver/Buffer.php b/thinkphp/library/think/console/output/driver/Buffer.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/output/driver/Console.php b/thinkphp/library/think/console/output/driver/Console.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/output/driver/Nothing.php b/thinkphp/library/think/console/output/driver/Nothing.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/output/formatter/Stack.php b/thinkphp/library/think/console/output/formatter/Stack.php old mode 100755 new mode 100644 index 4864a3f..214ea3a --- a/thinkphp/library/think/console/output/formatter/Stack.php +++ b/thinkphp/library/think/console/output/formatter/Stack.php @@ -28,7 +28,7 @@ class Stack * 构造方法 * @param Style|null $emptyStyle */ - public function __construct(Style $emptyStyle = null) + public function __construct(?Style $emptyStyle = null) { $this->emptyStyle = $emptyStyle ?: new Style(); $this->reset(); @@ -57,7 +57,7 @@ class Stack * @return Style * @throws \InvalidArgumentException */ - public function pop(Style $style = null) + public function pop(?Style $style = null) { if (empty($this->styles)) { return $this->emptyStyle; diff --git a/thinkphp/library/think/console/output/formatter/Style.php b/thinkphp/library/think/console/output/formatter/Style.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/output/question/Choice.php b/thinkphp/library/think/console/output/question/Choice.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/console/output/question/Confirmation.php b/thinkphp/library/think/console/output/question/Confirmation.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/controller/Rest.php b/thinkphp/library/think/controller/Rest.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/controller/Yar.php b/thinkphp/library/think/controller/Yar.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/db/Builder.php b/thinkphp/library/think/db/Builder.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/db/Connection.php b/thinkphp/library/think/db/Connection.php old mode 100755 new mode 100644 index 578cc8f..53233e9 --- a/thinkphp/library/think/db/Connection.php +++ b/thinkphp/library/think/db/Connection.php @@ -406,7 +406,7 @@ abstract class Connection * @throws PDOException * @throws \Exception */ - public function execute($sql, $bind = [], Query $query = null) + public function execute($sql, $bind = [], ?Query $query = null) { $this->initConnect(true); if (!$this->linkID) { @@ -483,7 +483,7 @@ abstract class Connection if (PDO::PARAM_STR == $type) { $value = $this->quote($value); } elseif (PDO::PARAM_INT == $type) { - $value = (float) $value; + $value = sprintf("%d", $value); } // 判断占位符 $sql = is_numeric($key) ? @@ -738,7 +738,7 @@ abstract class Connection * @param array $sqlArray SQL批处理指令 * @return boolean */ - public function batchQuery($sqlArray = [], $bind = [], Query $query = null) + public function batchQuery($sqlArray = [], $bind = [], ?Query $query = null) { if (!is_array($sqlArray)) { return false; diff --git a/thinkphp/library/think/db/Expression.php b/thinkphp/library/think/db/Expression.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/db/Query.php b/thinkphp/library/think/db/Query.php old mode 100755 new mode 100644 index 4aa74eb..89fc028 --- a/thinkphp/library/think/db/Query.php +++ b/thinkphp/library/think/db/Query.php @@ -62,7 +62,7 @@ class Query * @param Connection $connection 数据库对象实例 * @param Model $model 模型对象 */ - public function __construct(Connection $connection = null, $model = null) + public function __construct(?Connection $connection = null, $model = null) { $this->connection = $connection ?: Db::connect([], true); $this->prefix = $this->connection->getConfig('prefix'); diff --git a/thinkphp/library/think/db/builder/Mysql.php b/thinkphp/library/think/db/builder/Mysql.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/db/builder/Pgsql.php b/thinkphp/library/think/db/builder/Pgsql.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/db/builder/Sqlite.php b/thinkphp/library/think/db/builder/Sqlite.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/db/builder/Sqlsrv.php b/thinkphp/library/think/db/builder/Sqlsrv.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/db/connector/Mysql.php b/thinkphp/library/think/db/connector/Mysql.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/db/connector/Pgsql.php b/thinkphp/library/think/db/connector/Pgsql.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/db/connector/Sqlite.php b/thinkphp/library/think/db/connector/Sqlite.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/db/connector/Sqlsrv.php b/thinkphp/library/think/db/connector/Sqlsrv.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/db/connector/pgsql.sql b/thinkphp/library/think/db/connector/pgsql.sql old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/db/exception/BindParamException.php b/thinkphp/library/think/db/exception/BindParamException.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/db/exception/DataNotFoundException.php b/thinkphp/library/think/db/exception/DataNotFoundException.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/db/exception/ModelNotFoundException.php b/thinkphp/library/think/db/exception/ModelNotFoundException.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/debug/Console.php b/thinkphp/library/think/debug/Console.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/debug/Html.php b/thinkphp/library/think/debug/Html.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/exception/ClassNotFoundException.php b/thinkphp/library/think/exception/ClassNotFoundException.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/exception/DbException.php b/thinkphp/library/think/exception/DbException.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/exception/ErrorException.php b/thinkphp/library/think/exception/ErrorException.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/exception/Handle.php b/thinkphp/library/think/exception/Handle.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/exception/HttpException.php b/thinkphp/library/think/exception/HttpException.php old mode 100755 new mode 100644 index 01a27fc..6f2807c --- a/thinkphp/library/think/exception/HttpException.php +++ b/thinkphp/library/think/exception/HttpException.php @@ -16,7 +16,7 @@ class HttpException extends \RuntimeException private $statusCode; private $headers; - public function __construct($statusCode, $message = null, \Exception $previous = null, array $headers = [], $code = 0) + public function __construct($statusCode, $message = null, ?\Exception $previous = null, array $headers = [], $code = 0) { $this->statusCode = $statusCode; $this->headers = $headers; diff --git a/thinkphp/library/think/exception/HttpResponseException.php b/thinkphp/library/think/exception/HttpResponseException.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/exception/PDOException.php b/thinkphp/library/think/exception/PDOException.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/exception/RouteNotFoundException.php b/thinkphp/library/think/exception/RouteNotFoundException.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/exception/TemplateNotFoundException.php b/thinkphp/library/think/exception/TemplateNotFoundException.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/exception/ThrowableError.php b/thinkphp/library/think/exception/ThrowableError.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/exception/ValidateException.php b/thinkphp/library/think/exception/ValidateException.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/log/driver/File.php b/thinkphp/library/think/log/driver/File.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/log/driver/Socket.php b/thinkphp/library/think/log/driver/Socket.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/log/driver/Test.php b/thinkphp/library/think/log/driver/Test.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/model/Collection.php b/thinkphp/library/think/model/Collection.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/model/Merge.php b/thinkphp/library/think/model/Merge.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/model/Pivot.php b/thinkphp/library/think/model/Pivot.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/model/Relation.php b/thinkphp/library/think/model/Relation.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/model/relation/BelongsTo.php b/thinkphp/library/think/model/relation/BelongsTo.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/model/relation/BelongsToMany.php b/thinkphp/library/think/model/relation/BelongsToMany.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/model/relation/HasMany.php b/thinkphp/library/think/model/relation/HasMany.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/model/relation/HasManyThrough.php b/thinkphp/library/think/model/relation/HasManyThrough.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/model/relation/HasOne.php b/thinkphp/library/think/model/relation/HasOne.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/model/relation/MorphMany.php b/thinkphp/library/think/model/relation/MorphMany.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/model/relation/MorphOne.php b/thinkphp/library/think/model/relation/MorphOne.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/model/relation/MorphTo.php b/thinkphp/library/think/model/relation/MorphTo.php old mode 100755 new mode 100644 index 7d45265..c029800 --- a/thinkphp/library/think/model/relation/MorphTo.php +++ b/thinkphp/library/think/model/relation/MorphTo.php @@ -137,10 +137,11 @@ class MorphTo extends Relation /** * 移除关联查询参数 + * @param true $option * @access public * @return $this */ - public function removeOption() + public function removeOption($option = true) { return $this; } diff --git a/thinkphp/library/think/model/relation/OneToOne.php b/thinkphp/library/think/model/relation/OneToOne.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/paginator/driver/Bootstrap.php b/thinkphp/library/think/paginator/driver/Bootstrap.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/process/Builder.php b/thinkphp/library/think/process/Builder.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/process/Utils.php b/thinkphp/library/think/process/Utils.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/process/exception/Failed.php b/thinkphp/library/think/process/exception/Failed.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/process/exception/Timeout.php b/thinkphp/library/think/process/exception/Timeout.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/process/pipes/Pipes.php b/thinkphp/library/think/process/pipes/Pipes.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/process/pipes/Unix.php b/thinkphp/library/think/process/pipes/Unix.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/process/pipes/Windows.php b/thinkphp/library/think/process/pipes/Windows.php old mode 100755 new mode 100644 index 1b8b0d4..64aebd4 --- a/thinkphp/library/think/process/pipes/Windows.php +++ b/thinkphp/library/think/process/pipes/Windows.php @@ -49,7 +49,7 @@ class Windows extends Pipes if (is_resource($input)) { $this->input = $input; } else { - $this->inputBuffer = $input; + $this->inputBuffer = (string) $input; } } diff --git a/thinkphp/library/think/response/Json.php b/thinkphp/library/think/response/Json.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/response/Jsonp.php b/thinkphp/library/think/response/Jsonp.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/response/Redirect.php b/thinkphp/library/think/response/Redirect.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/response/View.php b/thinkphp/library/think/response/View.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/response/Xml.php b/thinkphp/library/think/response/Xml.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/session/driver/Memcache.php b/thinkphp/library/think/session/driver/Memcache.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/session/driver/Memcached.php b/thinkphp/library/think/session/driver/Memcached.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/session/driver/Redis.php b/thinkphp/library/think/session/driver/Redis.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/template/TagLib.php b/thinkphp/library/think/template/TagLib.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/template/driver/File.php b/thinkphp/library/think/template/driver/File.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/template/taglib/Cx.php b/thinkphp/library/think/template/taglib/Cx.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/view/driver/Php.php b/thinkphp/library/think/view/driver/Php.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/think/view/driver/Think.php b/thinkphp/library/think/view/driver/Think.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/traits/controller/Jump.php b/thinkphp/library/traits/controller/Jump.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/traits/model/SoftDelete.php b/thinkphp/library/traits/model/SoftDelete.php old mode 100755 new mode 100644 diff --git a/thinkphp/library/traits/think/Instance.php b/thinkphp/library/traits/think/Instance.php old mode 100755 new mode 100644 diff --git a/thinkphp/logo.png b/thinkphp/logo.png old mode 100755 new mode 100644 diff --git a/thinkphp/phpunit.xml b/thinkphp/phpunit.xml old mode 100755 new mode 100644 diff --git a/thinkphp/start.php b/thinkphp/start.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/.gitignore b/thinkphp/tests/.gitignore old mode 100755 new mode 100644 diff --git a/thinkphp/tests/README.md b/thinkphp/tests/README.md old mode 100755 new mode 100644 diff --git a/thinkphp/tests/application/config.php b/thinkphp/tests/application/config.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/application/database.php b/thinkphp/tests/application/database.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/application/index/controller/Index.php b/thinkphp/tests/application/index/controller/Index.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/application/route.php b/thinkphp/tests/application/route.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/application/views/display.html b/thinkphp/tests/application/views/display.html old mode 100755 new mode 100644 diff --git a/thinkphp/tests/application/views/display.phtml b/thinkphp/tests/application/views/display.phtml old mode 100755 new mode 100644 diff --git a/thinkphp/tests/application/views/extend.html b/thinkphp/tests/application/views/extend.html old mode 100755 new mode 100644 diff --git a/thinkphp/tests/application/views/extend2.html b/thinkphp/tests/application/views/extend2.html old mode 100755 new mode 100644 diff --git a/thinkphp/tests/application/views/include.html b/thinkphp/tests/application/views/include.html old mode 100755 new mode 100644 diff --git a/thinkphp/tests/application/views/include2.html b/thinkphp/tests/application/views/include2.html old mode 100755 new mode 100644 diff --git a/thinkphp/tests/application/views/layout.html b/thinkphp/tests/application/views/layout.html old mode 100755 new mode 100644 diff --git a/thinkphp/tests/application/views/layout2.html b/thinkphp/tests/application/views/layout2.html old mode 100755 new mode 100644 diff --git a/thinkphp/tests/conf/memcached.ini b/thinkphp/tests/conf/memcached.ini old mode 100755 new mode 100644 diff --git a/thinkphp/tests/conf/redis.ini b/thinkphp/tests/conf/redis.ini old mode 100755 new mode 100644 diff --git a/thinkphp/tests/conf/timezone.ini b/thinkphp/tests/conf/timezone.ini old mode 100755 new mode 100644 diff --git a/thinkphp/tests/mock.php b/thinkphp/tests/mock.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/baseTest.php b/thinkphp/tests/thinkphp/baseTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/appTest.php b/thinkphp/tests/thinkphp/library/think/appTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/behavior/One.php b/thinkphp/tests/thinkphp/library/think/behavior/One.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/behavior/Three.php b/thinkphp/tests/thinkphp/library/think/behavior/Three.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/behavior/Two.php b/thinkphp/tests/thinkphp/library/think/behavior/Two.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/buildTest.php b/thinkphp/tests/thinkphp/library/think/buildTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/cache/driver/cacheTestCase.php b/thinkphp/tests/thinkphp/library/think/cache/driver/cacheTestCase.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/cache/driver/fileTest.php b/thinkphp/tests/thinkphp/library/think/cache/driver/fileTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/cache/driver/liteTest.php b/thinkphp/tests/thinkphp/library/think/cache/driver/liteTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/cache/driver/memcacheTest.php b/thinkphp/tests/thinkphp/library/think/cache/driver/memcacheTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/cache/driver/memcachedTest.php b/thinkphp/tests/thinkphp/library/think/cache/driver/memcachedTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/cache/driver/redisTest.php b/thinkphp/tests/thinkphp/library/think/cache/driver/redisTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/cacheTest.php b/thinkphp/tests/thinkphp/library/think/cacheTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/config/ConfigInitTrait.php b/thinkphp/tests/thinkphp/library/think/config/ConfigInitTrait.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/config/driver/fixtures/config.ini b/thinkphp/tests/thinkphp/library/think/config/driver/fixtures/config.ini old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/config/driver/fixtures/config.json b/thinkphp/tests/thinkphp/library/think/config/driver/fixtures/config.json old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/config/driver/fixtures/config.xml b/thinkphp/tests/thinkphp/library/think/config/driver/fixtures/config.xml old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/config/driver/iniTest.php b/thinkphp/tests/thinkphp/library/think/config/driver/iniTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/config/driver/jsonTest.php b/thinkphp/tests/thinkphp/library/think/config/driver/jsonTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/config/driver/xmlTest.php b/thinkphp/tests/thinkphp/library/think/config/driver/xmlTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/configTest.php b/thinkphp/tests/thinkphp/library/think/configTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/controller/.gitignore b/thinkphp/tests/thinkphp/library/think/controller/.gitignore old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/controllerTest.php b/thinkphp/tests/thinkphp/library/think/controllerTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/cookieTest.php b/thinkphp/tests/thinkphp/library/think/cookieTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/db/driver/.gitignore b/thinkphp/tests/thinkphp/library/think/db/driver/.gitignore old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/dbTest.php b/thinkphp/tests/thinkphp/library/think/dbTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/debugTest.php b/thinkphp/tests/thinkphp/library/think/debugTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/exceptionTest.php b/thinkphp/tests/thinkphp/library/think/exceptionTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/hookTest.php b/thinkphp/tests/thinkphp/library/think/hookTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/lang/lang.php b/thinkphp/tests/thinkphp/library/think/lang/lang.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/langTest.php b/thinkphp/tests/thinkphp/library/think/langTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/loader/test/Hello.php b/thinkphp/tests/thinkphp/library/think/loader/test/Hello.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/loaderTest.php b/thinkphp/tests/thinkphp/library/think/loaderTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/log/driver/fileTest.php b/thinkphp/tests/thinkphp/library/think/log/driver/fileTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/logTest.php b/thinkphp/tests/thinkphp/library/think/logTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/model/.gitignore b/thinkphp/tests/thinkphp/library/think/model/.gitignore old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/paginateTest.php b/thinkphp/tests/thinkphp/library/think/paginateTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/requestTest.php b/thinkphp/tests/thinkphp/library/think/requestTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/responseTest.php b/thinkphp/tests/thinkphp/library/think/responseTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/routeTest.php b/thinkphp/tests/thinkphp/library/think/routeTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/session/.gitignore b/thinkphp/tests/thinkphp/library/think/session/.gitignore old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/sessionTest.php b/thinkphp/tests/thinkphp/library/think/sessionTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/template/driver/.gitignore b/thinkphp/tests/thinkphp/library/think/template/driver/.gitignore old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/template/taglib/cxTest.php b/thinkphp/tests/thinkphp/library/think/template/taglib/cxTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/templateTest.php b/thinkphp/tests/thinkphp/library/think/templateTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/urlTest.php b/thinkphp/tests/thinkphp/library/think/urlTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/validateTest.php b/thinkphp/tests/thinkphp/library/think/validateTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/view/driver/.gitignore b/thinkphp/tests/thinkphp/library/think/view/driver/.gitignore old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/view/theme/index/template.html b/thinkphp/tests/thinkphp/library/think/view/theme/index/template.html old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/think/viewTest.php b/thinkphp/tests/thinkphp/library/think/viewTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/traits/controller/jumpTest.php b/thinkphp/tests/thinkphp/library/traits/controller/jumpTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/traits/model/softDeleteTest.php b/thinkphp/tests/thinkphp/library/traits/model/softDeleteTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tests/thinkphp/library/traits/think/instanceTest.php b/thinkphp/tests/thinkphp/library/traits/think/instanceTest.php old mode 100755 new mode 100644 diff --git a/thinkphp/tpl/default_index.tpl b/thinkphp/tpl/default_index.tpl old mode 100755 new mode 100644 diff --git a/thinkphp/tpl/dispatch_jump.tpl b/thinkphp/tpl/dispatch_jump.tpl old mode 100755 new mode 100644 diff --git a/thinkphp/tpl/page_trace.tpl b/thinkphp/tpl/page_trace.tpl old mode 100755 new mode 100644 diff --git a/thinkphp/tpl/think_exception.tpl b/thinkphp/tpl/think_exception.tpl old mode 100755 new mode 100644 diff --git a/vendor/autoload.php b/vendor/autoload.php index 66b8843..c43180e 100755 --- a/vendor/autoload.php +++ b/vendor/autoload.php @@ -2,24 +2,6 @@ // autoload.php @generated by Composer -if (PHP_VERSION_ID < 50600) { - if (!headers_sent()) { - header('HTTP/1.1 500 Internal Server Error'); - } - $err = 'Composer 2.3.0 dropped support for autoloading on PHP <5.6 and you are running '.PHP_VERSION.', please upgrade PHP or use Composer 2.2 LTS via "composer self-update --2.2". Aborting.'.PHP_EOL; - if (!ini_get('display_errors')) { - if (PHP_SAPI === 'cli' || PHP_SAPI === 'phpdbg') { - fwrite(STDERR, $err); - } elseif (!headers_sent()) { - echo $err; - } - } - trigger_error( - $err, - E_USER_ERROR - ); -} - require_once __DIR__ . '/composer/autoload_real.php'; return ComposerAutoloaderInitf3106b6ef3260b6914241eab0bed11c1::getLoader(); diff --git a/vendor/composer/ClassLoader.php b/vendor/composer/ClassLoader.php index a72151c..247294d 100755 --- a/vendor/composer/ClassLoader.php +++ b/vendor/composer/ClassLoader.php @@ -42,79 +42,30 @@ namespace Composer\Autoload; */ class ClassLoader { - /** @var \Closure(string):void */ - private static $includeFile; - - /** @var ?string */ private $vendorDir; // PSR-4 - /** - * @var array[] - * @psalm-var array> - */ private $prefixLengthsPsr4 = array(); - /** - * @var array[] - * @psalm-var array> - */ private $prefixDirsPsr4 = array(); - /** - * @var array[] - * @psalm-var array - */ private $fallbackDirsPsr4 = array(); // PSR-0 - /** - * @var array[] - * @psalm-var array> - */ private $prefixesPsr0 = array(); - /** - * @var array[] - * @psalm-var array - */ private $fallbackDirsPsr0 = array(); - /** @var bool */ private $useIncludePath = false; - - /** - * @var string[] - * @psalm-var array - */ private $classMap = array(); - - /** @var bool */ private $classMapAuthoritative = false; - - /** - * @var bool[] - * @psalm-var array - */ private $missingClasses = array(); - - /** @var ?string */ private $apcuPrefix; - /** - * @var self[] - */ private static $registeredLoaders = array(); - /** - * @param ?string $vendorDir - */ public function __construct($vendorDir = null) { $this->vendorDir = $vendorDir; - self::initializeIncludeClosure(); } - /** - * @return string[] - */ public function getPrefixes() { if (!empty($this->prefixesPsr0)) { @@ -124,47 +75,28 @@ class ClassLoader return array(); } - /** - * @return array[] - * @psalm-return array> - */ public function getPrefixesPsr4() { return $this->prefixDirsPsr4; } - /** - * @return array[] - * @psalm-return array - */ public function getFallbackDirs() { return $this->fallbackDirsPsr0; } - /** - * @return array[] - * @psalm-return array - */ public function getFallbackDirsPsr4() { return $this->fallbackDirsPsr4; } - /** - * @return string[] Array of classname => path - * @psalm-return array - */ public function getClassMap() { return $this->classMap; } /** - * @param string[] $classMap Class to filename map - * @psalm-param array $classMap - * - * @return void + * @param array $classMap Class to filename map */ public function addClassMap(array $classMap) { @@ -179,11 +111,9 @@ class ClassLoader * Registers a set of PSR-0 directories for a given prefix, either * appending or prepending to the ones previously set for this prefix. * - * @param string $prefix The prefix - * @param string[]|string $paths The PSR-0 root directories - * @param bool $prepend Whether to prepend the directories - * - * @return void + * @param string $prefix The prefix + * @param array|string $paths The PSR-0 root directories + * @param bool $prepend Whether to prepend the directories */ public function add($prefix, $paths, $prepend = false) { @@ -226,13 +156,11 @@ class ClassLoader * Registers a set of PSR-4 directories for a given namespace, either * appending or prepending to the ones previously set for this namespace. * - * @param string $prefix The prefix/namespace, with trailing '\\' - * @param string[]|string $paths The PSR-4 base directories - * @param bool $prepend Whether to prepend the directories + * @param string $prefix The prefix/namespace, with trailing '\\' + * @param array|string $paths The PSR-4 base directories + * @param bool $prepend Whether to prepend the directories * * @throws \InvalidArgumentException - * - * @return void */ public function addPsr4($prefix, $paths, $prepend = false) { @@ -276,10 +204,8 @@ class ClassLoader * Registers a set of PSR-0 directories for a given prefix, * replacing any others previously set for this prefix. * - * @param string $prefix The prefix - * @param string[]|string $paths The PSR-0 base directories - * - * @return void + * @param string $prefix The prefix + * @param array|string $paths The PSR-0 base directories */ public function set($prefix, $paths) { @@ -294,12 +220,10 @@ class ClassLoader * Registers a set of PSR-4 directories for a given namespace, * replacing any others previously set for this namespace. * - * @param string $prefix The prefix/namespace, with trailing '\\' - * @param string[]|string $paths The PSR-4 base directories + * @param string $prefix The prefix/namespace, with trailing '\\' + * @param array|string $paths The PSR-4 base directories * * @throws \InvalidArgumentException - * - * @return void */ public function setPsr4($prefix, $paths) { @@ -319,8 +243,6 @@ class ClassLoader * Turns on searching the include path for class files. * * @param bool $useIncludePath - * - * @return void */ public function setUseIncludePath($useIncludePath) { @@ -343,8 +265,6 @@ class ClassLoader * that have not been registered with the class map. * * @param bool $classMapAuthoritative - * - * @return void */ public function setClassMapAuthoritative($classMapAuthoritative) { @@ -365,8 +285,6 @@ class ClassLoader * APCu prefix to use to cache found/not-found classes, if the extension is enabled. * * @param string|null $apcuPrefix - * - * @return void */ public function setApcuPrefix($apcuPrefix) { @@ -387,8 +305,6 @@ class ClassLoader * Registers this instance as an autoloader. * * @param bool $prepend Whether to prepend the autoloader or not - * - * @return void */ public function register($prepend = false) { @@ -408,8 +324,6 @@ class ClassLoader /** * Unregisters this instance as an autoloader. - * - * @return void */ public function unregister() { @@ -424,18 +338,15 @@ class ClassLoader * Loads the given class or interface. * * @param string $class The name of the class - * @return true|null True if loaded, null otherwise + * @return bool|null True if loaded, null otherwise */ public function loadClass($class) { if ($file = $this->findFile($class)) { - $includeFile = self::$includeFile; - $includeFile($file); + includeFile($file); return true; } - - return null; } /** @@ -490,11 +401,6 @@ class ClassLoader return self::$registeredLoaders; } - /** - * @param string $class - * @param string $ext - * @return string|false - */ private function findFileWithExtension($class, $ext) { // PSR-4 lookup @@ -560,26 +466,14 @@ class ClassLoader return false; } - - /** - * @return void - */ - private static function initializeIncludeClosure() - { - if (self::$includeFile !== null) { - return; - } - - /** - * Scope isolated include. - * - * Prevents access to $this/self from included files. - * - * @param string $file - * @return void - */ - self::$includeFile = \Closure::bind(static function($file) { - include $file; - }, null, null); - } +} + +/** + * Scope isolated include. + * + * Prevents access to $this/self from included files. + */ +function includeFile($file) +{ + include $file; } diff --git a/vendor/composer/InstalledVersions.php b/vendor/composer/InstalledVersions.php index 2052022..fe69fa6 100755 --- a/vendor/composer/InstalledVersions.php +++ b/vendor/composer/InstalledVersions.php @@ -1,396 +1,831 @@ - * Jordi Boggiano - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ + + + + + + + + + namespace Composer; use Composer\Autoload\ClassLoader; use Composer\Semver\VersionParser; -/** - * This class is copied in every Composer installed project and available to all - * - * See also https://getcomposer.org/doc/07-runtime.md#installed-versions - * - * To require its presence, you can require `composer-runtime-api ^2.0` - * - * @final - */ + + + + + + + class InstalledVersions { - /** - * @var string|null if set (by reflection by Composer), this should be set to the path where this class is being copied to - * @internal - */ - private static $selfDir = null; +private static $installed = array ( + 'root' => + array ( + 'pretty_version' => 'dev-main', + 'version' => 'dev-main', + 'aliases' => + array ( + ), + 'reference' => '5769442de60965346d4098544e88c3d20a2755fe', + 'name' => 'fastadminnet/fastadmin', + ), + 'versions' => + array ( + 'composer/pcre' => + array ( + 'pretty_version' => '3.3.2', + 'version' => '3.3.2.0', + 'aliases' => + array ( + ), + 'reference' => 'b2bed4734f0cc156ee1fe9c0da2550420d99a21e', + ), + 'easywechat-composer/easywechat-composer' => + array ( + 'pretty_version' => '1.4.1', + 'version' => '1.4.1.0', + 'aliases' => + array ( + ), + 'reference' => '3fc6a7ab6d3853c0f4e2922539b56cc37ef361cd', + ), + 'ezyang/htmlpurifier' => + array ( + 'pretty_version' => 'v4.19.0', + 'version' => '4.19.0.0', + 'aliases' => + array ( + ), + 'reference' => 'b287d2a16aceffbf6e0295559b39662612b77fcf', + ), + 'fastadminnet/fastadmin' => + array ( + 'pretty_version' => 'dev-main', + 'version' => 'dev-main', + 'aliases' => + array ( + ), + 'reference' => '5769442de60965346d4098544e88c3d20a2755fe', + ), + 'fastadminnet/fastadmin-addons' => + array ( + 'pretty_version' => '1.4.2', + 'version' => '1.4.2.0', + 'aliases' => + array ( + ), + 'reference' => '14af178a62fb4cc897f954fa9d7d53798ad2cf37', + ), + 'fastadminnet/fastadmin-mailer' => + array ( + 'pretty_version' => 'v2.1.1', + 'version' => '2.1.1.0', + 'aliases' => + array ( + ), + 'reference' => 'bca635ac5f564ed6688d818d215021ffb0813746', + ), + 'guzzlehttp/guzzle' => + array ( + 'pretty_version' => '7.9.2', + 'version' => '7.9.2.0', + 'aliases' => + array ( + ), + 'reference' => 'd281ed313b989f213357e3be1a179f02196ac99b', + ), + 'guzzlehttp/promises' => + array ( + 'pretty_version' => '2.3.0', + 'version' => '2.3.0.0', + 'aliases' => + array ( + ), + 'reference' => '481557b130ef3790cf82b713667b43030dc9c957', + ), + 'guzzlehttp/psr7' => + array ( + 'pretty_version' => '2.8.0', + 'version' => '2.8.0.0', + 'aliases' => + array ( + ), + 'reference' => '21dc724a0583619cd1652f673303492272778051', + ), + 'maennchen/zipstream-php' => + array ( + 'pretty_version' => '2.4.0', + 'version' => '2.4.0.0', + 'aliases' => + array ( + ), + 'reference' => '3fa72e4c71a43f9e9118752a5c90e476a8dc9eb3', + ), + 'markbaker/complex' => + array ( + 'pretty_version' => '3.0.2', + 'version' => '3.0.2.0', + 'aliases' => + array ( + ), + 'reference' => '95c56caa1cf5c766ad6d65b6344b807c1e8405b9', + ), + 'markbaker/matrix' => + array ( + 'pretty_version' => '3.0.1', + 'version' => '3.0.1.0', + 'aliases' => + array ( + ), + 'reference' => '728434227fe21be27ff6d86621a1b13107a2562c', + ), + 'monolog/monolog' => + array ( + 'pretty_version' => '2.10.0', + 'version' => '2.10.0.0', + 'aliases' => + array ( + ), + 'reference' => '5cf826f2991858b54d5c3809bee745560a1042a7', + ), + 'myclabs/php-enum' => + array ( + 'pretty_version' => '1.8.4', + 'version' => '1.8.4.0', + 'aliases' => + array ( + ), + 'reference' => 'a867478eae49c9f59ece437ae7f9506bfaa27483', + ), + 'nelexa/zip' => + array ( + 'pretty_version' => '4.0.2', + 'version' => '4.0.2.0', + 'aliases' => + array ( + ), + 'reference' => '88a1b6549be813278ff2dd3b6b2ac188827634a7', + ), + 'overtrue/pinyin' => + array ( + 'pretty_version' => '3.0.6', + 'version' => '3.0.6.0', + 'aliases' => + array ( + ), + 'reference' => '3b781d267197b74752daa32814d3a2cf5d140779', + ), + 'overtrue/socialite' => + array ( + 'pretty_version' => '2.0.24', + 'version' => '2.0.24.0', + 'aliases' => + array ( + ), + 'reference' => 'ee7e7b000ec7d64f2b8aba1f6a2eec5cdf3f8bec', + ), + 'overtrue/wechat' => + array ( + 'pretty_version' => '4.9.0', + 'version' => '4.9.0.0', + 'aliases' => + array ( + ), + 'reference' => '92791f5d957269c633b9aa175f842f6006f945b1', + ), + 'paragonie/constant_time_encoding' => + array ( + 'pretty_version' => 'v3.1.3', + 'version' => '3.1.3.0', + 'aliases' => + array ( + ), + 'reference' => 'd5b01a39b3415c2cd581d3bd3a3575c1ebbd8e77', + ), + 'paragonie/random_compat' => + array ( + 'pretty_version' => 'v9.99.100', + 'version' => '9.99.100.0', + 'aliases' => + array ( + ), + 'reference' => '996434e5492cb4c3edcb9168db6fbb1359ef965a', + ), + 'phpoffice/phpspreadsheet' => + array ( + 'pretty_version' => '1.30.1', + 'version' => '1.30.1.0', + 'aliases' => + array ( + ), + 'reference' => 'fa8257a579ec623473eabfe49731de5967306c4c', + ), + 'phpseclib/phpseclib' => + array ( + 'pretty_version' => '3.0.47', + 'version' => '3.0.47.0', + 'aliases' => + array ( + ), + 'reference' => '9d6ca36a6c2dd434765b1071b2644a1c683b385d', + ), + 'pimple/pimple' => + array ( + 'pretty_version' => 'v3.5.0', + 'version' => '3.5.0.0', + 'aliases' => + array ( + ), + 'reference' => 'a94b3a4db7fb774b3d78dad2315ddc07629e1bed', + ), + 'psr/cache' => + array ( + 'pretty_version' => '2.0.0', + 'version' => '2.0.0.0', + 'aliases' => + array ( + ), + 'reference' => '213f9dbc5b9bfbc4f8db86d2838dc968752ce13b', + ), + 'psr/cache-implementation' => + array ( + 'provided' => + array ( + 0 => '1.0|2.0', + ), + ), + 'psr/container' => + array ( + 'pretty_version' => '2.0.2', + 'version' => '2.0.2.0', + 'aliases' => + array ( + ), + 'reference' => 'c71ecc56dfe541dbd90c5360474fbc405f8d5963', + ), + 'psr/event-dispatcher' => + array ( + 'pretty_version' => '1.0.0', + 'version' => '1.0.0.0', + 'aliases' => + array ( + ), + 'reference' => 'dbefd12671e8a14ec7f180cab83036ed26714bb0', + ), + 'psr/event-dispatcher-implementation' => + array ( + 'provided' => + array ( + 0 => '1.0', + ), + ), + 'psr/http-client' => + array ( + 'pretty_version' => '1.0.3', + 'version' => '1.0.3.0', + 'aliases' => + array ( + ), + 'reference' => 'bb5906edc1c324c9a05aa0873d40117941e5fa90', + ), + 'psr/http-client-implementation' => + array ( + 'provided' => + array ( + 0 => '1.0', + ), + ), + 'psr/http-factory' => + array ( + 'pretty_version' => '1.0.2', + 'version' => '1.0.2.0', + 'aliases' => + array ( + ), + 'reference' => 'e616d01114759c4c489f93b099585439f795fe35', + ), + 'psr/http-factory-implementation' => + array ( + 'provided' => + array ( + 0 => '1.0', + ), + ), + 'psr/http-message' => + array ( + 'pretty_version' => '1.1', + 'version' => '1.1.0.0', + 'aliases' => + array ( + ), + 'reference' => 'cb6ce4845ce34a8ad9e68117c10ee90a29919eba', + ), + 'psr/http-message-implementation' => + array ( + 'provided' => + array ( + 0 => '1.0', + ), + ), + 'psr/log' => + array ( + 'pretty_version' => '1.1.4', + 'version' => '1.1.4.0', + 'aliases' => + array ( + ), + 'reference' => 'd49695b909c3b7628b6289db5479a1c204601f11', + ), + 'psr/log-implementation' => + array ( + 'provided' => + array ( + 0 => '1.0.0 || 2.0.0 || 3.0.0', + ), + ), + 'psr/simple-cache' => + array ( + 'pretty_version' => '1.0.1', + 'version' => '1.0.1.0', + 'aliases' => + array ( + ), + 'reference' => '408d5eafb83c57f6365a3ca330ff23aa4a5fa39b', + ), + 'psr/simple-cache-implementation' => + array ( + 'provided' => + array ( + 0 => '1.0|2.0', + ), + ), + 'ralouphie/getallheaders' => + array ( + 'pretty_version' => '3.0.3', + 'version' => '3.0.3.0', + 'aliases' => + array ( + ), + 'reference' => '120b605dfeb996808c31b6477290a714d356e822', + ), + 'symfony/cache' => + array ( + 'pretty_version' => 'v5.4.46', + 'version' => '5.4.46.0', + 'aliases' => + array ( + ), + 'reference' => '0fe08ee32cec2748fbfea10c52d3ee02049e0f6b', + ), + 'symfony/cache-contracts' => + array ( + 'pretty_version' => 'v2.5.4', + 'version' => '2.5.4.0', + 'aliases' => + array ( + ), + 'reference' => '517c3a3619dadfa6952c4651767fcadffb4df65e', + ), + 'symfony/cache-implementation' => + array ( + 'provided' => + array ( + 0 => '1.0|2.0', + ), + ), + 'symfony/deprecation-contracts' => + array ( + 'pretty_version' => 'v3.0.2', + 'version' => '3.0.2.0', + 'aliases' => + array ( + ), + 'reference' => '26954b3d62a6c5fd0ea8a2a00c0353a14978d05c', + ), + 'symfony/event-dispatcher' => + array ( + 'pretty_version' => 'v5.4.45', + 'version' => '5.4.45.0', + 'aliases' => + array ( + ), + 'reference' => '72982eb416f61003e9bb6e91f8b3213600dcf9e9', + ), + 'symfony/event-dispatcher-contracts' => + array ( + 'pretty_version' => 'v3.0.2', + 'version' => '3.0.2.0', + 'aliases' => + array ( + ), + 'reference' => '7bc61cc2db649b4637d331240c5346dcc7708051', + ), + 'symfony/event-dispatcher-implementation' => + array ( + 'provided' => + array ( + 0 => '2.0', + ), + ), + 'symfony/finder' => + array ( + 'pretty_version' => 'v6.0.19', + 'version' => '6.0.19.0', + 'aliases' => + array ( + ), + 'reference' => '5cc9cac6586fc0c28cd173780ca696e419fefa11', + ), + 'symfony/http-foundation' => + array ( + 'pretty_version' => 'v5.4.48', + 'version' => '5.4.48.0', + 'aliases' => + array ( + ), + 'reference' => '3f38b8af283b830e1363acd79e5bc3412d055341', + ), + 'symfony/polyfill-mbstring' => + array ( + 'pretty_version' => 'v1.32.0', + 'version' => '1.32.0.0', + 'aliases' => + array ( + ), + 'reference' => '6d857f4d76bd4b343eac26d6b539585d2bc56493', + ), + 'symfony/polyfill-php73' => + array ( + 'pretty_version' => 'v1.32.0', + 'version' => '1.32.0.0', + 'aliases' => + array ( + ), + 'reference' => '0f68c03565dcaaf25a890667542e8bd75fe7e5bb', + ), + 'symfony/polyfill-php80' => + array ( + 'pretty_version' => 'v1.32.0', + 'version' => '1.32.0.0', + 'aliases' => + array ( + ), + 'reference' => '0cc9dd0f17f61d8131e7df6b84bd344899fe2608', + ), + 'symfony/psr-http-message-bridge' => + array ( + 'pretty_version' => 'v2.3.1', + 'version' => '2.3.1.0', + 'aliases' => + array ( + ), + 'reference' => '581ca6067eb62640de5ff08ee1ba6850a0ee472e', + ), + 'symfony/service-contracts' => + array ( + 'pretty_version' => 'v3.0.2', + 'version' => '3.0.2.0', + 'aliases' => + array ( + ), + 'reference' => 'd78d39c1599bd1188b8e26bb341da52c3c6d8a66', + ), + 'symfony/var-exporter' => + array ( + 'pretty_version' => 'v6.0.19', + 'version' => '6.0.19.0', + 'aliases' => + array ( + ), + 'reference' => 'df56f53818c2d5d9f683f4ad2e365ba73a3b69d2', + ), + 'topthink/framework' => + array ( + 'pretty_version' => 'dev-master', + 'version' => 'dev-master', + 'aliases' => + array ( + 0 => '9999999-dev', + ), + 'reference' => '9a2e7c2a1b6302afb61035c99c85bf0cfe0c52ec', + ), + 'topthink/think-captcha' => + array ( + 'pretty_version' => 'v1.0.9', + 'version' => '1.0.9.0', + 'aliases' => + array ( + ), + 'reference' => '9be9dd7e61c7fa3c478c4b92910d7230b94d0d23', + ), + 'topthink/think-helper' => + array ( + 'pretty_version' => 'v1.0.7', + 'version' => '1.0.7.0', + 'aliases' => + array ( + ), + 'reference' => '5f92178606c8ce131d36b37a57c58eb71e55f019', + ), + 'topthink/think-installer' => + array ( + 'pretty_version' => 'v1.0.14', + 'version' => '1.0.14.0', + 'aliases' => + array ( + ), + 'reference' => 'eae1740ac264a55c06134b6685dfb9f837d004d1', + ), + 'topthink/think-queue' => + array ( + 'pretty_version' => 'v1.1.6', + 'version' => '1.1.6.0', + 'aliases' => + array ( + ), + 'reference' => '250650eb0e8ea5af4cfdc7ae46f3f4e0a24ac245', + ), + 'workerman/channel' => + array ( + 'pretty_version' => 'v1.2.3', + 'version' => '1.2.3.0', + 'aliases' => + array ( + ), + 'reference' => '5edb0008eae35bf2da7218d911042abd23aa4370', + ), + 'workerman/phpsocket.io' => + array ( + 'pretty_version' => 'v2.2.0', + 'version' => '2.2.0.0', + 'aliases' => + array ( + ), + 'reference' => '0ba306b380e016f447f9860db95fcc1c7553fb91', + ), + 'workerman/workerman' => + array ( + 'pretty_version' => 'v4.2.1', + 'version' => '4.2.1.0', + 'aliases' => + array ( + ), + 'reference' => 'cafb5a43d93d7d30a16b32a57948581cca993562', + ), + ), +); +private static $canGetVendors; +private static $installedByVendor = array(); - /** - * @var mixed[]|null - * @psalm-var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array}|array{}|null - */ - private static $installed; - /** - * @var bool - */ - private static $installedIsLocalDir; - /** - * @var bool|null - */ - private static $canGetVendors; - /** - * @var array[] - * @psalm-var array}> - */ - private static $installedByVendor = array(); - /** - * Returns a list of all package names which are present, either by being installed, replaced or provided - * - * @return string[] - * @psalm-return list - */ - public static function getInstalledPackages() - { - $packages = array(); - foreach (self::getInstalled() as $installed) { - $packages[] = array_keys($installed['versions']); - } - if (1 === \count($packages)) { - return $packages[0]; - } - return array_keys(array_flip(\call_user_func_array('array_merge', $packages))); - } - - /** - * Returns a list of all package names with a specific type e.g. 'library' - * - * @param string $type - * @return string[] - * @psalm-return list - */ - public static function getInstalledPackagesByType($type) - { - $packagesByType = array(); - - foreach (self::getInstalled() as $installed) { - foreach ($installed['versions'] as $name => $package) { - if (isset($package['type']) && $package['type'] === $type) { - $packagesByType[] = $name; - } - } - } - - return $packagesByType; - } - - /** - * Checks whether the given package is installed - * - * This also returns true if the package name is provided or replaced by another package - * - * @param string $packageName - * @param bool $includeDevRequirements - * @return bool - */ - public static function isInstalled($packageName, $includeDevRequirements = true) - { - foreach (self::getInstalled() as $installed) { - if (isset($installed['versions'][$packageName])) { - return $includeDevRequirements || !isset($installed['versions'][$packageName]['dev_requirement']) || $installed['versions'][$packageName]['dev_requirement'] === false; - } - } - - return false; - } - - /** - * Checks whether the given package satisfies a version constraint - * - * e.g. If you want to know whether version 2.3+ of package foo/bar is installed, you would call: - * - * Composer\InstalledVersions::satisfies(new VersionParser, 'foo/bar', '^2.3') - * - * @param VersionParser $parser Install composer/semver to have access to this class and functionality - * @param string $packageName - * @param string|null $constraint A version constraint to check for, if you pass one you have to make sure composer/semver is required by your package - * @return bool - */ - public static function satisfies(VersionParser $parser, $packageName, $constraint) - { - $constraint = $parser->parseConstraints((string) $constraint); - $provided = $parser->parseConstraints(self::getVersionRanges($packageName)); - - return $provided->matches($constraint); - } - - /** - * Returns a version constraint representing all the range(s) which are installed for a given package - * - * It is easier to use this via isInstalled() with the $constraint argument if you need to check - * whether a given version of a package is installed, and not just whether it exists - * - * @param string $packageName - * @return string Version constraint usable with composer/semver - */ - public static function getVersionRanges($packageName) - { - foreach (self::getInstalled() as $installed) { - if (!isset($installed['versions'][$packageName])) { - continue; - } - - $ranges = array(); - if (isset($installed['versions'][$packageName]['pretty_version'])) { - $ranges[] = $installed['versions'][$packageName]['pretty_version']; - } - if (array_key_exists('aliases', $installed['versions'][$packageName])) { - $ranges = array_merge($ranges, $installed['versions'][$packageName]['aliases']); - } - if (array_key_exists('replaced', $installed['versions'][$packageName])) { - $ranges = array_merge($ranges, $installed['versions'][$packageName]['replaced']); - } - if (array_key_exists('provided', $installed['versions'][$packageName])) { - $ranges = array_merge($ranges, $installed['versions'][$packageName]['provided']); - } - - return implode(' || ', $ranges); - } - - throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); - } - - /** - * @param string $packageName - * @return string|null If the package is being replaced or provided but is not really installed, null will be returned as version, use satisfies or getVersionRanges if you need to know if a given version is present - */ - public static function getVersion($packageName) - { - foreach (self::getInstalled() as $installed) { - if (!isset($installed['versions'][$packageName])) { - continue; - } - - if (!isset($installed['versions'][$packageName]['version'])) { - return null; - } - - return $installed['versions'][$packageName]['version']; - } - - throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); - } - - /** - * @param string $packageName - * @return string|null If the package is being replaced or provided but is not really installed, null will be returned as version, use satisfies or getVersionRanges if you need to know if a given version is present - */ - public static function getPrettyVersion($packageName) - { - foreach (self::getInstalled() as $installed) { - if (!isset($installed['versions'][$packageName])) { - continue; - } - - if (!isset($installed['versions'][$packageName]['pretty_version'])) { - return null; - } - - return $installed['versions'][$packageName]['pretty_version']; - } - - throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); - } - - /** - * @param string $packageName - * @return string|null If the package is being replaced or provided but is not really installed, null will be returned as reference - */ - public static function getReference($packageName) - { - foreach (self::getInstalled() as $installed) { - if (!isset($installed['versions'][$packageName])) { - continue; - } - - if (!isset($installed['versions'][$packageName]['reference'])) { - return null; - } - - return $installed['versions'][$packageName]['reference']; - } - - throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); - } - - /** - * @param string $packageName - * @return string|null If the package is being replaced or provided but is not really installed, null will be returned as install path. Packages of type metapackages also have a null install path. - */ - public static function getInstallPath($packageName) - { - foreach (self::getInstalled() as $installed) { - if (!isset($installed['versions'][$packageName])) { - continue; - } - - return isset($installed['versions'][$packageName]['install_path']) ? $installed['versions'][$packageName]['install_path'] : null; - } - - throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); - } - - /** - * @return array - * @psalm-return array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool} - */ - public static function getRootPackage() - { - $installed = self::getInstalled(); - - return $installed[0]['root']; - } - - /** - * Returns the raw installed.php data for custom implementations - * - * @deprecated Use getAllRawData() instead which returns all datasets for all autoloaders present in the process. getRawData only returns the first dataset loaded, which may not be what you expect. - * @return array[] - * @psalm-return array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array} - */ - public static function getRawData() - { - @trigger_error('getRawData only returns the first dataset loaded, which may not be what you expect. Use getAllRawData() instead which returns all datasets for all autoloaders present in the process.', E_USER_DEPRECATED); - - if (null === self::$installed) { - // only require the installed.php file if this file is loaded from its dumped location, - // and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937 - if (substr(__DIR__, -8, 1) !== 'C') { - self::$installed = include __DIR__ . '/installed.php'; - } else { - self::$installed = array(); - } - } - - return self::$installed; - } - - /** - * Returns the raw data of all installed.php which are currently loaded for custom implementations - * - * @return array[] - * @psalm-return list}> - */ - public static function getAllRawData() - { - return self::getInstalled(); - } - - /** - * Lets you reload the static array from another file - * - * This is only useful for complex integrations in which a project needs to use - * this class but then also needs to execute another project's autoloader in process, - * and wants to ensure both projects have access to their version of installed.php. - * - * A typical case would be PHPUnit, where it would need to make sure it reads all - * the data it needs from this class, then call reload() with - * `require $CWD/vendor/composer/installed.php` (or similar) as input to make sure - * the project in which it runs can then also use this class safely, without - * interference between PHPUnit's dependencies and the project's dependencies. - * - * @param array[] $data A vendor/composer/installed.php data set - * @return void - * - * @psalm-param array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array} $data - */ - public static function reload($data) - { - self::$installed = $data; - self::$installedByVendor = array(); - - // when using reload, we disable the duplicate protection to ensure that self::$installed data is - // always returned, but we cannot know whether it comes from the installed.php in __DIR__ or not, - // so we have to assume it does not, and that may result in duplicate data being returned when listing - // all installed packages for example - self::$installedIsLocalDir = false; - } - - /** - * @return string - */ - private static function getSelfDir() - { - if (self::$selfDir === null) { - self::$selfDir = strtr(__DIR__, '\\', '/'); - } - - return self::$selfDir; - } - - /** - * @return array[] - * @psalm-return list}> - */ - private static function getInstalled() - { - if (null === self::$canGetVendors) { - self::$canGetVendors = method_exists('Composer\Autoload\ClassLoader', 'getRegisteredLoaders'); - } - - $installed = array(); - $copiedLocalDir = false; - - if (self::$canGetVendors) { - $selfDir = self::getSelfDir(); - foreach (ClassLoader::getRegisteredLoaders() as $vendorDir => $loader) { - $vendorDir = strtr($vendorDir, '\\', '/'); - if (isset(self::$installedByVendor[$vendorDir])) { - $installed[] = self::$installedByVendor[$vendorDir]; - } elseif (is_file($vendorDir.'/composer/installed.php')) { - /** @var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array} $required */ - $required = require $vendorDir.'/composer/installed.php'; - self::$installedByVendor[$vendorDir] = $required; - $installed[] = $required; - if (self::$installed === null && $vendorDir.'/composer' === $selfDir) { - self::$installed = $required; - self::$installedIsLocalDir = true; - } - } - if (self::$installedIsLocalDir && $vendorDir.'/composer' === $selfDir) { - $copiedLocalDir = true; - } - } - } - - if (null === self::$installed) { - // only require the installed.php file if this file is loaded from its dumped location, - // and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937 - if (substr(__DIR__, -8, 1) !== 'C') { - /** @var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array} $required */ - $required = require __DIR__ . '/installed.php'; - self::$installed = $required; - } else { - self::$installed = array(); - } - } - - if (self::$installed !== array() && !$copiedLocalDir) { - $installed[] = self::$installed; - } - - return $installed; - } +public static function getInstalledPackages() +{ +$packages = array(); +foreach (self::getInstalled() as $installed) { +$packages[] = array_keys($installed['versions']); +} + +if (1 === \count($packages)) { +return $packages[0]; +} + +return array_keys(array_flip(\call_user_func_array('array_merge', $packages))); +} + + + + + + + + + +public static function isInstalled($packageName) +{ +foreach (self::getInstalled() as $installed) { +if (isset($installed['versions'][$packageName])) { +return true; +} +} + +return false; +} + + + + + + + + + + + + + + +public static function satisfies(VersionParser $parser, $packageName, $constraint) +{ +$constraint = $parser->parseConstraints($constraint); +$provided = $parser->parseConstraints(self::getVersionRanges($packageName)); + +return $provided->matches($constraint); +} + + + + + + + + + + +public static function getVersionRanges($packageName) +{ +foreach (self::getInstalled() as $installed) { +if (!isset($installed['versions'][$packageName])) { +continue; +} + +$ranges = array(); +if (isset($installed['versions'][$packageName]['pretty_version'])) { +$ranges[] = $installed['versions'][$packageName]['pretty_version']; +} +if (array_key_exists('aliases', $installed['versions'][$packageName])) { +$ranges = array_merge($ranges, $installed['versions'][$packageName]['aliases']); +} +if (array_key_exists('replaced', $installed['versions'][$packageName])) { +$ranges = array_merge($ranges, $installed['versions'][$packageName]['replaced']); +} +if (array_key_exists('provided', $installed['versions'][$packageName])) { +$ranges = array_merge($ranges, $installed['versions'][$packageName]['provided']); +} + +return implode(' || ', $ranges); +} + +throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); +} + + + + + +public static function getVersion($packageName) +{ +foreach (self::getInstalled() as $installed) { +if (!isset($installed['versions'][$packageName])) { +continue; +} + +if (!isset($installed['versions'][$packageName]['version'])) { +return null; +} + +return $installed['versions'][$packageName]['version']; +} + +throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); +} + + + + + +public static function getPrettyVersion($packageName) +{ +foreach (self::getInstalled() as $installed) { +if (!isset($installed['versions'][$packageName])) { +continue; +} + +if (!isset($installed['versions'][$packageName]['pretty_version'])) { +return null; +} + +return $installed['versions'][$packageName]['pretty_version']; +} + +throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); +} + + + + + +public static function getReference($packageName) +{ +foreach (self::getInstalled() as $installed) { +if (!isset($installed['versions'][$packageName])) { +continue; +} + +if (!isset($installed['versions'][$packageName]['reference'])) { +return null; +} + +return $installed['versions'][$packageName]['reference']; +} + +throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); +} + + + + + +public static function getRootPackage() +{ +$installed = self::getInstalled(); + +return $installed[0]['root']; +} + + + + + + + + +public static function getRawData() +{ +@trigger_error('getRawData only returns the first dataset loaded, which may not be what you expect. Use getAllRawData() instead which returns all datasets for all autoloaders present in the process.', E_USER_DEPRECATED); + +return self::$installed; +} + + + + + + + +public static function getAllRawData() +{ +return self::getInstalled(); +} + + + + + + + + + + + + + + + + + + + +public static function reload($data) +{ +self::$installed = $data; +self::$installedByVendor = array(); +} + + + + + +private static function getInstalled() +{ +if (null === self::$canGetVendors) { +self::$canGetVendors = method_exists('Composer\Autoload\ClassLoader', 'getRegisteredLoaders'); +} + +$installed = array(); + +if (self::$canGetVendors) { +foreach (ClassLoader::getRegisteredLoaders() as $vendorDir => $loader) { +if (isset(self::$installedByVendor[$vendorDir])) { +$installed[] = self::$installedByVendor[$vendorDir]; +} elseif (is_file($vendorDir.'/composer/installed.php')) { +$installed[] = self::$installedByVendor[$vendorDir] = require $vendorDir.'/composer/installed.php'; +} +} +} + +$installed[] = self::$installed; + +return $installed; +} } diff --git a/vendor/composer/autoload_classmap.php b/vendor/composer/autoload_classmap.php index 016c54b..ec20b9a 100755 --- a/vendor/composer/autoload_classmap.php +++ b/vendor/composer/autoload_classmap.php @@ -2,7 +2,7 @@ // autoload_classmap.php @generated by Composer -$vendorDir = dirname(__DIR__); +$vendorDir = dirname(dirname(__FILE__)); $baseDir = dirname($vendorDir); return array( diff --git a/vendor/composer/autoload_files.php b/vendor/composer/autoload_files.php index 84f457c..d517fc2 100755 --- a/vendor/composer/autoload_files.php +++ b/vendor/composer/autoload_files.php @@ -2,21 +2,22 @@ // autoload_files.php @generated by Composer -$vendorDir = dirname(__DIR__); +$vendorDir = dirname(dirname(__FILE__)); $baseDir = dirname($vendorDir); return array( '6e3fae29631ef280660b3cdad06f25a8' => $vendorDir . '/symfony/deprecation-contracts/function.php', 'a4a119a56e50fbb293281d9a48007e0e' => $vendorDir . '/symfony/polyfill-php80/bootstrap.php', - '0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => $vendorDir . '/symfony/polyfill-mbstring/bootstrap.php', '7b11c4dc42b3b3023073cb14e519683c' => $vendorDir . '/ralouphie/getallheaders/src/getallheaders.php', - '37a3dc5111fe8f707ab4c132ef1dbc62' => $vendorDir . '/guzzlehttp/guzzle/src/functions_include.php', '0d59ee240a4cd96ddbb4ff164fccea4d' => $vendorDir . '/symfony/polyfill-php73/bootstrap.php', + '0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => $vendorDir . '/symfony/polyfill-mbstring/bootstrap.php', + '37a3dc5111fe8f707ab4c132ef1dbc62' => $vendorDir . '/guzzlehttp/guzzle/src/functions_include.php', '2cffec82183ee1cea088009cef9a6fc3' => $vendorDir . '/ezyang/htmlpurifier/library/HTMLPurifier.composer.php', '9b552a3cc426e3287cc811caefa3cf53' => $vendorDir . '/topthink/think-helper/src/helper.php', - 'f7e3d8cd19cf23ce3883a6a51d791b77' => $vendorDir . '/fastadminnet/fastadmin-addons/src/common.php', 'f0e7e63bbb278a92db02393536748c5f' => $vendorDir . '/overtrue/wechat/src/Kernel/Support/Helpers.php', '6747f579ad6817f318cc3a7e7a0abb93' => $vendorDir . '/overtrue/wechat/src/Kernel/Helpers.php', + 'decc78cc4436b1292c6c0d151b19445c' => $vendorDir . '/phpseclib/phpseclib/phpseclib/bootstrap.php', '1cfd2761b63b0a29ed23657ea394cb2d' => $vendorDir . '/topthink/think-captcha/src/helper.php', 'cc56288302d9df745d97c934d6a6e5f0' => $vendorDir . '/topthink/think-queue/src/common.php', + 'f7e3d8cd19cf23ce3883a6a51d791b77' => $vendorDir . '/fastadminnet/fastadmin-addons/src/common.php', ); diff --git a/vendor/composer/autoload_namespaces.php b/vendor/composer/autoload_namespaces.php index be11dd8..93ac1e9 100755 --- a/vendor/composer/autoload_namespaces.php +++ b/vendor/composer/autoload_namespaces.php @@ -2,7 +2,7 @@ // autoload_namespaces.php @generated by Composer -$vendorDir = dirname(__DIR__); +$vendorDir = dirname(dirname(__FILE__)); $baseDir = dirname($vendorDir); return array( diff --git a/vendor/composer/autoload_psr4.php b/vendor/composer/autoload_psr4.php index 0d2dd52..2e82543 100755 --- a/vendor/composer/autoload_psr4.php +++ b/vendor/composer/autoload_psr4.php @@ -2,16 +2,18 @@ // autoload_psr4.php @generated by Composer -$vendorDir = dirname(__DIR__); +$vendorDir = dirname(dirname(__FILE__)); $baseDir = dirname($vendorDir); return array( 'think\\helper\\' => array($vendorDir . '/topthink/think-helper/src'), 'think\\composer\\' => array($vendorDir . '/topthink/think-installer/src'), 'think\\captcha\\' => array($vendorDir . '/topthink/think-captcha/src'), - 'think\\' => array($vendorDir . '/fastadminnet/fastadmin-addons/src', $baseDir . '/thinkphp/library/think', $vendorDir . '/topthink/think-queue/src'), + 'think\\' => array($baseDir . '/thinkphp/library/think', $vendorDir . '/topthink/think-queue/src', $vendorDir . '/fastadminnet/fastadmin-addons/src'), + 'phpseclib3\\' => array($vendorDir . '/phpseclib/phpseclib/phpseclib'), 'addons\\' => array($baseDir . '/addons'), 'ZipStream\\' => array($vendorDir . '/maennchen/zipstream-php/src'), + 'Workerman\\' => array($vendorDir . '/workerman/workerman'), 'Tx\\' => array($vendorDir . '/fastadminnet/fastadmin-mailer/src'), 'Symfony\\Polyfill\\Php80\\' => array($vendorDir . '/symfony/polyfill-php80'), 'Symfony\\Polyfill\\Php73\\' => array($vendorDir . '/symfony/polyfill-php73'), @@ -27,13 +29,15 @@ return array( 'Symfony\\Bridge\\PsrHttpMessage\\' => array($vendorDir . '/symfony/psr-http-message-bridge'), 'Psr\\SimpleCache\\' => array($vendorDir . '/psr/simple-cache/src'), 'Psr\\Log\\' => array($vendorDir . '/psr/log/Psr/Log'), - 'Psr\\Http\\Message\\' => array($vendorDir . '/psr/http-factory/src', $vendorDir . '/psr/http-message/src'), + 'Psr\\Http\\Message\\' => array($vendorDir . '/psr/http-message/src', $vendorDir . '/psr/http-factory/src'), 'Psr\\Http\\Client\\' => array($vendorDir . '/psr/http-client/src'), 'Psr\\EventDispatcher\\' => array($vendorDir . '/psr/event-dispatcher/src'), 'Psr\\Container\\' => array($vendorDir . '/psr/container/src'), 'Psr\\Cache\\' => array($vendorDir . '/psr/cache/src'), 'PhpZip\\' => array($vendorDir . '/nelexa/zip/src'), 'PhpOffice\\PhpSpreadsheet\\' => array($vendorDir . '/phpoffice/phpspreadsheet/src/PhpSpreadsheet'), + 'ParagonIE\\ConstantTime\\' => array($vendorDir . '/paragonie/constant_time_encoding/src'), + 'PHPSocketIO\\' => array($vendorDir . '/workerman/phpsocket.io/src'), 'Overtrue\\Socialite\\' => array($vendorDir . '/overtrue/socialite/src'), 'Overtrue\\Pinyin\\' => array($vendorDir . '/overtrue/pinyin/src'), 'MyCLabs\\Enum\\' => array($vendorDir . '/myclabs/php-enum/src'), @@ -46,4 +50,5 @@ return array( 'EasyWeChatComposer\\' => array($vendorDir . '/easywechat-composer/easywechat-composer/src'), 'Composer\\Pcre\\' => array($vendorDir . '/composer/pcre/src'), 'Complex\\' => array($vendorDir . '/markbaker/complex/classes/src'), + 'Channel\\' => array($vendorDir . '/workerman/channel/src'), ); diff --git a/vendor/composer/autoload_real.php b/vendor/composer/autoload_real.php index 6d7f80e..5e7805d 100755 --- a/vendor/composer/autoload_real.php +++ b/vendor/composer/autoload_real.php @@ -25,26 +25,51 @@ class ComposerAutoloaderInitf3106b6ef3260b6914241eab0bed11c1 require __DIR__ . '/platform_check.php'; spl_autoload_register(array('ComposerAutoloaderInitf3106b6ef3260b6914241eab0bed11c1', 'loadClassLoader'), true, true); - self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__)); + self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(\dirname(__FILE__))); spl_autoload_unregister(array('ComposerAutoloaderInitf3106b6ef3260b6914241eab0bed11c1', 'loadClassLoader')); - require __DIR__ . '/autoload_static.php'; - call_user_func(\Composer\Autoload\ComposerStaticInitf3106b6ef3260b6914241eab0bed11c1::getInitializer($loader)); + $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded()); + if ($useStaticLoader) { + require __DIR__ . '/autoload_static.php'; + + call_user_func(\Composer\Autoload\ComposerStaticInitf3106b6ef3260b6914241eab0bed11c1::getInitializer($loader)); + } else { + $map = require __DIR__ . '/autoload_namespaces.php'; + foreach ($map as $namespace => $path) { + $loader->set($namespace, $path); + } + + $map = require __DIR__ . '/autoload_psr4.php'; + foreach ($map as $namespace => $path) { + $loader->setPsr4($namespace, $path); + } + + $classMap = require __DIR__ . '/autoload_classmap.php'; + if ($classMap) { + $loader->addClassMap($classMap); + } + } $loader->register(true); - $filesToLoad = \Composer\Autoload\ComposerStaticInitf3106b6ef3260b6914241eab0bed11c1::$files; - $requireFile = \Closure::bind(static function ($fileIdentifier, $file) { - if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) { - $GLOBALS['__composer_autoload_files'][$fileIdentifier] = true; - - require $file; - } - }, null, null); - foreach ($filesToLoad as $fileIdentifier => $file) { - $requireFile($fileIdentifier, $file); + if ($useStaticLoader) { + $includeFiles = Composer\Autoload\ComposerStaticInitf3106b6ef3260b6914241eab0bed11c1::$files; + } else { + $includeFiles = require __DIR__ . '/autoload_files.php'; + } + foreach ($includeFiles as $fileIdentifier => $file) { + composerRequiref3106b6ef3260b6914241eab0bed11c1($fileIdentifier, $file); } return $loader; } } + +function composerRequiref3106b6ef3260b6914241eab0bed11c1($fileIdentifier, $file) +{ + if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) { + require $file; + + $GLOBALS['__composer_autoload_files'][$fileIdentifier] = true; + } +} diff --git a/vendor/composer/autoload_static.php b/vendor/composer/autoload_static.php index 2c95cb2..f993b86 100755 --- a/vendor/composer/autoload_static.php +++ b/vendor/composer/autoload_static.php @@ -9,17 +9,18 @@ class ComposerStaticInitf3106b6ef3260b6914241eab0bed11c1 public static $files = array ( '6e3fae29631ef280660b3cdad06f25a8' => __DIR__ . '/..' . '/symfony/deprecation-contracts/function.php', 'a4a119a56e50fbb293281d9a48007e0e' => __DIR__ . '/..' . '/symfony/polyfill-php80/bootstrap.php', - '0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/bootstrap.php', '7b11c4dc42b3b3023073cb14e519683c' => __DIR__ . '/..' . '/ralouphie/getallheaders/src/getallheaders.php', - '37a3dc5111fe8f707ab4c132ef1dbc62' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/functions_include.php', '0d59ee240a4cd96ddbb4ff164fccea4d' => __DIR__ . '/..' . '/symfony/polyfill-php73/bootstrap.php', + '0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/bootstrap.php', + '37a3dc5111fe8f707ab4c132ef1dbc62' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/functions_include.php', '2cffec82183ee1cea088009cef9a6fc3' => __DIR__ . '/..' . '/ezyang/htmlpurifier/library/HTMLPurifier.composer.php', '9b552a3cc426e3287cc811caefa3cf53' => __DIR__ . '/..' . '/topthink/think-helper/src/helper.php', - 'f7e3d8cd19cf23ce3883a6a51d791b77' => __DIR__ . '/..' . '/fastadminnet/fastadmin-addons/src/common.php', 'f0e7e63bbb278a92db02393536748c5f' => __DIR__ . '/..' . '/overtrue/wechat/src/Kernel/Support/Helpers.php', '6747f579ad6817f318cc3a7e7a0abb93' => __DIR__ . '/..' . '/overtrue/wechat/src/Kernel/Helpers.php', + 'decc78cc4436b1292c6c0d151b19445c' => __DIR__ . '/..' . '/phpseclib/phpseclib/phpseclib/bootstrap.php', '1cfd2761b63b0a29ed23657ea394cb2d' => __DIR__ . '/..' . '/topthink/think-captcha/src/helper.php', 'cc56288302d9df745d97c934d6a6e5f0' => __DIR__ . '/..' . '/topthink/think-queue/src/common.php', + 'f7e3d8cd19cf23ce3883a6a51d791b77' => __DIR__ . '/..' . '/fastadminnet/fastadmin-addons/src/common.php', ); public static $prefixLengthsPsr4 = array ( @@ -30,6 +31,10 @@ class ComposerStaticInitf3106b6ef3260b6914241eab0bed11c1 'think\\captcha\\' => 14, 'think\\' => 6, ), + 'p' => + array ( + 'phpseclib3\\' => 11, + ), 'a' => array ( 'addons\\' => 7, @@ -38,6 +43,10 @@ class ComposerStaticInitf3106b6ef3260b6914241eab0bed11c1 array ( 'ZipStream\\' => 10, ), + 'W' => + array ( + 'Workerman\\' => 10, + ), 'T' => array ( 'Tx\\' => 3, @@ -68,6 +77,8 @@ class ComposerStaticInitf3106b6ef3260b6914241eab0bed11c1 'Psr\\Cache\\' => 10, 'PhpZip\\' => 7, 'PhpOffice\\PhpSpreadsheet\\' => 25, + 'ParagonIE\\ConstantTime\\' => 23, + 'PHPSocketIO\\' => 12, ), 'O' => array ( @@ -95,6 +106,7 @@ class ComposerStaticInitf3106b6ef3260b6914241eab0bed11c1 array ( 'Composer\\Pcre\\' => 14, 'Complex\\' => 8, + 'Channel\\' => 8, ), ); @@ -113,9 +125,13 @@ class ComposerStaticInitf3106b6ef3260b6914241eab0bed11c1 ), 'think\\' => array ( - 0 => __DIR__ . '/..' . '/fastadminnet/fastadmin-addons/src', - 1 => __DIR__ . '/../..' . '/thinkphp/library/think', - 2 => __DIR__ . '/..' . '/topthink/think-queue/src', + 0 => __DIR__ . '/../..' . '/thinkphp/library/think', + 1 => __DIR__ . '/..' . '/topthink/think-queue/src', + 2 => __DIR__ . '/..' . '/fastadminnet/fastadmin-addons/src', + ), + 'phpseclib3\\' => + array ( + 0 => __DIR__ . '/..' . '/phpseclib/phpseclib/phpseclib', ), 'addons\\' => array ( @@ -125,6 +141,10 @@ class ComposerStaticInitf3106b6ef3260b6914241eab0bed11c1 array ( 0 => __DIR__ . '/..' . '/maennchen/zipstream-php/src', ), + 'Workerman\\' => + array ( + 0 => __DIR__ . '/..' . '/workerman/workerman', + ), 'Tx\\' => array ( 0 => __DIR__ . '/..' . '/fastadminnet/fastadmin-mailer/src', @@ -187,8 +207,8 @@ class ComposerStaticInitf3106b6ef3260b6914241eab0bed11c1 ), 'Psr\\Http\\Message\\' => array ( - 0 => __DIR__ . '/..' . '/psr/http-factory/src', - 1 => __DIR__ . '/..' . '/psr/http-message/src', + 0 => __DIR__ . '/..' . '/psr/http-message/src', + 1 => __DIR__ . '/..' . '/psr/http-factory/src', ), 'Psr\\Http\\Client\\' => array ( @@ -214,6 +234,14 @@ class ComposerStaticInitf3106b6ef3260b6914241eab0bed11c1 array ( 0 => __DIR__ . '/..' . '/phpoffice/phpspreadsheet/src/PhpSpreadsheet', ), + 'ParagonIE\\ConstantTime\\' => + array ( + 0 => __DIR__ . '/..' . '/paragonie/constant_time_encoding/src', + ), + 'PHPSocketIO\\' => + array ( + 0 => __DIR__ . '/..' . '/workerman/phpsocket.io/src', + ), 'Overtrue\\Socialite\\' => array ( 0 => __DIR__ . '/..' . '/overtrue/socialite/src', @@ -262,6 +290,10 @@ class ComposerStaticInitf3106b6ef3260b6914241eab0bed11c1 array ( 0 => __DIR__ . '/..' . '/markbaker/complex/classes/src', ), + 'Channel\\' => + array ( + 0 => __DIR__ . '/..' . '/workerman/channel/src', + ), ); public static $prefixesPsr0 = array ( diff --git a/vendor/composer/installed.json b/vendor/composer/installed.json index 66e2d6e..9c3f371 100755 --- a/vendor/composer/installed.json +++ b/vendor/composer/installed.json @@ -199,24 +199,30 @@ }, { "name": "fastadminnet/fastadmin-addons", - "version": "1.4.3", - "version_normalized": "1.4.3.0", + "version": "1.4.2", + "version_normalized": "1.4.2.0", "source": { "type": "git", "url": "https://github.com/fastadminnet/fastadmin-addons.git", - "reference": "b7e371254f97fae7e9232984a746ffa58b64504e" + "reference": "14af178a62fb4cc897f954fa9d7d53798ad2cf37" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/fastadminnet/fastadmin-addons/zipball/b7e371254f97fae7e9232984a746ffa58b64504e", - "reference": "b7e371254f97fae7e9232984a746ffa58b64504e", - "shasum": "" + "url": "https://api.github.com/repos/fastadminnet/fastadmin-addons/zipball/14af178a62fb4cc897f954fa9d7d53798ad2cf37", + "reference": "14af178a62fb4cc897f954fa9d7d53798ad2cf37", + "shasum": "", + "mirrors": [ + { + "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", + "preferred": true + } + ] }, "require": { "nelexa/zip": "^3.3 || ^4.0", - "php": ">=7.1.0" + "php": ">=7.0.0" }, - "time": "2025-06-17T03:35:34+00:00", + "time": "2025-06-03T03:09:28+00:00", "type": "library", "extra": { "think-config": { @@ -250,7 +256,7 @@ "homepage": "https://github.com/fastadminnet/fastadmin-addons", "support": { "issues": "https://github.com/fastadminnet/fastadmin-addons/issues", - "source": "https://github.com/fastadminnet/fastadmin-addons/tree/v1.4.3" + "source": "https://github.com/fastadminnet/fastadmin-addons/tree/v1.4.2" }, "install-path": "../fastadminnet/fastadmin-addons" }, @@ -314,23 +320,29 @@ }, { "name": "guzzlehttp/guzzle", - "version": "7.10.0", - "version_normalized": "7.10.0.0", + "version": "7.9.2", + "version_normalized": "7.9.2.0", "source": { "type": "git", "url": "https://github.com/guzzle/guzzle.git", - "reference": "b51ac707cfa420b7bfd4e4d5e510ba8008e822b4" + "reference": "d281ed313b989f213357e3be1a179f02196ac99b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle/zipball/b51ac707cfa420b7bfd4e4d5e510ba8008e822b4", - "reference": "b51ac707cfa420b7bfd4e4d5e510ba8008e822b4", - "shasum": "" + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/d281ed313b989f213357e3be1a179f02196ac99b", + "reference": "d281ed313b989f213357e3be1a179f02196ac99b", + "shasum": "", + "mirrors": [ + { + "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", + "preferred": true + } + ] }, "require": { "ext-json": "*", - "guzzlehttp/promises": "^2.3", - "guzzlehttp/psr7": "^2.8", + "guzzlehttp/promises": "^1.5.3 || ^2.0.3", + "guzzlehttp/psr7": "^2.7.0", "php": "^7.2.5 || ^8.0", "psr/http-client": "^1.0", "symfony/deprecation-contracts": "^2.2 || ^3.0" @@ -351,7 +363,7 @@ "ext-intl": "Required for Internationalized Domain Name (IDN) support", "psr/log": "Required for using the Log middleware" }, - "time": "2025-08-23T22:36:01+00:00", + "time": "2024-07-24T11:22:20+00:00", "type": "library", "extra": { "bamarni-bin": { @@ -423,7 +435,7 @@ ], "support": { "issues": "https://github.com/guzzle/guzzle/issues", - "source": "https://github.com/guzzle/guzzle/tree/7.10.0" + "source": "https://github.com/guzzle/guzzle/tree/7.9.2" }, "funding": [ { @@ -648,39 +660,41 @@ }, { "name": "maennchen/zipstream-php", - "version": "3.1.2", - "version_normalized": "3.1.2.0", + "version": "2.4.0", + "version_normalized": "2.4.0.0", "source": { "type": "git", "url": "https://github.com/maennchen/ZipStream-PHP.git", - "reference": "aeadcf5c412332eb426c0f9b4485f6accba2a99f" + "reference": "3fa72e4c71a43f9e9118752a5c90e476a8dc9eb3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/maennchen/ZipStream-PHP/zipball/aeadcf5c412332eb426c0f9b4485f6accba2a99f", - "reference": "aeadcf5c412332eb426c0f9b4485f6accba2a99f", - "shasum": "" + "url": "https://api.github.com/repos/maennchen/ZipStream-PHP/zipball/3fa72e4c71a43f9e9118752a5c90e476a8dc9eb3", + "reference": "3fa72e4c71a43f9e9118752a5c90e476a8dc9eb3", + "shasum": "", + "mirrors": [ + { + "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", + "preferred": true + } + ] }, "require": { "ext-mbstring": "*", - "ext-zlib": "*", - "php-64bit": "^8.2" + "myclabs/php-enum": "^1.5", + "php": "^8.0", + "psr/http-message": "^1.0" }, "require-dev": { - "brianium/paratest": "^7.7", "ext-zip": "*", - "friendsofphp/php-cs-fixer": "^3.16", - "guzzlehttp/guzzle": "^7.5", + "friendsofphp/php-cs-fixer": "^3.9", + "guzzlehttp/guzzle": "^6.5.3 || ^7.2.0", "mikey179/vfsstream": "^1.6", - "php-coveralls/php-coveralls": "^2.5", - "phpunit/phpunit": "^11.0", - "vimeo/psalm": "^6.0" + "php-coveralls/php-coveralls": "^2.4", + "phpunit/phpunit": "^8.5.8 || ^9.4.2", + "vimeo/psalm": "^5.0" }, - "suggest": { - "guzzlehttp/psr7": "^2.4", - "psr/http-message": "^2.0" - }, - "time": "2025-01-27T12:07:53+00:00", + "time": "2022-12-08T12:29:14+00:00", "type": "library", "installation-source": "dist", "autoload": { @@ -717,12 +731,16 @@ ], "support": { "issues": "https://github.com/maennchen/ZipStream-PHP/issues", - "source": "https://github.com/maennchen/ZipStream-PHP/tree/3.1.2" + "source": "https://github.com/maennchen/ZipStream-PHP/tree/2.4.0" }, "funding": [ { "url": "https://github.com/maennchen", "type": "github" + }, + { + "url": "https://opencollective.com/zipstream", + "type": "open_collective" } ], "install-path": "../maennchen/zipstream-php" @@ -945,6 +963,78 @@ ], "install-path": "../monolog/monolog" }, + { + "name": "myclabs/php-enum", + "version": "1.8.4", + "version_normalized": "1.8.4.0", + "source": { + "type": "git", + "url": "https://github.com/myclabs/php-enum.git", + "reference": "a867478eae49c9f59ece437ae7f9506bfaa27483" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/myclabs/php-enum/zipball/a867478eae49c9f59ece437ae7f9506bfaa27483", + "reference": "a867478eae49c9f59ece437ae7f9506bfaa27483", + "shasum": "", + "mirrors": [ + { + "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", + "preferred": true + } + ] + }, + "require": { + "ext-json": "*", + "php": "^7.3 || ^8.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.5", + "squizlabs/php_codesniffer": "1.*", + "vimeo/psalm": "^4.6.2" + }, + "time": "2022-08-04T09:53:51+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "MyCLabs\\Enum\\": "src/" + }, + "classmap": [ + "stubs/Stringable.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP Enum contributors", + "homepage": "https://github.com/myclabs/php-enum/graphs/contributors" + } + ], + "description": "PHP Enum implementation", + "homepage": "http://github.com/myclabs/php-enum", + "keywords": [ + "enum" + ], + "support": { + "issues": "https://github.com/myclabs/php-enum/issues", + "source": "https://github.com/myclabs/php-enum/tree/1.8.4" + }, + "funding": [ + { + "url": "https://github.com/mnapoli", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/myclabs/php-enum", + "type": "tidelift" + } + ], + "install-path": "../myclabs/php-enum" + }, { "name": "nelexa/zip", "version": "4.0.2", @@ -1345,18 +1435,24 @@ }, { "name": "phpoffice/phpspreadsheet", - "version": "1.30.0", - "version_normalized": "1.30.0.0", + "version": "1.30.1", + "version_normalized": "1.30.1.0", "source": { "type": "git", "url": "https://github.com/PHPOffice/PhpSpreadsheet.git", - "reference": "2f39286e0136673778b7a142b3f0d141e43d1714" + "reference": "fa8257a579ec623473eabfe49731de5967306c4c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPOffice/PhpSpreadsheet/zipball/2f39286e0136673778b7a142b3f0d141e43d1714", - "reference": "2f39286e0136673778b7a142b3f0d141e43d1714", - "shasum": "" + "url": "https://api.github.com/repos/PHPOffice/PhpSpreadsheet/zipball/fa8257a579ec623473eabfe49731de5967306c4c", + "reference": "fa8257a579ec623473eabfe49731de5967306c4c", + "shasum": "", + "mirrors": [ + { + "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", + "preferred": true + } + ] }, "require": { "composer/pcre": "^1||^2||^3", @@ -1377,7 +1473,7 @@ "maennchen/zipstream-php": "^2.1 || ^3.0", "markbaker/complex": "^3.0", "markbaker/matrix": "^3.0", - "php": "^7.4 || ^8.0", + "php": ">=7.4.0 <8.5.0", "psr/http-client": "^1.0", "psr/http-factory": "^1.0", "psr/simple-cache": "^1.0 || ^2.0 || ^3.0" @@ -1402,7 +1498,7 @@ "mpdf/mpdf": "Option for rendering PDF with PDF Writer", "tecnickcom/tcpdf": "Option for rendering PDF with PDF Writer" }, - "time": "2025-08-10T06:28:02+00:00", + "time": "2025-10-26T16:01:04+00:00", "type": "library", "installation-source": "dist", "autoload": { @@ -1448,7 +1544,7 @@ ], "support": { "issues": "https://github.com/PHPOffice/PhpSpreadsheet/issues", - "source": "https://github.com/PHPOffice/PhpSpreadsheet/tree/1.30.0" + "source": "https://github.com/PHPOffice/PhpSpreadsheet/tree/1.30.1" }, "install-path": "../phpoffice/phpspreadsheet" }, @@ -1839,24 +1935,30 @@ }, { "name": "psr/http-factory", - "version": "1.1.0", - "version_normalized": "1.1.0.0", + "version": "1.0.2", + "version_normalized": "1.0.2.0", "source": { "type": "git", "url": "https://github.com/php-fig/http-factory.git", - "reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a" + "reference": "e616d01114759c4c489f93b099585439f795fe35" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-factory/zipball/2b4765fddfe3b508ac62f829e852b1501d3f6e8a", - "reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a", - "shasum": "" + "url": "https://api.github.com/repos/php-fig/http-factory/zipball/e616d01114759c4c489f93b099585439f795fe35", + "reference": "e616d01114759c4c489f93b099585439f795fe35", + "shasum": "", + "mirrors": [ + { + "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", + "preferred": true + } + ] }, "require": { - "php": ">=7.1", + "php": ">=7.0.0", "psr/http-message": "^1.0 || ^2.0" }, - "time": "2024-04-15T12:06:14+00:00", + "time": "2023-04-10T20:10:41+00:00", "type": "library", "extra": { "branch-alias": { @@ -1879,7 +1981,7 @@ "homepage": "https://www.php-fig.org/" } ], - "description": "PSR-17: Common interfaces for PSR-7 HTTP message factories", + "description": "Common interfaces for PSR-7 HTTP message factories", "keywords": [ "factory", "http", @@ -1891,33 +1993,39 @@ "response" ], "support": { - "source": "https://github.com/php-fig/http-factory" + "source": "https://github.com/php-fig/http-factory/tree/1.0.2" }, "install-path": "../psr/http-factory" }, { "name": "psr/http-message", - "version": "2.0", - "version_normalized": "2.0.0.0", + "version": "1.1", + "version_normalized": "1.1.0.0", "source": { "type": "git", "url": "https://github.com/php-fig/http-message.git", - "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71" + "reference": "cb6ce4845ce34a8ad9e68117c10ee90a29919eba" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-message/zipball/402d35bcb92c70c026d1a6a9883f06b2ead23d71", - "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71", - "shasum": "" + "url": "https://api.github.com/repos/php-fig/http-message/zipball/cb6ce4845ce34a8ad9e68117c10ee90a29919eba", + "reference": "cb6ce4845ce34a8ad9e68117c10ee90a29919eba", + "shasum": "", + "mirrors": [ + { + "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", + "preferred": true + } + ] }, "require": { "php": "^7.2 || ^8.0" }, - "time": "2023-04-04T09:54:51+00:00", + "time": "2023-04-04T09:50:52+00:00", "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "1.1.x-dev" } }, "installation-source": "dist", @@ -1933,7 +2041,7 @@ "authors": [ { "name": "PHP-FIG", - "homepage": "https://www.php-fig.org/" + "homepage": "http://www.php-fig.org/" } ], "description": "Common interface for HTTP messages", @@ -1947,7 +2055,7 @@ "response" ], "support": { - "source": "https://github.com/php-fig/http-message/tree/2.0" + "source": "https://github.com/php-fig/http-message/tree/1.1" }, "install-path": "../psr/http-message" }, @@ -2289,23 +2397,29 @@ }, { "name": "symfony/deprecation-contracts", - "version": "v3.6.0", - "version_normalized": "3.6.0.0", + "version": "v3.0.2", + "version_normalized": "3.0.2.0", "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "63afe740e99a13ba87ec199bb07bbdee937a5b62" + "reference": "26954b3d62a6c5fd0ea8a2a00c0353a14978d05c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/63afe740e99a13ba87ec199bb07bbdee937a5b62", - "reference": "63afe740e99a13ba87ec199bb07bbdee937a5b62", - "shasum": "" + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/26954b3d62a6c5fd0ea8a2a00c0353a14978d05c", + "reference": "26954b3d62a6c5fd0ea8a2a00c0353a14978d05c", + "shasum": "", + "mirrors": [ + { + "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", + "preferred": true + } + ] }, "require": { - "php": ">=8.1" + "php": ">=8.0.2" }, - "time": "2024-09-25T14:21:43+00:00", + "time": "2022-01-02T09:55:41+00:00", "type": "library", "extra": { "thanks": { @@ -2313,7 +2427,7 @@ "name": "symfony/contracts" }, "branch-alias": { - "dev-main": "3.6-dev" + "dev-main": "3.0-dev" } }, "installation-source": "dist", @@ -2339,7 +2453,7 @@ "description": "A generic function and convention to trigger deprecation notices", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/deprecation-contracts/tree/v3.6.0" + "source": "https://github.com/symfony/deprecation-contracts/tree/v3.0.2" }, "funding": [ { @@ -2447,24 +2561,33 @@ }, { "name": "symfony/event-dispatcher-contracts", - "version": "v3.6.0", - "version_normalized": "3.6.0.0", + "version": "v3.0.2", + "version_normalized": "3.0.2.0", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher-contracts.git", - "reference": "59eb412e93815df44f05f342958efa9f46b1e586" + "reference": "7bc61cc2db649b4637d331240c5346dcc7708051" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/59eb412e93815df44f05f342958efa9f46b1e586", - "reference": "59eb412e93815df44f05f342958efa9f46b1e586", - "shasum": "" + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/7bc61cc2db649b4637d331240c5346dcc7708051", + "reference": "7bc61cc2db649b4637d331240c5346dcc7708051", + "shasum": "", + "mirrors": [ + { + "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", + "preferred": true + } + ] }, "require": { - "php": ">=8.1", + "php": ">=8.0.2", "psr/event-dispatcher": "^1" }, - "time": "2024-09-25T14:21:43+00:00", + "suggest": { + "symfony/event-dispatcher-implementation": "" + }, + "time": "2022-01-02T09:55:41+00:00", "type": "library", "extra": { "thanks": { @@ -2472,7 +2595,7 @@ "name": "symfony/contracts" }, "branch-alias": { - "dev-main": "3.6-dev" + "dev-main": "3.0-dev" } }, "installation-source": "dist", @@ -2506,7 +2629,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.6.0" + "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.0.2" }, "funding": [ { @@ -2526,26 +2649,29 @@ }, { "name": "symfony/finder", - "version": "v7.3.2", - "version_normalized": "7.3.2.0", + "version": "v6.0.19", + "version_normalized": "6.0.19.0", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "2a6614966ba1074fa93dae0bc804227422df4dfe" + "reference": "5cc9cac6586fc0c28cd173780ca696e419fefa11" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/2a6614966ba1074fa93dae0bc804227422df4dfe", - "reference": "2a6614966ba1074fa93dae0bc804227422df4dfe", - "shasum": "" + "url": "https://api.github.com/repos/symfony/finder/zipball/5cc9cac6586fc0c28cd173780ca696e419fefa11", + "reference": "5cc9cac6586fc0c28cd173780ca696e419fefa11", + "shasum": "", + "mirrors": [ + { + "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", + "preferred": true + } + ] }, "require": { - "php": ">=8.2" + "php": ">=8.0.2" }, - "require-dev": { - "symfony/filesystem": "^6.4|^7.0" - }, - "time": "2025-07-15T13:41:35+00:00", + "time": "2023-01-20T17:44:14+00:00", "type": "library", "installation-source": "dist", "autoload": { @@ -2573,7 +2699,7 @@ "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/v7.3.2" + "source": "https://github.com/symfony/finder/tree/v6.0.19" }, "funding": [ { @@ -2584,10 +2710,6 @@ "url": "https://github.com/fabpot", "type": "github" }, - { - "url": "https://github.com/nicolas-grekas", - "type": "github" - }, { "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", "type": "tidelift" @@ -2676,8 +2798,8 @@ }, { "name": "symfony/polyfill-mbstring", - "version": "v1.33.0", - "version_normalized": "1.33.0.0", + "version": "v1.32.0", + "version_normalized": "1.32.0.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", @@ -2687,7 +2809,13 @@ "type": "zip", "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/6d857f4d76bd4b343eac26d6b539585d2bc56493", "reference": "6d857f4d76bd4b343eac26d6b539585d2bc56493", - "shasum": "" + "shasum": "", + "mirrors": [ + { + "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", + "preferred": true + } + ] }, "require": { "ext-iconv": "*", @@ -2740,7 +2868,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.33.0" + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.32.0" }, "funding": [ { @@ -2751,10 +2879,6 @@ "url": "https://github.com/fabpot", "type": "github" }, - { - "url": "https://github.com/nicolas-grekas", - "type": "github" - }, { "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", "type": "tidelift" @@ -2764,8 +2888,8 @@ }, { "name": "symfony/polyfill-php73", - "version": "v1.33.0", - "version_normalized": "1.33.0.0", + "version": "v1.32.0", + "version_normalized": "1.32.0.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php73.git", @@ -2775,7 +2899,13 @@ "type": "zip", "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/0f68c03565dcaaf25a890667542e8bd75fe7e5bb", "reference": "0f68c03565dcaaf25a890667542e8bd75fe7e5bb", - "shasum": "" + "shasum": "", + "mirrors": [ + { + "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", + "preferred": true + } + ] }, "require": { "php": ">=7.2" @@ -2823,7 +2953,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php73/tree/v1.33.0" + "source": "https://github.com/symfony/polyfill-php73/tree/v1.32.0" }, "funding": [ { @@ -2834,10 +2964,6 @@ "url": "https://github.com/fabpot", "type": "github" }, - { - "url": "https://github.com/nicolas-grekas", - "type": "github" - }, { "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", "type": "tidelift" @@ -2847,8 +2973,8 @@ }, { "name": "symfony/polyfill-php80", - "version": "v1.33.0", - "version_normalized": "1.33.0.0", + "version": "v1.32.0", + "version_normalized": "1.32.0.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php80.git", @@ -2858,7 +2984,13 @@ "type": "zip", "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/0cc9dd0f17f61d8131e7df6b84bd344899fe2608", "reference": "0cc9dd0f17f61d8131e7df6b84bd344899fe2608", - "shasum": "" + "shasum": "", + "mirrors": [ + { + "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", + "preferred": true + } + ] }, "require": { "php": ">=7.2" @@ -2910,7 +3042,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php80/tree/v1.33.0" + "source": "https://github.com/symfony/polyfill-php80/tree/v1.32.0" }, "funding": [ { @@ -2921,10 +3053,6 @@ "url": "https://github.com/fabpot", "type": "github" }, - { - "url": "https://github.com/nicolas-grekas", - "type": "github" - }, { "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", "type": "tidelift" @@ -3026,28 +3154,36 @@ }, { "name": "symfony/service-contracts", - "version": "v3.6.0", - "version_normalized": "3.6.0.0", + "version": "v3.0.2", + "version_normalized": "3.0.2.0", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "f021b05a130d35510bd6b25fe9053c2a8a15d5d4" + "reference": "d78d39c1599bd1188b8e26bb341da52c3c6d8a66" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/f021b05a130d35510bd6b25fe9053c2a8a15d5d4", - "reference": "f021b05a130d35510bd6b25fe9053c2a8a15d5d4", - "shasum": "" + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/d78d39c1599bd1188b8e26bb341da52c3c6d8a66", + "reference": "d78d39c1599bd1188b8e26bb341da52c3c6d8a66", + "shasum": "", + "mirrors": [ + { + "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", + "preferred": true + } + ] }, "require": { - "php": ">=8.1", - "psr/container": "^1.1|^2.0", - "symfony/deprecation-contracts": "^2.5|^3" + "php": ">=8.0.2", + "psr/container": "^2.0" }, "conflict": { "ext-psr": "<1.1|>=2" }, - "time": "2025-04-25T09:37:31+00:00", + "suggest": { + "symfony/service-implementation": "" + }, + "time": "2022-05-30T19:17:58+00:00", "type": "library", "extra": { "thanks": { @@ -3055,17 +3191,14 @@ "name": "symfony/contracts" }, "branch-alias": { - "dev-main": "3.6-dev" + "dev-main": "3.0-dev" } }, "installation-source": "dist", "autoload": { "psr-4": { "Symfony\\Contracts\\Service\\": "" - }, - "exclude-from-classmap": [ - "/Test/" - ] + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -3092,7 +3225,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/service-contracts/tree/v3.6.0" + "source": "https://github.com/symfony/service-contracts/tree/v3.0.2" }, "funding": [ { @@ -3112,29 +3245,32 @@ }, { "name": "symfony/var-exporter", - "version": "v6.4.26", - "version_normalized": "6.4.26.0", + "version": "v6.0.19", + "version_normalized": "6.0.19.0", "source": { "type": "git", "url": "https://github.com/symfony/var-exporter.git", - "reference": "466fcac5fa2e871f83d31173f80e9c2684743bfc" + "reference": "df56f53818c2d5d9f683f4ad2e365ba73a3b69d2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-exporter/zipball/466fcac5fa2e871f83d31173f80e9c2684743bfc", - "reference": "466fcac5fa2e871f83d31173f80e9c2684743bfc", - "shasum": "" + "url": "https://api.github.com/repos/symfony/var-exporter/zipball/df56f53818c2d5d9f683f4ad2e365ba73a3b69d2", + "reference": "df56f53818c2d5d9f683f4ad2e365ba73a3b69d2", + "shasum": "", + "mirrors": [ + { + "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", + "preferred": true + } + ] }, "require": { - "php": ">=8.1", - "symfony/deprecation-contracts": "^2.5|^3" + "php": ">=8.0.2" }, "require-dev": { - "symfony/property-access": "^6.4|^7.0", - "symfony/serializer": "^6.4|^7.0", - "symfony/var-dumper": "^5.4|^6.0|^7.0" + "symfony/var-dumper": "^5.4|^6.0" }, - "time": "2025-09-11T09:57:09+00:00", + "time": "2023-01-13T08:34:10+00:00", "type": "library", "installation-source": "dist", "autoload": { @@ -3167,12 +3303,10 @@ "export", "hydrate", "instantiate", - "lazy-loading", - "proxy", "serialize" ], "support": { - "source": "https://github.com/symfony/var-exporter/tree/v6.4.26" + "source": "https://github.com/symfony/var-exporter/tree/v6.0.19" }, "funding": [ { @@ -3183,10 +3317,6 @@ "url": "https://github.com/fabpot", "type": "github" }, - { - "url": "https://github.com/nicolas-grekas", - "type": "github" - }, { "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", "type": "tidelift" @@ -3201,9 +3331,12 @@ "source": { "type": "git", "url": "https://gitee.com/fastadminnet/framework.git", - "reference": "e95df87aa1a37e83d7c5fb29722cc70967feb54b" + "reference": "9a2e7c2a1b6302afb61035c99c85bf0cfe0c52ec" }, "require": { + "ext-fileinfo": "*", + "ext-json": "*", + "ext-mbstring": "*", "php": ">=7.1.0", "topthink/think-installer": "~1.0" }, @@ -3215,7 +3348,7 @@ "phpunit/phpunit": "4.8.*", "sebastian/phpcpd": "2.*" }, - "time": "2025-03-12T07:32:08+00:00", + "time": "2025-10-21T02:31:08+00:00", "default-branch": true, "type": "think-framework", "installation-source": "source", @@ -3423,6 +3556,190 @@ "source": "https://github.com/top-think/think-queue/tree/master" }, "install-path": "../topthink/think-queue" + }, + { + "name": "workerman/channel", + "version": "v1.2.3", + "version_normalized": "1.2.3.0", + "source": { + "type": "git", + "url": "https://github.com/walkor/channel.git", + "reference": "5edb0008eae35bf2da7218d911042abd23aa4370" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/walkor/channel/zipball/5edb0008eae35bf2da7218d911042abd23aa4370", + "reference": "5edb0008eae35bf2da7218d911042abd23aa4370", + "shasum": "", + "mirrors": [ + { + "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", + "preferred": true + } + ] + }, + "require": { + "workerman/workerman": ">=4.0.12" + }, + "time": "2025-07-08T01:33:22+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "Channel\\": "./src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "homepage": "http://www.workerman.net", + "support": { + "issues": "https://github.com/walkor/channel/issues", + "source": "https://github.com/walkor/channel/tree/v1.2.3" + }, + "install-path": "../workerman/channel" + }, + { + "name": "workerman/phpsocket.io", + "version": "v2.2.0", + "version_normalized": "2.2.0.0", + "source": { + "type": "git", + "url": "https://github.com/walkor/phpsocket.io.git", + "reference": "0ba306b380e016f447f9860db95fcc1c7553fb91" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/walkor/phpsocket.io/zipball/0ba306b380e016f447f9860db95fcc1c7553fb91", + "reference": "0ba306b380e016f447f9860db95fcc1c7553fb91", + "shasum": "", + "mirrors": [ + { + "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", + "preferred": true + } + ] + }, + "require": { + "ext-json": "*", + "workerman/channel": ">=1.0.0", + "workerman/workerman": "^4.0.0" + }, + "require-dev": { + "squizlabs/php_codesniffer": "^3.7" + }, + "time": "2025-03-24T17:14:03+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "PHPSocketIO\\": "./src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "A server side alternative implementation of socket.io in PHP based on Workerman", + "homepage": "https://www.workerman.net", + "keywords": [ + "Socket.io", + "async", + "non-blocking", + "phpsocket.io", + "server", + "sockets", + "stream", + "workerman" + ], + "support": { + "issues": "https://github.com/walkor/phpsocket.io/issues", + "source": "https://github.com/walkor/phpsocket.io/tree/v2.2.0" + }, + "funding": [ + { + "url": "https://opencollective.com/walkor", + "type": "open_collective" + }, + { + "url": "https://www.patreon.com/walkor", + "type": "patreon" + } + ], + "install-path": "../workerman/phpsocket.io" + }, + { + "name": "workerman/workerman", + "version": "v4.2.1", + "version_normalized": "4.2.1.0", + "source": { + "type": "git", + "url": "https://github.com/walkor/workerman.git", + "reference": "cafb5a43d93d7d30a16b32a57948581cca993562" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/walkor/workerman/zipball/cafb5a43d93d7d30a16b32a57948581cca993562", + "reference": "cafb5a43d93d7d30a16b32a57948581cca993562", + "shasum": "", + "mirrors": [ + { + "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", + "preferred": true + } + ] + }, + "require": { + "php": ">=8.0" + }, + "suggest": { + "ext-event": "For better performance. " + }, + "time": "2024-11-24T11:45:37+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "Workerman\\": "./" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "walkor", + "email": "walkor@workerman.net", + "homepage": "http://www.workerman.net", + "role": "Developer" + } + ], + "description": "An asynchronous event driven PHP framework for easily building fast, scalable network applications.", + "homepage": "http://www.workerman.net", + "keywords": [ + "asynchronous", + "event-loop" + ], + "support": { + "email": "walkor@workerman.net", + "forum": "http://wenda.workerman.net/", + "issues": "https://github.com/walkor/workerman/issues", + "source": "https://github.com/walkor/workerman", + "wiki": "http://doc.workerman.net/" + }, + "funding": [ + { + "url": "https://opencollective.com/workerman", + "type": "open_collective" + }, + { + "url": "https://www.patreon.com/walkor", + "type": "patreon" + } + ], + "install-path": "../workerman/workerman" } ], "dev": true, diff --git a/vendor/composer/installed.php b/vendor/composer/installed.php index 90ccc5f..669647c 100755 --- a/vendor/composer/installed.php +++ b/vendor/composer/installed.php @@ -1,511 +1,556 @@ - array( - 'name' => 'fastadminnet/fastadmin', - 'pretty_version' => 'dev-main', - 'version' => 'dev-main', - 'reference' => '48dbc5f4e4de8bfcd104300fbc5b2d1575469204', - 'type' => 'project', - 'install_path' => __DIR__ . '/../../', - 'aliases' => array(), - 'dev' => true, + + array ( + 'pretty_version' => 'dev-main', + 'version' => 'dev-main', + 'aliases' => + array ( ), - 'versions' => array( - 'composer/pcre' => array( - 'pretty_version' => '3.3.2', - 'version' => '3.3.2.0', - 'reference' => 'b2bed4734f0cc156ee1fe9c0da2550420d99a21e', - 'type' => 'library', - 'install_path' => __DIR__ . '/./pcre', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'easywechat-composer/easywechat-composer' => array( - 'pretty_version' => '1.4.1', - 'version' => '1.4.1.0', - 'reference' => '3fc6a7ab6d3853c0f4e2922539b56cc37ef361cd', - 'type' => 'composer-plugin', - 'install_path' => __DIR__ . '/../easywechat-composer/easywechat-composer', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'ezyang/htmlpurifier' => array( - 'pretty_version' => 'v4.19.0', - 'version' => '4.19.0.0', - 'reference' => 'b287d2a16aceffbf6e0295559b39662612b77fcf', - 'type' => 'library', - 'install_path' => __DIR__ . '/../ezyang/htmlpurifier', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'fastadminnet/fastadmin' => array( - 'pretty_version' => 'dev-main', - 'version' => 'dev-main', - 'reference' => '48dbc5f4e4de8bfcd104300fbc5b2d1575469204', - 'type' => 'project', - 'install_path' => __DIR__ . '/../../', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'fastadminnet/fastadmin-addons' => array( - 'pretty_version' => '1.4.3', - 'version' => '1.4.3.0', - 'reference' => 'b7e371254f97fae7e9232984a746ffa58b64504e', - 'type' => 'library', - 'install_path' => __DIR__ . '/../fastadminnet/fastadmin-addons', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'fastadminnet/fastadmin-mailer' => array( - 'pretty_version' => 'v2.1.1', - 'version' => '2.1.1.0', - 'reference' => 'bca635ac5f564ed6688d818d215021ffb0813746', - 'type' => 'library', - 'install_path' => __DIR__ . '/../fastadminnet/fastadmin-mailer', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'guzzlehttp/guzzle' => array( - 'pretty_version' => '7.10.0', - 'version' => '7.10.0.0', - 'reference' => 'b51ac707cfa420b7bfd4e4d5e510ba8008e822b4', - 'type' => 'library', - 'install_path' => __DIR__ . '/../guzzlehttp/guzzle', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'guzzlehttp/promises' => array( - 'pretty_version' => '2.3.0', - 'version' => '2.3.0.0', - 'reference' => '481557b130ef3790cf82b713667b43030dc9c957', - 'type' => 'library', - 'install_path' => __DIR__ . '/../guzzlehttp/promises', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'guzzlehttp/psr7' => array( - 'pretty_version' => '2.8.0', - 'version' => '2.8.0.0', - 'reference' => '21dc724a0583619cd1652f673303492272778051', - 'type' => 'library', - 'install_path' => __DIR__ . '/../guzzlehttp/psr7', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'maennchen/zipstream-php' => array( - 'pretty_version' => '3.1.2', - 'version' => '3.1.2.0', - 'reference' => 'aeadcf5c412332eb426c0f9b4485f6accba2a99f', - 'type' => 'library', - 'install_path' => __DIR__ . '/../maennchen/zipstream-php', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'markbaker/complex' => array( - 'pretty_version' => '3.0.2', - 'version' => '3.0.2.0', - 'reference' => '95c56caa1cf5c766ad6d65b6344b807c1e8405b9', - 'type' => 'library', - 'install_path' => __DIR__ . '/../markbaker/complex', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'markbaker/matrix' => array( - 'pretty_version' => '3.0.1', - 'version' => '3.0.1.0', - 'reference' => '728434227fe21be27ff6d86621a1b13107a2562c', - 'type' => 'library', - 'install_path' => __DIR__ . '/../markbaker/matrix', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'monolog/monolog' => array( - 'pretty_version' => '2.10.0', - 'version' => '2.10.0.0', - 'reference' => '5cf826f2991858b54d5c3809bee745560a1042a7', - 'type' => 'library', - 'install_path' => __DIR__ . '/../monolog/monolog', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'nelexa/zip' => array( - 'pretty_version' => '4.0.2', - 'version' => '4.0.2.0', - 'reference' => '88a1b6549be813278ff2dd3b6b2ac188827634a7', - 'type' => 'library', - 'install_path' => __DIR__ . '/../nelexa/zip', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'overtrue/pinyin' => array( - 'pretty_version' => '3.0.6', - 'version' => '3.0.6.0', - 'reference' => '3b781d267197b74752daa32814d3a2cf5d140779', - 'type' => 'library', - 'install_path' => __DIR__ . '/../overtrue/pinyin', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'overtrue/socialite' => array( - 'pretty_version' => '2.0.24', - 'version' => '2.0.24.0', - 'reference' => 'ee7e7b000ec7d64f2b8aba1f6a2eec5cdf3f8bec', - 'type' => 'library', - 'install_path' => __DIR__ . '/../overtrue/socialite', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'overtrue/wechat' => array( - 'pretty_version' => '4.9.0', - 'version' => '4.9.0.0', - 'reference' => '92791f5d957269c633b9aa175f842f6006f945b1', - 'type' => 'library', - 'install_path' => __DIR__ . '/../overtrue/wechat', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'paragonie/constant_time_encoding' => array( - 'pretty_version' => 'v3.1.3', - 'version' => '3.1.3.0', - 'reference' => 'd5b01a39b3415c2cd581d3bd3a3575c1ebbd8e77', - 'type' => 'library', - 'install_path' => __DIR__ . '/../paragonie/constant_time_encoding', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'paragonie/random_compat' => array( - 'pretty_version' => 'v9.99.100', - 'version' => '9.99.100.0', - 'reference' => '996434e5492cb4c3edcb9168db6fbb1359ef965a', - 'type' => 'library', - 'install_path' => __DIR__ . '/../paragonie/random_compat', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'phpoffice/phpspreadsheet' => array( - 'pretty_version' => '1.30.0', - 'version' => '1.30.0.0', - 'reference' => '2f39286e0136673778b7a142b3f0d141e43d1714', - 'type' => 'library', - 'install_path' => __DIR__ . '/../phpoffice/phpspreadsheet', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'phpseclib/phpseclib' => array( - 'pretty_version' => '3.0.47', - 'version' => '3.0.47.0', - 'reference' => '9d6ca36a6c2dd434765b1071b2644a1c683b385d', - 'type' => 'library', - 'install_path' => __DIR__ . '/../phpseclib/phpseclib', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'pimple/pimple' => array( - 'pretty_version' => 'v3.5.0', - 'version' => '3.5.0.0', - 'reference' => 'a94b3a4db7fb774b3d78dad2315ddc07629e1bed', - 'type' => 'library', - 'install_path' => __DIR__ . '/../pimple/pimple', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'psr/cache' => array( - 'pretty_version' => '2.0.0', - 'version' => '2.0.0.0', - 'reference' => '213f9dbc5b9bfbc4f8db86d2838dc968752ce13b', - 'type' => 'library', - 'install_path' => __DIR__ . '/../psr/cache', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'psr/cache-implementation' => array( - 'dev_requirement' => false, - 'provided' => array( - 0 => '1.0|2.0', - ), - ), - 'psr/container' => array( - 'pretty_version' => '2.0.2', - 'version' => '2.0.2.0', - 'reference' => 'c71ecc56dfe541dbd90c5360474fbc405f8d5963', - 'type' => 'library', - 'install_path' => __DIR__ . '/../psr/container', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'psr/event-dispatcher' => array( - 'pretty_version' => '1.0.0', - 'version' => '1.0.0.0', - 'reference' => 'dbefd12671e8a14ec7f180cab83036ed26714bb0', - 'type' => 'library', - 'install_path' => __DIR__ . '/../psr/event-dispatcher', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'psr/event-dispatcher-implementation' => array( - 'dev_requirement' => false, - 'provided' => array( - 0 => '1.0', - ), - ), - 'psr/http-client' => array( - 'pretty_version' => '1.0.3', - 'version' => '1.0.3.0', - 'reference' => 'bb5906edc1c324c9a05aa0873d40117941e5fa90', - 'type' => 'library', - 'install_path' => __DIR__ . '/../psr/http-client', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'psr/http-client-implementation' => array( - 'dev_requirement' => false, - 'provided' => array( - 0 => '1.0', - ), - ), - 'psr/http-factory' => array( - 'pretty_version' => '1.1.0', - 'version' => '1.1.0.0', - 'reference' => '2b4765fddfe3b508ac62f829e852b1501d3f6e8a', - 'type' => 'library', - 'install_path' => __DIR__ . '/../psr/http-factory', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'psr/http-factory-implementation' => array( - 'dev_requirement' => false, - 'provided' => array( - 0 => '1.0', - ), - ), - 'psr/http-message' => array( - 'pretty_version' => '2.0', - 'version' => '2.0.0.0', - 'reference' => '402d35bcb92c70c026d1a6a9883f06b2ead23d71', - 'type' => 'library', - 'install_path' => __DIR__ . '/../psr/http-message', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'psr/http-message-implementation' => array( - 'dev_requirement' => false, - 'provided' => array( - 0 => '1.0', - ), - ), - 'psr/log' => array( - 'pretty_version' => '1.1.4', - 'version' => '1.1.4.0', - 'reference' => 'd49695b909c3b7628b6289db5479a1c204601f11', - 'type' => 'library', - 'install_path' => __DIR__ . '/../psr/log', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'psr/log-implementation' => array( - 'dev_requirement' => false, - 'provided' => array( - 0 => '1.0.0 || 2.0.0 || 3.0.0', - ), - ), - 'psr/simple-cache' => array( - 'pretty_version' => '1.0.1', - 'version' => '1.0.1.0', - 'reference' => '408d5eafb83c57f6365a3ca330ff23aa4a5fa39b', - 'type' => 'library', - 'install_path' => __DIR__ . '/../psr/simple-cache', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'psr/simple-cache-implementation' => array( - 'dev_requirement' => false, - 'provided' => array( - 0 => '1.0|2.0', - ), - ), - 'ralouphie/getallheaders' => array( - 'pretty_version' => '3.0.3', - 'version' => '3.0.3.0', - 'reference' => '120b605dfeb996808c31b6477290a714d356e822', - 'type' => 'library', - 'install_path' => __DIR__ . '/../ralouphie/getallheaders', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'symfony/cache' => array( - 'pretty_version' => 'v5.4.46', - 'version' => '5.4.46.0', - 'reference' => '0fe08ee32cec2748fbfea10c52d3ee02049e0f6b', - 'type' => 'library', - 'install_path' => __DIR__ . '/../symfony/cache', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'symfony/cache-contracts' => array( - 'pretty_version' => 'v2.5.4', - 'version' => '2.5.4.0', - 'reference' => '517c3a3619dadfa6952c4651767fcadffb4df65e', - 'type' => 'library', - 'install_path' => __DIR__ . '/../symfony/cache-contracts', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'symfony/cache-implementation' => array( - 'dev_requirement' => false, - 'provided' => array( - 0 => '1.0|2.0', - ), - ), - 'symfony/deprecation-contracts' => array( - 'pretty_version' => 'v3.6.0', - 'version' => '3.6.0.0', - 'reference' => '63afe740e99a13ba87ec199bb07bbdee937a5b62', - 'type' => 'library', - 'install_path' => __DIR__ . '/../symfony/deprecation-contracts', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'symfony/event-dispatcher' => array( - 'pretty_version' => 'v5.4.45', - 'version' => '5.4.45.0', - 'reference' => '72982eb416f61003e9bb6e91f8b3213600dcf9e9', - 'type' => 'library', - 'install_path' => __DIR__ . '/../symfony/event-dispatcher', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'symfony/event-dispatcher-contracts' => array( - 'pretty_version' => 'v3.6.0', - 'version' => '3.6.0.0', - 'reference' => '59eb412e93815df44f05f342958efa9f46b1e586', - 'type' => 'library', - 'install_path' => __DIR__ . '/../symfony/event-dispatcher-contracts', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'symfony/event-dispatcher-implementation' => array( - 'dev_requirement' => false, - 'provided' => array( - 0 => '2.0', - ), - ), - 'symfony/finder' => array( - 'pretty_version' => 'v7.3.2', - 'version' => '7.3.2.0', - 'reference' => '2a6614966ba1074fa93dae0bc804227422df4dfe', - 'type' => 'library', - 'install_path' => __DIR__ . '/../symfony/finder', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'symfony/http-foundation' => array( - 'pretty_version' => 'v5.4.48', - 'version' => '5.4.48.0', - 'reference' => '3f38b8af283b830e1363acd79e5bc3412d055341', - 'type' => 'library', - 'install_path' => __DIR__ . '/../symfony/http-foundation', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'symfony/polyfill-mbstring' => array( - 'pretty_version' => 'v1.33.0', - 'version' => '1.33.0.0', - 'reference' => '6d857f4d76bd4b343eac26d6b539585d2bc56493', - 'type' => 'library', - 'install_path' => __DIR__ . '/../symfony/polyfill-mbstring', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'symfony/polyfill-php73' => array( - 'pretty_version' => 'v1.33.0', - 'version' => '1.33.0.0', - 'reference' => '0f68c03565dcaaf25a890667542e8bd75fe7e5bb', - 'type' => 'library', - 'install_path' => __DIR__ . '/../symfony/polyfill-php73', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'symfony/polyfill-php80' => array( - 'pretty_version' => 'v1.33.0', - 'version' => '1.33.0.0', - 'reference' => '0cc9dd0f17f61d8131e7df6b84bd344899fe2608', - 'type' => 'library', - 'install_path' => __DIR__ . '/../symfony/polyfill-php80', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'symfony/psr-http-message-bridge' => array( - 'pretty_version' => 'v2.3.1', - 'version' => '2.3.1.0', - 'reference' => '581ca6067eb62640de5ff08ee1ba6850a0ee472e', - 'type' => 'symfony-bridge', - 'install_path' => __DIR__ . '/../symfony/psr-http-message-bridge', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'symfony/service-contracts' => array( - 'pretty_version' => 'v3.6.0', - 'version' => '3.6.0.0', - 'reference' => 'f021b05a130d35510bd6b25fe9053c2a8a15d5d4', - 'type' => 'library', - 'install_path' => __DIR__ . '/../symfony/service-contracts', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'symfony/var-exporter' => array( - 'pretty_version' => 'v6.4.26', - 'version' => '6.4.26.0', - 'reference' => '466fcac5fa2e871f83d31173f80e9c2684743bfc', - 'type' => 'library', - 'install_path' => __DIR__ . '/../symfony/var-exporter', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'topthink/framework' => array( - 'pretty_version' => 'dev-master', - 'version' => 'dev-master', - 'reference' => 'e95df87aa1a37e83d7c5fb29722cc70967feb54b', - 'type' => 'think-framework', - 'install_path' => __DIR__ . '/../../thinkphp', - 'aliases' => array( - 0 => '9999999-dev', - ), - 'dev_requirement' => false, - ), - 'topthink/think-captcha' => array( - 'pretty_version' => 'v1.0.9', - 'version' => '1.0.9.0', - 'reference' => '9be9dd7e61c7fa3c478c4b92910d7230b94d0d23', - 'type' => 'library', - 'install_path' => __DIR__ . '/../topthink/think-captcha', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'topthink/think-helper' => array( - 'pretty_version' => 'v1.0.7', - 'version' => '1.0.7.0', - 'reference' => '5f92178606c8ce131d36b37a57c58eb71e55f019', - 'type' => 'library', - 'install_path' => __DIR__ . '/../topthink/think-helper', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'topthink/think-installer' => array( - 'pretty_version' => 'v1.0.14', - 'version' => '1.0.14.0', - 'reference' => 'eae1740ac264a55c06134b6685dfb9f837d004d1', - 'type' => 'composer-plugin', - 'install_path' => __DIR__ . '/../topthink/think-installer', - 'aliases' => array(), - 'dev_requirement' => false, - ), - 'topthink/think-queue' => array( - 'pretty_version' => 'v1.1.6', - 'version' => '1.1.6.0', - 'reference' => '250650eb0e8ea5af4cfdc7ae46f3f4e0a24ac245', - 'type' => 'think-extend', - 'install_path' => __DIR__ . '/../topthink/think-queue', - 'aliases' => array(), - 'dev_requirement' => false, - ), + 'reference' => '5769442de60965346d4098544e88c3d20a2755fe', + 'name' => 'fastadminnet/fastadmin', + ), + 'versions' => + array ( + 'composer/pcre' => + array ( + 'pretty_version' => '3.3.2', + 'version' => '3.3.2.0', + 'aliases' => + array ( + ), + 'reference' => 'b2bed4734f0cc156ee1fe9c0da2550420d99a21e', ), + 'easywechat-composer/easywechat-composer' => + array ( + 'pretty_version' => '1.4.1', + 'version' => '1.4.1.0', + 'aliases' => + array ( + ), + 'reference' => '3fc6a7ab6d3853c0f4e2922539b56cc37ef361cd', + ), + 'ezyang/htmlpurifier' => + array ( + 'pretty_version' => 'v4.19.0', + 'version' => '4.19.0.0', + 'aliases' => + array ( + ), + 'reference' => 'b287d2a16aceffbf6e0295559b39662612b77fcf', + ), + 'fastadminnet/fastadmin' => + array ( + 'pretty_version' => 'dev-main', + 'version' => 'dev-main', + 'aliases' => + array ( + ), + 'reference' => '5769442de60965346d4098544e88c3d20a2755fe', + ), + 'fastadminnet/fastadmin-addons' => + array ( + 'pretty_version' => '1.4.2', + 'version' => '1.4.2.0', + 'aliases' => + array ( + ), + 'reference' => '14af178a62fb4cc897f954fa9d7d53798ad2cf37', + ), + 'fastadminnet/fastadmin-mailer' => + array ( + 'pretty_version' => 'v2.1.1', + 'version' => '2.1.1.0', + 'aliases' => + array ( + ), + 'reference' => 'bca635ac5f564ed6688d818d215021ffb0813746', + ), + 'guzzlehttp/guzzle' => + array ( + 'pretty_version' => '7.9.2', + 'version' => '7.9.2.0', + 'aliases' => + array ( + ), + 'reference' => 'd281ed313b989f213357e3be1a179f02196ac99b', + ), + 'guzzlehttp/promises' => + array ( + 'pretty_version' => '2.3.0', + 'version' => '2.3.0.0', + 'aliases' => + array ( + ), + 'reference' => '481557b130ef3790cf82b713667b43030dc9c957', + ), + 'guzzlehttp/psr7' => + array ( + 'pretty_version' => '2.8.0', + 'version' => '2.8.0.0', + 'aliases' => + array ( + ), + 'reference' => '21dc724a0583619cd1652f673303492272778051', + ), + 'maennchen/zipstream-php' => + array ( + 'pretty_version' => '2.4.0', + 'version' => '2.4.0.0', + 'aliases' => + array ( + ), + 'reference' => '3fa72e4c71a43f9e9118752a5c90e476a8dc9eb3', + ), + 'markbaker/complex' => + array ( + 'pretty_version' => '3.0.2', + 'version' => '3.0.2.0', + 'aliases' => + array ( + ), + 'reference' => '95c56caa1cf5c766ad6d65b6344b807c1e8405b9', + ), + 'markbaker/matrix' => + array ( + 'pretty_version' => '3.0.1', + 'version' => '3.0.1.0', + 'aliases' => + array ( + ), + 'reference' => '728434227fe21be27ff6d86621a1b13107a2562c', + ), + 'monolog/monolog' => + array ( + 'pretty_version' => '2.10.0', + 'version' => '2.10.0.0', + 'aliases' => + array ( + ), + 'reference' => '5cf826f2991858b54d5c3809bee745560a1042a7', + ), + 'myclabs/php-enum' => + array ( + 'pretty_version' => '1.8.4', + 'version' => '1.8.4.0', + 'aliases' => + array ( + ), + 'reference' => 'a867478eae49c9f59ece437ae7f9506bfaa27483', + ), + 'nelexa/zip' => + array ( + 'pretty_version' => '4.0.2', + 'version' => '4.0.2.0', + 'aliases' => + array ( + ), + 'reference' => '88a1b6549be813278ff2dd3b6b2ac188827634a7', + ), + 'overtrue/pinyin' => + array ( + 'pretty_version' => '3.0.6', + 'version' => '3.0.6.0', + 'aliases' => + array ( + ), + 'reference' => '3b781d267197b74752daa32814d3a2cf5d140779', + ), + 'overtrue/socialite' => + array ( + 'pretty_version' => '2.0.24', + 'version' => '2.0.24.0', + 'aliases' => + array ( + ), + 'reference' => 'ee7e7b000ec7d64f2b8aba1f6a2eec5cdf3f8bec', + ), + 'overtrue/wechat' => + array ( + 'pretty_version' => '4.9.0', + 'version' => '4.9.0.0', + 'aliases' => + array ( + ), + 'reference' => '92791f5d957269c633b9aa175f842f6006f945b1', + ), + 'paragonie/constant_time_encoding' => + array ( + 'pretty_version' => 'v3.1.3', + 'version' => '3.1.3.0', + 'aliases' => + array ( + ), + 'reference' => 'd5b01a39b3415c2cd581d3bd3a3575c1ebbd8e77', + ), + 'paragonie/random_compat' => + array ( + 'pretty_version' => 'v9.99.100', + 'version' => '9.99.100.0', + 'aliases' => + array ( + ), + 'reference' => '996434e5492cb4c3edcb9168db6fbb1359ef965a', + ), + 'phpoffice/phpspreadsheet' => + array ( + 'pretty_version' => '1.30.1', + 'version' => '1.30.1.0', + 'aliases' => + array ( + ), + 'reference' => 'fa8257a579ec623473eabfe49731de5967306c4c', + ), + 'phpseclib/phpseclib' => + array ( + 'pretty_version' => '3.0.47', + 'version' => '3.0.47.0', + 'aliases' => + array ( + ), + 'reference' => '9d6ca36a6c2dd434765b1071b2644a1c683b385d', + ), + 'pimple/pimple' => + array ( + 'pretty_version' => 'v3.5.0', + 'version' => '3.5.0.0', + 'aliases' => + array ( + ), + 'reference' => 'a94b3a4db7fb774b3d78dad2315ddc07629e1bed', + ), + 'psr/cache' => + array ( + 'pretty_version' => '2.0.0', + 'version' => '2.0.0.0', + 'aliases' => + array ( + ), + 'reference' => '213f9dbc5b9bfbc4f8db86d2838dc968752ce13b', + ), + 'psr/cache-implementation' => + array ( + 'provided' => + array ( + 0 => '1.0|2.0', + ), + ), + 'psr/container' => + array ( + 'pretty_version' => '2.0.2', + 'version' => '2.0.2.0', + 'aliases' => + array ( + ), + 'reference' => 'c71ecc56dfe541dbd90c5360474fbc405f8d5963', + ), + 'psr/event-dispatcher' => + array ( + 'pretty_version' => '1.0.0', + 'version' => '1.0.0.0', + 'aliases' => + array ( + ), + 'reference' => 'dbefd12671e8a14ec7f180cab83036ed26714bb0', + ), + 'psr/event-dispatcher-implementation' => + array ( + 'provided' => + array ( + 0 => '1.0', + ), + ), + 'psr/http-client' => + array ( + 'pretty_version' => '1.0.3', + 'version' => '1.0.3.0', + 'aliases' => + array ( + ), + 'reference' => 'bb5906edc1c324c9a05aa0873d40117941e5fa90', + ), + 'psr/http-client-implementation' => + array ( + 'provided' => + array ( + 0 => '1.0', + ), + ), + 'psr/http-factory' => + array ( + 'pretty_version' => '1.0.2', + 'version' => '1.0.2.0', + 'aliases' => + array ( + ), + 'reference' => 'e616d01114759c4c489f93b099585439f795fe35', + ), + 'psr/http-factory-implementation' => + array ( + 'provided' => + array ( + 0 => '1.0', + ), + ), + 'psr/http-message' => + array ( + 'pretty_version' => '1.1', + 'version' => '1.1.0.0', + 'aliases' => + array ( + ), + 'reference' => 'cb6ce4845ce34a8ad9e68117c10ee90a29919eba', + ), + 'psr/http-message-implementation' => + array ( + 'provided' => + array ( + 0 => '1.0', + ), + ), + 'psr/log' => + array ( + 'pretty_version' => '1.1.4', + 'version' => '1.1.4.0', + 'aliases' => + array ( + ), + 'reference' => 'd49695b909c3b7628b6289db5479a1c204601f11', + ), + 'psr/log-implementation' => + array ( + 'provided' => + array ( + 0 => '1.0.0 || 2.0.0 || 3.0.0', + ), + ), + 'psr/simple-cache' => + array ( + 'pretty_version' => '1.0.1', + 'version' => '1.0.1.0', + 'aliases' => + array ( + ), + 'reference' => '408d5eafb83c57f6365a3ca330ff23aa4a5fa39b', + ), + 'psr/simple-cache-implementation' => + array ( + 'provided' => + array ( + 0 => '1.0|2.0', + ), + ), + 'ralouphie/getallheaders' => + array ( + 'pretty_version' => '3.0.3', + 'version' => '3.0.3.0', + 'aliases' => + array ( + ), + 'reference' => '120b605dfeb996808c31b6477290a714d356e822', + ), + 'symfony/cache' => + array ( + 'pretty_version' => 'v5.4.46', + 'version' => '5.4.46.0', + 'aliases' => + array ( + ), + 'reference' => '0fe08ee32cec2748fbfea10c52d3ee02049e0f6b', + ), + 'symfony/cache-contracts' => + array ( + 'pretty_version' => 'v2.5.4', + 'version' => '2.5.4.0', + 'aliases' => + array ( + ), + 'reference' => '517c3a3619dadfa6952c4651767fcadffb4df65e', + ), + 'symfony/cache-implementation' => + array ( + 'provided' => + array ( + 0 => '1.0|2.0', + ), + ), + 'symfony/deprecation-contracts' => + array ( + 'pretty_version' => 'v3.0.2', + 'version' => '3.0.2.0', + 'aliases' => + array ( + ), + 'reference' => '26954b3d62a6c5fd0ea8a2a00c0353a14978d05c', + ), + 'symfony/event-dispatcher' => + array ( + 'pretty_version' => 'v5.4.45', + 'version' => '5.4.45.0', + 'aliases' => + array ( + ), + 'reference' => '72982eb416f61003e9bb6e91f8b3213600dcf9e9', + ), + 'symfony/event-dispatcher-contracts' => + array ( + 'pretty_version' => 'v3.0.2', + 'version' => '3.0.2.0', + 'aliases' => + array ( + ), + 'reference' => '7bc61cc2db649b4637d331240c5346dcc7708051', + ), + 'symfony/event-dispatcher-implementation' => + array ( + 'provided' => + array ( + 0 => '2.0', + ), + ), + 'symfony/finder' => + array ( + 'pretty_version' => 'v6.0.19', + 'version' => '6.0.19.0', + 'aliases' => + array ( + ), + 'reference' => '5cc9cac6586fc0c28cd173780ca696e419fefa11', + ), + 'symfony/http-foundation' => + array ( + 'pretty_version' => 'v5.4.48', + 'version' => '5.4.48.0', + 'aliases' => + array ( + ), + 'reference' => '3f38b8af283b830e1363acd79e5bc3412d055341', + ), + 'symfony/polyfill-mbstring' => + array ( + 'pretty_version' => 'v1.32.0', + 'version' => '1.32.0.0', + 'aliases' => + array ( + ), + 'reference' => '6d857f4d76bd4b343eac26d6b539585d2bc56493', + ), + 'symfony/polyfill-php73' => + array ( + 'pretty_version' => 'v1.32.0', + 'version' => '1.32.0.0', + 'aliases' => + array ( + ), + 'reference' => '0f68c03565dcaaf25a890667542e8bd75fe7e5bb', + ), + 'symfony/polyfill-php80' => + array ( + 'pretty_version' => 'v1.32.0', + 'version' => '1.32.0.0', + 'aliases' => + array ( + ), + 'reference' => '0cc9dd0f17f61d8131e7df6b84bd344899fe2608', + ), + 'symfony/psr-http-message-bridge' => + array ( + 'pretty_version' => 'v2.3.1', + 'version' => '2.3.1.0', + 'aliases' => + array ( + ), + 'reference' => '581ca6067eb62640de5ff08ee1ba6850a0ee472e', + ), + 'symfony/service-contracts' => + array ( + 'pretty_version' => 'v3.0.2', + 'version' => '3.0.2.0', + 'aliases' => + array ( + ), + 'reference' => 'd78d39c1599bd1188b8e26bb341da52c3c6d8a66', + ), + 'symfony/var-exporter' => + array ( + 'pretty_version' => 'v6.0.19', + 'version' => '6.0.19.0', + 'aliases' => + array ( + ), + 'reference' => 'df56f53818c2d5d9f683f4ad2e365ba73a3b69d2', + ), + 'topthink/framework' => + array ( + 'pretty_version' => 'dev-master', + 'version' => 'dev-master', + 'aliases' => + array ( + 0 => '9999999-dev', + ), + 'reference' => '9a2e7c2a1b6302afb61035c99c85bf0cfe0c52ec', + ), + 'topthink/think-captcha' => + array ( + 'pretty_version' => 'v1.0.9', + 'version' => '1.0.9.0', + 'aliases' => + array ( + ), + 'reference' => '9be9dd7e61c7fa3c478c4b92910d7230b94d0d23', + ), + 'topthink/think-helper' => + array ( + 'pretty_version' => 'v1.0.7', + 'version' => '1.0.7.0', + 'aliases' => + array ( + ), + 'reference' => '5f92178606c8ce131d36b37a57c58eb71e55f019', + ), + 'topthink/think-installer' => + array ( + 'pretty_version' => 'v1.0.14', + 'version' => '1.0.14.0', + 'aliases' => + array ( + ), + 'reference' => 'eae1740ac264a55c06134b6685dfb9f837d004d1', + ), + 'topthink/think-queue' => + array ( + 'pretty_version' => 'v1.1.6', + 'version' => '1.1.6.0', + 'aliases' => + array ( + ), + 'reference' => '250650eb0e8ea5af4cfdc7ae46f3f4e0a24ac245', + ), + 'workerman/channel' => + array ( + 'pretty_version' => 'v1.2.3', + 'version' => '1.2.3.0', + 'aliases' => + array ( + ), + 'reference' => '5edb0008eae35bf2da7218d911042abd23aa4370', + ), + 'workerman/phpsocket.io' => + array ( + 'pretty_version' => 'v2.2.0', + 'version' => '2.2.0.0', + 'aliases' => + array ( + ), + 'reference' => '0ba306b380e016f447f9860db95fcc1c7553fb91', + ), + 'workerman/workerman' => + array ( + 'pretty_version' => 'v4.2.1', + 'version' => '4.2.1.0', + 'aliases' => + array ( + ), + 'reference' => 'cafb5a43d93d7d30a16b32a57948581cca993562', + ), + ), ); diff --git a/vendor/composer/platform_check.php b/vendor/composer/platform_check.php index 580fa96..b168ddd 100755 --- a/vendor/composer/platform_check.php +++ b/vendor/composer/platform_check.php @@ -4,8 +4,8 @@ $issues = array(); -if (!(PHP_VERSION_ID >= 70400)) { - $issues[] = 'Your Composer dependencies require a PHP version ">= 7.4.0". You are running ' . PHP_VERSION . '.'; +if (!(PHP_VERSION_ID >= 80002)) { + $issues[] = 'Your Composer dependencies require a PHP version ">= 8.0.2". You are running ' . PHP_VERSION . '.'; } if ($issues) { diff --git a/vendor/fastadminnet/fastadmin-addons/composer.json b/vendor/fastadminnet/fastadmin-addons/composer.json index 050b7c9..ad98272 100644 --- a/vendor/fastadminnet/fastadmin-addons/composer.json +++ b/vendor/fastadminnet/fastadmin-addons/composer.json @@ -3,7 +3,7 @@ "description": "addons package for fastadmin", "homepage": "https://github.com/fastadminnet/fastadmin-addons", "license": "Apache-2.0", - "version": "1.4.3", + "version": "1.4.2", "authors": [ { "name": "Karson", @@ -18,7 +18,7 @@ "issues": "https://github.com/fastadminnet/fastadmin-addons/issues" }, "require": { - "php": ">=7.1.0", + "php": ">=7.0.0", "nelexa/zip": "^3.3 || ^4.0" }, "autoload": { diff --git a/vendor/fastadminnet/fastadmin-addons/src/addons/Controller.php b/vendor/fastadminnet/fastadmin-addons/src/addons/Controller.php index 457ff5c..fea2c4f 100644 --- a/vendor/fastadminnet/fastadmin-addons/src/addons/Controller.php +++ b/vendor/fastadminnet/fastadmin-addons/src/addons/Controller.php @@ -63,7 +63,7 @@ class Controller extends \think\Controller * @param Request $request Request对象 * @access public */ - public function __construct(?Request $request = null) + public function __construct(Request $request = null) { if (is_null($request)) { $request = Request::instance(); diff --git a/vendor/guzzlehttp/guzzle/CHANGELOG.md b/vendor/guzzlehttp/guzzle/CHANGELOG.md index 5fe721e..e0b6216 100644 --- a/vendor/guzzlehttp/guzzle/CHANGELOG.md +++ b/vendor/guzzlehttp/guzzle/CHANGELOG.md @@ -2,25 +2,6 @@ Please refer to [UPGRADING](UPGRADING.md) guide for upgrading to a major version. -## 7.10.0 - 2025-08-23 - -### Added - -- Support for PHP 8.5 - -### Changed - -- Adjusted `guzzlehttp/promises` version constraint to `^2.3` -- Adjusted `guzzlehttp/psr7` version constraint to `^2.8` - - -## 7.9.3 - 2025-03-27 - -### Changed - -- Remove explicit content-length header for GET requests -- Improve compatibility with bad servers for boolean cookie values - ## 7.9.2 - 2024-07-24 diff --git a/vendor/guzzlehttp/guzzle/composer.json b/vendor/guzzlehttp/guzzle/composer.json index 0db75a9..cbede14 100644 --- a/vendor/guzzlehttp/guzzle/composer.json +++ b/vendor/guzzlehttp/guzzle/composer.json @@ -81,8 +81,8 @@ "require": { "php": "^7.2.5 || ^8.0", "ext-json": "*", - "guzzlehttp/promises": "^2.3", - "guzzlehttp/psr7": "^2.8", + "guzzlehttp/promises": "^1.5.3 || ^2.0.3", + "guzzlehttp/psr7": "^2.7.0", "psr/http-client": "^1.0", "symfony/deprecation-contracts": "^2.2 || ^3.0" }, diff --git a/vendor/guzzlehttp/guzzle/package-lock.json b/vendor/guzzlehttp/guzzle/package-lock.json deleted file mode 100644 index 0e14dc1..0000000 --- a/vendor/guzzlehttp/guzzle/package-lock.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "guzzle", - "lockfileVersion": 3, - "requires": true, - "packages": {} -} diff --git a/vendor/guzzlehttp/guzzle/src/Cookie/SetCookie.php b/vendor/guzzlehttp/guzzle/src/Cookie/SetCookie.php index 47c4d10..c9806da 100644 --- a/vendor/guzzlehttp/guzzle/src/Cookie/SetCookie.php +++ b/vendor/guzzlehttp/guzzle/src/Cookie/SetCookie.php @@ -62,10 +62,6 @@ class SetCookie if (is_numeric($value)) { $data[$search] = (int) $value; } - } elseif ($search === 'Secure' || $search === 'Discard' || $search === 'HttpOnly') { - if ($value) { - $data[$search] = true; - } } else { $data[$search] = $value; } diff --git a/vendor/guzzlehttp/guzzle/src/Handler/CurlFactory.php b/vendor/guzzlehttp/guzzle/src/Handler/CurlFactory.php index 3c1fa9c..fe36137 100644 --- a/vendor/guzzlehttp/guzzle/src/Handler/CurlFactory.php +++ b/vendor/guzzlehttp/guzzle/src/Handler/CurlFactory.php @@ -125,9 +125,7 @@ class CurlFactory implements CurlFactoryInterface unset($easy->handle); if (\count($this->handles) >= $this->maxHandles) { - if (PHP_VERSION_ID < 80000) { - \curl_close($resource); - } + \curl_close($resource); } else { // Remove all callback functions as they can hold onto references // and are not cleaned up by curl_reset. Using curl_setopt_array @@ -731,10 +729,7 @@ class CurlFactory implements CurlFactoryInterface public function __destruct() { foreach ($this->handles as $id => $handle) { - if (PHP_VERSION_ID < 80000) { - \curl_close($handle); - } - + \curl_close($handle); unset($this->handles[$id]); } } diff --git a/vendor/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php b/vendor/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php index 21abbed..73a6abe 100644 --- a/vendor/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php +++ b/vendor/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php @@ -240,10 +240,7 @@ class CurlMultiHandler $handle = $this->handles[$id]['easy']->handle; unset($this->delays[$id], $this->handles[$id]); \curl_multi_remove_handle($this->_mh, $handle); - - if (PHP_VERSION_ID < 80000) { - \curl_close($handle); - } + \curl_close($handle); return true; } diff --git a/vendor/guzzlehttp/guzzle/src/Handler/Proxy.php b/vendor/guzzlehttp/guzzle/src/Handler/Proxy.php index 9df70cf..f045b52 100644 --- a/vendor/guzzlehttp/guzzle/src/Handler/Proxy.php +++ b/vendor/guzzlehttp/guzzle/src/Handler/Proxy.php @@ -17,10 +17,10 @@ class Proxy * Sends synchronous requests to a specific handler while sending all other * requests to another handler. * - * @param callable(RequestInterface, array): PromiseInterface $default Handler used for normal responses - * @param callable(RequestInterface, array): PromiseInterface $sync Handler used for synchronous responses. + * @param callable(\Psr\Http\Message\RequestInterface, array): \GuzzleHttp\Promise\PromiseInterface $default Handler used for normal responses + * @param callable(\Psr\Http\Message\RequestInterface, array): \GuzzleHttp\Promise\PromiseInterface $sync Handler used for synchronous responses. * - * @return callable(RequestInterface, array): PromiseInterface Returns the composed handler. + * @return callable(\Psr\Http\Message\RequestInterface, array): \GuzzleHttp\Promise\PromiseInterface Returns the composed handler. */ public static function wrapSync(callable $default, callable $sync): callable { @@ -37,10 +37,10 @@ class Proxy * performance benefits of curl while still supporting true streaming * through the StreamHandler. * - * @param callable(RequestInterface, array): PromiseInterface $default Handler used for non-streaming responses - * @param callable(RequestInterface, array): PromiseInterface $streaming Handler used for streaming responses + * @param callable(\Psr\Http\Message\RequestInterface, array): \GuzzleHttp\Promise\PromiseInterface $default Handler used for non-streaming responses + * @param callable(\Psr\Http\Message\RequestInterface, array): \GuzzleHttp\Promise\PromiseInterface $streaming Handler used for streaming responses * - * @return callable(RequestInterface, array): PromiseInterface Returns the composed handler. + * @return callable(\Psr\Http\Message\RequestInterface, array): \GuzzleHttp\Promise\PromiseInterface Returns the composed handler. */ public static function wrapStreaming(callable $default, callable $streaming): callable { diff --git a/vendor/guzzlehttp/guzzle/src/Handler/StreamHandler.php b/vendor/guzzlehttp/guzzle/src/Handler/StreamHandler.php index f24921f..1d89a8f 100644 --- a/vendor/guzzlehttp/guzzle/src/Handler/StreamHandler.php +++ b/vendor/guzzlehttp/guzzle/src/Handler/StreamHandler.php @@ -53,14 +53,8 @@ class StreamHandler $request = $request->withoutHeader('Expect'); // Append a content-length header if body size is zero to match - // the behavior of `CurlHandler` - if ( - ( - 0 === \strcasecmp('PUT', $request->getMethod()) - || 0 === \strcasecmp('POST', $request->getMethod()) - ) - && 0 === $request->getBody()->getSize() - ) { + // cURL's behavior. + if (0 === $request->getBody()->getSize()) { $request = $request->withHeader('Content-Length', '0'); } @@ -333,15 +327,8 @@ class StreamHandler ); return $this->createResource( - function () use ($uri, $contextResource, $context, $options, $request) { + function () use ($uri, &$http_response_header, $contextResource, $context, $options, $request) { $resource = @\fopen((string) $uri, 'r', false, $contextResource); - - // See https://wiki.php.net/rfc/deprecations_php_8_5#deprecate_the_http_response_header_predefined_variable - if (function_exists('http_get_last_response_headers')) { - /** @var array|null */ - $http_response_header = \http_get_last_response_headers(); - } - $this->lastHeaders = $http_response_header ?? []; if (false === $resource) { diff --git a/vendor/guzzlehttp/guzzle/src/Middleware.php b/vendor/guzzlehttp/guzzle/src/Middleware.php index 9901da4..6edbb3f 100644 --- a/vendor/guzzlehttp/guzzle/src/Middleware.php +++ b/vendor/guzzlehttp/guzzle/src/Middleware.php @@ -187,12 +187,12 @@ final class Middleware * Middleware that logs requests, responses, and errors using a message * formatter. * + * @phpstan-param \Psr\Log\LogLevel::* $logLevel Level at which to log requests. + * * @param LoggerInterface $logger Logs messages. * @param MessageFormatterInterface|MessageFormatter $formatter Formatter used to create message strings. * @param string $logLevel Level at which to log requests. * - * @phpstan-param \Psr\Log\LogLevel::* $logLevel Level at which to log requests. - * * @return callable Returns a function that accepts the next handler. */ public static function log(LoggerInterface $logger, $formatter, string $logLevel = 'info'): callable diff --git a/vendor/guzzlehttp/guzzle/src/Pool.php b/vendor/guzzlehttp/guzzle/src/Pool.php index ddc304b..6277c61 100644 --- a/vendor/guzzlehttp/guzzle/src/Pool.php +++ b/vendor/guzzlehttp/guzzle/src/Pool.php @@ -86,7 +86,7 @@ class Pool implements PromisorInterface * @param ClientInterface $client Client used to send the requests * @param array|\Iterator $requests Requests to send concurrently. * @param array $options Passes through the options available in - * {@see Pool::__construct} + * {@see \GuzzleHttp\Pool::__construct} * * @return array Returns an array containing the response or an exception * in the same order that the requests were sent. diff --git a/vendor/guzzlehttp/guzzle/src/Utils.php b/vendor/guzzlehttp/guzzle/src/Utils.php index c6a5893..df52927 100644 --- a/vendor/guzzlehttp/guzzle/src/Utils.php +++ b/vendor/guzzlehttp/guzzle/src/Utils.php @@ -79,7 +79,7 @@ final class Utils * * The returned handler is not wrapped by any default middlewares. * - * @return callable(\Psr\Http\Message\RequestInterface, array): Promise\PromiseInterface Returns the best handler for the given system. + * @return callable(\Psr\Http\Message\RequestInterface, array): \GuzzleHttp\Promise\PromiseInterface Returns the best handler for the given system. * * @throws \RuntimeException if no viable Handler is available. */ diff --git a/vendor/guzzlehttp/guzzle/src/functions.php b/vendor/guzzlehttp/guzzle/src/functions.php index 9ab4b96..5edc66a 100644 --- a/vendor/guzzlehttp/guzzle/src/functions.php +++ b/vendor/guzzlehttp/guzzle/src/functions.php @@ -50,7 +50,7 @@ function debug_resource($value = null) * * The returned handler is not wrapped by any default middlewares. * - * @return callable(\Psr\Http\Message\RequestInterface, array): Promise\PromiseInterface Returns the best handler for the given system. + * @return callable(\Psr\Http\Message\RequestInterface, array): \GuzzleHttp\Promise\PromiseInterface Returns the best handler for the given system. * * @throws \RuntimeException if no viable Handler is available. * diff --git a/vendor/maennchen/zipstream-php/.gitattributes b/vendor/maennchen/zipstream-php/.gitattributes deleted file mode 100644 index e058ebd..0000000 --- a/vendor/maennchen/zipstream-php/.gitattributes +++ /dev/null @@ -1,6 +0,0 @@ -.gitignore text eol=lf -.gitattributes text eol=lf -*.md text eol=lf -*.php text eol=lf -*.yml text eol=lf -*.xml text eol=lf diff --git a/vendor/maennchen/zipstream-php/.github/CODE_OF_CONDUCT.md b/vendor/maennchen/zipstream-php/.github/CODE_OF_CONDUCT.md deleted file mode 100644 index 9d75b87..0000000 --- a/vendor/maennchen/zipstream-php/.github/CODE_OF_CONDUCT.md +++ /dev/null @@ -1,132 +0,0 @@ -# Contributor Covenant Code of Conduct - -## Our Pledge - -We as members, contributors, and leaders pledge to make participation in our -community a harassment-free experience for everyone, regardless of age, body -size, visible or invisible disability, ethnicity, sex characteristics, gender -identity and expression, level of experience, education, socio-economic status, -nationality, personal appearance, race, caste, color, religion, or sexual -identity and orientation. - -We pledge to act and interact in ways that contribute to an open, welcoming, -diverse, inclusive, and healthy community. - -## Our Standards - -Examples of behavior that contributes to a positive environment for our -community include: - -- Demonstrating empathy and kindness toward other people -- Being respectful of differing opinions, viewpoints, and experiences -- Giving and gracefully accepting constructive feedback -- Accepting responsibility and apologizing to those affected by our mistakes, - and learning from the experience -- Focusing on what is best not just for us as individuals, but for the overall - community - -Examples of unacceptable behavior include: - -- The use of sexualized language or imagery, and sexual attention or advances of - any kind -- Trolling, insulting or derogatory comments, and personal or political attacks -- Public or private harassment -- Publishing others' private information, such as a physical or email address, - without their explicit permission -- Other conduct which could reasonably be considered inappropriate in a - professional setting - -## Enforcement Responsibilities - -Community leaders are responsible for clarifying and enforcing our standards of -acceptable behavior and will take appropriate and fair corrective action in -response to any behavior that they deem inappropriate, threatening, offensive, -or harmful. - -Community leaders have the right and responsibility to remove, edit, or reject -comments, commits, code, wiki edits, issues, and other contributions that are -not aligned to this Code of Conduct, and will communicate reasons for moderation -decisions when appropriate. - -## Scope - -This Code of Conduct applies within all community spaces, and also applies when -an individual is officially representing the community in public spaces. -Examples of representing our community include using an official e-mail address, -posting via an official social media account, or acting as an appointed -representative at an online or offline event. - -## Enforcement - -Instances of abusive, harassing, or otherwise unacceptable behavior may be -reported to the community leaders responsible for enforcement at -jonatan@maennchen.ch. -All complaints will be reviewed and investigated promptly and fairly. - -All community leaders are obligated to respect the privacy and security of the -reporter of any incident. - -## Enforcement Guidelines - -Community leaders will follow these Community Impact Guidelines in determining -the consequences for any action they deem in violation of this Code of Conduct: - -### 1. Correction - -**Community Impact**: Use of inappropriate language or other behavior deemed -unprofessional or unwelcome in the community. - -**Consequence**: A private, written warning from community leaders, providing -clarity around the nature of the violation and an explanation of why the -behavior was inappropriate. A public apology may be requested. - -### 2. Warning - -**Community Impact**: A violation through a single incident or series of -actions. - -**Consequence**: A warning with consequences for continued behavior. No -interaction with the people involved, including unsolicited interaction with -those enforcing the Code of Conduct, for a specified period of time. This -includes avoiding interactions in community spaces as well as external channels -like social media. Violating these terms may lead to a temporary or permanent -ban. - -### 3. Temporary Ban - -**Community Impact**: A serious violation of community standards, including -sustained inappropriate behavior. - -**Consequence**: A temporary ban from any sort of interaction or public -communication with the community for a specified period of time. No public or -private interaction with the people involved, including unsolicited interaction -with those enforcing the Code of Conduct, is allowed during this period. -Violating these terms may lead to a permanent ban. - -### 4. Permanent Ban - -**Community Impact**: Demonstrating a pattern of violation of community -standards, including sustained inappropriate behavior, harassment of an -individual, or aggression toward or disparagement of classes of individuals. - -**Consequence**: A permanent ban from any sort of public interaction within the -community. - -## Attribution - -This Code of Conduct is adapted from the [Contributor Covenant][homepage], -version 2.1, available at -[https://www.contributor-covenant.org/version/2/1/code_of_conduct.html][v2.1]. - -Community Impact Guidelines were inspired by -[Mozilla's code of conduct enforcement ladder][mozilla coc]. - -For answers to common questions about this code of conduct, see the FAQ at -[https://www.contributor-covenant.org/faq][faq]. Translations are available at -[https://www.contributor-covenant.org/translations][translations]. - -[homepage]: https://www.contributor-covenant.org -[v2.1]: https://www.contributor-covenant.org/version/2/1/code_of_conduct.html -[mozilla coc]: https://github.com/mozilla/diversity -[faq]: https://www.contributor-covenant.org/faq -[translations]: https://www.contributor-covenant.org/translations diff --git a/vendor/maennchen/zipstream-php/.github/CONTRIBUTING.md b/vendor/maennchen/zipstream-php/.github/CONTRIBUTING.md deleted file mode 100644 index d8caee0..0000000 --- a/vendor/maennchen/zipstream-php/.github/CONTRIBUTING.md +++ /dev/null @@ -1,139 +0,0 @@ -# Contributing to ZipStream-PHP - -## Welcome! - -We look forward to your contributions! Here are some examples how you can -contribute: - -- [Report a bug](https://github.com/maennchen/ZipStream-PHP/issues/new?labels=bug&template=BUG.md) -- [Propose a new feature](https://github.com/maennchen/ZipStream-PHP/issues/new?labels=enhancement&template=FEATURE.md) -- [Send a pull request](https://github.com/maennchen/ZipStream-PHP/pulls) - -## We have a Code of Conduct - -Please note that this project is released with a -[Contributor Code of Conduct](CODE_OF_CONDUCT.md). By participating in this -project you agree to abide by its terms. - -## Any contributions you make will be under the MIT License - -When you submit code changes, your submissions are understood to be under the -same [MIT License](https://github.com/maennchen/ZipStream-PHP/blob/main/LICENSE) -that covers the project. By contributing to this project, you agree that your -contributions will be licensed under its MIT License. - -## Write bug reports with detail, background, and sample code - -In your bug report, please provide the following: - -- A quick summary and/or background -- Steps to reproduce - - Be specific! - - Give sample code if you can. -- What you expected would happen -- What actually happens -- Notes (possibly including why you think this might be happening, or stuff you -- tried that didn't work) - -Please do not report a bug for a version of ZIPStream-PHP that is no longer -supported (`< 3.0.0`). Please do not report a bug if you are using a version of -PHP that is not supported by the version of ZipStream-PHP you are using. - -Please post code and output as text -([using proper markup](https://guides.github.com/features/mastering-markdown/)). -Do not post screenshots of code or output. - -Please include the output of `composer info | sort`. - -## Workflow for Pull Requests - -1. Fork the repository. -2. Create your branch from `main` if you plan to implement new functionality or - change existing code significantly; create your branch from the oldest branch - that is affected by the bug if you plan to fix a bug. -3. Implement your change and add tests for it. -4. Ensure the test suite passes. -5. Ensure the code complies with our coding guidelines (see below). -6. Send that pull request! - -Please make sure you have -[set up your user name and email address](https://git-scm.com/book/en/v2/Getting-Started-First-Time-Git-Setup) -for use with Git. Strings such as `silly nick name ` look really -stupid in the commit history of a project. - -We encourage you to -[sign your Git commits with your GPG key](https://docs.github.com/en/github/authenticating-to-github/signing-commits). - -Pull requests for new features must be based on the `main` branch. - -We are trying to keep backwards compatibility breaks in ZipStream-PHP to a -minimum. Please take this into account when proposing changes. - -Due to time constraints, we are not always able to respond as quickly as we -would like. Please do not take delays personal and feel free to remind us if you -feel that we forgot to respond. - -## Coding Guidelines - -This project comes with a configuration file (located at `/psalm.yml` in the -repository) that you can use to perform static analysis (with a focus on type -checking): - -```bash -$ .composer run test:lint -``` - -This project comes with a configuration file (located at -`/.php-cs-fixer.dist.php` in the repository) that you can use to (re)format your -source code for compliance with this project's coding guidelines: - -```bash -$ composer run format -``` - -Please understand that we will not accept a pull request when its changes -violate this project's coding guidelines. - -## Using ZipStream-PHP from a Git checkout - -The following commands can be used to perform the initial checkout of -ZipStream-PHP: - -```bash -$ git clone git@github.com:maennchen/ZipStream-PHP.git - -$ cd ZipStream-PHP -``` - -Install ZipStream-PHP's dependencies using [Composer](https://getcomposer.org/): - -```bash -$ composer install -$ composer run install:tools # Install phpDocumentor using phive -``` - -## Running ZipStream-PHP's test suite - -After following the steps shown above, ZipStream-PHP's test suite is run like -this: - -```bash -$ composer run test:unit -``` - -There's some slow tests in the test suite that test the handling of big files in -the archives. To skip them use the following command instead: - -```bash -$ composer run test:unit:fast -``` - -## Generating ZipStream-PHP Documentation - -To generate the documentation for the library, run: - -```bash -$ composer run docs:generate -``` - -The guide documentation pages can be found in the `/guides/` directory. diff --git a/vendor/maennchen/zipstream-php/.github/FUNDING.yml b/vendor/maennchen/zipstream-php/.github/FUNDING.yml deleted file mode 100644 index 5a46127..0000000 --- a/vendor/maennchen/zipstream-php/.github/FUNDING.yml +++ /dev/null @@ -1 +0,0 @@ -github: maennchen diff --git a/vendor/maennchen/zipstream-php/.github/ISSUE_TEMPLATE/BUG.yml b/vendor/maennchen/zipstream-php/.github/ISSUE_TEMPLATE/BUG.yml deleted file mode 100644 index 0eb8cc7..0000000 --- a/vendor/maennchen/zipstream-php/.github/ISSUE_TEMPLATE/BUG.yml +++ /dev/null @@ -1,71 +0,0 @@ -name: 🐞 Bug Report -description: Something is broken? -labels: ["bug"] -body: - - type: markdown - attributes: - value: | - - Create a discussion instead if you are looking for support: - https://github.com/maennchen/ZipStream-PHP/discussions - - type: input - id: version - attributes: - label: ZipStream-PHP version - placeholder: x.y.z - validations: - required: true - - type: input - id: php-version - attributes: - label: PHP version - placeholder: x.y.z - validations: - required: true - - type: checkboxes - id: constraints - attributes: - label: Constraints for Bug Report - options: - - label: | - I'm using a version of ZipStream that is currently supported: - https://github.com/maennchen/ZipStream-PHP#version-support - required: true - - label: | - I'm using a version of PHP that has active support: - https://www.php.net/supported-versions.php - required: true - - label: | - I'm using a version of PHP that is compatible with your used - ZipStream version. - required: true - - label: | - I'm using the latest release of the used ZipStream major version. - required: true - - type: textarea - id: summary - attributes: - label: Summary - description: Provide a summary describing the problem you are experiencing. - validations: - required: true - - type: textarea - id: current-behaviour - attributes: - label: Current behavior - description: What is the current (buggy) behavior? - validations: - required: true - - type: textarea - id: reproduction - attributes: - label: How to reproduce - description: Provide steps to reproduce the bug. - validations: - required: true - - type: textarea - id: expected-behaviour - attributes: - label: Expected behavior - description: What was the expected (correct) behavior? - validations: - required: true diff --git a/vendor/maennchen/zipstream-php/.github/ISSUE_TEMPLATE/FEATURE.yml b/vendor/maennchen/zipstream-php/.github/ISSUE_TEMPLATE/FEATURE.yml deleted file mode 100644 index e5dec63..0000000 --- a/vendor/maennchen/zipstream-php/.github/ISSUE_TEMPLATE/FEATURE.yml +++ /dev/null @@ -1,11 +0,0 @@ -name: 🎉 Feature Request -description: You have a neat idea that should be implemented? -labels: ["enhancement"] -body: - - type: textarea - id: description - attributes: - label: Description - description: Provide a summary of the feature you would like to see implemented. - validations: - required: true diff --git a/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE.md b/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE.md deleted file mode 100644 index 6892c57..0000000 --- a/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE.md +++ /dev/null @@ -1,6 +0,0 @@ -Please go the the `Preview` tab and select the appropriate sub-template: - -* [🐞 Failing Test](?expand=1&template=FAILING_TEST.md) -* [🐞 Bug Fix](?expand=1&template=FIX.md) -* [⚙ Improvement](?expand=1&template=IMPROVEMENT.md) -* [🎉 New Feature](?expand=1&template=NEW_FEATURE.md) diff --git a/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/FAILING_TEST.md b/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/FAILING_TEST.md deleted file mode 100644 index 24603cb..0000000 --- a/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/FAILING_TEST.md +++ /dev/null @@ -1,13 +0,0 @@ - - - diff --git a/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/FIX.md b/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/FIX.md deleted file mode 100644 index 77f65a0..0000000 --- a/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/FIX.md +++ /dev/null @@ -1,13 +0,0 @@ - - - diff --git a/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/IMPROVEMENT.md b/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/IMPROVEMENT.md deleted file mode 100644 index 3ac8e31..0000000 --- a/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/IMPROVEMENT.md +++ /dev/null @@ -1,9 +0,0 @@ - - - diff --git a/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/NEW_FEATURE.md b/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/NEW_FEATURE.md deleted file mode 100644 index ca53939..0000000 --- a/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/NEW_FEATURE.md +++ /dev/null @@ -1,9 +0,0 @@ - - - diff --git a/vendor/maennchen/zipstream-php/.github/SECURITY.md b/vendor/maennchen/zipstream-php/.github/SECURITY.md deleted file mode 100644 index 3046c31..0000000 --- a/vendor/maennchen/zipstream-php/.github/SECURITY.md +++ /dev/null @@ -1,22 +0,0 @@ -# Security Policy - -[![OpenSSF Vulnerability Disclosure](https://img.shields.io/badge/OpenSSF-Vulnerability_Disclosure-green)](https://github.com/ossf/oss-vulnerability-guide/blob/main/finder-guide.md) -[![GitHub Report](https://img.shields.io/badge/GitHub-Security_Advisories-blue)](https://github.com/maennchen/ZipStream-PHP/security/advisories/new) -[![Email Report](https://img.shields.io/badge/Email-jonatan%40maennchen.ch-blue)](mailto:jonatan@maennchen.ch) - -This repository follows the -[OpenSSF Vulnerability Disclosure guide](https://github.com/ossf/oss-vulnerability-guide/tree/main). -You can learn more about it in the -[Finders Guide](https://github.com/ossf/oss-vulnerability-guide/blob/main/finder-guide.md). - -Please report vulnerabilities via the -[GitHub Security Vulnerability Reporting](https://github.com/maennchen/ZipStream-PHP/security/advisories/new) -or via email to [`jonatan@maennchen.ch`](mailto:jonatan@maennchen.ch) if this does -not work for you. - -Our vulnerability management team will respond within 3 working days of your -report. If the issue is confirmed as a vulnerability, we will open a Security -Advisory. This project follows a 90 day disclosure timeline. - -If you have questions about reporting security issues, email the vulnerability -management team: [`jonatan@maennchen.ch`](mailto:jonatan@maennchen.ch) diff --git a/vendor/maennchen/zipstream-php/.github/dependabot.yml b/vendor/maennchen/zipstream-php/.github/dependabot.yml deleted file mode 100644 index 9d20742..0000000 --- a/vendor/maennchen/zipstream-php/.github/dependabot.yml +++ /dev/null @@ -1,15 +0,0 @@ -version: 2 -updates: - - package-ecosystem: "composer" - directory: "/" - schedule: - interval: "daily" - - package-ecosystem: "github-actions" - directory: "/" - schedule: - interval: "weekly" - groups: - github-actions: - applies-to: version-updates - patterns: - - "*" diff --git a/vendor/maennchen/zipstream-php/.github/scorecard.yml b/vendor/maennchen/zipstream-php/.github/scorecard.yml deleted file mode 100644 index 219fc0b..0000000 --- a/vendor/maennchen/zipstream-php/.github/scorecard.yml +++ /dev/null @@ -1,14 +0,0 @@ -annotations: - - checks: - - fuzzing - reasons: - - reason: not-applicable # PHP is memory safe - - checks: - - packaging - reasons: - - reason: not-supported # Using Composer - - checks: - - signed-releases - reasons: - - reason: not-applicable # Releases are distributed via Composer - diff --git a/vendor/maennchen/zipstream-php/.github/workflows/branch_main.yml b/vendor/maennchen/zipstream-php/.github/workflows/branch_main.yml deleted file mode 100644 index 15ff278..0000000 --- a/vendor/maennchen/zipstream-php/.github/workflows/branch_main.yml +++ /dev/null @@ -1,24 +0,0 @@ -on: - push: - branches: - - "main" - -name: "Main Branch" - -permissions: - contents: read - -jobs: - test: - name: "Test" - - permissions: - contents: read - security-events: write - - uses: ./.github/workflows/part_test.yml - - docs: - name: "Docs" - - uses: ./.github/workflows/part_docs.yml diff --git a/vendor/maennchen/zipstream-php/.github/workflows/part_dependabot.yml b/vendor/maennchen/zipstream-php/.github/workflows/part_dependabot.yml deleted file mode 100644 index 20a13a2..0000000 --- a/vendor/maennchen/zipstream-php/.github/workflows/part_dependabot.yml +++ /dev/null @@ -1,30 +0,0 @@ -on: - workflow_call: {} - -name: "Dependabot" - -permissions: - contents: read - -jobs: - automerge_dependabot: - name: "Automerge PRs" - - runs-on: ubuntu-latest - - permissions: - pull-requests: write - contents: write - - steps: - - name: Harden Runner - uses: step-security/harden-runner@cb605e52c26070c328afc4562f0b4ada7618a84e # v2.10.4 - with: - egress-policy: audit - - - uses: fastify/github-action-merge-dependabot@c3bde0759d4f24db16f7b250b2122bc2df57e817 # v3.11.0 - with: - github-token: ${{ github.token }} - use-github-auto-merge: true - # Major Updates need to be merged manually - target: minor diff --git a/vendor/maennchen/zipstream-php/.github/workflows/part_docs.yml b/vendor/maennchen/zipstream-php/.github/workflows/part_docs.yml deleted file mode 100644 index 9b779eb..0000000 --- a/vendor/maennchen/zipstream-php/.github/workflows/part_docs.yml +++ /dev/null @@ -1,51 +0,0 @@ -on: - workflow_call: {} - -name: "Documentation" - -permissions: - contents: read - -jobs: - generate: - name: "Generate" - - runs-on: ubuntu-latest - - steps: - - name: Harden Runner - uses: step-security/harden-runner@cb605e52c26070c328afc4562f0b4ada7618a84e # v2.10.4 - with: - egress-policy: audit - - - name: Checkout Code - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - - name: SetUp PHP - id: setup-php - uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 # v2 - with: - php-version: "8.3" - tools: phive - - name: Cache Tools - uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0 - id: cache - with: - path: ~/.phive - key: tools-${{ runner.os }}-${{ steps.setup-php.outputs.php-version }}-${{ hashFiles('**/phars.xml') }} - restore-keys: | - tools-${{ runner.os }}-${{ steps.setup-php.outputs.php-version }}- - tools-${{ steps.setup-php.outputs.php-version }}- - tools- - - name: Install Tools - run: composer run install:tools - - name: Generate Docs - run: composer run docs:generate - - uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0 - with: - name: docs - path: docs - - name: Package for GitHub Pages - uses: actions/upload-pages-artifact@56afc609e74202658d3ffba0e8f6dda462b719fa # v3.0.1 - with: - path: docs - diff --git a/vendor/maennchen/zipstream-php/.github/workflows/part_release.yml b/vendor/maennchen/zipstream-php/.github/workflows/part_release.yml deleted file mode 100644 index 112d72a..0000000 --- a/vendor/maennchen/zipstream-php/.github/workflows/part_release.yml +++ /dev/null @@ -1,94 +0,0 @@ -on: - workflow_call: - inputs: - releaseName: - required: true - type: string - stable: - required: false - type: boolean - default: false - -name: "Release" - -permissions: - contents: read - -jobs: - create: - name: Create Release - - runs-on: ubuntu-latest - - permissions: - contents: write - - steps: - - name: Harden Runner - uses: step-security/harden-runner@cb605e52c26070c328afc4562f0b4ada7618a84e # v2.10.4 - with: - egress-policy: audit - - - name: Create prerelease - if: ${{ !inputs.stable }} - env: - GITHUB_TOKEN: ${{ github.token }} - run: | - gh release create \ - --repo ${{ github.repository }} \ - --title ${{ inputs.releaseName }} \ - --prerelease \ - --generate-notes \ - ${{ inputs.releaseName }} - - - name: Create release - if: ${{ inputs.stable }} - env: - GITHUB_TOKEN: ${{ github.token }} - run: | - gh release create \ - --repo ${{ github.repository }} \ - --title ${{ inputs.releaseName }} \ - --generate-notes \ - ${{ inputs.releaseName }} - - upload_release: - name: "Upload" - - needs: ["create"] - - runs-on: ubuntu-latest - - permissions: - id-token: write - contents: write - attestations: write - - steps: - - name: Harden Runner - uses: step-security/harden-runner@cb605e52c26070c328afc4562f0b4ada7618a84e # v2.10.4 - with: - egress-policy: audit - - - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - - uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8 - with: - name: docs - path: docs - - run: | - tar -czvf docs.tar.gz docs - - name: "Attest Documentation" - id: attestation - uses: actions/attest-build-provenance@520d128f165991a6c774bcb264f323e3d70747f4 # v2.2.0 - with: - subject-path: "docs.tar.gz" - - name: Copy Attestation - run: cp "$ATTESTATION" docs.tar.gz.sigstore - env: - ATTESTATION: "${{ steps.attestation.outputs.bundle-path }}" - - name: Upload - env: - GITHUB_TOKEN: ${{ github.token }} - run: | - gh release upload --clobber "${{ github.ref_name }}" \ - docs.tar.gz docs.tar.gz.sigstore diff --git a/vendor/maennchen/zipstream-php/.github/workflows/part_test.yml b/vendor/maennchen/zipstream-php/.github/workflows/part_test.yml deleted file mode 100644 index d4f8180..0000000 --- a/vendor/maennchen/zipstream-php/.github/workflows/part_test.yml +++ /dev/null @@ -1,181 +0,0 @@ -on: - workflow_call: - -name: "Test" - -permissions: - contents: read - -jobs: - phpunit: - name: PHPUnit (PHP ${{ matrix.php }} on ${{ matrix.os }}) - - runs-on: ${{ matrix.os }} - - continue-on-error: ${{ matrix.experimental }} - - strategy: - fail-fast: false - matrix: - php: ["8.2", "8.3", "8.4"] - os: [ubuntu-latest] - experimental: [false] - include: - - php: nightly - os: ubuntu-latest - experimental: true - - php: "8.4" - os: windows-latest - experimental: false - - php: "8.4" - os: macos-latest - experimental: false - - steps: - - name: Harden Runner - uses: step-security/harden-runner@cb605e52c26070c328afc4562f0b4ada7618a84e # v2.10.4 - with: - egress-policy: audit - - - name: Checkout Code - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - - name: SetUp PHP - id: setup-php - uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 # v2 - with: - php-version: "${{ matrix.php }}" - tools: phpunit - coverage: xdebug - extensions: xdebug,zip - - name: Get composer cache directory - id: composer-cache-common - if: "${{ runner.os != 'Windows' }}" - run: echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT - - name: Get composer cache directory - id: composer-cache-windows - if: "${{ runner.os == 'Windows' }}" - run: echo "dir=$(composer config cache-files-dir)" >> $env:GITHUB_OUTPUT - - name: Cache Deps - uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0 - id: cache - with: - path: ${{ steps.composer-cache-common.outputs.dir }}${{ steps.composer-cache-windows.outputs.dir }} - key: deps-${{ runner.os }}-${{ steps.setup-php.outputs.php-version }}-composer-${{ hashFiles('**/composer.lock') }} - restore-keys: | - deps-${{ runner.os }}-${{ steps.setup-php.outputs.php-version }}-composer- - deps-${{ runner.os }}-${{ steps.setup-php.outputs.php-version }}- - deps-${{ steps.setup-php.outputs.php-version }}- - deps- - - name: Install Deps - if: matrix.php != 'nightly' - run: composer install --prefer-dist - - name: Install Deps (ignore PHP requirement) - if: matrix.php == 'nightly' - run: composer install --prefer-dist --ignore-platform-req=php+ - - name: Run PHPUnit - run: composer run test:unit:cov - - name: Upload coverage results to Coveralls - env: - COVERALLS_REPO_TOKEN: ${{ secrets.GITHUB_TOKEN }} - COVERALLS_PARALLEL: true - COVERALLS_FLAG_NAME: ${{ runner.os }}-${{ steps.setup-php.outputs.php-version }} - run: composer run coverage:report - continue-on-error: ${{ matrix.experimental }} - - mark_coverage_done: - needs: ["phpunit"] - - runs-on: ubuntu-latest - - steps: - - name: Harden Runner - uses: step-security/harden-runner@cb605e52c26070c328afc4562f0b4ada7618a84e # v2.10.4 - with: - egress-policy: audit - - - name: Coveralls Finished - uses: coverallsapp/github-action@648a8eb78e6d50909eff900e4ec85cab4524a45b # v2.3.6 - with: - github-token: ${{ secrets.github_token }} - parallel-finished: true - - psalm: - name: Run Psalm - - runs-on: "ubuntu-latest" - - permissions: - security-events: write - - steps: - - name: Harden Runner - uses: step-security/harden-runner@cb605e52c26070c328afc4562f0b4ada7618a84e # v2.10.4 - with: - egress-policy: audit - - - name: Checkout Code - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - - name: SetUp PHP - id: setup-php - uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 # v2 - with: - php-version: "8.3" - - name: Get composer cache directory - id: composer-cache - run: echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT - - name: Cache Deps - uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0 - id: cache - with: - path: ${{ steps.composer-cache.outputs.dir }} - key: deps-${{ runner.os }}-${{ steps.setup-php.outputs.php-version }}-composer-${{ hashFiles('**/composer.lock') }} - restore-keys: | - deps-${{ runner.os }}-${{ steps.setup-php.outputs.php-version }}-composer- - deps-${{ runner.os }}-${{ steps.setup-php.outputs.php-version }}- - deps-${{ steps.setup-php.outputs.php-version }}- - deps- - - name: Install Deps - run: composer install --prefer-dist - - name: Run Psalm - run: composer run test:lint -- --report=results.sarif - - name: "Upload SARIF" - uses: github/codeql-action/upload-sarif@f6091c0113d1dcf9b98e269ee48e8a7e51b7bdd4 # v3 - with: - sarif_file: results.sarif - - php-cs: - name: Run PHP-CS - - runs-on: "ubuntu-latest" - - steps: - - name: Harden Runner - uses: step-security/harden-runner@cb605e52c26070c328afc4562f0b4ada7618a84e # v2.10.4 - with: - egress-policy: audit - - - name: Checkout Code - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - - name: SetUp PHP - id: setup-php - uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 # v2 - with: - php-version: "8.3" - - name: Get composer cache directory - id: composer-cache - run: echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT - - name: Cache Deps - uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0 - id: cache - with: - path: ${{ steps.composer-cache.outputs.dir }} - key: deps-${{ runner.os }}-${{ steps.setup-php.outputs.php-version }}-composer-${{ hashFiles('**/composer.lock') }} - restore-keys: | - deps-${{ runner.os }}-${{ steps.setup-php.outputs.php-version }}-composer- - deps-${{ runner.os }}-${{ steps.setup-php.outputs.php-version }}- - deps-${{ steps.setup-php.outputs.php-version }}- - deps- - - name: Install Deps - run: composer install --prefer-dist - - name: Run PHP-CS - run: composer run test:formatted diff --git a/vendor/maennchen/zipstream-php/.github/workflows/pr.yml b/vendor/maennchen/zipstream-php/.github/workflows/pr.yml deleted file mode 100644 index d21f398..0000000 --- a/vendor/maennchen/zipstream-php/.github/workflows/pr.yml +++ /dev/null @@ -1,50 +0,0 @@ -on: - pull_request: - branches: - - "*" - workflow_dispatch: {} - -name: "Pull Request" - -permissions: - contents: read - -jobs: - test: - name: "Test" - - permissions: - contents: read - security-events: write - - uses: ./.github/workflows/part_test.yml - - docs: - name: "Docs" - - uses: ./.github/workflows/part_docs.yml - - dependabot: - name: "Dependabot" - - if: ${{ github.actor == 'dependabot[bot]'}} - - permissions: - pull-requests: write - contents: write - - uses: ./.github/workflows/part_dependabot.yml - - dependency-review: - name: Dependency Review - runs-on: ubuntu-latest - steps: - - name: Harden Runner - uses: step-security/harden-runner@cb605e52c26070c328afc4562f0b4ada7618a84e # v2.10.4 - with: - egress-policy: audit - - - name: 'Checkout Repository' - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - - name: 'Dependency Review' - uses: actions/dependency-review-action@3b139cfc5fae8b618d3eae3675e383bb1769c019 # v4.5.0 diff --git a/vendor/maennchen/zipstream-php/.github/workflows/scorecard.yml b/vendor/maennchen/zipstream-php/.github/workflows/scorecard.yml deleted file mode 100644 index c1d08a2..0000000 --- a/vendor/maennchen/zipstream-php/.github/workflows/scorecard.yml +++ /dev/null @@ -1,78 +0,0 @@ -# This workflow uses actions that are not certified by GitHub. They are provided -# by a third-party and are governed by separate terms of service, privacy -# policy, and support documentation. - -name: Scorecard supply-chain security -on: - # For Branch-Protection check. Only the default branch is supported. See - # https://github.com/ossf/scorecard/blob/main/docs/checks.md#branch-protection - branch_protection_rule: - # To guarantee Maintained check is occasionally updated. See - # https://github.com/ossf/scorecard/blob/main/docs/checks.md#maintained - schedule: - - cron: '28 11 * * 3' - push: - branches: [ "main" ] - -# Declare default permissions as read only. -permissions: read-all - -jobs: - analysis: - name: Scorecard analysis - runs-on: ubuntu-latest - permissions: - # Needed to upload the results to code-scanning dashboard. - security-events: write - # Needed to publish results and get a badge (see publish_results below). - id-token: write - # Uncomment the permissions below if installing in a private repository. - # contents: read - # actions: read - - steps: - - name: Harden Runner - uses: step-security/harden-runner@cb605e52c26070c328afc4562f0b4ada7618a84e # v2.10.4 - with: - egress-policy: audit - - - name: "Checkout code" - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - with: - persist-credentials: false - - - name: "Run analysis" - uses: ossf/scorecard-action@62b2cac7ed8198b15735ed49ab1e5cf35480ba46 # v2.4.0 - with: - results_file: results.sarif - results_format: sarif - # (Optional) "write" PAT token. Uncomment the `repo_token` line below if: - # - you want to enable the Branch-Protection check on a *public* repository, or - # - you are installing Scorecard on a *private* repository - # To create the PAT, follow the steps in https://github.com/ossf/scorecard-action?tab=readme-ov-file#authentication-with-fine-grained-pat-optional. - # repo_token: ${{ secrets.SCORECARD_TOKEN }} - - # Public repositories: - # - Publish results to OpenSSF REST API for easy access by consumers - # - Allows the repository to include the Scorecard badge. - # - See https://github.com/ossf/scorecard-action#publishing-results. - # For private repositories: - # - `publish_results` will always be set to `false`, regardless - # of the value entered here. - publish_results: true - - # Upload the results as artifacts (optional). Commenting out will disable uploads of run results in SARIF - # format to the repository Actions tab. - - name: "Upload artifact" - uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0 - with: - name: SARIF file - path: results.sarif - retention-days: 5 - - # Upload the results to GitHub's code scanning dashboard (optional). - # Commenting out will disable upload of results to your repo's Code Scanning dashboard - - name: "Upload to code-scanning" - uses: github/codeql-action/upload-sarif@f6091c0113d1dcf9b98e269ee48e8a7e51b7bdd4 # v3.28.5 - with: - sarif_file: results.sarif diff --git a/vendor/maennchen/zipstream-php/.github/workflows/tag-beta.yml b/vendor/maennchen/zipstream-php/.github/workflows/tag-beta.yml deleted file mode 100644 index b339945..0000000 --- a/vendor/maennchen/zipstream-php/.github/workflows/tag-beta.yml +++ /dev/null @@ -1,29 +0,0 @@ -on: - push: - tags: - - "[0-9]+.[0-9]+.[0-9]+-beta.[0-9]+" - -name: "Beta Tag" - -permissions: - contents: read - -jobs: - docs: - name: "Docs" - - uses: ./.github/workflows/part_docs.yml - - release: - name: "Release" - - needs: ["docs"] - - permissions: - id-token: write - contents: write - attestations: write - - uses: ./.github/workflows/part_release.yml - with: - releaseName: "${{ github.ref_name }}" diff --git a/vendor/maennchen/zipstream-php/.github/workflows/tag-stable.yml b/vendor/maennchen/zipstream-php/.github/workflows/tag-stable.yml deleted file mode 100644 index dfc1438..0000000 --- a/vendor/maennchen/zipstream-php/.github/workflows/tag-stable.yml +++ /dev/null @@ -1,55 +0,0 @@ -on: - push: - tags: - - "[0-9]+.[0-9]+.[0-9]+" - -name: "Stable Tag" - -permissions: - contents: read - -jobs: - docs: - name: "Docs" - - uses: ./.github/workflows/part_docs.yml - - release: - name: "Release" - - needs: ["docs"] - - permissions: - id-token: write - contents: write - attestations: write - - uses: ./.github/workflows/part_release.yml - with: - releaseName: "${{ github.ref_name }}" - stable: true - - deploy_pages: - name: "Deploy to GitHub Pages" - - needs: ["release", "docs"] - - runs-on: ubuntu-latest - - permissions: - pages: write - id-token: write - - environment: - name: github-pages - url: ${{ steps.deployment.outputs.page_url }} - - steps: - - name: Harden Runner - uses: step-security/harden-runner@cb605e52c26070c328afc4562f0b4ada7618a84e # v2.10.4 - with: - egress-policy: audit - - - name: Deploy to GitHub Pages - id: deployment - uses: actions/deploy-pages@d6db90164ac5ed86f2b6aed7e0febac5b3c0c03e # v4.0.5 diff --git a/vendor/maennchen/zipstream-php/.gitignore b/vendor/maennchen/zipstream-php/.gitignore deleted file mode 100644 index e52a498..0000000 --- a/vendor/maennchen/zipstream-php/.gitignore +++ /dev/null @@ -1,12 +0,0 @@ -/composer.lock -/cov -/coverage.clover.xml -/docs -.idea -/.php-cs-fixer.cache -/.phpdoc/cache -/.phpunit.result.cache -/phpunit.xml -/.phpunit.cache -/tools -/vendor diff --git a/vendor/maennchen/zipstream-php/.phive/phars.xml b/vendor/maennchen/zipstream-php/.phive/phars.xml index c958402..569106a 100644 --- a/vendor/maennchen/zipstream-php/.phive/phars.xml +++ b/vendor/maennchen/zipstream-php/.phive/phars.xml @@ -1,4 +1,4 @@ - + diff --git a/vendor/maennchen/zipstream-php/.php-cs-fixer.dist.php b/vendor/maennchen/zipstream-php/.php-cs-fixer.dist.php index 9d47c38..3ba86a4 100644 --- a/vendor/maennchen/zipstream-php/.php-cs-fixer.dist.php +++ b/vendor/maennchen/zipstream-php/.php-cs-fixer.dist.php @@ -13,7 +13,6 @@ declare(strict_types=1); use PhpCsFixer\Config; use PhpCsFixer\Finder; -use PhpCsFixer\Runner; $finder = Finder::create() ->exclude('.github') @@ -27,8 +26,7 @@ $config = new Config(); return $config->setRules([ '@PER' => true, '@PER:risky' => true, - '@PHP83Migration' => true, - '@PHP84Migration' => true, + '@PHP81Migration' => true, '@PHPUnit84Migration:risky' => true, 'array_syntax' => ['syntax' => 'short'], 'class_attributes_separation' => true, @@ -52,6 +50,7 @@ return $config->setRules([ 'semicolon_after_instruction' => true, 'short_scalar_cast' => true, 'simplified_null_return' => true, + 'single_blank_line_before_namespace' => true, 'single_class_element_per_statement' => true, 'single_line_comment_style' => true, 'single_quote' => true, @@ -69,5 +68,4 @@ return $config->setRules([ ], ]) ->setFinder($finder) - ->setRiskyAllowed(true) - ->setParallelConfig(Runner\Parallel\ParallelConfigFactory::detect()); + ->setRiskyAllowed(true); \ No newline at end of file diff --git a/vendor/maennchen/zipstream-php/.phpdoc/template/base.html.twig b/vendor/maennchen/zipstream-php/.phpdoc/template/base.html.twig index 2a70c0a..b7507fb 100644 --- a/vendor/maennchen/zipstream-php/.phpdoc/template/base.html.twig +++ b/vendor/maennchen/zipstream-php/.phpdoc/template/base.html.twig @@ -9,7 +9,7 @@ "social": [ { "iconClass": "fab fa-github", "url": "https://github.com/maennchen/ZipStream-PHP"}, { "iconClass": "fas fa-envelope-open-text", "url": "https://github.com/maennchen/ZipStream-PHP/discussions"}, - { "iconClass": "fas fa-money-bill", "url": "https://github.com/sponsors/maennchen"}, + { "iconClass": "fas fa-money-bill", "url": "https://opencollective.com/zipstream"}, ] } %} \ No newline at end of file diff --git a/vendor/maennchen/zipstream-php/.tool-versions b/vendor/maennchen/zipstream-php/.tool-versions index 150c1ee..54f6ff0 100644 --- a/vendor/maennchen/zipstream-php/.tool-versions +++ b/vendor/maennchen/zipstream-php/.tool-versions @@ -1 +1 @@ -php 8.4.3 +php 8.2.0 diff --git a/vendor/maennchen/zipstream-php/README.md b/vendor/maennchen/zipstream-php/README.md index 1e6d679..155a265 100644 --- a/vendor/maennchen/zipstream-php/README.md +++ b/vendor/maennchen/zipstream-php/README.md @@ -4,8 +4,7 @@ [![Coverage Status](https://coveralls.io/repos/github/maennchen/ZipStream-PHP/badge.svg?branch=main)](https://coveralls.io/github/maennchen/ZipStream-PHP?branch=main) [![Latest Stable Version](https://poser.pugx.org/maennchen/zipstream-php/v/stable)](https://packagist.org/packages/maennchen/zipstream-php) [![Total Downloads](https://poser.pugx.org/maennchen/zipstream-php/downloads)](https://packagist.org/packages/maennchen/zipstream-php) -[![OpenSSF Best Practices](https://www.bestpractices.dev/projects/9524/badge)](https://www.bestpractices.dev/projects/9524) -[![OpenSSF Scorecard](https://api.scorecard.dev/projects/github.com/maennchen/ZipStream-PHP/badge)](https://scorecard.dev/viewer/?uri=github.com/maennchen/ZipStream-PHP) +[![Financial Contributors on Open Collective](https://opencollective.com/zipstream/all/badge.svg?label=financial+contributors)](https://opencollective.com/zipstream) [![License](https://img.shields.io/github/license/maennchen/zipstream-php.svg)](LICENSE) ## Unstable Branch @@ -15,17 +14,13 @@ version. ## Overview -A fast and simple streaming zip file downloader for PHP. Using this library will -save you from having to write the Zip to disk. You can directly send it to the -user, which is much faster. It can work with S3 buckets or any PSR7 Stream. +A fast and simple streaming zip file downloader for PHP. Using this library will save you from having to write the Zip to disk. You can directly send it to the user, which is much faster. It can work with S3 buckets or any PSR7 Stream. Please see the [LICENSE](LICENSE) file for licensing and warranty information. ## Installation -Simply add a dependency on maennchen/zipstream-php to your project's -`composer.json` file if you use Composer to manage the dependencies of your -project. Use following command to add the package to your project's dependencies: +Simply add a dependency on maennchen/zipstream-php to your project's composer.json file if you use Composer to manage the dependencies of your project. Use following command to add the package to your project's dependencies: ```bash composer require maennchen/zipstream-php @@ -34,120 +29,51 @@ composer require maennchen/zipstream-php ## Usage For detailed instructions, please check the -[Documentation](https://maennchen.github.io/ZipStream-PHP/). +[Documentation](https://maennchen.dev/ZipStream-PHP/). + +Here's a simple example: ```php // Autoload the dependencies require 'vendor/autoload.php'; -// create a new zipstream object -$zip = new ZipStream\ZipStream( - outputName: 'example.zip', +// enable output of HTTP headers +$options = new ZipStream\Option\Archive(); +$options->setSendHttpHeaders(true); - // enable output of HTTP headers - sendHttpHeaders: true, -); +// create a new zipstream object +$zip = new ZipStream\ZipStream('example.zip', $options); // create a file named 'hello.txt' -$zip->addFile( - fileName: 'hello.txt', - data: 'This is the contents of hello.txt', -); +$zip->addFile('hello.txt', 'This is the contents of hello.txt'); // add a file named 'some_image.jpg' from a local file 'path/to/image.jpg' -$zip->addFileFromPath( - fileName: 'some_image.jpg', - path: 'path/to/image.jpg', -); +$zip->addFileFromPath('some_image.jpg', 'path/to/image.jpg'); // finish the zip stream $zip->finish(); ``` -## Upgrade to version 3.1.2 - -- Minimum PHP Version: `8.2` - -## Upgrade to version 3.0.0 - -### General - -- Minimum PHP Version: `8.1` -- Only 64bit Architecture is supported. -- The class `ZipStream\Option\Method` has been replaced with the enum - `ZipStream\CompressionMethod`. -- Most clases have been flagged as `@internal` and should not be used from the - outside. - If you're using internal resources to extend this library, please open an - issue so that a clean interface can be added & published. - The externally available classes & enums are: - - `ZipStream\CompressionMethod` - - `ZipStream\Exception*` - - `ZipStream\ZipStream` - -### Archive Options - -- The class `ZipStream\Option\Archive` has been replaced in favor of named - arguments in the `ZipStream\ZipStream` constuctor. -- The archive options `largeFileSize` & `largeFileMethod` has been removed. If - you want different `compressionMethods` based on the file size, you'll have to - implement this yourself. -- The archive option `httpHeaderCallback` changed the type from `callable` to - `Closure`. -- The archive option `zeroHeader` has been replaced with the option - `defaultEnableZeroHeader` and can be overridden for every file. Its default - value changed from `false` to `true`. -- The archive option `statFiles` was removed since the library no longer checks - filesizes this way. -- The archive option `deflateLevel` has been replaced with the option - `defaultDeflateLevel` and can be overridden for every file. -- The first argument (`name`) of the `ZipStream\ZipStream` constuctor has been - replaced with the named argument `outputName`. -- Headers are now also sent if the `outputName` is empty. If you do not want to - automatically send http headers, set `sendHttpHeaders` to `false`. - -### File Options - -- The class `ZipStream\Option\File` has been replaced in favor of named - arguments in the `ZipStream\ZipStream->addFile*` functions. -- The file option `method` has been renamed to `compressionMethod`. -- The file option `time` has been renamed to `lastModificationDateTime`. -- The file option `size` has been renamed to `maxSize`. - ## Upgrade to version 2.0.0 -https://github.com/maennchen/ZipStream-PHP/tree/2.0.0#upgrade-to-version-200 +- Only the self opened streams will be closed (#139) + If you were relying on ZipStream to close streams that the library didn't open, + you'll need to close them yourself now. ## Upgrade to version 1.0.0 -https://github.com/maennchen/ZipStream-PHP/tree/2.0.0#upgrade-to-version-100 +- All options parameters to all function have been moved from an `array` to structured option objects. See [the wiki](https://github.com/maennchen/ZipStream-PHP/wiki/Available-options) for examples. +- The whole library has been refactored. The minimal PHP requirement has been raised to PHP 7.1. + +## Usage with Symfony and S3 + +You can find example code on [the wiki](https://github.com/maennchen/ZipStream-PHP/wiki/Symfony-example). ## Contributing ZipStream-PHP is a collaborative project. Please take a look at the [.github/CONTRIBUTING.md](.github/CONTRIBUTING.md) file. -## Version Support - -Versions are supported according to the table below. - -Please do not open any pull requests contradicting the current version support -status. - -Careful: Always check the `README` on `main` for up-to-date information. - -| Version | New Features | Bugfixes | Security | -|---------|--------------|----------|----------| -| *3* | ✓ | ✓ | ✓ | -| *2* | ✗ | ✗ | ✓ | -| *1* | ✗ | ✗ | ✗ | -| *0* | ✗ | ✗ | ✗ | - -This library aligns itself with the PHP core support. New features and bugfixes -will only target PHP versions according to their current status. - -See: https://www.php.net/supported-versions.php - ## About the Authors - Paul Duncan - https://pablotron.org/ @@ -155,3 +81,34 @@ See: https://www.php.net/supported-versions.php - Jesse G. Donat - https://donatstudios.com - Nicolas CARPi - https://www.deltablot.com - Nik Barham - https://www.brokencube.co.uk + +## Contributors + +### Code Contributors + +This project exists thanks to all the people who contribute. +[[Contribute](.github/CONTRIBUTING.md)]. + + +### Financial Contributors + +Become a financial contributor and help us sustain our community. [[Contribute](https://opencollective.com/zipstream/contribute)] + +#### Individuals + + + +#### Organizations + +Support this project with your organization. Your logo will show up here with a link to your website. [[Contribute](https://opencollective.com/zipstream/contribute)] + + + + + + + + + + + diff --git a/vendor/maennchen/zipstream-php/composer.json b/vendor/maennchen/zipstream-php/composer.json index 6ecd503..2746da1 100644 --- a/vendor/maennchen/zipstream-php/composer.json +++ b/vendor/maennchen/zipstream-php/composer.json @@ -22,42 +22,28 @@ } ], "require": { - "php-64bit": "^8.2", + "php": "^8.0", "ext-mbstring": "*", - "ext-zlib": "*" + "psr/http-message": "^1.0", + "myclabs/php-enum": "^1.5" }, "require-dev": { - "phpunit/phpunit": "^11.0", - "guzzlehttp/guzzle": "^7.5", + "phpunit/phpunit": "^8.5.8 || ^9.4.2", + "guzzlehttp/guzzle": "^6.5.3 || ^7.2.0", "ext-zip": "*", "mikey179/vfsstream": "^1.6", - "php-coveralls/php-coveralls": "^2.5", - "friendsofphp/php-cs-fixer": "^3.16", - "vimeo/psalm": "^6.0", - "brianium/paratest": "^7.7" - }, - "suggest": { - "psr/http-message": "^2.0", - "guzzlehttp/psr7": "^2.4" + "vimeo/psalm": "^5.0", + "php-coveralls/php-coveralls": "^2.4", + "friendsofphp/php-cs-fixer": "^3.9" }, "scripts": { - "format": "php-cs-fixer fix", - "test": [ - "@test:unit", - "@test:formatted", - "@test:lint" - ], - "test:unit:setup-cov": "@putenv XDEBUG_MODE=coverage", - "test:unit": "paratest --functional", - "test:unit:cov": ["@test:unit:setup-cov", "@test:unit --coverage-clover=coverage.clover.xml --coverage-html cov"], - "test:unit:slow": "@test:unit --group slow", - "test:unit:slow:cov": ["@test:unit:setup-cov", "@test:unit --coverage-clover=coverage.clover.xml --coverage-html cov --group slow"], - "test:unit:fast": "@test:unit --exclude-group slow", - "test:unit:fast:cov": ["@test:unit:setup-cov", "@test:unit --coverage-clover=coverage.clover.xml --coverage-html cov --exclude-group slow"], - "test:formatted": "@format --dry-run --stop-on-violation --using-cache=no", - "test:lint": "psalm --stats --show-info=true --find-unused-psalm-suppress", + "format": "PHP_CS_FIXER_IGNORE_ENV=true php-cs-fixer fix", + "test": "composer run test:unit && composer run test:formatted && composer run test:lint", + "test:unit": "phpunit --coverage-clover=coverage.clover.xml --coverage-html cov", + "test:formatted": "composer run format -- --dry-run --stop-on-violation --using-cache=no", + "test:lint": "psalm --stats --show-info --find-unused-psalm-suppress", "coverage:report": "php-coveralls --coverage_clover=coverage.clover.xml --json_path=coveralls-upload.json --insecure", - "install:tools": "phive install --trust-gpg-keys 0x67F861C3D889C656 --trust-gpg-keys 0x8AC0BAA79732DD42", + "install:tools": "phive install --trust-gpg-keys 0x67F861C3D889C656", "docs:generate": "tools/phpdocumentor --sourcecode" }, "autoload": { @@ -65,9 +51,6 @@ "ZipStream\\": "src/" } }, - "autoload-dev": { - "psr-4": { "ZipStream\\Test\\": "test/" } - }, "archive": { "exclude": [ "/composer.lock", diff --git a/vendor/maennchen/zipstream-php/guides/ContentLength.rst b/vendor/maennchen/zipstream-php/guides/ContentLength.rst index 21fea34..e51e692 100644 --- a/vendor/maennchen/zipstream-php/guides/ContentLength.rst +++ b/vendor/maennchen/zipstream-php/guides/ContentLength.rst @@ -1,47 +1,79 @@ Adding Content-Length header ============= -Adding a ``Content-Length`` header for ``ZipStream`` can be achieved by -using the options ``SIMULATION_STRICT`` or ``SIMULATION_LAX`` in the -``operationMode`` parameter. +Adding a ``Content-Length`` header for ``ZipStream`` is not trivial since the +size is not known beforehand. -In the ``SIMULATION_STRICT`` mode, ``ZipStream`` will not allow to calculate the -size based on reading the whole file. ``SIMULATION_LAX`` will read the whole -file if neccessary. - -``SIMULATION_STRICT`` is therefore useful to make sure that the size can be -calculated efficiently. +The following workaround adds an approximated header: .. code-block:: php - use ZipStream\OperationMode; - use ZipStream\ZipStream; - $zip = new ZipStream( - operationMode: OperationMode::SIMULATE_STRICT, // or SIMULATE_LAX - defaultEnableZeroHeader: false, - sendHttpHeaders: true, - outputStream: $stream, - ); + class Zip + { + /** @var string */ + private $name; - // Normally add files - $zip->addFile('sample.txt', 'Sample String Data'); + private $files = []; - // Use addFileFromCallback and exactSize if you want to defer opening of - // the file resource - $zip->addFileFromCallback( - 'sample.txt', - exactSize: 18, - callback: function () { - return fopen('...'); + public function __construct($name) + { + $this->name = $name; } - ); - // Read resulting file size - $size = $zip->finish(); - - // Tell it to the browser - header('Content-Length: '. $size); - - // Execute the Simulation and stream the actual zip to the client - $zip->executeSimulation(); + public function addFile($name, $data) + { + $this->files[] = ['type' => 'addFile', 'name' => $name, 'data' => $data]; + } + public function addFileFromPath($name, $path) + { + $this->files[] = ['type' => 'addFileFromPath', 'name' => $name, 'path' => $path]; + } + + public function getEstimate() + { + $estimate = 22; + foreach ($this->files as $file) { + $estimate += 76 + 2 * strlen($file['name']); + if ($file['type'] === 'addFile') { + $estimate += strlen($file['data']); + } + if ($file['type'] === 'addFileFromPath') { + $estimate += filesize($file['path']); + } + } + return $estimate; + } + + public function finish() + { + header('Content-Length: ' . $this->getEstimate()); + $options = new \ZipStream\Option\Archive(); + $options->setSendHttpHeaders(true); + $options->setEnableZip64(false); + $options->setDeflateLevel(-1); + $zip = new \ZipStream\ZipStream($this->name, $options); + + $fileOptions = new \ZipStream\Option\File(); + $fileOptions->setMethod(\ZipStream\Option\Method::STORE()); + foreach ($this->files as $file) { + if ($file['type'] === 'addFile') { + $zip->addFile($file['name'], $file['data'], $fileOptions); + } + if ($file['type'] === 'addFileFromPath') { + $zip->addFileFromPath($file['name'], $file['path'], $fileOptions); + } + } + $zip->finish(); + exit; + } + } + +It only works with the following constraints: + +- All file content is known beforehand. +- Content Deflation is disabled + +Thanks to +`partiellkorrekt `_ +for this workaround. \ No newline at end of file diff --git a/vendor/maennchen/zipstream-php/guides/FlySystem.rst b/vendor/maennchen/zipstream-php/guides/FlySystem.rst index 4e6c6fb..0243f24 100644 --- a/vendor/maennchen/zipstream-php/guides/FlySystem.rst +++ b/vendor/maennchen/zipstream-php/guides/FlySystem.rst @@ -14,21 +14,20 @@ default one, and pass it to Flysystem ``putStream`` method. // the content is lost when closing the stream / opening another one $tempStream = fopen('php://memory', 'w+'); + // Init Options + $zipStreamOptions = new Archive(); + $zipStreamOptions->setOutputStream($tempStream); + // Create Zip Archive - $zipStream = new ZipStream( - outputStream: $tempStream, - outputName: 'test.zip', - ); + $zipStream = new ZipStream('test.zip', $zipStreamOptions); $zipStream->addFile('test.txt', 'text'); $zipStream->finish(); - // Store File - // (see Flysystem documentation, and all its framework integration) - // Can be any adapter (AWS, Google, Ftp, etc.) - $adapter = new Local(__DIR__.'/path/to/folder'); + // Store File (see Flysystem documentation, and all its framework integration) + $adapter = new Local(__DIR__.'/path/to/folder'); // Can be any adapter (AWS, Google, Ftp, etc.) $filesystem = new Filesystem($adapter); - $filesystem->writeStream('test.zip', $tempStream) + $filesystem->putStream('test.zip', $tempStream) // Close Stream - fclose($tempStream); + fclose($tempStream); \ No newline at end of file diff --git a/vendor/maennchen/zipstream-php/guides/Options.rst b/vendor/maennchen/zipstream-php/guides/Options.rst index 5e92e94..eabaa6f 100644 --- a/vendor/maennchen/zipstream-php/guides/Options.rst +++ b/vendor/maennchen/zipstream-php/guides/Options.rst @@ -2,65 +2,60 @@ Available options =============== Here is the full list of options available to you. You can also have a look at -``src/ZipStream.php`` file. +``src/Option/Archive.php`` file. + +First, an instance of ``ZipStream\Option\Archive`` needs to be created, and +after that you use setters methods to modify the values. .. code-block:: php - use ZipStream\ZipStream; + use ZipStream\Option\Archive as ArchiveOptions; require_once 'vendor/autoload.php'; - $zip = new ZipStream( - // Define output stream - // (argument is eiter a resource or implementing - // `Psr\Http\Message\StreamInterface`) - // - // Setup with `psr/http-message` & `guzzlehttp/psr7` dependencies - // required when using `Psr\Http\Message\StreamInterface`. - outputStream: $filePointer, + $opt = new ArchiveOptions(); - // Set the deflate level (default is 6; use -1 to disable it) - defaultDeflateLevel: 6, + // Define output stream (argument is of type resource) + $opt->setOutputStream($fd); - // Add a comment to the zip file - comment: 'This is a comment.', + // Set the deflate level (default is 6; use -1 to disable it) + $opt->setDeflateLevel(6); - // Send http headers (default is true) - sendHttpHeaders: false, + // Add a comment to the zip file + $opt->setComment('This is a comment.'); - // HTTP Content-Disposition. - // Defaults to 'attachment', where FILENAME is the specified filename. - // Note that this does nothing if you are not sending HTTP headers. - contentDisposition: 'attachment', + // Size, in bytes, of the largest file to try and load into memory (used by addFileFromPath()). Large files may also be compressed differently; see the 'largeFileMethod' option. + $opt->setLargeFileSize(30000000); - // Output Name for HTTP Content-Disposition - // Defaults to no name - outputName: "example.zip", + // How to handle large files. Legal values are STORE (the default), or DEFLATE. Store sends the file raw and is significantly faster, while DEFLATE compresses the file and is much, much slower. Note that deflate must compress the file twice and is extremely slow. + $opt->setLargeFileMethod(ZipStream\Option\Method::STORE()); + $opt->setLargeFileMethod(ZipStream\Option\Method::DEFLATE()); - // HTTP Content-Type. - // Defaults to 'application/x-zip'. - // Note that this does nothing if you are not sending HTTP headers. - contentType: 'application/x-zip', + // Send http headers (default is false) + $opt->setSendHttpHeaders(false); - // Set the function called for setting headers. - // Default is the `header()` of PHP - httpHeaderCallback: header(...), + // HTTP Content-Disposition. Defaults to 'attachment', where FILENAME is the specified filename. Note that this does nothing if you are not sending HTTP headers. + $opt->setContentDisposition('attachment'); - // Enable streaming files with single read where general purpose bit 3 - // indicates local file header contain zero values in crc and size - // fields, these appear only after file contents in data descriptor - // block. - // Set to true if your input stream is remote - // (used with addFileFromStream()). - // Default is false. - defaultEnableZeroHeader: false, + // Set the content type (does nothing if you are not sending HTTP headers) + $opt->setContentType('application/x-zip'); - // Enable zip64 extension, allowing very large archives - // (> 4Gb or file count > 64k) - // Default is true - enableZip64: true, + // Set the function called for setting headers. Default is the `header()` of PHP + $opt->setHttpHeaderCallback('header'); - // Flush output buffer after every write - // Default is false - flushOutput: true, - ); + // Enable streaming files with single read where general purpose bit 3 indicates local file header contain zero values in crc and size fields, these appear only after file contents in data descriptor block. Default is false. Set to true if your input stream is remote (used with addFileFromStream()). + $opt->setZeroHeader(false); + + // Enable reading file stat for determining file size. When a 32-bit system reads file size that is over 2 GB, invalid value appears in file size due to integer overflow. Should be disabled on 32-bit systems with method addFileFromPath if any file may exceed 2 GB. In this case file will be read in blocks and correct size will be determined from content. Default is true. + $opt->setStatFiles(true); + + // Enable zip64 extension, allowing very large archives (> 4Gb or file count > 64k) + // default is true + $opt->setEnableZip64(true); + + // Flush output buffer after every write + // default is false + $opt->setFlushOutput(true); + + // Now that everything is set you can pass the options to the ZipStream instance + $zip = new ZipStream('example.zip', $opt); diff --git a/vendor/maennchen/zipstream-php/guides/PSR7Streams.rst b/vendor/maennchen/zipstream-php/guides/PSR7Streams.rst index 22af71d..4b4ca4b 100644 --- a/vendor/maennchen/zipstream-php/guides/PSR7Streams.rst +++ b/vendor/maennchen/zipstream-php/guides/PSR7Streams.rst @@ -12,10 +12,7 @@ Example --------------- .. code-block:: php - + $stream = $response->getBody(); // add a file named 'streamfile.txt' from the content of the stream - $zip->addFileFromPsr7Stream( - fileName: 'streamfile.txt', - stream: $stream, - ); + $zip->addFileFromPsr7Stream('streamfile.txt', $stream); diff --git a/vendor/maennchen/zipstream-php/guides/StreamOutput.rst b/vendor/maennchen/zipstream-php/guides/StreamOutput.rst index 9f3165b..1a0495f 100644 --- a/vendor/maennchen/zipstream-php/guides/StreamOutput.rst +++ b/vendor/maennchen/zipstream-php/guides/StreamOutput.rst @@ -5,9 +5,9 @@ Stream to S3 Bucket --------------- .. code-block:: php - use Aws\S3\S3Client; use Aws\Credentials\CredentialProvider; + use ZipStream\Option\Archive; use ZipStream\ZipStream; $bucket = 'your bucket name'; @@ -21,19 +21,13 @@ Stream to S3 Bucket $zipFile = fopen("s3://$bucket/example.zip", 'w'); - $zip = new ZipStream( - enableZip64: false, - outputStream: $zipFile, - ); + $options = new Archive(); + $options->setEnableZip64(false); + $options->setOutputStream($zipFile); - $zip->addFile( - fileName: 'file1.txt', - data: 'File1 data', - ); - $zip->addFile( - fileName: 'file2.txt', - data: 'File2 data', - ); + $zip = new ZipStream(null, $options); + $zip->addFile('file1.txt', 'File1 data'); + $zip->addFile('file2.txt', 'File2 data'); $zip->finish(); - fclose($zipFile); + fclose($zipFile); \ No newline at end of file diff --git a/vendor/maennchen/zipstream-php/guides/Symfony.rst b/vendor/maennchen/zipstream-php/guides/Symfony.rst index 902552c..18f9059 100644 --- a/vendor/maennchen/zipstream-php/guides/Symfony.rst +++ b/vendor/maennchen/zipstream-php/guides/Symfony.rst @@ -31,7 +31,7 @@ stored in an AWS S3 bucket by key: */ public function zipStreamAction() { - // sample test file on s3 + //sample test file on s3 $s3keys = array( "ziptestfolder/file1.txt" ); @@ -39,18 +39,18 @@ stored in an AWS S3 bucket by key: $s3Client = $this->get('app.amazon.s3'); //s3client service $s3Client->registerStreamWrapper(); //required - // using StreamedResponse to wrap ZipStream functionality - // for files on AWS s3. + //using StreamedResponse to wrap ZipStream functionality for files on AWS s3. $response = new StreamedResponse(function() use($s3keys, $s3Client) { // Define suitable options for ZipStream Archive. + $options = new \ZipStream\Option\Archive(); + $options->setContentType('application/octet-stream'); // this is needed to prevent issues with truncated zip files + $options->setZeroHeader(true); + $options->setComment('test zip file.'); + //initialise zipstream with output zip filename and options. - $zip = new ZipStream\ZipStream( - outputName: 'test.zip', - defaultEnableZeroHeader: true, - contentType: 'application/octet-stream', - ); + $zip = new ZipStream\ZipStream('test.zip', $options); //loop keys - useful for multiple files foreach ($s3keys as $key) { @@ -58,19 +58,15 @@ stored in an AWS S3 bucket by key: //file using the same name. $fileName = basename($key); - // concatenate s3path. - // replace with your bucket name or get from parameters file. - $bucket = 'bucketname'; + //concatenate s3path. + $bucket = 'bucketname'; //replace with your bucket name or get from parameters file. $s3path = "s3://" . $bucket . "/" . $key; //addFileFromStream if ($streamRead = fopen($s3path, 'r')) { - $zip->addFileFromStream( - fileName: $fileName, - stream: $streamRead, - ); + $zip->addFileFromStream($fileName, $streamRead); } else { - die('Could not open stream for reading'); + die('Could not open stream for reading'); } } @@ -127,4 +123,4 @@ You need to add correct permissions 's3' => ['ACL' => 'public-read'], ]); - fopen($path, 'w', null, $outputContext); + fopen($path, 'w', null, $outputContext); \ No newline at end of file diff --git a/vendor/maennchen/zipstream-php/guides/index.rst b/vendor/maennchen/zipstream-php/guides/index.rst index 48f465a..67f504b 100644 --- a/vendor/maennchen/zipstream-php/guides/index.rst +++ b/vendor/maennchen/zipstream-php/guides/index.rst @@ -22,20 +22,11 @@ Installation Simply add a dependency on ``maennchen/zipstream-php`` to your project's ``composer.json`` file if you use Composer to manage the dependencies of your -project. Use following command to add the package to your project's -dependencies: +project. Use following command to add the package to your project's dependencies: .. code-block:: sh composer require maennchen/zipstream-php -If you want to use``addFileFromPsr7Stream``` -(``Psr\Http\Message\StreamInterface``) or use a stream instead of a -``resource`` as ``outputStream``, the following dependencies must be installed -as well: - -.. code-block:: sh - composer require psr/http-message guzzlehttp/psr7 - If ``composer install`` yields the following error, your installation is missing the `mbstring extension `_, either `install it `_ @@ -61,42 +52,25 @@ Here's a simple example: // Autoload the dependencies require 'vendor/autoload.php'; - // create a new zipstream object - $zip = new ZipStream\ZipStream( - outputName: 'example.zip', + // enable output of HTTP headers + $options = new ZipStream\Option\Archive(); + $options->setSendHttpHeaders(true); - // enable output of HTTP headers - sendHttpHeaders: true, - ); + // create a new zipstream object + $zip = new ZipStream\ZipStream('example.zip', $options); // create a file named 'hello.txt' - $zip->addFile( - fileName: 'hello.txt', - data: 'This is the contents of hello.txt', - ); + $zip->addFile('hello.txt', 'This is the contents of hello.txt'); // add a file named 'some_image.jpg' from a local file 'path/to/image.jpg' - $zip->addFileFromPath( - fileName: 'some_image.jpg', - path: 'path/to/image.jpg', - ); + $zip->addFileFromPath('some_image.jpg', 'path/to/image.jpg'); // add a file named 'goodbye.txt' from an open stream resource - $filePointer = tmpfile(); - fwrite($filePointer, 'The quick brown fox jumped over the lazy dog.'); - rewind($filePointer); - $zip->addFileFromStream( - fileName: 'goodbye.txt', - stream: $filePointer, - ); - fclose($filePointer); - - // add a file named 'streamfile.txt' from the body of a `guzzle` response - // Setup with `psr/http-message` & `guzzlehttp/psr7` dependencies required. - $zip->addFileFromPsr7Stream( - fileName: 'streamfile.txt', - stream: $response->getBody(), - ); + $fp = tmpfile(); + fwrite($fp, 'The quick brown fox jumped over the lazy dog.'); + rewind($fp); + $zip->addFileFromStream('goodbye.txt', $fp); + fclose($fp); // finish the zip stream $zip->finish(); @@ -113,7 +87,7 @@ The native Mac OS archive extraction tool prior to macOS 10.15 might not open archives in some conditions. A workaround is to disable the Zip64 feature with the option ``enableZip64: false``. This limits the archive to 4 Gb and 64k files but will allow users on macOS 10.14 and below to open them without issue. -See `#116 `_. +See `#116 `_. The linux ``unzip`` utility might not handle properly unicode characters. It is recommended to extract with another tool like diff --git a/vendor/maennchen/zipstream-php/phpunit.xml.dist b/vendor/maennchen/zipstream-php/phpunit.xml.dist index 1b02a3a..8a2f318 100644 --- a/vendor/maennchen/zipstream-php/phpunit.xml.dist +++ b/vendor/maennchen/zipstream-php/phpunit.xml.dist @@ -1,15 +1,14 @@ - - + + + + src + + test - - - src - - diff --git a/vendor/maennchen/zipstream-php/psalm.xml b/vendor/maennchen/zipstream-php/psalm.xml index 56af0e6..4e4c4f6 100644 --- a/vendor/maennchen/zipstream-php/psalm.xml +++ b/vendor/maennchen/zipstream-php/psalm.xml @@ -1,25 +1,53 @@ - + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/vendor/maennchen/zipstream-php/src/Bigint.php b/vendor/maennchen/zipstream-php/src/Bigint.php new file mode 100644 index 0000000..f2565e9 --- /dev/null +++ b/vendor/maennchen/zipstream-php/src/Bigint.php @@ -0,0 +1,174 @@ +fillBytes($value, 0, 8); + } + + /** + * Get an instance + * + * @param int $value + * @return Bigint + */ + public static function init(int $value = 0): self + { + return new self($value); + } + + /** + * Fill bytes from low to high + * + * @param int $low + * @param int $high + * @return Bigint + */ + public static function fromLowHigh(int $low, int $high): self + { + $bigint = new self(); + $bigint->fillBytes($low, 0, 4); + $bigint->fillBytes($high, 4, 4); + return $bigint; + } + + /** + * Get high 32 + * + * @return int + */ + public function getHigh32(): int + { + return $this->getValue(4, 4); + } + + /** + * Get value from bytes array + * + * @param int $end + * @param int $length + * @return int + */ + public function getValue(int $end = 0, int $length = 8): int + { + $result = 0; + for ($i = $end + $length - 1; $i >= $end; $i--) { + $result <<= 8; + $result |= $this->bytes[$i]; + } + return $result; + } + + /** + * Get low FF + * + * @param bool $force + * @return float + */ + public function getLowFF(bool $force = false): float + { + if ($force || $this->isOver32()) { + return (float)0xFFFFFFFF; + } + return (float)$this->getLow32(); + } + + /** + * Check if is over 32 + * + * @psalm-suppress ArgumentTypeCoercion + * @param bool $force + * @return bool + */ + public function isOver32(bool $force = false): bool + { + // value 0xFFFFFFFF already needs a Zip64 header + return $force || + max(array_slice($this->bytes, 4, 4)) > 0 || + min(array_slice($this->bytes, 0, 4)) === 0xFF; + } + + /** + * Get low 32 + * + * @return int + */ + public function getLow32(): int + { + return $this->getValue(0, 4); + } + + /** + * Get hexadecimal + * + * @return string + */ + public function getHex64(): string + { + $result = '0x'; + for ($i = 7; $i >= 0; $i--) { + $result .= sprintf('%02X', $this->bytes[$i]); + } + return $result; + } + + /** + * Add + * + * @param Bigint $other + * @return Bigint + */ + public function add(self $other): self + { + $result = clone $this; + $overflow = false; + for ($i = 0; $i < 8; $i++) { + $result->bytes[$i] += $other->bytes[$i]; + if ($overflow) { + $result->bytes[$i]++; + $overflow = false; + } + if ($result->bytes[$i] & 0x100) { + $overflow = true; + $result->bytes[$i] &= 0xFF; + } + } + if ($overflow) { + throw new OverflowException(); + } + return $result; + } + + /** + * Fill the bytes field with int + * + * @param int $value + * @param int $start + * @param int $count + * @return void + */ + protected function fillBytes(int $value, int $start, int $count): void + { + for ($i = 0; $i < $count; $i++) { + $this->bytes[$start + $i] = $i >= PHP_INT_SIZE ? 0 : $value & 0xFF; + $value >>= 8; + } + } +} diff --git a/vendor/maennchen/zipstream-php/src/CentralDirectoryFileHeader.php b/vendor/maennchen/zipstream-php/src/CentralDirectoryFileHeader.php deleted file mode 100644 index ffcfc6e..0000000 --- a/vendor/maennchen/zipstream-php/src/CentralDirectoryFileHeader.php +++ /dev/null @@ -1,52 +0,0 @@ -value), - new PackField(format: 'V', value: Time::dateTimeToDosTime($lastModificationDateTime)), - new PackField(format: 'V', value: $crc32), - new PackField(format: 'V', value: $compressedSize), - new PackField(format: 'V', value: $uncompressedSize), - new PackField(format: 'v', value: strlen($fileName)), - new PackField(format: 'v', value: strlen($extraField)), - new PackField(format: 'v', value: strlen($fileComment)), - new PackField(format: 'v', value: $diskNumberStart), - new PackField(format: 'v', value: $internalFileAttributes), - new PackField(format: 'V', value: $externalFileAttributes), - new PackField(format: 'V', value: $relativeOffsetOfLocalHeader), - ) . $fileName . $extraField . $fileComment; - } -} diff --git a/vendor/maennchen/zipstream-php/src/CompressionMethod.php b/vendor/maennchen/zipstream-php/src/CompressionMethod.php deleted file mode 100644 index 51e4363..0000000 --- a/vendor/maennchen/zipstream-php/src/CompressionMethod.php +++ /dev/null @@ -1,106 +0,0 @@ -format(DateTimeInterface::ATOM) . " can't be represented as DOS time / date."); - } -} diff --git a/vendor/maennchen/zipstream-php/src/Exception/EncodingException.php b/vendor/maennchen/zipstream-php/src/Exception/EncodingException.php new file mode 100644 index 0000000..5b0267d --- /dev/null +++ b/vendor/maennchen/zipstream-php/src/Exception/EncodingException.php @@ -0,0 +1,14 @@ +resource = $resource; - parent::__construct('Function ' . $function . 'failed on resource.'); - } -} diff --git a/vendor/maennchen/zipstream-php/src/Exception/SimulationFileUnknownException.php b/vendor/maennchen/zipstream-php/src/Exception/SimulationFileUnknownException.php deleted file mode 100644 index 717c1aa..0000000 --- a/vendor/maennchen/zipstream-php/src/Exception/SimulationFileUnknownException.php +++ /dev/null @@ -1,19 +0,0 @@ -fileName = self::filterFilename($fileName); - $this->checkEncoding(); + public $opt; - if ($this->enableZeroHeader) { - $this->generalPurposeBitFlag |= GeneralPurposeBitFlag::ZERO_HEADER; - } + /** + * @var Bigint + */ + public $len; - $this->version = $this->compressionMethod === CompressionMethod::DEFLATE ? Version::DEFLATE : Version::STORE; + /** + * @var Bigint + */ + public $zlen; + + /** @var int */ + public $crc; + + /** + * @var Bigint + */ + public $hlen; + + /** + * @var Bigint + */ + public $ofs; + + /** + * @var int + */ + public $bits; + + /** + * @var Version + */ + public $version; + + /** + * @var ZipStream + */ + public $zip; + + /** + * @var resource + */ + private $deflate; + + /** + * @var HashContext + */ + private $hash; + + /** + * @var Method + */ + private $method; + + /** + * @var Bigint + */ + private $totalLength; + + public function __construct(ZipStream $zip, string $name, ?FileOptions $opt = null) + { + $this->zip = $zip; + + $this->name = $name; + $this->opt = $opt ?: new FileOptions(); + $this->method = $this->opt->getMethod(); + $this->version = Version::STORE(); + $this->ofs = new Bigint(); } - public function cloneSimulationExecution(): self + public function processPath(string $path): void { - return new self( - $this->fileName, - $this->dataCallback, - OperationMode::NORMAL, - $this->startOffset, - $this->compressionMethod, - $this->comment, - $this->lastModificationDateTime, - $this->deflateLevel, - $this->maxSize, - $this->exactSize, - $this->enableZip64, - $this->enableZeroHeader, - $this->send, - $this->recordSentBytes, - ); - } - - public function process(): string - { - $forecastSize = $this->forecastSize(); - - if ($this->enableZeroHeader) { - // No calculation required - } elseif ($this->isSimulation() && $forecastSize !== null) { - $this->uncompressedSize = $forecastSize; - $this->compressedSize = $forecastSize; - } else { - $this->readStream(send: false); - if (rewind($this->unpackStream()) === false) { - throw new ResourceActionException('rewind', $this->unpackStream()); + if (!is_readable($path)) { + if (!file_exists($path)) { + throw new FileNotFoundException($path); } + throw new FileNotReadableException($path); } - - $this->addFileHeader(); - - $detectedSize = $forecastSize ?? ($this->compressedSize > 0 ? $this->compressedSize : null); - - if ( - $this->isSimulation() && - $detectedSize !== null - ) { - $this->uncompressedSize = $detectedSize; - $this->compressedSize = $detectedSize; - ($this->recordSentBytes)($detectedSize); + if ($this->zip->isLargeFile($path) === false) { + $data = file_get_contents($path); + $this->processData($data); } else { - $this->readStream(send: true); + $this->method = $this->zip->opt->getLargeFileMethod(); + + $stream = new Stream(fopen($path, 'rb')); + $this->processStream($stream); + $stream->close(); + } + } + + public function processData(string $data): void + { + $this->len = new Bigint(strlen($data)); + $this->crc = crc32($data); + + // compress data if needed + if ($this->method->equals(Method::DEFLATE())) { + $data = gzdeflate($data); } + $this->zlen = new Bigint(strlen($data)); + $this->addFileHeader(); + $this->zip->send($data); $this->addFileFooter(); - return $this->getCdrFile(); - } - - /** - * @return resource - */ - private function unpackStream() - { - if ($this->stream) { - return $this->stream; - } - - if ($this->operationMode === OperationMode::SIMULATE_STRICT) { - throw new SimulationFileUnknownException(); - } - - $this->stream = ($this->dataCallback)(); - - if (!$this->enableZeroHeader && !stream_get_meta_data($this->stream)['seekable']) { - throw new StreamNotSeekableException(); - } - if (!( - str_contains(stream_get_meta_data($this->stream)['mode'], 'r') - || str_contains(stream_get_meta_data($this->stream)['mode'], 'w+') - || str_contains(stream_get_meta_data($this->stream)['mode'], 'a+') - || str_contains(stream_get_meta_data($this->stream)['mode'], 'x+') - || str_contains(stream_get_meta_data($this->stream)['mode'], 'c+') - )) { - throw new StreamNotReadableException(); - } - - return $this->stream; - } - - private function forecastSize(): ?int - { - if ($this->compressionMethod !== CompressionMethod::STORE) { - return null; - } - if ($this->exactSize !== null) { - return $this->exactSize; - } - $fstat = fstat($this->unpackStream()); - if (!$fstat || !array_key_exists('size', $fstat) || $fstat['size'] < 1) { - return null; - } - - if ($this->maxSize !== null && $this->maxSize < $fstat['size']) { - return $this->maxSize; - } - - return $fstat['size']; } /** * Create and send zip header for this file. + * + * @return void + * @throws \ZipStream\Exception\EncodingException */ - private function addFileHeader(): void + public function addFileHeader(): void { - $forceEnableZip64 = $this->enableZeroHeader && $this->enableZip64; + $name = static::filterFilename($this->name); - $footer = $this->buildZip64ExtraBlock($forceEnableZip64); + // calculate name length + $nameLength = strlen($name); - $zip64Enabled = $footer !== ''; + // create dos timestamp + $time = static::dosTime($this->opt->getTime()->getTimestamp()); - if ($zip64Enabled) { - $this->version = Version::ZIP64; + $comment = $this->opt->getComment(); + + if (!mb_check_encoding($name, 'ASCII') || + !mb_check_encoding($comment, 'ASCII')) { + // Sets Bit 11: Language encoding flag (EFS). If this bit is set, + // the filename and comment fields for this file + // MUST be encoded using UTF-8. (see APPENDIX D) + if (mb_check_encoding($name, 'UTF-8') && + mb_check_encoding($comment, 'UTF-8')) { + $this->bits |= self::BIT_EFS_UTF8; + } } - if ($this->generalPurposeBitFlag & GeneralPurposeBitFlag::EFS) { - // Put the tricky entry to - // force Linux unzip to lookup EFS flag. - $footer .= Zs\ExtendedInformationExtraField::generate(); + if ($this->method->equals(Method::DEFLATE())) { + $this->version = Version::DEFLATE(); } - $data = LocalFileHeader::generate( - versionNeededToExtract: $this->version->value, - generalPurposeBitFlag: $this->generalPurposeBitFlag, - compressionMethod: $this->compressionMethod, - lastModificationDateTime: $this->lastModificationDateTime, - crc32UncompressedData: $this->crc, - compressedSize: $zip64Enabled - ? 0xFFFFFFFF - : $this->compressedSize, - uncompressedSize: $zip64Enabled - ? 0xFFFFFFFF - : $this->uncompressedSize, - fileName: $this->fileName, - extraField: $footer, - ); + $force = (bool)($this->bits & self::BIT_ZERO_HEADER) && + $this->zip->opt->isEnableZip64(); + $footer = $this->buildZip64ExtraBlock($force); - ($this->send)($data); + // If this file will start over 4GB limit in ZIP file, + // CDR record will have to use Zip64 extension to describe offset + // to keep consistency we use the same value here + if ($this->zip->ofs->isOver32()) { + $this->version = Version::ZIP64(); + } + + $fields = [ + ['V', ZipStream::FILE_HEADER_SIGNATURE], + ['v', $this->version->getValue()], // Version needed to Extract + ['v', $this->bits], // General purpose bit flags - data descriptor flag set + ['v', $this->method->getValue()], // Compression method + ['V', $time], // Timestamp (DOS Format) + ['V', $this->crc], // CRC32 of data (0 -> moved to data descriptor footer) + ['V', $this->zlen->getLowFF($force)], // Length of compressed data (forced to 0xFFFFFFFF for zero header) + ['V', $this->len->getLowFF($force)], // Length of original data (forced to 0xFFFFFFFF for zero header) + ['v', $nameLength], // Length of filename + ['v', strlen($footer)], // Extra data (see above) + ]; + + // pack fields and calculate "total" length + $header = ZipStream::packFields($fields); + + // print header and filename + $data = $header . $name . $footer; + $this->zip->send($data); + + // save header length + $this->hlen = Bigint::init(strlen($data)); } /** * Strip characters that are not legal in Windows filenames * to prevent compatibility issues + * + * @param string $filename Unprocessed filename + * @return string */ - private static function filterFilename( - /** - * Unprocessed filename - */ - string $fileName - ): string { + public static function filterFilename(string $filename): string + { // strip leading slashes from file name // (fixes bug in windows archive viewer) - $fileName = ltrim($fileName, '/'); + $filename = preg_replace('/^\\/+/', '', $filename); - return str_replace(['\\', ':', '*', '?', '"', '<', '>', '|'], '_', $fileName); + return str_replace(['\\', ':', '*', '?', '"', '<', '>', '|'], '_', $filename); } - private function checkEncoding(): void + /** + * Create and send data descriptor footer for this file. + * + * @return void + */ + public function addFileFooter(): void { - // Sets Bit 11: Language encoding flag (EFS). If this bit is set, - // the filename and comment fields for this file - // MUST be encoded using UTF-8. (see APPENDIX D) - if (mb_check_encoding($this->fileName, 'UTF-8') && - mb_check_encoding($this->comment, 'UTF-8')) { - $this->generalPurposeBitFlag |= GeneralPurposeBitFlag::EFS; - } - } + if ($this->bits & self::BIT_ZERO_HEADER) { + // compressed and uncompressed size + $sizeFormat = 'V'; + if ($this->zip->opt->isEnableZip64()) { + $sizeFormat = 'P'; + } + $fields = [ + ['V', ZipStream::DATA_DESCRIPTOR_SIGNATURE], + ['V', $this->crc], // CRC32 + [$sizeFormat, $this->zlen], // Length of compressed data + [$sizeFormat, $this->len], // Length of original data + ]; - private function buildZip64ExtraBlock(bool $force = false): string - { - $outputZip64ExtraBlock = false; - - $originalSize = null; - if ($force || $this->uncompressedSize > 0xFFFFFFFF) { - $outputZip64ExtraBlock = true; - $originalSize = $this->uncompressedSize; - } - - $compressedSize = null; - if ($force || $this->compressedSize > 0xFFFFFFFF) { - $outputZip64ExtraBlock = true; - $compressedSize = $this->compressedSize; - } - - // If this file will start over 4GB limit in ZIP file, - // CDR record will have to use Zip64 extension to describe offset - // to keep consistency we use the same value here - $relativeHeaderOffset = null; - if ($this->startOffset > 0xFFFFFFFF) { - $outputZip64ExtraBlock = true; - $relativeHeaderOffset = $this->startOffset; - } - - if (!$outputZip64ExtraBlock) { - return ''; - } - - if (!$this->enableZip64) { - throw new OverflowException(); - } - - return Zip64\ExtendedInformationExtraField::generate( - originalSize: $originalSize, - compressedSize: $compressedSize, - relativeHeaderOffset: $relativeHeaderOffset, - diskStartNumber: null, - ); - } - - private function addFileFooter(): void - { - if (($this->compressedSize > 0xFFFFFFFF || $this->uncompressedSize > 0xFFFFFFFF) && $this->version !== Version::ZIP64) { - throw new OverflowException(); - } - - if (!$this->enableZeroHeader) { - return; - } - - if ($this->version === Version::ZIP64) { - $footer = Zip64\DataDescriptor::generate( - crc32UncompressedData: $this->crc, - compressedSize: $this->compressedSize, - uncompressedSize: $this->uncompressedSize, - ); + $footer = ZipStream::packFields($fields); + $this->zip->send($footer); } else { - $footer = DataDescriptor::generate( - crc32UncompressedData: $this->crc, - compressedSize: $this->compressedSize, - uncompressedSize: $this->uncompressedSize, - ); + $footer = ''; } - - ($this->send)($footer); + $this->totalLength = $this->hlen->add($this->zlen)->add(Bigint::init(strlen($footer))); + $this->zip->addToCdr($this); } - private function readStream(bool $send): void + public function processStream(StreamInterface $stream): void { - $this->compressedSize = 0; - $this->uncompressedSize = 0; - $hash = hash_init('crc32b'); + $this->zlen = new Bigint(); + $this->len = new Bigint(); - $deflate = $this->compressionInit(); - - while ( - !feof($this->unpackStream()) && - ($this->maxSize === null || $this->uncompressedSize < $this->maxSize) && - ($this->exactSize === null || $this->uncompressedSize < $this->exactSize) - ) { - $readLength = min( - ($this->maxSize ?? PHP_INT_MAX) - $this->uncompressedSize, - ($this->exactSize ?? PHP_INT_MAX) - $this->uncompressedSize, - self::CHUNKED_READ_BLOCK_SIZE - ); - - $data = fread($this->unpackStream(), $readLength); - - if ($data === false) { - throw new ResourceActionException('fread', $this->unpackStream()); - } - - hash_update($hash, $data); - - $this->uncompressedSize += strlen($data); - - if ($deflate) { - $data = deflate_add( - $deflate, - $data, - feof($this->unpackStream()) ? ZLIB_FINISH : ZLIB_NO_FLUSH - ); - - if ($data === false) { - throw new RuntimeException('deflate_add failed'); - } - } - - $this->compressedSize += strlen($data); - - if ($send) { - ($this->send)($data); - } - } - - if ($this->exactSize !== null && $this->uncompressedSize !== $this->exactSize) { - throw new FileSizeIncorrectException(expectedSize: $this->exactSize, actualSize: $this->uncompressedSize); - } - - $this->crc = hexdec(hash_final($hash)); - } - - private function compressionInit(): ?DeflateContext - { - switch ($this->compressionMethod) { - case CompressionMethod::STORE: - // Noting to do - return null; - case CompressionMethod::DEFLATE: - $deflateContext = deflate_init( - ZLIB_ENCODING_RAW, - ['level' => $this->deflateLevel] - ); - - if (!$deflateContext) { - // @codeCoverageIgnoreStart - throw new RuntimeException("Can't initialize deflate context."); - // @codeCoverageIgnoreEnd - } - - // False positive, resource is no longer returned from this function - return $deflateContext; - default: - // @codeCoverageIgnoreStart - throw new RuntimeException('Unsupported Compression Method ' . print_r($this->compressionMethod, true)); - // @codeCoverageIgnoreEnd + if ($this->zip->opt->isZeroHeader()) { + $this->processStreamWithZeroHeader($stream); + } else { + $this->processStreamWithComputedHeader($stream); } } - private function getCdrFile(): string + /** + * Send CDR record for specified file. + * + * @return string + */ + public function getCdrFile(): string { + $name = static::filterFilename($this->name); + + // get attributes + $comment = $this->opt->getComment(); + + // get dos timestamp + $time = static::dosTime($this->opt->getTime()->getTimestamp()); + $footer = $this->buildZip64ExtraBlock(); - return CentralDirectoryFileHeader::generate( - versionMadeBy: ZipStream::ZIP_VERSION_MADE_BY, - versionNeededToExtract: $this->version->value, - generalPurposeBitFlag: $this->generalPurposeBitFlag, - compressionMethod: $this->compressionMethod, - lastModificationDateTime: $this->lastModificationDateTime, - crc32: $this->crc, - compressedSize: $this->compressedSize > 0xFFFFFFFF - ? 0xFFFFFFFF - : $this->compressedSize, - uncompressedSize: $this->uncompressedSize > 0xFFFFFFFF - ? 0xFFFFFFFF - : $this->uncompressedSize, - fileName: $this->fileName, - extraField: $footer, - fileComment: $this->comment, - diskNumberStart: 0, - internalFileAttributes: 0, - externalFileAttributes: 32, - relativeOffsetOfLocalHeader: $this->startOffset > 0xFFFFFFFF - ? 0xFFFFFFFF - : $this->startOffset, - ); + $fields = [ + ['V', ZipStream::CDR_FILE_SIGNATURE], // Central file header signature + ['v', ZipStream::ZIP_VERSION_MADE_BY], // Made by version + ['v', $this->version->getValue()], // Extract by version + ['v', $this->bits], // General purpose bit flags - data descriptor flag set + ['v', $this->method->getValue()], // Compression method + ['V', $time], // Timestamp (DOS Format) + ['V', $this->crc], // CRC32 + ['V', $this->zlen->getLowFF()], // Compressed Data Length + ['V', $this->len->getLowFF()], // Original Data Length + ['v', strlen($name)], // Length of filename + ['v', strlen($footer)], // Extra data len (see above) + ['v', strlen($comment)], // Length of comment + ['v', 0], // Disk number + ['v', 0], // Internal File Attributes + ['V', 32], // External File Attributes + ['V', $this->ofs->getLowFF()], // Relative offset of local header + ]; + + // pack fields, then append name and comment + $header = ZipStream::packFields($fields); + + return $header . $name . $footer . $comment; } - private function isSimulation(): bool + /** + * @return Bigint + */ + public function getTotalLength(): Bigint { - return $this->operationMode === OperationMode::SIMULATE_LAX || $this->operationMode === OperationMode::SIMULATE_STRICT; + return $this->totalLength; + } + + /** + * Convert a UNIX timestamp to a DOS timestamp. + * + * @param int $when + * @return int DOS Timestamp + */ + final protected static function dosTime(int $when): int + { + // get date array for timestamp + $d = getdate($when); + + // set lower-bound on dates + if ($d['year'] < 1980) { + $d = [ + 'year' => 1980, + 'mon' => 1, + 'mday' => 1, + 'hours' => 0, + 'minutes' => 0, + 'seconds' => 0, + ]; + } + + // remove extra years from 1980 + $d['year'] -= 1980; + + // return date string + return + ($d['year'] << 25) | + ($d['mon'] << 21) | + ($d['mday'] << 16) | + ($d['hours'] << 11) | + ($d['minutes'] << 5) | + ($d['seconds'] >> 1); + } + + protected function buildZip64ExtraBlock(bool $force = false): string + { + $fields = []; + if ($this->len->isOver32($force)) { + $fields[] = ['P', $this->len]; // Length of original data + } + + if ($this->len->isOver32($force)) { + $fields[] = ['P', $this->zlen]; // Length of compressed data + } + + if ($this->ofs->isOver32()) { + $fields[] = ['P', $this->ofs]; // Offset of local header record + } + + if (!empty($fields)) { + if (!$this->zip->opt->isEnableZip64()) { + throw new OverflowException(); + } + + array_unshift( + $fields, + ['v', 0x0001], // 64 bit extension + ['v', count($fields) * 8] // Length of data block + ); + $this->version = Version::ZIP64(); + } + + if ($this->bits & self::BIT_EFS_UTF8) { + // Put the tricky entry to + // force Linux unzip to lookup EFS flag. + $fields[] = ['v', 0x5653]; // Choose 'ZS' for proprietary usage + $fields[] = ['v', 0x0000]; // zero length + } + + return ZipStream::packFields($fields); + } + + protected function processStreamWithZeroHeader(StreamInterface $stream): void + { + $this->bits |= self::BIT_ZERO_HEADER; + $this->addFileHeader(); + $this->readStream($stream, self::COMPUTE | self::SEND); + $this->addFileFooter(); + } + + protected function readStream(StreamInterface $stream, ?int $options = null): void + { + $this->deflateInit(); + $total = 0; + $size = $this->opt->getSize(); + while (!$stream->eof() && ($size === 0 || $total < $size)) { + $data = $stream->read(self::CHUNKED_READ_BLOCK_SIZE); + $total += strlen($data); + if ($size > 0 && $total > $size) { + $data = substr($data, 0, strlen($data)-($total - $size)); + } + $this->deflateData($stream, $data, $options); + if ($options & self::SEND) { + $this->zip->send($data); + } + } + $this->deflateFinish($options); + } + + protected function deflateInit(): void + { + $hash = hash_init(self::HASH_ALGORITHM); + $this->hash = $hash; + if ($this->method->equals(Method::DEFLATE())) { + $this->deflate = deflate_init( + ZLIB_ENCODING_RAW, + ['level' => $this->opt->getDeflateLevel()] + ); + } + } + + protected function deflateData(StreamInterface $stream, string &$data, ?int $options = null): void + { + if ($options & self::COMPUTE) { + $this->len = $this->len->add(Bigint::init(strlen($data))); + hash_update($this->hash, $data); + } + if ($this->deflate) { + $data = deflate_add( + $this->deflate, + $data, + $stream->eof() + ? ZLIB_FINISH + : ZLIB_NO_FLUSH + ); + } + if ($options & self::COMPUTE) { + $this->zlen = $this->zlen->add(Bigint::init(strlen($data))); + } + } + + protected function deflateFinish(?int $options = null): void + { + if ($options & self::COMPUTE) { + $this->crc = hexdec(hash_final($this->hash)); + } + } + + protected function processStreamWithComputedHeader(StreamInterface $stream): void + { + $this->readStream($stream, self::COMPUTE); + $stream->rewind(); + + $this->addFileHeader(); + $this->readStream($stream, self::SEND); + $this->addFileFooter(); } } diff --git a/vendor/maennchen/zipstream-php/src/GeneralPurposeBitFlag.php b/vendor/maennchen/zipstream-php/src/GeneralPurposeBitFlag.php deleted file mode 100644 index 23a66d8..0000000 --- a/vendor/maennchen/zipstream-php/src/GeneralPurposeBitFlag.php +++ /dev/null @@ -1,89 +0,0 @@ -value), - new PackField(format: 'V', value: Time::dateTimeToDosTime($lastModificationDateTime)), - new PackField(format: 'V', value: $crc32UncompressedData), - new PackField(format: 'V', value: $compressedSize), - new PackField(format: 'V', value: $uncompressedSize), - new PackField(format: 'v', value: strlen($fileName)), - new PackField(format: 'v', value: strlen($extraField)), - ) . $fileName . $extraField; - } -} diff --git a/vendor/maennchen/zipstream-php/src/OperationMode.php b/vendor/maennchen/zipstream-php/src/OperationMode.php deleted file mode 100644 index dd650f0..0000000 --- a/vendor/maennchen/zipstream-php/src/OperationMode.php +++ /dev/null @@ -1,35 +0,0 @@ - 4 GB or file count > 64k) + * + * @var bool + */ + private $enableZip64 = true; + + /** + * Enable streaming files with single read where + * general purpose bit 3 indicates local file header + * contain zero values in crc and size fields, + * these appear only after file contents + * in data descriptor block. + * + * @var bool + */ + private $zeroHeader = false; + + /** + * Enable reading file stat for determining file size. + * When a 32-bit system reads file size that is + * over 2 GB, invalid value appears in file size + * due to integer overflow. Should be disabled on + * 32-bit systems with method addFileFromPath + * if any file may exceed 2 GB. In this case file + * will be read in blocks and correct size will be + * determined from content. + * + * @var bool + */ + private $statFiles = true; + + /** + * Enable flush after every write to output stream. + * @var bool + */ + private $flushOutput = false; + + /** + * HTTP Content-Disposition. Defaults to + * 'attachment', where + * FILENAME is the specified filename. + * + * Note that this does nothing if you are + * not sending HTTP headers. + * + * @var string + */ + private $contentDisposition = 'attachment'; + + /** + * Note that this does nothing if you are + * not sending HTTP headers. + * + * @var string + */ + private $contentType = 'application/x-zip'; + + /** + * @var int + */ + private $deflateLevel = 6; + + /** + * @var StreamInterface|resource + */ + private $outputStream; + + /** + * Options constructor. + */ + public function __construct() + { + $this->largeFileMethod = Method::STORE(); + $this->outputStream = fopen('php://output', 'wb'); + } + + public function getComment(): string + { + return $this->comment; + } + + public function setComment(string $comment): void + { + $this->comment = $comment; + } + + public function getLargeFileSize(): int + { + return $this->largeFileSize; + } + + public function setLargeFileSize(int $largeFileSize): void + { + $this->largeFileSize = $largeFileSize; + } + + public function getLargeFileMethod(): Method + { + return $this->largeFileMethod; + } + + public function setLargeFileMethod(Method $largeFileMethod): void + { + $this->largeFileMethod = $largeFileMethod; + } + + public function isSendHttpHeaders(): bool + { + return $this->sendHttpHeaders; + } + + public function setSendHttpHeaders(bool $sendHttpHeaders): void + { + $this->sendHttpHeaders = $sendHttpHeaders; + } + + public function getHttpHeaderCallback(): callable + { + return $this->httpHeaderCallback; + } + + public function setHttpHeaderCallback(callable $httpHeaderCallback): void + { + $this->httpHeaderCallback = $httpHeaderCallback; + } + + public function isEnableZip64(): bool + { + return $this->enableZip64; + } + + public function setEnableZip64(bool $enableZip64): void + { + $this->enableZip64 = $enableZip64; + } + + public function isZeroHeader(): bool + { + return $this->zeroHeader; + } + + public function setZeroHeader(bool $zeroHeader): void + { + $this->zeroHeader = $zeroHeader; + } + + public function isFlushOutput(): bool + { + return $this->flushOutput; + } + + public function setFlushOutput(bool $flushOutput): void + { + $this->flushOutput = $flushOutput; + } + + public function isStatFiles(): bool + { + return $this->statFiles; + } + + public function setStatFiles(bool $statFiles): void + { + $this->statFiles = $statFiles; + } + + public function getContentDisposition(): string + { + return $this->contentDisposition; + } + + public function setContentDisposition(string $contentDisposition): void + { + $this->contentDisposition = $contentDisposition; + } + + public function getContentType(): string + { + return $this->contentType; + } + + public function setContentType(string $contentType): void + { + $this->contentType = $contentType; + } + + /** + * @return StreamInterface|resource + */ + public function getOutputStream() + { + return $this->outputStream; + } + + /** + * @param StreamInterface|resource $outputStream + */ + public function setOutputStream($outputStream): void + { + $this->outputStream = $outputStream; + } + + /** + * @return int + */ + public function getDeflateLevel(): int + { + return $this->deflateLevel; + } + + /** + * @param int $deflateLevel + */ + public function setDeflateLevel(int $deflateLevel): void + { + $this->deflateLevel = $deflateLevel; + } +} diff --git a/vendor/maennchen/zipstream-php/src/Option/File.php b/vendor/maennchen/zipstream-php/src/Option/File.php new file mode 100644 index 0000000..37e37ce --- /dev/null +++ b/vendor/maennchen/zipstream-php/src/Option/File.php @@ -0,0 +1,122 @@ +deflateLevel = $this->deflateLevel ?: $archiveOptions->getDeflateLevel(); + $this->time = $this->time ?: new DateTime(); + } + + /** + * @return string + */ + public function getComment(): string + { + return $this->comment; + } + + /** + * @param string $comment + */ + public function setComment(string $comment): void + { + $this->comment = $comment; + } + + /** + * @return Method + */ + public function getMethod(): Method + { + return $this->method ?: Method::DEFLATE(); + } + + /** + * @param Method $method + */ + public function setMethod(Method $method): void + { + $this->method = $method; + } + + /** + * @return int + */ + public function getDeflateLevel(): int + { + return $this->deflateLevel ?: Archive::DEFAULT_DEFLATE_LEVEL; + } + + /** + * @param int $deflateLevel + */ + public function setDeflateLevel(int $deflateLevel): void + { + $this->deflateLevel = $deflateLevel; + } + + /** + * @return DateTimeInterface + */ + public function getTime(): DateTimeInterface + { + return $this->time; + } + + /** + * @param DateTimeInterface $time + */ + public function setTime(DateTimeInterface $time): void + { + $this->time = $time; + } + + /** + * @return int + */ + public function getSize(): int + { + return $this->size; + } + + /** + * @param int $size + */ + public function setSize(int $size): void + { + $this->size = $size; + } +} diff --git a/vendor/maennchen/zipstream-php/src/Option/Method.php b/vendor/maennchen/zipstream-php/src/Option/Method.php new file mode 100644 index 0000000..0dfce1b --- /dev/null +++ b/vendor/maennchen/zipstream-php/src/Option/Method.php @@ -0,0 +1,23 @@ + + */ +class Method extends Enum +{ + public const STORE = 0x00; + + public const DEFLATE = 0x08; +} diff --git a/vendor/maennchen/zipstream-php/src/Option/Version.php b/vendor/maennchen/zipstream-php/src/Option/Version.php new file mode 100644 index 0000000..f3daa85 --- /dev/null +++ b/vendor/maennchen/zipstream-php/src/Option/Version.php @@ -0,0 +1,27 @@ + + */ +class Version extends Enum +{ + public const STORE = 0x000A; // 1.00 + + public const DEFLATE = 0x0014; // 2.00 + + public const ZIP64 = 0x002D; // 4.50 +} diff --git a/vendor/maennchen/zipstream-php/src/PackField.php b/vendor/maennchen/zipstream-php/src/PackField.php deleted file mode 100644 index 892b400..0000000 --- a/vendor/maennchen/zipstream-php/src/PackField.php +++ /dev/null @@ -1,56 +0,0 @@ -format; - }, ''); - - $args = array_map(function (self $field) { - switch ($field->format) { - case 'V': - if ($field->value > self::MAX_V) { - throw new RuntimeException(print_r($field->value, true) . ' is larger than 32 bits'); - } - break; - case 'v': - if ($field->value > self::MAX_v) { - throw new RuntimeException(print_r($field->value, true) . ' is larger than 16 bits'); - } - break; - case 'P': break; - default: - break; - } - - return $field->value; - }, $fields); - - return pack($fmt, ...$args); - } -} diff --git a/vendor/maennchen/zipstream-php/src/Stream.php b/vendor/maennchen/zipstream-php/src/Stream.php new file mode 100644 index 0000000..d80e70f --- /dev/null +++ b/vendor/maennchen/zipstream-php/src/Stream.php @@ -0,0 +1,265 @@ +stream = $stream; + } + + /** + * Reads all data from the stream into a string, from the beginning to end. + * + * This method MUST attempt to seek to the beginning of the stream before + * reading data and read the stream until the end is reached. + * + * Warning: This could attempt to load a large amount of data into memory. + * + * This method MUST NOT raise an exception in order to conform with PHP's + * string casting operations. + * + * @see http://php.net/manual/en/language.oop5.magic.php#object.tostring + * @return string + */ + public function __toString(): string + { + try { + $this->seek(0); + } catch (RuntimeException $e) { + } + return (string) stream_get_contents($this->stream); + } + + /** + * Closes the stream and any underlying resources. + * + * @return void + */ + public function close(): void + { + if (is_resource($this->stream)) { + fclose($this->stream); + } + $this->detach(); + } + + /** + * Separates any underlying resources from the stream. + * + * After the stream has been detached, the stream is in an unusable state. + * + * @return resource|null Underlying PHP stream, if any + */ + public function detach() + { + $result = $this->stream; + $this->stream = null; + return $result; + } + + /** + * Seek to a position in the stream. + * + * @link http://www.php.net/manual/en/function.fseek.php + * @param int $offset Stream offset + * @param int $whence Specifies how the cursor position will be calculated + * based on the seek offset. Valid values are identical to the built-in + * PHP $whence values for `fseek()`. SEEK_SET: Set position equal to + * offset bytes SEEK_CUR: Set position to current location plus offset + * SEEK_END: Set position to end-of-stream plus offset. + * @throws RuntimeException on failure. + */ + public function seek($offset, $whence = SEEK_SET): void + { + if (!$this->isSeekable()) { + throw new RuntimeException(); + } + if (fseek($this->stream, $offset, $whence) !== 0) { + throw new RuntimeException(); + } + } + + /** + * Returns whether or not the stream is seekable. + * + * @return bool + */ + public function isSeekable(): bool + { + return (bool)$this->getMetadata('seekable'); + } + + /** + * Get stream metadata as an associative array or retrieve a specific key. + * + * The keys returned are identical to the keys returned from PHP's + * stream_get_meta_data() function. + * + * @link http://php.net/manual/en/function.stream-get-meta-data.php + * @param string $key Specific metadata to retrieve. + * @return array|mixed|null Returns an associative array if no key is + * provided. Returns a specific key value if a key is provided and the + * value is found, or null if the key is not found. + */ + public function getMetadata($key = null) + { + $metadata = stream_get_meta_data($this->stream); + return $key !== null ? @$metadata[$key] : $metadata; + } + + /** + * Get the size of the stream if known. + * + * @return int|null Returns the size in bytes if known, or null if unknown. + */ + public function getSize(): ?int + { + $stats = fstat($this->stream); + return $stats['size']; + } + + /** + * Returns the current position of the file read/write pointer + * + * @return int Position of the file pointer + * @throws RuntimeException on error. + */ + public function tell(): int + { + $position = ftell($this->stream); + if ($position === false) { + throw new RuntimeException(); + } + return $position; + } + + /** + * Returns true if the stream is at the end of the stream. + * + * @return bool + */ + public function eof(): bool + { + return feof($this->stream); + } + + /** + * Seek to the beginning of the stream. + * + * If the stream is not seekable, this method will raise an exception; + * otherwise, it will perform a seek(0). + * + * @see seek() + * @link http://www.php.net/manual/en/function.fseek.php + * @throws RuntimeException on failure. + */ + public function rewind(): void + { + $this->seek(0); + } + + /** + * Write data to the stream. + * + * @param string $string The string that is to be written. + * @return int Returns the number of bytes written to the stream. + * @throws RuntimeException on failure. + */ + public function write($string): int + { + if (!$this->isWritable()) { + throw new RuntimeException(); + } + if (fwrite($this->stream, $string) === false) { + throw new RuntimeException(); + } + return mb_strlen($string); + } + + /** + * Returns whether or not the stream is writable. + * + * @return bool + */ + public function isWritable(): bool + { + $mode = $this->getMetadata('mode'); + if (!is_string($mode)) { + throw new RuntimeException('Could not get stream mode from metadata!'); + } + return preg_match('/[waxc+]/', $mode) === 1; + } + + /** + * Read data from the stream. + * + * @param int $length Read up to $length bytes from the object and return + * them. Fewer than $length bytes may be returned if underlying stream + * call returns fewer bytes. + * @return string Returns the data read from the stream, or an empty string + * if no bytes are available. + * @throws RuntimeException if an error occurs. + */ + public function read($length): string + { + if (!$this->isReadable()) { + throw new RuntimeException(); + } + $result = fread($this->stream, $length); + if ($result === false) { + throw new RuntimeException(); + } + return $result; + } + + /** + * Returns whether or not the stream is readable. + * + * @return bool + */ + public function isReadable(): bool + { + $mode = $this->getMetadata('mode'); + if (!is_string($mode)) { + throw new RuntimeException('Could not get stream mode from metadata!'); + } + return preg_match('/[r+]/', $mode) === 1; + } + + /** + * Returns the remaining contents in a string + * + * @return string + * @throws RuntimeException if unable to read or an error occurs while + * reading. + */ + public function getContents(): string + { + if (!$this->isReadable()) { + throw new RuntimeException(); + } + $result = stream_get_contents($this->stream); + if ($result === false) { + throw new RuntimeException(); + } + return $result; + } +} diff --git a/vendor/maennchen/zipstream-php/src/Time.php b/vendor/maennchen/zipstream-php/src/Time.php deleted file mode 100644 index 1b4121c..0000000 --- a/vendor/maennchen/zipstream-php/src/Time.php +++ /dev/null @@ -1,39 +0,0 @@ -getTimestamp() < $dosMinimumDate->getTimestamp()) { - throw new DosTimeOverflowException(dateTime: $dateTime); - } - - $dateTime = DateTimeImmutable::createFromInterface($dateTime)->sub(new DateInterval('P1980Y')); - - [$year, $month, $day, $hour, $minute, $second] = explode(' ', $dateTime->format('Y n j G i s')); - - return - ((int) $year << 25) | - ((int) $month << 21) | - ((int) $day << 16) | - ((int) $hour << 11) | - ((int) $minute << 5) | - ((int) $second >> 1); - } -} diff --git a/vendor/maennchen/zipstream-php/src/Version.php b/vendor/maennchen/zipstream-php/src/Version.php deleted file mode 100644 index c014f8a..0000000 --- a/vendor/maennchen/zipstream-php/src/Version.php +++ /dev/null @@ -1,12 +0,0 @@ -addFile(fileName: 'world.txt', data: 'Hello World'); + * * add first file + * $data = file_get_contents('some_file.gif'); + * $zip->addFile('some_file.gif', $data); * - * // add second file - * $zip->addFile(fileName: 'moon.txt', data: 'Hello Moon'); - * ``` + * * add second file + * $data = file_get_contents('some_file.gif'); + * $zip->addFile('another_file.png', $data); * * 3. Finish the zip stream: * - * ```php - * $zip->finish(); - * ``` + * $zip->finish(); * * You can also add an archive comment, add comments to individual files, * and adjust the timestamp of files. See the API documentation for each * method below for additional information. * - * ## Example + * Example: * - * ```php - * // create a new zip stream object - * $zip = new ZipStream(outputName: 'some_files.zip'); + * // create a new zip stream object + * $zip = new ZipStream('some_files.zip'); * - * // list of local files - * $files = array('foo.txt', 'bar.jpg'); + * // list of local files + * $files = array('foo.txt', 'bar.jpg'); * - * // read and add each file to the archive - * foreach ($files as $path) - * $zip->addFileFromPath(fileName: $path, $path); + * // read and add each file to the archive + * foreach ($files as $path) + * $zip->addFile($path, file_get_contents($path)); * - * // write archive footer to stream - * $zip->finish(); - * ``` + * // write archive footer to stream + * $zip->finish(); */ class ZipStream { @@ -89,783 +80,529 @@ class ZipStream * Here we are using 6 for the OS, indicating OS/2 H.P.F.S. * to prevent file permissions issues upon extract (see #84) * 0x603 is 00000110 00000011 in binary, so 6 and 3 - * - * @internal */ public const ZIP_VERSION_MADE_BY = 0x603; - private bool $ready = true; + /** + * The following signatures end with 0x4b50, which in ASCII is PK, + * the initials of the inventor Phil Katz. + * See https://en.wikipedia.org/wiki/Zip_(file_format)#File_headers + */ + public const FILE_HEADER_SIGNATURE = 0x04034b50; - private int $offset = 0; + public const CDR_FILE_SIGNATURE = 0x02014b50; + + public const CDR_EOF_SIGNATURE = 0x06054b50; + + public const DATA_DESCRIPTOR_SIGNATURE = 0x08074b50; + + public const ZIP64_CDR_EOF_SIGNATURE = 0x06064b50; + + public const ZIP64_CDR_LOCATOR_SIGNATURE = 0x07064b50; /** - * @var string[] + * Global Options + * + * @var ArchiveOptions */ - private array $centralDirectoryRecords = []; + public $opt; /** - * @var resource + * @var array */ - private $outputStream; - - private readonly Closure $httpHeaderCallback; + public $files = []; /** - * @var File[] + * @var Bigint */ - private array $recordedSimulation = []; + public $cdr_ofs; + + /** + * @var Bigint + */ + public $ofs; + + /** + * @var bool + */ + protected $need_headers; + + /** + * @var null|String + */ + protected $output_name; /** * Create a new ZipStream object. * - * ##### Examples + * Parameters: * - * ```php - * // create a new zip file named 'foo.zip' - * $zip = new ZipStream(outputName: 'foo.zip'); + * @param String $name - Name of output file (optional). + * @param ArchiveOptions $opt - Archive Options * - * // create a new zip file named 'bar.zip' with a comment - * $zip = new ZipStream( - * outputName: 'bar.zip', - * comment: 'this is a comment for the zip file.', - * ); - * ``` + * Large File Support: * - * @param OperationMode $operationMode - * The mode can be used to switch between `NORMAL` and `SIMULATION_*` modes. - * For details see the `OperationMode` documentation. + * By default, the method addFileFromPath() will send send files + * larger than 20 megabytes along raw rather than attempting to + * compress them. You can change both the maximum size and the + * compression behavior using the largeFile* options above, with the + * following caveats: * - * Default to `NORMAL`. + * * For "small" files (e.g. files smaller than largeFileSize), the + * memory use can be up to twice that of the actual file. In other + * words, adding a 10 megabyte file to the archive could potentially + * occupy 20 megabytes of memory. * - * @param string $comment - * Archive Level Comment + * * Enabling compression on large files (e.g. files larger than + * large_file_size) is extremely slow, because ZipStream has to pass + * over the large file once to calculate header information, and then + * again to compress and send the actual data. * - * @param StreamInterface|resource|null $outputStream - * Override the output of the archive to a different target. + * Examples: * - * By default the archive is sent to `STDOUT`. + * // create a new zip file named 'foo.zip' + * $zip = new ZipStream('foo.zip'); * - * @param CompressionMethod $defaultCompressionMethod - * How to handle file compression. Legal values are - * `CompressionMethod::DEFLATE` (the default), or - * `CompressionMethod::STORE`. `STORE` sends the file raw and is - * significantly faster, while `DEFLATE` compresses the file and - * is much, much slower. + * // create a new zip file named 'bar.zip' with a comment + * $opt->setComment = 'this is a comment for the zip file.'; + * $zip = new ZipStream('bar.zip', $opt); * - * @param int $defaultDeflateLevel - * Default deflation level. Only relevant if `compressionMethod` - * is `DEFLATE`. + * Notes: * - * See details of [`deflate_init`](https://www.php.net/manual/en/function.deflate-init.php#refsect1-function.deflate-init-parameters) - * - * @param bool $enableZip64 - * Enable Zip64 extension, supporting very large - * archives (any size > 4 GB or file count > 64k) - * - * @param bool $defaultEnableZeroHeader - * Enable streaming files with single read. - * - * When the zero header is set, the file is streamed into the output - * and the size & checksum are added at the end of the file. This is the - * fastest method and uses the least memory. Unfortunately not all - * ZIP clients fully support this and can lead to clients reporting - * the generated ZIP files as corrupted in combination with other - * circumstances. (Zip64 enabled, using UTF8 in comments / names etc.) - * - * When the zero header is not set, the length & checksum need to be - * defined before the file is actually added. To prevent loading all - * the data into memory, the data has to be read twice. If the data - * which is added is not seekable, this call will fail. - * - * @param bool $sendHttpHeaders - * Boolean indicating whether or not to send - * the HTTP headers for this file. - * - * @param ?Closure $httpHeaderCallback - * The method called to send HTTP headers - * - * @param string|null $outputName - * The name of the created archive. - * - * Only relevant if `$sendHttpHeaders = true`. - * - * @param string $contentDisposition - * HTTP Content-Disposition - * - * Only relevant if `sendHttpHeaders = true`. - * - * @param string $contentType - * HTTP Content Type - * - * Only relevant if `sendHttpHeaders = true`. - * - * @param bool $flushOutput - * Enable flush after every write to output stream. - * - * @return self + * In order to let this library send HTTP headers, a filename must be given + * _and_ the option `sendHttpHeaders` must be `true`. This behavior is to + * allow software to send its own headers (including the filename), and + * still use this library. */ - public function __construct( - private OperationMode $operationMode = OperationMode::NORMAL, - private readonly string $comment = '', - $outputStream = null, - private readonly CompressionMethod $defaultCompressionMethod = CompressionMethod::DEFLATE, - private readonly int $defaultDeflateLevel = 6, - private readonly bool $enableZip64 = true, - private readonly bool $defaultEnableZeroHeader = true, - private bool $sendHttpHeaders = true, - ?Closure $httpHeaderCallback = null, - private readonly ?string $outputName = null, - private readonly string $contentDisposition = 'attachment', - private readonly string $contentType = 'application/x-zip', - private bool $flushOutput = false, - ) { - $this->outputStream = self::normalizeStream($outputStream); - $this->httpHeaderCallback = $httpHeaderCallback ?? header(...); + public function __construct(?string $name = null, ?ArchiveOptions $opt = null) + { + $this->opt = $opt ?: new ArchiveOptions(); + + $this->output_name = $name; + $this->need_headers = $name && $this->opt->isSendHttpHeaders(); + + $this->cdr_ofs = new Bigint(); + $this->ofs = new Bigint(); } /** + * addFile + * * Add a file to the archive. * - * ##### File Options + * @param String $name - path of file in archive (including directory). + * @param String $data - contents of file + * @param FileOptions $options * - * See {@see addFileFromPsr7Stream()} + * File Options: + * time - Last-modified timestamp (seconds since the epoch) of + * this file. Defaults to the current time. + * comment - Comment related to this file. + * method - Storage method for file ("store" or "deflate") * - * ##### Examples + * Examples: * - * ```php - * // add a file named 'world.txt' - * $zip->addFile(fileName: 'world.txt', data: 'Hello World!'); + * // add a file named 'foo.txt' + * $data = file_get_contents('foo.txt'); + * $zip->addFile('foo.txt', $data); * - * // add a file named 'bar.jpg' with a comment and a last-modified - * // time of two hours ago - * $zip->addFile( - * fileName: 'bar.jpg', - * data: $data, - * comment: 'this is a comment about bar.jpg', - * lastModificationDateTime: new DateTime('2 hours ago'), - * ); - * ``` - * - * @param string $data - * - * contents of file + * // add a file named 'bar.jpg' with a comment and a last-modified + * // time of two hours ago + * $data = file_get_contents('bar.jpg'); + * $opt->setTime = time() - 2 * 3600; + * $opt->setComment = 'this is a comment about bar.jpg'; + * $zip->addFile('bar.jpg', $data, $opt); */ - public function addFile( - string $fileName, - string $data, - string $comment = '', - ?CompressionMethod $compressionMethod = null, - ?int $deflateLevel = null, - ?DateTimeInterface $lastModificationDateTime = null, - ?int $maxSize = null, - ?int $exactSize = null, - ?bool $enableZeroHeader = null, - ): void { - $this->addFileFromCallback( - fileName: $fileName, - callback: fn() => $data, - comment: $comment, - compressionMethod: $compressionMethod, - deflateLevel: $deflateLevel, - lastModificationDateTime: $lastModificationDateTime, - maxSize: $maxSize, - exactSize: $exactSize, - enableZeroHeader: $enableZeroHeader, - ); + public function addFile(string $name, string $data, ?FileOptions $options = null): void + { + $options = $options ?: new FileOptions(); + $options->defaultTo($this->opt); + + $file = new File($this, $name, $options); + $file->processData($data); } /** + * addFileFromPath + * * Add a file at path to the archive. * - * ##### File Options + * Note that large files may be compressed differently than smaller + * files; see the "Large File Support" section above for more + * information. * - * See {@see addFileFromPsr7Stream()} + * @param String $name - name of file in archive (including directory path). + * @param String $path - path to file on disk (note: paths should be encoded using + * UNIX-style forward slashes -- e.g '/path/to/some/file'). + * @param FileOptions $options * - * ###### Examples + * File Options: + * time - Last-modified timestamp (seconds since the epoch) of + * this file. Defaults to the current time. + * comment - Comment related to this file. + * method - Storage method for file ("store" or "deflate") * - * ```php - * // add a file named 'foo.txt' from the local file '/tmp/foo.txt' - * $zip->addFileFromPath( - * fileName: 'foo.txt', - * path: '/tmp/foo.txt', - * ); + * Examples: * - * // add a file named 'bigfile.rar' from the local file - * // '/usr/share/bigfile.rar' with a comment and a last-modified - * // time of two hours ago - * $zip->addFileFromPath( - * fileName: 'bigfile.rar', - * path: '/usr/share/bigfile.rar', - * comment: 'this is a comment about bigfile.rar', - * lastModificationDateTime: new DateTime('2 hours ago'), - * ); - * ``` + * // add a file named 'foo.txt' from the local file '/tmp/foo.txt' + * $zip->addFileFromPath('foo.txt', '/tmp/foo.txt'); * + * // add a file named 'bigfile.rar' from the local file + * // '/usr/share/bigfile.rar' with a comment and a last-modified + * // time of two hours ago + * $path = '/usr/share/bigfile.rar'; + * $opt->setTime = time() - 2 * 3600; + * $opt->setComment = 'this is a comment about bar.jpg'; + * $zip->addFileFromPath('bigfile.rar', $path, $opt); + * + * @return void * @throws \ZipStream\Exception\FileNotFoundException * @throws \ZipStream\Exception\FileNotReadableException */ - public function addFileFromPath( - /** - * name of file in archive (including directory path). - */ - string $fileName, + public function addFileFromPath(string $name, string $path, ?FileOptions $options = null): void + { + $options = $options ?: new FileOptions(); + $options->defaultTo($this->opt); - /** - * path to file on disk (note: paths should be encoded using - * UNIX-style forward slashes -- e.g '/path/to/some/file'). - */ - string $path, - string $comment = '', - ?CompressionMethod $compressionMethod = null, - ?int $deflateLevel = null, - ?DateTimeInterface $lastModificationDateTime = null, - ?int $maxSize = null, - ?int $exactSize = null, - ?bool $enableZeroHeader = null, - ): void { - if (!is_readable($path)) { - if (!file_exists($path)) { - throw new FileNotFoundException($path); - } - throw new FileNotReadableException($path); - } - - $fileTime = filemtime($path); - if ($fileTime !== false) { - $lastModificationDateTime ??= (new DateTimeImmutable())->setTimestamp($fileTime); - } - - $this->addFileFromCallback( - fileName: $fileName, - callback: function () use ($path) { - - $stream = fopen($path, 'rb'); - - if (!$stream) { - // @codeCoverageIgnoreStart - throw new ResourceActionException('fopen'); - // @codeCoverageIgnoreEnd - } - - return $stream; - }, - comment: $comment, - compressionMethod: $compressionMethod, - deflateLevel: $deflateLevel, - lastModificationDateTime: $lastModificationDateTime, - maxSize: $maxSize, - exactSize: $exactSize, - enableZeroHeader: $enableZeroHeader, - ); + $file = new File($this, $name, $options); + $file->processPath($path); } /** - * Add an open stream (resource) to the archive. + * addFileFromStream * - * ##### File Options - * - * See {@see addFileFromPsr7Stream()} - * - * ##### Examples - * - * ```php - * // create a temporary file stream and write text to it - * $filePointer = tmpfile(); - * fwrite($filePointer, 'The quick brown fox jumped over the lazy dog.'); - * - * // add a file named 'streamfile.txt' from the content of the stream - * $archive->addFileFromStream( - * fileName: 'streamfile.txt', - * stream: $filePointer, - * ); - * ``` - * - * @param resource $stream contents of file as a stream resource - */ - public function addFileFromStream( - string $fileName, - $stream, - string $comment = '', - ?CompressionMethod $compressionMethod = null, - ?int $deflateLevel = null, - ?DateTimeInterface $lastModificationDateTime = null, - ?int $maxSize = null, - ?int $exactSize = null, - ?bool $enableZeroHeader = null, - ): void { - $this->addFileFromCallback( - fileName: $fileName, - callback: fn() => $stream, - comment: $comment, - compressionMethod: $compressionMethod, - deflateLevel: $deflateLevel, - lastModificationDateTime: $lastModificationDateTime, - maxSize: $maxSize, - exactSize: $exactSize, - enableZeroHeader: $enableZeroHeader, - ); - } - - /** * Add an open stream to the archive. * - * ##### Examples + * @param String $name - path of file in archive (including directory). + * @param resource $stream - contents of file as a stream resource + * @param FileOptions $options * - * ```php - * $stream = $response->getBody(); - * // add a file named 'streamfile.txt' from the content of the stream - * $archive->addFileFromPsr7Stream( - * fileName: 'streamfile.txt', - * stream: $stream, - * ); - * ``` + * File Options: + * time - Last-modified timestamp (seconds since the epoch) of + * this file. Defaults to the current time. + * comment - Comment related to this file. * - * @param string $fileName - * path of file in archive (including directory) + * Examples: * - * @param StreamInterface $stream - * contents of file as a stream resource + * // create a temporary file stream and write text to it + * $fp = tmpfile(); + * fwrite($fp, 'The quick brown fox jumped over the lazy dog.'); * - * @param string $comment - * ZIP comment for this file + * // add a file named 'streamfile.txt' from the content of the stream + * $x->addFileFromStream('streamfile.txt', $fp); * - * @param ?CompressionMethod $compressionMethod - * Override `defaultCompressionMethod` + * @return void + */ + public function addFileFromStream(string $name, $stream, ?FileOptions $options = null): void + { + $options = $options ?: new FileOptions(); + $options->defaultTo($this->opt); + + $file = new File($this, $name, $options); + $file->processStream(new Stream($stream)); + } + + /** + * addFileFromPsr7Stream * - * See {@see __construct()} + * Add an open stream to the archive. * - * @param ?int $deflateLevel - * Override `defaultDeflateLevel` + * @param String $name - path of file in archive (including directory). + * @param StreamInterface $stream - contents of file as a stream resource + * @param FileOptions $options * - * See {@see __construct()} + * File Options: + * time - Last-modified timestamp (seconds since the epoch) of + * this file. Defaults to the current time. + * comment - Comment related to this file. * - * @param ?DateTimeInterface $lastModificationDateTime - * Set last modification time of file. + * Examples: * - * Default: `now` + * $stream = $response->getBody(); + * // add a file named 'streamfile.txt' from the content of the stream + * $x->addFileFromPsr7Stream('streamfile.txt', $stream); * - * @param ?int $maxSize - * Only read `maxSize` bytes from file. - * - * The file is considered done when either reaching `EOF` - * or the `maxSize`. - * - * @param ?int $exactSize - * Read exactly `exactSize` bytes from file. - * If `EOF` is reached before reading `exactSize` bytes, an error will be - * thrown. The parameter allows for faster size calculations if the `stream` - * does not support `fstat` size or is slow and otherwise known beforehand. - * - * @param ?bool $enableZeroHeader - * Override `defaultEnableZeroHeader` - * - * See {@see __construct()} + * @return void */ public function addFileFromPsr7Stream( - string $fileName, + string $name, StreamInterface $stream, - string $comment = '', - ?CompressionMethod $compressionMethod = null, - ?int $deflateLevel = null, - ?DateTimeInterface $lastModificationDateTime = null, - ?int $maxSize = null, - ?int $exactSize = null, - ?bool $enableZeroHeader = null, + ?FileOptions $options = null ): void { - $this->addFileFromCallback( - fileName: $fileName, - callback: fn() => $stream, - comment: $comment, - compressionMethod: $compressionMethod, - deflateLevel: $deflateLevel, - lastModificationDateTime: $lastModificationDateTime, - maxSize: $maxSize, - exactSize: $exactSize, - enableZeroHeader: $enableZeroHeader, - ); + $options = $options ?: new FileOptions(); + $options->defaultTo($this->opt); + + $file = new File($this, $name, $options); + $file->processStream($stream); } /** - * Add a file based on a callback. + * finish * - * This is useful when you want to simulate a lot of files without keeping - * all of the file handles open at the same time. - * - * ##### Examples - * - * ```php - * foreach($files as $name => $size) { - * $archive->addFileFromCallback( - * fileName: 'streamfile.txt', - * exactSize: $size, - * callback: function() use($name): Psr\Http\Message\StreamInterface { - * $response = download($name); - * return $response->getBody(); - * } - * ); - * } - * ``` - * - * @param string $fileName - * path of file in archive (including directory) - * - * @param Closure $callback - * @psalm-param Closure(): (resource|StreamInterface|string) $callback - * A callback to get the file contents in the shape of a PHP stream, - * a Psr StreamInterface implementation, or a string. - * - * @param string $comment - * ZIP comment for this file - * - * @param ?CompressionMethod $compressionMethod - * Override `defaultCompressionMethod` - * - * See {@see __construct()} - * - * @param ?int $deflateLevel - * Override `defaultDeflateLevel` - * - * See {@see __construct()} - * - * @param ?DateTimeInterface $lastModificationDateTime - * Set last modification time of file. - * - * Default: `now` - * - * @param ?int $maxSize - * Only read `maxSize` bytes from file. - * - * The file is considered done when either reaching `EOF` - * or the `maxSize`. - * - * @param ?int $exactSize - * Read exactly `exactSize` bytes from file. - * If `EOF` is reached before reading `exactSize` bytes, an error will be - * thrown. The parameter allows for faster size calculations if the `stream` - * does not support `fstat` size or is slow and otherwise known beforehand. - * - * @param ?bool $enableZeroHeader - * Override `defaultEnableZeroHeader` - * - * See {@see __construct()} - */ - public function addFileFromCallback( - string $fileName, - Closure $callback, - string $comment = '', - ?CompressionMethod $compressionMethod = null, - ?int $deflateLevel = null, - ?DateTimeInterface $lastModificationDateTime = null, - ?int $maxSize = null, - ?int $exactSize = null, - ?bool $enableZeroHeader = null, - ): void { - $file = new File( - dataCallback: function () use ($callback, $maxSize) { - $data = $callback(); - - if (is_resource($data)) { - return $data; - } - - if ($data instanceof StreamInterface) { - return StreamWrapper::getResource($data); - } - - - $stream = fopen('php://memory', 'rw+'); - if ($stream === false) { - // @codeCoverageIgnoreStart - throw new ResourceActionException('fopen'); - // @codeCoverageIgnoreEnd - } - if ($maxSize !== null && fwrite($stream, $data, $maxSize) === false) { - // @codeCoverageIgnoreStart - throw new ResourceActionException('fwrite', $stream); - // @codeCoverageIgnoreEnd - } elseif (fwrite($stream, $data) === false) { - // @codeCoverageIgnoreStart - throw new ResourceActionException('fwrite', $stream); - // @codeCoverageIgnoreEnd - } - if (rewind($stream) === false) { - // @codeCoverageIgnoreStart - throw new ResourceActionException('rewind', $stream); - // @codeCoverageIgnoreEnd - } - - return $stream; - - }, - send: $this->send(...), - recordSentBytes: $this->recordSentBytes(...), - operationMode: $this->operationMode, - fileName: $fileName, - startOffset: $this->offset, - compressionMethod: $compressionMethod ?? $this->defaultCompressionMethod, - comment: $comment, - deflateLevel: $deflateLevel ?? $this->defaultDeflateLevel, - lastModificationDateTime: $lastModificationDateTime ?? new DateTimeImmutable(), - maxSize: $maxSize, - exactSize: $exactSize, - enableZip64: $this->enableZip64, - enableZeroHeader: $enableZeroHeader ?? $this->defaultEnableZeroHeader, - ); - - if ($this->operationMode !== OperationMode::NORMAL) { - $this->recordedSimulation[] = $file; - } - - $this->centralDirectoryRecords[] = $file->process(); - } - - /** - * Add a directory to the archive. - * - * ##### File Options - * - * See {@see addFileFromPsr7Stream()} - * - * ##### Examples - * - * ```php - * // add a directory named 'world/' - * $zip->addDirectory(fileName: 'world/'); - * ``` - */ - public function addDirectory( - string $fileName, - string $comment = '', - ?DateTimeInterface $lastModificationDateTime = null, - ): void { - if (!str_ends_with($fileName, '/')) { - $fileName .= '/'; - } - - $this->addFile( - fileName: $fileName, - data: '', - comment: $comment, - compressionMethod: CompressionMethod::STORE, - deflateLevel: null, - lastModificationDateTime: $lastModificationDateTime, - maxSize: 0, - exactSize: 0, - enableZeroHeader: false, - ); - } - - /** - * Executes a previously calculated simulation. - * - * ##### Example - * - * ```php - * $zip = new ZipStream( - * outputName: 'foo.zip', - * operationMode: OperationMode::SIMULATE_STRICT, - * ); - * - * $zip->addFile('test.txt', 'Hello World'); - * - * $size = $zip->finish(); - * - * header('Content-Length: '. $size); - * - * $zip->executeSimulation(); - * ``` - */ - public function executeSimulation(): void - { - if ($this->operationMode !== OperationMode::NORMAL) { - throw new RuntimeException('Zip simulation is not finished.'); - } - - foreach ($this->recordedSimulation as $file) { - $this->centralDirectoryRecords[] = $file->cloneSimulationExecution()->process(); - } - - $this->finish(); - } - - /** * Write zip footer to stream. * - * The clase is left in an unusable state after `finish`. + * Example: * - * ##### Example + * // add a list of files to the archive + * $files = array('foo.txt', 'bar.jpg'); + * foreach ($files as $path) + * $zip->addFile($path, file_get_contents($path)); * - * ```php - * // write footer to stream - * $zip->finish(); - * ``` + * // write footer to stream + * $zip->finish(); + * @return void + * + * @throws OverflowException */ - public function finish(): int + public function finish(): void { - $centralDirectoryStartOffsetOnDisk = $this->offset; - $sizeOfCentralDirectory = 0; - // add trailing cdr file records - foreach ($this->centralDirectoryRecords as $centralDirectoryRecord) { - $this->send($centralDirectoryRecord); - $sizeOfCentralDirectory += strlen($centralDirectoryRecord); + foreach ($this->files as $cdrFile) { + $this->send($cdrFile); + $this->cdr_ofs = $this->cdr_ofs->add(Bigint::init(strlen($cdrFile))); } // Add 64bit headers (if applicable) - if (count($this->centralDirectoryRecords) >= 0xFFFF || - $centralDirectoryStartOffsetOnDisk > 0xFFFFFFFF || - $sizeOfCentralDirectory > 0xFFFFFFFF) { - if (!$this->enableZip64) { + if (count($this->files) >= 0xFFFF || + $this->cdr_ofs->isOver32() || + $this->ofs->isOver32()) { + if (!$this->opt->isEnableZip64()) { throw new OverflowException(); } - $this->send(Zip64\EndOfCentralDirectory::generate( - versionMadeBy: self::ZIP_VERSION_MADE_BY, - versionNeededToExtract: Version::ZIP64->value, - numberOfThisDisk: 0, - numberOfTheDiskWithCentralDirectoryStart: 0, - numberOfCentralDirectoryEntriesOnThisDisk: count($this->centralDirectoryRecords), - numberOfCentralDirectoryEntries: count($this->centralDirectoryRecords), - sizeOfCentralDirectory: $sizeOfCentralDirectory, - centralDirectoryStartOffsetOnDisk: $centralDirectoryStartOffsetOnDisk, - extensibleDataSector: '', - )); - - $this->send(Zip64\EndOfCentralDirectoryLocator::generate( - numberOfTheDiskWithZip64CentralDirectoryStart: 0x00, - zip64centralDirectoryStartOffsetOnDisk: $centralDirectoryStartOffsetOnDisk + $sizeOfCentralDirectory, - totalNumberOfDisks: 1, - )); + $this->addCdr64Eof(); + $this->addCdr64Locator(); } // add trailing cdr eof record - $numberOfCentralDirectoryEntries = min(count($this->centralDirectoryRecords), 0xFFFF); - $this->send(EndOfCentralDirectory::generate( - numberOfThisDisk: 0x00, - numberOfTheDiskWithCentralDirectoryStart: 0x00, - numberOfCentralDirectoryEntriesOnThisDisk: $numberOfCentralDirectoryEntries, - numberOfCentralDirectoryEntries: $numberOfCentralDirectoryEntries, - sizeOfCentralDirectory: min($sizeOfCentralDirectory, 0xFFFFFFFF), - centralDirectoryStartOffsetOnDisk: min($centralDirectoryStartOffsetOnDisk, 0xFFFFFFFF), - zipFileComment: $this->comment, - )); - - $size = $this->offset; + $this->addCdrEof(); // The End $this->clear(); - - return $size; } /** - * @param StreamInterface|resource|null $outputStream - * @return resource + * Create a format string and argument list for pack(), then call + * pack() and return the result. + * + * @param array $fields + * @return string */ - private static function normalizeStream($outputStream) + public static function packFields(array $fields): string { - if ($outputStream instanceof StreamInterface) { - return StreamWrapper::getResource($outputStream); - } - if (is_resource($outputStream)) { - return $outputStream; - } - $resource = fopen('php://output', 'wb'); + $fmt = ''; + $args = []; - if ($resource === false) { - throw new RuntimeException('fopen of php://output failed'); + // populate format string and argument list + foreach ($fields as [$format, $value]) { + if ($format === 'P') { + $fmt .= 'VV'; + if ($value instanceof Bigint) { + $args[] = $value->getLow32(); + $args[] = $value->getHigh32(); + } else { + $args[] = $value; + $args[] = 0; + } + } else { + if ($value instanceof Bigint) { + $value = $value->getLow32(); + } + $fmt .= $format; + $args[] = $value; + } } - return $resource; - } + // prepend format string to argument list + array_unshift($args, $fmt); - /** - * Record sent bytes - */ - private function recordSentBytes(int $sentBytes): void - { - $this->offset += $sentBytes; + // build output string from header and compressed data + return pack(...$args); } /** * Send string, sending HTTP headers if necessary. * Flush output after write if configure option is set. + * + * @param String $str + * @return void */ - private function send(string $data): void + public function send(string $str): void { - if (!$this->ready) { - throw new RuntimeException('Archive is already finished'); - } - - if ($this->operationMode === OperationMode::NORMAL && $this->sendHttpHeaders) { + if ($this->need_headers) { $this->sendHttpHeaders(); - $this->sendHttpHeaders = false; + } + $this->need_headers = false; + + $outputStream = $this->opt->getOutputStream(); + + if ($outputStream instanceof StreamInterface) { + $outputStream->write($str); + } else { + fwrite($outputStream, $str); } - $this->recordSentBytes(strlen($data)); - - if ($this->operationMode === OperationMode::NORMAL) { - if (fwrite($this->outputStream, $data) === false) { - throw new ResourceActionException('fwrite', $this->outputStream); + if ($this->opt->isFlushOutput()) { + // flush output buffer if it is on and flushable + $status = ob_get_status(); + if (isset($status['flags']) && ($status['flags'] & PHP_OUTPUT_HANDLER_FLUSHABLE)) { + ob_flush(); } - if ($this->flushOutput) { - // flush output buffer if it is on and flushable - $status = ob_get_status(); - if (isset($status['flags']) && is_int($status['flags']) && ($status['flags'] & PHP_OUTPUT_HANDLER_FLUSHABLE)) { - ob_flush(); - } - - // Flush system buffers after flushing userspace output buffer - flush(); - } + // Flush system buffers after flushing userspace output buffer + flush(); } } /** - * Send HTTP headers for this stream. - */ - private function sendHttpHeaders(): void + * Is this file larger than large_file_size? + * + * @param string $path + * @return bool + */ + public function isLargeFile(string $path): bool + { + if (!$this->opt->isStatFiles()) { + return false; + } + $stat = stat($path); + return $stat['size'] > $this->opt->getLargeFileSize(); + } + + /** + * Save file attributes for trailing CDR record. + * + * @param File $file + * @return void + */ + public function addToCdr(File $file): void + { + $file->ofs = $this->ofs; + $this->ofs = $this->ofs->add($file->getTotalLength()); + $this->files[] = $file->getCdrFile(); + } + + /** + * Send ZIP64 CDR EOF (Central Directory Record End-of-File) record. + * + * @return void + */ + protected function addCdr64Eof(): void + { + $num_files = count($this->files); + $cdr_length = $this->cdr_ofs; + $cdr_offset = $this->ofs; + + $fields = [ + ['V', static::ZIP64_CDR_EOF_SIGNATURE], // ZIP64 end of central file header signature + ['P', 44], // Length of data below this header (length of block - 12) = 44 + ['v', static::ZIP_VERSION_MADE_BY], // Made by version + ['v', Version::ZIP64], // Extract by version + ['V', 0x00], // disk number + ['V', 0x00], // no of disks + ['P', $num_files], // no of entries on disk + ['P', $num_files], // no of entries in cdr + ['P', $cdr_length], // CDR size + ['P', $cdr_offset], // CDR offset + ]; + + $ret = static::packFields($fields); + $this->send($ret); + } + + /** + * Send HTTP headers for this stream. + * + * @return void + */ + protected function sendHttpHeaders(): void { // grab content disposition - $disposition = $this->contentDisposition; + $disposition = $this->opt->getContentDisposition(); - if ($this->outputName !== null) { + if ($this->output_name) { // Various different browsers dislike various characters here. Strip them all for safety. - $safeOutput = trim(str_replace(['"', "'", '\\', ';', "\n", "\r"], '', $this->outputName)); + $safe_output = trim(str_replace(['"', "'", '\\', ';', "\n", "\r"], '', $this->output_name)); // Check if we need to UTF-8 encode the filename - $urlencoded = rawurlencode($safeOutput); + $urlencoded = rawurlencode($safe_output); $disposition .= "; filename*=UTF-8''{$urlencoded}"; } $headers = [ - 'Content-Type' => $this->contentType, + 'Content-Type' => $this->opt->getContentType(), 'Content-Disposition' => $disposition, 'Pragma' => 'public', 'Cache-Control' => 'public, must-revalidate', 'Content-Transfer-Encoding' => 'binary', ]; + $call = $this->opt->getHttpHeaderCallback(); foreach ($headers as $key => $val) { - ($this->httpHeaderCallback)("$key: $val"); + $call("$key: $val"); } } + /** + * Send ZIP64 CDR Locator (Central Directory Record Locator) record. + * + * @return void + */ + protected function addCdr64Locator(): void + { + $cdr_offset = $this->ofs->add($this->cdr_ofs); + + $fields = [ + ['V', static::ZIP64_CDR_LOCATOR_SIGNATURE], // ZIP64 end of central file header signature + ['V', 0x00], // Disc number containing CDR64EOF + ['P', $cdr_offset], // CDR offset + ['V', 1], // Total number of disks + ]; + + $ret = static::packFields($fields); + $this->send($ret); + } + + /** + * Send CDR EOF (Central Directory Record End-of-File) record. + * + * @return void + */ + protected function addCdrEof(): void + { + $num_files = count($this->files); + $cdr_length = $this->cdr_ofs; + $cdr_offset = $this->ofs; + + // grab comment (if specified) + $comment = $this->opt->getComment(); + + $fields = [ + ['V', static::CDR_EOF_SIGNATURE], // end of central file header signature + ['v', 0x00], // disk number + ['v', 0x00], // no of disks + ['v', min($num_files, 0xFFFF)], // no of entries on disk + ['v', min($num_files, 0xFFFF)], // no of entries in cdr + ['V', $cdr_length->getLowFF()], // CDR size + ['V', $cdr_offset->getLowFF()], // CDR offset + ['v', strlen($comment)], // Zip Comment size + ]; + + $ret = static::packFields($fields) . $comment; + $this->send($ret); + } + /** * Clear all internal variables. Note that the stream object is not * usable after this. + * + * @return void */ - private function clear(): void + protected function clear(): void { - $this->centralDirectoryRecords = []; - $this->offset = 0; - - if ($this->operationMode === OperationMode::NORMAL) { - $this->ready = false; - $this->recordedSimulation = []; - } else { - $this->operationMode = OperationMode::NORMAL; - } + $this->files = []; + $this->ofs = new Bigint(); + $this->cdr_ofs = new Bigint(); + $this->opt = new ArchiveOptions(); } } diff --git a/vendor/maennchen/zipstream-php/src/Zs/ExtendedInformationExtraField.php b/vendor/maennchen/zipstream-php/src/Zs/ExtendedInformationExtraField.php deleted file mode 100644 index bf621bc..0000000 --- a/vendor/maennchen/zipstream-php/src/Zs/ExtendedInformationExtraField.php +++ /dev/null @@ -1,23 +0,0 @@ -fail("File {$filePath} must contain {$needle}"); - } - - protected function assertFileDoesNotContain(string $filePath, string $needle): void - { - $last = ''; - - $handle = fopen($filePath, 'r'); - while (!feof($handle)) { - $line = fgets($handle, 1024); - - if (str_contains($last . $line, $needle)) { - fclose($handle); - - $this->fail("File {$filePath} must not contain {$needle}"); - } - - $last = $line; - } - - fclose($handle); - } -} diff --git a/vendor/maennchen/zipstream-php/test/BigintTest.php b/vendor/maennchen/zipstream-php/test/BigintTest.php new file mode 100644 index 0000000..4d26fcd --- /dev/null +++ b/vendor/maennchen/zipstream-php/test/BigintTest.php @@ -0,0 +1,66 @@ +assertSame('0x0000000012345678', $bigint->getHex64()); + $this->assertSame(0x12345678, $bigint->getLow32()); + $this->assertSame(0, $bigint->getHigh32()); + } + + public function testConstructLarge(): void + { + $bigint = new Bigint(0x87654321); + $this->assertSame('0x0000000087654321', $bigint->getHex64()); + $this->assertSame('87654321', bin2hex(pack('N', $bigint->getLow32()))); + $this->assertSame(0, $bigint->getHigh32()); + } + + public function testAddSmallValue(): void + { + $bigint = new Bigint(1); + $bigint = $bigint->add(Bigint::init(2)); + $this->assertSame(3, $bigint->getLow32()); + $this->assertFalse($bigint->isOver32()); + $this->assertTrue($bigint->isOver32(true)); + $this->assertSame($bigint->getLowFF(), (float)$bigint->getLow32()); + $this->assertSame($bigint->getLowFF(true), (float)0xFFFFFFFF); + } + + public function testAddWithOverflowAtLowestByte(): void + { + $bigint = new Bigint(0xFF); + $bigint = $bigint->add(Bigint::init(0x01)); + $this->assertSame(0x100, $bigint->getLow32()); + } + + public function testAddWithOverflowAtInteger32(): void + { + $bigint = new Bigint(0xFFFFFFFE); + $this->assertFalse($bigint->isOver32()); + $bigint = $bigint->add(Bigint::init(0x01)); + $this->assertTrue($bigint->isOver32()); + $bigint = $bigint->add(Bigint::init(0x01)); + $this->assertSame('0x0000000100000000', $bigint->getHex64()); + $this->assertTrue($bigint->isOver32()); + $this->assertSame((float)0xFFFFFFFF, $bigint->getLowFF()); + } + + public function testAddWithOverflowAtInteger64(): void + { + $bigint = Bigint::fromLowHigh(0xFFFFFFFF, 0xFFFFFFFF); + $this->assertSame('0xFFFFFFFFFFFFFFFF', $bigint->getHex64()); + $this->expectException(OverflowException::class); + $bigint->add(Bigint::init(1)); + } +} diff --git a/vendor/maennchen/zipstream-php/test/CentralDirectoryFileHeaderTest.php b/vendor/maennchen/zipstream-php/test/CentralDirectoryFileHeaderTest.php deleted file mode 100644 index 5457b4f..0000000 --- a/vendor/maennchen/zipstream-php/test/CentralDirectoryFileHeaderTest.php +++ /dev/null @@ -1,60 +0,0 @@ -assertSame( - bin2hex($header), - '504b0102' . // 4 bytes; central file header signature - '0306' . // 2 bytes; version made by - '2d00' . // 2 bytes; version needed to extract - '2222' . // 2 bytes; general purpose bit flag - '0800' . // 2 bytes; compression method - '2008' . // 2 bytes; last mod file time - '2154' . // 2 bytes; last mod file date - '11111111' . // 4 bytes; crc-32 - '77777777' . // 4 bytes; compressed size - '99999999' . // 4 bytes; uncompressed size - '0800' . // 2 bytes; file name length (n) - '0c00' . // 2 bytes; extra field length (m) - '0c00' . // 2 bytes; file comment length (o) - '0000' . // 2 bytes; disk number start - '0000' . // 2 bytes; internal file attributes - '20000000' . // 4 bytes; external file attributes - '34120000' . // 4 bytes; relative offset of local header - '746573742e706e67' . // n bytes; file name - '736f6d6520636f6e74656e74' . // m bytes; extra field - '736f6d6520636f6d6d656e74' // o bytes; file comment - ); - } -} diff --git a/vendor/maennchen/zipstream-php/test/DataDescriptorTest.php b/vendor/maennchen/zipstream-php/test/DataDescriptorTest.php deleted file mode 100644 index cc886c7..0000000 --- a/vendor/maennchen/zipstream-php/test/DataDescriptorTest.php +++ /dev/null @@ -1,26 +0,0 @@ -assertSame( - bin2hex(DataDescriptor::generate( - crc32UncompressedData: 0x11111111, - compressedSize: 0x77777777, - uncompressedSize: 0x99999999, - )), - '504b0708' . // 4 bytes; Optional data descriptor signature = 0x08074b50 - '11111111' . // 4 bytes; CRC-32 of uncompressed data - '77777777' . // 4 bytes; Compressed size - '99999999' // 4 bytes; Uncompressed size - ); - } -} diff --git a/vendor/maennchen/zipstream-php/test/EndOfCentralDirectoryTest.php b/vendor/maennchen/zipstream-php/test/EndOfCentralDirectoryTest.php deleted file mode 100644 index be0a907..0000000 --- a/vendor/maennchen/zipstream-php/test/EndOfCentralDirectoryTest.php +++ /dev/null @@ -1,35 +0,0 @@ -assertSame( - bin2hex(EndOfCentralDirectory::generate( - numberOfThisDisk: 0x00, - numberOfTheDiskWithCentralDirectoryStart: 0x00, - numberOfCentralDirectoryEntriesOnThisDisk: 0x10, - numberOfCentralDirectoryEntries: 0x10, - sizeOfCentralDirectory: 0x22, - centralDirectoryStartOffsetOnDisk: 0x33, - zipFileComment: 'foo', - )), - '504b0506' . // 4 bytes; end of central dir signature 0x06054b50 - '0000' . // 2 bytes; number of this disk - '0000' . // 2 bytes; number of the disk with the start of the central directory - '1000' . // 2 bytes; total number of entries in the central directory on this disk - '1000' . // 2 bytes; total number of entries in the central directory - '22000000' . // 4 bytes; size of the central directory - '33000000' . // 4 bytes; offset of start of central directory with respect to the starting disk number - '0300' . // 2 bytes; .ZIP file comment length - bin2hex('foo') - ); - } -} diff --git a/vendor/maennchen/zipstream-php/test/EndlessCycleStream.php b/vendor/maennchen/zipstream-php/test/EndlessCycleStream.php deleted file mode 100644 index d9e7df1..0000000 --- a/vendor/maennchen/zipstream-php/test/EndlessCycleStream.php +++ /dev/null @@ -1,104 +0,0 @@ -detach(); - } - - /** - * @return null - */ - public function detach() - { - return; - } - - public function getSize(): ?int - { - return null; - } - - public function tell(): int - { - return $this->offset; - } - - public function eof(): bool - { - return false; - } - - public function isSeekable(): bool - { - return true; - } - - public function seek(int $offset, int $whence = SEEK_SET): void - { - switch ($whence) { - case SEEK_SET: - $this->offset = $offset; - break; - case SEEK_CUR: - $this->offset += $offset; - break; - case SEEK_END: - throw new RuntimeException('Infinite Stream!'); - break; - } - } - - public function rewind(): void - { - $this->seek(0); - } - - public function isWritable(): bool - { - return false; - } - - public function write(string $string): int - { - throw new RuntimeException('Not writeable'); - } - - public function isReadable(): bool - { - return true; - } - - public function read(int $length): string - { - $this->offset += $length; - return substr(str_repeat($this->toRepeat, (int) ceil($length / strlen($this->toRepeat))), 0, $length); - } - - public function getContents(): string - { - throw new RuntimeException('Infinite Stream!'); - } - - public function getMetadata(?string $key = null): array|null - { - return $key !== null ? null : []; - } -} diff --git a/vendor/maennchen/zipstream-php/test/FaultInjectionResource.php b/vendor/maennchen/zipstream-php/test/FaultInjectionResource.php deleted file mode 100644 index af9305b..0000000 --- a/vendor/maennchen/zipstream-php/test/FaultInjectionResource.php +++ /dev/null @@ -1,141 +0,0 @@ -context); - - if (!isset($options[self::NAME]['injectFaults'])) { - return false; - } - - $this->mode = $mode; - $this->injectFaults = $options[self::NAME]['injectFaults']; - - if ($this->shouldFail(__FUNCTION__)) { - return false; - } - - return true; - } - - public function stream_write(string $data) - { - if ($this->shouldFail(__FUNCTION__)) { - return false; - } - return true; - } - - public function stream_eof() - { - return true; - } - - public function stream_seek(int $offset, int $whence): bool - { - if ($this->shouldFail(__FUNCTION__)) { - return false; - } - - return true; - } - - public function stream_tell(): int - { - if ($this->shouldFail(__FUNCTION__)) { - return false; - } - - return 0; - } - - public static function register(): void - { - if (!in_array(self::NAME, stream_get_wrappers(), true)) { - stream_wrapper_register(self::NAME, __CLASS__); - } - } - - public function stream_stat(): array - { - static $modeMap = [ - 'r' => 33060, - 'rb' => 33060, - 'r+' => 33206, - 'w' => 33188, - 'wb' => 33188, - ]; - - return [ - 'dev' => 0, - 'ino' => 0, - 'mode' => $modeMap[$this->mode], - 'nlink' => 0, - 'uid' => 0, - 'gid' => 0, - 'rdev' => 0, - 'size' => 0, - 'atime' => 0, - 'mtime' => 0, - 'ctime' => 0, - 'blksize' => 0, - 'blocks' => 0, - ]; - } - - public function url_stat(string $path, int $flags): array - { - return [ - 'dev' => 0, - 'ino' => 0, - 'mode' => 0, - 'nlink' => 0, - 'uid' => 0, - 'gid' => 0, - 'rdev' => 0, - 'size' => 0, - 'atime' => 0, - 'mtime' => 0, - 'ctime' => 0, - 'blksize' => 0, - 'blocks' => 0, - ]; - } - - private static function createStreamContext(array $injectFaults) - { - return stream_context_create([ - self::NAME => ['injectFaults' => $injectFaults], - ]); - } - - private function shouldFail(string $function): bool - { - return in_array($function, $this->injectFaults, true); - } -} diff --git a/vendor/maennchen/zipstream-php/test/LocalFileHeaderTest.php b/vendor/maennchen/zipstream-php/test/LocalFileHeaderTest.php deleted file mode 100644 index 196dd0f..0000000 --- a/vendor/maennchen/zipstream-php/test/LocalFileHeaderTest.php +++ /dev/null @@ -1,47 +0,0 @@ -assertSame( - bin2hex((string) $header), - '504b0304' . // 4 bytes; Local file header signature - '2d00' . // 2 bytes; Version needed to extract (minimum) - '2222' . // 2 bytes; General purpose bit flag - '0800' . // 2 bytes; Compression method; e.g. none = 0, DEFLATE = 8 - '2008' . // 2 bytes; File last modification time - '2154' . // 2 bytes; File last modification date - '11111111' . // 4 bytes; CRC-32 of uncompressed data - '77777777' . // 4 bytes; Compressed size (or 0xffffffff for ZIP64) - '99999999' . // 4 bytes; Uncompressed size (or 0xffffffff for ZIP64) - '0800' . // 2 bytes; File name length (n) - '0c00' . // 2 bytes; Extra field length (m) - '746573742e706e67' . // n bytes; File name - '736f6d6520636f6e74656e74' // m bytes; Extra field - ); - } -} diff --git a/vendor/maennchen/zipstream-php/test/PackFieldTest.php b/vendor/maennchen/zipstream-php/test/PackFieldTest.php deleted file mode 100644 index ecd66ba..0000000 --- a/vendor/maennchen/zipstream-php/test/PackFieldTest.php +++ /dev/null @@ -1,42 +0,0 @@ -assertSame( - bin2hex(PackField::pack(new PackField(format: 'v', value: 0x1122))), - '2211', - ); - } - - public function testOverflow2(): void - { - $this->expectException(RuntimeException::class); - - PackField::pack(new PackField(format: 'v', value: 0xFFFFF)); - } - - public function testOverflow4(): void - { - $this->expectException(RuntimeException::class); - - PackField::pack(new PackField(format: 'V', value: 0xFFFFFFFFF)); - } - - public function testUnknownOperator(): void - { - $this->assertSame( - bin2hex(PackField::pack(new PackField(format: 'a', value: 0x1122))), - '34', - ); - } -} diff --git a/vendor/maennchen/zipstream-php/test/ResourceStream.php b/vendor/maennchen/zipstream-php/test/ResourceStream.php deleted file mode 100644 index 752a1a3..0000000 --- a/vendor/maennchen/zipstream-php/test/ResourceStream.php +++ /dev/null @@ -1,159 +0,0 @@ -isSeekable()) { - $this->seek(0); - } - return (string) stream_get_contents($this->stream); - } - - public function close(): void - { - $stream = $this->detach(); - if ($stream) { - fclose($stream); - } - } - - public function detach() - { - $result = $this->stream; - // According to the interface, the stream is left in an unusable state; - /** @psalm-suppress PossiblyNullPropertyAssignmentValue */ - $this->stream = null; - return $result; - } - - public function seek(int $offset, int $whence = SEEK_SET): void - { - if (!$this->isSeekable()) { - throw new RuntimeException(); - } - if (fseek($this->stream, $offset, $whence) !== 0) { - // @codeCoverageIgnoreStart - throw new RuntimeException(); - // @codeCoverageIgnoreEnd - } - } - - public function isSeekable(): bool - { - return (bool) $this->getMetadata('seekable'); - } - - public function getMetadata(?string $key = null) - { - $metadata = stream_get_meta_data($this->stream); - return $key !== null ? @$metadata[$key] : $metadata; - } - - public function getSize(): ?int - { - $stats = fstat($this->stream); - return $stats['size']; - } - - public function tell(): int - { - $position = ftell($this->stream); - if ($position === false) { - // @codeCoverageIgnoreStart - throw new RuntimeException(); - // @codeCoverageIgnoreEnd - } - return $position; - } - - public function eof(): bool - { - return feof($this->stream); - } - - public function rewind(): void - { - $this->seek(0); - } - - public function write(string $string): int - { - if (!$this->isWritable()) { - throw new RuntimeException(); - } - if (fwrite($this->stream, $string) === false) { - // @codeCoverageIgnoreStart - throw new RuntimeException(); - // @codeCoverageIgnoreEnd - } - return strlen($string); - } - - public function isWritable(): bool - { - $mode = $this->getMetadata('mode'); - if (!is_string($mode)) { - // @codeCoverageIgnoreStart - throw new RuntimeException('Could not get stream mode from metadata!'); - // @codeCoverageIgnoreEnd - } - return preg_match('/[waxc+]/', $mode) === 1; - } - - public function read(int $length): string - { - if (!$this->isReadable()) { - throw new RuntimeException(); - } - $result = fread($this->stream, $length); - if ($result === false) { - // @codeCoverageIgnoreStart - throw new RuntimeException(); - // @codeCoverageIgnoreEnd - } - return $result; - } - - public function isReadable(): bool - { - $mode = $this->getMetadata('mode'); - if (!is_string($mode)) { - // @codeCoverageIgnoreStart - throw new RuntimeException('Could not get stream mode from metadata!'); - // @codeCoverageIgnoreEnd - } - return preg_match('/[r+]/', $mode) === 1; - } - - public function getContents(): string - { - if (!$this->isReadable()) { - throw new RuntimeException(); - } - $result = stream_get_contents($this->stream); - if ($result === false) { - // @codeCoverageIgnoreStart - throw new RuntimeException(); - // @codeCoverageIgnoreEnd - } - return $result; - } -} diff --git a/vendor/maennchen/zipstream-php/test/Tempfile.php b/vendor/maennchen/zipstream-php/test/Tempfile.php deleted file mode 100644 index 7ef9c61..0000000 --- a/vendor/maennchen/zipstream-php/test/Tempfile.php +++ /dev/null @@ -1,42 +0,0 @@ -getTmpFileStream(); - - $this->tempfile = $tempfile; - $this->tempfileStream = $tempfileStream; - } - - protected function tearDown(): void - { - unlink($this->tempfile); - if (is_resource($this->tempfileStream)) { - fclose($this->tempfileStream); - } - - $this->tempfile = null; - $this->tempfileStream = null; - } - - protected function getTmpFileStream(): array - { - $tmp = tempnam(sys_get_temp_dir(), 'zipstreamtest'); - $stream = fopen($tmp, 'wb+'); - - return [$tmp, $stream]; - } -} diff --git a/vendor/maennchen/zipstream-php/test/TimeTest.php b/vendor/maennchen/zipstream-php/test/TimeTest.php deleted file mode 100644 index 61cfe03..0000000 --- a/vendor/maennchen/zipstream-php/test/TimeTest.php +++ /dev/null @@ -1,44 +0,0 @@ -assertSame( - Time::dateTimeToDosTime(new DateTimeImmutable('2014-11-17T17:46:08Z')), - 1165069764 - ); - - // January 1 1980 - DOS Epoch. - $this->assertSame( - Time::dateTimeToDosTime(new DateTimeImmutable('1980-01-01T00:00:00+00:00')), - 2162688 - ); - - // Local timezone different than UTC. - $prevLocalTimezone = date_default_timezone_get(); - date_default_timezone_set('Europe/Berlin'); - $this->assertSame( - Time::dateTimeToDosTime(new DateTimeImmutable('1980-01-01T00:00:00+00:00')), - 2162688 - ); - date_default_timezone_set($prevLocalTimezone); - } - - public function testTooEarlyDateToDosTime(): void - { - $this->expectException(DosTimeOverflowException::class); - - // January 1 1980 is the minimum DOS Epoch. - Time::dateTimeToDosTime(new DateTimeImmutable('1970-01-01T00:00:00+00:00')); - } -} diff --git a/vendor/maennchen/zipstream-php/test/Util.php b/vendor/maennchen/zipstream-php/test/Util.php deleted file mode 100644 index 86592b4..0000000 --- a/vendor/maennchen/zipstream-php/test/Util.php +++ /dev/null @@ -1,127 +0,0 @@ -cmdExists('hexdump')) { - return ''; - } - - $output = []; - - if (!exec("hexdump -C \"$path\" | head -n 50", $output)) { - return ''; - } - - return "\nHexdump:\n" . implode("\n", $output); - } - - protected function validateAndExtractZip(string $zipPath): string - { - $tmpDir = $this->getTmpDir(); - - $zipArchive = new ZipArchive(); - $result = $zipArchive->open($zipPath); - - if ($result !== true) { - $codeName = $this->zipArchiveOpenErrorCodeName($result); - $debugInformation = $this->dumpZipContents($zipPath); - - $this->fail("Failed to open {$zipPath}. Code: $result ($codeName)$debugInformation"); - - return $tmpDir; - } - - $this->assertSame(0, $zipArchive->status); - $this->assertSame(0, $zipArchive->statusSys); - - $zipArchive->extractTo($tmpDir); - $zipArchive->close(); - - return $tmpDir; - } - - protected function zipArchiveOpenErrorCodeName(int $code): string - { - switch ($code) { - case ZipArchive::ER_EXISTS: return 'ER_EXISTS'; - case ZipArchive::ER_INCONS: return 'ER_INCONS'; - case ZipArchive::ER_INVAL: return 'ER_INVAL'; - case ZipArchive::ER_MEMORY: return 'ER_MEMORY'; - case ZipArchive::ER_NOENT: return 'ER_NOENT'; - case ZipArchive::ER_NOZIP: return 'ER_NOZIP'; - case ZipArchive::ER_OPEN: return 'ER_OPEN'; - case ZipArchive::ER_READ: return 'ER_READ'; - case ZipArchive::ER_SEEK: return 'ER_SEEK'; - default: return 'unknown'; - } - } - - protected function getTmpDir(): string - { - $tmp = tempnam(sys_get_temp_dir(), 'zipstreamtest'); - unlink($tmp); - mkdir($tmp) or $this->fail('Failed to make directory'); - - return $tmp; - } - - /** - * @return string[] - */ - protected function getRecursiveFileList(string $path, bool $includeDirectories = false): array - { - $data = []; - $path = (string) realpath($path); - $files = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path)); - - $pathLen = strlen($path); - foreach ($files as $file) { - $filePath = $file->getRealPath(); - - if (is_dir($filePath) && !$includeDirectories) { - continue; - } - - $data[] = substr($filePath, $pathLen + 1); - } - - sort($data); - - return $data; - } -} diff --git a/vendor/maennchen/zipstream-php/test/Zip64/DataDescriptorTest.php b/vendor/maennchen/zipstream-php/test/Zip64/DataDescriptorTest.php deleted file mode 100644 index 49fb2cc..0000000 --- a/vendor/maennchen/zipstream-php/test/Zip64/DataDescriptorTest.php +++ /dev/null @@ -1,28 +0,0 @@ -assertSame( - bin2hex($descriptor), - '504b0708' . // 4 bytes; Optional data descriptor signature = 0x08074b50 - '11111111' . // 4 bytes; CRC-32 of uncompressed data - '6666666677777777' . // 8 bytes; Compressed size - '8888888899999999' // 8 bytes; Uncompressed size - ); - } -} diff --git a/vendor/maennchen/zipstream-php/test/Zip64/EndOfCentralDirectoryLocatorTest.php b/vendor/maennchen/zipstream-php/test/Zip64/EndOfCentralDirectoryLocatorTest.php deleted file mode 100644 index 271a298..0000000 --- a/vendor/maennchen/zipstream-php/test/Zip64/EndOfCentralDirectoryLocatorTest.php +++ /dev/null @@ -1,28 +0,0 @@ -assertSame( - bin2hex($descriptor), - '504b0607' . // 4 bytes; zip64 end of central dir locator signature - 0x07064b50 - '11111111' . // 4 bytes; number of the disk with the start of the zip64 end of central directory - '3333333322222222' . // 28 bytes; relative offset of the zip64 end of central directory record - '44444444' // 4 bytes;total number of disks - ); - } -} diff --git a/vendor/maennchen/zipstream-php/test/Zip64/EndOfCentralDirectoryTest.php b/vendor/maennchen/zipstream-php/test/Zip64/EndOfCentralDirectoryTest.php deleted file mode 100644 index b86fb17..0000000 --- a/vendor/maennchen/zipstream-php/test/Zip64/EndOfCentralDirectoryTest.php +++ /dev/null @@ -1,41 +0,0 @@ -assertSame( - bin2hex($descriptor), - '504b0606' . // 4 bytes;zip64 end of central dir signature - 0x06064b50 - '2f00000000000000' . // 8 bytes; size of zip64 end of central directory record - '3333' . // 2 bytes; version made by - '4444' . // 2 bytes; version needed to extract - '55555555' . // 4 bytes; number of this disk - '66666666' . // 4 bytes; number of the disk with the start of the central directory - '8888888877777777' . // 8 bytes; total number of entries in the central directory on this disk - 'aaaaaaaa99999999' . // 8 bytes; total number of entries in the central directory - 'ccccccccbbbbbbbb' . // 8 bytes; size of the central directory - 'eeeeeeeedddddddd' . // 8 bytes; offset of start of central directory with respect to the starting disk number - bin2hex('foo') - ); - } -} diff --git a/vendor/maennchen/zipstream-php/test/Zip64/ExtendedInformationExtraFieldTest.php b/vendor/maennchen/zipstream-php/test/Zip64/ExtendedInformationExtraFieldTest.php deleted file mode 100644 index 904783d..0000000 --- a/vendor/maennchen/zipstream-php/test/Zip64/ExtendedInformationExtraFieldTest.php +++ /dev/null @@ -1,42 +0,0 @@ -assertSame( - bin2hex($extraField), - '0100' . // 2 bytes; Tag for this "extra" block type - '1c00' . // 2 bytes; Size of this "extra" block - '6666666677777777' . // 8 bytes; Original uncompressed file size - '8888888899999999' . // 8 bytes; Size of compressed data - '1111111122222222' . // 8 bytes; Offset of local header record - '33333333' // 4 bytes; Number of the disk on which this file starts - ); - } - - public function testSerializesEmptyCorrectly(): void - { - $extraField = ExtendedInformationExtraField::generate(); - - $this->assertSame( - bin2hex($extraField), - '0100' . // 2 bytes; Tag for this "extra" block type - '0000' // 2 bytes; Size of this "extra" block - ); - } -} diff --git a/vendor/maennchen/zipstream-php/test/ZipStreamTest.php b/vendor/maennchen/zipstream-php/test/ZipStreamTest.php index f4ead1d..0aa6535 100644 --- a/vendor/maennchen/zipstream-php/test/ZipStreamTest.php +++ b/vendor/maennchen/zipstream-php/test/ZipStreamTest.php @@ -2,49 +2,80 @@ declare(strict_types=1); -namespace ZipStream\Test; +namespace ZipStreamTest; -use DateTimeImmutable; use GuzzleHttp\Psr7\Response; -use GuzzleHttp\Psr7\StreamWrapper; use org\bovigo\vfs\vfsStream; -use PHPUnit\Framework\Attributes\Group; use PHPUnit\Framework\TestCase; -use Psr\Http\Message\StreamInterface; -use RuntimeException; +use RecursiveDirectoryIterator; +use RecursiveIteratorIterator; +use ReflectionClass; use ZipArchive; -use ZipStream\CompressionMethod; -use ZipStream\Exception\FileNotFoundException; -use ZipStream\Exception\FileNotReadableException; -use ZipStream\Exception\FileSizeIncorrectException; -use ZipStream\Exception\OverflowException; -use ZipStream\Exception\ResourceActionException; -use ZipStream\Exception\SimulationFileUnknownException; -use ZipStream\Exception\StreamNotReadableException; -use ZipStream\Exception\StreamNotSeekableException; -use ZipStream\OperationMode; -use ZipStream\PackField; +use ZipStream\File; +use ZipStream\Option\Archive as ArchiveOptions; +use ZipStream\Option\File as FileOptions; +use ZipStream\Option\Method; +use ZipStream\Stream; use ZipStream\ZipStream; +/** + * Test Class for the Main ZipStream CLass + */ class ZipStreamTest extends TestCase { - use Util; - use Assertions; - use Tempfile; + public function testFileNotFoundException(): void + { + $this->expectException(\ZipStream\Exception\FileNotFoundException::class); + // Get ZipStream Object + $zip = new ZipStream(); + + // Trigger error by adding a file which doesn't exist + $zip->addFileFromPath('foobar.php', '/foo/bar/foobar.php'); + } + + public function testFileNotReadableException(): void + { + // create new virtual filesystem + $root = vfsStream::setup('vfs'); + // create a virtual file with no permissions + $file = vfsStream::newFile('foo.txt', 0)->at($root)->setContent('bar'); + $zip = new ZipStream(); + $this->expectException(\ZipStream\Exception\FileNotReadableException::class); + $zip->addFileFromPath('foo.txt', $file->url()); + } + + public function testDostime(): void + { + // Allows testing of protected method + $class = new ReflectionClass(File::class); + $method = $class->getMethod('dostime'); + $method->setAccessible(true); + + $this->assertSame($method->invoke(null, 1416246368), 1165069764); + + // January 1 1980 - DOS Epoch. + $this->assertSame($method->invoke(null, 315532800), 2162688); + + // January 1 1970 -> January 1 1980 due to minimum DOS Epoch. @todo Throw Exception? + $this->assertSame($method->invoke(null, 0), 2162688); + } public function testAddFile(): void { - $zip = new ZipStream( - outputStream: $this->tempfileStream, - sendHttpHeaders: false, - ); + [$tmp, $stream] = $this->getTmpFileStream(); + + $options = new ArchiveOptions(); + $options->setOutputStream($stream); + + $zip = new ZipStream(null, $options); $zip->addFile('sample.txt', 'Sample String Data'); $zip->addFile('test/sample.txt', 'More Simple Sample Data'); $zip->finish(); + fclose($stream); - $tmpDir = $this->validateAndExtractZip($this->tempfile); + $tmpDir = $this->validateAndExtractZip($tmp); $files = $this->getRecursiveFileList($tmpDir); $this->assertSame(['sample.txt', 'test' . DIRECTORY_SEPARATOR . 'sample.txt'], $files); @@ -55,10 +86,12 @@ class ZipStreamTest extends TestCase public function testAddFileUtf8NameComment(): void { - $zip = new ZipStream( - outputStream: $this->tempfileStream, - sendHttpHeaders: false, - ); + [$tmp, $stream] = $this->getTmpFileStream(); + + $options = new ArchiveOptions(); + $options->setOutputStream($stream); + + $zip = new ZipStream(null, $options); $name = 'árvíztűrő tükörfúrógép.txt'; $content = 'Sample String Data'; @@ -67,26 +100,32 @@ class ZipStreamTest extends TestCase 'from Hungarian language in lowercase. ' . 'In uppercase: ÁÍŰŐÜÖÚÓÉ'; - $zip->addFile(fileName: $name, data: $content, comment: $comment); - $zip->finish(); + $fileOptions = new FileOptions(); + $fileOptions->setComment($comment); - $tmpDir = $this->validateAndExtractZip($this->tempfile); + $zip->addFile($name, $content, $fileOptions); + $zip->finish(); + fclose($stream); + + $tmpDir = $this->validateAndExtractZip($tmp); $files = $this->getRecursiveFileList($tmpDir); $this->assertSame([$name], $files); $this->assertStringEqualsFile($tmpDir . '/' . $name, $content); - $zipArchive = new ZipArchive(); - $zipArchive->open($this->tempfile); - $this->assertSame($comment, $zipArchive->getCommentName($name)); + $zipArch = new ZipArchive(); + $zipArch->open($tmp); + $this->assertSame($comment, $zipArch->getCommentName($name)); } public function testAddFileUtf8NameNonUtfComment(): void { - $zip = new ZipStream( - outputStream: $this->tempfileStream, - sendHttpHeaders: false, - ); + [$tmp, $stream] = $this->getTmpFileStream(); + + $options = new ArchiveOptions(); + $options->setOutputStream($stream); + + $zip = new ZipStream(null, $options); $name = 'á.txt'; $content = 'any'; @@ -98,111 +137,101 @@ class ZipStreamTest extends TestCase // nearly CP850 (DOS-Latin-1) $guessComment = mb_convert_encoding($comment, 'UTF-8', 'CP850'); - $zip->addFile(fileName: $name, data: $content, comment: $comment); + $fileOptions = new FileOptions(); + $fileOptions->setComment($comment); + $zip->addFile($name, $content, $fileOptions); $zip->finish(); + fclose($stream); $zipArch = new ZipArchive(); - $zipArch->open($this->tempfile); + $zipArch->open($tmp); $this->assertSame($guessComment, $zipArch->getCommentName($name)); $this->assertSame($comment, $zipArch->getCommentName($name, ZipArchive::FL_ENC_RAW)); } + public function testAddFileNonUtf8NameUtfComment(): void + { + [$tmp, $stream] = $this->getTmpFileStream(); + + $options = new ArchiveOptions(); + $options->setOutputStream($stream); + + $zip = new ZipStream(null, $options); + + $name = mb_convert_encoding('á.txt', 'ISO-8859-2', 'UTF-8'); + $content = 'any'; + $comment = 'á'; + + // @see https://libzip.org/documentation/zip_get_name.html + // + // mb_convert_encoding hasn't CP437. + // nearly CP850 (DOS-Latin-1) + $guessName = mb_convert_encoding($name, 'UTF-8', 'CP850'); + + $fileOptions = new FileOptions(); + $fileOptions->setComment($comment); + + $zip->addFile($name, $content, $fileOptions); + $zip->finish(); + fclose($stream); + + $tmpDir = $this->validateAndExtractZip($tmp); + + $files = $this->getRecursiveFileList($tmpDir); + + $this->assertNotSame([$name], $files); + $this->assertSame([$guessName], $files); + $this->assertStringEqualsFile($tmpDir . '/' . $guessName, $content); + + $zipArch = new ZipArchive(); + $zipArch->open($tmp); + $this->assertSame($guessName, $zipArch->getNameIndex(0)); + $this->assertSame($name, $zipArch->getNameIndex(0, ZipArchive::FL_ENC_RAW)); + $this->assertSame($comment, $zipArch->getCommentName($guessName)); + } + public function testAddFileWithStorageMethod(): void { - $zip = new ZipStream( - outputStream: $this->tempfileStream, - sendHttpHeaders: false, - ); + [$tmp, $stream] = $this->getTmpFileStream(); - $zip->addFile(fileName: 'sample.txt', data: 'Sample String Data', compressionMethod: CompressionMethod::STORE); - $zip->addFile(fileName: 'test/sample.txt', data: 'More Simple Sample Data'); + $options = new ArchiveOptions(); + $options->setOutputStream($stream); + + $zip = new ZipStream(null, $options); + + $fileOptions = new FileOptions(); + $fileOptions->setMethod(Method::STORE()); + + $zip->addFile('sample.txt', 'Sample String Data', $fileOptions); + $zip->addFile('test/sample.txt', 'More Simple Sample Data'); $zip->finish(); + fclose($stream); - $zipArchive = new ZipArchive(); - $zipArchive->open($this->tempfile); + $zipArch = new ZipArchive(); + $zipArch->open($tmp); - $sample1 = $zipArchive->statName('sample.txt'); - $sample12 = $zipArchive->statName('test/sample.txt'); - $this->assertSame($sample1['comp_method'], CompressionMethod::STORE->value); - $this->assertSame($sample12['comp_method'], CompressionMethod::DEFLATE->value); + $sample1 = $zipArch->statName('sample.txt'); + $sample12 = $zipArch->statName('test/sample.txt'); + $this->assertSame($sample1['comp_method'], Method::STORE); + $this->assertSame($sample12['comp_method'], Method::DEFLATE); - $zipArchive->close(); + $zipArch->close(); } public function testAddFileFromPath(): void { - $zip = new ZipStream( - outputStream: $this->tempfileStream, - sendHttpHeaders: false, - ); + [$tmp, $stream] = $this->getTmpFileStream(); + + $options = new ArchiveOptions(); + $options->setOutputStream($stream); + + $zip = new ZipStream(null, $options); [$tmpExample, $streamExample] = $this->getTmpFileStream(); fwrite($streamExample, 'Sample String Data'); fclose($streamExample); - $zip->addFileFromPath(fileName: 'sample.txt', path: $tmpExample); - - [$tmpExample, $streamExample] = $this->getTmpFileStream(); - fwrite($streamExample, 'More Simple Sample Data'); - fclose($streamExample); - $zip->addFileFromPath(fileName: 'test/sample.txt', path: $tmpExample); - - $zip->finish(); - - $tmpDir = $this->validateAndExtractZip($this->tempfile); - - $files = $this->getRecursiveFileList($tmpDir); - $this->assertSame(['sample.txt', 'test' . DIRECTORY_SEPARATOR . 'sample.txt'], $files); - - $this->assertStringEqualsFile($tmpDir . '/sample.txt', 'Sample String Data'); - $this->assertStringEqualsFile($tmpDir . '/test/sample.txt', 'More Simple Sample Data'); - - unlink($tmpExample); - } - - public function testAddFileFromPathFileNotFoundException(): void - { - $this->expectException(FileNotFoundException::class); - - // Get ZipStream Object - $zip = new ZipStream( - outputStream: $this->tempfileStream, - sendHttpHeaders: false, - ); - - // Trigger error by adding a file which doesn't exist - $zip->addFileFromPath(fileName: 'foobar.php', path: '/foo/bar/foobar.php'); - } - - public function testAddFileFromPathFileNotReadableException(): void - { - $this->expectException(FileNotReadableException::class); - - // create new virtual filesystem - $root = vfsStream::setup('vfs'); - // create a virtual file with no permissions - $file = vfsStream::newFile('foo.txt', 0)->at($root)->setContent('bar'); - - // Get ZipStream Object - $zip = new ZipStream( - outputStream: $this->tempfileStream, - sendHttpHeaders: false, - ); - - $zip->addFileFromPath('foo.txt', $file->url()); - } - - public function testAddFileFromPathWithStorageMethod(): void - { - $zip = new ZipStream( - outputStream: $this->tempfileStream, - sendHttpHeaders: false, - ); - - [$tmpExample, $streamExample] = $this->getTmpFileStream(); - fwrite($streamExample, 'Sample String Data'); - fclose($streamExample); - $zip->addFileFromPath(fileName: 'sample.txt', path: $tmpExample, compressionMethod: CompressionMethod::STORE); + $zip->addFileFromPath('sample.txt', $tmpExample); [$tmpExample, $streamExample] = $this->getTmpFileStream(); fwrite($streamExample, 'More Simple Sample Data'); @@ -210,32 +239,65 @@ class ZipStreamTest extends TestCase $zip->addFileFromPath('test/sample.txt', $tmpExample); $zip->finish(); + fclose($stream); - $zipArchive = new ZipArchive(); - $zipArchive->open($this->tempfile); + $tmpDir = $this->validateAndExtractZip($tmp); - $sample1 = $zipArchive->statName('sample.txt'); - $this->assertSame(CompressionMethod::STORE->value, $sample1['comp_method']); + $files = $this->getRecursiveFileList($tmpDir); + $this->assertSame(['sample.txt', 'test' . DIRECTORY_SEPARATOR . 'sample.txt'], $files); - $sample2 = $zipArchive->statName('test/sample.txt'); - $this->assertSame(CompressionMethod::DEFLATE->value, $sample2['comp_method']); + $this->assertStringEqualsFile($tmpDir . '/sample.txt', 'Sample String Data'); + $this->assertStringEqualsFile($tmpDir . '/test/sample.txt', 'More Simple Sample Data'); + } - $zipArchive->close(); + public function testAddFileFromPathWithStorageMethod(): void + { + [$tmp, $stream] = $this->getTmpFileStream(); + + $options = new ArchiveOptions(); + $options->setOutputStream($stream); + + $zip = new ZipStream(null, $options); + + $fileOptions = new FileOptions(); + $fileOptions->setMethod(Method::STORE()); + + [$tmpExample, $streamExample] = $this->getTmpFileStream(); + fwrite($streamExample, 'Sample String Data'); + fclose($streamExample); + $zip->addFileFromPath('sample.txt', $tmpExample, $fileOptions); + + [$tmpExample, $streamExample] = $this->getTmpFileStream(); + fwrite($streamExample, 'More Simple Sample Data'); + fclose($streamExample); + $zip->addFileFromPath('test/sample.txt', $tmpExample); + + $zip->finish(); + fclose($stream); + + $zipArch = new ZipArchive(); + $zipArch->open($tmp); + + $sample1 = $zipArch->statName('sample.txt'); + $this->assertSame(Method::STORE, $sample1['comp_method']); + + $sample2 = $zipArch->statName('test/sample.txt'); + $this->assertSame(Method::DEFLATE, $sample2['comp_method']); + + $zipArch->close(); } public function testAddLargeFileFromPath(): void { - foreach ([CompressionMethod::DEFLATE, CompressionMethod::STORE] as $compressionMethod) { - foreach ([false, true] as $zeroHeader) { - foreach ([false, true] as $zip64) { - if ($zeroHeader && $compressionMethod === CompressionMethod::DEFLATE) { + $methods = [Method::DEFLATE(), Method::STORE()]; + $falseTrue = [false, true]; + foreach ($methods as $method) { + foreach ($falseTrue as $zeroHeader) { + foreach ($falseTrue as $zip64) { + if ($zeroHeader && $method->equals(Method::DEFLATE())) { continue; } - $this->addLargeFileFileFromPath( - compressionMethod: $compressionMethod, - zeroHeader: $zeroHeader, - zip64: $zip64 - ); + $this->addLargeFileFileFromPath($method, $zeroHeader, $zip64); } } } @@ -243,27 +305,33 @@ class ZipStreamTest extends TestCase public function testAddFileFromStream(): void { - $zip = new ZipStream( - outputStream: $this->tempfileStream, - sendHttpHeaders: false, - ); + [$tmp, $stream] = $this->getTmpFileStream(); + + $options = new ArchiveOptions(); + $options->setOutputStream($stream); + + $zip = new ZipStream(null, $options); // In this test we can't use temporary stream to feed data // because zlib.deflate filter gives empty string before PHP 7 // it works fine with file stream $streamExample = fopen(__FILE__, 'rb'); $zip->addFileFromStream('sample.txt', $streamExample); - fclose($streamExample); +// fclose($streamExample); + + $fileOptions = new FileOptions(); + $fileOptions->setMethod(Method::STORE()); $streamExample2 = fopen('php://temp', 'wb+'); fwrite($streamExample2, 'More Simple Sample Data'); rewind($streamExample2); // move the pointer back to the beginning of file. - $zip->addFileFromStream('test/sample.txt', $streamExample2); //, $fileOptions); - fclose($streamExample2); + $zip->addFileFromStream('test/sample.txt', $streamExample2, $fileOptions); +// fclose($streamExample2); $zip->finish(); + fclose($stream); - $tmpDir = $this->validateAndExtractZip($this->tempfile); + $tmpDir = $this->validateAndExtractZip($tmp); $files = $this->getRecursiveFileList($tmpDir); $this->assertSame(['sample.txt', 'test' . DIRECTORY_SEPARATOR . 'sample.txt'], $files); @@ -272,409 +340,92 @@ class ZipStreamTest extends TestCase $this->assertStringEqualsFile($tmpDir . '/test/sample.txt', 'More Simple Sample Data'); } - public function testAddFileFromStreamUnreadableInput(): void - { - $this->expectException(StreamNotReadableException::class); - - [$tmpInput] = $this->getTmpFileStream(); - - $zip = new ZipStream( - outputStream: $this->tempfileStream, - sendHttpHeaders: false, - ); - - $streamUnreadable = fopen($tmpInput, 'w'); - - $zip->addFileFromStream('sample.json', $streamUnreadable); - } - - public function testAddFileFromStreamBrokenOutputWrite(): void - { - $this->expectException(ResourceActionException::class); - - $outputStream = FaultInjectionResource::getResource(['stream_write']); - - $zip = new ZipStream( - outputStream: $outputStream, - sendHttpHeaders: false, - ); - - $zip->addFile('sample.txt', 'foobar'); - } - - public function testAddFileFromStreamBrokenInputRewind(): void - { - $this->expectException(ResourceActionException::class); - - $zip = new ZipStream( - outputStream: $this->tempfileStream, - sendHttpHeaders: false, - defaultEnableZeroHeader: false, - ); - - $fileStream = FaultInjectionResource::getResource(['stream_seek']); - - $zip->addFileFromStream('sample.txt', $fileStream, maxSize: 0); - } - - public function testAddFileFromStreamUnseekableInputWithoutZeroHeader(): void - { - $this->expectException(StreamNotSeekableException::class); - - $zip = new ZipStream( - outputStream: $this->tempfileStream, - sendHttpHeaders: false, - defaultEnableZeroHeader: false, - ); - - if (file_exists('/dev/null')) { - $streamUnseekable = fopen('/dev/null', 'w+'); - } elseif (file_exists('NUL')) { - $streamUnseekable = fopen('NUL', 'w+'); - } else { - $this->markTestSkipped('Needs file /dev/null'); - } - - $zip->addFileFromStream('sample.txt', $streamUnseekable, maxSize: 2); - } - - public function testAddFileFromStreamUnseekableInputWithZeroHeader(): void - { - $zip = new ZipStream( - outputStream: $this->tempfileStream, - sendHttpHeaders: false, - defaultEnableZeroHeader: true, - defaultCompressionMethod: CompressionMethod::STORE, - ); - - $streamUnseekable = StreamWrapper::getResource(new class ('test') extends EndlessCycleStream { - public function isSeekable(): bool - { - return false; - } - - public function seek(int $offset, int $whence = SEEK_SET): void - { - throw new RuntimeException('Not seekable'); - } - }); - - $zip->addFileFromStream('sample.txt', $streamUnseekable, maxSize: 7); - - $zip->finish(); - - $tmpDir = $this->validateAndExtractZip($this->tempfile); - - $files = $this->getRecursiveFileList($tmpDir); - $this->assertSame(['sample.txt'], $files); - - $this->assertSame(filesize($tmpDir . '/sample.txt'), 7); - } - public function testAddFileFromStreamWithStorageMethod(): void { - $zip = new ZipStream( - outputStream: $this->tempfileStream, - sendHttpHeaders: false, - ); + [$tmp, $stream] = $this->getTmpFileStream(); + + $options = new ArchiveOptions(); + $options->setOutputStream($stream); + + $zip = new ZipStream(null, $options); + + $fileOptions = new FileOptions(); + $fileOptions->setMethod(Method::STORE()); $streamExample = fopen('php://temp', 'wb+'); fwrite($streamExample, 'Sample String Data'); rewind($streamExample); // move the pointer back to the beginning of file. - $zip->addFileFromStream('sample.txt', $streamExample, compressionMethod: CompressionMethod::STORE); - fclose($streamExample); + $zip->addFileFromStream('sample.txt', $streamExample, $fileOptions); +// fclose($streamExample); $streamExample2 = fopen('php://temp', 'bw+'); fwrite($streamExample2, 'More Simple Sample Data'); rewind($streamExample2); // move the pointer back to the beginning of file. - $zip->addFileFromStream('test/sample.txt', $streamExample2, compressionMethod: CompressionMethod::DEFLATE); - fclose($streamExample2); + $zip->addFileFromStream('test/sample.txt', $streamExample2); +// fclose($streamExample2); $zip->finish(); + fclose($stream); - $zipArchive = new ZipArchive(); - $zipArchive->open($this->tempfile); + $zipArch = new ZipArchive(); + $zipArch->open($tmp); - $sample1 = $zipArchive->statName('sample.txt'); - $this->assertSame(CompressionMethod::STORE->value, $sample1['comp_method']); + $sample1 = $zipArch->statName('sample.txt'); + $this->assertSame(Method::STORE, $sample1['comp_method']); - $sample2 = $zipArchive->statName('test/sample.txt'); - $this->assertSame(CompressionMethod::DEFLATE->value, $sample2['comp_method']); + $sample2 = $zipArch->statName('test/sample.txt'); + $this->assertSame(Method::DEFLATE, $sample2['comp_method']); - $zipArchive->close(); + $zipArch->close(); } public function testAddFileFromPsr7Stream(): void { - $zip = new ZipStream( - outputStream: $this->tempfileStream, - sendHttpHeaders: false, - ); + [$tmp, $stream] = $this->getTmpFileStream(); + + $options = new ArchiveOptions(); + $options->setOutputStream($stream); + + $zip = new ZipStream(null, $options); $body = 'Sample String Data'; $response = new Response(200, [], $body); - $zip->addFileFromPsr7Stream('sample.json', $response->getBody()); - $zip->finish(); + $fileOptions = new FileOptions(); + $fileOptions->setMethod(Method::STORE()); - $tmpDir = $this->validateAndExtractZip($this->tempfile); + $zip->addFileFromPsr7Stream('sample.json', $response->getBody(), $fileOptions); + $zip->finish(); + fclose($stream); + + $tmpDir = $this->validateAndExtractZip($tmp); $files = $this->getRecursiveFileList($tmpDir); $this->assertSame(['sample.json'], $files); $this->assertStringEqualsFile($tmpDir . '/sample.json', $body); } - #[Group('slow')] - public function testAddLargeFileFromPsr7Stream(): void - { - $zip = new ZipStream( - outputStream: $this->tempfileStream, - sendHttpHeaders: false, - enableZip64: true, - ); - - $zip->addFileFromPsr7Stream( - fileName: 'sample.json', - stream: new EndlessCycleStream('0'), - maxSize: 0x100000000, - compressionMethod: CompressionMethod::STORE, - lastModificationDateTime: new DateTimeImmutable('2022-01-01 01:01:01Z'), - ); - $zip->finish(); - - $tmpDir = $this->validateAndExtractZip($this->tempfile); - - $files = $this->getRecursiveFileList($tmpDir); - $this->assertSame(['sample.json'], $files); - $this->assertFileIsReadable($tmpDir . '/sample.json'); - $this->assertStringStartsWith('000000', file_get_contents(filename: $tmpDir . '/sample.json', length: 20)); - } - - public function testContinueFinishedZip(): void - { - $this->expectException(RuntimeException::class); - - $zip = new ZipStream( - outputStream: $this->tempfileStream, - sendHttpHeaders: false, - ); - $zip->finish(); - - $zip->addFile('sample.txt', '1234'); - } - - #[Group('slow')] - public function testManyFilesWithoutZip64(): void - { - $this->expectException(OverflowException::class); - - $zip = new ZipStream( - outputStream: $this->tempfileStream, - sendHttpHeaders: false, - enableZip64: false, - ); - - for ($i = 0; $i <= 0xFFFF; $i++) { - $zip->addFile('sample' . $i, ''); - } - - $zip->finish(); - } - - #[Group('slow')] - public function testManyFilesWithZip64(): void - { - $zip = new ZipStream( - outputStream: $this->tempfileStream, - sendHttpHeaders: false, - enableZip64: true, - ); - - for ($i = 0; $i <= 0xFFFF; $i++) { - $zip->addFile('sample' . $i, ''); - } - - $zip->finish(); - - $tmpDir = $this->validateAndExtractZip($this->tempfile); - - $files = $this->getRecursiveFileList($tmpDir); - - $this->assertSame(count($files), 0x10000); - } - - #[Group('slow')] - public function testLongZipWithout64(): void - { - $this->expectException(OverflowException::class); - - $zip = new ZipStream( - outputStream: $this->tempfileStream, - sendHttpHeaders: false, - enableZip64: false, - defaultCompressionMethod: CompressionMethod::STORE, - ); - - for ($i = 0; $i < 4; $i++) { - $zip->addFileFromPsr7Stream( - fileName: 'sample' . $i, - stream: new EndlessCycleStream('0'), - maxSize: 0xFFFFFFFF, - compressionMethod: CompressionMethod::STORE, - lastModificationDateTime: new DateTimeImmutable('2022-01-01 01:01:01Z'), - ); - } - } - - #[Group('slow')] - public function testLongZipWith64(): void - { - $zip = new ZipStream( - outputStream: $this->tempfileStream, - sendHttpHeaders: false, - enableZip64: true, - defaultCompressionMethod: CompressionMethod::STORE, - ); - - for ($i = 0; $i < 4; $i++) { - $zip->addFileFromPsr7Stream( - fileName: 'sample' . $i, - stream: new EndlessCycleStream('0'), - maxSize: 0x5FFFFFFF, - compressionMethod: CompressionMethod::STORE, - lastModificationDateTime: new DateTimeImmutable('2022-01-01 01:01:01Z'), - ); - } - - $zip->finish(); - - $tmpDir = $this->validateAndExtractZip($this->tempfile); - - $files = $this->getRecursiveFileList($tmpDir); - $this->assertSame(['sample0', 'sample1', 'sample2', 'sample3'], $files); - } - - #[Group('slow')] - public function testAddLargeFileWithoutZip64WithZeroHeader(): void - { - $this->expectException(OverflowException::class); - - $zip = new ZipStream( - outputStream: $this->tempfileStream, - sendHttpHeaders: false, - enableZip64: false, - defaultEnableZeroHeader: true, - ); - - $zip->addFileFromPsr7Stream( - fileName: 'sample.json', - stream: new EndlessCycleStream('0'), - maxSize: 0x100000000, - compressionMethod: CompressionMethod::STORE, - lastModificationDateTime: new DateTimeImmutable('2022-01-01 01:01:01Z'), - ); - } - - #[Group('slow')] - public function testAddsZip64HeaderWhenNeeded(): void - { - $zip = new ZipStream( - outputStream: $this->tempfileStream, - sendHttpHeaders: false, - enableZip64: true, - defaultEnableZeroHeader: false, - ); - - $zip->addFileFromPsr7Stream( - fileName: 'sample.json', - stream: new EndlessCycleStream('0'), - maxSize: 0x100000000, - compressionMethod: CompressionMethod::STORE, - lastModificationDateTime: new DateTimeImmutable('2022-01-01 01:01:01Z'), - ); - - $zip->finish(); - - $tmpDir = $this->validateAndExtractZip($this->tempfile); - $files = $this->getRecursiveFileList($tmpDir); - - $this->assertSame(['sample.json'], $files); - $this->assertFileContains($this->tempfile, PackField::pack( - new PackField(format: 'V', value: 0x06064b50) - )); - } - - #[Group('slow')] - public function testDoesNotAddZip64HeaderWhenNotNeeded(): void - { - $zip = new ZipStream( - outputStream: $this->tempfileStream, - sendHttpHeaders: false, - enableZip64: true, - defaultEnableZeroHeader: false, - ); - - $zip->addFileFromPsr7Stream( - fileName: 'sample.json', - stream: new EndlessCycleStream('0'), - maxSize: 0x10, - compressionMethod: CompressionMethod::STORE, - lastModificationDateTime: new DateTimeImmutable('2022-01-01 01:01:01Z'), - ); - - $zip->finish(); - - $tmpDir = $this->validateAndExtractZip($this->tempfile); - $files = $this->getRecursiveFileList($tmpDir); - - $this->assertSame(['sample.json'], $files); - $this->assertFileDoesNotContain($this->tempfile, PackField::pack( - new PackField(format: 'V', value: 0x06064b50) - )); - } - - #[Group('slow')] - public function testAddLargeFileWithoutZip64WithoutZeroHeader(): void - { - $this->expectException(OverflowException::class); - - $zip = new ZipStream( - outputStream: $this->tempfileStream, - sendHttpHeaders: false, - enableZip64: false, - defaultEnableZeroHeader: false, - ); - - $zip->addFileFromPsr7Stream( - fileName: 'sample.json', - stream: new EndlessCycleStream('0'), - maxSize: 0x100000000, - compressionMethod: CompressionMethod::STORE, - lastModificationDateTime: new DateTimeImmutable('2022-01-01 01:01:01Z'), - ); - } - public function testAddFileFromPsr7StreamWithOutputToPsr7Stream(): void { - $psr7OutputStream = new ResourceStream($this->tempfileStream); + [$tmp, $resource] = $this->getTmpFileStream(); + $psr7OutputStream = new Stream($resource); - $zip = new ZipStream( - outputStream: $psr7OutputStream, - sendHttpHeaders: false, - ); + $options = new ArchiveOptions(); + $options->setOutputStream($psr7OutputStream); + + $zip = new ZipStream(null, $options); $body = 'Sample String Data'; $response = new Response(200, [], $body); - $zip->addFileFromPsr7Stream( - fileName: 'sample.json', - stream: $response->getBody(), - compressionMethod: CompressionMethod::STORE, - ); + $fileOptions = new FileOptions(); + $fileOptions->setMethod(Method::STORE()); + + $zip->addFileFromPsr7Stream('sample.json', $response->getBody(), $fileOptions); $zip->finish(); $psr7OutputStream->close(); - $tmpDir = $this->validateAndExtractZip($this->tempfile); + $tmpDir = $this->validateAndExtractZip($tmp); $files = $this->getRecursiveFileList($tmpDir); $this->assertSame(['sample.json'], $files); @@ -683,10 +434,12 @@ class ZipStreamTest extends TestCase public function testAddFileFromPsr7StreamWithFileSizeSet(): void { - $zip = new ZipStream( - outputStream: $this->tempfileStream, - sendHttpHeaders: false, - ); + [$tmp, $stream] = $this->getTmpFileStream(); + + $options = new ArchiveOptions(); + $options->setOutputStream($stream); + + $zip = new ZipStream(null, $options); $body = 'Sample String Data'; $fileSize = strlen($body); @@ -694,63 +447,37 @@ class ZipStreamTest extends TestCase $fakePadding = "\0\0\0\0\0\0"; $response = new Response(200, [], $body . $fakePadding); - $zip->addFileFromPsr7Stream( - fileName: 'sample.json', - stream: $response->getBody(), - compressionMethod: CompressionMethod::STORE, - maxSize: $fileSize - ); + $fileOptions = new FileOptions(); + $fileOptions->setMethod(Method::STORE()); + $fileOptions->setSize($fileSize); + $zip->addFileFromPsr7Stream('sample.json', $response->getBody(), $fileOptions); $zip->finish(); + fclose($stream); - $tmpDir = $this->validateAndExtractZip($this->tempfile); + $tmpDir = $this->validateAndExtractZip($tmp); $files = $this->getRecursiveFileList($tmpDir); $this->assertSame(['sample.json'], $files); $this->assertStringEqualsFile($tmpDir . '/sample.json', $body); } - public function testCreateArchiveHeaders(): void - { - $headers = []; - - $httpHeaderCallback = function (string $header) use (&$headers) { - $headers[] = $header; - }; - - $zip = new ZipStream( - outputStream: $this->tempfileStream, - sendHttpHeaders: true, - outputName: 'example.zip', - httpHeaderCallback: $httpHeaderCallback, - ); - - $zip->addFile( - fileName: 'sample.json', - data: 'foo', - ); - $zip->finish(); - - $this->assertContains('Content-Type: application/x-zip', $headers); - $this->assertContains("Content-Disposition: attachment; filename*=UTF-8''example.zip", $headers); - $this->assertContains('Pragma: public', $headers); - $this->assertContains('Cache-Control: public, must-revalidate', $headers); - $this->assertContains('Content-Transfer-Encoding: binary', $headers); - } - public function testCreateArchiveWithFlushOptionSet(): void { - $zip = new ZipStream( - outputStream: $this->tempfileStream, - flushOutput: true, - sendHttpHeaders: false, - ); + [$tmp, $stream] = $this->getTmpFileStream(); + + $options = new ArchiveOptions(); + $options->setOutputStream($stream); + $options->setFlushOutput(true); + + $zip = new ZipStream(null, $options); $zip->addFile('sample.txt', 'Sample String Data'); $zip->addFile('test/sample.txt', 'More Simple Sample Data'); $zip->finish(); + fclose($stream); - $tmpDir = $this->validateAndExtractZip($this->tempfile); + $tmpDir = $this->validateAndExtractZip($tmp); $files = $this->getRecursiveFileList($tmpDir); $this->assertSame(['sample.txt', 'test' . DIRECTORY_SEPARATOR . 'sample.txt'], $files); @@ -765,433 +492,111 @@ class ZipStreamTest extends TestCase ob_end_flush(); $this->assertSame(0, ob_get_level()); - $zip = new ZipStream( - outputStream: $this->tempfileStream, - flushOutput: true, - sendHttpHeaders: false, - ); + [$tmp, $stream] = $this->getTmpFileStream(); + + $options = new ArchiveOptions(); + $options->setOutputStream($stream); + $options->setFlushOutput(true); + + $zip = new ZipStream(null, $options); $zip->addFile('sample.txt', 'Sample String Data'); $zip->finish(); + fclose($stream); - $tmpDir = $this->validateAndExtractZip($this->tempfile); + $tmpDir = $this->validateAndExtractZip($tmp); $this->assertStringEqualsFile($tmpDir . '/sample.txt', 'Sample String Data'); // WORKAROUND (2/2): add back output buffering so that PHPUnit doesn't complain that it is missing ob_start(); } - public function testAddEmptyDirectory(): void + /** + * @return array + */ + protected function getTmpFileStream(): array { - $zip = new ZipStream( - outputStream: $this->tempfileStream, - sendHttpHeaders: false, - ); + $tmp = tempnam(sys_get_temp_dir(), 'zipstreamtest'); + $stream = fopen($tmp, 'wb+'); - $zip->addDirectory('foo'); - - $zip->finish(); - - $tmpDir = $this->validateAndExtractZip($this->tempfile); - - $files = $this->getRecursiveFileList($tmpDir, includeDirectories: true); - - $this->assertContains('foo', $files); - - $this->assertFileExists($tmpDir . DIRECTORY_SEPARATOR . 'foo'); - $this->assertDirectoryExists($tmpDir . DIRECTORY_SEPARATOR . 'foo'); + return [$tmp, $stream]; } - public function testAddFileSimulate(): void + /** + * @param string $tmp + * @return string + */ + protected function validateAndExtractZip($tmp): string { - $create = function (OperationMode $operationMode): int { - $zip = new ZipStream( - sendHttpHeaders: false, - operationMode: $operationMode, - defaultEnableZeroHeader: true, - outputStream: $this->tempfileStream, - ); + $tmpDir = $this->getTmpDir(); - $zip->addFile('sample.txt', 'Sample String Data'); - $zip->addFile('test/sample.txt', 'More Simple Sample Data'); + $zipArch = new ZipArchive(); + $res = $zipArch->open($tmp); - return $zip->finish(); - }; + if ($res !== true) { + $this->fail("Failed to open {$tmp}. Code: $res"); + return $tmpDir; + } - $sizeExpected = $create(OperationMode::NORMAL); - $sizeActual = $create(OperationMode::SIMULATE_LAX); + $this->assertSame(0, $zipArch->status); + $this->assertSame(0, $zipArch->statusSys); - $this->assertEquals($sizeExpected, $sizeActual); + $zipArch->extractTo($tmpDir); + $zipArch->close(); + + return $tmpDir; } - public function testAddFileSimulateWithMaxSize(): void + protected function getTmpDir(): string { - $create = function (OperationMode $operationMode): int { - $zip = new ZipStream( - sendHttpHeaders: false, - operationMode: $operationMode, - defaultCompressionMethod: CompressionMethod::STORE, - defaultEnableZeroHeader: true, - outputStream: $this->tempfileStream, - ); + $tmp = tempnam(sys_get_temp_dir(), 'zipstreamtest'); + unlink($tmp); + mkdir($tmp) or $this->fail('Failed to make directory'); - $zip->addFile('sample.txt', 'Sample String Data', maxSize: 0); - - return $zip->finish(); - }; - - - $sizeExpected = $create(OperationMode::NORMAL); - $sizeActual = $create(OperationMode::SIMULATE_LAX); - - $this->assertEquals($sizeExpected, $sizeActual); + return $tmp; } - public function testAddFileSimulateWithFstat(): void + /** + * @param string $path + * @return string[] + */ + protected function getRecursiveFileList(string $path): array { - $create = function (OperationMode $operationMode): int { - $zip = new ZipStream( - sendHttpHeaders: false, - operationMode: $operationMode, - defaultCompressionMethod: CompressionMethod::STORE, - defaultEnableZeroHeader: true, - outputStream: $this->tempfileStream, - ); + $data = []; + $path = (string)realpath($path); + $files = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path)); - $zip->addFile('sample.txt', 'Sample String Data'); - $zip->addFile('test/sample.txt', 'More Simple Sample Data'); - - return $zip->finish(); - }; - - - $sizeExpected = $create(OperationMode::NORMAL); - $sizeActual = $create(OperationMode::SIMULATE_LAX); - - $this->assertEquals($sizeExpected, $sizeActual); - } - - public function testAddFileSimulateWithExactSizeZero(): void - { - $create = function (OperationMode $operationMode): int { - $zip = new ZipStream( - sendHttpHeaders: false, - operationMode: $operationMode, - defaultCompressionMethod: CompressionMethod::STORE, - defaultEnableZeroHeader: true, - outputStream: $this->tempfileStream, - ); - - $zip->addFile('sample.txt', 'Sample String Data', exactSize: 18); - - return $zip->finish(); - }; - - - $sizeExpected = $create(OperationMode::NORMAL); - $sizeActual = $create(OperationMode::SIMULATE_LAX); - - $this->assertEquals($sizeExpected, $sizeActual); - } - - public function testAddFileSimulateWithExactSizeInitial(): void - { - $create = function (OperationMode $operationMode): int { - $zip = new ZipStream( - sendHttpHeaders: false, - operationMode: $operationMode, - defaultCompressionMethod: CompressionMethod::STORE, - defaultEnableZeroHeader: false, - outputStream: $this->tempfileStream, - ); - - $zip->addFile('sample.txt', 'Sample String Data', exactSize: 18); - - return $zip->finish(); - }; - - $sizeExpected = $create(OperationMode::NORMAL); - $sizeActual = $create(OperationMode::SIMULATE_LAX); - - $this->assertEquals($sizeExpected, $sizeActual); - } - - public function testAddFileSimulateWithZeroSizeInFstat(): void - { - $create = function (OperationMode $operationMode): int { - $zip = new ZipStream( - sendHttpHeaders: false, - operationMode: $operationMode, - defaultCompressionMethod: CompressionMethod::STORE, - defaultEnableZeroHeader: false, - outputStream: $this->tempfileStream, - ); - - $zip->addFileFromPsr7Stream('sample.txt', new class implements StreamInterface { - public $pos = 0; - - public function __toString(): string - { - return 'test'; - } - - public function close(): void {} - - public function detach() {} - - public function getSize(): ?int - { - return null; - } - - public function tell(): int - { - return $this->pos; - } - - public function eof(): bool - { - return $this->pos >= 4; - } - - public function isSeekable(): bool - { - return true; - } - - public function seek(int $offset, int $whence = SEEK_SET): void - { - $this->pos = $offset; - } - - public function rewind(): void - { - $this->pos = 0; - } - - public function isWritable(): bool - { - return false; - } - - public function write(string $string): int - { - return 0; - } - - public function isReadable(): bool - { - return true; - } - - public function read(int $length): string - { - $data = substr('test', $this->pos, $length); - $this->pos += strlen($data); - return $data; - } - - public function getContents(): string - { - return $this->read(4); - } - - public function getMetadata(?string $key = null) - { - return $key !== null ? null : []; - } - }); - - return $zip->finish(); - }; - - $sizeExpected = $create(OperationMode::NORMAL); - $sizeActual = $create(OperationMode::SIMULATE_LAX); - - - $this->assertEquals($sizeExpected, $sizeActual); - } - - public function testAddFileSimulateWithWrongExactSize(): void - { - $this->expectException(FileSizeIncorrectException::class); - - $zip = new ZipStream( - sendHttpHeaders: false, - operationMode: OperationMode::SIMULATE_LAX, - ); - - $zip->addFile('sample.txt', 'Sample String Data', exactSize: 1000); - } - - public function testAddFileSimulateStrictZero(): void - { - $this->expectException(SimulationFileUnknownException::class); - - $zip = new ZipStream( - sendHttpHeaders: false, - operationMode: OperationMode::SIMULATE_STRICT, - defaultEnableZeroHeader: true - ); - - $zip->addFile('sample.txt', 'Sample String Data'); - } - - public function testAddFileSimulateStrictInitial(): void - { - $this->expectException(SimulationFileUnknownException::class); - - $zip = new ZipStream( - sendHttpHeaders: false, - operationMode: OperationMode::SIMULATE_STRICT, - defaultEnableZeroHeader: false - ); - - $zip->addFile('sample.txt', 'Sample String Data'); - } - - public function testAddFileCallbackStrict(): void - { - $this->expectException(SimulationFileUnknownException::class); - - $zip = new ZipStream( - sendHttpHeaders: false, - operationMode: OperationMode::SIMULATE_STRICT, - defaultEnableZeroHeader: false - ); - - $zip->addFileFromCallback('sample.txt', callback: function () { - return ''; - }); - } - - public function testAddFileCallbackLax(): void - { - $zip = new ZipStream( - operationMode: OperationMode::SIMULATE_LAX, - defaultEnableZeroHeader: false, - sendHttpHeaders: false, - ); - - $zip->addFileFromCallback('sample.txt', callback: function () { - return 'Sample String Data'; - }); - - $size = $zip->finish(); - - $this->assertEquals($size, 142); - } - - public function testExecuteSimulation(): void - { - $zip = new ZipStream( - operationMode: OperationMode::SIMULATE_STRICT, - defaultCompressionMethod: CompressionMethod::STORE, - defaultEnableZeroHeader: false, - sendHttpHeaders: false, - outputStream: $this->tempfileStream, - ); - - $zip->addFileFromCallback( - 'sample.txt', - exactSize: 18, - callback: function () { - return 'Sample String Data'; + $pathLen = strlen($path); + foreach ($files as $file) { + $filePath = $file->getRealPath(); + if (!is_dir($filePath)) { + $data[] = substr($filePath, $pathLen + 1); } - ); + } - $zip->addFileFromCallback( - '.gitkeep', - exactSize: 0, - callback: function () { - return ''; - } - ); + sort($data); - $size = $zip->finish(); - - $this->assertEquals(filesize($this->tempfile), 0); - - $zip->executeSimulation(); - - clearstatcache(); - - $this->assertEquals(filesize($this->tempfile), $size); - - $tmpDir = $this->validateAndExtractZip($this->tempfile); - - $files = $this->getRecursiveFileList($tmpDir); - $this->assertSame(['.gitkeep', 'sample.txt'], $files); + return $data; } - public function testExecuteSimulationBeforeFinish(): void - { - $this->expectException(RuntimeException::class); - - $zip = new ZipStream( - operationMode: OperationMode::SIMULATE_LAX, - defaultEnableZeroHeader: false, - sendHttpHeaders: false, - outputStream: $this->tempfileStream, - ); - - $zip->executeSimulation(); - } - - #[Group('slow')] - public function testSimulationWithLargeZip64AndZeroHeader(): void - { - $zip = new ZipStream( - outputStream: $this->tempfileStream, - sendHttpHeaders: false, - operationMode: OperationMode::SIMULATE_STRICT, - defaultCompressionMethod: CompressionMethod::STORE, - outputName: 'archive.zip', - enableZip64: true, - defaultEnableZeroHeader: true - ); - - $zip->addFileFromPsr7Stream( - fileName: 'large', - stream: new EndlessCycleStream('large'), - exactSize: 0x120000000, // ~5gb - compressionMethod: CompressionMethod::STORE, - lastModificationDateTime: new DateTimeImmutable('2022-01-01 01:01:01Z'), - ); - - $zip->addFileFromPsr7Stream( - fileName: 'small', - stream: new EndlessCycleStream('small'), - exactSize: 0x20, - compressionMethod: CompressionMethod::STORE, - lastModificationDateTime: new DateTimeImmutable('2022-01-01 01:01:01Z'), - ); - - $forecastedSize = $zip->finish(); - - $zip->executeSimulation(); - - $this->assertSame($forecastedSize, filesize($this->tempfile)); - - $this->validateAndExtractZip($this->tempfile); - } - - private function addLargeFileFileFromPath(CompressionMethod $compressionMethod, $zeroHeader, $zip64): void + protected function addLargeFileFileFromPath($method, $zeroHeader, $zip64): void { [$tmp, $stream] = $this->getTmpFileStream(); - $zip = new ZipStream( - outputStream: $stream, - sendHttpHeaders: false, - defaultEnableZeroHeader: $zeroHeader, - enableZip64: $zip64, - ); + $options = new ArchiveOptions(); + $options->setOutputStream($stream); + $options->setLargeFileMethod($method); + $options->setLargeFileSize(5); + $options->setZeroHeader($zeroHeader); + $options->setEnableZip64($zip64); + + $zip = new ZipStream(null, $options); [$tmpExample, $streamExample] = $this->getTmpFileStream(); for ($i = 0; $i <= 10000; $i++) { - fwrite($streamExample, sha1((string) $i)); + fwrite($streamExample, sha1((string)$i)); if ($i % 100 === 0) { fwrite($streamExample, "\n"); } @@ -1209,8 +614,6 @@ class ZipStreamTest extends TestCase $files = $this->getRecursiveFileList($tmpDir); $this->assertSame(['sample.txt'], $files); - $this->assertSame(sha1_file($tmpDir . '/sample.txt'), $shaExample, "SHA-1 Mismatch Method: {$compressionMethod->value}"); - - unlink($tmp); + $this->assertSame(sha1_file($tmpDir . '/sample.txt'), $shaExample, "SHA-1 Mismatch Method: {$method}"); } } diff --git a/vendor/maennchen/zipstream-php/test/Zs/ExtendedInformationExtraFieldTest.php b/vendor/maennchen/zipstream-php/test/Zs/ExtendedInformationExtraFieldTest.php deleted file mode 100644 index 2b8dbed..0000000 --- a/vendor/maennchen/zipstream-php/test/Zs/ExtendedInformationExtraFieldTest.php +++ /dev/null @@ -1,22 +0,0 @@ -assertSame( - bin2hex((string) $extraField), - '5356' . // 2 bytes; Tag for this "extra" block type - '0000' // 2 bytes; TODO: Document - ); - } -} diff --git a/vendor/maennchen/zipstream-php/test/bug/BugHonorFileTimeTest.php b/vendor/maennchen/zipstream-php/test/bug/BugHonorFileTimeTest.php new file mode 100644 index 0000000..05de4fe --- /dev/null +++ b/vendor/maennchen/zipstream-php/test/bug/BugHonorFileTimeTest.php @@ -0,0 +1,40 @@ +setOutputStream(fopen('php://memory', 'wb')); + $fileOpt->setTime(clone $expectedTime); + + $zip = new ZipStream(null, $archiveOpt); + + $zip->addFile('sample.txt', 'Sample', $fileOpt); + + $zip->finish(); + + $this->assertEquals($expectedTime, $fileOpt->getTime()); + } +} diff --git a/vendor/myclabs/php-enum/LICENSE b/vendor/myclabs/php-enum/LICENSE new file mode 100644 index 0000000..2a8cf22 --- /dev/null +++ b/vendor/myclabs/php-enum/LICENSE @@ -0,0 +1,18 @@ +The MIT License (MIT) + +Copyright (c) 2015 My C-Labs + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and +associated documentation files (the "Software"), to deal in the Software without restriction, +including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, +and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial +portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT +NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/vendor/myclabs/php-enum/README.md b/vendor/myclabs/php-enum/README.md new file mode 100644 index 0000000..681d55e --- /dev/null +++ b/vendor/myclabs/php-enum/README.md @@ -0,0 +1,194 @@ +# PHP Enum implementation inspired from SplEnum + +[![GitHub Actions][GA Image]][GA Link] +[![Latest Stable Version](https://poser.pugx.org/myclabs/php-enum/version.png)](https://packagist.org/packages/myclabs/php-enum) +[![Total Downloads](https://poser.pugx.org/myclabs/php-enum/downloads.png)](https://packagist.org/packages/myclabs/php-enum) +[![Psalm Shepherd][Shepherd Image]][Shepherd Link] + +Maintenance for this project is [supported via Tidelift](https://tidelift.com/subscription/pkg/packagist-myclabs-php-enum?utm_source=packagist-myclabs-php-enum&utm_medium=referral&utm_campaign=readme). + +## Why? + +First, and mainly, `SplEnum` is not integrated to PHP, you have to install the extension separately. + +Using an enum instead of class constants provides the following advantages: + +- You can use an enum as a parameter type: `function setAction(Action $action) {` +- You can use an enum as a return type: `function getAction() : Action {` +- You can enrich the enum with methods (e.g. `format`, `parse`, …) +- You can extend the enum to add new values (make your enum `final` to prevent it) +- You can get a list of all the possible values (see below) + +This Enum class is not intended to replace class constants, but only to be used when it makes sense. + +## Installation + +``` +composer require myclabs/php-enum +``` + +## Declaration + +```php +use MyCLabs\Enum\Enum; + +/** + * Action enum + */ +final class Action extends Enum +{ + private const VIEW = 'view'; + private const EDIT = 'edit'; +} +``` + +## Usage + +```php +$action = Action::VIEW(); + +// or with a dynamic key: +$action = Action::$key(); +// or with a dynamic value: +$action = Action::from($value); +// or +$action = new Action($value); +``` + +As you can see, static methods are automatically implemented to provide quick access to an enum value. + +One advantage over using class constants is to be able to use an enum as a parameter type: + +```php +function setAction(Action $action) { + // ... +} +``` + +## Documentation + +- `__construct()` The constructor checks that the value exist in the enum +- `__toString()` You can `echo $myValue`, it will display the enum value (value of the constant) +- `getValue()` Returns the current value of the enum +- `getKey()` Returns the key of the current value on Enum +- `equals()` Tests whether enum instances are equal (returns `true` if enum values are equal, `false` otherwise) + +Static methods: + +- `from()` Creates an Enum instance, checking that the value exist in the enum +- `toArray()` method Returns all possible values as an array (constant name in key, constant value in value) +- `keys()` Returns the names (keys) of all constants in the Enum class +- `values()` Returns instances of the Enum class of all Enum constants (constant name in key, Enum instance in value) +- `isValid()` Check if tested value is valid on enum set +- `isValidKey()` Check if tested key is valid on enum set +- `assertValidValue()` Assert the value is valid on enum set, throwing exception otherwise +- `search()` Return key for searched value + +### Static methods + +```php +final class Action extends Enum +{ + private const VIEW = 'view'; + private const EDIT = 'edit'; +} + +// Static method: +$action = Action::VIEW(); +$action = Action::EDIT(); +``` + +Static method helpers are implemented using [`__callStatic()`](http://www.php.net/manual/en/language.oop5.overloading.php#object.callstatic). + +If you care about IDE autocompletion, you can either implement the static methods yourself: + +```php +final class Action extends Enum +{ + private const VIEW = 'view'; + + /** + * @return Action + */ + public static function VIEW() { + return new Action(self::VIEW); + } +} +``` + +or you can use phpdoc (this is supported in PhpStorm for example): + +```php +/** + * @method static Action VIEW() + * @method static Action EDIT() + */ +final class Action extends Enum +{ + private const VIEW = 'view'; + private const EDIT = 'edit'; +} +``` + +## Native enums and migration +Native enum arrived to PHP in version 8.1: https://www.php.net/enumerations +If your project is running PHP 8.1+ or your library has it as a minimum requirement you should use it instead of this library. + +When migrating from `myclabs/php-enum`, the effort should be small if the usage was in the recommended way: +- private constants +- final classes +- no method overridden + +Changes for migration: +- Class definition should be changed from +```php +/** + * @method static Action VIEW() + * @method static Action EDIT() + */ +final class Action extends Enum +{ + private const VIEW = 'view'; + private const EDIT = 'edit'; +} +``` + to +```php +enum Action: string +{ + case VIEW = 'view'; + case EDIT = 'edit'; +} +``` +All places where the class was used as a type will continue to work. + +Usages and the change needed: + +| Operation | myclabs/php-enum | native enum | +|----------------------------------------------------------------|----------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| Obtain an instance will change from | `$enumCase = Action::VIEW()` | `$enumCase = Action::VIEW` | +| Create an enum from a backed value | `$enumCase = new Action('view')` | `$enumCase = Action::from('view')` | +| Get the backed value of the enum instance | `$enumCase->getValue()` | `$enumCase->value` | +| Compare two enum instances | `$enumCase1 == $enumCase2`
    or
    `$enumCase1->equals($enumCase2)` | `$enumCase1 === $enumCase2` | +| Get the key/name of the enum instance | `$enumCase->getKey()` | `$enumCase->name` | +| Get a list of all the possible instances of the enum | `Action::values()` | `Action::cases()` | +| Get a map of possible instances of the enum mapped by name | `Action::values()` | `array_combine(array_map(fn($case) => $case->name, Action::cases()), Action::cases())`
    or
    `(new ReflectionEnum(Action::class))->getConstants()` | +| Get a list of all possible names of the enum | `Action::keys()` | `array_map(fn($case) => $case->name, Action::cases())` | +| Get a list of all possible backed values of the enum | `Action::toArray()` | `array_map(fn($case) => $case->value, Action::cases())` | +| Get a map of possible backed values of the enum mapped by name | `Action::toArray()` | `array_combine(array_map(fn($case) => $case->name, Action::cases()), array_map(fn($case) => $case->value, Action::cases()))`
    or
    `array_map(fn($case) => $case->value, (new ReflectionEnum(Action::class))->getConstants()))` | + +## Related projects + +- [PHP 8.1+ native enum](https://www.php.net/enumerations) +- [Doctrine enum mapping](https://github.com/acelaya/doctrine-enum-type) +- [Symfony ParamConverter integration](https://github.com/Ex3v/MyCLabsEnumParamConverter) +- [PHPStan integration](https://github.com/timeweb/phpstan-enum) + + +[GA Image]: https://github.com/myclabs/php-enum/workflows/CI/badge.svg + +[GA Link]: https://github.com/myclabs/php-enum/actions?query=workflow%3A%22CI%22+branch%3Amaster + +[Shepherd Image]: https://shepherd.dev/github/myclabs/php-enum/coverage.svg + +[Shepherd Link]: https://shepherd.dev/github/myclabs/php-enum diff --git a/vendor/myclabs/php-enum/SECURITY.md b/vendor/myclabs/php-enum/SECURITY.md new file mode 100644 index 0000000..84fd4e3 --- /dev/null +++ b/vendor/myclabs/php-enum/SECURITY.md @@ -0,0 +1,11 @@ +# Security Policy + +## Supported Versions + +Only the latest stable release is supported. + +## Reporting a Vulnerability + +To report a security vulnerability, please use the [Tidelift security contact](https://tidelift.com/security). + +Tidelift will coordinate the fix and disclosure. diff --git a/vendor/myclabs/php-enum/composer.json b/vendor/myclabs/php-enum/composer.json new file mode 100644 index 0000000..978cb19 --- /dev/null +++ b/vendor/myclabs/php-enum/composer.json @@ -0,0 +1,36 @@ +{ + "name": "myclabs/php-enum", + "type": "library", + "description": "PHP Enum implementation", + "keywords": ["enum"], + "homepage": "http://github.com/myclabs/php-enum", + "license": "MIT", + "authors": [ + { + "name": "PHP Enum contributors", + "homepage": "https://github.com/myclabs/php-enum/graphs/contributors" + } + ], + "autoload": { + "psr-4": { + "MyCLabs\\Enum\\": "src/" + }, + "classmap": [ + "stubs/Stringable.php" + ] + }, + "autoload-dev": { + "psr-4": { + "MyCLabs\\Tests\\Enum\\": "tests/" + } + }, + "require": { + "php": "^7.3 || ^8.0", + "ext-json": "*" + }, + "require-dev": { + "phpunit/phpunit": "^9.5", + "squizlabs/php_codesniffer": "1.*", + "vimeo/psalm": "^4.6.2" + } +} diff --git a/vendor/myclabs/php-enum/src/Enum.php b/vendor/myclabs/php-enum/src/Enum.php new file mode 100644 index 0000000..4c94cf6 --- /dev/null +++ b/vendor/myclabs/php-enum/src/Enum.php @@ -0,0 +1,318 @@ + + * @author Daniel Costa + * @author Mirosław Filip + * + * @psalm-template T + * @psalm-immutable + * @psalm-consistent-constructor + */ +abstract class Enum implements \JsonSerializable, \Stringable +{ + /** + * Enum value + * + * @var mixed + * @psalm-var T + */ + protected $value; + + /** + * Enum key, the constant name + * + * @var string + */ + private $key; + + /** + * Store existing constants in a static cache per object. + * + * + * @var array + * @psalm-var array> + */ + protected static $cache = []; + + /** + * Cache of instances of the Enum class + * + * @var array + * @psalm-var array> + */ + protected static $instances = []; + + /** + * Creates a new value of some type + * + * @psalm-pure + * @param mixed $value + * + * @psalm-param T $value + * @throws \UnexpectedValueException if incompatible type is given. + */ + public function __construct($value) + { + if ($value instanceof static) { + /** @psalm-var T */ + $value = $value->getValue(); + } + + /** @psalm-suppress ImplicitToStringCast assertValidValueReturningKey returns always a string but psalm has currently an issue here */ + $this->key = static::assertValidValueReturningKey($value); + + /** @psalm-var T */ + $this->value = $value; + } + + /** + * This method exists only for the compatibility reason when deserializing a previously serialized version + * that didn't had the key property + */ + public function __wakeup() + { + /** @psalm-suppress DocblockTypeContradiction key can be null when deserializing an enum without the key */ + if ($this->key === null) { + /** + * @psalm-suppress InaccessibleProperty key is not readonly as marked by psalm + * @psalm-suppress PossiblyFalsePropertyAssignmentValue deserializing a case that was removed + */ + $this->key = static::search($this->value); + } + } + + /** + * @param mixed $value + * @return static + */ + public static function from($value): self + { + $key = static::assertValidValueReturningKey($value); + + return self::__callStatic($key, []); + } + + /** + * @psalm-pure + * @return mixed + * @psalm-return T + */ + public function getValue() + { + return $this->value; + } + + /** + * Returns the enum key (i.e. the constant name). + * + * @psalm-pure + * @return string + */ + public function getKey() + { + return $this->key; + } + + /** + * @psalm-pure + * @psalm-suppress InvalidCast + * @return string + */ + public function __toString() + { + return (string)$this->value; + } + + /** + * Determines if Enum should be considered equal with the variable passed as a parameter. + * Returns false if an argument is an object of different class or not an object. + * + * This method is final, for more information read https://github.com/myclabs/php-enum/issues/4 + * + * @psalm-pure + * @psalm-param mixed $variable + * @return bool + */ + final public function equals($variable = null): bool + { + return $variable instanceof self + && $this->getValue() === $variable->getValue() + && static::class === \get_class($variable); + } + + /** + * Returns the names (keys) of all constants in the Enum class + * + * @psalm-pure + * @psalm-return list + * @return array + */ + public static function keys() + { + return \array_keys(static::toArray()); + } + + /** + * Returns instances of the Enum class of all Enum constants + * + * @psalm-pure + * @psalm-return array + * @return static[] Constant name in key, Enum instance in value + */ + public static function values() + { + $values = array(); + + /** @psalm-var T $value */ + foreach (static::toArray() as $key => $value) { + $values[$key] = new static($value); + } + + return $values; + } + + /** + * Returns all possible values as an array + * + * @psalm-pure + * @psalm-suppress ImpureStaticProperty + * + * @psalm-return array + * @return array Constant name in key, constant value in value + */ + public static function toArray() + { + $class = static::class; + + if (!isset(static::$cache[$class])) { + /** @psalm-suppress ImpureMethodCall this reflection API usage has no side-effects here */ + $reflection = new \ReflectionClass($class); + /** @psalm-suppress ImpureMethodCall this reflection API usage has no side-effects here */ + static::$cache[$class] = $reflection->getConstants(); + } + + return static::$cache[$class]; + } + + /** + * Check if is valid enum value + * + * @param $value + * @psalm-param mixed $value + * @psalm-pure + * @psalm-assert-if-true T $value + * @return bool + */ + public static function isValid($value) + { + return \in_array($value, static::toArray(), true); + } + + /** + * Asserts valid enum value + * + * @psalm-pure + * @psalm-assert T $value + * @param mixed $value + */ + public static function assertValidValue($value): void + { + self::assertValidValueReturningKey($value); + } + + /** + * Asserts valid enum value + * + * @psalm-pure + * @psalm-assert T $value + * @param mixed $value + * @return string + */ + private static function assertValidValueReturningKey($value): string + { + if (false === ($key = static::search($value))) { + throw new \UnexpectedValueException("Value '$value' is not part of the enum " . static::class); + } + + return $key; + } + + /** + * Check if is valid enum key + * + * @param $key + * @psalm-param string $key + * @psalm-pure + * @return bool + */ + public static function isValidKey($key) + { + $array = static::toArray(); + + return isset($array[$key]) || \array_key_exists($key, $array); + } + + /** + * Return key for value + * + * @param mixed $value + * + * @psalm-param mixed $value + * @psalm-pure + * @return string|false + */ + public static function search($value) + { + return \array_search($value, static::toArray(), true); + } + + /** + * Returns a value when called statically like so: MyEnum::SOME_VALUE() given SOME_VALUE is a class constant + * + * @param string $name + * @param array $arguments + * + * @return static + * @throws \BadMethodCallException + * + * @psalm-pure + */ + public static function __callStatic($name, $arguments) + { + $class = static::class; + if (!isset(self::$instances[$class][$name])) { + $array = static::toArray(); + if (!isset($array[$name]) && !\array_key_exists($name, $array)) { + $message = "No static method or enum constant '$name' in class " . static::class; + throw new \BadMethodCallException($message); + } + return self::$instances[$class][$name] = new static($array[$name]); + } + return clone self::$instances[$class][$name]; + } + + /** + * Specify data which should be serialized to JSON. This method returns data that can be serialized by json_encode() + * natively. + * + * @return mixed + * @link http://php.net/manual/en/jsonserializable.jsonserialize.php + * @psalm-pure + */ + #[\ReturnTypeWillChange] + public function jsonSerialize() + { + return $this->getValue(); + } +} diff --git a/vendor/myclabs/php-enum/src/PHPUnit/Comparator.php b/vendor/myclabs/php-enum/src/PHPUnit/Comparator.php new file mode 100644 index 0000000..302bf80 --- /dev/null +++ b/vendor/myclabs/php-enum/src/PHPUnit/Comparator.php @@ -0,0 +1,54 @@ +register(new \MyCLabs\Enum\PHPUnit\Comparator()); + */ +final class Comparator extends \SebastianBergmann\Comparator\Comparator +{ + public function accepts($expected, $actual) + { + return $expected instanceof Enum && ( + $actual instanceof Enum || $actual === null + ); + } + + /** + * @param Enum $expected + * @param Enum|null $actual + * + * @return void + */ + public function assertEquals($expected, $actual, $delta = 0.0, $canonicalize = false, $ignoreCase = false) + { + if ($expected->equals($actual)) { + return; + } + + throw new ComparisonFailure( + $expected, + $actual, + $this->formatEnum($expected), + $this->formatEnum($actual), + false, + 'Failed asserting that two Enums are equal.' + ); + } + + private function formatEnum(Enum $enum = null) + { + if ($enum === null) { + return "null"; + } + + return get_class($enum)."::{$enum->getKey()}()"; + } +} diff --git a/vendor/myclabs/php-enum/stubs/Stringable.php b/vendor/myclabs/php-enum/stubs/Stringable.php new file mode 100644 index 0000000..4811af7 --- /dev/null +++ b/vendor/myclabs/php-enum/stubs/Stringable.php @@ -0,0 +1,11 @@ +=7.4.0 <8.5.0", "ext-ctype": "*", "ext-dom": "*", "ext-fileinfo": "*", diff --git a/vendor/psr/http-factory/LICENSE b/vendor/psr/http-factory/LICENSE old mode 100755 new mode 100644 diff --git a/vendor/psr/http-factory/README.md b/vendor/psr/http-factory/README.md old mode 100755 new mode 100644 diff --git a/vendor/psr/http-factory/composer.json b/vendor/psr/http-factory/composer.json old mode 100755 new mode 100644 index 82a1d32..d1bbdde --- a/vendor/psr/http-factory/composer.json +++ b/vendor/psr/http-factory/composer.json @@ -1,6 +1,6 @@ { "name": "psr/http-factory", - "description": "PSR-17: Common interfaces for PSR-7 HTTP message factories", + "description": "Common interfaces for PSR-7 HTTP message factories", "keywords": [ "psr", "psr-7", @@ -18,11 +18,8 @@ "homepage": "https://www.php-fig.org/" } ], - "support": { - "source": "https://github.com/php-fig/http-factory" - }, "require": { - "php": ">=7.1", + "php": ">=7.0.0", "psr/http-message": "^1.0 || ^2.0" }, "autoload": { diff --git a/vendor/psr/http-factory/src/RequestFactoryInterface.php b/vendor/psr/http-factory/src/RequestFactoryInterface.php old mode 100755 new mode 100644 diff --git a/vendor/psr/http-factory/src/ResponseFactoryInterface.php b/vendor/psr/http-factory/src/ResponseFactoryInterface.php old mode 100755 new mode 100644 diff --git a/vendor/psr/http-factory/src/ServerRequestFactoryInterface.php b/vendor/psr/http-factory/src/ServerRequestFactoryInterface.php old mode 100755 new mode 100644 diff --git a/vendor/psr/http-factory/src/StreamFactoryInterface.php b/vendor/psr/http-factory/src/StreamFactoryInterface.php old mode 100755 new mode 100644 diff --git a/vendor/psr/http-factory/src/UploadedFileFactoryInterface.php b/vendor/psr/http-factory/src/UploadedFileFactoryInterface.php old mode 100755 new mode 100644 index d7adbf0..7db4e30 --- a/vendor/psr/http-factory/src/UploadedFileFactoryInterface.php +++ b/vendor/psr/http-factory/src/UploadedFileFactoryInterface.php @@ -15,10 +15,10 @@ interface UploadedFileFactoryInterface * * @param StreamInterface $stream Underlying stream representing the * uploaded file content. - * @param int|null $size in bytes + * @param int $size in bytes * @param int $error PHP file upload error - * @param string|null $clientFilename Filename as provided by the client, if any. - * @param string|null $clientMediaType Media type as provided by the client, if any. + * @param string $clientFilename Filename as provided by the client, if any. + * @param string $clientMediaType Media type as provided by the client, if any. * * @return UploadedFileInterface * @@ -26,9 +26,9 @@ interface UploadedFileFactoryInterface */ public function createUploadedFile( StreamInterface $stream, - ?int $size = null, + int $size = null, int $error = \UPLOAD_ERR_OK, - ?string $clientFilename = null, - ?string $clientMediaType = null + string $clientFilename = null, + string $clientMediaType = null ): UploadedFileInterface; } diff --git a/vendor/psr/http-factory/src/UriFactoryInterface.php b/vendor/psr/http-factory/src/UriFactoryInterface.php old mode 100755 new mode 100644 diff --git a/vendor/psr/http-message/composer.json b/vendor/psr/http-message/composer.json index c66e5ab..56e8c0a 100644 --- a/vendor/psr/http-message/composer.json +++ b/vendor/psr/http-message/composer.json @@ -7,7 +7,7 @@ "authors": [ { "name": "PHP-FIG", - "homepage": "https://www.php-fig.org/" + "homepage": "http://www.php-fig.org/" } ], "require": { @@ -20,7 +20,7 @@ }, "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "1.1.x-dev" } } } diff --git a/vendor/psr/http-message/src/MessageInterface.php b/vendor/psr/http-message/src/MessageInterface.php index a83c985..8cdb4ed 100644 --- a/vendor/psr/http-message/src/MessageInterface.php +++ b/vendor/psr/http-message/src/MessageInterface.php @@ -1,5 +1,7 @@ =8.1" + "php": ">=8.0.2" }, "autoload": { "files": [ @@ -25,7 +25,7 @@ "minimum-stability": "dev", "extra": { "branch-alias": { - "dev-main": "3.6-dev" + "dev-main": "3.0-dev" }, "thanks": { "name": "symfony/contracts", diff --git a/vendor/symfony/event-dispatcher-contracts/.gitignore b/vendor/symfony/event-dispatcher-contracts/.gitignore new file mode 100644 index 0000000..c49a5d8 --- /dev/null +++ b/vendor/symfony/event-dispatcher-contracts/.gitignore @@ -0,0 +1,3 @@ +vendor/ +composer.lock +phpunit.xml diff --git a/vendor/symfony/event-dispatcher-contracts/Event.php b/vendor/symfony/event-dispatcher-contracts/Event.php index 2e7f998..384a650 100644 --- a/vendor/symfony/event-dispatcher-contracts/Event.php +++ b/vendor/symfony/event-dispatcher-contracts/Event.php @@ -32,6 +32,9 @@ class Event implements StoppableEventInterface { private bool $propagationStopped = false; + /** + * {@inheritdoc} + */ public function isPropagationStopped(): bool { return $this->propagationStopped; diff --git a/vendor/symfony/event-dispatcher-contracts/EventDispatcherInterface.php b/vendor/symfony/event-dispatcher-contracts/EventDispatcherInterface.php index 2d7840d..351dc51 100644 --- a/vendor/symfony/event-dispatcher-contracts/EventDispatcherInterface.php +++ b/vendor/symfony/event-dispatcher-contracts/EventDispatcherInterface.php @@ -21,13 +21,11 @@ interface EventDispatcherInterface extends PsrEventDispatcherInterface /** * Dispatches an event to all registered listeners. * - * @template T of object - * - * @param T $event The event to pass to the event handlers/listeners + * @param object $event The event to pass to the event handlers/listeners * @param string|null $eventName The name of the event to dispatch. If not supplied, * the class of $event should be used instead. * - * @return T The passed $event MUST be returned + * @return object The passed $event MUST be returned */ - public function dispatch(object $event, ?string $eventName = null): object; + public function dispatch(object $event, string $eventName = null): object; } diff --git a/vendor/symfony/event-dispatcher-contracts/LICENSE b/vendor/symfony/event-dispatcher-contracts/LICENSE index 7536cae..74cdc2d 100644 --- a/vendor/symfony/event-dispatcher-contracts/LICENSE +++ b/vendor/symfony/event-dispatcher-contracts/LICENSE @@ -1,4 +1,4 @@ -Copyright (c) 2018-present Fabien Potencier +Copyright (c) 2018-2022 Fabien Potencier Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/vendor/symfony/event-dispatcher-contracts/README.md b/vendor/symfony/event-dispatcher-contracts/README.md index 332b961..b1ab4c0 100644 --- a/vendor/symfony/event-dispatcher-contracts/README.md +++ b/vendor/symfony/event-dispatcher-contracts/README.md @@ -3,7 +3,7 @@ Symfony EventDispatcher Contracts A set of abstractions extracted out of the Symfony components. -Can be used to build on semantics that the Symfony components proved useful and +Can be used to build on semantics that the Symfony components proved useful - and that already have battle tested implementations. See https://github.com/symfony/contracts/blob/main/README.md for more information. diff --git a/vendor/symfony/event-dispatcher-contracts/composer.json b/vendor/symfony/event-dispatcher-contracts/composer.json index d156b44..b4c3933 100644 --- a/vendor/symfony/event-dispatcher-contracts/composer.json +++ b/vendor/symfony/event-dispatcher-contracts/composer.json @@ -16,16 +16,19 @@ } ], "require": { - "php": ">=8.1", + "php": ">=8.0.2", "psr/event-dispatcher": "^1" }, + "suggest": { + "symfony/event-dispatcher-implementation": "" + }, "autoload": { "psr-4": { "Symfony\\Contracts\\EventDispatcher\\": "" } }, "minimum-stability": "dev", "extra": { "branch-alias": { - "dev-main": "3.6-dev" + "dev-main": "3.0-dev" }, "thanks": { "name": "symfony/contracts", diff --git a/vendor/symfony/finder/CHANGELOG.md b/vendor/symfony/finder/CHANGELOG.md index e838302..9e2fc5a 100644 --- a/vendor/symfony/finder/CHANGELOG.md +++ b/vendor/symfony/finder/CHANGELOG.md @@ -1,17 +1,6 @@ CHANGELOG ========= -6.4 ---- - - * Add early directory pruning to `Finder::filter()` - -6.2 ---- - - * Add `Finder::sortByExtension()` and `Finder::sortBySize()` - * Add `Finder::sortByCaseInsensitiveName()` to sort by name with case insensitive sorting methods - 6.0 --- diff --git a/vendor/symfony/finder/Comparator/Comparator.php b/vendor/symfony/finder/Comparator/Comparator.php index 41c02ac..f1ba97d 100644 --- a/vendor/symfony/finder/Comparator/Comparator.php +++ b/vendor/symfony/finder/Comparator/Comparator.php @@ -16,16 +16,16 @@ namespace Symfony\Component\Finder\Comparator; */ class Comparator { + private string $target; private string $operator; - public function __construct( - private string $target, - string $operator = '==', - ) { + public function __construct(string $target, string $operator = '==') + { if (!\in_array($operator, ['>', '<', '>=', '<=', '==', '!='])) { - throw new \InvalidArgumentException(\sprintf('Invalid operator "%s".', $operator)); + throw new \InvalidArgumentException(sprintf('Invalid operator "%s".', $operator)); } + $this->target = $target; $this->operator = $operator; } @@ -50,13 +50,19 @@ class Comparator */ public function test(mixed $test): bool { - return match ($this->operator) { - '>' => $test > $this->target, - '>=' => $test >= $this->target, - '<' => $test < $this->target, - '<=' => $test <= $this->target, - '!=' => $test != $this->target, - default => $test == $this->target, - }; + switch ($this->operator) { + case '>': + return $test > $this->target; + case '>=': + return $test >= $this->target; + case '<': + return $test < $this->target; + case '<=': + return $test <= $this->target; + case '!=': + return $test != $this->target; + } + + return $test == $this->target; } } diff --git a/vendor/symfony/finder/Comparator/DateComparator.php b/vendor/symfony/finder/Comparator/DateComparator.php index bcf93cf..8f651e1 100644 --- a/vendor/symfony/finder/Comparator/DateComparator.php +++ b/vendor/symfony/finder/Comparator/DateComparator.php @@ -26,17 +26,17 @@ class DateComparator extends Comparator public function __construct(string $test) { if (!preg_match('#^\s*(==|!=|[<>]=?|after|since|before|until)?\s*(.+?)\s*$#i', $test, $matches)) { - throw new \InvalidArgumentException(\sprintf('Don\'t understand "%s" as a date test.', $test)); + throw new \InvalidArgumentException(sprintf('Don\'t understand "%s" as a date test.', $test)); } try { - $date = new \DateTimeImmutable($matches[2]); + $date = new \DateTime($matches[2]); $target = $date->format('U'); - } catch (\Exception) { - throw new \InvalidArgumentException(\sprintf('"%s" is not a valid date.', $matches[2])); + } catch (\Exception $e) { + throw new \InvalidArgumentException(sprintf('"%s" is not a valid date.', $matches[2])); } - $operator = $matches[1] ?: '=='; + $operator = $matches[1] ?? '=='; if ('since' === $operator || 'after' === $operator) { $operator = '>'; } diff --git a/vendor/symfony/finder/Comparator/NumberComparator.php b/vendor/symfony/finder/Comparator/NumberComparator.php index 0ec0049..ff85d96 100644 --- a/vendor/symfony/finder/Comparator/NumberComparator.php +++ b/vendor/symfony/finder/Comparator/NumberComparator.php @@ -19,7 +19,7 @@ namespace Symfony\Component\Finder\Comparator; * magnitudes. * * The target value may use magnitudes of kilobytes (k, ki), - * megabytes (m, mi), or gigabytes (g, gi). Those suffixed + * megabytes (m, mi), or gigabytes (g, gi). Those suffixed * with an i use the appropriate 2**n version in accordance with the * IEC standard: http://physics.nist.gov/cuu/Units/binary.html * @@ -35,19 +35,19 @@ namespace Symfony\Component\Finder\Comparator; class NumberComparator extends Comparator { /** - * @param string|null $test A comparison string or null + * @param string|int $test A comparison string or an integer * * @throws \InvalidArgumentException If the test is not understood */ public function __construct(?string $test) { if (null === $test || !preg_match('#^\s*(==|!=|[<>]=?)?\s*([0-9\.]+)\s*([kmg]i?)?\s*$#i', $test, $matches)) { - throw new \InvalidArgumentException(\sprintf('Don\'t understand "%s" as a number test.', $test ?? 'null')); + throw new \InvalidArgumentException(sprintf('Don\'t understand "%s" as a number test.', $test ?? 'null')); } $target = $matches[2]; if (!is_numeric($target)) { - throw new \InvalidArgumentException(\sprintf('Invalid number "%s".', $target)); + throw new \InvalidArgumentException(sprintf('Invalid number "%s".', $target)); } if (isset($matches[3])) { // magnitude diff --git a/vendor/symfony/finder/Finder.php b/vendor/symfony/finder/Finder.php index 78673af..e5772c4 100644 --- a/vendor/symfony/finder/Finder.php +++ b/vendor/symfony/finder/Finder.php @@ -50,7 +50,6 @@ class Finder implements \IteratorAggregate, \Countable private array $notNames = []; private array $exclude = []; private array $filters = []; - private array $pruneFilters = []; private array $depths = []; private array $sizes = []; private bool $followLinks = false; @@ -124,7 +123,7 @@ class Finder implements \IteratorAggregate, \Countable public function depth(string|int|array $levels): static { foreach ((array) $levels as $level) { - $this->depths[] = new NumberComparator($level); + $this->depths[] = new Comparator\NumberComparator($level); } return $this; @@ -152,7 +151,7 @@ class Finder implements \IteratorAggregate, \Countable public function date(string|array $dates): static { foreach ((array) $dates as $date) { - $this->dates[] = new DateComparator($date); + $this->dates[] = new Comparator\DateComparator($date); } return $this; @@ -163,8 +162,8 @@ class Finder implements \IteratorAggregate, \Countable * * You can use patterns (delimited with / sign), globs or simple strings. * - * $finder->name('/\.php$/') - * $finder->name('*.php') // same as above, without dot files + * $finder->name('*.php') + * $finder->name('/\.php$/') // same as above * $finder->name('test.php') * $finder->name(['test.py', 'test.php']) * @@ -307,7 +306,7 @@ class Finder implements \IteratorAggregate, \Countable public function size(string|int|array $sizes): static { foreach ((array) $sizes as $size) { - $this->sizes[] = new NumberComparator($size); + $this->sizes[] = new Comparator\NumberComparator($size); } return $this; @@ -398,7 +397,7 @@ class Finder implements \IteratorAggregate, \Countable * * @param string|string[] $pattern VCS patterns to ignore */ - public static function addVCSPattern(string|array $pattern): void + public static function addVCSPattern(string|array $pattern) { foreach ((array) $pattern as $p) { self::$vcsPatterns[] = $p; @@ -425,22 +424,6 @@ class Finder implements \IteratorAggregate, \Countable return $this; } - /** - * Sorts files and directories by extension. - * - * This can be slow as all the matching files and directories must be retrieved for comparison. - * - * @return $this - * - * @see SortableIterator - */ - public function sortByExtension(): static - { - $this->sort = SortableIterator::SORT_BY_EXTENSION; - - return $this; - } - /** * Sorts files and directories by name. * @@ -452,39 +435,7 @@ class Finder implements \IteratorAggregate, \Countable */ public function sortByName(bool $useNaturalSort = false): static { - $this->sort = $useNaturalSort ? SortableIterator::SORT_BY_NAME_NATURAL : SortableIterator::SORT_BY_NAME; - - return $this; - } - - /** - * Sorts files and directories by name case insensitive. - * - * This can be slow as all the matching files and directories must be retrieved for comparison. - * - * @return $this - * - * @see SortableIterator - */ - public function sortByCaseInsensitiveName(bool $useNaturalSort = false): static - { - $this->sort = $useNaturalSort ? SortableIterator::SORT_BY_NAME_NATURAL_CASE_INSENSITIVE : SortableIterator::SORT_BY_NAME_CASE_INSENSITIVE; - - return $this; - } - - /** - * Sorts files and directories by size. - * - * This can be slow as all the matching files and directories must be retrieved for comparison. - * - * @return $this - * - * @see SortableIterator - */ - public function sortBySize(): static - { - $this->sort = SortableIterator::SORT_BY_SIZE; + $this->sort = $useNaturalSort ? Iterator\SortableIterator::SORT_BY_NAME_NATURAL : Iterator\SortableIterator::SORT_BY_NAME; return $this; } @@ -500,7 +451,7 @@ class Finder implements \IteratorAggregate, \Countable */ public function sortByType(): static { - $this->sort = SortableIterator::SORT_BY_TYPE; + $this->sort = Iterator\SortableIterator::SORT_BY_TYPE; return $this; } @@ -518,7 +469,7 @@ class Finder implements \IteratorAggregate, \Countable */ public function sortByAccessedTime(): static { - $this->sort = SortableIterator::SORT_BY_ACCESSED_TIME; + $this->sort = Iterator\SortableIterator::SORT_BY_ACCESSED_TIME; return $this; } @@ -550,7 +501,7 @@ class Finder implements \IteratorAggregate, \Countable */ public function sortByChangedTime(): static { - $this->sort = SortableIterator::SORT_BY_CHANGED_TIME; + $this->sort = Iterator\SortableIterator::SORT_BY_CHANGED_TIME; return $this; } @@ -568,7 +519,7 @@ class Finder implements \IteratorAggregate, \Countable */ public function sortByModifiedTime(): static { - $this->sort = SortableIterator::SORT_BY_MODIFIED_TIME; + $this->sort = Iterator\SortableIterator::SORT_BY_MODIFIED_TIME; return $this; } @@ -579,21 +530,14 @@ class Finder implements \IteratorAggregate, \Countable * The anonymous function receives a \SplFileInfo and must return false * to remove files. * - * @param \Closure(SplFileInfo): bool $closure - * @param bool $prune Whether to skip traversing directories further - * * @return $this * * @see CustomFilterIterator */ - public function filter(\Closure $closure, bool $prune = false): static + public function filter(\Closure $closure): static { $this->filters[] = $closure; - if ($prune) { - $this->pruneFilters[] = $closure; - } - return $this; } @@ -641,9 +585,9 @@ class Finder implements \IteratorAggregate, \Countable $resolvedDirs[] = [$this->normalizeDir($dir)]; } elseif ($glob = glob($dir, (\defined('GLOB_BRACE') ? \GLOB_BRACE : 0) | \GLOB_ONLYDIR | \GLOB_NOSORT)) { sort($glob); - $resolvedDirs[] = array_map($this->normalizeDir(...), $glob); + $resolvedDirs[] = array_map([$this, 'normalizeDir'], $glob); } else { - throw new DirectoryNotFoundException(\sprintf('The "%s" directory does not exist.', $dir)); + throw new DirectoryNotFoundException(sprintf('The "%s" directory does not exist.', $dir)); } } @@ -671,7 +615,7 @@ class Finder implements \IteratorAggregate, \Countable $iterator = $this->searchInDirectory($this->dirs[0]); if ($this->sort || $this->reverseSorting) { - $iterator = (new SortableIterator($iterator, $this->sort, $this->reverseSorting))->getIterator(); + $iterator = (new Iterator\SortableIterator($iterator, $this->sort, $this->reverseSorting))->getIterator(); } return $iterator; @@ -679,7 +623,9 @@ class Finder implements \IteratorAggregate, \Countable $iterator = new \AppendIterator(); foreach ($this->dirs as $dir) { - $iterator->append(new \IteratorIterator(new LazyIterator(fn () => $this->searchInDirectory($dir)))); + $iterator->append(new \IteratorIterator(new LazyIterator(function () use ($dir) { + return $this->searchInDirectory($dir); + }))); } foreach ($this->iterators as $it) { @@ -687,7 +633,7 @@ class Finder implements \IteratorAggregate, \Countable } if ($this->sort || $this->reverseSorting) { - $iterator = (new SortableIterator($iterator, $this->sort, $this->reverseSorting))->getIterator(); + $iterator = (new Iterator\SortableIterator($iterator, $this->sort, $this->reverseSorting))->getIterator(); } return $iterator; @@ -699,6 +645,8 @@ class Finder implements \IteratorAggregate, \Countable * The set can be another Finder, an Iterator, an IteratorAggregate, or even a plain array. * * @return $this + * + * @throws \InvalidArgumentException when the given argument is not iterable */ public function append(iterable $iterator): static { @@ -706,13 +654,15 @@ class Finder implements \IteratorAggregate, \Countable $this->iterators[] = $iterator->getIterator(); } elseif ($iterator instanceof \Iterator) { $this->iterators[] = $iterator; - } else { + } elseif (is_iterable($iterator)) { $it = new \ArrayIterator(); foreach ($iterator as $file) { $file = $file instanceof \SplFileInfo ? $file : new \SplFileInfo($file); $it[$file->getPathname()] = $file; } $this->iterators[] = $it; + } else { + throw new \InvalidArgumentException('Finder::append() method wrong argument type.'); } return $this; @@ -743,10 +693,6 @@ class Finder implements \IteratorAggregate, \Countable $exclude = $this->exclude; $notPaths = $this->notPaths; - if ($this->pruneFilters) { - $exclude = array_merge($exclude, $this->pruneFilters); - } - if (static::IGNORE_VCS_FILES === (static::IGNORE_VCS_FILES & $this->ignore)) { $exclude = array_merge($exclude, self::$vcsPatterns); } @@ -786,13 +732,13 @@ class Finder implements \IteratorAggregate, \Countable $iterator = new Iterator\RecursiveDirectoryIterator($dir, $flags, $this->ignoreUnreadableDirs); if ($exclude) { - $iterator = new ExcludeDirectoryFilterIterator($iterator, $exclude); + $iterator = new Iterator\ExcludeDirectoryFilterIterator($iterator, $exclude); } $iterator = new \RecursiveIteratorIterator($iterator, \RecursiveIteratorIterator::SELF_FIRST); if ($minDepth > 0 || $maxDepth < \PHP_INT_MAX) { - $iterator = new DepthRangeFilterIterator($iterator, $minDepth, $maxDepth); + $iterator = new Iterator\DepthRangeFilterIterator($iterator, $minDepth, $maxDepth); } if ($this->mode) { @@ -800,23 +746,23 @@ class Finder implements \IteratorAggregate, \Countable } if ($this->names || $this->notNames) { - $iterator = new FilenameFilterIterator($iterator, $this->names, $this->notNames); + $iterator = new Iterator\FilenameFilterIterator($iterator, $this->names, $this->notNames); } if ($this->contains || $this->notContains) { - $iterator = new FilecontentFilterIterator($iterator, $this->contains, $this->notContains); + $iterator = new Iterator\FilecontentFilterIterator($iterator, $this->contains, $this->notContains); } if ($this->sizes) { - $iterator = new SizeRangeFilterIterator($iterator, $this->sizes); + $iterator = new Iterator\SizeRangeFilterIterator($iterator, $this->sizes); } if ($this->dates) { - $iterator = new DateRangeFilterIterator($iterator, $this->dates); + $iterator = new Iterator\DateRangeFilterIterator($iterator, $this->dates); } if ($this->filters) { - $iterator = new CustomFilterIterator($iterator, $this->filters); + $iterator = new Iterator\CustomFilterIterator($iterator, $this->filters); } if ($this->paths || $notPaths) { diff --git a/vendor/symfony/finder/Gitignore.php b/vendor/symfony/finder/Gitignore.php index bf05c5b..d42cca1 100644 --- a/vendor/symfony/finder/Gitignore.php +++ b/vendor/symfony/finder/Gitignore.php @@ -43,7 +43,7 @@ class Gitignore foreach ($gitignoreLines as $line) { $line = preg_replace('~(? '['.('' !== $matches[1] ? '^' : '').str_replace('\\-', '-', $matches[2]).']', $regex); + $regex = preg_replace_callback('~\\\\\[((?:\\\\!)?)([^\[\]]*)\\\\\]~', function (array $matches): string { + return '['.('' !== $matches[1] ? '^' : '').str_replace('\\-', '-', $matches[2]).']'; + }, $regex); $regex = preg_replace('~(?:(?:\\\\\*){2,}(/?))+~', '(?:(?:(?!//).(? * - * @extends \FilterIterator - * - * @implements \RecursiveIterator + * @extends \FilterIterator + * @implements \RecursiveIterator */ class ExcludeDirectoryFilterIterator extends \FilterIterator implements \RecursiveIterator { - /** @var \Iterator */ private \Iterator $iterator; private bool $isRecursive; - /** @var array */ private array $excludedDirs = []; private ?string $excludedPattern = null; - /** @var list */ - private array $pruneFilters = []; /** - * @param \Iterator $iterator The Iterator to filter - * @param list $directories An array of directories to exclude + * @param \Iterator $iterator The Iterator to filter + * @param string[] $directories An array of directories to exclude */ public function __construct(\Iterator $iterator, array $directories) { @@ -43,16 +36,6 @@ class ExcludeDirectoryFilterIterator extends \FilterIterator implements \Recursi $this->isRecursive = $iterator instanceof \RecursiveIterator; $patterns = []; foreach ($directories as $directory) { - if (!\is_string($directory)) { - if (!\is_callable($directory)) { - throw new \InvalidArgumentException('Invalid PHP callback.'); - } - - $this->pruneFilters[] = $directory; - - continue; - } - $directory = rtrim($directory, '/'); if (!$this->isRecursive || str_contains($directory, '/')) { $patterns[] = preg_quote($directory, '#'); @@ -83,14 +66,6 @@ class ExcludeDirectoryFilterIterator extends \FilterIterator implements \Recursi return !preg_match($this->excludedPattern, $path); } - if ($this->pruneFilters && $this->hasChildren()) { - foreach ($this->pruneFilters as $pruneFilter) { - if (!$pruneFilter($this->current())) { - return false; - } - } - } - return true; } diff --git a/vendor/symfony/finder/Iterator/FileTypeFilterIterator.php b/vendor/symfony/finder/Iterator/FileTypeFilterIterator.php index 0d4a5fd..2ed48fb 100644 --- a/vendor/symfony/finder/Iterator/FileTypeFilterIterator.php +++ b/vendor/symfony/finder/Iterator/FileTypeFilterIterator.php @@ -23,14 +23,16 @@ class FileTypeFilterIterator extends \FilterIterator public const ONLY_FILES = 1; public const ONLY_DIRECTORIES = 2; + private int $mode; + /** - * @param \Iterator $iterator The Iterator to filter - * @param int $mode The mode (self::ONLY_FILES or self::ONLY_DIRECTORIES) + * @param \Iterator $iterator The Iterator to filter + * @param int $mode The mode (self::ONLY_FILES or self::ONLY_DIRECTORIES) */ - public function __construct( - \Iterator $iterator, - private int $mode, - ) { + public function __construct(\Iterator $iterator, int $mode) + { + $this->mode = $mode; + parent::__construct($iterator); } diff --git a/vendor/symfony/finder/Iterator/FilecontentFilterIterator.php b/vendor/symfony/finder/Iterator/FilecontentFilterIterator.php index bdc71ff..eaa7a5d 100644 --- a/vendor/symfony/finder/Iterator/FilecontentFilterIterator.php +++ b/vendor/symfony/finder/Iterator/FilecontentFilterIterator.php @@ -11,15 +11,13 @@ namespace Symfony\Component\Finder\Iterator; -use Symfony\Component\Finder\SplFileInfo; - /** * FilecontentFilterIterator filters files by their contents using patterns (regexps or strings). * * @author Fabien Potencier * @author Włodzimierz Gajda * - * @extends MultiplePcreFilterIterator + * @extends MultiplePcreFilterIterator */ class FilecontentFilterIterator extends MultiplePcreFilterIterator { diff --git a/vendor/symfony/finder/Iterator/LazyIterator.php b/vendor/symfony/finder/Iterator/LazyIterator.php index 5b5806b..71c4be8 100644 --- a/vendor/symfony/finder/Iterator/LazyIterator.php +++ b/vendor/symfony/finder/Iterator/LazyIterator.php @@ -22,7 +22,7 @@ class LazyIterator implements \IteratorAggregate public function __construct(callable $iteratorFactory) { - $this->iteratorFactory = $iteratorFactory(...); + $this->iteratorFactory = $iteratorFactory instanceof \Closure ? $iteratorFactory : \Closure::fromCallable($iteratorFactory); } public function getIterator(): \Traversable diff --git a/vendor/symfony/finder/Iterator/MultiplePcreFilterIterator.php b/vendor/symfony/finder/Iterator/MultiplePcreFilterIterator.php index 3450c49..1e9e7ff 100644 --- a/vendor/symfony/finder/Iterator/MultiplePcreFilterIterator.php +++ b/vendor/symfony/finder/Iterator/MultiplePcreFilterIterator.php @@ -23,13 +23,13 @@ namespace Symfony\Component\Finder\Iterator; */ abstract class MultiplePcreFilterIterator extends \FilterIterator { - protected array $matchRegexps = []; - protected array $noMatchRegexps = []; + protected $matchRegexps = []; + protected $noMatchRegexps = []; /** - * @param \Iterator $iterator The Iterator to filter - * @param string[] $matchPatterns An array of patterns that need to match - * @param string[] $noMatchPatterns An array of patterns that need to not match + * @param \Iterator $iterator The Iterator to filter + * @param string[] $matchPatterns An array of patterns that need to match + * @param string[] $noMatchPatterns An array of patterns that need to not match */ public function __construct(\Iterator $iterator, array $matchPatterns, array $noMatchPatterns) { @@ -80,7 +80,11 @@ abstract class MultiplePcreFilterIterator extends \FilterIterator */ protected function isRegex(string $str): bool { - $availableModifiers = 'imsxuADUn'; + $availableModifiers = 'imsxuADU'; + + if (\PHP_VERSION_ID >= 80200) { + $availableModifiers .= 'n'; + } if (preg_match('/^(.{3,}?)['.$availableModifiers.']*$/', $str, $m)) { $start = substr($m[1], 0, 1); diff --git a/vendor/symfony/finder/Iterator/PathFilterIterator.php b/vendor/symfony/finder/Iterator/PathFilterIterator.php index c6d5813..bfe402a 100644 --- a/vendor/symfony/finder/Iterator/PathFilterIterator.php +++ b/vendor/symfony/finder/Iterator/PathFilterIterator.php @@ -11,15 +11,13 @@ namespace Symfony\Component\Finder\Iterator; -use Symfony\Component\Finder\SplFileInfo; - /** * PathFilterIterator filters files by path patterns (e.g. some/special/dir). * * @author Fabien Potencier * @author Włodzimierz Gajda * - * @extends MultiplePcreFilterIterator + * @extends MultiplePcreFilterIterator */ class PathFilterIterator extends MultiplePcreFilterIterator { diff --git a/vendor/symfony/finder/Iterator/RecursiveDirectoryIterator.php b/vendor/symfony/finder/Iterator/RecursiveDirectoryIterator.php index f5fd2d4..4c9779f 100644 --- a/vendor/symfony/finder/Iterator/RecursiveDirectoryIterator.php +++ b/vendor/symfony/finder/Iterator/RecursiveDirectoryIterator.php @@ -18,13 +18,11 @@ use Symfony\Component\Finder\SplFileInfo; * Extends the \RecursiveDirectoryIterator to support relative paths. * * @author Victor Berchet - * - * @extends \RecursiveDirectoryIterator */ class RecursiveDirectoryIterator extends \RecursiveDirectoryIterator { private bool $ignoreUnreadableDirs; - private bool $ignoreFirstRewind = true; + private ?bool $rewindable = null; // these 3 properties take part of the performance optimization to avoid redoing the same work in all iterations private string $rootPath; @@ -63,9 +61,8 @@ class RecursiveDirectoryIterator extends \RecursiveDirectoryIterator $subPathname .= $this->directorySeparator; } $subPathname .= $this->getFilename(); - $basePath = $this->rootPath; - if ('/' !== $basePath && !str_ends_with($basePath, $this->directorySeparator) && !str_ends_with($basePath, '/')) { + if ('/' !== $basePath = $this->rootPath) { $basePath .= $this->directorySeparator; } @@ -84,7 +81,7 @@ class RecursiveDirectoryIterator extends \RecursiveDirectoryIterator parent::getChildren(); return true; - } catch (\UnexpectedValueException) { + } catch (\UnexpectedValueException $e) { // If directory is unreadable and finder is set to ignore it, skip children return false; } @@ -103,6 +100,7 @@ class RecursiveDirectoryIterator extends \RecursiveDirectoryIterator $children->ignoreUnreadableDirs = $this->ignoreUnreadableDirs; // performance optimization to avoid redoing the same work in all children + $children->rewindable = &$this->rewindable; $children->rootPath = $this->rootPath; } @@ -112,23 +110,36 @@ class RecursiveDirectoryIterator extends \RecursiveDirectoryIterator } } - public function next(): void - { - $this->ignoreFirstRewind = false; - - parent::next(); - } - + /** + * Do nothing for non rewindable stream. + */ public function rewind(): void { - // some streams like FTP are not rewindable, ignore the first rewind after creation, - // as newly created DirectoryIterator does not need to be rewound - if ($this->ignoreFirstRewind) { - $this->ignoreFirstRewind = false; - + if (false === $this->isRewindable()) { return; } parent::rewind(); } + + /** + * Checks if the stream is rewindable. + */ + public function isRewindable(): bool + { + if (null !== $this->rewindable) { + return $this->rewindable; + } + + if (false !== $stream = @opendir($this->getPath())) { + $infos = stream_get_meta_data($stream); + closedir($stream); + + if ($infos['seekable']) { + return $this->rewindable = true; + } + } + + return $this->rewindable = false; + } } diff --git a/vendor/symfony/finder/Iterator/SortableIterator.php b/vendor/symfony/finder/Iterator/SortableIterator.php index 177cd0b..b6c34b6 100644 --- a/vendor/symfony/finder/Iterator/SortableIterator.php +++ b/vendor/symfony/finder/Iterator/SortableIterator.php @@ -27,12 +27,7 @@ class SortableIterator implements \IteratorAggregate public const SORT_BY_CHANGED_TIME = 4; public const SORT_BY_MODIFIED_TIME = 5; public const SORT_BY_NAME_NATURAL = 6; - public const SORT_BY_NAME_CASE_INSENSITIVE = 7; - public const SORT_BY_NAME_NATURAL_CASE_INSENSITIVE = 8; - public const SORT_BY_EXTENSION = 9; - public const SORT_BY_SIZE = 10; - /** @var \Traversable */ private \Traversable $iterator; private \Closure|int $sort; @@ -48,13 +43,13 @@ class SortableIterator implements \IteratorAggregate $order = $reverseOrder ? -1 : 1; if (self::SORT_BY_NAME === $sort) { - $this->sort = static fn (\SplFileInfo $a, \SplFileInfo $b) => $order * strcmp($a->getRealPath() ?: $a->getPathname(), $b->getRealPath() ?: $b->getPathname()); + $this->sort = static function (\SplFileInfo $a, \SplFileInfo $b) use ($order) { + return $order * strcmp($a->getRealPath() ?: $a->getPathname(), $b->getRealPath() ?: $b->getPathname()); + }; } elseif (self::SORT_BY_NAME_NATURAL === $sort) { - $this->sort = static fn (\SplFileInfo $a, \SplFileInfo $b) => $order * strnatcmp($a->getRealPath() ?: $a->getPathname(), $b->getRealPath() ?: $b->getPathname()); - } elseif (self::SORT_BY_NAME_CASE_INSENSITIVE === $sort) { - $this->sort = static fn (\SplFileInfo $a, \SplFileInfo $b) => $order * strcasecmp($a->getRealPath() ?: $a->getPathname(), $b->getRealPath() ?: $b->getPathname()); - } elseif (self::SORT_BY_NAME_NATURAL_CASE_INSENSITIVE === $sort) { - $this->sort = static fn (\SplFileInfo $a, \SplFileInfo $b) => $order * strnatcasecmp($a->getRealPath() ?: $a->getPathname(), $b->getRealPath() ?: $b->getPathname()); + $this->sort = static function (\SplFileInfo $a, \SplFileInfo $b) use ($order) { + return $order * strnatcmp($a->getRealPath() ?: $a->getPathname(), $b->getRealPath() ?: $b->getPathname()); + }; } elseif (self::SORT_BY_TYPE === $sort) { $this->sort = static function (\SplFileInfo $a, \SplFileInfo $b) use ($order) { if ($a->isDir() && $b->isFile()) { @@ -66,19 +61,21 @@ class SortableIterator implements \IteratorAggregate return $order * strcmp($a->getRealPath() ?: $a->getPathname(), $b->getRealPath() ?: $b->getPathname()); }; } elseif (self::SORT_BY_ACCESSED_TIME === $sort) { - $this->sort = static fn (\SplFileInfo $a, \SplFileInfo $b) => $order * ($a->getATime() - $b->getATime()); + $this->sort = static function (\SplFileInfo $a, \SplFileInfo $b) use ($order) { + return $order * ($a->getATime() - $b->getATime()); + }; } elseif (self::SORT_BY_CHANGED_TIME === $sort) { - $this->sort = static fn (\SplFileInfo $a, \SplFileInfo $b) => $order * ($a->getCTime() - $b->getCTime()); + $this->sort = static function (\SplFileInfo $a, \SplFileInfo $b) use ($order) { + return $order * ($a->getCTime() - $b->getCTime()); + }; } elseif (self::SORT_BY_MODIFIED_TIME === $sort) { - $this->sort = static fn (\SplFileInfo $a, \SplFileInfo $b) => $order * ($a->getMTime() - $b->getMTime()); - } elseif (self::SORT_BY_EXTENSION === $sort) { - $this->sort = static fn (\SplFileInfo $a, \SplFileInfo $b) => $order * strnatcmp($a->getExtension(), $b->getExtension()); - } elseif (self::SORT_BY_SIZE === $sort) { - $this->sort = static fn (\SplFileInfo $a, \SplFileInfo $b) => $order * ($a->getSize() - $b->getSize()); + $this->sort = static function (\SplFileInfo $a, \SplFileInfo $b) use ($order) { + return $order * ($a->getMTime() - $b->getMTime()); + }; } elseif (self::SORT_BY_NONE === $sort) { $this->sort = $order; } elseif (\is_callable($sort)) { - $this->sort = $reverseOrder ? static fn (\SplFileInfo $a, \SplFileInfo $b) => -$sort($a, $b) : $sort(...); + $this->sort = $reverseOrder ? static function (\SplFileInfo $a, \SplFileInfo $b) use ($sort) { return -$sort($a, $b); } : \Closure::fromCallable($sort); } else { throw new \InvalidArgumentException('The SortableIterator takes a PHP callable or a valid built-in sort algorithm as an argument.'); } diff --git a/vendor/symfony/finder/Iterator/VcsIgnoredFilterIterator.php b/vendor/symfony/finder/Iterator/VcsIgnoredFilterIterator.php index b278706..e27158c 100644 --- a/vendor/symfony/finder/Iterator/VcsIgnoredFilterIterator.php +++ b/vendor/symfony/finder/Iterator/VcsIgnoredFilterIterator.php @@ -13,37 +13,27 @@ namespace Symfony\Component\Finder\Iterator; use Symfony\Component\Finder\Gitignore; -/** - * @extends \FilterIterator - */ final class VcsIgnoredFilterIterator extends \FilterIterator { - private string $baseDir; + /** + * @var string + */ + private $baseDir; /** * @var array */ - private array $gitignoreFilesCache = []; + private $gitignoreFilesCache = []; /** * @var array */ - private array $ignoredPathsCache = []; + private $ignoredPathsCache = []; - /** - * @param \Iterator $iterator - */ public function __construct(\Iterator $iterator, string $baseDir) { $this->baseDir = $this->normalizePath($baseDir); - foreach ([$this->baseDir, ...$this->parentDirectoriesUpwards($this->baseDir)] as $directory) { - if (@is_dir("{$directory}/.git")) { - $this->baseDir = $directory; - break; - } - } - parent::__construct($iterator); } @@ -68,7 +58,7 @@ final class VcsIgnoredFilterIterator extends \FilterIterator $ignored = false; - foreach ($this->parentDirectoriesDownwards($fileRealPath) as $parentDirectory) { + foreach ($this->parentsDirectoryDownward($fileRealPath) as $parentDirectory) { if ($this->isIgnored($parentDirectory)) { // rules in ignored directories are ignored, no need to check further. break; @@ -99,11 +89,11 @@ final class VcsIgnoredFilterIterator extends \FilterIterator /** * @return list */ - private function parentDirectoriesUpwards(string $from): array + private function parentsDirectoryDownward(string $fileRealPath): array { $parentDirectories = []; - $parentDirectory = $from; + $parentDirectory = $fileRealPath; while (true) { $newParentDirectory = \dirname($parentDirectory); @@ -113,28 +103,16 @@ final class VcsIgnoredFilterIterator extends \FilterIterator break; } - $parentDirectories[] = $parentDirectory = $newParentDirectory; + $parentDirectory = $newParentDirectory; + + if (0 !== strpos($parentDirectory, $this->baseDir)) { + break; + } + + $parentDirectories[] = $parentDirectory; } - return $parentDirectories; - } - - private function parentDirectoriesUpTo(string $from, string $upTo): array - { - return array_filter( - $this->parentDirectoriesUpwards($from), - static fn (string $directory): bool => str_starts_with($directory, $upTo) - ); - } - - /** - * @return list - */ - private function parentDirectoriesDownwards(string $fileRealPath): array - { - return array_reverse( - $this->parentDirectoriesUpTo($fileRealPath, $this->baseDir) - ); + return array_reverse($parentDirectories); } /** diff --git a/vendor/symfony/finder/LICENSE b/vendor/symfony/finder/LICENSE index 0138f8f..0083704 100644 --- a/vendor/symfony/finder/LICENSE +++ b/vendor/symfony/finder/LICENSE @@ -1,4 +1,4 @@ -Copyright (c) 2004-present Fabien Potencier +Copyright (c) 2004-2023 Fabien Potencier Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/vendor/symfony/finder/SplFileInfo.php b/vendor/symfony/finder/SplFileInfo.php index 2afc378..867e8e8 100644 --- a/vendor/symfony/finder/SplFileInfo.php +++ b/vendor/symfony/finder/SplFileInfo.php @@ -18,17 +18,19 @@ namespace Symfony\Component\Finder; */ class SplFileInfo extends \SplFileInfo { + private string $relativePath; + private string $relativePathname; + /** * @param string $file The file name * @param string $relativePath The relative path * @param string $relativePathname The relative path name */ - public function __construct( - string $file, - private string $relativePath, - private string $relativePathname, - ) { + public function __construct(string $file, string $relativePath, string $relativePathname) + { parent::__construct($file); + $this->relativePath = $relativePath; + $this->relativePathname = $relativePathname; } /** diff --git a/vendor/symfony/finder/composer.json b/vendor/symfony/finder/composer.json index 2b70600..2e4b324 100644 --- a/vendor/symfony/finder/composer.json +++ b/vendor/symfony/finder/composer.json @@ -16,10 +16,7 @@ } ], "require": { - "php": ">=8.2" - }, - "require-dev": { - "symfony/filesystem": "^6.4|^7.0" + "php": ">=8.0.2" }, "autoload": { "psr-4": { "Symfony\\Component\\Finder\\": "" }, diff --git a/vendor/symfony/service-contracts/.gitignore b/vendor/symfony/service-contracts/.gitignore new file mode 100644 index 0000000..c49a5d8 --- /dev/null +++ b/vendor/symfony/service-contracts/.gitignore @@ -0,0 +1,3 @@ +vendor/ +composer.lock +phpunit.xml diff --git a/vendor/symfony/service-contracts/Attribute/SubscribedService.php b/vendor/symfony/service-contracts/Attribute/SubscribedService.php index f850b84..10d1bc3 100644 --- a/vendor/symfony/service-contracts/Attribute/SubscribedService.php +++ b/vendor/symfony/service-contracts/Attribute/SubscribedService.php @@ -11,15 +11,10 @@ namespace Symfony\Contracts\Service\Attribute; -use Symfony\Contracts\Service\ServiceMethodsSubscriberTrait; -use Symfony\Contracts\Service\ServiceSubscriberInterface; +use Symfony\Contracts\Service\ServiceSubscriberTrait; /** - * For use as the return value for {@see ServiceSubscriberInterface}. - * - * @example new SubscribedService('http_client', HttpClientInterface::class, false, new Target('githubApi')) - * - * Use with {@see ServiceMethodsSubscriberTrait} to mark a method's return type + * Use with {@see ServiceSubscriberTrait} to mark a method's return type * as a subscribed service. * * @author Kevin Bond @@ -27,21 +22,12 @@ use Symfony\Contracts\Service\ServiceSubscriberInterface; #[\Attribute(\Attribute::TARGET_METHOD)] final class SubscribedService { - /** @var object[] */ - public array $attributes; - /** - * @param string|null $key The key to use for the service - * @param class-string|null $type The service class - * @param bool $nullable Whether the service is optional - * @param object|object[] $attributes One or more dependency injection attributes to use + * @param string|null $key The key to use for the service + * If null, use "ClassName::methodName" */ public function __construct( - public ?string $key = null, - public ?string $type = null, - public bool $nullable = false, - array|object $attributes = [], + public ?string $key = null ) { - $this->attributes = \is_array($attributes) ? $attributes : [$attributes]; } } diff --git a/vendor/symfony/service-contracts/LICENSE b/vendor/symfony/service-contracts/LICENSE index 7536cae..74cdc2d 100644 --- a/vendor/symfony/service-contracts/LICENSE +++ b/vendor/symfony/service-contracts/LICENSE @@ -1,4 +1,4 @@ -Copyright (c) 2018-present Fabien Potencier +Copyright (c) 2018-2022 Fabien Potencier Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/vendor/symfony/service-contracts/README.md b/vendor/symfony/service-contracts/README.md index 42841a5..41e054a 100644 --- a/vendor/symfony/service-contracts/README.md +++ b/vendor/symfony/service-contracts/README.md @@ -3,7 +3,7 @@ Symfony Service Contracts A set of abstractions extracted out of the Symfony components. -Can be used to build on semantics that the Symfony components proved useful and +Can be used to build on semantics that the Symfony components proved useful - and that already have battle tested implementations. See https://github.com/symfony/contracts/blob/main/README.md for more information. diff --git a/vendor/symfony/service-contracts/ResetInterface.php b/vendor/symfony/service-contracts/ResetInterface.php index a4f389b..1af1075 100644 --- a/vendor/symfony/service-contracts/ResetInterface.php +++ b/vendor/symfony/service-contracts/ResetInterface.php @@ -26,8 +26,5 @@ namespace Symfony\Contracts\Service; */ interface ResetInterface { - /** - * @return void - */ public function reset(); } diff --git a/vendor/symfony/service-contracts/ServiceCollectionInterface.php b/vendor/symfony/service-contracts/ServiceCollectionInterface.php deleted file mode 100644 index 2333139..0000000 --- a/vendor/symfony/service-contracts/ServiceCollectionInterface.php +++ /dev/null @@ -1,26 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Contracts\Service; - -/** - * A ServiceProviderInterface that is also countable and iterable. - * - * @author Kevin Bond - * - * @template-covariant T of mixed - * - * @extends ServiceProviderInterface - * @extends \IteratorAggregate - */ -interface ServiceCollectionInterface extends ServiceProviderInterface, \Countable, \IteratorAggregate -{ -} diff --git a/vendor/symfony/service-contracts/ServiceLocatorTrait.php b/vendor/symfony/service-contracts/ServiceLocatorTrait.php index bbe4548..19d3e80 100644 --- a/vendor/symfony/service-contracts/ServiceLocatorTrait.php +++ b/vendor/symfony/service-contracts/ServiceLocatorTrait.php @@ -26,22 +26,29 @@ class_exists(NotFoundExceptionInterface::class); */ trait ServiceLocatorTrait { + private array $factories; private array $loading = []; private array $providedTypes; /** - * @param array $factories + * @param callable[] $factories */ - public function __construct( - private array $factories, - ) { + public function __construct(array $factories) + { + $this->factories = $factories; } + /** + * {@inheritdoc} + */ public function has(string $id): bool { return isset($this->factories[$id]); } + /** + * {@inheritdoc} + */ public function get(string $id): mixed { if (!isset($this->factories[$id])) { @@ -64,6 +71,9 @@ trait ServiceLocatorTrait } } + /** + * {@inheritdoc} + */ public function getProvidedServices(): array { if (!isset($this->providedTypes)) { @@ -90,16 +100,16 @@ trait ServiceLocatorTrait } else { $last = array_pop($alternatives); if ($alternatives) { - $message = \sprintf('only knows about the "%s" and "%s" services.', implode('", "', $alternatives), $last); + $message = sprintf('only knows about the "%s" and "%s" services.', implode('", "', $alternatives), $last); } else { - $message = \sprintf('only knows about the "%s" service.', $last); + $message = sprintf('only knows about the "%s" service.', $last); } } if ($this->loading) { - $message = \sprintf('The service "%s" has a dependency on a non-existent service "%s". This locator %s', end($this->loading), $id, $message); + $message = sprintf('The service "%s" has a dependency on a non-existent service "%s". This locator %s', end($this->loading), $id, $message); } else { - $message = \sprintf('Service "%s" not found: the current service locator %s', $id, $message); + $message = sprintf('Service "%s" not found: the current service locator %s', $id, $message); } return new class($message) extends \InvalidArgumentException implements NotFoundExceptionInterface { @@ -108,7 +118,7 @@ trait ServiceLocatorTrait private function createCircularReferenceException(string $id, array $path): ContainerExceptionInterface { - return new class(\sprintf('Circular reference detected for service "%s", path: "%s".', $id, implode(' -> ', $path))) extends \RuntimeException implements ContainerExceptionInterface { + return new class(sprintf('Circular reference detected for service "%s", path: "%s".', $id, implode(' -> ', $path))) extends \RuntimeException implements ContainerExceptionInterface { }; } } diff --git a/vendor/symfony/service-contracts/ServiceMethodsSubscriberTrait.php b/vendor/symfony/service-contracts/ServiceMethodsSubscriberTrait.php deleted file mode 100644 index 844be89..0000000 --- a/vendor/symfony/service-contracts/ServiceMethodsSubscriberTrait.php +++ /dev/null @@ -1,80 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Contracts\Service; - -use Psr\Container\ContainerInterface; -use Symfony\Contracts\Service\Attribute\Required; -use Symfony\Contracts\Service\Attribute\SubscribedService; - -/** - * Implementation of ServiceSubscriberInterface that determines subscribed services - * from methods that have the #[SubscribedService] attribute. - * - * Service ids are available as "ClassName::methodName" so that the implementation - * of subscriber methods can be just `return $this->container->get(__METHOD__);`. - * - * @author Kevin Bond - */ -trait ServiceMethodsSubscriberTrait -{ - protected ContainerInterface $container; - - public static function getSubscribedServices(): array - { - $services = method_exists(get_parent_class(self::class) ?: '', __FUNCTION__) ? parent::getSubscribedServices() : []; - - foreach ((new \ReflectionClass(self::class))->getMethods() as $method) { - if (self::class !== $method->getDeclaringClass()->name) { - continue; - } - - if (!$attribute = $method->getAttributes(SubscribedService::class)[0] ?? null) { - continue; - } - - if ($method->isStatic() || $method->isAbstract() || $method->isGenerator() || $method->isInternal() || $method->getNumberOfRequiredParameters()) { - throw new \LogicException(\sprintf('Cannot use "%s" on method "%s::%s()" (can only be used on non-static, non-abstract methods with no parameters).', SubscribedService::class, self::class, $method->name)); - } - - if (!$returnType = $method->getReturnType()) { - throw new \LogicException(\sprintf('Cannot use "%s" on methods without a return type in "%s::%s()".', SubscribedService::class, $method->name, self::class)); - } - - /* @var SubscribedService $attribute */ - $attribute = $attribute->newInstance(); - $attribute->key ??= self::class.'::'.$method->name; - $attribute->type ??= $returnType instanceof \ReflectionNamedType ? $returnType->getName() : (string) $returnType; - $attribute->nullable = $attribute->nullable ?: $returnType->allowsNull(); - - if ($attribute->attributes) { - $services[] = $attribute; - } else { - $services[$attribute->key] = ($attribute->nullable ? '?' : '').$attribute->type; - } - } - - return $services; - } - - #[Required] - public function setContainer(ContainerInterface $container): ?ContainerInterface - { - $ret = null; - if (method_exists(get_parent_class(self::class) ?: '', __FUNCTION__)) { - $ret = parent::setContainer($container); - } - - $this->container = $container; - - return $ret; - } -} diff --git a/vendor/symfony/service-contracts/ServiceProviderInterface.php b/vendor/symfony/service-contracts/ServiceProviderInterface.php index 2e71f00..c60ad0b 100644 --- a/vendor/symfony/service-contracts/ServiceProviderInterface.php +++ b/vendor/symfony/service-contracts/ServiceProviderInterface.php @@ -18,18 +18,9 @@ use Psr\Container\ContainerInterface; * * @author Nicolas Grekas * @author Mateusz Sip - * - * @template-covariant T of mixed */ interface ServiceProviderInterface extends ContainerInterface { - /** - * @return T - */ - public function get(string $id): mixed; - - public function has(string $id): bool; - /** * Returns an associative array of service types keyed by the identifiers provided by the current container. * @@ -39,7 +30,7 @@ interface ServiceProviderInterface extends ContainerInterface * * ['foo' => '?'] means the container provides service name "foo" of unspecified type * * ['bar' => '?Bar\Baz'] means the container provides a service "bar" of type Bar\Baz|null * - * @return array The provided service types, keyed by service names + * @return string[] The provided service types, keyed by service names */ public function getProvidedServices(): array; } diff --git a/vendor/symfony/service-contracts/ServiceSubscriberInterface.php b/vendor/symfony/service-contracts/ServiceSubscriberInterface.php index 3da1916..881ab97 100644 --- a/vendor/symfony/service-contracts/ServiceSubscriberInterface.php +++ b/vendor/symfony/service-contracts/ServiceSubscriberInterface.php @@ -11,8 +11,6 @@ namespace Symfony\Contracts\Service; -use Symfony\Contracts\Service\Attribute\SubscribedService; - /** * A ServiceSubscriber exposes its dependencies via the static {@link getSubscribedServices} method. * @@ -31,8 +29,7 @@ use Symfony\Contracts\Service\Attribute\SubscribedService; interface ServiceSubscriberInterface { /** - * Returns an array of service types (or {@see SubscribedService} objects) required - * by such instances, optionally keyed by the service names used internally. + * Returns an array of service types required by such instances, optionally keyed by the service names used internally. * * For mandatory dependencies: * @@ -50,13 +47,7 @@ interface ServiceSubscriberInterface * * ['?Psr\Log\LoggerInterface'] is a shortcut for * * ['Psr\Log\LoggerInterface' => '?Psr\Log\LoggerInterface'] * - * additionally, an array of {@see SubscribedService}'s can be returned: - * - * * [new SubscribedService('logger', Psr\Log\LoggerInterface::class)] - * * [new SubscribedService(type: Psr\Log\LoggerInterface::class, nullable: true)] - * * [new SubscribedService('http_client', HttpClientInterface::class, attributes: new Target('githubApi'))] - * - * @return string[]|SubscribedService[] The required service types, optionally keyed by service names + * @return string[] The required service types, optionally keyed by service names */ public static function getSubscribedServices(): array; } diff --git a/vendor/symfony/service-contracts/ServiceSubscriberTrait.php b/vendor/symfony/service-contracts/ServiceSubscriberTrait.php index ed4cec0..ee9d9d9 100644 --- a/vendor/symfony/service-contracts/ServiceSubscriberTrait.php +++ b/vendor/symfony/service-contracts/ServiceSubscriberTrait.php @@ -12,26 +12,22 @@ namespace Symfony\Contracts\Service; use Psr\Container\ContainerInterface; -use Symfony\Contracts\Service\Attribute\Required; use Symfony\Contracts\Service\Attribute\SubscribedService; -trigger_deprecation('symfony/contracts', 'v3.5', '"%s" is deprecated, use "ServiceMethodsSubscriberTrait" instead.', ServiceSubscriberTrait::class); - /** - * Implementation of ServiceSubscriberInterface that determines subscribed services - * from methods that have the #[SubscribedService] attribute. - * - * Service ids are available as "ClassName::methodName" so that the implementation - * of subscriber methods can be just `return $this->container->get(__METHOD__);`. - * - * @property ContainerInterface $container + * Implementation of ServiceSubscriberInterface that determines subscribed services from + * method return types. Service ids are available as "ClassName::methodName". * * @author Kevin Bond - * - * @deprecated since symfony/contracts v3.5, use ServiceMethodsSubscriberTrait instead */ trait ServiceSubscriberTrait { + /** @var ContainerInterface */ + protected $container; + + /** + * {@inheritdoc} + */ public static function getSubscribedServices(): array { $services = method_exists(get_parent_class(self::class) ?: '', __FUNCTION__) ? parent::getSubscribedServices() : []; @@ -46,39 +42,36 @@ trait ServiceSubscriberTrait } if ($method->isStatic() || $method->isAbstract() || $method->isGenerator() || $method->isInternal() || $method->getNumberOfRequiredParameters()) { - throw new \LogicException(\sprintf('Cannot use "%s" on method "%s::%s()" (can only be used on non-static, non-abstract methods with no parameters).', SubscribedService::class, self::class, $method->name)); + throw new \LogicException(sprintf('Cannot use "%s" on method "%s::%s()" (can only be used on non-static, non-abstract methods with no parameters).', SubscribedService::class, self::class, $method->name)); } if (!$returnType = $method->getReturnType()) { - throw new \LogicException(\sprintf('Cannot use "%s" on methods without a return type in "%s::%s()".', SubscribedService::class, $method->name, self::class)); + throw new \LogicException(sprintf('Cannot use "%s" on methods without a return type in "%s::%s()".', SubscribedService::class, $method->name, self::class)); } - /* @var SubscribedService $attribute */ - $attribute = $attribute->newInstance(); - $attribute->key ??= self::class.'::'.$method->name; - $attribute->type ??= $returnType instanceof \ReflectionNamedType ? $returnType->getName() : (string) $returnType; - $attribute->nullable = $attribute->nullable ?: $returnType->allowsNull(); + $serviceId = $returnType instanceof \ReflectionNamedType ? $returnType->getName() : (string) $returnType; - if ($attribute->attributes) { - $services[] = $attribute; - } else { - $services[$attribute->key] = ($attribute->nullable ? '?' : '').$attribute->type; + if ($returnType->allowsNull()) { + $serviceId = '?'.$serviceId; } + + $services[$attribute->newInstance()->key ?? self::class.'::'.$method->name] = $serviceId; } return $services; } - #[Required] + /** + * @required + */ public function setContainer(ContainerInterface $container): ?ContainerInterface { - $ret = null; - if (method_exists(get_parent_class(self::class) ?: '', __FUNCTION__)) { - $ret = parent::setContainer($container); - } - $this->container = $container; - return $ret; + if (method_exists(get_parent_class(self::class) ?: '', __FUNCTION__)) { + return parent::setContainer($container); + } + + return null; } } diff --git a/vendor/symfony/service-contracts/Test/ServiceLocatorTest.php b/vendor/symfony/service-contracts/Test/ServiceLocatorTest.php index 07d12b4..88f6a06 100644 --- a/vendor/symfony/service-contracts/Test/ServiceLocatorTest.php +++ b/vendor/symfony/service-contracts/Test/ServiceLocatorTest.php @@ -11,13 +11,82 @@ namespace Symfony\Contracts\Service\Test; -class_alias(ServiceLocatorTestCase::class, ServiceLocatorTest::class); +use PHPUnit\Framework\TestCase; +use Psr\Container\ContainerInterface; +use Symfony\Contracts\Service\ServiceLocatorTrait; -if (false) { - /** - * @deprecated since PHPUnit 9.6 - */ - class ServiceLocatorTest +abstract class ServiceLocatorTest extends TestCase +{ + protected function getServiceLocator(array $factories): ContainerInterface { + return new class($factories) implements ContainerInterface { + use ServiceLocatorTrait; + }; + } + + public function testHas() + { + $locator = $this->getServiceLocator([ + 'foo' => function () { return 'bar'; }, + 'bar' => function () { return 'baz'; }, + function () { return 'dummy'; }, + ]); + + $this->assertTrue($locator->has('foo')); + $this->assertTrue($locator->has('bar')); + $this->assertFalse($locator->has('dummy')); + } + + public function testGet() + { + $locator = $this->getServiceLocator([ + 'foo' => function () { return 'bar'; }, + 'bar' => function () { return 'baz'; }, + ]); + + $this->assertSame('bar', $locator->get('foo')); + $this->assertSame('baz', $locator->get('bar')); + } + + public function testGetDoesNotMemoize() + { + $i = 0; + $locator = $this->getServiceLocator([ + 'foo' => function () use (&$i) { + ++$i; + + return 'bar'; + }, + ]); + + $this->assertSame('bar', $locator->get('foo')); + $this->assertSame('bar', $locator->get('foo')); + $this->assertSame(2, $i); + } + + public function testThrowsOnUndefinedInternalService() + { + if (!$this->getExpectedException()) { + $this->expectException(\Psr\Container\NotFoundExceptionInterface::class); + $this->expectExceptionMessage('The service "foo" has a dependency on a non-existent service "bar". This locator only knows about the "foo" service.'); + } + $locator = $this->getServiceLocator([ + 'foo' => function () use (&$locator) { return $locator->get('bar'); }, + ]); + + $locator->get('foo'); + } + + public function testThrowsOnCircularReference() + { + $this->expectException(\Psr\Container\ContainerExceptionInterface::class); + $this->expectExceptionMessage('Circular reference detected for service "bar", path: "bar -> baz -> bar".'); + $locator = $this->getServiceLocator([ + 'foo' => function () use (&$locator) { return $locator->get('bar'); }, + 'bar' => function () use (&$locator) { return $locator->get('baz'); }, + 'baz' => function () use (&$locator) { return $locator->get('bar'); }, + ]); + + $locator->get('foo'); } } diff --git a/vendor/symfony/service-contracts/Test/ServiceLocatorTestCase.php b/vendor/symfony/service-contracts/Test/ServiceLocatorTestCase.php deleted file mode 100644 index fdd5b27..0000000 --- a/vendor/symfony/service-contracts/Test/ServiceLocatorTestCase.php +++ /dev/null @@ -1,97 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Contracts\Service\Test; - -use PHPUnit\Framework\TestCase; -use Psr\Container\ContainerExceptionInterface; -use Psr\Container\ContainerInterface; -use Psr\Container\NotFoundExceptionInterface; -use Symfony\Contracts\Service\ServiceLocatorTrait; - -abstract class ServiceLocatorTestCase extends TestCase -{ - /** - * @param array $factories - */ - protected function getServiceLocator(array $factories): ContainerInterface - { - return new class($factories) implements ContainerInterface { - use ServiceLocatorTrait; - }; - } - - public function testHas() - { - $locator = $this->getServiceLocator([ - 'foo' => fn () => 'bar', - 'bar' => fn () => 'baz', - fn () => 'dummy', - ]); - - $this->assertTrue($locator->has('foo')); - $this->assertTrue($locator->has('bar')); - $this->assertFalse($locator->has('dummy')); - } - - public function testGet() - { - $locator = $this->getServiceLocator([ - 'foo' => fn () => 'bar', - 'bar' => fn () => 'baz', - ]); - - $this->assertSame('bar', $locator->get('foo')); - $this->assertSame('baz', $locator->get('bar')); - } - - public function testGetDoesNotMemoize() - { - $i = 0; - $locator = $this->getServiceLocator([ - 'foo' => function () use (&$i) { - ++$i; - - return 'bar'; - }, - ]); - - $this->assertSame('bar', $locator->get('foo')); - $this->assertSame('bar', $locator->get('foo')); - $this->assertSame(2, $i); - } - - public function testThrowsOnUndefinedInternalService() - { - $locator = $this->getServiceLocator([ - 'foo' => function () use (&$locator) { return $locator->get('bar'); }, - ]); - - $this->expectException(NotFoundExceptionInterface::class); - $this->expectExceptionMessage('The service "foo" has a dependency on a non-existent service "bar". This locator only knows about the "foo" service.'); - - $locator->get('foo'); - } - - public function testThrowsOnCircularReference() - { - $locator = $this->getServiceLocator([ - 'foo' => function () use (&$locator) { return $locator->get('bar'); }, - 'bar' => function () use (&$locator) { return $locator->get('baz'); }, - 'baz' => function () use (&$locator) { return $locator->get('bar'); }, - ]); - - $this->expectException(ContainerExceptionInterface::class); - $this->expectExceptionMessage('Circular reference detected for service "bar", path: "bar -> baz -> bar".'); - - $locator->get('foo'); - } -} diff --git a/vendor/symfony/service-contracts/composer.json b/vendor/symfony/service-contracts/composer.json index bc2e99a..d3b047f 100644 --- a/vendor/symfony/service-contracts/composer.json +++ b/vendor/symfony/service-contracts/composer.json @@ -16,23 +16,22 @@ } ], "require": { - "php": ">=8.1", - "psr/container": "^1.1|^2.0", - "symfony/deprecation-contracts": "^2.5|^3" + "php": ">=8.0.2", + "psr/container": "^2.0" }, "conflict": { "ext-psr": "<1.1|>=2" }, + "suggest": { + "symfony/service-implementation": "" + }, "autoload": { - "psr-4": { "Symfony\\Contracts\\Service\\": "" }, - "exclude-from-classmap": [ - "/Test/" - ] + "psr-4": { "Symfony\\Contracts\\Service\\": "" } }, "minimum-stability": "dev", "extra": { "branch-alias": { - "dev-main": "3.6-dev" + "dev-main": "3.0-dev" }, "thanks": { "name": "symfony/contracts", diff --git a/vendor/symfony/var-exporter/CHANGELOG.md b/vendor/symfony/var-exporter/CHANGELOG.md index fdca002..3406c30 100644 --- a/vendor/symfony/var-exporter/CHANGELOG.md +++ b/vendor/symfony/var-exporter/CHANGELOG.md @@ -1,19 +1,6 @@ CHANGELOG ========= -6.4 ---- - - * Deprecate per-property lazy-initializers - -6.2 ---- - - * Add support for lazy ghost objects and virtual proxies - * Add `Hydrator::hydrate()` - * Preserve PHP references also when using `Hydrator::hydrate()` or `Instantiator::instantiate()` - * Add support for hydrating from native (array) casts - 5.1.0 ----- diff --git a/vendor/symfony/var-exporter/Exception/ClassNotFoundException.php b/vendor/symfony/var-exporter/Exception/ClassNotFoundException.php index 2acecc4..4cebe44 100644 --- a/vendor/symfony/var-exporter/Exception/ClassNotFoundException.php +++ b/vendor/symfony/var-exporter/Exception/ClassNotFoundException.php @@ -13,8 +13,8 @@ namespace Symfony\Component\VarExporter\Exception; class ClassNotFoundException extends \Exception implements ExceptionInterface { - public function __construct(string $class, ?\Throwable $previous = null) + public function __construct(string $class, \Throwable $previous = null) { - parent::__construct(\sprintf('Class "%s" not found.', $class), 0, $previous); + parent::__construct(sprintf('Class "%s" not found.', $class), 0, $previous); } } diff --git a/vendor/symfony/var-exporter/Exception/LogicException.php b/vendor/symfony/var-exporter/Exception/LogicException.php deleted file mode 100644 index 619d055..0000000 --- a/vendor/symfony/var-exporter/Exception/LogicException.php +++ /dev/null @@ -1,16 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\VarExporter\Exception; - -class LogicException extends \LogicException implements ExceptionInterface -{ -} diff --git a/vendor/symfony/var-exporter/Exception/NotInstantiableTypeException.php b/vendor/symfony/var-exporter/Exception/NotInstantiableTypeException.php index bc2bcaa..771ee61 100644 --- a/vendor/symfony/var-exporter/Exception/NotInstantiableTypeException.php +++ b/vendor/symfony/var-exporter/Exception/NotInstantiableTypeException.php @@ -13,8 +13,8 @@ namespace Symfony\Component\VarExporter\Exception; class NotInstantiableTypeException extends \Exception implements ExceptionInterface { - public function __construct(string $type, ?\Throwable $previous = null) + public function __construct(string $type, \Throwable $previous = null) { - parent::__construct(\sprintf('Type "%s" is not instantiable.', $type), 0, $previous); + parent::__construct(sprintf('Type "%s" is not instantiable.', $type), 0, $previous); } } diff --git a/vendor/symfony/var-exporter/Hydrator.php b/vendor/symfony/var-exporter/Hydrator.php deleted file mode 100644 index b718921..0000000 --- a/vendor/symfony/var-exporter/Hydrator.php +++ /dev/null @@ -1,78 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\VarExporter; - -use Symfony\Component\VarExporter\Internal\Hydrator as InternalHydrator; - -/** - * Utility class to hydrate the properties of an object. - * - * @author Nicolas Grekas - */ -final class Hydrator -{ - /** - * Sets the properties of an object, including private and protected ones. - * - * For example: - * - * // Sets the public or protected $object->propertyName property - * Hydrator::hydrate($object, ['propertyName' => $propertyValue]); - * - * // Sets a private property defined on its parent Bar class: - * Hydrator::hydrate($object, ["\0Bar\0privateBarProperty" => $propertyValue]); - * - * // Alternative way to set the private $object->privateBarProperty property - * Hydrator::hydrate($object, [], [ - * Bar::class => ['privateBarProperty' => $propertyValue], - * ]); - * - * Instances of ArrayObject, ArrayIterator and SplObjectStorage can be hydrated - * by using the special "\0" property name to define their internal value: - * - * // Hydrates an SplObjectStorage where $info1 is attached to $obj1, etc. - * Hydrator::hydrate($object, ["\0" => [$obj1, $info1, $obj2, $info2...]]); - * - * // Hydrates an ArrayObject populated with $inputArray - * Hydrator::hydrate($object, ["\0" => [$inputArray]]); - * - * @template T of object - * - * @param T $instance The object to hydrate - * @param array $properties The properties to set on the instance - * @param array> $scopedProperties The properties to set on the instance, - * keyed by their declaring class - * - * @return T - */ - public static function hydrate(object $instance, array $properties = [], array $scopedProperties = []): object - { - if ($properties) { - $class = $instance::class; - $propertyScopes = InternalHydrator::$propertyScopes[$class] ??= InternalHydrator::getPropertyScopes($class); - - foreach ($properties as $name => &$value) { - [$scope, $name, $writeScope] = $propertyScopes[$name] ?? [$class, $name, $class]; - $scopedProperties[$writeScope ?? $scope][$name] = &$value; - } - unset($value); - } - - foreach ($scopedProperties as $scope => $properties) { - if ($properties) { - (InternalHydrator::$simpleHydrators[$scope] ??= InternalHydrator::getSimpleHydrator($scope))($properties, $instance); - } - } - - return $instance; - } -} diff --git a/vendor/symfony/var-exporter/Instantiator.php b/vendor/symfony/var-exporter/Instantiator.php index 10200c0..38fce27 100644 --- a/vendor/symfony/var-exporter/Instantiator.php +++ b/vendor/symfony/var-exporter/Instantiator.php @@ -13,6 +13,7 @@ namespace Symfony\Component\VarExporter; use Symfony\Component\VarExporter\Exception\ExceptionInterface; use Symfony\Component\VarExporter\Exception\NotInstantiableTypeException; +use Symfony\Component\VarExporter\Internal\Hydrator; use Symfony\Component\VarExporter\Internal\Registry; /** @@ -25,35 +26,67 @@ final class Instantiator /** * Creates an object and sets its properties without calling its constructor nor any other methods. * - * @see Hydrator::hydrate() for examples + * For example: * - * @template T of object + * // creates an empty instance of Foo + * Instantiator::instantiate(Foo::class); * - * @param class-string $class The class of the instance to create - * @param array $properties The properties to set on the instance - * @param array> $scopedProperties The properties to set on the instance, - * keyed by their declaring class + * // creates a Foo instance and sets one of its properties + * Instantiator::instantiate(Foo::class, ['propertyName' => $propertyValue]); * - * @return T + * // creates a Foo instance and sets a private property defined on its parent Bar class + * Instantiator::instantiate(Foo::class, [], [ + * Bar::class => ['privateBarProperty' => $propertyValue], + * ]); + * + * Instances of ArrayObject, ArrayIterator and SplObjectStorage can be created + * by using the special "\0" property name to define their internal value: + * + * // creates an SplObjectStorage where $info1 is attached to $obj1, etc. + * Instantiator::instantiate(SplObjectStorage::class, ["\0" => [$obj1, $info1, $obj2, $info2...]]); + * + * // creates an ArrayObject populated with $inputArray + * Instantiator::instantiate(ArrayObject::class, ["\0" => [$inputArray]]); + * + * @param string $class The class of the instance to create + * @param array $properties The properties to set on the instance + * @param array $privateProperties The private properties to set on the instance, + * keyed by their declaring class * * @throws ExceptionInterface When the instance cannot be created */ - public static function instantiate(string $class, array $properties = [], array $scopedProperties = []): object + public static function instantiate(string $class, array $properties = [], array $privateProperties = []): object { - $reflector = Registry::$reflectors[$class] ??= Registry::getClassReflector($class); + $reflector = Registry::$reflectors[$class] ?? Registry::getClassReflector($class); if (Registry::$cloneable[$class]) { - $instance = clone Registry::$prototypes[$class]; + $wrappedInstance = [clone Registry::$prototypes[$class]]; } elseif (Registry::$instantiableWithoutConstructor[$class]) { - $instance = $reflector->newInstanceWithoutConstructor(); + $wrappedInstance = [$reflector->newInstanceWithoutConstructor()]; } elseif (null === Registry::$prototypes[$class]) { throw new NotInstantiableTypeException($class); } elseif ($reflector->implementsInterface('Serializable') && !method_exists($class, '__unserialize')) { - $instance = unserialize('C:'.\strlen($class).':"'.$class.'":0:{}'); + $wrappedInstance = [unserialize('C:'.\strlen($class).':"'.$class.'":0:{}')]; } else { - $instance = unserialize('O:'.\strlen($class).':"'.$class.'":0:{}'); + $wrappedInstance = [unserialize('O:'.\strlen($class).':"'.$class.'":0:{}')]; } - return $properties || $scopedProperties ? Hydrator::hydrate($instance, $properties, $scopedProperties) : $instance; + if ($properties) { + $privateProperties[$class] = isset($privateProperties[$class]) ? $properties + $privateProperties[$class] : $properties; + } + + foreach ($privateProperties as $class => $properties) { + if (!$properties) { + continue; + } + foreach ($properties as $name => $value) { + // because they're also used for "unserialization", hydrators + // deal with array of instances, so we need to wrap values + $properties[$name] = [$value]; + } + (Hydrator::$hydrators[$class] ?? Hydrator::getHydrator($class))($properties, $wrappedInstance); + } + + return $wrappedInstance[0]; } } diff --git a/vendor/symfony/var-exporter/Internal/Exporter.php b/vendor/symfony/var-exporter/Internal/Exporter.php index 13141a4..6ee3ee7 100644 --- a/vendor/symfony/var-exporter/Internal/Exporter.php +++ b/vendor/symfony/var-exporter/Internal/Exporter.php @@ -31,11 +31,9 @@ class Exporter * @param int &$objectsCount * @param bool &$valuesAreStatic * - * @return array - * * @throws NotInstantiableTypeException When a value cannot be serialized */ - public static function prepare($values, $objectsPool, &$refsPool, &$objectsCount, &$valuesAreStatic) + public static function prepare($values, $objectsPool, &$refsPool, &$objectsCount, &$valuesAreStatic): array { $refs = $values; foreach ($values as $k => $value) { @@ -73,26 +71,26 @@ class Exporter goto handle_value; } - $class = $value::class; - $reflector = Registry::$reflectors[$class] ??= Registry::getClassReflector($class); + $class = \get_class($value); + $reflector = Registry::$reflectors[$class] ?? Registry::getClassReflector($class); + + if ($reflector->hasMethod('__serialize')) { + if (!$reflector->getMethod('__serialize')->isPublic()) { + throw new \Error(sprintf('Call to %s method "%s::__serialize()".', $reflector->getMethod('__serialize')->isProtected() ? 'protected' : 'private', $class)); + } + + if (!\is_array($properties = $value->__serialize())) { + throw new \TypeError($class.'::__serialize() must return an array'); + } + + goto prepare_value; + } + $properties = []; $sleep = null; $proto = Registry::$prototypes[$class]; - if ($reflector->hasMethod('__serialize')) { - if (!$reflector->getMethod('__serialize')->isPublic()) { - throw new \Error(\sprintf('Call to %s method "%s::__serialize()".', $reflector->getMethod('__serialize')->isProtected() ? 'protected' : 'private', $class)); - } - - if (!\is_array($arrayValue = $value->__serialize())) { - throw new \TypeError($class.'::__serialize() must return an array'); - } - - if ($reflector->hasMethod('__unserialize')) { - $properties = $arrayValue; - goto prepare_value; - } - } elseif (($value instanceof \ArrayIterator || $value instanceof \ArrayObject) && null !== $proto) { + if (($value instanceof \ArrayIterator || $value instanceof \ArrayObject) && null !== $proto) { // ArrayIterator and ArrayObject need special care because their "flags" // option changes the behavior of the (array) casting operator. [$arrayValue, $properties] = self::getArrayObjectProperties($value, $proto); @@ -108,7 +106,10 @@ class Exporter } $properties = ['SplObjectStorage' => ["\0" => $properties]]; $arrayValue = (array) $value; - } elseif ($value instanceof \Serializable || $value instanceof \__PHP_Incomplete_Class || \PHP_VERSION_ID < 80200 && $value instanceof \DatePeriod) { + } elseif ($value instanceof \Serializable + || $value instanceof \__PHP_Incomplete_Class + || \PHP_VERSION_ID < 80200 && $value instanceof \DatePeriod + ) { ++$objectsCount; $objectsPool[$value] = [$id = \count($objectsPool), serialize($value), [], 0]; $value = new Reference($id); @@ -132,40 +133,36 @@ class Exporter $i = 0; $n = (string) $name; if ('' === $n || "\0" !== $n[0]) { - $parent = $reflector; - do { - $p = $parent->hasProperty($n) ? $parent->getProperty($n) : null; - } while (!$p && $parent = $parent->getParentClass()); - - $c = $p && (!$p->isPublic() || (\PHP_VERSION_ID >= 80400 ? $p->isProtectedSet() || $p->isPrivateSet() : $p->isReadOnly())) ? $p->class : 'stdClass'; + $c = \PHP_VERSION_ID >= 80100 && $reflector->hasProperty($n) && ($p = $reflector->getProperty($n))->isReadOnly() ? $p->class : 'stdClass'; } elseif ('*' === $n[1]) { $n = substr($n, 3); $c = $reflector->getProperty($n)->class; + if ('Error' === $c) { + $c = 'TypeError'; + } elseif ('Exception' === $c) { + $c = 'ErrorException'; + } } else { $i = strpos($n, "\0", 2); $c = substr($n, 1, $i - 1); $n = substr($n, 1 + $i); } if (null !== $sleep) { - if (!isset($sleep[$name]) && (!isset($sleep[$n]) || ($i && $c !== $class))) { + if (!isset($sleep[$n]) || ($i && $c !== $class)) { unset($arrayValue[$name]); continue; } - unset($sleep[$name], $sleep[$n]); + $sleep[$n] = false; } - if ("\x00Error\x00trace" === $name || "\x00Exception\x00trace" === $name) { + if (!\array_key_exists($name, $proto) || $proto[$name] !== $v || "\x00Error\x00trace" === $name || "\x00Exception\x00trace" === $name) { $properties[$c][$n] = $v; - } elseif (!\array_key_exists($name, $proto) || $proto[$name] !== $v) { - $properties[match ($c) { - 'Error' => 'TypeError', - 'Exception' => 'ErrorException', - default => $c, - }][$n] = $v; } } if ($sleep) { foreach ($sleep as $n => $v) { - trigger_error(\sprintf('serialize(): "%s" returned as member variable from __sleep() but does not exist', $n), \E_USER_NOTICE); + if (false !== $v) { + trigger_error(sprintf('serialize(): "%s" returned as member variable from __sleep() but does not exist', $n), \E_USER_NOTICE); + } } } if (method_exists($class, '__unserialize')) { @@ -192,7 +189,7 @@ class Exporter return $values; } - public static function export($value, $indent = '') + public static function export($value, string $indent = '') { switch (true) { case \is_int($value) || \is_float($value): return var_export($value, true); @@ -218,10 +215,10 @@ class Exporter $subIndent = $indent.' '; if (\is_string($value)) { - $code = \sprintf("'%s'", addcslashes($value, "'\\")); + $code = sprintf("'%s'", addcslashes($value, "'\\")); $code = preg_replace_callback("/((?:[\\0\\r\\n]|\u{202A}|\u{202B}|\u{202D}|\u{202E}|\u{2066}|\u{2067}|\u{2068}|\u{202C}|\u{2069})++)(.)/", function ($m) use ($subIndent) { - $m[1] = \sprintf('\'."%s".\'', str_replace( + $m[1] = sprintf('\'."%s".\'', str_replace( ["\0", "\r", "\n", "\u{202A}", "\u{202B}", "\u{202D}", "\u{202E}", "\u{2066}", "\u{2067}", "\u{2068}", "\u{202C}", "\u{2069}", '\n\\'], ['\0', '\r', '\n', '\u{202A}', '\u{202B}', '\u{202D}', '\u{202E}', '\u{2066}', '\u{2067}', '\u{2068}', '\u{202C}', '\u{2069}', '\n"'."\n".$subIndent.'."\\'], $m[1] @@ -231,7 +228,7 @@ class Exporter return substr($m[1], 0, -2); } - if (str_ends_with($m[1], 'n".\'')) { + if ('n".\'' === substr($m[1], -4)) { return substr_replace($m[1], "\n".$subIndent.".'".$m[2], -2); } @@ -279,7 +276,7 @@ class Exporter return self::exportHydrator($value, $indent, $subIndent); } - throw new \UnexpectedValueException(\sprintf('Cannot export value of type "%s".', get_debug_type($value))); + throw new \UnexpectedValueException(sprintf('Cannot export value of type "%s".', get_debug_type($value))); } private static function exportRegistry(Registry $value, string $indent, string $subIndent): string @@ -369,7 +366,7 @@ class Exporter self::export($value->wakeups, $subIndent), ]; - return '\\'.$value::class."::hydrate(\n".$subIndent.implode(",\n".$subIndent, $code)."\n".$indent.')'; + return '\\'.\get_class($value)."::hydrate(\n".$subIndent.implode(",\n".$subIndent, $code)."\n".$indent.')'; } /** @@ -379,7 +376,7 @@ class Exporter private static function getArrayObjectProperties($value, $proto): array { $reflector = $value instanceof \ArrayIterator ? 'ArrayIterator' : 'ArrayObject'; - $reflector = Registry::$reflectors[$reflector] ??= Registry::getClassReflector($reflector); + $reflector = Registry::$reflectors[$reflector] ?? Registry::getClassReflector($reflector); $properties = [ $arrayValue = (array) $value, diff --git a/vendor/symfony/var-exporter/Internal/Hydrator.php b/vendor/symfony/var-exporter/Internal/Hydrator.php index ebbceed..5ed6bdc 100644 --- a/vendor/symfony/var-exporter/Internal/Hydrator.php +++ b/vendor/symfony/var-exporter/Internal/Hydrator.php @@ -20,12 +20,7 @@ use Symfony\Component\VarExporter\Exception\ClassNotFoundException; */ class Hydrator { - public const PROPERTY_HAS_HOOKS = 1; - public const PROPERTY_NOT_BY_REF = 2; - - public static array $hydrators = []; - public static array $simpleHydrators = []; - public static array $propertyScopes = []; + public static $hydrators = []; public $registry; public $values; @@ -45,7 +40,7 @@ class Hydrator public static function hydrate($objects, $values, $properties, $value, $wakeups) { foreach ($properties as $class => $vars) { - (self::$hydrators[$class] ??= self::getHydrator($class))($vars, $objects); + (self::$hydrators[$class] ?? self::getHydrator($class))($vars, $objects); } foreach ($wakeups as $k => $v) { if (\is_array($v)) { @@ -60,33 +55,31 @@ class Hydrator public static function getHydrator($class) { - $baseHydrator = self::$hydrators['stdClass'] ??= static function ($properties, $objects) { - foreach ($properties as $name => $values) { - foreach ($values as $i => $v) { - $objects[$i]->$name = $v; - } - } - }; - switch ($class) { case 'stdClass': - return $baseHydrator; + return self::$hydrators[$class] = static function ($properties, $objects) { + foreach ($properties as $name => $values) { + foreach ($values as $i => $v) { + $objects[$i]->$name = $v; + } + } + }; case 'ErrorException': - return $baseHydrator->bindTo(null, new class extends \ErrorException { + return self::$hydrators[$class] = (self::$hydrators['stdClass'] ?? self::getHydrator('stdClass'))->bindTo(null, new class() extends \ErrorException { }); case 'TypeError': - return $baseHydrator->bindTo(null, new class extends \Error { + return self::$hydrators[$class] = (self::$hydrators['stdClass'] ?? self::getHydrator('stdClass'))->bindTo(null, new class() extends \Error { }); case 'SplObjectStorage': - return static function ($properties, $objects) { + return self::$hydrators[$class] = static function ($properties, $objects) { foreach ($properties as $name => $values) { if ("\0" === $name) { foreach ($values as $i => $v) { for ($j = 0; $j < \count($v); ++$j) { - $objects[$i][$v[$j]] = $v[++$j]; + $objects[$i]->attach($v[$j], $v[++$j]); } } continue; @@ -106,9 +99,9 @@ class Hydrator switch ($class) { case 'ArrayIterator': case 'ArrayObject': - $constructor = $classReflector->getConstructor()->invokeArgs(...); + $constructor = \Closure::fromCallable([$classReflector->getConstructor(), 'invokeArgs']); - return static function ($properties, $objects) use ($constructor) { + return self::$hydrators[$class] = static function ($properties, $objects) use ($constructor) { foreach ($properties as $name => $values) { if ("\0" !== $name) { foreach ($values as $i => $v) { @@ -123,25 +116,26 @@ class Hydrator } if (!$classReflector->isInternal()) { - return $baseHydrator->bindTo(null, $class); + return self::$hydrators[$class] = (self::$hydrators['stdClass'] ?? self::getHydrator('stdClass'))->bindTo(null, $class); } if ($classReflector->name !== $class) { - return self::$hydrators[$classReflector->name] ??= self::getHydrator($classReflector->name); + return self::$hydrators[$classReflector->name] ?? self::getHydrator($classReflector->name); } $propertySetters = []; foreach ($classReflector->getProperties() as $propertyReflector) { if (!$propertyReflector->isStatic()) { - $propertySetters[$propertyReflector->name] = $propertyReflector->setValue(...); + $propertyReflector->setAccessible(true); + $propertySetters[$propertyReflector->name] = \Closure::fromCallable([$propertyReflector, 'setValue']); } } if (!$propertySetters) { - return $baseHydrator; + return self::$hydrators[$class] = self::$hydrators['stdClass'] ?? self::getHydrator('stdClass'); } - return static function ($properties, $objects) use ($propertySetters) { + return self::$hydrators[$class] = static function ($properties, $objects) use ($propertySetters) { foreach ($properties as $name => $values) { if ($setValue = $propertySetters[$name] ?? null) { foreach ($values as $i => $v) { @@ -155,175 +149,4 @@ class Hydrator } }; } - - public static function getSimpleHydrator($class) - { - $baseHydrator = self::$simpleHydrators['stdClass'] ??= (function ($properties, $object) { - $notByRef = (array) $this; - - foreach ($properties as $name => &$value) { - if (!$noRef = $notByRef[$name] ?? false) { - $object->$name = $value; - $object->$name = &$value; - } elseif (true !== $noRef) { - $noRef($object, $value); - } else { - $object->$name = $value; - } - } - })->bindTo(new \stdClass()); - - switch ($class) { - case 'stdClass': - return $baseHydrator; - - case 'ErrorException': - return $baseHydrator->bindTo(new \stdClass(), new class extends \ErrorException { - }); - - case 'TypeError': - return $baseHydrator->bindTo(new \stdClass(), new class extends \Error { - }); - - case 'SplObjectStorage': - return static function ($properties, $object) { - foreach ($properties as $name => &$value) { - if ("\0" !== $name) { - $object->$name = $value; - $object->$name = &$value; - continue; - } - for ($i = 0; $i < \count($value); ++$i) { - $object[$value[$i]] = $value[++$i]; - } - } - }; - } - - if (!class_exists($class) && !interface_exists($class, false) && !trait_exists($class, false)) { - throw new ClassNotFoundException($class); - } - $classReflector = new \ReflectionClass($class); - - switch ($class) { - case 'ArrayIterator': - case 'ArrayObject': - $constructor = $classReflector->getConstructor()->invokeArgs(...); - - return static function ($properties, $object) use ($constructor) { - foreach ($properties as $name => &$value) { - if ("\0" === $name) { - $constructor($object, $value); - } else { - $object->$name = $value; - $object->$name = &$value; - } - } - }; - } - - if (!$classReflector->isInternal()) { - $notByRef = new \stdClass(); - foreach ($classReflector->getProperties() as $propertyReflector) { - if ($propertyReflector->isStatic()) { - continue; - } - if (\PHP_VERSION_ID >= 80400 && !$propertyReflector->isAbstract() && $propertyReflector->getHooks()) { - $notByRef->{$propertyReflector->name} = $propertyReflector->setRawValue(...); - } elseif ($propertyReflector->isReadOnly()) { - $notByRef->{$propertyReflector->name} = true; - } - } - - return $baseHydrator->bindTo($notByRef, $class); - } - - if ($classReflector->name !== $class) { - return self::$simpleHydrators[$classReflector->name] ??= self::getSimpleHydrator($classReflector->name); - } - - $propertySetters = []; - foreach ($classReflector->getProperties() as $propertyReflector) { - if (!$propertyReflector->isStatic()) { - $propertySetters[$propertyReflector->name] = $propertyReflector->setValue(...); - } - } - - if (!$propertySetters) { - return $baseHydrator; - } - - return static function ($properties, $object) use ($propertySetters) { - foreach ($properties as $name => &$value) { - if ($setValue = $propertySetters[$name] ?? null) { - $setValue($object, $value); - } else { - $object->$name = $value; - $object->$name = &$value; - } - } - }; - } - - /** - * @return array - */ - public static function getPropertyScopes($class) - { - $propertyScopes = []; - $r = new \ReflectionClass($class); - - foreach ($r->getProperties() as $property) { - $flags = $property->getModifiers(); - - if (\ReflectionProperty::IS_STATIC & $flags) { - continue; - } - $name = $property->name; - $access = ($flags << 2) | ($flags & \ReflectionProperty::IS_READONLY ? self::PROPERTY_NOT_BY_REF : 0); - - if (\PHP_VERSION_ID >= 80400 && !$property->isAbstract() && $h = $property->getHooks()) { - $access |= self::PROPERTY_HAS_HOOKS | (isset($h['get']) && !$h['get']->returnsReference() ? self::PROPERTY_NOT_BY_REF : 0); - } - - if (\ReflectionProperty::IS_PRIVATE & $flags) { - $propertyScopes["\0$class\0$name"] = $propertyScopes[$name] = [$class, $name, null, $access, $property]; - - continue; - } - - $propertyScopes[$name] = [$class, $name, null, $access, $property]; - - if ($flags & (\PHP_VERSION_ID >= 80400 ? \ReflectionProperty::IS_PRIVATE_SET : \ReflectionProperty::IS_READONLY)) { - $propertyScopes[$name][2] = $property->class; - } - - if (\ReflectionProperty::IS_PROTECTED & $flags) { - $propertyScopes["\0*\0$name"] = $propertyScopes[$name]; - } - } - - while ($r = $r->getParentClass()) { - $class = $r->name; - - foreach ($r->getProperties(\ReflectionProperty::IS_PRIVATE) as $property) { - $flags = $property->getModifiers(); - - if (\ReflectionProperty::IS_STATIC & $flags) { - continue; - } - $name = $property->name; - $access = ($flags << 2) | ($flags & \ReflectionProperty::IS_READONLY ? self::PROPERTY_NOT_BY_REF : 0); - - if (\PHP_VERSION_ID >= 80400 && $h = $property->getHooks()) { - $access |= self::PROPERTY_HAS_HOOKS | (isset($h['get']) && !$h['get']->returnsReference() ? self::PROPERTY_NOT_BY_REF : 0); - } - - $propertyScopes["\0$class\0$name"] = [$class, $name, null, $access, $property]; - $propertyScopes[$name] ??= $propertyScopes["\0$class\0$name"]; - } - } - - return $propertyScopes; - } } diff --git a/vendor/symfony/var-exporter/Internal/LazyObjectRegistry.php b/vendor/symfony/var-exporter/Internal/LazyObjectRegistry.php deleted file mode 100644 index d096be8..0000000 --- a/vendor/symfony/var-exporter/Internal/LazyObjectRegistry.php +++ /dev/null @@ -1,177 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\VarExporter\Internal; - -/** - * Stores the state of lazy objects and caches related reflection information. - * - * As a micro-optimization, this class uses no type declarations. - * - * @internal - */ -class LazyObjectRegistry -{ - /** - * @var array - */ - public static array $classReflectors = []; - - /** - * @var array> - */ - public static array $defaultProperties = []; - - /** - * @var array> - */ - public static array $classResetters = []; - - /** - * @var array - */ - public static array $classAccessors = []; - - /** - * @var array - */ - public static array $parentMethods = []; - - public static ?\Closure $noInitializerState = null; - - public static function getClassResetters($class) - { - $classProperties = []; - $hookedProperties = []; - - if ((self::$classReflectors[$class] ??= new \ReflectionClass($class))->isInternal()) { - $propertyScopes = []; - } else { - $propertyScopes = Hydrator::$propertyScopes[$class] ??= Hydrator::getPropertyScopes($class); - } - - foreach ($propertyScopes as $key => [$scope, $name, $writeScope, $access]) { - $propertyScopes[$k = "\0$scope\0$name"] ?? $propertyScopes[$k = "\0*\0$name"] ?? $k = $name; - - if ($k !== $key || "\0$class\0lazyObjectState" === $k) { - continue; - } - - if ($access & Hydrator::PROPERTY_HAS_HOOKS) { - $hookedProperties[$k] = true; - } else { - $classProperties[$writeScope ?? $scope][$name] = $key; - } - } - - $resetters = []; - foreach ($classProperties as $scope => $properties) { - $resetters[] = \Closure::bind(static function ($instance, $skippedProperties, $onlyProperties = null) use ($properties) { - foreach ($properties as $name => $key) { - if (!\array_key_exists($key, $skippedProperties) && (null === $onlyProperties || \array_key_exists($key, $onlyProperties))) { - unset($instance->$name); - } - } - }, null, $scope); - } - - $resetters[] = static function ($instance, $skippedProperties, $onlyProperties = null) use ($hookedProperties) { - foreach ((array) $instance as $name => $value) { - if ("\0" !== ($name[0] ?? '') - && !\array_key_exists($name, $skippedProperties) - && (null === $onlyProperties || \array_key_exists($name, $onlyProperties)) - && !isset($hookedProperties[$name]) - ) { - unset($instance->$name); - } - } - }; - - return $resetters; - } - - public static function getClassAccessors($class) - { - return \Closure::bind(static fn () => [ - 'get' => static function &($instance, $name, $notByRef) { - if (!$notByRef) { - return $instance->$name; - } - $value = $instance->$name; - - return $value; - }, - 'set' => static function ($instance, $name, $value) { - $instance->$name = $value; - }, - 'isset' => static fn ($instance, $name) => isset($instance->$name), - 'unset' => static function ($instance, $name) { - unset($instance->$name); - }, - ], null, \Closure::class === $class ? null : $class)(); - } - - public static function getParentMethods($class) - { - $parent = get_parent_class($class); - $methods = []; - - foreach (['set', 'isset', 'unset', 'clone', 'serialize', 'unserialize', 'sleep', 'wakeup', 'destruct', 'get'] as $method) { - if (!$parent || !method_exists($parent, '__'.$method)) { - $methods[$method] = false; - } else { - $m = new \ReflectionMethod($parent, '__'.$method); - $methods[$method] = !$m->isAbstract() && !$m->isPrivate(); - } - } - - $methods['get'] = $methods['get'] ? ($m->returnsReference() ? 2 : 1) : 0; - - return $methods; - } - - public static function getScopeForRead($propertyScopes, $class, $property) - { - if (!isset($propertyScopes[$k = "\0$class\0$property"]) && !isset($propertyScopes[$k = "\0*\0$property"])) { - return null; - } - $frame = debug_backtrace(\DEBUG_BACKTRACE_PROVIDE_OBJECT | \DEBUG_BACKTRACE_IGNORE_ARGS, 3)[2]; - - if (\ReflectionProperty::class === $scope = $frame['class'] ?? \Closure::class) { - $scope = $frame['object']->class; - } - if ('*' === $k[1] && ($class === $scope || (is_subclass_of($class, $scope) && !isset($propertyScopes["\0$scope\0$property"])))) { - return null; - } - - return $scope; - } - - public static function getScopeForWrite($propertyScopes, $class, $property, $flags) - { - if (!($flags & (\ReflectionProperty::IS_PRIVATE | \ReflectionProperty::IS_PROTECTED | \ReflectionProperty::IS_READONLY | (\PHP_VERSION_ID >= 80400 ? \ReflectionProperty::IS_PRIVATE_SET | \ReflectionProperty::IS_PROTECTED_SET : 0)))) { - return null; - } - $frame = debug_backtrace(\DEBUG_BACKTRACE_PROVIDE_OBJECT | \DEBUG_BACKTRACE_IGNORE_ARGS, 3)[2]; - - if (\ReflectionProperty::class === $scope = $frame['class'] ?? \Closure::class) { - $scope = $frame['object']->class; - } - if ($flags & (\ReflectionProperty::IS_PRIVATE | (\PHP_VERSION_ID >= 80400 ? \ReflectionProperty::IS_PRIVATE_SET : \ReflectionProperty::IS_READONLY))) { - return $scope; - } - if ($flags & (\ReflectionProperty::IS_PROTECTED | (\PHP_VERSION_ID >= 80400 ? \ReflectionProperty::IS_PROTECTED_SET : 0)) && ($class === $scope || (is_subclass_of($class, $scope) && !isset($propertyScopes["\0$scope\0$property"])))) { - return null; - } - - return $scope; - } -} diff --git a/vendor/symfony/var-exporter/Internal/LazyObjectState.php b/vendor/symfony/var-exporter/Internal/LazyObjectState.php deleted file mode 100644 index 619555e..0000000 --- a/vendor/symfony/var-exporter/Internal/LazyObjectState.php +++ /dev/null @@ -1,133 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\VarExporter\Internal; - -use Symfony\Component\VarExporter\Hydrator as PublicHydrator; - -/** - * Keeps the state of lazy objects. - * - * As a micro-optimization, this class uses no type declarations. - * - * @internal - */ -class LazyObjectState -{ - public const STATUS_UNINITIALIZED_FULL = 1; - public const STATUS_UNINITIALIZED_PARTIAL = 2; - public const STATUS_INITIALIZED_FULL = 3; - public const STATUS_INITIALIZED_PARTIAL = 4; - - /** - * @var array - */ - public readonly array $skippedProperties; - - /** - * @var self::STATUS_* - */ - public int $status = 0; - - public object $realInstance; - - public function __construct(public readonly \Closure|array $initializer, $skippedProperties = []) - { - $this->skippedProperties = $skippedProperties; - $this->status = \is_array($initializer) ? self::STATUS_UNINITIALIZED_PARTIAL : self::STATUS_UNINITIALIZED_FULL; - } - - public function initialize($instance, $propertyName, $writeScope) - { - if (self::STATUS_INITIALIZED_FULL === $this->status) { - return self::STATUS_INITIALIZED_FULL; - } - - if (\is_array($this->initializer)) { - $class = $instance::class; - $writeScope ??= $class; - $propertyScopes = Hydrator::$propertyScopes[$class]; - $propertyScopes[$k = "\0$writeScope\0$propertyName"] ?? $propertyScopes[$k = "\0*\0$propertyName"] ?? $k = $propertyName; - - if ($initializer = $this->initializer[$k] ?? null) { - $value = $initializer(...[$instance, $propertyName, $writeScope, LazyObjectRegistry::$defaultProperties[$class][$k] ?? null]); - $accessor = LazyObjectRegistry::$classAccessors[$writeScope] ??= LazyObjectRegistry::getClassAccessors($writeScope); - $accessor['set']($instance, $propertyName, $value); - - return $this->status = self::STATUS_INITIALIZED_PARTIAL; - } - - if ($initializer = $this->initializer["\0"] ?? null) { - if (!\is_array($values = $initializer($instance, LazyObjectRegistry::$defaultProperties[$class]))) { - throw new \TypeError(\sprintf('The lazy-initializer defined for instance of "%s" must return an array, got "%s".', $class, get_debug_type($values))); - } - $properties = (array) $instance; - foreach ($values as $key => $value) { - if (!\array_key_exists($key, $properties) && [$scope, $name, $writeScope] = $propertyScopes[$key] ?? null) { - $scope = $writeScope ?? $scope; - $accessor = LazyObjectRegistry::$classAccessors[$scope] ??= LazyObjectRegistry::getClassAccessors($scope); - $accessor['set']($instance, $name, $value); - - if ($k === $key) { - $this->status = self::STATUS_INITIALIZED_PARTIAL; - } - } - } - } - - return $this->status; - } - - if (self::STATUS_INITIALIZED_PARTIAL === $this->status) { - return self::STATUS_INITIALIZED_PARTIAL; - } - - $this->status = self::STATUS_INITIALIZED_PARTIAL; - - try { - if ($defaultProperties = array_diff_key(LazyObjectRegistry::$defaultProperties[$instance::class], $this->skippedProperties)) { - PublicHydrator::hydrate($instance, $defaultProperties); - } - - ($this->initializer)($instance); - } catch (\Throwable $e) { - $this->status = self::STATUS_UNINITIALIZED_FULL; - $this->reset($instance); - - throw $e; - } - - return $this->status = self::STATUS_INITIALIZED_FULL; - } - - public function reset($instance): void - { - $class = $instance::class; - $propertyScopes = Hydrator::$propertyScopes[$class] ??= Hydrator::getPropertyScopes($class); - $skippedProperties = $this->skippedProperties; - $properties = (array) $instance; - $onlyProperties = \is_array($this->initializer) ? $this->initializer : null; - - foreach ($propertyScopes as $key => [$scope, $name, , $access]) { - $propertyScopes[$k = "\0$scope\0$name"] ?? $propertyScopes[$k = "\0*\0$name"] ?? $k = $name; - - if ($k === $key && ($access & Hydrator::PROPERTY_HAS_HOOKS || ($access >> 2) & \ReflectionProperty::IS_READONLY || !\array_key_exists($k, $properties))) { - $skippedProperties[$k] = true; - } - } - - foreach (LazyObjectRegistry::$classResetters[$class] as $reset) { - $reset($instance, $skippedProperties, $onlyProperties); - } - - $this->status = self::STATUS_INITIALIZED_FULL === $this->status ? self::STATUS_UNINITIALIZED_FULL : self::STATUS_UNINITIALIZED_PARTIAL; - } -} diff --git a/vendor/symfony/var-exporter/Internal/LazyObjectTrait.php b/vendor/symfony/var-exporter/Internal/LazyObjectTrait.php deleted file mode 100644 index 4a6f232..0000000 --- a/vendor/symfony/var-exporter/Internal/LazyObjectTrait.php +++ /dev/null @@ -1,34 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\VarExporter\Internal; - -use Symfony\Component\Serializer\Attribute\Ignore; - -if (\PHP_VERSION_ID >= 80300) { - /** - * @internal - */ - trait LazyObjectTrait - { - #[Ignore] - private readonly LazyObjectState $lazyObjectState; - } -} else { - /** - * @internal - */ - trait LazyObjectTrait - { - #[Ignore] - private LazyObjectState $lazyObjectState; - } -} diff --git a/vendor/symfony/var-exporter/Internal/Reference.php b/vendor/symfony/var-exporter/Internal/Reference.php index 2c7bd7b..e371c07 100644 --- a/vendor/symfony/var-exporter/Internal/Reference.php +++ b/vendor/symfony/var-exporter/Internal/Reference.php @@ -18,11 +18,13 @@ namespace Symfony\Component\VarExporter\Internal; */ class Reference { - public int $count = 0; + public $id; + public $value; + public $count = 0; - public function __construct( - public readonly int $id, - public readonly mixed $value = null, - ) { + public function __construct(int $id, $value = null) + { + $this->id = $id; + $this->value = $value; } } diff --git a/vendor/symfony/var-exporter/Internal/Registry.php b/vendor/symfony/var-exporter/Internal/Registry.php index db05bbb..a9fb061 100644 --- a/vendor/symfony/var-exporter/Internal/Registry.php +++ b/vendor/symfony/var-exporter/Internal/Registry.php @@ -21,11 +21,11 @@ use Symfony\Component\VarExporter\Exception\NotInstantiableTypeException; */ class Registry { - public static array $reflectors = []; - public static array $prototypes = []; - public static array $factories = []; - public static array $cloneable = []; - public static array $instantiableWithoutConstructor = []; + public static $reflectors = []; + public static $prototypes = []; + public static $factories = []; + public static $cloneable = []; + public static $instantiableWithoutConstructor = []; public $classes = []; @@ -58,9 +58,9 @@ class Registry public static function f($class) { - $reflector = self::$reflectors[$class] ??= self::getClassReflector($class, true, false); + $reflector = self::$reflectors[$class] ?? self::getClassReflector($class, true, false); - return self::$factories[$class] = [$reflector, 'newInstanceWithoutConstructor'](...); + return self::$factories[$class] = \Closure::fromCallable([$reflector, 'newInstanceWithoutConstructor']); } public static function getClassReflector($class, $instantiableWithoutConstructor = false, $cloneable = null) @@ -75,17 +75,17 @@ class Registry } elseif (!$isClass || $reflector->isAbstract()) { throw new NotInstantiableTypeException($class); } elseif ($reflector->name !== $class) { - $reflector = self::$reflectors[$name = $reflector->name] ??= self::getClassReflector($name, false, $cloneable); + $reflector = self::$reflectors[$name = $reflector->name] ?? self::getClassReflector($name, false, $cloneable); self::$cloneable[$class] = self::$cloneable[$name]; self::$instantiableWithoutConstructor[$class] = self::$instantiableWithoutConstructor[$name]; self::$prototypes[$class] = self::$prototypes[$name]; - return $reflector; + return self::$reflectors[$class] = $reflector; } else { try { $proto = $reflector->newInstanceWithoutConstructor(); $instantiableWithoutConstructor = true; - } catch (\ReflectionException) { + } catch (\ReflectionException $e) { $proto = $reflector->implementsInterface('Serializable') && !method_exists($class, '__unserialize') ? 'C:' : 'O:'; if ('C:' === $proto && !$reflector->getMethod('unserialize')->isInternal()) { $proto = null; @@ -132,13 +132,15 @@ class Registry new \ReflectionProperty(\Error::class, 'trace'), new \ReflectionProperty(\Exception::class, 'trace'), ]; - $setTrace[0] = $setTrace[0]->setValue(...); - $setTrace[1] = $setTrace[1]->setValue(...); + $setTrace[0]->setAccessible(true); + $setTrace[1]->setAccessible(true); + $setTrace[0] = \Closure::fromCallable([$setTrace[0], 'setValue']); + $setTrace[1] = \Closure::fromCallable([$setTrace[1], 'setValue']); } $setTrace[$proto instanceof \Exception]($proto, []); } - return $reflector; + return self::$reflectors[$class] = $reflector; } } diff --git a/vendor/symfony/var-exporter/LICENSE b/vendor/symfony/var-exporter/LICENSE index 7536cae..99757d5 100644 --- a/vendor/symfony/var-exporter/LICENSE +++ b/vendor/symfony/var-exporter/LICENSE @@ -1,4 +1,4 @@ -Copyright (c) 2018-present Fabien Potencier +Copyright (c) 2018-2023 Fabien Potencier Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/vendor/symfony/var-exporter/LazyGhostTrait.php b/vendor/symfony/var-exporter/LazyGhostTrait.php deleted file mode 100644 index 79d8a0f..0000000 --- a/vendor/symfony/var-exporter/LazyGhostTrait.php +++ /dev/null @@ -1,409 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\VarExporter; - -use Symfony\Component\Serializer\Attribute\Ignore; -use Symfony\Component\VarExporter\Internal\Hydrator; -use Symfony\Component\VarExporter\Internal\LazyObjectRegistry as Registry; -use Symfony\Component\VarExporter\Internal\LazyObjectState; -use Symfony\Component\VarExporter\Internal\LazyObjectTrait; - -trait LazyGhostTrait -{ - use LazyObjectTrait; - - /** - * Creates a lazy-loading ghost instance. - * - * Skipped properties should be indexed by their array-cast identifier, see - * https://php.net/manual/language.types.array#language.types.array.casting - * - * @param (\Closure(static):void $initializer The closure should initialize the object it receives as argument - * @param array|null $skippedProperties An array indexed by the properties to skip, a.k.a. the ones - * that the initializer doesn't initialize, if any - * @param static|null $instance - */ - public static function createLazyGhost(\Closure|array $initializer, ?array $skippedProperties = null, ?object $instance = null): static - { - if (\is_array($initializer)) { - trigger_deprecation('symfony/var-exporter', '6.4', 'Per-property lazy-initializers are deprecated and won\'t be supported anymore in 7.0, use an object initializer instead.'); - } - - $onlyProperties = null === $skippedProperties && \is_array($initializer) ? $initializer : null; - - if (self::class !== $class = $instance ? $instance::class : static::class) { - $skippedProperties["\0".self::class."\0lazyObjectState"] = true; - } elseif (\defined($class.'::LAZY_OBJECT_PROPERTY_SCOPES')) { - Hydrator::$propertyScopes[$class] ??= $class::LAZY_OBJECT_PROPERTY_SCOPES; - } - - $instance ??= (Registry::$classReflectors[$class] ??= new \ReflectionClass($class))->newInstanceWithoutConstructor(); - Registry::$defaultProperties[$class] ??= (array) $instance; - $instance->lazyObjectState = new LazyObjectState($initializer, $skippedProperties ??= []); - - foreach (Registry::$classResetters[$class] ??= Registry::getClassResetters($class) as $reset) { - $reset($instance, $skippedProperties, $onlyProperties); - } - - return $instance; - } - - /** - * Returns whether the object is initialized. - * - * @param $partial Whether partially initialized objects should be considered as initialized - */ - #[Ignore] - public function isLazyObjectInitialized(bool $partial = false): bool - { - if (!$state = $this->lazyObjectState ?? null) { - return true; - } - - if (!\is_array($state->initializer)) { - return LazyObjectState::STATUS_INITIALIZED_FULL === $state->status; - } - - $class = $this::class; - $properties = (array) $this; - - if ($partial) { - return (bool) array_intersect_key($state->initializer, $properties); - } - - $propertyScopes = Hydrator::$propertyScopes[$class] ??= Hydrator::getPropertyScopes($class); - foreach ($state->initializer as $key => $initializer) { - if (!\array_key_exists($key, $properties) && isset($propertyScopes[$key])) { - return false; - } - } - - return true; - } - - /** - * Forces initialization of a lazy object and returns it. - */ - public function initializeLazyObject(): static - { - if (!$state = $this->lazyObjectState ?? null) { - return $this; - } - - if (!\is_array($state->initializer)) { - if (LazyObjectState::STATUS_UNINITIALIZED_FULL === $state->status) { - $state->initialize($this, '', null); - } - - return $this; - } - - $values = isset($state->initializer["\0"]) ? null : []; - - $class = $this::class; - $properties = (array) $this; - $propertyScopes = Hydrator::$propertyScopes[$class] ??= Hydrator::getPropertyScopes($class); - foreach ($state->initializer as $key => $initializer) { - if (\array_key_exists($key, $properties) || ![$scope, $name, $writeScope] = $propertyScopes[$key] ?? null) { - continue; - } - $scope = $writeScope ?? $scope; - - if (null === $values) { - if (!\is_array($values = ($state->initializer["\0"])($this, Registry::$defaultProperties[$class]))) { - throw new \TypeError(\sprintf('The lazy-initializer defined for instance of "%s" must return an array, got "%s".', $class, get_debug_type($values))); - } - - if (\array_key_exists($key, $properties = (array) $this)) { - continue; - } - } - - if (\array_key_exists($key, $values)) { - $accessor = Registry::$classAccessors[$scope] ??= Registry::getClassAccessors($scope); - $accessor['set']($this, $name, $properties[$key] = $values[$key]); - } else { - $state->initialize($this, $name, $scope); - $properties = (array) $this; - } - } - - return $this; - } - - /** - * @return bool Returns false when the object cannot be reset, ie when it's not a lazy object - */ - public function resetLazyObject(): bool - { - if (!$state = $this->lazyObjectState ?? null) { - return false; - } - - if (LazyObjectState::STATUS_UNINITIALIZED_FULL !== $state->status) { - $state->reset($this); - } - - return true; - } - - public function &__get($name): mixed - { - $propertyScopes = Hydrator::$propertyScopes[$this::class] ??= Hydrator::getPropertyScopes($this::class); - $scope = null; - $notByRef = 0; - - if ([$class, , $writeScope, $access] = $propertyScopes[$name] ?? null) { - $scope = Registry::getScopeForRead($propertyScopes, $class, $name); - $state = $this->lazyObjectState ?? null; - - if ($state && (null === $scope || isset($propertyScopes["\0$scope\0$name"]))) { - $notByRef = $access & Hydrator::PROPERTY_NOT_BY_REF; - - if (LazyObjectState::STATUS_INITIALIZED_FULL === $state->status) { - // Work around php/php-src#12695 - $property = null === $scope ? $name : "\0$scope\0$name"; - $property = $propertyScopes[$property][4] - ?? Hydrator::$propertyScopes[$this::class][$property][4] = new \ReflectionProperty($scope ?? $class, $name); - } else { - $property = null; - } - if (\PHP_VERSION_ID >= 80400 && !$notByRef && ($access >> 2) & \ReflectionProperty::IS_PRIVATE_SET) { - $scope ??= $writeScope; - } - - if ($property?->isInitialized($this) ?? LazyObjectState::STATUS_UNINITIALIZED_PARTIAL !== $state->initialize($this, $name, $writeScope ?? $scope)) { - goto get_in_scope; - } - } - } - - if ($parent = (Registry::$parentMethods[self::class] ??= Registry::getParentMethods(self::class))['get']) { - if (2 === $parent) { - return parent::__get($name); - } - $value = parent::__get($name); - - return $value; - } - - if (null === $class) { - $frame = debug_backtrace(\DEBUG_BACKTRACE_IGNORE_ARGS, 1)[0]; - trigger_error(\sprintf('Undefined property: %s::$%s in %s on line %s', $this::class, $name, $frame['file'], $frame['line']), \E_USER_NOTICE); - } - - get_in_scope: - - try { - if (null === $scope) { - if (!$notByRef) { - return $this->$name; - } - $value = $this->$name; - - return $value; - } - $accessor = Registry::$classAccessors[$scope] ??= Registry::getClassAccessors($scope); - - return $accessor['get']($this, $name, $notByRef); - } catch (\Error $e) { - if (\Error::class !== $e::class || !str_starts_with($e->getMessage(), 'Cannot access uninitialized non-nullable property')) { - throw $e; - } - - try { - if (null === $scope) { - $this->$name = []; - - return $this->$name; - } - - $accessor['set']($this, $name, []); - - return $accessor['get']($this, $name, $notByRef); - } catch (\Error) { - if (preg_match('/^Cannot access uninitialized non-nullable property ([^ ]++) by reference$/', $e->getMessage(), $matches)) { - throw new \Error('Typed property '.$matches[1].' must not be accessed before initialization', $e->getCode(), $e->getPrevious()); - } - - throw $e; - } - } - } - - public function __set($name, $value): void - { - $propertyScopes = Hydrator::$propertyScopes[$this::class] ??= Hydrator::getPropertyScopes($this::class); - $scope = null; - - if ([$class, , $writeScope, $access] = $propertyScopes[$name] ?? null) { - $scope = Registry::getScopeForWrite($propertyScopes, $class, $name, $access >> 2); - $state = $this->lazyObjectState ?? null; - - if ($state && ($writeScope === $scope || isset($propertyScopes["\0$scope\0$name"])) - && LazyObjectState::STATUS_INITIALIZED_FULL !== $state->status - ) { - if (LazyObjectState::STATUS_UNINITIALIZED_FULL === $state->status) { - $state->initialize($this, $name, $writeScope ?? $scope); - } - goto set_in_scope; - } - } - - if ((Registry::$parentMethods[self::class] ??= Registry::getParentMethods(self::class))['set']) { - parent::__set($name, $value); - - return; - } - - set_in_scope: - - if (null === $scope) { - $this->$name = $value; - } else { - $accessor = Registry::$classAccessors[$scope] ??= Registry::getClassAccessors($scope); - $accessor['set']($this, $name, $value); - } - } - - public function __isset($name): bool - { - $propertyScopes = Hydrator::$propertyScopes[$this::class] ??= Hydrator::getPropertyScopes($this::class); - $scope = null; - - if ([$class, , $writeScope] = $propertyScopes[$name] ?? null) { - $scope = Registry::getScopeForRead($propertyScopes, $class, $name); - $state = $this->lazyObjectState ?? null; - - if ($state && (null === $scope || isset($propertyScopes["\0$scope\0$name"])) - && LazyObjectState::STATUS_INITIALIZED_FULL !== $state->status - && LazyObjectState::STATUS_UNINITIALIZED_PARTIAL !== $state->initialize($this, $name, $writeScope ?? $scope) - ) { - goto isset_in_scope; - } - } - - if ((Registry::$parentMethods[self::class] ??= Registry::getParentMethods(self::class))['isset']) { - return parent::__isset($name); - } - - isset_in_scope: - - if (null === $scope) { - return isset($this->$name); - } - $accessor = Registry::$classAccessors[$scope] ??= Registry::getClassAccessors($scope); - - return $accessor['isset']($this, $name); - } - - public function __unset($name): void - { - $propertyScopes = Hydrator::$propertyScopes[$this::class] ??= Hydrator::getPropertyScopes($this::class); - $scope = null; - - if ([$class, , $writeScope, $access] = $propertyScopes[$name] ?? null) { - $scope = Registry::getScopeForWrite($propertyScopes, $class, $name, $access >> 2); - $state = $this->lazyObjectState ?? null; - - if ($state && ($writeScope === $scope || isset($propertyScopes["\0$scope\0$name"])) - && LazyObjectState::STATUS_INITIALIZED_FULL !== $state->status - ) { - if (LazyObjectState::STATUS_UNINITIALIZED_FULL === $state->status) { - $state->initialize($this, $name, $writeScope ?? $scope); - } - goto unset_in_scope; - } - } - - if ((Registry::$parentMethods[self::class] ??= Registry::getParentMethods(self::class))['unset']) { - parent::__unset($name); - - return; - } - - unset_in_scope: - - if (null === $scope) { - unset($this->$name); - } else { - $accessor = Registry::$classAccessors[$scope] ??= Registry::getClassAccessors($scope); - $accessor['unset']($this, $name); - } - } - - public function __clone(): void - { - if ($state = $this->lazyObjectState ?? null) { - $this->lazyObjectState = clone $state; - } - - if ((Registry::$parentMethods[self::class] ??= Registry::getParentMethods(self::class))['clone']) { - parent::__clone(); - } - } - - public function __serialize(): array - { - $class = self::class; - - if ((Registry::$parentMethods[$class] ??= Registry::getParentMethods($class))['serialize']) { - $properties = parent::__serialize(); - } else { - $this->initializeLazyObject(); - $properties = (array) $this; - } - unset($properties["\0$class\0lazyObjectState"]); - - if (Registry::$parentMethods[$class]['serialize'] || !Registry::$parentMethods[$class]['sleep']) { - return $properties; - } - - $scope = get_parent_class($class); - $data = []; - - foreach (parent::__sleep() as $name) { - $value = $properties[$k = $name] ?? $properties[$k = "\0*\0$name"] ?? $properties[$k = "\0$class\0$name"] ?? $properties[$k = "\0$scope\0$name"] ?? $k = null; - - if (null === $k) { - trigger_error(\sprintf('serialize(): "%s" returned as member variable from __sleep() but does not exist', $name), \E_USER_NOTICE); - } else { - $data[$k] = $value; - } - } - - return $data; - } - - public function __destruct() - { - $state = $this->lazyObjectState ?? null; - - if ($state && \in_array($state->status, [LazyObjectState::STATUS_UNINITIALIZED_FULL, LazyObjectState::STATUS_UNINITIALIZED_PARTIAL], true)) { - return; - } - - if ((Registry::$parentMethods[self::class] ??= Registry::getParentMethods(self::class))['destruct']) { - parent::__destruct(); - } - } - - #[Ignore] - private function setLazyObjectAsInitialized(bool $initialized): void - { - $state = $this->lazyObjectState ?? null; - - if ($state && !\is_array($state->initializer)) { - $state->status = $initialized ? LazyObjectState::STATUS_INITIALIZED_FULL : LazyObjectState::STATUS_UNINITIALIZED_FULL; - } - } -} diff --git a/vendor/symfony/var-exporter/LazyObjectInterface.php b/vendor/symfony/var-exporter/LazyObjectInterface.php deleted file mode 100644 index 3670884..0000000 --- a/vendor/symfony/var-exporter/LazyObjectInterface.php +++ /dev/null @@ -1,32 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\VarExporter; - -interface LazyObjectInterface -{ - /** - * Returns whether the object is initialized. - * - * @param $partial Whether partially initialized objects should be considered as initialized - */ - public function isLazyObjectInitialized(bool $partial = false): bool; - - /** - * Forces initialization of a lazy object and returns it. - */ - public function initializeLazyObject(): object; - - /** - * @return bool Returns false when the object cannot be reset, ie when it's not a lazy object - */ - public function resetLazyObject(): bool; -} diff --git a/vendor/symfony/var-exporter/LazyProxyTrait.php b/vendor/symfony/var-exporter/LazyProxyTrait.php deleted file mode 100644 index af009ae..0000000 --- a/vendor/symfony/var-exporter/LazyProxyTrait.php +++ /dev/null @@ -1,355 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\VarExporter; - -use Symfony\Component\Serializer\Attribute\Ignore; -use Symfony\Component\VarExporter\Hydrator as PublicHydrator; -use Symfony\Component\VarExporter\Internal\Hydrator; -use Symfony\Component\VarExporter\Internal\LazyObjectRegistry as Registry; -use Symfony\Component\VarExporter\Internal\LazyObjectState; -use Symfony\Component\VarExporter\Internal\LazyObjectTrait; - -trait LazyProxyTrait -{ - use LazyObjectTrait; - - /** - * Creates a lazy-loading virtual proxy. - * - * @param \Closure():object $initializer Returns the proxied object - * @param static|null $instance - */ - public static function createLazyProxy(\Closure $initializer, ?object $instance = null): static - { - if (self::class !== $class = $instance ? $instance::class : static::class) { - $skippedProperties = ["\0".self::class."\0lazyObjectState" => true]; - } elseif (\defined($class.'::LAZY_OBJECT_PROPERTY_SCOPES')) { - Hydrator::$propertyScopes[$class] ??= $class::LAZY_OBJECT_PROPERTY_SCOPES; - } - - $instance ??= (Registry::$classReflectors[$class] ??= new \ReflectionClass($class))->newInstanceWithoutConstructor(); - $instance->lazyObjectState = new LazyObjectState($initializer); - - foreach (Registry::$classResetters[$class] ??= Registry::getClassResetters($class) as $reset) { - $reset($instance, $skippedProperties ??= []); - } - - return $instance; - } - - /** - * Returns whether the object is initialized. - * - * @param $partial Whether partially initialized objects should be considered as initialized - */ - #[Ignore] - public function isLazyObjectInitialized(bool $partial = false): bool - { - return !isset($this->lazyObjectState) || isset($this->lazyObjectState->realInstance) || Registry::$noInitializerState === $this->lazyObjectState->initializer; - } - - /** - * Forces initialization of a lazy object and returns it. - */ - public function initializeLazyObject(): parent - { - if ($state = $this->lazyObjectState ?? null) { - return $state->realInstance ??= ($state->initializer)(); - } - - return $this; - } - - /** - * @return bool Returns false when the object cannot be reset, ie when it's not a lazy object - */ - public function resetLazyObject(): bool - { - if (!isset($this->lazyObjectState) || Registry::$noInitializerState === $this->lazyObjectState->initializer) { - return false; - } - - unset($this->lazyObjectState->realInstance); - - return true; - } - - public function &__get($name): mixed - { - $propertyScopes = Hydrator::$propertyScopes[$this::class] ??= Hydrator::getPropertyScopes($this::class); - $scope = null; - $instance = $this; - $notByRef = 0; - - if ([$class, , $writeScope, $access] = $propertyScopes[$name] ?? null) { - $notByRef = $access & Hydrator::PROPERTY_NOT_BY_REF; - $scope = Registry::getScopeForRead($propertyScopes, $class, $name); - - if (null === $scope || isset($propertyScopes["\0$scope\0$name"])) { - if ($state = $this->lazyObjectState ?? null) { - $instance = $state->realInstance ??= ($state->initializer)(); - } - if (\PHP_VERSION_ID >= 80400 && !$notByRef && ($access >> 2) & \ReflectionProperty::IS_PRIVATE_SET) { - $scope ??= $writeScope; - } - $parent = 2; - goto get_in_scope; - } - } - $parent = (Registry::$parentMethods[self::class] ??= Registry::getParentMethods(self::class))['get']; - - if ($state = $this->lazyObjectState ?? null) { - $instance = $state->realInstance ??= ($state->initializer)(); - } else { - if (2 === $parent) { - return parent::__get($name); - } - $value = parent::__get($name); - - return $value; - } - - if (!$parent && null === $class && !\array_key_exists($name, (array) $instance)) { - $frame = debug_backtrace(\DEBUG_BACKTRACE_IGNORE_ARGS, 1)[0]; - trigger_error(\sprintf('Undefined property: %s::$%s in %s on line %s', $instance::class, $name, $frame['file'], $frame['line']), \E_USER_NOTICE); - } - - get_in_scope: - $notByRef = $notByRef || 1 === $parent; - - try { - if (null === $scope) { - if (!$notByRef) { - return $instance->$name; - } - $value = $instance->$name; - - return $value; - } - $accessor = Registry::$classAccessors[$scope] ??= Registry::getClassAccessors($scope); - - return $accessor['get']($instance, $name, $notByRef); - } catch (\Error $e) { - if (\Error::class !== $e::class || !str_starts_with($e->getMessage(), 'Cannot access uninitialized non-nullable property')) { - throw $e; - } - - try { - if (null === $scope) { - $instance->$name = []; - - return $instance->$name; - } - - $accessor['set']($instance, $name, []); - - return $accessor['get']($instance, $name, $notByRef); - } catch (\Error) { - throw $e; - } - } - } - - public function __set($name, $value): void - { - $propertyScopes = Hydrator::$propertyScopes[$this::class] ??= Hydrator::getPropertyScopes($this::class); - $scope = null; - $instance = $this; - - if ([$class, , $writeScope, $access] = $propertyScopes[$name] ?? null) { - $scope = Registry::getScopeForWrite($propertyScopes, $class, $name, $access >> 2); - - if ($writeScope === $scope || isset($propertyScopes["\0$scope\0$name"])) { - if ($state = $this->lazyObjectState ?? null) { - $instance = $state->realInstance ??= ($state->initializer)(); - } - goto set_in_scope; - } - } - - if ($state = $this->lazyObjectState ?? null) { - $instance = $state->realInstance ??= ($state->initializer)(); - } elseif ((Registry::$parentMethods[self::class] ??= Registry::getParentMethods(self::class))['set']) { - parent::__set($name, $value); - - return; - } - - set_in_scope: - - if (null === $scope) { - $instance->$name = $value; - } else { - $accessor = Registry::$classAccessors[$scope] ??= Registry::getClassAccessors($scope); - $accessor['set']($instance, $name, $value); - } - } - - public function __isset($name): bool - { - $propertyScopes = Hydrator::$propertyScopes[$this::class] ??= Hydrator::getPropertyScopes($this::class); - $scope = null; - $instance = $this; - - if ([$class] = $propertyScopes[$name] ?? null) { - $scope = Registry::getScopeForRead($propertyScopes, $class, $name); - - if (null === $scope || isset($propertyScopes["\0$scope\0$name"])) { - if ($state = $this->lazyObjectState ?? null) { - $instance = $state->realInstance ??= ($state->initializer)(); - } - goto isset_in_scope; - } - } - - if ($state = $this->lazyObjectState ?? null) { - $instance = $state->realInstance ??= ($state->initializer)(); - } elseif ((Registry::$parentMethods[self::class] ??= Registry::getParentMethods(self::class))['isset']) { - return parent::__isset($name); - } - - isset_in_scope: - - if (null === $scope) { - return isset($instance->$name); - } - $accessor = Registry::$classAccessors[$scope] ??= Registry::getClassAccessors($scope); - - return $accessor['isset']($instance, $name); - } - - public function __unset($name): void - { - $propertyScopes = Hydrator::$propertyScopes[$this::class] ??= Hydrator::getPropertyScopes($this::class); - $scope = null; - $instance = $this; - - if ([$class, , $writeScope, $access] = $propertyScopes[$name] ?? null) { - $scope = Registry::getScopeForWrite($propertyScopes, $class, $name, $access >> 2); - - if ($writeScope === $scope || isset($propertyScopes["\0$scope\0$name"])) { - if ($state = $this->lazyObjectState ?? null) { - $instance = $state->realInstance ??= ($state->initializer)(); - } - goto unset_in_scope; - } - } - - if ($state = $this->lazyObjectState ?? null) { - $instance = $state->realInstance ??= ($state->initializer)(); - } elseif ((Registry::$parentMethods[self::class] ??= Registry::getParentMethods(self::class))['unset']) { - parent::__unset($name); - - return; - } - - unset_in_scope: - - if (null === $scope) { - unset($instance->$name); - } else { - $accessor = Registry::$classAccessors[$scope] ??= Registry::getClassAccessors($scope); - $accessor['unset']($instance, $name); - } - } - - public function __clone(): void - { - if (!isset($this->lazyObjectState)) { - if ((Registry::$parentMethods[self::class] ??= Registry::getParentMethods(self::class))['clone']) { - parent::__clone(); - } - - return; - } - - $this->lazyObjectState = clone $this->lazyObjectState; - - if (isset($this->lazyObjectState->realInstance)) { - $this->lazyObjectState->realInstance = clone $this->lazyObjectState->realInstance; - } - } - - public function __serialize(): array - { - $class = self::class; - $state = $this->lazyObjectState ?? null; - - if (!$state && (Registry::$parentMethods[$class] ??= Registry::getParentMethods($class))['serialize']) { - $properties = parent::__serialize(); - } else { - $properties = (array) $this; - - if ($state) { - unset($properties["\0$class\0lazyObjectState"]); - $properties["\0$class\0lazyObjectReal"] = $state->realInstance ??= ($state->initializer)(); - } - } - - if ($state || Registry::$parentMethods[$class]['serialize'] || !Registry::$parentMethods[$class]['sleep']) { - return $properties; - } - - $scope = get_parent_class($class); - $data = []; - - foreach (parent::__sleep() as $name) { - $value = $properties[$k = $name] ?? $properties[$k = "\0*\0$name"] ?? $properties[$k = "\0$class\0$name"] ?? $properties[$k = "\0$scope\0$name"] ?? $k = null; - - if (null === $k) { - trigger_error(\sprintf('serialize(): "%s" returned as member variable from __sleep() but does not exist', $name), \E_USER_NOTICE); - } else { - $data[$k] = $value; - } - } - - return $data; - } - - public function __unserialize(array $data): void - { - $class = self::class; - - if ($instance = $data["\0$class\0lazyObjectReal"] ?? null) { - unset($data["\0$class\0lazyObjectReal"]); - - foreach (Registry::$classResetters[$class] ??= Registry::getClassResetters($class) as $reset) { - $reset($this, $data); - } - - if ($data) { - PublicHydrator::hydrate($this, $data); - } - $this->lazyObjectState = new LazyObjectState(Registry::$noInitializerState ??= static fn () => throw new \LogicException('Lazy proxy has no initializer.')); - $this->lazyObjectState->realInstance = $instance; - } elseif ((Registry::$parentMethods[$class] ??= Registry::getParentMethods($class))['unserialize']) { - parent::__unserialize($data); - } else { - PublicHydrator::hydrate($this, $data); - - if (Registry::$parentMethods[$class]['wakeup']) { - parent::__wakeup(); - } - } - } - - public function __destruct() - { - if (isset($this->lazyObjectState)) { - return; - } - - if ((Registry::$parentMethods[self::class] ??= Registry::getParentMethods(self::class))['destruct']) { - parent::__destruct(); - } - } -} diff --git a/vendor/symfony/var-exporter/ProxyHelper.php b/vendor/symfony/var-exporter/ProxyHelper.php deleted file mode 100644 index 56fd00e..0000000 --- a/vendor/symfony/var-exporter/ProxyHelper.php +++ /dev/null @@ -1,553 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\VarExporter; - -use Symfony\Component\VarExporter\Exception\LogicException; -use Symfony\Component\VarExporter\Internal\Hydrator; -use Symfony\Component\VarExporter\Internal\LazyObjectRegistry; - -/** - * @author Nicolas Grekas - */ -final class ProxyHelper -{ - /** - * Helps generate lazy-loading ghost objects. - * - * @throws LogicException When the class is incompatible with ghost objects - */ - public static function generateLazyGhost(\ReflectionClass $class): string - { - if (\PHP_VERSION_ID >= 80200 && \PHP_VERSION_ID < 80300 && $class->isReadOnly()) { - throw new LogicException(\sprintf('Cannot generate lazy ghost with PHP < 8.3: class "%s" is readonly.', $class->name)); - } - if ($class->isFinal()) { - throw new LogicException(\sprintf('Cannot generate lazy ghost: class "%s" is final.', $class->name)); - } - if ($class->isInterface() || $class->isAbstract() || $class->isTrait()) { - throw new LogicException(\sprintf('Cannot generate lazy ghost: "%s" is not a concrete class.', $class->name)); - } - if (\stdClass::class !== $class->name && $class->isInternal()) { - throw new LogicException(\sprintf('Cannot generate lazy ghost: class "%s" is internal.', $class->name)); - } - if ($class->hasMethod('__get') && 'mixed' !== (self::exportType($class->getMethod('__get')) ?? 'mixed')) { - throw new LogicException(\sprintf('Cannot generate lazy ghost: return type of method "%s::__get()" should be "mixed".', $class->name)); - } - - static $traitMethods; - $traitMethods ??= (new \ReflectionClass(LazyGhostTrait::class))->getMethods(); - - foreach ($traitMethods as $method) { - if ($class->hasMethod($method->name) && $class->getMethod($method->name)->isFinal()) { - throw new LogicException(\sprintf('Cannot generate lazy ghost: method "%s::%s()" is final.', $class->name, $method->name)); - } - } - - $parent = $class; - while ($parent = $parent->getParentClass()) { - if (\stdClass::class !== $parent->name && $parent->isInternal()) { - throw new LogicException(\sprintf('Cannot generate lazy ghost: class "%s" extends "%s" which is internal.', $class->name, $parent->name)); - } - } - - $hooks = ''; - $propertyScopes = Hydrator::$propertyScopes[$class->name] ??= Hydrator::getPropertyScopes($class->name); - foreach ($propertyScopes as $key => [$scope, $name, , $access]) { - $propertyScopes[$k = "\0$scope\0$name"] ?? $propertyScopes[$k = "\0*\0$name"] ?? $k = $name; - $flags = $access >> 2; - - if ($k !== $key || !($access & Hydrator::PROPERTY_HAS_HOOKS) || $flags & \ReflectionProperty::IS_VIRTUAL) { - continue; - } - - if ($flags & (\ReflectionProperty::IS_FINAL | \ReflectionProperty::IS_PRIVATE)) { - throw new LogicException(\sprintf('Cannot generate lazy ghost: property "%s::$%s" is final or private(set).', $class->name, $name)); - } - - $p = $propertyScopes[$k][4] ?? Hydrator::$propertyScopes[$class->name][$k][4] = new \ReflectionProperty($scope, $name); - - $type = self::exportType($p); - $hooks .= "\n " - .($p->isProtected() ? 'protected' : 'public') - .($p->isProtectedSet() ? ' protected(set)' : '') - ." {$type} \${$name}" - .($p->hasDefaultValue() ? ' = '.VarExporter::export($p->getDefaultValue()) : '') - ." {\n"; - - foreach ($p->getHooks() as $hook => $method) { - if ('get' === $hook) { - $ref = ($method->returnsReference() ? '&' : ''); - $hooks .= " {$ref}get { \$this->initializeLazyObject(); return parent::\${$name}::get(); }\n"; - } elseif ('set' === $hook) { - $parameters = self::exportParameters($method, true); - $arg = '$'.$method->getParameters()[0]->name; - $hooks .= " set({$parameters}) { \$this->initializeLazyObject(); parent::\${$name}::set({$arg}); }\n"; - } else { - throw new LogicException(\sprintf('Cannot generate lazy ghost: hook "%s::%s()" is not supported.', $class->name, $method->name)); - } - } - - $hooks .= " }\n"; - } - - $propertyScopes = self::exportPropertyScopes($class->name, $propertyScopes); - - return <<name} implements \Symfony\Component\VarExporter\LazyObjectInterface - { - use \Symfony\Component\VarExporter\LazyGhostTrait; - - private const LAZY_OBJECT_PROPERTY_SCOPES = {$propertyScopes}; - {$hooks}} - - // Help opcache.preload discover always-needed symbols - class_exists(\Symfony\Component\VarExporter\Internal\Hydrator::class); - class_exists(\Symfony\Component\VarExporter\Internal\LazyObjectRegistry::class); - class_exists(\Symfony\Component\VarExporter\Internal\LazyObjectState::class); - - EOPHP; - } - - /** - * Helps generate lazy-loading virtual proxies. - * - * @param \ReflectionClass[] $interfaces - * - * @throws LogicException When the class is incompatible with virtual proxies - */ - public static function generateLazyProxy(?\ReflectionClass $class, array $interfaces = []): string - { - if (!class_exists($class?->name ?? \stdClass::class, false)) { - throw new LogicException(\sprintf('Cannot generate lazy proxy: "%s" is not a class.', $class->name)); - } - if ($class?->isFinal()) { - throw new LogicException(\sprintf('Cannot generate lazy proxy: class "%s" is final.', $class->name)); - } - if (\PHP_VERSION_ID >= 80200 && \PHP_VERSION_ID < 80300 && $class?->isReadOnly()) { - throw new LogicException(\sprintf('Cannot generate lazy proxy with PHP < 8.3: class "%s" is readonly.', $class->name)); - } - - $propertyScopes = $class ? Hydrator::$propertyScopes[$class->name] ??= Hydrator::getPropertyScopes($class->name) : []; - $abstractProperties = []; - $hookedProperties = []; - if (\PHP_VERSION_ID >= 80400 && $class) { - foreach ($propertyScopes as $key => [$scope, $name, , $access]) { - $propertyScopes[$k = "\0$scope\0$name"] ?? $propertyScopes[$k = "\0*\0$name"] ?? $k = $name; - $flags = $access >> 2; - - if ($k !== $key) { - continue; - } - - if ($flags & \ReflectionProperty::IS_ABSTRACT) { - $abstractProperties[$name] = $propertyScopes[$k][4] ?? Hydrator::$propertyScopes[$class->name][$k][4] = new \ReflectionProperty($scope, $name); - continue; - } - $abstractProperties[$name] = false; - - if (!($access & Hydrator::PROPERTY_HAS_HOOKS) || $flags & \ReflectionProperty::IS_VIRTUAL) { - continue; - } - - if ($flags & (\ReflectionProperty::IS_FINAL | \ReflectionProperty::IS_PRIVATE)) { - throw new LogicException(\sprintf('Cannot generate lazy proxy: property "%s::$%s" is final or private(set).', $class->name, $name)); - } - - $p = $propertyScopes[$k][4] ?? Hydrator::$propertyScopes[$class->name][$k][4] = new \ReflectionProperty($scope, $name); - $hookedProperties[$name] = [$p, $p->getHooks()]; - } - } - - $methodReflectors = [$class?->getMethods(\ReflectionMethod::IS_PUBLIC | \ReflectionMethod::IS_PROTECTED) ?? []]; - foreach ($interfaces as $interface) { - if (!$interface->isInterface()) { - throw new LogicException(\sprintf('Cannot generate lazy proxy: "%s" is not an interface.', $interface->name)); - } - $methodReflectors[] = $interface->getMethods(); - - if (\PHP_VERSION_ID >= 80400) { - foreach ($interface->getProperties() as $p) { - $abstractProperties[$p->name] ??= $p; - $hookedProperties[$p->name] ??= [$p, []]; - $hookedProperties[$p->name][1] += $p->getHooks(); - } - } - } - - $hooks = ''; - - foreach (array_filter($abstractProperties) as $name => $p) { - $type = self::exportType($p); - $hooks .= "\n " - .($p->isProtected() ? 'protected' : 'public') - .($p->isProtectedSet() ? ' protected(set)' : '') - ." {$type} \${$name};\n"; - } - - foreach ($hookedProperties as $name => [$p, $methods]) { - $type = self::exportType($p); - $hooks .= "\n " - .($p->isProtected() ? 'protected' : 'public') - .($p->isProtectedSet() ? ' protected(set)' : '') - ." {$type} \${$name} {\n"; - - foreach ($methods as $hook => $method) { - if ('get' === $hook) { - $ref = ($method->returnsReference() ? '&' : ''); - $hooks .= <<lazyObjectState)) { - return (\$this->lazyObjectState->realInstance ??= (\$this->lazyObjectState->initializer)())->{$p->name}; - } - - return parent::\${$p->name}::get(); - } - - EOPHP; - } elseif ('set' === $hook) { - $parameters = self::exportParameters($method, true); - $arg = '$'.$method->getParameters()[0]->name; - $hooks .= <<lazyObjectState)) { - \$this->lazyObjectState->realInstance ??= (\$this->lazyObjectState->initializer)(); - \$this->lazyObjectState->realInstance->{$p->name} = {$arg}; - } - - parent::\${$p->name}::set({$arg}); - } - - EOPHP; - } else { - throw new LogicException(\sprintf('Cannot generate lazy proxy: hook "%s::%s()" is not supported.', $class->name, $method->name)); - } - } - - $hooks .= " }\n"; - } - - $extendsInternalClass = false; - if ($parent = $class) { - do { - $extendsInternalClass = \stdClass::class !== $parent->name && $parent->isInternal(); - } while (!$extendsInternalClass && $parent = $parent->getParentClass()); - } - $methodsHaveToBeProxied = $extendsInternalClass; - $methods = []; - $methodReflectors = array_merge(...$methodReflectors); - - foreach ($methodReflectors as $method) { - if ('__get' !== strtolower($method->name) || 'mixed' === ($type = self::exportType($method) ?? 'mixed')) { - continue; - } - $methodsHaveToBeProxied = true; - $trait = new \ReflectionMethod(LazyProxyTrait::class, '__get'); - $body = \array_slice(file($trait->getFileName()), $trait->getStartLine() - 1, $trait->getEndLine() - $trait->getStartLine()); - $body[0] = str_replace('): mixed', '): '.$type, $body[0]); - $methods['__get'] = strtr(implode('', $body).' }', [ - 'Hydrator' => '\\'.Hydrator::class, - 'Registry' => '\\'.LazyObjectRegistry::class, - ]); - break; - } - - foreach ($methodReflectors as $method) { - if (($method->isStatic() && !$method->isAbstract()) || isset($methods[$lcName = strtolower($method->name)])) { - continue; - } - if ($method->isFinal()) { - if ($extendsInternalClass || $methodsHaveToBeProxied || method_exists(LazyProxyTrait::class, $method->name)) { - throw new LogicException(\sprintf('Cannot generate lazy proxy: method "%s::%s()" is final.', $class->name, $method->name)); - } - continue; - } - if (method_exists(LazyProxyTrait::class, $method->name) || ($method->isProtected() && !$method->isAbstract())) { - continue; - } - - $signature = self::exportSignature($method, true, $args); - $parentCall = $method->isAbstract() ? "throw new \BadMethodCallException('Cannot forward abstract method \"{$method->class}::{$method->name}()\".')" : "parent::{$method->name}({$args})"; - - if ($method->isStatic()) { - $body = " $parentCall;"; - } elseif (str_ends_with($signature, '): never') || str_ends_with($signature, '): void')) { - $body = <<lazyObjectState)) { - (\$this->lazyObjectState->realInstance ??= (\$this->lazyObjectState->initializer)())->{$method->name}({$args}); - } else { - {$parentCall}; - } - EOPHP; - } else { - if (!$methodsHaveToBeProxied && !$method->isAbstract()) { - // Skip proxying methods that might return $this - foreach (preg_split('/[()|&]++/', self::exportType($method) ?? 'static') as $type) { - if (\in_array($type = ltrim($type, '?'), ['static', 'object'], true)) { - continue 2; - } - foreach ([$class, ...$interfaces] as $r) { - if ($r && is_a($r->name, $type, true)) { - continue 3; - } - } - } - } - - $body = <<lazyObjectState)) { - return (\$this->lazyObjectState->realInstance ??= (\$this->lazyObjectState->initializer)())->{$method->name}({$args}); - } - - return {$parentCall}; - EOPHP; - } - $methods[$lcName] = " {$signature}\n {\n{$body}\n }"; - } - - $types = $interfaces = array_unique(array_column($interfaces, 'name')); - $interfaces[] = LazyObjectInterface::class; - $interfaces = implode(', \\', $interfaces); - $parent = $class ? ' extends \\'.$class->name : ''; - array_unshift($types, $class ? 'parent' : ''); - $type = ltrim(implode('&\\', $types), '&'); - - if (!$class) { - $trait = new \ReflectionMethod(LazyProxyTrait::class, 'initializeLazyObject'); - $body = \array_slice(file($trait->getFileName()), $trait->getStartLine() - 1, $trait->getEndLine() - $trait->getStartLine()); - $body[0] = str_replace('): parent', '): '.$type, $body[0]); - $methods = ['initializeLazyObject' => implode('', $body).' }'] + $methods; - } - $body = $methods ? "\n".implode("\n\n", $methods)."\n" : ''; - $propertyScopes = $class ? self::exportPropertyScopes($class->name, $propertyScopes) : '[]'; - - if ( - $class?->hasMethod('__unserialize') - && !$class->getMethod('__unserialize')->getParameters()[0]->getType() - ) { - // fix contravariance type problem when $class declares a `__unserialize()` method without typehint. - $lazyProxyTraitStatement = <<__doUnserialize(\$data); - } - - EOPHP; - } else { - $lazyProxyTraitStatement = <<class : $function->getNamespaceName().'\\'; - $namespace = substr($namespace, 0, strrpos($namespace, '\\') ?: 0); - foreach ($function->getParameters() as $param) { - $parameters[] = ($param->getAttributes(\SensitiveParameter::class) ? '#[\SensitiveParameter] ' : '') - .($withParameterTypes && $param->hasType() ? self::exportType($param).' ' : '') - .($param->isPassedByReference() ? '&' : '') - .($param->isVariadic() ? '...' : '').'$'.$param->name - .($param->isOptional() && !$param->isVariadic() ? ' = '.self::exportDefault($param, $namespace) : ''); - if ($param->isPassedByReference()) { - $byRefIndex = 1 + $param->getPosition(); - } - $args .= ($param->isVariadic() ? '...$' : '$').$param->name.', '; - } - - if (!$param || !$byRefIndex) { - $args = '...\func_get_args()'; - } elseif ($param->isVariadic()) { - $args = substr($args, 0, -2); - } else { - $args = explode(', ', $args, 1 + $byRefIndex); - $args[$byRefIndex] = \sprintf('...\array_slice(\func_get_args(), %d)', $byRefIndex); - $args = implode(', ', $args); - } - - return implode(', ', $parameters); - } - - public static function exportSignature(\ReflectionFunctionAbstract $function, bool $withParameterTypes = true, ?string &$args = null): string - { - $parameters = self::exportParameters($function, $withParameterTypes, $args); - - $signature = 'function '.($function->returnsReference() ? '&' : '') - .($function->isClosure() ? '' : $function->name).'('.$parameters.')'; - - if ($function instanceof \ReflectionMethod) { - $signature = ($function->isPublic() ? 'public ' : ($function->isProtected() ? 'protected ' : 'private ')) - .($function->isStatic() ? 'static ' : '').$signature; - } - if ($function->hasReturnType()) { - $signature .= ': '.self::exportType($function); - } - - static $getPrototype; - $getPrototype ??= (new \ReflectionMethod(\ReflectionMethod::class, 'getPrototype'))->invoke(...); - - while ($function) { - if ($function->hasTentativeReturnType()) { - return '#[\ReturnTypeWillChange] '.$signature; - } - - try { - $function = $function instanceof \ReflectionMethod && $function->isAbstract() ? false : $getPrototype($function); - } catch (\ReflectionException) { - break; - } - } - - return $signature; - } - - public static function exportType(\ReflectionFunctionAbstract|\ReflectionProperty|\ReflectionParameter $owner, bool $noBuiltin = false, ?\ReflectionType $type = null): ?string - { - if (!$type ??= $owner instanceof \ReflectionFunctionAbstract ? $owner->getReturnType() : $owner->getType()) { - return null; - } - $class = null; - $types = []; - if ($type instanceof \ReflectionUnionType) { - $reflectionTypes = $type->getTypes(); - $glue = '|'; - } elseif ($type instanceof \ReflectionIntersectionType) { - $reflectionTypes = $type->getTypes(); - $glue = '&'; - } else { - $reflectionTypes = [$type]; - $glue = null; - } - - foreach ($reflectionTypes as $type) { - if ($type instanceof \ReflectionIntersectionType) { - if ('' !== $name = '('.self::exportType($owner, $noBuiltin, $type).')') { - $types[] = $name; - } - continue; - } - $name = $type->getName(); - - if ($noBuiltin && $type->isBuiltin()) { - continue; - } - if (\in_array($name, ['parent', 'self'], true) && $class ??= $owner->getDeclaringClass()) { - $name = 'parent' === $name ? ($class->getParentClass() ?: null)?->name ?? 'parent' : $class->name; - } - - $types[] = ($noBuiltin || $type->isBuiltin() || 'static' === $name ? '' : '\\').$name; - } - - if (!$types) { - return ''; - } - if (null === $glue) { - $defaultNull = $owner instanceof \ReflectionParameter && 'NULL' === rtrim(substr(explode('$'.$owner->name.' = ', (string) $owner, 2)[1] ?? '', 0, -2)); - - return (!$noBuiltin && ($type->allowsNull() || $defaultNull) && !\in_array($name, ['mixed', 'null'], true) ? '?' : '').$types[0]; - } - sort($types); - - return implode($glue, $types); - } - - private static function exportPropertyScopes(string $parent, array $propertyScopes): string - { - uksort($propertyScopes, 'strnatcmp'); - foreach ($propertyScopes as $k => $v) { - unset($propertyScopes[$k][4]); - } - $propertyScopes = VarExporter::export($propertyScopes); - $propertyScopes = str_replace(VarExporter::export($parent), 'parent::class', $propertyScopes); - $propertyScopes = preg_replace("/(?|(,)\n( ) |\n |,\n (\]))/", '$1$2', $propertyScopes); - $propertyScopes = str_replace("\n", "\n ", $propertyScopes); - - return $propertyScopes; - } - - private static function exportDefault(\ReflectionParameter $param, $namespace): string - { - $default = rtrim(substr(explode('$'.$param->name.' = ', (string) $param, 2)[1] ?? '', 0, -2)); - - if (\in_array($default, ['', 'NULL'], true)) { - return 'null'; - } - if (str_ends_with($default, "...'") && preg_match("/^'(?:[^'\\\\]*+(?:\\\\.)*+)*+'$/", $default)) { - return VarExporter::export($param->getDefaultValue()); - } - - $regexp = "/(\"(?:[^\"\\\\]*+(?:\\\\.)*+)*+\"|'(?:[^'\\\\]*+(?:\\\\.)*+)*+')/"; - $parts = preg_split($regexp, $default, -1, \PREG_SPLIT_DELIM_CAPTURE | \PREG_SPLIT_NO_EMPTY); - - $regexp = '/([\[\( ]|^)([a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*+(?:\\\\[a-zA-Z0-9_\x7f-\xff]++)*+)(\(?)(?!: )/'; - $callback = (false !== strpbrk($default, "\\:('") && $class = $param->getDeclaringClass()) - ? fn ($m) => $m[1].match ($m[2]) { - 'new', 'false', 'true', 'null' => $m[2], - 'NULL' => 'null', - 'self' => '\\'.$class->name, - 'namespace\\parent', - 'parent' => ($parent = $class->getParentClass()) ? '\\'.$parent->name : 'parent', - default => self::exportSymbol($m[2], '(' !== $m[3], $namespace), - }.$m[3] - : fn ($m) => $m[1].match ($m[2]) { - 'new', 'false', 'true', 'null', 'self', 'parent' => $m[2], - 'NULL' => 'null', - default => self::exportSymbol($m[2], '(' !== $m[3], $namespace), - }.$m[3]; - - return implode('', array_map(fn ($part) => match ($part[0]) { - '"' => $part, // for internal classes only - "'" => false !== strpbrk($part, "\\\0\r\n") ? '"'.substr(str_replace(['$', "\0", "\r", "\n"], ['\$', '\0', '\r', '\n'], $part), 1, -1).'"' : $part, - default => preg_replace_callback($regexp, $callback, $part), - }, $parts)); - } - - private static function exportSymbol(string $symbol, bool $mightBeRootConst, string $namespace): string - { - if (!$mightBeRootConst - || false === ($ns = strrpos($symbol, '\\')) - || substr($symbol, 0, $ns) !== $namespace - || \defined($symbol) - || !\defined(substr($symbol, $ns + 1)) - ) { - return '\\'.$symbol; - } - - return '\\'.substr($symbol, $ns + 1); - } -} diff --git a/vendor/symfony/var-exporter/README.md b/vendor/symfony/var-exporter/README.md index 7195270..a34e4c2 100644 --- a/vendor/symfony/var-exporter/README.md +++ b/vendor/symfony/var-exporter/README.md @@ -1,22 +1,15 @@ VarExporter Component ===================== -The VarExporter component provides various tools to deal with the internal state -of objects: +The VarExporter component allows exporting any serializable PHP data structure to +plain PHP code. While doing so, it preserves all the semantics associated with +the serialization mechanism of PHP (`__wakeup`, `__sleep`, `Serializable`, +`__serialize`, `__unserialize`). -- `VarExporter::export()` allows exporting any serializable PHP data structure to - plain PHP code. While doing so, it preserves all the semantics associated with - the serialization mechanism of PHP (`__wakeup`, `__sleep`, `Serializable`, - `__serialize`, `__unserialize`); -- `Instantiator::instantiate()` creates an object and sets its properties without - calling its constructor nor any other methods; -- `Hydrator::hydrate()` can set the properties of an existing object; -- `Lazy*Trait` can make a class behave as a lazy-loading ghost or virtual proxy. +It also provides an instantiator that allows creating and populating objects +without calling their constructor nor any other methods. -VarExporter::export() ---------------------- - -The reason to use `VarExporter::export()` *vs* `serialize()` or +The reason to use this component *vs* `serialize()` or [igbinary](https://github.com/igbinary/igbinary) is performance: thanks to OPcache, the resulting code is significantly faster and more memory efficient than using `unserialize()` or `igbinary_unserialize()`. @@ -26,107 +19,15 @@ Unlike `var_export()`, this works on any serializable PHP value. It also provides a few improvements over `var_export()`/`serialize()`: * the output is PSR-2 compatible; - * the output can be re-indented without messing up with `\r` or `\n` in the data; - * missing classes throw a `ClassNotFoundException` instead of being unserialized - to `PHP_Incomplete_Class` objects; + * the output can be re-indented without messing up with `\r` or `\n` in the data + * missing classes throw a `ClassNotFoundException` instead of being unserialized to + `PHP_Incomplete_Class` objects; * references involving `SplObjectStorage`, `ArrayObject` or `ArrayIterator` instances are preserved; * `Reflection*`, `IteratorIterator` and `RecursiveIteratorIterator` classes throw an exception when being serialized (their unserialized version is broken anyway, see https://bugs.php.net/76737). -Instantiator and Hydrator -------------------------- - -`Instantiator::instantiate($class)` creates an object of the given class without -calling its constructor nor any other methods. - -`Hydrator::hydrate()` sets the properties of an existing object, including -private and protected ones. For example: - -```php -// Sets the public or protected $object->propertyName property -Hydrator::hydrate($object, ['propertyName' => $propertyValue]); - -// Sets a private property defined on its parent Bar class: -Hydrator::hydrate($object, ["\0Bar\0privateBarProperty" => $propertyValue]); - -// Alternative way to set the private $object->privateBarProperty property -Hydrator::hydrate($object, [], [ - Bar::class => ['privateBarProperty' => $propertyValue], -]); -``` - -`Lazy*Trait` ------------- - -The component provides two lazy-loading patterns: ghost objects and virtual -proxies (see https://martinfowler.com/eaaCatalog/lazyLoad.html for reference). - -Ghost objects work only with concrete and non-internal classes. In the generic -case, they are not compatible with using factories in their initializer. - -Virtual proxies work with concrete, abstract or internal classes. They provide an -API that looks like the actual objects and forward calls to them. They can cause -identity problems because proxies might not be seen as equivalents to the actual -objects they proxy. - -Because of this identity problem, ghost objects should be preferred when -possible. Exceptions thrown by the `ProxyHelper` class can help decide when it -can be used or not. - -Ghost objects and virtual proxies both provide implementations for the -`LazyObjectInterface` which allows resetting them to their initial state or to -forcibly initialize them when needed. Note that resetting a ghost object skips -its read-only properties. You should use a virtual proxy to reset read-only -properties. - -### `LazyGhostTrait` - -By using `LazyGhostTrait` either directly in your classes or by using -`ProxyHelper::generateLazyGhost()`, you can make their instances lazy-loadable. -This works by creating these instances empty and by computing their state only -when accessing a property. - -```php -class FooLazyGhost extends Foo -{ - use LazyGhostTrait; -} - -$foo = FooLazyGhost::createLazyGhost(initializer: function (Foo $instance): void { - // [...] Use whatever heavy logic you need here - // to compute the $dependencies of the $instance - $instance->__construct(...$dependencies); - // [...] Call setters, etc. if needed -}); - -// $foo is now a lazy-loading ghost object. The initializer will -// be called only when and if a *property* is accessed. -``` - -### `LazyProxyTrait` - -Alternatively, `LazyProxyTrait` can be used to create virtual proxies: - -```php -$proxyCode = ProxyHelper::generateLazyProxy(new ReflectionClass(Foo::class)); -// $proxyCode contains the reference to LazyProxyTrait -// and should be dumped into a file in production envs -eval('class FooLazyProxy'.$proxyCode); - -$foo = FooLazyProxy::createLazyProxy(initializer: function (): Foo { - // [...] Use whatever heavy logic you need here - // to compute the $dependencies of the $instance - $instance = new Foo(...$dependencies); - // [...] Call setters, etc. if needed - - return $instance; -}); -// $foo is now a lazy-loading virtual proxy object. The initializer will -// be called only when and if a *method* is called. -``` - Resources --------- diff --git a/vendor/symfony/var-exporter/VarExporter.php b/vendor/symfony/var-exporter/VarExporter.php index 22e9b51..3e2a4cc 100644 --- a/vendor/symfony/var-exporter/VarExporter.php +++ b/vendor/symfony/var-exporter/VarExporter.php @@ -32,12 +32,12 @@ final class VarExporter /** * Exports a serializable PHP value to PHP code. * - * @param bool &$isStaticValue Set to true after execution if the provided value is static, false otherwise - * @param array &$foundClasses Classes found in the value are added to this list as both keys and values + * @param bool &$isStaticValue Set to true after execution if the provided value is static, false otherwise + * @param bool &$classes Classes found in the value are added to this list as both keys and values * * @throws ExceptionInterface When the provided value cannot be serialized */ - public static function export(mixed $value, ?bool &$isStaticValue = null, array &$foundClasses = []): string + public static function export(mixed $value, bool &$isStaticValue = null, array &$foundClasses = []): string { $isStaticValue = true; @@ -82,7 +82,7 @@ final class VarExporter ksort($states); $wakeups = [null]; - foreach ($states as $v) { + foreach ($states as $k => $v) { if (\is_array($v)) { $wakeups[-$v[0]] = $v[1]; } else { diff --git a/vendor/symfony/var-exporter/composer.json b/vendor/symfony/var-exporter/composer.json index e7b0fb0..3bf21a6 100644 --- a/vendor/symfony/var-exporter/composer.json +++ b/vendor/symfony/var-exporter/composer.json @@ -2,7 +2,7 @@ "name": "symfony/var-exporter", "type": "library", "description": "Allows exporting any serializable PHP data structure to plain PHP code", - "keywords": ["export", "serialize", "instantiate", "hydrate", "construct", "clone", "lazy-loading", "proxy"], + "keywords": ["export", "serialize", "instantiate", "hydrate", "construct", "clone"], "homepage": "https://symfony.com", "license": "MIT", "authors": [ @@ -16,13 +16,10 @@ } ], "require": { - "php": ">=8.1", - "symfony/deprecation-contracts": "^2.5|^3" + "php": ">=8.0.2" }, "require-dev": { - "symfony/property-access": "^6.4|^7.0", - "symfony/serializer": "^6.4|^7.0", - "symfony/var-dumper": "^5.4|^6.0|^7.0" + "symfony/var-dumper": "^5.4|^6.0" }, "autoload": { "psr-4": { "Symfony\\Component\\VarExporter\\": "" }, diff --git a/vendor/workerman/_www_wwwroot_fengketrade_think.pid b/vendor/workerman/_www_wwwroot_fengketrade_think.pid new file mode 100644 index 0000000..4a79507 --- /dev/null +++ b/vendor/workerman/_www_wwwroot_fengketrade_think.pid @@ -0,0 +1 @@ +584743 \ No newline at end of file diff --git a/vendor/workerman/channel/README.md b/vendor/workerman/channel/README.md new file mode 100644 index 0000000..0a4f7d8 --- /dev/null +++ b/vendor/workerman/channel/README.md @@ -0,0 +1,101 @@ +# Channel +基于订阅的多进程通讯组件,用于workerman进程间通讯或者服务器集群通讯,类似redis订阅发布机制。基于workerman开发。 + +Channel 提供两种通讯形式,分别是发布订阅的事件机制和消息队列机制。 + +它们的主要区别是: +- 事件机制是消息发出后,所有订阅该事件的客户端都能收到消息。 +- 消息队列机制是消息发出后,所有订阅该消息的客户端只有一个会收到消息,如果客户端忙消息会进行排队直到有客户端闲置后重新取到消息。 +- 需要注意的是 Channel 只是提供一种通讯方式,本身并不提供消息确认、重试、延迟、持久化等功能,请根据实际情况合理使用。 + +# 手册地址 +[Channel手册](http://doc.workerman.net/components/channel.html) + +# 服务端 +```php +use Workerman\Worker; + +//Tcp 通讯方式 +$channel_server = new Channel\Server('0.0.0.0', 2206); + +//Unix Domain Socket 通讯方式 +//$channel_server = new Channel\Server('unix:///tmp/workerman-channel.sock'); + +if(!defined('GLOBAL_START')) +{ + Worker::runAll(); +} +``` + +# 客户端 +```php +use Workerman\Worker; + +$worker = new Worker(); +$worker->onWorkerStart = function() +{ + // Channel客户端连接到Channel服务端 + Channel\Client::connect('', 2206); + + // 使用 Unix Domain Socket 通讯 + //Channel\Client::connect('unix:///tmp/workerman-channel.sock'); + + // 要订阅的事件名称(名称可以为任意的数字和字符串组合) + $event_name = 'event_xxxx'; + // 订阅某个自定义事件并注册回调,收到事件后会自动触发此回调 + Channel\Client::on($event_name, function($event_data){ + var_dump($event_data); + }); +}; +$worker->onMessage = function($connection, $data) +{ + // 要发布的事件名称 + $event_name = 'event_xxxx'; + // 事件数据(数据格式可以为数字、字符串、数组),会传递给客户端回调函数作为参数 + $event_data = array('some data.', 'some data..'); + // 发布某个自定义事件,订阅这个事件的客户端会收到事件数据,并触发客户端对应的事件回调 + Channel\Client::publish($event_name, $event_data); +}; + +if(!defined('GLOBAL_START')) +{ + Worker::runAll(); +} +```` + +## 消息队列示例 +```php +use Workerman\Worker; +use Workerman\Timer; + +$worker = new Worker(); +$worker->name = 'Producer'; +$worker->onWorkerStart = function() +{ + Client::connect(); + + $count = 0; + Timer::add(1, function() { + Client::enqueue('queue', 'Hello World '.time()); + }); +}; + +$mq = new Worker(); +$mq->name = 'Consumer'; +$mq->count = 4; +$mq->onWorkerStart = function($worker) { + Client::connect(); + + //订阅消息 queue + Client::watch('queue', function($data) use ($worker) { + echo "Worker {$worker->id} get queue: $data\n"; + }); + + //10 秒后取消订阅该消息 + Timer::add(10, function() { + Client::unwatch('queue'); + }, [], false); +}; + +Worker::runAll(); +``` \ No newline at end of file diff --git a/vendor/workerman/channel/composer.json b/vendor/workerman/channel/composer.json new file mode 100644 index 0000000..df63a66 --- /dev/null +++ b/vendor/workerman/channel/composer.json @@ -0,0 +1,12 @@ +{ + "name" : "workerman/channel", + "type" : "library", + "homepage": "http://www.workerman.net", + "license" : "MIT", + "require": { + "workerman/workerman" : ">=4.0.12" + }, + "autoload": { + "psr-4": {"Channel\\": "./src"} + } +} diff --git a/vendor/workerman/channel/src/Client.php b/vendor/workerman/channel/src/Client.php new file mode 100644 index 0000000..add1ec4 --- /dev/null +++ b/vendor/workerman/channel/src/Client.php @@ -0,0 +1,393 @@ +protocol = Frame::class; + } + + $conn->onClose = [self::class, 'onRemoteClose']; + $conn->onConnect = [self::class, 'onRemoteConnect']; + $conn->onMessage = [self::class , 'onRemoteMessage']; + $conn->connect(); + + if (empty(self::$_pingTimer)) { + self::$_pingTimer = Timer::add(self::$pingInterval, 'Channel\Client::ping'); + } + // Not workerman environment. + } else { + $remote = strpos($ip, 'unix://') === false ? 'tcp://'.self::$_remoteIp.':'.self::$_remotePort : $ip; + $conn = stream_socket_client($remote, $code, $message, 5); + if (!$conn) { + throw new \Exception($message); + } + } + + self::$_remoteConnection = $conn; + } + + /** + * onRemoteMessage. + * @param \Workerman\Connection\TcpConnection $connection + * @param string $data + * @throws \Exception + */ + public static function onRemoteMessage($connection, $data) + { + $data = unserialize($data); + $type = $data['type']; + $event = $data['channel']; + $event_data = $data['data']; + + $callback = null; + + if ($type == 'event') { + if (!empty(self::$_events[$event])) { + call_user_func(self::$_events[$event], $event_data); + } elseif (!empty(Client::$onMessage)) { + call_user_func(Client::$onMessage, $event, $event_data); + } else { + throw new \Exception("event:$event have not callback"); + } + } else { + if (isset(self::$_queues[$event])) { + call_user_func(self::$_queues[$event], $event_data); + } else { + throw new \Exception("queue:$event have not callback"); + } + } + } + + /** + * Ping. + * @return void + */ + public static function ping() + { + if(self::$_remoteConnection) + { + self::$_remoteConnection->send(''); + } + } + + /** + * onRemoteClose. + * @return void + */ + public static function onRemoteClose() + { + Timer::add(0.5, function() { + echo "Waring channel connection closed and try to reconnect\n"; + }, array(), false); + self::$_remoteConnection = null; + self::clearTimer(); + self::$_reconnectTimer = Timer::add(1, 'Channel\Client::connect', array(self::$_remoteIp, self::$_remotePort)); + if (self::$onClose) { + call_user_func(Client::$onClose); + } + } + + /** + * onRemoteConnect. + * @return void + */ + public static function onRemoteConnect() + { + $all_event_names = array_keys(self::$_events); + if($all_event_names) + { + self::subscribe($all_event_names); + } + self::clearTimer(); + + if (self::$onConnect) { + call_user_func(Client::$onConnect); + } + } + + /** + * clearTimer. + * @return void + */ + public static function clearTimer() + { + if (!self::$_isWorkermanEnv) { + throw new \Exception('Channel\\Client not support clearTimer method when it is not in the workerman environment.'); + } + if(self::$_reconnectTimer) + { + Timer::del(self::$_reconnectTimer); + self::$_reconnectTimer = null; + } + } + + /** + * On. + * @param string $event + * @param callback $callback + * @throws \Exception + */ + public static function on($event, $callback) + { + if (!is_callable($callback)) { + throw new \Exception('callback is not callable for event.'); + } + self::$_events[$event] = $callback; + self::subscribe($event); + } + + /** + * Subscribe. + * @param string $events + * @return void + */ + public static function subscribe($events) + { + $events = (array)$events; + self::send(array('type' => 'subscribe', 'channels'=>$events)); + foreach ($events as $event) { + if(!isset(self::$_events[$event])) { + self::$_events[$event] = null; + } + } + } + + /** + * Unsubscribe. + * @param string $events + * @return void + */ + public static function unsubscribe($events) + { + $events = (array)$events; + self::send(array('type' => 'unsubscribe', 'channels'=>$events)); + foreach($events as $event) { + unset(self::$_events[$event]); + } + } + + /** + * Publish. + * @param string $events + * @param mixed $data + */ + public static function publish($events, $data , $is_loop = false) + { + $type = $is_loop == true ? 'publishLoop' : 'publish'; + self::sendAnyway(array('type' => $type, 'channels' => (array)$events, 'data' => $data)); + } + + /** + * Watch a channel of queue + * @param string|array $channels + * @param callable $callback + * @param boolean $autoReserve Auto reserve after callback finished. + * But sometime you may don't want reserve immediately, or in some asynchronous job, + * you want reserve in finished callback, so you should set $autoReserve to false + * and call Client::reserve() after watch() and in finish callback manually. + * @throws \Exception + */ + public static function watch($channels, $callback, $autoReserve=true) + { + if (!is_callable($callback)) { + throw new \Exception('callback is not callable for watch.'); + } + + if ($autoReserve) { + $callback = static function($data) use ($callback) { + try { + call_user_func($callback, $data); + } catch (\Exception $e) { + throw $e; + } catch (\Error $e) { + throw $e; + } finally { + self::reserve(); + } + }; + } + + $channels = (array)$channels; + self::send(array('type' => 'watch', 'channels'=>$channels)); + + foreach ($channels as $channel) { + self::$_queues[$channel] = $callback; + } + + if ($autoReserve) { + self::reserve(); + } + } + + /** + * Unwatch a channel of queue + * @param string $channel + * @throws \Exception + */ + public static function unwatch($channels) + { + $channels = (array)$channels; + self::send(array('type' => 'unwatch', 'channels'=>$channels)); + foreach ($channels as $channel) { + if (isset(self::$_queues[$channel])) { + unset(self::$_queues[$channel]); + } + } + } + + /** + * Put data to queue + * @param string|array $channels + * @param mixed $data + * @throws \Exception + */ + public static function enqueue($channels, $data) + { + self::sendAnyway(array('type' => 'enqueue', 'channels' => (array)$channels, 'data' => $data)); + } + + /** + * Start reserve queue manual + * @throws \Exception + */ + public static function reserve() + { + self::send(array('type' => 'reserve')); + } + + /** + * Send through workerman environment + * @param $data + * @throws \Exception + */ + protected static function send($data) + { + if (!self::$_isWorkermanEnv) { + throw new \Exception("Channel\\Client not support {$data['type']} method when it is not in the workerman environment."); + } + self::connect(self::$_remoteIp, self::$_remotePort); + self::$_remoteConnection->send(serialize($data)); + } + + /** + * Send from any environment + * @param $data + * @throws \Exception + */ + protected static function sendAnyway($data) + { + self::connect(self::$_remoteIp, self::$_remotePort); + $body = serialize($data); + if (self::$_isWorkermanEnv) { + self::$_remoteConnection->send($body); + } else { + $buffer = pack('N', 4+strlen($body)) . $body; + fwrite(self::$_remoteConnection, $buffer); + } + } + +} diff --git a/vendor/workerman/channel/src/Queue.php b/vendor/workerman/channel/src/Queue.php new file mode 100644 index 0000000..3b1b56e --- /dev/null +++ b/vendor/workerman/channel/src/Queue.php @@ -0,0 +1,89 @@ +name = $name; + $this->queue = new \SplQueue(); + } + + /** + * @param TcpConnection $connection + */ + public function addWatch($connection) + { + if (!isset($this->watcher[$connection->id])) { + $this->watcher[$connection->id] = $connection; + $connection->watchs[] = $this->name; + } + } + + /** + * @param TcpConnection $connection + */ + public function removeWatch($connection) + { + if (isset($connection->watchs) && in_array($this->name, $connection->watchs)) { + $idx = array_search($this->name, $connection->watchs); + unset($connection->watchs[$idx]); + } + if (isset($this->watcher[$connection->id])) { + unset($this->watcher[$connection->id]); + } + if (isset($this->consumer[$connection->id])) { + unset($this->consumer[$connection->id]); + } + } + + /** + * @param TcpConnection $connection + */ + public function addConsumer($connection) + { + if (isset($this->watcher[$connection->id]) && !isset($this->consumer[$connection->id])) { + $this->consumer[$connection->id] = $connection; + } + $this->dispatch(); + } + + public function enqueue($data) + { + $this->queue->enqueue($data); + $this->dispatch(); + } + + private function dispatch() + { + if ($this->queue->isEmpty() || count($this->consumer) == 0) { + return; + } + + while (!$this->queue->isEmpty()) { + $data = $this->queue->dequeue(); + $idx = key($this->consumer); + $connection = $this->consumer[$idx]; + unset($this->consumer[$idx]); + $connection->send(serialize(array('type'=>'queue', 'channel'=>$this->name, 'data' => $data))); + if (count($this->consumer) == 0) { + break; + } + } + } + + public function isEmpty() + { + return empty($this->watcher) && $this->queue->isEmpty(); + } + +} \ No newline at end of file diff --git a/vendor/workerman/channel/src/Server.php b/vendor/workerman/channel/src/Server.php new file mode 100644 index 0000000..1bb9f93 --- /dev/null +++ b/vendor/workerman/channel/src/Server.php @@ -0,0 +1,179 @@ +protocol = Frame::class; + } + $this->ip = $ip; + $worker->count = 1; + $worker->name = 'ChannelServer'; + $worker->channels = array(); + $worker->onMessage = array($this, 'onMessage') ; + $worker->onClose = array($this, 'onClose'); + $this->_worker = $worker; + } + + /** + * onClose + * @return void + */ + public function onClose($connection) + { + if (!empty($connection->channels)) { + foreach ($connection->channels as $channel) { + unset($this->_worker->channels[$channel][$connection->id]); + if (empty($this->_worker->channels[$channel])) { + unset($this->_worker->channels[$channel]); + } + } + } + + if (!empty($connection->watchs)) { + foreach ($connection->watchs as $channel) { + if (isset($this->_queues[$channel])) { + $this->_queues[$channel]->removeWatch($connection); + if ($this->_queues[$channel]->isEmpty()) { + unset($this->_queues[$channel]); + } + } + } + } + } + + /** + * onMessage. + * @param \Workerman\Connection\TcpConnection $connection + * @param string $data + */ + public function onMessage($connection, $data) + { + if(!$data) + { + return; + } + $worker = $this->_worker; + $data = unserialize($data); + $type = $data['type']; + switch($type) + { + case 'subscribe': + foreach($data['channels'] as $channel) + { + $connection->channels[$channel] = $channel; + $worker->channels[$channel][$connection->id] = $connection; + } + break; + case 'unsubscribe': + foreach($data['channels'] as $channel) { + if (isset($connection->channels[$channel])) { + unset($connection->channels[$channel]); + } + if (isset($worker->channels[$channel][$connection->id])) { + unset($worker->channels[$channel][$connection->id]); + if (empty($worker->channels[$channel])) { + unset($worker->channels[$channel]); + } + } + } + break; + case 'publish': + foreach ($data['channels'] as $channel) { + if (empty($worker->channels[$channel])) { + continue; + } + $buffer = serialize(array('type' => 'event', 'channel' => $channel, 'data' => $data['data'])); + foreach ($worker->channels[$channel] as $connection) { + $connection->send($buffer); + } + } + break; + case 'publishLoop': + //choose one subscriber from the list + foreach ($data['channels'] as $channel) { + if (empty($worker->channels[$channel])) { + continue; + } + $buffer = serialize(array('type' => 'event', 'channel' => $channel, 'data' => $data['data'])); + + //这是要点,每次取出一个元素,如果取不到,说明已经到最后,重置到第一个 + $connection = next($worker->channels[$channel]); + if( $connection == false ){ + $connection = reset($worker->channels[$channel]); + } + $connection->send($buffer); + } + break; + case 'watch': + foreach ($data['channels'] as $channel) { + $this->getQueue($channel)->addWatch($connection); + } + break; + case 'unwatch': + foreach ($data['channels'] as $channel) { + if (isset($this->_queues[$channel])) { + $this->_queues[$channel]->removeWatch($connection); + if ($this->_queues[$channel]->isEmpty()) { + unset($this->_queues[$channel]); + } + } + } + break; + case 'enqueue': + foreach ($data['channels'] as $channel) { + $this->getQueue($channel)->enqueue($data['data']); + } + break; + case 'reserve': + if (isset($connection->watchs)) { + foreach ($connection->watchs as $channel) { + if (isset($this->_queues[$channel])) { + $this->_queues[$channel]->addConsumer($connection); + } + } + } + break; + } + } + + private function getQueue($channel) + { + if (isset($this->_queues[$channel])) { + return $this->_queues[$channel]; + } + return ($this->_queues[$channel] = new Queue($channel)); + } + +} diff --git a/vendor/workerman/channel/test/queue.php b/vendor/workerman/channel/test/queue.php new file mode 100644 index 0000000..72dbb63 --- /dev/null +++ b/vendor/workerman/channel/test/queue.php @@ -0,0 +1,53 @@ +name = 'Event'; +$worker->onWorkerStart = function() +{ + Client::connect(); + + $count = 0; + $timerId = Timer::add(0.01, function() use (&$timerId, &$count) { + Client::publish('test event', 'some data'); + $count++; + Client::enqueue('task-queue', time()); + if ($count == 1000) { + Timer::del($timerId); + } + }); + + Timer::add(10, function() { + Client::enqueue('task-queue', 'hello every 10 seconds'); + }); +}; + +$mq = new Worker(); +$mq->name = 'Queue'; +$mq->count = 4; +$mq->onWorkerStart = function($worker) { + Client::connect(); + $countDown = 20; + $id = 1; + Client::watch('task-queue', function($data) use ($worker, &$countDown, &$id) { + echo "[$id] Worker {$worker->id} get queue: $data\n"; + sleep(0.2); + $countDown--; + $id++; + if ($worker->id > 1 && $countDown == 0) { + Client::unwatch('task-queue'); + } + Timer::add(1, [Client::class, 'reserve'], [], false); + }); +}; + +Worker::runAll(); diff --git a/vendor/workerman/channel/test/server.php b/vendor/workerman/channel/test/server.php new file mode 100644 index 0000000..dbb9ca5 --- /dev/null +++ b/vendor/workerman/channel/test/server.php @@ -0,0 +1,28 @@ +onWorkerStart = function() +{ + Client::connect(); + + Client::on('test event', function($event_data){ + echo 'test event triggered event_data :'; + var_dump($event_data); + }); + + Timer::add(2, function(){ + Client::publish('test event', 'some data'); + }); +}; + +Worker::runAll(); diff --git a/vendor/workerman/channel/test/start_channel.php b/vendor/workerman/channel/test/start_channel.php new file mode 100644 index 0000000..4366dd1 --- /dev/null +++ b/vendor/workerman/channel/test/start_channel.php @@ -0,0 +1,23 @@ +count = 8; +$processName = "client"; +$worker->name = $processName; +$worker->reusePort = true; //开启均衡负载模式 + +Worker::$pidFile = "var/{$processName}.pid"; +Worker::$logFile = "var/{$processName}_logFile.log"; +Worker::$stdoutFile = "var/{$processName}_stdout.log"; + +$worker->onWorkerStart = function() use($worker){ + usleep(10); + Channel\Client::connect('127.0.0.1' , 2206); + $event_name = "test_channel"; + Channel\Client::on($event_name, function($event_data)use($worker ,$event_name ){ + $log_str = "{$worker->id} on {$event_name}:".json_encode($event_data,320)."\n"; + echo $log_str; + }); +}; + +Worker::runAll(); \ No newline at end of file diff --git a/vendor/workerman/channel/test/start_send.php b/vendor/workerman/channel/test/start_send.php new file mode 100644 index 0000000..c5c30f8 --- /dev/null +++ b/vendor/workerman/channel/test/start_send.php @@ -0,0 +1,35 @@ +count = 1; +$processName = "send"; +$worker->name = $processName; +$worker->reusePort = true; //开启均衡负载模式 + +Worker::$pidFile = "var/{$processName}.pid"; +Worker::$logFile = "var/{$processName}_logFile.log"; +Worker::$stdoutFile = "var/{$processName}_stdout.log"; + +$worker->onWorkerStart = function() use($worker){ + Channel\Client::connect('127.0.0.1' , 2206); + Timer::add( 1 , function ()use($worker){ + $data_arr = [ + 'time' => microtime(true), + 'date' => date("Y-m-d H:i:s"), + ]; + $event_name = "test_channel"; + Channel\Client::publish($event_name, $data_arr , true); + }); +}; +Worker::runAll(); \ No newline at end of file diff --git a/vendor/workerman/phpsocket.io/README.md b/vendor/workerman/phpsocket.io/README.md new file mode 100644 index 0000000..d54328f --- /dev/null +++ b/vendor/workerman/phpsocket.io/README.md @@ -0,0 +1,184 @@ +# phpsocket.io +A server side alternative implementation of [socket.io](https://github.com/socketio/socket.io) in PHP based on [Workerman](https://github.com/walkor/Workerman).
    + +# Notice +Only support socket.io >= v1.3.0 and <= v2.x
    +This project is just translate socket.io by [workerman](https://github.com/walkor/Workerman).
    +More api just see [https://socket.io/docs/v2/server-api/](https://socket.io/docs/v2/server-api/) + +# Install +composer require workerman/phpsocket.io + +# Examples +## Simple chat +start.php +```php + +use Workerman\Worker; +use PHPSocketIO\SocketIO; +require_once __DIR__ . '/vendor/autoload.php'; + +// Listen port 2021 for socket.io client +$io = new SocketIO(2021); +$io->on('connection', function ($socket) use ($io) { + $socket->on('chat message', function ($msg) use ($io) { + $io->emit('chat message', $msg); + }); +}); + +Worker::runAll(); +``` + +## Another chat demo + +https://github.com/walkor/phpsocket.io/blob/master/examples/chat/start_io.php +```php + +use Workerman\Worker; +use PHPSocketIO\SocketIO; +require_once __DIR__ . '/vendor/autoload.php'; + +// Listen port 2020 for socket.io client +$io = new SocketIO(2020); +$io->on('connection', function ($socket) { + $socket->addedUser = false; + + // When the client emits 'new message', this listens and executes + $socket->on('new message', function ($data) use ($socket) { + // We tell the client to execute 'new message' + $socket->broadcast->emit('new message', array( + 'username' => $socket->username, + 'message' => $data + )); + }); + + // When the client emits 'add user', this listens and executes + $socket->on('add user', function ($username) use ($socket) { + global $usernames, $numUsers; + + // We store the username in the socket session for this client + $socket->username = $username; + // Add the client's username to the global list + $usernames[$username] = $username; + ++$numUsers; + + $socket->addedUser = true; + $socket->emit('login', array( + 'numUsers' => $numUsers + )); + + // echo globally (all clients) that a person has connected + $socket->broadcast->emit('user joined', array( + 'username' => $socket->username, + 'numUsers' => $numUsers + )); + }); + + // When the client emits 'typing', we broadcast it to others + $socket->on('typing', function () use ($socket) { + $socket->broadcast->emit('typing', array( + 'username' => $socket->username + )); + }); + + // When the client emits 'stop typing', we broadcast it to others + $socket->on('stop typing', function () use ($socket) { + $socket->broadcast->emit('stop typing', array( + 'username' => $socket->username + )); + }); + + // When the user disconnects, perform this + $socket->on('disconnect', function () use ($socket) { + global $usernames, $numUsers; + + // Remove the username from global usernames list + if ($socket->addedUser) { + unset($usernames[$socket->username]); + --$numUsers; + + // echo globally that this client has left + $socket->broadcast->emit('user left', array( + 'username' => $socket->username, + 'numUsers' => $numUsers + )); + } + }); +}); + +Worker::runAll(); +``` + +## Enable SSL for https +**```(phpsocket.io>=1.1.1 && workerman>=3.3.7 required)```** + +start.php +```php + array( + 'local_cert' => '/your/path/of/server.pem', + 'local_pk' => '/your/path/of/server.key', + 'verify_peer' => false + ) +); +$io = new SocketIO(2021, $context); + +$io->on('connection', function ($connection) use ($io) { + echo "New connection coming\n"; +}); + +Worker::runAll(); +``` + +## Acknowledgement callback +```php + +use Workerman\Worker; +use PHPSocketIO\SocketIO; + +require_once __DIR__ . '/vendor/autoload.php'; + +$io = new SocketIO(2021); + +$io->on('connection', function ($connection) use ($io) { + $socket->on('message with ack', function ($data, $callback) use ($socket, $io) { + // acknowledgement callback + if ($callback && is_callable($callback)) { + $callback(0); + } + }); +}); + +Worker::runAll(); +``` + +# 手册 +[中文手册](https://github.com/walkor/phpsocket.io/tree/master/docs/zh) + +# Livedemo +[chat demo](http://demos.workerman.net/phpsocketio-chat/) + +# Run chat example +cd examples/chat + +## Start +```php start.php start``` for debug mode + +```php start.php start -d ``` for daemon mode + +## Stop +```php start.php stop``` + +## Status +```php start.php status``` + +# License +MIT diff --git a/vendor/workerman/phpsocket.io/composer.json b/vendor/workerman/phpsocket.io/composer.json new file mode 100644 index 0000000..7bbf16b --- /dev/null +++ b/vendor/workerman/phpsocket.io/composer.json @@ -0,0 +1,30 @@ +{ + "name": "workerman/phpsocket.io", + "description": "A server side alternative implementation of socket.io in PHP based on Workerman", + "type": "library", + "keywords": [ + "socket.io", + "phpsocket.io", + "workerman", + "sockets", + "async", + "stream", + "server", + "non-blocking" + ], + "homepage": "https://www.workerman.net", + "license": "MIT", + "require": { + "workerman/workerman": "^4.0.0", + "workerman/channel": ">=1.0.0", + "ext-json": "*" + }, + "autoload": { + "psr-4": { + "PHPSocketIO\\": "./src" + } + }, + "require-dev": { + "squizlabs/php_codesniffer": "^3.7" + } +} diff --git a/vendor/workerman/phpsocket.io/src/ChannelAdapter.php b/vendor/workerman/phpsocket.io/src/ChannelAdapter.php new file mode 100644 index 0000000..01ee3ea --- /dev/null +++ b/vendor/workerman/phpsocket.io/src/ChannelAdapter.php @@ -0,0 +1,116 @@ +_channelId = (function_exists('random_int') ? random_int(1, 10000000) : rand(1, 10000000)) . "-" . (function_exists('posix_getpid') ? posix_getpid() : 1); + \Channel\Client::connect(self::$ip, self::$port); + \Channel\Client::$onMessage = [$this, 'onChannelMessage']; + \Channel\Client::subscribe("socket.io#/#"); + Debug::debug('ChannelAdapter __construct'); + } + + public function __destruct() + { + Debug::debug('ChannelAdapter __destruct'); + } + + public function add($id, $room) + { + $this->sids[$id][$room] = true; + $this->rooms[$room][$id] = true; + $channel = "socket.io#/#$room#"; + \Channel\Client::subscribe($channel); + } + + public function del($id, $room) + { + unset($this->sids[$id][$room]); + unset($this->rooms[$room][$id]); + if (empty($this->rooms[$room])) { + unset($this->rooms[$room]); + $channel = "socket.io#/#$room#"; + \Channel\Client::unsubscribe($channel); + } + } + + public function delAll($id) + { + $rooms = isset($this->sids[$id]) ? array_keys($this->sids[$id]) : []; + if ($rooms) { + foreach ($rooms as $room) { + if (isset($this->rooms[$room][$id])) { + unset($this->rooms[$room][$id]); + $channel = "socket.io#/#$room#"; + \Channel\Client::unsubscribe($channel); + } + if (isset($this->rooms[$room]) && empty($this->rooms[$room])) { + unset($this->rooms[$room]); + } + } + } + unset($this->sids[$id]); + } + + public function onChannelMessage($channel, $msg) + { + if ($this->_channelId === array_shift($msg)) { + return; + } + + $packet = $msg[0]; + + $opts = $msg[1]; + + if (! $packet) { + echo "invalid channel:$channel packet \n"; + return; + } + + if (empty($packet['nsp'])) { + $packet['nsp'] = '/'; + } + + if ($packet['nsp'] != $this->nsp->name) { + echo "ignore different namespace {$packet['nsp']} != {$this->nsp->name}\n"; + return; + } + + $this->broadcast($packet, $opts, true); + } + + public function broadcast($packet, $opts, $remote = false) + { + parent::broadcast($packet, $opts); + if (! $remote) { + $packet['nsp'] = '/'; + + if (! empty($opts['rooms'])) { + foreach ($opts['rooms'] as $room) { + $chn = "socket.io#/#$room#"; + $msg = [$this->_channelId, $packet, $opts]; + \Channel\Client::publish($chn, $msg); + } + } else { + $chn = "socket.io#/#"; + $msg = [$this->_channelId, $packet, $opts]; + \Channel\Client::publish($chn, $msg); + } + } + } +} diff --git a/vendor/workerman/phpsocket.io/src/Client.php b/vendor/workerman/phpsocket.io/src/Client.php new file mode 100644 index 0000000..9a4a435 --- /dev/null +++ b/vendor/workerman/phpsocket.io/src/Client.php @@ -0,0 +1,250 @@ +server = $server; + $this->conn = $conn; + $this->encoder = new Encoder(); + $this->decoder = new Decoder(); + $this->id = $conn->id; + $this->request = $conn->request; + $this->setup(); + Debug::debug('Client __construct'); + } + + public function __destruct() + { + Debug::debug('Client __destruct'); + } + + /** + * Sets up event listeners. + * + * @api private + */ + + public function setup() + { + $this->decoder->on('decoded', [$this, 'ondecoded']); + $this->conn->on('data', [$this, 'ondata']); + $this->conn->on('error', [$this, 'onerror']); + $this->conn->on('close', [$this, 'onclose']); + } + + /** + * Connects a client to a namespace. + * + * @param {String} namespace name + * @api private + */ + + public function connect($name) + { + if (! isset($this->server->nsps[$name])) { + $this->packet(['type' => Parser::ERROR, 'nsp' => $name, 'data' => 'Invalid namespace']); + return; + } + $nsp = $this->server->of($name); + if ('/' !== $name && ! isset($this->nsps['/'])) { + $this->connectBuffer[$name] = $name; + return; + } + $nsp->add($this, $nsp, [$this, 'nspAdd']); + } + + public function nspAdd($socket, $nsp) + { + $this->sockets[$socket->id] = $socket; + $this->nsps[$nsp->name] = $socket; + if ('/' === $nsp->name && $this->connectBuffer) { + foreach ($this->connectBuffer as $name) { + $this->connect($name); + } + $this->connectBuffer = []; + } + } + + /** + * Disconnects from all namespaces and closes transport. + * + * @api private + */ + public function disconnect() + { + foreach ($this->sockets as $socket) { + $socket->disconnect(); + } + $this->sockets = []; + $this->close(); + } + + /** + * Removes a socket. Called by each `Socket`. + * + * @api private + */ + public function remove($socket) + { + if (isset($this->sockets[$socket->id])) { + $nsp = $this->sockets[$socket->id]->nsp->name; + unset($this->sockets[$socket->id]); + unset($this->nsps[$nsp]); + } + } + + /** + * Closes the underlying connection. + * + * @api private + */ + public function close() + { + if (empty($this->conn)) { + return; + } + if ('open' === $this->conn->readyState) { + $this->conn->close(); + $this->onclose('forced server close'); + } + } + + /** + * Writes a packet to the transport. + * + * @param {Object} packet object + * @param {Object} options + * @api private + */ + public function packet($packet, $preEncoded = false, $volatile = false) + { + if (! empty($this->conn) && 'open' === $this->conn->readyState) { + if (! $preEncoded) { + // not broadcasting, need to encode + $encodedPackets = $this->encoder->encode($packet); + $this->writeToEngine($encodedPackets, $volatile); + } else { // a broadcast pre-encodes a packet + $this->writeToEngine($packet); + } + } + } + + public function writeToEngine($encodedPackets, $volatile = false) + { + if ($volatile) { + echo new Exception('volatile'); + } + if ($volatile && ! $this->conn->transport->writable) { + return; + } + if (isset($encodedPackets['nsp'])) { + unset($encodedPackets['nsp']); + } + foreach ($encodedPackets as $packet) { + $this->conn->write($packet); + } + } + + /** + * Called with incoming transport data. + * + * @api private + */ + public function ondata($data) + { + try { + // todo chek '2["chat message","2"]' . "\0" . '' + $this->decoder->add(trim($data)); + } catch (Exception $e) { + $this->onerror($e); + } + } + + /** + * Called when parser fully decodes a packet. + * + * @api private + */ + public function ondecoded($packet) + { + if (Parser::CONNECT == $packet['type']) { + $this->connect($packet['nsp']); + } else { + if (isset($this->nsps[$packet['nsp']])) { + $this->nsps[$packet['nsp']]->onpacket($packet); + } + } + } + + /** + * Handles an error. + * + * @param {Objcet} error object + * @api private + */ + public function onerror($err) + { + foreach ($this->sockets as $socket) { + $socket->onerror($err); + } + $this->onclose('client error'); + } + + /** + * Called upon transport close. + * + * @param {String} reason + * @api private + */ + public function onclose($reason) + { + if (empty($this->conn)) { + return; + } + // ignore a potential subsequent `close` event + $this->destroy(); + + // `nsps` and `sockets` are cleaned up seamlessly + foreach ($this->sockets as $socket) { + $socket->onclose($reason); + } + $this->sockets = null; + } + + /** + * Cleans up event listeners. + * + * @api private + */ + public function destroy() + { + if (! $this->conn) { + return; + } + $this->conn->removeAllListeners(); + $this->decoder->removeAllListeners(); + $this->encoder->removeAllListeners(); + $this->server = $this->conn = $this->encoder = $this->decoder = $this->request = $this->nsps = null; + } +} diff --git a/vendor/workerman/phpsocket.io/src/Debug.php b/vendor/workerman/phpsocket.io/src/Debug.php new file mode 100644 index 0000000..bc5f0cd --- /dev/null +++ b/vendor/workerman/phpsocket.io/src/Debug.php @@ -0,0 +1,14 @@ +nsp = $nsp; + $this->encoder = new Parser\Encoder(); + Debug::debug('DefaultAdapter __construct'); + } + + public function __destruct() + { + Debug::debug('DefaultAdapter __destruct'); + } + + public function add($id, $room) + { + $this->sids[$id][$room] = true; + $this->rooms[$room][$id] = true; + } + + public function del($id, $room) + { + unset($this->sids[$id][$room]); + unset($this->rooms[$room][$id]); + if (empty($this->rooms[$room])) { + unset($this->rooms[$room]); + } + } + + public function delAll($id) + { + $rooms = array_keys($this->sids[$id] ?? []); + foreach ($rooms as $room) { + $this->del($id, $room); + } + unset($this->sids[$id]); + } + + public function broadcast($packet, $opts, $remote = false) + { + $rooms = $opts['rooms'] ?? []; + $except = $opts['except'] ?? []; + $flags = $opts['flags'] ?? []; + $packetOpts = [ + 'preEncoded' => true, + 'volatile' => $flags['volatile'] ?? null, + 'compress' => $flags['compress'] ?? null + ]; + $packet['nsp'] = $this->nsp->name; + $encodedPackets = $this->encoder->encode($packet); + if ($rooms) { + $ids = []; + foreach ($rooms as $i => $room) { + if (! isset($this->rooms[$room])) { + continue; + } + + $room = $this->rooms[$room]; + foreach ($room as $id => $item) { + if (isset($ids[$id]) || isset($except[$id])) { + continue; + } + if (isset($this->nsp->connected[$id])) { + $ids[$id] = true; + $this->nsp->connected[$id]->packet($encodedPackets, $packetOpts); + } + } + } + } else { + foreach ($this->sids as $id => $sid) { + if (isset($except[$id])) { + continue; + } + if (isset($this->nsp->connected[$id])) { + $socket = $this->nsp->connected[$id]; + $volatile = $flags['volatile'] ?? null; + $socket->packet($encodedPackets, true, $volatile); + } + } + } + } + + public function clients($rooms, $fn) + { + $sids = []; + foreach ($rooms as $room) { + $sids = array_merge($sids, $this->rooms[$room]); + } + $fn(); + } +} diff --git a/vendor/workerman/phpsocket.io/src/Engine/Engine.php b/vendor/workerman/phpsocket.io/src/Engine/Engine.php new file mode 100644 index 0000000..14903f2 --- /dev/null +++ b/vendor/workerman/phpsocket.io/src/Engine/Engine.php @@ -0,0 +1,276 @@ + 'polling', + 'websocket' => 'websocket' + ]; + + public static $errorMessages = [ + 'Transport unknown', + 'Session ID unknown', + 'Bad handshake method', + 'Bad request' + ]; + + private const ERROR_UNKNOWN_TRANSPORT = 0; + + private const ERROR_UNKNOWN_SID = 1; + + private const ERROR_BAD_HANDSHAKE_METHOD = 2; + + private const ERROR_BAD_REQUEST = 3; + + public function __construct($opts = []) + { + $ops_map = [ + 'pingTimeout', + 'pingInterval', + 'upgradeTimeout', + 'transports', + 'allowUpgrades', + 'allowRequest' + ]; + + foreach ($ops_map as $key) { + if (isset($opts[$key])) { + $this->$key = $opts[$key]; + } + } + Debug::debug('Engine __construct'); + } + + public function __destruct() + { + Debug::debug('Engine __destruct'); + } + + public function handleRequest(object $req, object $res) + { + $this->prepare($req); + $req->res = $res; + $this->verify($req, $res, false, [$this, 'dealRequest']); + } + + /** + * @throws Exception + */ + public function dealRequest($err, bool $success, object $req) + { + if (! $success) { + self::sendErrorMessage($req, $req->res, $err); + return; + } + + if (isset($req->_query['sid'])) { + $this->clients[$req->_query['sid']]->transport->onRequest($req); + } else { + $this->handshake($req->_query['transport'], $req); + } + } + + protected function sendErrorMessage(object $req, object $res, string $code): void + { + $headers = ['Content-Type' => 'application/json']; + if (isset($req->headers['origin'])) { + $headers['Access-Control-Allow-Credentials'] = 'true'; + $headers['Access-Control-Allow-Origin'] = $req->headers['origin']; + } else { + $headers['Access-Control-Allow-Origin'] = '*'; + } + + $res->writeHead(403, '', $headers); + $res->end( + json_encode( + [ + 'code' => $code, + 'message' => self::$errorMessages[$code] ?? $code + ] + ) + ); + } + + protected function verify(object $req, object $res, bool $upgrade, callable $fn) + { + if (! isset($req->_query['transport']) || ! isset(self::$allowTransports[$req->_query['transport']])) { + return call_user_func($fn, self::ERROR_UNKNOWN_TRANSPORT, false, $req, $res); + } + $transport = $req->_query['transport']; + $sid = $req->_query['sid'] ?? ''; + if ($sid) { + if (! isset($this->clients[$sid])) { + return call_user_func($fn, self::ERROR_UNKNOWN_SID, false, $req, $res); + } + if (! $upgrade && $this->clients[$sid]->transport->name !== $transport) { + return call_user_func($fn, self::ERROR_BAD_REQUEST, false, $req, $res); + } + } else { + if ('GET' !== $req->method) { + return call_user_func($fn, self::ERROR_BAD_HANDSHAKE_METHOD, false, $req, $res); + } + return $this->checkRequest($req, $res, $fn); + } + call_user_func($fn, null, true, $req, $res); + } + + public function checkRequest(object $req, object $res, callable $fn) + { + if ($this->origins === "*:*" || empty($this->origins)) { + return call_user_func($fn, null, true, $req, $res); + } + $origin = null; + if (isset($req->headers['origin'])) { + $origin = $req->headers['origin']; + } elseif (isset($req->headers['referer'])) { + $origin = $req->headers['referer']; + } + + // file:// URLs produce a null Origin which can't be authorized via echo-back + if ('null' === $origin || null === $origin) { + return call_user_func($fn, null, true, $req, $res); + } + + if ($origin) { + $parts = parse_url($origin); + $defaultPort = 'https:' === $parts['scheme'] ? 443 : 80; + $parts['port'] = $parts['port'] ?? $defaultPort; + $allowed_origins = explode(' ', $this->origins); + foreach ($allowed_origins as $allow_origin) { + $ok = + $allow_origin === $parts['scheme'] . '://' . $parts['host'] . ':' . $parts['port'] || + $allow_origin === $parts['scheme'] . '://' . $parts['host'] || + $allow_origin === $parts['scheme'] . '://' . $parts['host'] . ':*' || + $allow_origin === '*:' . $parts['port']; + if ($ok) { + return call_user_func($fn, null, true, $req, $res); + } + } + } + call_user_func($fn, null, false, $req, $res); + } + + protected function prepare(object $req) + { + if (! isset($req->_query)) { + $info = parse_url($req->url); + if (isset($info['query'])) { + parse_str($info['query'], $req->_query); + } + } + } + + /** + * @throws Exception + */ + public function handshake(string $transport, object $req) + { + $id = bin2hex(pack('d', microtime(true)) . pack('N', function_exists('random_int') ? random_int(1, 100000000) : rand(1, 100000000))); + if ($transport == 'websocket') { + $transport = '\\PHPSocketIO\\Engine\\Transports\\WebSocket'; + } elseif (isset($req->_query['j'])) { + $transport = '\\PHPSocketIO\\Engine\\Transports\\PollingJsonp'; + } else { + $transport = '\\PHPSocketIO\\Engine\\Transports\\PollingXHR'; + } + + $transport = new $transport($req); + + $transport->supportsBinary = ! isset($req->_query['b64']); + + $socket = new Socket($id, $this, $transport, $req); + + $transport->onRequest($req); + + $this->clients[$id] = $socket; + $socket->once('close', [$this, 'onSocketClose']); + $this->emit('connection', $socket); + } + + public function onSocketClose($id): void + { + unset($this->clients[$id]); + } + + public function attach($worker): void + { + $this->server = $worker; + $worker->onConnect = [$this, 'onConnect']; + } + + public function onConnect(object $connection): void + { + $connection->onRequest = [$this, 'handleRequest']; + $connection->onWebSocketConnect = [$this, 'onWebSocketConnect']; + // clean + $connection->onClose = function ($connection) { + if (! empty($connection->httpRequest)) { + $connection->httpRequest->destroy(); + $connection->httpRequest = null; + } + if (! empty($connection->httpResponse)) { + $connection->httpResponse->destroy(); + $connection->httpResponse = null; + } + if (! empty($connection->onRequest)) { + $connection->onRequest = null; + } + if (! empty($connection->onWebSocketConnect)) { + $connection->onWebSocketConnect = null; + } + }; + } + + public function onWebSocketConnect($connection, object $req, object $res): void + { + $this->prepare($req); + $this->verify($req, $res, true, [$this, 'dealWebSocketConnect']); + } + + /** + * @throws Exception + */ + public function dealWebSocketConnect($err, bool $success, object $req, object $res): void + { + if (! $success) { + self::sendErrorMessage($req, $res, $err); + return; + } + + if (isset($req->_query['sid'])) { + if (! isset($this->clients[$req->_query['sid']])) { + self::sendErrorMessage($req, $res, 'upgrade attempt for closed client'); + return; + } + $client = $this->clients[$req->_query['sid']]; + if ($client->upgrading) { + self::sendErrorMessage($req, $res, 'transport has already been trying to upgrade'); + return; + } + if ($client->upgraded) { + self::sendErrorMessage($req, $res, 'transport had already been upgraded'); + return; + } + $transport = new WebSocket($req); + $client->maybeUpgrade($transport); + } else { + $this->handshake($req->_query['transport'], $req); + } + } +} diff --git a/vendor/workerman/phpsocket.io/src/Engine/Parser.php b/vendor/workerman/phpsocket.io/src/Engine/Parser.php new file mode 100644 index 0000000..3023eb7 --- /dev/null +++ b/vendor/workerman/phpsocket.io/src/Engine/Parser.php @@ -0,0 +1,253 @@ + 0, // non-ws + 'close' => 1, // non-ws + 'ping' => 2, + 'pong' => 3, + 'message' => 4, + 'upgrade' => 5, + 'noop' => 6, + ]; + + public static $packetsList = [ + 'open', + 'close', + 'ping', + 'pong', + 'message', + 'upgrade', + 'noop' + ]; + + public static $err = [ + 'type' => 'error', + 'data' => 'parser error' + ]; + + public static function encodePacket($packet): string + { + $data = ! isset($packet['data']) ? '' : $packet['data']; + return self::$packets[$packet['type']] . $data; + } + + /** + * Decodes a packet. Data also available as an ArrayBuffer if requested. + * + * @return array|string[] {Object} with `type` and `data` (if any) + */ + public static function decodePacket(string $data): array + { + if ($data[0] === 'b') { + return self::decodeBase64Packet(substr($data, 1)); + } + + $type = $data[0]; + if (! isset(self::$packetsList[$type])) { + return self::$err; + } + + if (isset($data[1])) { + return ['type' => self::$packetsList[$type], 'data' => substr($data, 1)]; + } else { + return ['type' => self::$packetsList[$type]]; + } + } + + /** + * Decodes a packet encoded in a base64 string. + * + * @param $msg + * @return array {Object} with `type` and `data` (if any) + */ + public static function decodeBase64Packet($msg): array + { + $type = self::$packetsList[$msg[0]]; + $data = base64_decode(substr($msg, 1)); + return ['type' => $type, 'data' => $data]; + } + + /** + * Encodes multiple messages (payload). + * + * :data + * + * Example: + * + * 11:hello world2:hi + * + * If any contents are binary, they will be encoded as base64 strings. Base64 + * encoded strings are marked with a b before the length specifier + * + * @param {Array} packets + * @api private + */ + public static function encodePayload($packets, $supportsBinary = null): string + { + if ($supportsBinary) { + return self::encodePayloadAsBinary($packets); + } + + if (! $packets) { + return '0:'; + } + + $results = ''; + foreach ($packets as $msg) { + $results .= self::encodeOne($msg); + } + return $results; + } + + public static function encodeOne($packet): string + { + $message = self::encodePacket($packet); + return strlen($message) . ':' . $message; + } + + /* + * Decodes data when a payload is maybe expected. Possible binary contents are + * decoded from their base64 representation + * + * @api public + */ + public static function decodePayload($data, $binaryType = null) + { + if (! preg_match('/^\d+:\d/', $data)) { + return self::decodePayloadAsBinary($data, $binaryType); + } + + if ($data === '') { + // parser error - ignoring payload + return self::$err; + } + + $length = '';//, n, msg; + + for ($i = 0, $l = strlen($data); $i < $l; $i++) { + $chr = $data[$i]; + + if (':' != $chr) { + $length .= $chr; + } else { + if ('' == $length || ($length != ($n = intval($length)))) { + // parser error - ignoring payload + return self::$err; + } + + $msg = substr($data, $i + 1); + + if (isset($msg[0])) { + $packet = self::decodePacket($msg); + + if (self::$err['type'] == $packet['type'] && self::$err['data'] == $packet['data']) { + // parser error in individual packet - ignoring payload + return self::$err; + } + + return $packet; + } + + // advance cursor + $i += $n; + $length = ''; + } + } + + if ($length !== '') { + // parser error - ignoring payload + echo new Exception('parser error'); + return self::$err; + } + } + + /** + * Encodes multiple messages (payload) as binary. + * + * <1 = binary, 0 = string>[...] + * + * Example: + * 1 3 255 1 2 3, if the binary contents are interpreted as 8-bit integers + * + * @param {Array} packets + * @return string {Buffer} encoded payload + * @api private + */ + public static function encodePayloadAsBinary($packets): string + { + $results = ''; + foreach ($packets as $msg) { + $results .= self::encodeOneAsBinary($msg); + } + return $results; + } + + public static function encodeOneAsBinary($p): string + { + $packet = self::encodePacket($p); + $encodingLength = '' . strlen($packet); + $sizeBuffer = chr(0); + for ($i = 0; $i < strlen($encodingLength); $i++) { + $sizeBuffer .= chr($encodingLength[$i]); + } + $sizeBuffer .= chr(255); + return $sizeBuffer . $packet; + } + + /* + * Decodes data when a payload is maybe expected. Strings are decoded by + * interpreting each byte as a key code for entries marked to start with 0. See + * description of encodePayloadAsBinary + * @api public + */ + public static function decodePayloadAsBinary($data, $binaryType = null): array + { + $bufferTail = $data; + $buffers = []; + + while (strlen($bufferTail) > 0) { + $strLen = ''; + $numberTooLong = false; + for ($i = 1;; $i++) { + $tail = ord($bufferTail[$i]); + if ($tail === 255) { + break; + } + // 310 = char length of Number.MAX_VALUE + if (strlen($strLen) > 310) { + $numberTooLong = true; + break; + } + $strLen .= $tail; + } + if ($numberTooLong) { + return self::$err; + } + $bufferTail = substr($bufferTail, strlen($strLen) + 1); + + $msgLength = intval($strLen); + + $msg = substr($bufferTail, 1, $msgLength + 1); + $buffers[] = $msg; + $bufferTail = substr($bufferTail, $msgLength + 1); + } + $packets = []; + foreach ($buffers as $i => $buffer) { + $packets[] = self::decodePacket($buffer); + } + return $packets; + } +} diff --git a/vendor/workerman/phpsocket.io/src/Engine/Protocols/Http/Request.php b/vendor/workerman/phpsocket.io/src/Engine/Protocols/Http/Request.php new file mode 100644 index 0000000..6326eea --- /dev/null +++ b/vendor/workerman/phpsocket.io/src/Engine/Protocols/Http/Request.php @@ -0,0 +1,58 @@ +connection = $connection; + $this->parseHead($raw_head); + } + + public function parseHead($raw_head) + { + $header_data = explode("\r\n", $raw_head); + list($this->method, $this->url, $protocol) = explode(' ', $header_data[0]); + list($null, $this->httpVersion) = explode('/', $protocol); + unset($header_data[0]); + foreach ($header_data as $content) { + if (empty($content)) { + continue; + } + $this->rawHeaders[] = $content; + list($key, $value) = explode(':', $content, 2); + $this->headers[strtolower($key)] = trim($value); + } + } + + public function destroy() + { + $this->onData = $this->onEnd = $this->onClose = null; + $this->connection = null; + } +} diff --git a/vendor/workerman/phpsocket.io/src/Engine/Protocols/Http/Response.php b/vendor/workerman/phpsocket.io/src/Engine/Protocols/Http/Response.php new file mode 100644 index 0000000..85a1f7f --- /dev/null +++ b/vendor/workerman/phpsocket.io/src/Engine/Protocols/Http/Response.php @@ -0,0 +1,189 @@ +_connection = $connection; + } + + protected function initHeader() + { + $this->_headers['Connection'] = 'keep-alive'; + $this->_headers['Content-Type'] = 'Content-Type: text/html;charset=utf-8'; + } + + public function writeHead($status_code, $reason_phrase = '', $headers = null) + { + if ($this->headersSent) { + echo "header has already send\n"; + return false; + } + $this->statusCode = $status_code; + if ($reason_phrase) { + $this->_statusPhrase = $reason_phrase; + } + if ($headers) { + foreach ($headers as $key => $val) { + $this->_headers[$key] = $val; + } + } + $this->_buffer = $this->getHeadBuffer(); + $this->headersSent = true; + } + + public function getHeadBuffer(): string + { + if (! $this->_statusPhrase) { + $this->_statusPhrase = self::$codes[$this->statusCode] ?? ''; + } + $head_buffer = "HTTP/1.1 $this->statusCode $this->_statusPhrase\r\n"; + if (! isset($this->_headers['Content-Length']) && ! isset($this->_headers['Transfer-Encoding'])) { + $head_buffer .= "Transfer-Encoding: chunked\r\n"; + } + if (! isset($this->_headers['Connection'])) { + $head_buffer .= "Connection: keep-alive\r\n"; + } + foreach ($this->_headers as $key => $val) { + if ($key === 'Set-Cookie' && is_array($val)) { + foreach ($val as $v) { + $head_buffer .= "Set-Cookie: $v\r\n"; + } + continue; + } + $head_buffer .= "$key: $val\r\n"; + } + return $head_buffer . "\r\n"; + } + + public function setHeader($key, $val) + { + $this->_headers[$key] = $val; + } + + public function getHeader($name) + { + return $this->_headers[$name] ?? ''; + } + + public function removeHeader($name) + { + unset($this->_headers[$name]); + } + + public function write($chunk) + { + if (! isset($this->_headers['Content-Length'])) { + $chunk = dechex(strlen($chunk)) . "\r\n" . $chunk . "\r\n"; + } + if (! $this->headersSent) { + $head_buffer = $this->getHeadBuffer(); + $this->_buffer = $head_buffer . $chunk; + $this->headersSent = true; + } else { + $this->_buffer .= $chunk; + } + } + + public function end($data = null) + { + if (! $this->writable) { + echo new Exception('unwirtable'); + return false; + } + if ($data !== null) { + $this->write($data); + } + + if (! $this->headersSent) { + $head_buffer = $this->getHeadBuffer(); + $this->_buffer = $head_buffer; + $this->headersSent = true; + } + + if (! isset($this->_headers['Content-Length'])) { + $ret = $this->_connection->send($this->_buffer . "0\r\n\r\n", true); + $this->destroy(); + return $ret; + } + $ret = $this->_connection->send($this->_buffer, true); + $this->destroy(); + return $ret; + } + + public function destroy() + { + if (! empty($this->_connection->httpRequest)) { + $this->_connection->httpRequest->destroy(); + } + if (! empty($this->_connection)) { + $this->_connection->httpResponse = $this->_connection->httpRequest = null; + } + $this->_connection = null; + $this->writable = false; + } + + public static $codes = [ + 100 => 'Continue', + 101 => 'Switching Protocols', + 200 => 'OK', + 201 => 'Created', + 202 => 'Accepted', + 203 => 'Non-Authoritative Information', + 204 => 'No Content', + 205 => 'Reset Content', + 206 => 'Partial Content', + 300 => 'Multiple Choices', + 301 => 'Moved Permanently', + 302 => 'Found', + 303 => 'See Other', + 304 => 'Not Modified', + 305 => 'Use Proxy', + 306 => '(Unused)', + 307 => 'Temporary Redirect', + 400 => 'Bad Request', + 401 => 'Unauthorized', + 402 => 'Payment Required', + 403 => 'Forbidden', + 404 => 'Not Found', + 405 => 'Method Not Allowed', + 406 => 'Not Acceptable', + 407 => 'Proxy Authentication Required', + 408 => 'Request Timeout', + 409 => 'Conflict', + 410 => 'Gone', + 411 => 'Length Required', + 412 => 'Precondition Failed', + 413 => 'Request Entity Too Large', + 414 => 'Request-URI Too Long', + 415 => 'Unsupported Media Type', + 416 => 'Requested Range Not Satisfiable', + 417 => 'Expectation Failed', + 422 => 'Unprocessable Entity', + 423 => 'Locked', + 500 => 'Internal Server Error', + 501 => 'Not Implemented', + 502 => 'Bad Gateway', + 503 => 'Service Unavailable', + 504 => 'Gateway Timeout', + 505 => 'HTTP Version Not Supported', + ]; +} diff --git a/vendor/workerman/phpsocket.io/src/Engine/Protocols/SocketIO.php b/vendor/workerman/phpsocket.io/src/Engine/Protocols/SocketIO.php new file mode 100644 index 0000000..e029840 --- /dev/null +++ b/vendor/workerman/phpsocket.io/src/Engine/Protocols/SocketIO.php @@ -0,0 +1,170 @@ +hasReadedHead)) { + return strlen($http_buffer); + } + $pos = strpos($http_buffer, "\r\n\r\n"); + if (! $pos) { + if (strlen($http_buffer) >= $connection->maxPackageSize) { + $connection->close("HTTP/1.1 400 bad request\r\n\r\nheader too long"); + return 0; + } + return 0; + } + $head_len = $pos + 4; + $raw_head = substr($http_buffer, 0, $head_len); + $raw_body = substr($http_buffer, $head_len); + $req = new Request($connection, $raw_head); + $res = new Response($connection); + $connection->httpRequest = $req; + $connection->httpResponse = $res; + $connection->hasReadedHead = true; + TcpConnection::$statistics['total_request']++; + $connection->onClose = '\PHPSocketIO\Engine\Protocols\SocketIO::emitClose'; + if (isset($req->headers['upgrade']) && strtolower($req->headers['upgrade']) === 'websocket') { + $connection->consumeRecvBuffer(strlen($http_buffer)); + WebSocket::dealHandshake($connection, $req, $res); + self::cleanup($connection); + return 0; + } + if (! empty($connection->onRequest)) { + $connection->consumeRecvBuffer(strlen($http_buffer)); + self::emitRequest($connection, $req, $res); + if ($req->method === 'GET' || $req->method === 'OPTIONS') { + self::emitEnd($connection, $req); + return 0; + } + + // POST + if ('\PHPSocketIO\Engine\Protocols\SocketIO::onData' !== $connection->onMessage) { + $connection->onMessage = '\PHPSocketIO\Engine\Protocols\SocketIO::onData'; + } + if (! $raw_body) { + return 0; + } + self::onData($connection, $raw_body); + return 0; + } else { + if ($req->method === 'GET') { + return $pos + 4; + } elseif (isset($req->headers['content-length'])) { + return $req->headers['content-length']; + } else { + $connection->close("HTTP/1.1 400 bad request\r\n\r\ntrunk not support"); + return 0; + } + } + } + + public static function onData($connection, $data) + { + $req = $connection->httpRequest; + self::emitData($connection, $req, $data); + if ((isset($req->headers['content-length']) && $req->headers['content-length'] <= strlen($data)) + || substr($data, -5) === "0\r\n\r\n" + ) { + self::emitEnd($connection, $req); + } + } + + protected static function emitRequest($connection, $req, $res) + { + try { + call_user_func($connection->onRequest, $req, $res); + } catch (Exception $e) { + echo $e; + } + } + + public static function emitClose($connection) + { + $req = $connection->httpRequest; + if (isset($req->onClose)) { + try { + call_user_func($req->onClose, $req); + } catch (Exception $e) { + echo $e; + } + } + $res = $connection->httpResponse; + if (isset($res->onClose)) { + try { + call_user_func($res->onClose, $res); + } catch (Exception $e) { + echo $e; + } + } + self::cleanup($connection); + } + + public static function cleanup($connection) + { + if (! empty($connection->onRequest)) { + $connection->onRequest = null; + } + if (! empty($connection->onWebSocketConnect)) { + $connection->onWebSocketConnect = null; + } + if (! empty($connection->httpRequest)) { + $connection->httpRequest->destroy(); + $connection->httpRequest = null; + } + if (! empty($connection->httpResponse)) { + $connection->httpResponse->destroy(); + $connection->httpResponse = null; + } + } + + public static function emitData($connection, $req, $data) + { + if (isset($req->onData)) { + try { + call_user_func($req->onData, $req, $data); + } catch (Exception $e) { + echo $e; + } + } + } + + public static function emitEnd($connection, $req) + { + if (isset($req->onEnd)) { + try { + call_user_func($req->onEnd, $req); + } catch (Exception $e) { + echo $e; + } + } + $connection->hasReadedHead = false; + } + + public static function encode($buffer, $connection) + { + if (! isset($connection->onRequest)) { + $connection->httpResponse->setHeader('Content-Length', strlen($buffer)); + return $connection->httpResponse->getHeadBuffer() . $buffer; + } + return $buffer; + } + + public static function decode($http_buffer, $connection) + { + if (isset($connection->onRequest)) { + return $http_buffer; + } else { + list($head, $body) = explode("\r\n\r\n", $http_buffer, 2); + return $body; + } + } +} diff --git a/vendor/workerman/phpsocket.io/src/Engine/Protocols/WebSocket.php b/vendor/workerman/phpsocket.io/src/Engine/Protocols/WebSocket.php new file mode 100644 index 0000000..1487152 --- /dev/null +++ b/vendor/workerman/phpsocket.io/src/Engine/Protocols/WebSocket.php @@ -0,0 +1,84 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ + +namespace PHPSocketIO\Engine\Protocols; + +use PHPSocketIO\Engine\Protocols\Http\Request; +use PHPSocketIO\Engine\Protocols\Http\Response; +use PHPSocketIO\Engine\Protocols\WebSocket\RFC6455; +use Workerman\Connection\TcpConnection; + +/** + * WebSocket 协议服务端解包和打包 + */ +class WebSocket +{ + /** + * 最小包头 + * + * @var int + */ + const MIN_HEAD_LEN = 7; + + /** + * 检查包的完整性 + * + * @param string $buffer + */ + public static function input($buffer, $connection) + { + if (strlen($buffer) < self::MIN_HEAD_LEN) { + return 0; + } + // flash policy file + if (0 === strpos($buffer, 'send($policy_xml, true); + $connection->consumeRecvBuffer(strlen($buffer)); + return 0; + } + // http head + $pos = strpos($buffer, "\r\n\r\n"); + if (! $pos) { + if (strlen($buffer) >= TcpConnection::$maxPackageSize) { + $connection->close("HTTP/1.1 400 bad request\r\n\r\nheader too long"); + return 0; + } + return 0; + } + $req = new Request($connection, $buffer); + $res = new Response($connection); + $connection->consumeRecvBuffer(strlen($buffer)); + return self::dealHandshake($connection, $req, $res); + } + + /** + * 处理websocket握手 + * + * @param TcpConnection $connection + * @param $req + * @param $res + * @return int + */ + public static function dealHandshake($connection, $req, $res) + { + if (isset($req->headers['sec-websocket-key1'])) { + $res->writeHead(400); + $res->end("Not support"); + return 0; + } + $connection->protocol = 'PHPSocketIO\Engine\Protocols\WebSocket\RFC6455'; + return RFC6455::dealHandshake($connection, $req, $res); + } +} diff --git a/vendor/workerman/phpsocket.io/src/Engine/Protocols/WebSocket/RFC6455.php b/vendor/workerman/phpsocket.io/src/Engine/Protocols/WebSocket/RFC6455.php new file mode 100644 index 0000000..f28bead --- /dev/null +++ b/vendor/workerman/phpsocket.io/src/Engine/Protocols/WebSocket/RFC6455.php @@ -0,0 +1,300 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ + +namespace PHPSocketIO\Engine\Protocols\WebSocket; + +use Workerman\Connection\ConnectionInterface; +use Workerman\Connection\TcpConnection; +use Workerman\Protocols\ProtocolInterface; + +/** + * WebSocket 协议服务端解包和打包 + */ +class RFC6455 implements ProtocolInterface +{ + /** + * websocket头部最小长度 + * + * @var int + */ + const MIN_HEAD_LEN = 6; + + /** + * websocket blob类型 + * + * @var string + */ + const BINARY_TYPE_BLOB = "\x81"; + + /** + * websocket arraybuffer类型 + * + * @var string + */ + const BINARY_TYPE_ARRAYBUFFER = "\x82"; + + /** + * 检查包的完整性 + * + * @param string $buffer + */ + public static function input($buffer, ConnectionInterface $connection) + { + // 数据长度 + $recv_len = strlen($buffer); + // 长度不够 + if ($recv_len < self::MIN_HEAD_LEN) { + return 0; + } + + // $connection->websocketCurrentFrameLength有值说明当前fin为0,则缓冲websocket帧数据 + if ($connection->websocketCurrentFrameLength) { + // 如果当前帧数据未收全,则继续收 + if ($connection->websocketCurrentFrameLength > $recv_len) { + // 返回0,因为不清楚完整的数据包长度,需要等待fin=1的帧 + return 0; + } + } else { + $data_len = ord($buffer[1]) & 127; + $firstbyte = ord($buffer[0]); + $is_fin_frame = $firstbyte >> 7; + $opcode = $firstbyte & 0xf; + switch ($opcode) { + // 附加数据帧 @todo 实现附加数据帧 + case 0x1: + case 0x2: + case 0x0: + break; + // 文本数据帧 + // 二进制数据帧 + // 关闭的包 + case 0x8: + // 如果有设置onWebSocketClose回调,尝试执行 + if (isset($connection->onWebSocketClose)) { + call_user_func($connection->onWebSocketClose, $connection); + } // 默认行为是关闭连接 + else { + $connection->close(); + } + return 0; + // ping的包 + case 0x9: + // 如果有设置onWebSocketPing回调,尝试执行 + if (isset($connection->onWebSocketPing)) { + call_user_func($connection->onWebSocketPing, $connection); + } // 默认发送pong + else { + $connection->send(pack('H*', '8a00'), true); + } + // 从接受缓冲区中消费掉该数据包 + if (! $data_len) { + $connection->consumeRecvBuffer(self::MIN_HEAD_LEN); + return 0; + } + break; + // pong的包 + case 0xa: + // 如果有设置onWebSocketPong回调,尝试执行 + if (isset($connection->onWebSocketPong)) { + call_user_func($connection->onWebSocketPong, $connection); + } + // 从接受缓冲区中消费掉该数据包 + if (! $data_len) { + $connection->consumeRecvBuffer(self::MIN_HEAD_LEN); + return 0; + } + break; + // 错误的opcode + default: + echo "error opcode $opcode and close websocket connection\n"; + $connection->close(); + return 0; + } + + // websocket二进制数据 + $head_len = self::MIN_HEAD_LEN; + if ($data_len === 126) { + $head_len = 8; + if ($head_len > $recv_len) { + return 0; + } + $pack = unpack('ntotal_len', substr($buffer, 2, 2)); + $data_len = $pack['total_len']; + } elseif ($data_len === 127) { + $head_len = 14; + if ($head_len > $recv_len) { + return 0; + } + $arr = unpack('N2', substr($buffer, 2, 8)); + $data_len = $arr[1] * 4294967296 + $arr[2]; + } + $current_frame_length = $head_len + $data_len; + if ($is_fin_frame) { + return $current_frame_length; + } else { + $connection->websocketCurrentFrameLength = $current_frame_length; + } + } + + // 收到的数据刚好是一个frame + if ($connection->websocketCurrentFrameLength == $recv_len) { + self::decode($buffer, $connection); + $connection->consumeRecvBuffer($connection->websocketCurrentFrameLength); + $connection->websocketCurrentFrameLength = 0; + return 0; + } // 收到的数据大于一个frame + elseif ($connection->websocketCurrentFrameLength < $recv_len) { + self::decode(substr($buffer, 0, $connection->websocketCurrentFrameLength), $connection); + $connection->consumeRecvBuffer($connection->websocketCurrentFrameLength); + $current_frame_length = $connection->websocketCurrentFrameLength; + $connection->websocketCurrentFrameLength = 0; + // 继续读取下一个frame + return self::input(substr($buffer, $current_frame_length), $connection); + } // 收到的数据不足一个frame + else { + return 0; + } + } + + /** + * 打包 + * + * @param string $buffer + * @return string + */ + public static function encode($buffer, ConnectionInterface $connection) + { + $len = strlen($buffer); + if (empty($connection->websocketHandshake)) { + // 默认是utf8文本格式 + $connection->websocketType = self::BINARY_TYPE_BLOB; + } + + $first_byte = $connection->websocketType; + + if ($len <= 125) { + $encode_buffer = $first_byte . chr($len) . $buffer; + } elseif ($len <= 65535) { + $encode_buffer = $first_byte . chr(126) . pack("n", $len) . $buffer; + } else { + $encode_buffer = $first_byte . chr(127) . pack("xxxxN", $len) . $buffer; + } + + // 还没握手不能发数据,先将数据缓冲起来,等握手完毕后发送 + if (empty($connection->websocketHandshake)) { + if (empty($connection->websocketTmpData)) { + // 临时数据缓冲 + $connection->websocketTmpData = ''; + } + $connection->websocketTmpData .= $encode_buffer; + // 返回空,阻止发送 + return ''; + } + + return $encode_buffer; + } + + /** + * 解包 + * + * @param string $buffer + * @return string + */ + public static function decode($buffer, ConnectionInterface $connection) + { + $masks = $data = $decoded = null; + $len = ord($buffer[1]) & 127; + if ($len === 126) { + $masks = substr($buffer, 4, 4); + $data = substr($buffer, 8); + } elseif ($len === 127) { + $masks = substr($buffer, 10, 4); + $data = substr($buffer, 14); + } else { + $masks = substr($buffer, 2, 4); + $data = substr($buffer, 6); + } + for ($index = 0; $index < strlen($data); $index++) { + $decoded .= $data[$index] ^ $masks[$index % 4]; + } + if ($connection->websocketCurrentFrameLength) { + $connection->websocketDataBuffer .= $decoded; + return $connection->websocketDataBuffer; + } else { + $decoded = $connection->websocketDataBuffer . $decoded; + $connection->websocketDataBuffer = ''; + return $decoded; + } + } + + /** + * 处理websocket握手 + * + * @param TcpConnection $connection + * @param $req + * @param $res + * @return int + */ + public static function dealHandshake($connection, $req, $res) + { + $headers = []; + if (isset($connection->onWebSocketConnect)) { + try { + call_user_func_array($connection->onWebSocketConnect, [$connection, $req, $res]); + } catch (\Exception $e) { + echo $e; + } + if (! $res->writable) { + return false; + } + } + + if (isset($req->headers['sec-websocket-key'])) { + $sec_websocket_key = $req->headers['sec-websocket-key']; + } else { + $res->writeHead(400); + $res->end('400 Bad Request
    Upgrade to websocket but Sec-WebSocket-Key not found.'); + return 0; + } + + // 标记已经握手 + $connection->websocketHandshake = true; + // 缓冲fin为0的包,直到fin为1 + $connection->websocketDataBuffer = ''; + // 当前数据帧的长度,可能是fin为0的帧,也可能是fin为1的帧 + $connection->websocketCurrentFrameLength = 0; + // 当前帧的数据缓冲 + $connection->websocketCurrentFrameBuffer = ''; + // blob or arraybuffer + $connection->websocketType = self::BINARY_TYPE_BLOB; + + $sec_websocket_accept = base64_encode(sha1($sec_websocket_key . '258EAFA5-E914-47DA-95CA-C5AB0DC85B11', true)); + $headers['Content-Length'] = 0; + $headers['Upgrade'] = 'websocket'; + $headers['Sec-WebSocket-Version'] = 13; + $headers['Connection'] = 'Upgrade'; + $headers['Sec-WebSocket-Accept'] = $sec_websocket_accept; + $res->writeHead(101, '', $headers); + $res->end(); + + // 握手后有数据要发送 + if (! empty($connection->websocketTmpData)) { + $connection->send($connection->websocketTmpData, true); + $connection->websocketTmpData = ''; + } + + return 0; + } +} diff --git a/vendor/workerman/phpsocket.io/src/Engine/Socket.php b/vendor/workerman/phpsocket.io/src/Engine/Socket.php new file mode 100644 index 0000000..760d8b1 --- /dev/null +++ b/vendor/workerman/phpsocket.io/src/Engine/Socket.php @@ -0,0 +1,360 @@ +id = $id; + $this->server = $server; + $this->request = $req; + $this->remoteAddress = $req->connection->getRemoteIp() . ':' . $req->connection->getRemotePort(); + $this->setTransport($transport); + $this->onOpen(); + Debug::debug('Engine/Socket __construct'); + } + + public function __destruct() + { + Debug::debug('Engine/Socket __destruct'); + } + + public function maybeUpgrade(object $transport): void + { + $this->upgrading = true; + $this->upgradeTimeoutTimer = Timer::add( + $this->server->upgradeTimeout, + [$this, 'upgradeTimeoutCallback'], + [$transport], + false + ); + $this->upgradeTransport = $transport; + $transport->on('packet', [$this, 'onUpgradePacket']); + $transport->once('close', [$this, 'onUpgradeTransportClose']); + $transport->once('error', [$this, 'onUpgradeTransportError']); + $this->once('close', [$this, 'onUpgradeTransportClose']); + } + + public function onUpgradePacket(array $packet): void + { + if (empty($this->upgradeTransport)) { + $this->onError('upgradeTransport empty'); + return; + } + if ('ping' === $packet['type'] && (isset($packet['data']) && 'probe' === $packet['data'])) { + $this->upgradeTransport->send([['type' => 'pong', 'data' => 'probe']]); + if ($this->checkIntervalTimer) { + Timer::del($this->checkIntervalTimer); + } + $this->checkIntervalTimer = Timer::add(0.5, [$this, 'check']); + } elseif ('upgrade' === $packet['type'] && $this->readyState !== 'closed') { + $this->upgradeCleanup(); + $this->upgraded = true; + $this->clearTransport(); + $this->transport->destroy(); + $this->setTransport($this->upgradeTransport); + $this->emit('upgrade', $this->upgradeTransport); + $this->upgradeTransport = null; + $this->setPingTimeout(); + $this->flush(); + if ($this->readyState === 'closing') { + $this->transport->close([$this, 'onClose']); + } + } else { + $this->upgradeCleanup(); + $this->upgradeTransport->close(); + $this->upgradeTransport = null; + } + } + + public function upgradeCleanup(): void + { + $this->upgrading = false; + Timer::del($this->checkIntervalTimer); + Timer::del($this->upgradeTimeoutTimer); + if (! empty($this->upgradeTransport)) { + $this->upgradeTransport->removeListener('packet', [$this, 'onUpgradePacket']); + $this->upgradeTransport->removeListener('close', [$this, 'onUpgradeTransportClose']); + $this->upgradeTransport->removeListener('error', [$this, 'onUpgradeTransportError']); + } + $this->removeListener('close', [$this, 'onUpgradeTransportClose']); + } + + public function onUpgradeTransportClose(): void + { + $this->onUpgradeTransportError('transport closed'); + } + + public function onUpgradeTransportError($err): void + { + $this->upgradeCleanup(); + if ($this->upgradeTransport) { + $this->upgradeTransport->close(); + $this->upgradeTransport = null; + } + } + + public function upgradeTimeoutCallback(object $transport): void + { + $this->upgradeCleanup(); + if ('open' === $transport->readyState) { + $transport->close(); + } + } + + public function setTransport(object $transport) + { + $this->transport = $transport; + $this->transport->once('error', [$this, 'onError']); + $this->transport->on('packet', [$this, 'onPacket']); + $this->transport->on('drain', [$this, 'flush']); + $this->transport->once('close', [$this, 'onClose']); + //this function will manage packet events (also message callbacks) + $this->setupSendCallback(); + } + + public function onOpen(): void + { + $this->readyState = 'open'; + + $this->transport->sid = $this->id; + $this->sendPacket( + 'open', + json_encode( + [ + 'sid' => $this->id, + 'upgrades' => $this->getAvailableUpgrades(), + 'pingInterval' => $this->server->pingInterval * 1000, + 'pingTimeout' => $this->server->pingTimeout * 1000 + ] + ) + ); + + $this->emit('open'); + $this->setPingTimeout(); + } + + public function onPacket(array $packet) + { + if ('open' === $this->readyState) { + // export packet event + $this->emit('packet', $packet); + + // Reset ping timeout on any packet, incoming data is a good sign of + // other side's liveness + $this->setPingTimeout(); + switch ($packet['type']) { + case 'ping': + $this->sendPacket('pong'); + $this->emit('heartbeat'); + break; + case 'error': + $this->onClose('parse error'); + break; + case 'message': + $this->emit('data', $packet['data']); + $this->emit('message', $packet['data']); + break; + } + } else { + echo('packet received with closed socket'); + } + } + + public function check(): void + { + if ('polling' == $this->transport->name && $this->transport->writable) { + $this->transport->send([['type' => 'noop']]); + } + } + + public function onError($err): void + { + $this->onClose('transport error', $err); + } + + public function setPingTimeout(): void + { + if ($this->pingTimeoutTimer) { + Timer::del($this->pingTimeoutTimer); + } + $this->pingTimeoutTimer = Timer::add( + $this->server->pingInterval + $this->server->pingTimeout, + [$this, 'pingTimeoutCallback'], + null, + false + ); + } + + public function pingTimeoutCallback(): void + { + $this->transport->close(); + $this->onClose('ping timeout'); + } + + public function clearTransport(): void + { + $this->transport->close(); + Timer::del($this->pingTimeoutTimer); + } + + public function onClose(string $reason = '', ?string $description = null): void + { + if ('closed' !== $this->readyState) { + Timer::del($this->pingTimeoutTimer); + + if (! empty($this->checkIntervalTimer)) { + Timer::del($this->checkIntervalTimer); + } + + $this->checkIntervalTimer = null; + + if (! empty($this->checkIntervalTimer)) { + Timer::del($this->upgradeTimeoutTimer); + } + + // clean writeBuffer in next tick, so developers can still + // grab the writeBuffer on 'close' event + $this->writeBuffer = []; + $this->packetsFn = []; + $this->sentCallbackFn = []; + $this->clearTransport(); + $this->readyState = 'closed'; + $this->emit('close', $this->id, $reason, $description); + $this->server = null; + $this->request = null; + $this->upgradeTransport = null; + $this->removeAllListeners(); + if (! empty($this->transport)) { + $this->transport->removeAllListeners(); + $this->transport = null; + } + } + } + + public function send($data, $options, ?callable $callback): Socket + { + $this->sendPacket('message', $data, $callback); + return $this; + } + + public function write($data, ?array $options = [], ?callable $callback = null): Socket + { + return $this->send($data, $options, $callback); + } + + public function sendPacket(string $type, $data = null, $callback = null): void + { + if ('closing' !== $this->readyState) { + $packet = [ + 'type' => $type + ]; + if ($data !== null) { + $packet['data'] = $data; + } + // exports packetCreate event + $this->emit('packetCreate', $packet); + $this->writeBuffer[] = $packet; + //add send callback to object + if ($callback) { + $this->packetsFn[] = $callback; + } + $this->flush(); + } + } + + public function flush(): void + { + if ('closed' !== $this->readyState && $this->transport->writable + && $this->writeBuffer + ) { + $this->emit('flush', $this->writeBuffer); + $this->server->emit('flush', $this, $this->writeBuffer); + $wbuf = $this->writeBuffer; + $this->writeBuffer = []; + if ($this->packetsFn) { + if (! empty($this->transport->supportsFraming)) { + $this->sentCallbackFn[] = $this->packetsFn; + } else { + // @todo check + $this->sentCallbackFn[] = $this->packetsFn; + } + } + $this->packetsFn = []; + $this->transport->send($wbuf); + $this->emit('drain'); + if ($this->server) { + $this->server->emit('drain', $this); + } + } + } + + public function getAvailableUpgrades(): array + { + return ['websocket']; + } + + public function close(): void + { + if ('open' !== $this->readyState) { + return; + } + + $this->readyState = 'closing'; + + if ($this->writeBuffer) { + $this->once('drain', [$this, 'closeTransport']); + return; + } + + $this->closeTransport(); + } + + public function closeTransport(): void + { + $this->transport->close([$this, 'onClose']); + } + + public function setupSendCallback(): void + { + //the message was sent successfully, execute the callback + $this->transport->on('drain', [$this, 'onDrainCallback']); + } + + public function onDrainCallback(): void + { + if ($this->sentCallbackFn) { + $seqFn = array_shift($this->sentCallbackFn); + if (is_callable($seqFn)) { + echo('executing send callback'); + call_user_func($seqFn, $this->transport); + } elseif (is_array($seqFn)) { + echo('executing batch send callback'); + foreach ($seqFn as $fn) { + call_user_func($fn, $this->transport); + } + } + } + } +} diff --git a/vendor/workerman/phpsocket.io/src/Engine/Transport.php b/vendor/workerman/phpsocket.io/src/Engine/Transport.php new file mode 100644 index 0000000..09f07a5 --- /dev/null +++ b/vendor/workerman/phpsocket.io/src/Engine/Transport.php @@ -0,0 +1,80 @@ +req = $req; + } + + public function close(?callable $fn = null): void + { + $this->readyState = 'closing'; + $fn = $fn ?: [$this, 'noop']; + $this->doClose($fn); + } + + public function onError(string $msg, string $desc = '') + { + if ($this->listeners('error')) { + $err = [ + 'type' => 'TransportError', + 'description' => $desc, + ]; + $this->emit('error', $err); + } else { + echo("ignored transport error $msg $desc\n"); + } + } + + public function onPacket($packet): void + { + $this->emit('packet', $packet); + } + + public function onData($data) + { + $this->onPacket(Parser::decodePacket($data)); + } + + public function onClose() + { + $this->req = $this->res = null; + $this->readyState = 'closed'; + $this->emit('close'); + $this->removeAllListeners(); + } + + public function destroy(): void + { + $this->req = null; + $this->res = null; + $this->readyState = 'closed'; + $this->removeAllListeners(); + $this->shouldClose = null; + } +} diff --git a/vendor/workerman/phpsocket.io/src/Engine/Transports/Polling.php b/vendor/workerman/phpsocket.io/src/Engine/Transports/Polling.php new file mode 100644 index 0000000..bb8a50b --- /dev/null +++ b/vendor/workerman/phpsocket.io/src/Engine/Transports/Polling.php @@ -0,0 +1,176 @@ +res; + + if ('GET' === $req->method) { + $this->onPollRequest($req, $res); + } elseif ('POST' === $req->method) { + $this->onDataRequest($req, $res); + } else { + $res->writeHead(500); + $res->end(); + } + } + + public function onPollRequest(object $req, object $res): void + { + if ($this->req) { + $this->onError('overlap from client'); + $res->writeHead(500); + return; + } + + $this->req = $req; + $this->res = $res; + + $req->onClose = [$this, 'pollRequestOnClose']; + $req->cleanup = [$this, 'pollRequestClean']; + + $this->writable = true; + $this->emit('drain'); + + if ($this->writable && $this->shouldClose) { + echo('triggering empty send to append close packet'); + $this->send([['type' => 'noop']]); + } + } + + public function pollRequestOnClose(): void + { + $this->onError('poll connection closed prematurely'); + $this->pollRequestClean(); + } + + public function pollRequestClean(): void + { + if (isset($this->req)) { + $this->req = null; + $this->res = null; + } + } + + public function onDataRequest($req, $res): void + { + if (isset($this->dataReq)) { + $this->onError('data request overlap from client'); + $res->writeHead(500); + return; + } + + $this->dataReq = $req; + $this->dataRes = $res; + $req->onClose = [$this, 'dataRequestOnClose']; + $req->onData = [$this, 'dataRequestOnData']; + $req->onEnd = [$this, 'dataRequestOnEnd']; + } + + public function dataRequestCleanup(): void + { + $this->chunks = ''; + $this->dataReq = null; + $this->dataRes = null; + } + + public function dataRequestOnClose(): void + { + $this->dataRequestCleanup(); + $this->onError('data request connection closed prematurely'); + } + + public function dataRequestOnData($req, $data): void + { + $this->chunks .= $data; + } + + public function dataRequestOnEnd(): void + { + $this->onData($this->chunks); + + $headers = [ + 'Content-Type' => 'text/html', + 'Content-Length' => 2, + 'X-XSS-Protection' => '0', + ]; + + $this->dataRes->writeHead(200, '', $this->headers($this->dataReq, $headers)); + $this->dataRes->end('ok'); + $this->dataRequestCleanup(); + } + + public function onData($data) + { + $packets = Parser::decodePayload($data); + if (isset($packets['type'])) { + if ('close' === $packets['type']) { + $this->onClose(); + return false; + } else { + $packets = [$packets]; + } + } + + foreach ($packets as $packet) { + $this->onPacket($packet); + } + } + + public function onClose() + { + if ($this->writable) { + $this->send([['type' => 'noop']]); + } + parent::onClose(); + } + + public function send($packets): void + { + $this->writable = false; + if ($this->shouldClose) { + echo('appending close packet to payload'); + $packets[] = ['type' => 'close']; + call_user_func($this->shouldClose); + $this->shouldClose = null; + } + $data = Parser::encodePayload($packets, $this->supportsBinary); + $this->write($data); + } + + public function write($data): void + { + $this->doWrite($data); + if (! empty($this->req->cleanup)) { + call_user_func($this->req->cleanup); + } + } + + public function doClose(callable $fn): void + { + if (! empty($this->dataReq)) { + $this->dataReq->destroy(); + } + + if ($this->writable) { + $this->send([['type' => 'close']]); + call_user_func($fn); + } else { + $this->shouldClose = $fn; + } + } +} diff --git a/vendor/workerman/phpsocket.io/src/Engine/Transports/PollingJsonp.php b/vendor/workerman/phpsocket.io/src/Engine/Transports/PollingJsonp.php new file mode 100644 index 0000000..86df54d --- /dev/null +++ b/vendor/workerman/phpsocket.io/src/Engine/Transports/PollingJsonp.php @@ -0,0 +1,60 @@ +head = '___eio[' . (isset($req['_query']['j']) ? preg_replace('/[^0-9]/', '', $req['_query']['j']) : '') . ']('; + Debug::debug('PollingJsonp __construct'); + } + + public function __destruct() + { + Debug::debug('PollingJsonp __destruct'); + } + + public function onData($data) + { + $parsed_data = null; + parse_str($data, $parsed_data); + $data = $parsed_data['d']; + call_user_func(array(get_parent_class($this), 'onData'), preg_replace('/\\\\n/', '\\n', $data)); + } + + public function doWrite($data): void + { + $js = json_encode($data); + + $data = $this->head . $js . $this->foot; + + // explicit UTF-8 is required for pages not served under utf + $headers = [ + 'Content-Type' => 'text/javascript; charset=UTF-8', + 'Content-Length' => strlen($data), + 'X-XSS-Protection' => '0' + ]; + if (empty($this->res)) { + echo new Exception('empty $this->res'); + return; + } + $this->res->writeHead(200, '', $this->headers($headers)); + $this->res->end($data); + } + + public function headers(array $headers = []): array + { + $listeners = $this->listeners('headers'); + foreach ($listeners as $listener) { + $listener($headers); + } + return $headers; + } +} diff --git a/vendor/workerman/phpsocket.io/src/Engine/Transports/PollingXHR.php b/vendor/workerman/phpsocket.io/src/Engine/Transports/PollingXHR.php new file mode 100644 index 0000000..c43f90f --- /dev/null +++ b/vendor/workerman/phpsocket.io/src/Engine/Transports/PollingXHR.php @@ -0,0 +1,66 @@ +method) { + $res = $req->res; + $headers = $this->headers($req); + $headers['Access-Control-Allow-Headers'] = 'Content-Type'; + $res->writeHead(200, '', $headers); + $res->end(); + } else { + parent::onRequest($req); + } + } + + public function doWrite($data) + { + // explicit UTF-8 is required for pages not served under utf todo + $content_type = preg_match('/^\d+:/', $data) ? 'text/plain; charset=UTF-8' : 'application/octet-stream'; + $content_length = strlen($data); + $headers = [ + 'Content-Type' => $content_type, + 'Content-Length' => $content_length, + 'X-XSS-Protection' => '0', + ]; + if (empty($this->res)) { + echo new \Exception('empty this->res'); + return; + } + $this->res->writeHead(200, '', $this->headers($this->req, $headers)); + $this->res->end($data); + } + + public function headers(object $req, array $headers = []): array + { + if (isset($req->headers['origin'])) { + $headers['Access-Control-Allow-Credentials'] = 'true'; + $headers['Access-Control-Allow-Origin'] = $req->headers['origin']; + } else { + $headers['Access-Control-Allow-Origin'] = '*'; + } + $listeners = $this->listeners('headers'); + foreach ($listeners as $listener) { + $listener($headers); + } + return $headers; + } +} diff --git a/vendor/workerman/phpsocket.io/src/Engine/Transports/WebSocket.php b/vendor/workerman/phpsocket.io/src/Engine/Transports/WebSocket.php new file mode 100644 index 0000000..97b9a0b --- /dev/null +++ b/vendor/workerman/phpsocket.io/src/Engine/Transports/WebSocket.php @@ -0,0 +1,64 @@ +socket = $req->connection; + $this->socket->onMessage = [$this, 'onData2']; + $this->socket->onClose = [$this, 'onClose']; + $this->socket->onError = [$this, 'onError2']; + Debug::debug('WebSocket __construct'); + } + + public function __destruct() + { + Debug::debug('WebSocket __destruct'); + } + + public function onData2($connection, $data): void + { + call_user_func(array(get_parent_class($this), 'onData'), $data); + + } + + public function onError2($conection, $code, $msg): void + { + call_user_func(array(get_parent_class($this), 'onData'), $code, $msg); + } + + public function send(array $packets): void + { + foreach ($packets as $packet) { + $data = Parser::encodePacket($packet); + if ($this->socket) { + $this->socket->send($data); + $this->emit('drain'); + } + } + } + + public function doClose(callable $fn = null): void + { + if ($this->socket) { + $this->socket->close(); + $this->socket = null; + if (! empty($fn)) { + call_user_func($fn); + } + } + } +} diff --git a/vendor/workerman/phpsocket.io/src/Event/Emitter.php b/vendor/workerman/phpsocket.io/src/Event/Emitter.php new file mode 100644 index 0000000..15c77ff --- /dev/null +++ b/vendor/workerman/phpsocket.io/src/Event/Emitter.php @@ -0,0 +1,96 @@ +[[listener1, once?], [listener2,once?], ..], ..] + */ + protected $_eventListenerMap = []; + + public function on($event_name, $listener): Emitter + { + $this->emit('newListener', $event_name, $listener); + $this->_eventListenerMap[$event_name][] = [$listener, 0]; + return $this; + } + + public function once($event_name, $listener): Emitter + { + $this->_eventListenerMap[$event_name][] = [$listener, 1]; + return $this; + } + + public function removeListener($event_name, $listener): Emitter + { + if (! isset($this->_eventListenerMap[$event_name])) { + return $this; + } + foreach ($this->_eventListenerMap[$event_name] as $key => $item) { + if ($item[0] === $listener) { + $this->emit('removeListener', $event_name, $listener); + unset($this->_eventListenerMap[$event_name][$key]); + } + } + if (empty($this->_eventListenerMap[$event_name])) { + unset($this->_eventListenerMap[$event_name]); + } + return $this; + } + + public function removeAllListeners($event_name = null): Emitter + { + $this->emit('removeListener', $event_name); + if (null === $event_name) { + $this->_eventListenerMap = []; + return $this; + } + unset($this->_eventListenerMap[$event_name]); + return $this; + } + + public function listeners($event_name): array + { + if (empty($this->_eventListenerMap[$event_name])) { + return []; + } + $listeners = []; + foreach ($this->_eventListenerMap[$event_name] as $item) { + $listeners[] = $item[0]; + } + return $listeners; + } + + public function emit($event_name = null) + { + if (empty($event_name) || empty($this->_eventListenerMap[$event_name])) { + return false; + } + foreach ($this->_eventListenerMap[$event_name] as $key => $item) { + $args = func_get_args(); + unset($args[0]); + call_user_func_array($item[0], $args); + // once ? + if ($item[1]) { + unset($this->_eventListenerMap[$event_name][$key]); + if (empty($this->_eventListenerMap[$event_name])) { + unset($this->_eventListenerMap[$event_name]); + } + } + } + return true; + } +} diff --git a/vendor/workerman/phpsocket.io/src/Nsp.php b/vendor/workerman/phpsocket.io/src/Nsp.php new file mode 100644 index 0000000..bfd2e42 --- /dev/null +++ b/vendor/workerman/phpsocket.io/src/Nsp.php @@ -0,0 +1,158 @@ + 'connect', // for symmetry with client + 'connection' => 'connection', + 'newListener' => 'newListener' + ]; + + public function __construct($server, $name) + { + $this->name = $name; + $this->server = $server; + $this->initAdapter(); + Debug::debug('Nsp __construct'); + } + + public function __destruct() + { + Debug::debug('Nsp __destruct'); + } + + public function initAdapter() + { + $adapter_name = $this->server->adapter(); + $this->adapter = new $adapter_name($this); + } + + public function to($name): Nsp + { + if (! isset($this->rooms[$name])) { + $this->rooms[$name] = $name; + } + return $this; + } + + public function in($name): Nsp + { + return $this->to($name); + } + + public function add($client, $nsp, $fn) + { + $socket_name = $this->server->socket(); + $socket = new $socket_name($this, $client); + if ('open' === $client->conn->readyState) { + $this->sockets[$socket->id] = $socket; + $socket->onconnect(); + if (! empty($fn)) { + call_user_func($fn, $socket, $nsp); + } + $this->emit('connect', $socket); + $this->emit('connection', $socket); + } else { + echo('next called after client was closed - ignoring socket'); + } + } + + /** + * Removes a client. Called by each `Socket`. + * + * @api private + */ + public function remove($socket) + { + // todo $socket->id + unset($this->sockets[$socket->id]); + } + + + /** + * Emits to all clients. + * + * @param null $ev + * @return Nsp|void {Namespace} self + * @api public + */ + public function emit($ev = null) + { + $args = func_get_args(); + if (isset(self::$events[$ev])) { + call_user_func_array([get_parent_class(__CLASS__), 'emit'], $args); + } else { + // set up packet object + + $parserType = Parser::EVENT; // default + //if (self::hasBin($args)) { $parserType = Parser::BINARY_EVENT; } // binary + + $packet = ['type' => $parserType, 'data' => $args]; + + if (is_callable(end($args))) { + echo('Callbacks are not supported when broadcasting'); + return; + } + + $this->adapter->broadcast( + $packet, + [ + 'rooms' => $this->rooms, + 'flags' => $this->flags + ] + ); + + $this->rooms = []; + $this->flags = []; + } + return $this; + } + + public function send(): Nsp + { + $args = func_get_args(); + array_unshift($args, 'message'); + $this->emit($args); + return $this; + } + + public function write() + { + $args = func_get_args(); + return call_user_func_array([$this, 'send'], $args); + } + + public function clients($fn): Nsp + { + $this->adapter->clients($this->rooms, $fn); + return $this; + } + + /** + * Sets the compress flag. + * + * @param {Boolean} if `true`, compresses the sending data + * @return Nsp {Socket} self + * @api public + */ + public function compress($compress): Nsp + { + $this->flags['compress'] = $compress; + return $this; + } +} diff --git a/vendor/workerman/phpsocket.io/src/Parser/Decoder.php b/vendor/workerman/phpsocket.io/src/Parser/Decoder.php new file mode 100644 index 0000000..5084fcf --- /dev/null +++ b/vendor/workerman/phpsocket.io/src/Parser/Decoder.php @@ -0,0 +1,113 @@ +emit('decoded', $packet); + } + } + + /** + * @throws Exception + */ + public function decodeString($str): array + { + $p = []; + $i = 0; + + // look up type + $p['type'] = $str[0]; + if (! isset(Parser::$types[$p['type']])) { + return self::error(); + } + + // look up attachments if type binary + if (Parser::BINARY_EVENT == $p['type'] || Parser::BINARY_ACK == $p['type']) { + $buf = ''; + while ($str[++$i] != '-') { + $buf .= $str[$i]; + if ($i == strlen($str)) { + break; + } + } + if ($buf != intval($buf) || $str[$i] != '-') { + throw new Exception('Illegal attachments'); + } + $p['attachments'] = intval($buf); + } + + // look up namespace (if any) + if (isset($str[$i + 1]) && '/' === $str[$i + 1]) { + $p['nsp'] = ''; + while (++$i) { + if ($i === strlen($str)) { + break; + } + $c = $str[$i]; + if (',' === $c) { + break; + } + $p['nsp'] .= $c; + } + } else { + $p['nsp'] = '/'; + } + + // look up id + if (isset($str[$i + 1])) { + $next = $str[$i + 1]; + if ('' !== $next && strval((int)$next) === strval($next)) { + $p['id'] = ''; + while (++$i) { + $c = $str[$i]; + if (null == $c || strval((int)$c) != strval($c)) { + --$i; + break; + } + $p['id'] .= $str[$i]; + if ($i == strlen($str)) { + break; + } + } + $p['id'] = (int)$p['id']; + } + } + + // look up json data + if (isset($str[++$i])) { + $p['data'] = json_decode(substr($str, $i), true); + } + + return $p; + } + + public static function error(): array + { + return [ + 'type' => Parser::ERROR, + 'data' => 'parser error' + ]; + } +} diff --git a/vendor/workerman/phpsocket.io/src/Parser/Encoder.php b/vendor/workerman/phpsocket.io/src/Parser/Encoder.php new file mode 100644 index 0000000..eb5ec5f --- /dev/null +++ b/vendor/workerman/phpsocket.io/src/Parser/Encoder.php @@ -0,0 +1,72 @@ + 'error', + 'connect' => 'connect', + 'disconnect' => 'disconnect', + 'newListener' => 'newListener', + 'removeListener' => 'removeListener' + ]; + + public static $flagsMap = [ + 'json' => 'json', + 'volatile' => 'volatile', + 'broadcast' => 'broadcast' + ]; + + public function __construct($nsp, $client) + { + $this->nsp = $nsp; + $this->server = $nsp->server; + $this->adapter = $this->nsp->adapter; + $this->id = ($nsp->name !== '/') ? $nsp->name . '#' . $client->id : $client->id; + $this->request = $client->request; + $this->client = $client; + $this->conn = $client->conn; + $this->handshake = $this->buildHandshake(); + Debug::debug('IO Socket __construct'); + } + + public function __destruct() + { + Debug::debug('IO Socket __destruct'); + } + + public function buildHandshake(): array + { + //todo check this->request->_query + $info = ! empty($this->request->url) ? parse_url($this->request->url) : []; + $query = []; + if (isset($info['query'])) { + parse_str($info['query'], $query); + } + return [ + 'headers' => $this->request->headers ?? [], + 'time' => date('D M d Y H:i:s') . ' GMT', + 'address' => $this->conn->remoteAddress, + 'xdomain' => isset($this->request->headers['origin']), + 'secure' => ! empty($this->request->connection->encrypted), + 'issued' => time(), + 'url' => $this->request->url ?? '', + 'query' => $query, + ]; + } + + public function __get($name) + { + if ($name === 'broadcast') { + $this->flags['broadcast'] = true; + return $this; + } + return null; + } + + /** + * @throws Exception + */ + public function emit($ev = null) + { + $args = func_get_args(); + if (isset(self::$events[$ev])) { + call_user_func_array(array(get_parent_class(__CLASS__), 'emit'), $args); + } else { + $packet = []; + $packet['type'] = Parser::EVENT; + $packet['data'] = $args; + $flags = $this->flags; + // access last argument to see if it's an ACK callback + if (is_callable(end($args))) { + if ($this->_rooms || isset($flags['broadcast'])) { + throw new Exception('Callbacks are not supported when broadcasting'); + } + echo('emitting packet with ack id ' . $this->nsp->ids); + $this->acks[$this->nsp->ids] = array_pop($args); + $packet['id'] = $this->nsp->ids++; + } + + if ($this->_rooms || ! empty($flags['broadcast'])) { + $this->adapter->broadcast( + $packet, + [ + 'except' => [$this->id => $this->id], + 'rooms' => $this->_rooms, + 'flags' => $flags + ] + ); + } else { + // dispatch packet + $this->packet($packet); + } + + // reset flags + $this->_rooms = []; + $this->flags = []; + } + return $this; + } + + + /** + * Targets a room when broadcasting. + * + * @param {String} name + * @return Socket {Socket} self + * @api public + */ + public function to($name): Socket + { + if (! isset($this->_rooms[$name])) { + $this->_rooms[$name] = $name; + } + return $this; + } + + public function in($name): Socket + { + return $this->to($name); + } + + /** + * Sends a `message` event. + * + * @return Socket {Socket} self + * @api public + */ + public function send(): Socket + { + $args = func_get_args(); + array_unshift($args, 'message'); + call_user_func_array([$this, 'emit'], $args); + return $this; + } + + public function write(): Socket + { + $args = func_get_args(); + array_unshift($args, 'message'); + call_user_func_array([$this, 'emit'], $args); + return $this; + } + + /** + * Writes a packet. + * + * @param {Object} packet object + * @param {Object} options + * @api private + */ + public function packet($packet, $preEncoded = false) + { + if (! $this->nsp || ! $this->client) { + return; + } + $packet['nsp'] = $this->nsp->name; + $this->client->packet($packet, $preEncoded, false); + } + + /** + * Joins a room. + * + * @param {String} room + * @return Socket {Socket} self + * @api private + */ + public function join($room): Socket + { + if (! $this->connected) { + return $this; + } + if (isset($this->rooms[$room])) { + return $this; + } + $this->adapter->add($this->id, $room); + $this->rooms[$room] = $room; + return $this; + } + + /** + * Leaves a room. + * + * @param {String} room + * @return Socket {Socket} self + * @api private + */ + public function leave($room): Socket + { + $this->adapter->del($this->id, $room); + unset($this->rooms[$room]); + return $this; + } + + /** + * Leave all rooms. + * + * @api private + */ + + public function leaveAll() + { + $this->adapter->delAll($this->id); + $this->rooms = []; + } + + /** + * Called by `Namespace` upon succesful + * middleware execution (ie: authorization). + * + * @api private + */ + public function onconnect() + { + $this->nsp->connected[$this->id] = $this; + $this->join($this->id); + $this->packet( + [ + 'type' => Parser::CONNECT + ] + ); + } + + /** + * Called with each packet. Called by `Client`. + * + * @param {Object} packet + * @throws Exception + * @api private + */ + public function onpacket($packet) + { + switch ($packet['type']) { + case Parser::BINARY_EVENT: + case Parser::EVENT: + $this->onevent($packet); + break; + case Parser::BINARY_ACK: + case Parser::ACK: + $this->onack($packet); + break; + case Parser::DISCONNECT: + $this->ondisconnect(); + break; + case Parser::ERROR: + $this->emit('error', $packet['data']); + } + } + + /** + * Called upon event packet. + * + * @param {Object} packet object + * @api private + */ + public function onevent($packet) + { + $args = $packet['data'] ?? []; + if (! empty($packet['id']) || (isset($packet['id']) && $packet['id'] === 0)) { + $args[] = $this->ack($packet['id']); + } + call_user_func_array(array(get_parent_class(__CLASS__), 'emit'), $args); + } + + /** + * Produces an ack callback to emit with an event. + * + * @param {Number} packet id + * @api private + */ + public function ack($id): Closure + { + $sent = false; + return function () use (&$sent, $id) { + $self = $this; + // prevent double callbacks + if ($sent) { + return; + } + $args = func_get_args(); + $type = $this->hasBin($args) ? Parser::BINARY_ACK : Parser::ACK; + $self->packet( + [ + 'id' => $id, + 'type' => $type, + 'data' => $args + ] + ); + }; + } + + /** + * Called upon ack packet. + * + * @api private + */ + public function onack($packet) + { + $ack = $this->acks[$packet['id']]; + if (is_callable($ack)) { + call_user_func($ack, $packet['data']); + unset($this->acks[$packet['id']]); + } else { + echo('bad ack ' . $packet['id']); + } + } + + /** + * Called upon client disconnect packet. + * + * @throws Exception + * @api private + */ + public function ondisconnect() + { + $this->onclose('client namespace disconnect'); + } + + /** + * Handles a client error. + * + * @throws Exception + * @api private + */ + public function onerror($err) + { + if ($this->listeners('error')) { + $this->emit('error', $err); + } + } + + /** + * Called upon closing. Called by `Client`. + * + * @param {String} reason + * @param {Error} optional error object + * @throws Exception + * @api private + */ + public function onclose($reason) + { + if (! $this->connected) { + return $this; + } + $this->emit('disconnect', $reason); + $this->leaveAll(); + $this->nsp->remove($this); + $this->client->remove($this); + $this->connected = false; + $this->disconnected = true; + unset($this->nsp->connected[$this->id]); + // .... + $this->nsp = null; + $this->server = null; + $this->adapter = null; + $this->request = null; + $this->client = null; + $this->conn = null; + $this->removeAllListeners(); + } + + /** + * Produces an `error` packet. + * + * @param {Object} error object + * @api private + */ + + public function error($err) + { + $this->packet( + [ + 'type' => Parser::ERROR, 'data' => $err + ] + ); + } + + /** + * Disconnects this client. + * + * @param bool $close + * @return Socket {Socket} self + * @throws Exception + * @api public + */ + public function disconnect(bool $close = false): Socket + { + if (! $this->connected) { + return $this; + } + if ($close) { + $this->client->disconnect(); + } else { + $this->packet( + [ + 'type' => Parser::DISCONNECT + ] + ); + $this->onclose('server namespace disconnect'); + } + return $this; + } + + /** + * Sets the compress flag. + * + * @param {Boolean} if `true`, compresses the sending data + * @return Socket {Socket} self + * @api public + */ + public function compress($compress): Socket + { + $this->flags['compress'] = $compress; + return $this; + } + + protected function hasBin($args): bool + { + $hasBin = false; + + array_walk_recursive( + $args, + function ($item, $key) use ($hasBin) { + if (! ctype_print($item)) { + $hasBin = true; + } + } + ); + + return $hasBin; + } +} diff --git a/vendor/workerman/phpsocket.io/src/SocketIO.php b/vendor/workerman/phpsocket.io/src/SocketIO.php new file mode 100644 index 0000000..94c6687 --- /dev/null +++ b/vendor/workerman/phpsocket.io/src/SocketIO.php @@ -0,0 +1,177 @@ +nsp($nsp); + + $socket = $opts['socket'] ?? '\PHPSocketIO\Socket'; + $this->socket($socket); + + $adapter = $opts['adapter'] ?? '\PHPSocketIO\DefaultAdapter'; + $this->adapter($adapter); + if (isset($opts['origins'])) { + $this->origins($opts['origins']); + } + + unset($opts['nsp'], $opts['socket'], $opts['adapter'], $opts['origins']); + + $this->sockets = $this->of('/'); + + if (! class_exists('Protocols\SocketIO')) { + class_alias('PHPSocketIO\Engine\Protocols\SocketIO', 'Protocols\SocketIO'); + } + if ($port) { + $host = filter_var(trim($opts['host'] ?? '0.0.0.0', '[]'), FILTER_VALIDATE_IP) ?: '0.0.0.0'; + $worker = new Worker('SocketIO://' . $host . ':' . $port, $opts); + $worker->name = 'PHPSocketIO'; + + if (isset($opts['ssl'])) { + $worker->transport = 'ssl'; + } + + $this->attach($worker); + } + } + + public function nsp($v = null) + { + if (empty($v)) { + return $this->_nsp; + } + $this->_nsp = $v; + return $this; + } + + public function socket($v = null) + { + if (empty($v)) { + return $this->_socket; + } + $this->_socket = $v; + return $this; + } + + public function adapter($v = null) + { + if (empty($v)) { + return $this->_adapter; + } + $this->_adapter = $v; + foreach ($this->nsps as $nsp) { + $nsp->initAdapter(); + } + return $this; + } + + public function origins($v = null) + { + if ($v === null) { + return $this->_origins; + } + $this->_origins = $v; + if (isset($this->engine)) { + $this->engine->origins = $this->_origins; + } + return $this; + } + + public function attach($srv, $opts = []): SocketIO + { + $engine = new Engine(); + $engine->attach($srv, $opts); + + // Export http server + $this->worker = $srv; + + // bind to engine events + $this->bind($engine); + + return $this; + } + + public function bind($engine): SocketIO + { + $this->engine = $engine; + $this->engine->on('connection', [$this, 'onConnection']); + $this->engine->origins = $this->_origins; + return $this; + } + + public function of($name, $fn = null) + { + if ($name[0] !== '/') { + $name = "/$name"; + } + if (empty($this->nsps[$name])) { + $nsp_name = $this->nsp(); + $this->nsps[$name] = new $nsp_name($this, $name); + } + if ($fn) { + $this->nsps[$name]->on('connect', $fn); + } + return $this->nsps[$name]; + } + + public function onConnection($engine_socket): SocketIO + { + $client = new Client($this, $engine_socket); + $client->connect('/'); + return $this; + } + + public function on() + { + $args = array_pad(func_get_args(), 2, null); + + if ($args[0] === 'workerStart') { + $this->worker->onWorkerStart = $args[1]; + } elseif ($args[0] === 'workerStop') { + $this->worker->onWorkerStop = $args[1]; + } elseif ($args[0] !== null) { + return call_user_func_array([$this->sockets, 'on'], $args); + } + } + + public function in() + { + return call_user_func_array([$this->sockets, 'in'], func_get_args()); + } + + public function to() + { + return call_user_func_array([$this->sockets, 'to'], func_get_args()); + } + + public function emit() + { + return call_user_func_array([$this->sockets, 'emit'], func_get_args()); + } + + public function send() + { + return call_user_func_array([$this->sockets, 'send'], func_get_args()); + } + + public function write() + { + return call_user_func_array([$this->sockets, 'write'], func_get_args()); + } +} diff --git a/vendor/workerman/workerman-584743.status b/vendor/workerman/workerman-584743.status new file mode 100755 index 0000000..3cd2332 --- /dev/null +++ b/vendor/workerman/workerman-584743.status @@ -0,0 +1,11 @@ +a:1:{i:584744;a:2:{s:4:"name";s:16:"ShoproChatWorker";s:6:"listen";s:23:"socketIO://0.0.0.0:2222";}} +----------------------------------------------GLOBAL STATUS---------------------------------------------------- +Workerman version:4.2.1 PHP version:8.0.26 +start time:2025-10-28 19:02:32 run 0 days 0 hours +load average: 0.06, 0.08, 0.07 event-loop:\Workerman\Events\Select +1 workers 1 processes +worker_name exit_status exit_count +ShoproChatWorker 0 0 +----------------------------------------------PROCESS STATUS--------------------------------------------------- +pid memory listening worker_name connections send_fail timers total_request qps status +584744 4.78M socketIO://0.0.0.0:2222 ShoproChatWorker 0 0 2 0 diff --git a/vendor/workerman/workerman/.github/FUNDING.yml b/vendor/workerman/workerman/.github/FUNDING.yml new file mode 100644 index 0000000..beae44f --- /dev/null +++ b/vendor/workerman/workerman/.github/FUNDING.yml @@ -0,0 +1,4 @@ +# These are supported funding model platforms + +open_collective: workerman +patreon: walkor diff --git a/vendor/workerman/workerman/.gitignore b/vendor/workerman/workerman/.gitignore new file mode 100644 index 0000000..f3f9e18 --- /dev/null +++ b/vendor/workerman/workerman/.gitignore @@ -0,0 +1,6 @@ +logs +.buildpath +.project +.settings +.idea +.DS_Store diff --git a/vendor/workerman/workerman/Autoloader.php b/vendor/workerman/workerman/Autoloader.php new file mode 100644 index 0000000..7d760e9 --- /dev/null +++ b/vendor/workerman/workerman/Autoloader.php @@ -0,0 +1,69 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman; + +/** + * Autoload. + */ +class Autoloader +{ + /** + * Autoload root path. + * + * @var string + */ + protected static $_autoloadRootPath = ''; + + /** + * Set autoload root path. + * + * @param string $root_path + * @return void + */ + public static function setRootPath($root_path) + { + self::$_autoloadRootPath = $root_path; + } + + /** + * Load files by namespace. + * + * @param string $name + * @return boolean + */ + public static function loadByNamespace($name) + { + $class_path = \str_replace('\\', \DIRECTORY_SEPARATOR, $name); + if (\strpos($name, 'Workerman\\') === 0) { + $class_file = __DIR__ . \substr($class_path, \strlen('Workerman')) . '.php'; + } else { + if (self::$_autoloadRootPath) { + $class_file = self::$_autoloadRootPath . \DIRECTORY_SEPARATOR . $class_path . '.php'; + } + if (empty($class_file) || !\is_file($class_file)) { + $class_file = __DIR__ . \DIRECTORY_SEPARATOR . '..' . \DIRECTORY_SEPARATOR . "$class_path.php"; + } + } + + if (\is_file($class_file)) { + require_once($class_file); + if (\class_exists($name, false)) { + return true; + } + } + return false; + } +} + +\spl_autoload_register('\Workerman\Autoloader::loadByNamespace'); \ No newline at end of file diff --git a/vendor/workerman/workerman/Connection/AsyncTcpConnection.php b/vendor/workerman/workerman/Connection/AsyncTcpConnection.php new file mode 100644 index 0000000..30b1638 --- /dev/null +++ b/vendor/workerman/workerman/Connection/AsyncTcpConnection.php @@ -0,0 +1,382 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman\Connection; + +use StdClass; +use Workerman\Events\EventInterface; +use Workerman\Lib\Timer; +use Workerman\Worker; +use Exception; + +/** + * AsyncTcpConnection. + */ +class AsyncTcpConnection extends TcpConnection +{ + /** + * Emitted when socket connection is successfully established. + * + * @var callable|null + */ + public $onConnect = null; + + /** + * Transport layer protocol. + * + * @var string + */ + public $transport = 'tcp'; + + /** + * Status. + * + * @var int + */ + protected $_status = self::STATUS_INITIAL; + + /** + * Remote host. + * + * @var string + */ + protected $_remoteHost = ''; + + /** + * Remote port. + * + * @var int + */ + protected $_remotePort = 80; + + /** + * Connect start time. + * + * @var float + */ + protected $_connectStartTime = 0; + + /** + * Remote URI. + * + * @var string + */ + protected $_remoteURI = ''; + + /** + * Context option. + * + * @var array + */ + protected $_contextOption = null; + + /** + * Reconnect timer. + * + * @var int + */ + protected $_reconnectTimer = null; + + + /** + * PHP built-in protocols. + * + * @var array + */ + protected static $_builtinTransports = array( + 'tcp' => 'tcp', + 'udp' => 'udp', + 'unix' => 'unix', + 'ssl' => 'ssl', + 'sslv2' => 'sslv2', + 'sslv3' => 'sslv3', + 'tls' => 'tls' + ); + + /** + * Construct. + * + * @param string $remote_address + * @param array $context_option + * @throws Exception + */ + public function __construct($remote_address, array $context_option = array()) + { + $address_info = \parse_url($remote_address); + if (!$address_info) { + list($scheme, $this->_remoteAddress) = \explode(':', $remote_address, 2); + if('unix' === strtolower($scheme)) { + $this->_remoteAddress = substr($remote_address, strpos($remote_address, '/') + 2); + } + if (!$this->_remoteAddress) { + Worker::safeEcho(new \Exception('bad remote_address')); + } + } else { + if (!isset($address_info['port'])) { + $address_info['port'] = 0; + } + if (!isset($address_info['path'])) { + $address_info['path'] = '/'; + } + if (!isset($address_info['query'])) { + $address_info['query'] = ''; + } else { + $address_info['query'] = '?' . $address_info['query']; + } + $this->_remoteHost = $address_info['host']; + $this->_remotePort = $address_info['port']; + $this->_remoteURI = "{$address_info['path']}{$address_info['query']}"; + $scheme = isset($address_info['scheme']) ? $address_info['scheme'] : 'tcp'; + $this->_remoteAddress = 'unix' === strtolower($scheme) + ? substr($remote_address, strpos($remote_address, '/') + 2) + : $this->_remoteHost . ':' . $this->_remotePort; + } + + $this->id = $this->_id = self::$_idRecorder++; + if(\PHP_INT_MAX === self::$_idRecorder){ + self::$_idRecorder = 0; + } + // Check application layer protocol class. + if (!isset(self::$_builtinTransports[$scheme])) { + $scheme = \ucfirst($scheme); + $this->protocol = '\\Protocols\\' . $scheme; + if (!\class_exists($this->protocol)) { + $this->protocol = "\\Workerman\\Protocols\\$scheme"; + if (!\class_exists($this->protocol)) { + throw new Exception("class \\Protocols\\$scheme not exist"); + } + } + } else { + $this->transport = self::$_builtinTransports[$scheme]; + } + + // For statistics. + ++self::$statistics['connection_count']; + $this->maxSendBufferSize = self::$defaultMaxSendBufferSize; + $this->maxPackageSize = self::$defaultMaxPackageSize; + $this->_contextOption = $context_option; + $this->context = new StdClass; + static::$connections[$this->_id] = $this; + } + + /** + * Do connect. + * + * @return void + */ + public function connect() + { + if ($this->_status !== self::STATUS_INITIAL && $this->_status !== self::STATUS_CLOSING && + $this->_status !== self::STATUS_CLOSED) { + return; + } + $this->_status = self::STATUS_CONNECTING; + $this->_connectStartTime = \microtime(true); + set_error_handler(function() { + return false; + }); + if ($this->transport !== 'unix') { + if (!$this->_remotePort) { + $this->_remotePort = $this->transport === 'ssl' ? 443 : 80; + $this->_remoteAddress = $this->_remoteHost.':'.$this->_remotePort; + } + // Open socket connection asynchronously. + if ($this->_contextOption) { + $context = \stream_context_create($this->_contextOption); + $this->_socket = \stream_socket_client("tcp://{$this->_remoteHost}:{$this->_remotePort}", + $errno, $errstr, 0, \STREAM_CLIENT_ASYNC_CONNECT, $context); + } else { + $this->_socket = \stream_socket_client("tcp://{$this->_remoteHost}:{$this->_remotePort}", + $errno, $errstr, 0, \STREAM_CLIENT_ASYNC_CONNECT); + } + } else { + $this->_socket = \stream_socket_client("{$this->transport}://{$this->_remoteAddress}", $errno, $errstr, 0, + \STREAM_CLIENT_ASYNC_CONNECT); + } + restore_error_handler(); + // If failed attempt to emit onError callback. + if (!$this->_socket || !\is_resource($this->_socket)) { + $this->emitError(\WORKERMAN_CONNECT_FAIL, $errstr); + if ($this->_status === self::STATUS_CLOSING) { + $this->destroy(); + } + if ($this->_status === self::STATUS_CLOSED) { + $this->onConnect = null; + } + return; + } + // Add socket to global event loop waiting connection is successfully established or faild. + Worker::$globalEvent->add($this->_socket, EventInterface::EV_WRITE, array($this, 'checkConnection')); + // For windows. + if(\DIRECTORY_SEPARATOR === '\\') { + Worker::$globalEvent->add($this->_socket, EventInterface::EV_EXCEPT, array($this, 'checkConnection')); + } + } + + /** + * Reconnect. + * + * @param int $after + * @return void + */ + public function reconnect($after = 0) + { + $this->_status = self::STATUS_INITIAL; + static::$connections[$this->_id] = $this; + if ($this->_reconnectTimer) { + Timer::del($this->_reconnectTimer); + } + if ($after > 0) { + $this->_reconnectTimer = Timer::add($after, array($this, 'connect'), null, false); + return; + } + $this->connect(); + } + + /** + * CancelReconnect. + */ + public function cancelReconnect() + { + if ($this->_reconnectTimer) { + Timer::del($this->_reconnectTimer); + } + } + + /** + * Get remote address. + * + * @return string + */ + public function getRemoteHost() + { + return $this->_remoteHost; + } + + /** + * Get remote URI. + * + * @return string + */ + public function getRemoteURI() + { + return $this->_remoteURI; + } + + /** + * Try to emit onError callback. + * + * @param int $code + * @param string $msg + * @return void + */ + protected function emitError($code, $msg) + { + $this->_status = self::STATUS_CLOSING; + if ($this->onError) { + try { + \call_user_func($this->onError, $this, $code, $msg); + } catch (\Exception $e) { + Worker::stopAll(250, $e); + } catch (\Error $e) { + Worker::stopAll(250, $e); + } + } + } + + /** + * Check connection is successfully established or faild. + * + * @param resource $socket + * @return void + */ + public function checkConnection() + { + // Remove EV_EXPECT for windows. + if(\DIRECTORY_SEPARATOR === '\\') { + Worker::$globalEvent->del($this->_socket, EventInterface::EV_EXCEPT); + } + + // Remove write listener. + Worker::$globalEvent->del($this->_socket, EventInterface::EV_WRITE); + + if ($this->_status !== self::STATUS_CONNECTING) { + return; + } + + // Check socket state. + if ($address = \stream_socket_get_name($this->_socket, true)) { + // Nonblocking. + \stream_set_blocking($this->_socket, false); + // Compatible with hhvm + if (\function_exists('stream_set_read_buffer')) { + \stream_set_read_buffer($this->_socket, 0); + } + // Try to open keepalive for tcp and disable Nagle algorithm. + if (\function_exists('socket_import_stream') && $this->transport === 'tcp') { + $raw_socket = \socket_import_stream($this->_socket); + \socket_set_option($raw_socket, \SOL_SOCKET, \SO_KEEPALIVE, 1); + \socket_set_option($raw_socket, \SOL_TCP, \TCP_NODELAY, 1); + } + + // SSL handshake. + if ($this->transport === 'ssl') { + $this->_sslHandshakeCompleted = $this->doSslHandshake($this->_socket); + if ($this->_sslHandshakeCompleted === false) { + return; + } + } else { + // There are some data waiting to send. + if ($this->_sendBuffer) { + Worker::$globalEvent->add($this->_socket, EventInterface::EV_WRITE, array($this, 'baseWrite')); + } + } + + // Register a listener waiting read event. + Worker::$globalEvent->add($this->_socket, EventInterface::EV_READ, array($this, 'baseRead')); + + $this->_status = self::STATUS_ESTABLISHED; + $this->_remoteAddress = $address; + + // Try to emit onConnect callback. + if ($this->onConnect) { + try { + \call_user_func($this->onConnect, $this); + } catch (\Exception $e) { + Worker::stopAll(250, $e); + } catch (\Error $e) { + Worker::stopAll(250, $e); + } + } + // Try to emit protocol::onConnect + if ($this->protocol && \method_exists($this->protocol, 'onConnect')) { + try { + \call_user_func(array($this->protocol, 'onConnect'), $this); + } catch (\Exception $e) { + Worker::stopAll(250, $e); + } catch (\Error $e) { + Worker::stopAll(250, $e); + } + } + } else { + // Connection failed. + $this->emitError(\WORKERMAN_CONNECT_FAIL, 'connect ' . $this->_remoteAddress . ' fail after ' . round(\microtime(true) - $this->_connectStartTime, 4) . ' seconds'); + if ($this->_status === self::STATUS_CLOSING) { + $this->destroy(); + } + if ($this->_status === self::STATUS_CLOSED) { + $this->onConnect = null; + } + } + } +} diff --git a/vendor/workerman/workerman/Connection/AsyncUdpConnection.php b/vendor/workerman/workerman/Connection/AsyncUdpConnection.php new file mode 100644 index 0000000..745f060 --- /dev/null +++ b/vendor/workerman/workerman/Connection/AsyncUdpConnection.php @@ -0,0 +1,203 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman\Connection; + +use Workerman\Events\EventInterface; +use Workerman\Worker; +use \Exception; + +/** + * AsyncUdpConnection. + */ +class AsyncUdpConnection extends UdpConnection +{ + /** + * Emitted when socket connection is successfully established. + * + * @var callable + */ + public $onConnect = null; + + /** + * Emitted when socket connection closed. + * + * @var callable + */ + public $onClose = null; + + /** + * Connected or not. + * + * @var bool + */ + protected $connected = false; + + /** + * Context option. + * + * @var array + */ + protected $_contextOption = null; + + /** + * Construct. + * + * @param string $remote_address + * @throws Exception + */ + public function __construct($remote_address, $context_option = null) + { + // Get the application layer communication protocol and listening address. + list($scheme, $address) = \explode(':', $remote_address, 2); + // Check application layer protocol class. + if ($scheme !== 'udp') { + $scheme = \ucfirst($scheme); + $this->protocol = '\\Protocols\\' . $scheme; + if (!\class_exists($this->protocol)) { + $this->protocol = "\\Workerman\\Protocols\\$scheme"; + if (!\class_exists($this->protocol)) { + throw new Exception("class \\Protocols\\$scheme not exist"); + } + } + } + + $this->_remoteAddress = \substr($address, 2); + $this->_contextOption = $context_option; + } + + /** + * For udp package. + * + * @param resource $socket + * @return bool + */ + public function baseRead($socket) + { + $recv_buffer = \stream_socket_recvfrom($socket, Worker::MAX_UDP_PACKAGE_SIZE, 0, $remote_address); + if (false === $recv_buffer || empty($remote_address)) { + return false; + } + + if ($this->onMessage) { + if ($this->protocol) { + $parser = $this->protocol; + $recv_buffer = $parser::decode($recv_buffer, $this); + } + ++ConnectionInterface::$statistics['total_request']; + try { + \call_user_func($this->onMessage, $this, $recv_buffer); + } catch (\Exception $e) { + Worker::stopAll(250, $e); + } catch (\Error $e) { + Worker::stopAll(250, $e); + } + } + return true; + } + + /** + * Sends data on the connection. + * + * @param string $send_buffer + * @param bool $raw + * @return void|boolean + */ + public function send($send_buffer, $raw = false) + { + if (false === $raw && $this->protocol) { + $parser = $this->protocol; + $send_buffer = $parser::encode($send_buffer, $this); + if ($send_buffer === '') { + return; + } + } + if ($this->connected === false) { + $this->connect(); + } + return \strlen($send_buffer) === \stream_socket_sendto($this->_socket, $send_buffer, 0); + } + + + /** + * Close connection. + * + * @param mixed $data + * @param bool $raw + * + * @return bool + */ + public function close($data = null, $raw = false) + { + if ($data !== null) { + $this->send($data, $raw); + } + Worker::$globalEvent->del($this->_socket, EventInterface::EV_READ); + \fclose($this->_socket); + $this->connected = false; + // Try to emit onClose callback. + if ($this->onClose) { + try { + \call_user_func($this->onClose, $this); + } catch (\Exception $e) { + Worker::stopAll(250, $e); + } catch (\Error $e) { + Worker::stopAll(250, $e); + } + } + $this->onConnect = $this->onMessage = $this->onClose = null; + return true; + } + + /** + * Connect. + * + * @return void + */ + public function connect() + { + if ($this->connected === true) { + return; + } + if ($this->_contextOption) { + $context = \stream_context_create($this->_contextOption); + $this->_socket = \stream_socket_client("udp://{$this->_remoteAddress}", $errno, $errmsg, + 30, \STREAM_CLIENT_CONNECT, $context); + } else { + $this->_socket = \stream_socket_client("udp://{$this->_remoteAddress}", $errno, $errmsg); + } + + if (!$this->_socket) { + Worker::safeEcho(new \Exception($errmsg)); + return; + } + + \stream_set_blocking($this->_socket, false); + + if ($this->onMessage) { + Worker::$globalEvent->add($this->_socket, EventInterface::EV_READ, array($this, 'baseRead')); + } + $this->connected = true; + // Try to emit onConnect callback. + if ($this->onConnect) { + try { + \call_user_func($this->onConnect, $this); + } catch (\Exception $e) { + Worker::stopAll(250, $e); + } catch (\Error $e) { + Worker::stopAll(250, $e); + } + } + } + +} diff --git a/vendor/workerman/workerman/Connection/ConnectionInterface.php b/vendor/workerman/workerman/Connection/ConnectionInterface.php new file mode 100644 index 0000000..5d815d8 --- /dev/null +++ b/vendor/workerman/workerman/Connection/ConnectionInterface.php @@ -0,0 +1,126 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman\Connection; + +/** + * ConnectionInterface. + */ +#[\AllowDynamicProperties] +abstract class ConnectionInterface +{ + /** + * Statistics for status command. + * + * @var array + */ + public static $statistics = array( + 'connection_count' => 0, + 'total_request' => 0, + 'throw_exception' => 0, + 'send_fail' => 0, + ); + + /** + * Emitted when data is received. + * + * @var callable + */ + public $onMessage = null; + + /** + * Emitted when the other end of the socket sends a FIN packet. + * + * @var callable + */ + public $onClose = null; + + /** + * Emitted when an error occurs with connection. + * + * @var callable + */ + public $onError = null; + + /** + * Sends data on the connection. + * + * @param mixed $send_buffer + * @return void|boolean + */ + abstract public function send($send_buffer); + + /** + * Get remote IP. + * + * @return string + */ + abstract public function getRemoteIp(); + + /** + * Get remote port. + * + * @return int + */ + abstract public function getRemotePort(); + + /** + * Get remote address. + * + * @return string + */ + abstract public function getRemoteAddress(); + + /** + * Get local IP. + * + * @return string + */ + abstract public function getLocalIp(); + + /** + * Get local port. + * + * @return int + */ + abstract public function getLocalPort(); + + /** + * Get local address. + * + * @return string + */ + abstract public function getLocalAddress(); + + /** + * Is ipv4. + * + * @return bool + */ + abstract public function isIPv4(); + + /** + * Is ipv6. + * + * @return bool + */ + abstract public function isIPv6(); + + /** + * Close connection. + * + * @param string|null $data + * @return void + */ + abstract public function close($data = null); +} diff --git a/vendor/workerman/workerman/Connection/TcpConnection.php b/vendor/workerman/workerman/Connection/TcpConnection.php new file mode 100644 index 0000000..a4995f9 --- /dev/null +++ b/vendor/workerman/workerman/Connection/TcpConnection.php @@ -0,0 +1,1004 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman\Connection; + +use Workerman\Events\EventInterface; +use Workerman\Worker; +use \Exception; + +/** + * TcpConnection. + */ +class TcpConnection extends ConnectionInterface +{ + /** + * Read buffer size. + * + * @var int + */ + const READ_BUFFER_SIZE = 65535; + + /** + * Status initial. + * + * @var int + */ + const STATUS_INITIAL = 0; + + /** + * Status connecting. + * + * @var int + */ + const STATUS_CONNECTING = 1; + + /** + * Status connection established. + * + * @var int + */ + const STATUS_ESTABLISHED = 2; + + /** + * Status closing. + * + * @var int + */ + const STATUS_CLOSING = 4; + + /** + * Status closed. + * + * @var int + */ + const STATUS_CLOSED = 8; + + /** + * Emitted when data is received. + * + * @var callable + */ + public $onMessage = null; + + /** + * Emitted when the other end of the socket sends a FIN packet. + * + * @var callable + */ + public $onClose = null; + + /** + * Emitted when an error occurs with connection. + * + * @var callable + */ + public $onError = null; + + /** + * Emitted when the send buffer becomes full. + * + * @var callable + */ + public $onBufferFull = null; + + /** + * Emitted when the send buffer becomes empty. + * + * @var callable + */ + public $onBufferDrain = null; + + /** + * Application layer protocol. + * The format is like this Workerman\\Protocols\\Http. + * + * @var \Workerman\Protocols\ProtocolInterface + */ + public $protocol = null; + + /** + * Transport (tcp/udp/unix/ssl). + * + * @var string + */ + public $transport = 'tcp'; + + /** + * Which worker belong to. + * + * @var Worker + */ + public $worker = null; + + /** + * Bytes read. + * + * @var int + */ + public $bytesRead = 0; + + /** + * Bytes written. + * + * @var int + */ + public $bytesWritten = 0; + + /** + * Connection->id. + * + * @var int + */ + public $id = 0; + + /** + * A copy of $worker->id which used to clean up the connection in worker->connections + * + * @var int + */ + protected $_id = 0; + + /** + * Sets the maximum send buffer size for the current connection. + * OnBufferFull callback will be emited When the send buffer is full. + * + * @var int + */ + public $maxSendBufferSize = 1048576; + + /** + * Context. + * + * @var object|null + */ + public $context = null; + + /** + * Default send buffer size. + * + * @var int + */ + public static $defaultMaxSendBufferSize = 1048576; + + /** + * Sets the maximum acceptable packet size for the current connection. + * + * @var int + */ + public $maxPackageSize = 1048576; + + /** + * Default maximum acceptable packet size. + * + * @var int + */ + public static $defaultMaxPackageSize = 10485760; + + /** + * Id recorder. + * + * @var int + */ + protected static $_idRecorder = 1; + + /** + * Socket + * + * @var resource + */ + protected $_socket = null; + + /** + * Send buffer. + * + * @var string + */ + protected $_sendBuffer = ''; + + /** + * Receive buffer. + * + * @var string + */ + protected $_recvBuffer = ''; + + /** + * Current package length. + * + * @var int + */ + protected $_currentPackageLength = 0; + + /** + * Connection status. + * + * @var int + */ + protected $_status = self::STATUS_ESTABLISHED; + + /** + * Remote address. + * + * @var string + */ + protected $_remoteAddress = ''; + + /** + * Is paused. + * + * @var bool + */ + protected $_isPaused = false; + + /** + * SSL handshake completed or not. + * + * @var bool + */ + protected $_sslHandshakeCompleted = false; + + /** + * All connection instances. + * + * @var array + */ + public static $connections = array(); + + /** + * Is safe. + * + * @var bool + */ + protected $_isSafe = true; + + /** + * Status to string. + * + * @var array + */ + public static $_statusToString = array( + self::STATUS_INITIAL => 'INITIAL', + self::STATUS_CONNECTING => 'CONNECTING', + self::STATUS_ESTABLISHED => 'ESTABLISHED', + self::STATUS_CLOSING => 'CLOSING', + self::STATUS_CLOSED => 'CLOSED', + ); + + /** + * Construct. + * + * @param resource $socket + * @param string $remote_address + */ + public function __construct($socket, $remote_address = '') + { + ++self::$statistics['connection_count']; + $this->id = $this->_id = self::$_idRecorder++; + if(self::$_idRecorder === \PHP_INT_MAX){ + self::$_idRecorder = 0; + } + $this->_socket = $socket; + \stream_set_blocking($this->_socket, 0); + // Compatible with hhvm + if (\function_exists('stream_set_read_buffer')) { + \stream_set_read_buffer($this->_socket, 0); + } + Worker::$globalEvent->add($this->_socket, EventInterface::EV_READ, array($this, 'baseRead')); + $this->maxSendBufferSize = self::$defaultMaxSendBufferSize; + $this->maxPackageSize = self::$defaultMaxPackageSize; + $this->_remoteAddress = $remote_address; + static::$connections[$this->id] = $this; + $this->context = new \stdClass; + } + + /** + * Get status. + * + * @param bool $raw_output + * + * @return int|string + */ + public function getStatus($raw_output = true) + { + if ($raw_output) { + return $this->_status; + } + return self::$_statusToString[$this->_status]; + } + + /** + * Sends data on the connection. + * + * @param mixed $send_buffer + * @param bool $raw + * @return bool|null + */ + public function send($send_buffer, $raw = false) + { + if ($this->_status === self::STATUS_CLOSING || $this->_status === self::STATUS_CLOSED) { + return false; + } + + // Try to call protocol::encode($send_buffer) before sending. + if (false === $raw && $this->protocol !== null) { + $parser = $this->protocol; + $send_buffer = $parser::encode($send_buffer, $this); + if ($send_buffer === '') { + return; + } + } + + if ($this->_status !== self::STATUS_ESTABLISHED || + ($this->transport === 'ssl' && $this->_sslHandshakeCompleted !== true) + ) { + if ($this->_sendBuffer && $this->bufferIsFull()) { + ++self::$statistics['send_fail']; + return false; + } + $this->_sendBuffer .= $send_buffer; + $this->checkBufferWillFull(); + return; + } + + // Attempt to send data directly. + if ($this->_sendBuffer === '') { + if ($this->transport === 'ssl') { + Worker::$globalEvent->add($this->_socket, EventInterface::EV_WRITE, array($this, 'baseWrite')); + $this->_sendBuffer = $send_buffer; + $this->checkBufferWillFull(); + return; + } + $len = 0; + try { + $len = @\fwrite($this->_socket, $send_buffer); + } catch (\Exception $e) { + Worker::log($e); + } catch (\Error $e) { + Worker::log($e); + } + // send successful. + if ($len === \strlen($send_buffer)) { + $this->bytesWritten += $len; + return true; + } + // Send only part of the data. + if ($len > 0) { + $this->_sendBuffer = \substr($send_buffer, $len); + $this->bytesWritten += $len; + } else { + // Connection closed? + if (!\is_resource($this->_socket) || \feof($this->_socket)) { + ++self::$statistics['send_fail']; + if ($this->onError) { + try { + \call_user_func($this->onError, $this, \WORKERMAN_SEND_FAIL, 'client closed'); + } catch (\Exception $e) { + Worker::stopAll(250, $e); + } catch (\Error $e) { + Worker::stopAll(250, $e); + } + } + $this->destroy(); + return false; + } + $this->_sendBuffer = $send_buffer; + } + Worker::$globalEvent->add($this->_socket, EventInterface::EV_WRITE, array($this, 'baseWrite')); + // Check if the send buffer will be full. + $this->checkBufferWillFull(); + return; + } + + if ($this->bufferIsFull()) { + ++self::$statistics['send_fail']; + return false; + } + + $this->_sendBuffer .= $send_buffer; + // Check if the send buffer is full. + $this->checkBufferWillFull(); + } + + /** + * Get remote IP. + * + * @return string + */ + public function getRemoteIp() + { + $pos = \strrpos($this->_remoteAddress, ':'); + if ($pos) { + return (string) \substr($this->_remoteAddress, 0, $pos); + } + return ''; + } + + /** + * Get remote port. + * + * @return int + */ + public function getRemotePort() + { + if ($this->_remoteAddress) { + return (int) \substr(\strrchr($this->_remoteAddress, ':'), 1); + } + return 0; + } + + /** + * Get remote address. + * + * @return string + */ + public function getRemoteAddress() + { + return $this->_remoteAddress; + } + + /** + * Get local IP. + * + * @return string + */ + public function getLocalIp() + { + $address = $this->getLocalAddress(); + $pos = \strrpos($address, ':'); + if (!$pos) { + return ''; + } + return \substr($address, 0, $pos); + } + + /** + * Get local port. + * + * @return int + */ + public function getLocalPort() + { + $address = $this->getLocalAddress(); + $pos = \strrpos($address, ':'); + if (!$pos) { + return 0; + } + return (int)\substr(\strrchr($address, ':'), 1); + } + + /** + * Get local address. + * + * @return string + */ + public function getLocalAddress() + { + if (!\is_resource($this->_socket)) { + return ''; + } + return (string)@\stream_socket_get_name($this->_socket, false); + } + + /** + * Get send buffer queue size. + * + * @return integer + */ + public function getSendBufferQueueSize() + { + return \strlen($this->_sendBuffer); + } + + /** + * Get recv buffer queue size. + * + * @return integer + */ + public function getRecvBufferQueueSize() + { + return \strlen($this->_recvBuffer); + } + + /** + * Is ipv4. + * + * return bool. + */ + public function isIpV4() + { + if ($this->transport === 'unix') { + return false; + } + return \strpos($this->getRemoteIp(), ':') === false; + } + + /** + * Is ipv6. + * + * return bool. + */ + public function isIpV6() + { + if ($this->transport === 'unix') { + return false; + } + return \strpos($this->getRemoteIp(), ':') !== false; + } + + /** + * Pauses the reading of data. That is onMessage will not be emitted. Useful to throttle back an upload. + * + * @return void + */ + public function pauseRecv() + { + Worker::$globalEvent->del($this->_socket, EventInterface::EV_READ); + $this->_isPaused = true; + } + + /** + * Resumes reading after a call to pauseRecv. + * + * @return void + */ + public function resumeRecv() + { + if ($this->_isPaused === true) { + Worker::$globalEvent->add($this->_socket, EventInterface::EV_READ, array($this, 'baseRead')); + $this->_isPaused = false; + $this->baseRead($this->_socket, false); + } + } + + + + /** + * Base read handler. + * + * @param resource $socket + * @param bool $check_eof + * @return void + */ + public function baseRead($socket, $check_eof = true) + { + // SSL handshake. + if ($this->transport === 'ssl' && $this->_sslHandshakeCompleted !== true) { + if ($this->doSslHandshake($socket)) { + $this->_sslHandshakeCompleted = true; + if ($this->_sendBuffer) { + Worker::$globalEvent->add($socket, EventInterface::EV_WRITE, array($this, 'baseWrite')); + } + } else { + return; + } + } + + $buffer = ''; + try { + $buffer = @\fread($socket, self::READ_BUFFER_SIZE); + } catch (\Exception $e) {} catch (\Error $e) {} + + // Check connection closed. + if ($buffer === '' || $buffer === false) { + if ($check_eof && (\feof($socket) || !\is_resource($socket) || $buffer === false)) { + $this->destroy(); + return; + } + } else { + $this->bytesRead += \strlen($buffer); + $this->_recvBuffer .= $buffer; + } + + // If the application layer protocol has been set up. + if ($this->protocol !== null) { + $parser = $this->protocol; + while ($this->_recvBuffer !== '' && !$this->_isPaused) { + // The current packet length is known. + if ($this->_currentPackageLength) { + // Data is not enough for a package. + if ($this->_currentPackageLength > \strlen($this->_recvBuffer)) { + break; + } + } else { + // Get current package length. + try { + $this->_currentPackageLength = $parser::input($this->_recvBuffer, $this); + } catch (\Exception $e) {} catch (\Error $e) {} + // The packet length is unknown. + if ($this->_currentPackageLength === 0) { + break; + } elseif ($this->_currentPackageLength > 0 && $this->_currentPackageLength <= $this->maxPackageSize) { + // Data is not enough for a package. + if ($this->_currentPackageLength > \strlen($this->_recvBuffer)) { + break; + } + } // Wrong package. + else { + Worker::safeEcho('Error package. package_length=' . \var_export($this->_currentPackageLength, true)); + $this->destroy(); + return; + } + } + + // The data is enough for a packet. + ++self::$statistics['total_request']; + // The current packet length is equal to the length of the buffer. + if (\strlen($this->_recvBuffer) === $this->_currentPackageLength) { + $one_request_buffer = $this->_recvBuffer; + $this->_recvBuffer = ''; + } else { + // Get a full package from the buffer. + $one_request_buffer = \substr($this->_recvBuffer, 0, $this->_currentPackageLength); + // Remove the current package from the receive buffer. + $this->_recvBuffer = \substr($this->_recvBuffer, $this->_currentPackageLength); + } + // Reset the current packet length to 0. + $this->_currentPackageLength = 0; + if (!$this->onMessage) { + continue; + } + try { + // Decode request buffer before Emitting onMessage callback. + \call_user_func($this->onMessage, $this, $parser::decode($one_request_buffer, $this)); + } catch (\Exception $e) { + Worker::stopAll(250, $e); + } catch (\Error $e) { + Worker::stopAll(250, $e); + } + } + return; + } + + if ($this->_recvBuffer === '' || $this->_isPaused) { + return; + } + + // Applications protocol is not set. + ++self::$statistics['total_request']; + if (!$this->onMessage) { + $this->_recvBuffer = ''; + return; + } + try { + \call_user_func($this->onMessage, $this, $this->_recvBuffer); + } catch (\Exception $e) { + Worker::stopAll(250, $e); + } catch (\Error $e) { + Worker::stopAll(250, $e); + } + // Clean receive buffer. + $this->_recvBuffer = ''; + } + + /** + * Base write handler. + * + * @return void|bool + */ + public function baseWrite() + { + \set_error_handler(function(){}); + if ($this->transport === 'ssl') { + $len = @\fwrite($this->_socket, $this->_sendBuffer, 8192); + } else { + $len = @\fwrite($this->_socket, $this->_sendBuffer); + } + \restore_error_handler(); + if ($len === \strlen($this->_sendBuffer)) { + $this->bytesWritten += $len; + Worker::$globalEvent->del($this->_socket, EventInterface::EV_WRITE); + $this->_sendBuffer = ''; + // Try to emit onBufferDrain callback when the send buffer becomes empty. + if ($this->onBufferDrain) { + try { + \call_user_func($this->onBufferDrain, $this); + } catch (\Exception $e) { + Worker::stopAll(250, $e); + } catch (\Error $e) { + Worker::stopAll(250, $e); + } + } + if ($this->_status === self::STATUS_CLOSING) { + $this->destroy(); + } + return true; + } + if ($len > 0) { + $this->bytesWritten += $len; + $this->_sendBuffer = \substr($this->_sendBuffer, $len); + } else { + ++self::$statistics['send_fail']; + $this->destroy(); + } + } + + /** + * SSL handshake. + * + * @param resource $socket + * @return bool + */ + public function doSslHandshake($socket){ + if (\feof($socket)) { + $this->destroy(); + return false; + } + $async = $this instanceof AsyncTcpConnection; + + /** + * We disabled ssl3 because https://blog.qualys.com/ssllabs/2014/10/15/ssl-3-is-dead-killed-by-the-poodle-attack. + * You can enable ssl3 by the codes below. + */ + /*if($async){ + $type = STREAM_CRYPTO_METHOD_SSLv2_CLIENT | STREAM_CRYPTO_METHOD_SSLv23_CLIENT | STREAM_CRYPTO_METHOD_SSLv3_CLIENT; + }else{ + $type = STREAM_CRYPTO_METHOD_SSLv2_SERVER | STREAM_CRYPTO_METHOD_SSLv23_SERVER | STREAM_CRYPTO_METHOD_SSLv3_SERVER; + }*/ + + if($async){ + $type = \STREAM_CRYPTO_METHOD_SSLv2_CLIENT | \STREAM_CRYPTO_METHOD_SSLv23_CLIENT; + }else{ + $type = \STREAM_CRYPTO_METHOD_SSLv2_SERVER | \STREAM_CRYPTO_METHOD_SSLv23_SERVER; + } + + // Hidden error. + \set_error_handler(function($errno, $errstr, $file){ + if (!Worker::$daemonize) { + Worker::safeEcho("SSL handshake error: $errstr \n"); + } + }); + $ret = \stream_socket_enable_crypto($socket, true, $type); + \restore_error_handler(); + // Negotiation has failed. + if (false === $ret) { + $this->destroy(); + return false; + } elseif (0 === $ret) { + // There isn't enough data and should try again. + return 0; + } + if (isset($this->onSslHandshake)) { + try { + \call_user_func($this->onSslHandshake, $this); + } catch (\Exception $e) { + Worker::stopAll(250, $e); + } catch (\Error $e) { + Worker::stopAll(250, $e); + } + } + return true; + } + + /** + * This method pulls all the data out of a readable stream, and writes it to the supplied destination. + * + * @param self $dest + * @param bool $raw + * @return void + */ + public function pipe(self $dest, $raw = false) + { + $source = $this; + $this->onMessage = function ($source, $data) use ($dest, $raw) { + $dest->send($data, $raw); + }; + $this->onClose = function ($source) use ($dest) { + $dest->close(); + }; + $dest->onBufferFull = function ($dest) use ($source) { + $source->pauseRecv(); + }; + $dest->onBufferDrain = function ($dest) use ($source) { + $source->resumeRecv(); + }; + } + + /** + * Remove $length of data from receive buffer. + * + * @param int $length + * @return void + */ + public function consumeRecvBuffer($length) + { + $this->_recvBuffer = \substr($this->_recvBuffer, $length); + } + + /** + * Close connection. + * + * @param mixed $data + * @param bool $raw + * @return void + */ + public function close($data = null, $raw = false) + { + if($this->_status === self::STATUS_CONNECTING){ + $this->destroy(); + return; + } + + if ($this->_status === self::STATUS_CLOSING || $this->_status === self::STATUS_CLOSED) { + return; + } + + if ($data !== null) { + $this->send($data, $raw); + } + + $this->_status = self::STATUS_CLOSING; + + if ($this->_sendBuffer === '') { + $this->destroy(); + } else { + $this->pauseRecv(); + } + } + + /** + * Get the real socket. + * + * @return resource + */ + public function getSocket() + { + return $this->_socket; + } + + /** + * Check whether the send buffer will be full. + * + * @return void + */ + protected function checkBufferWillFull() + { + if ($this->maxSendBufferSize <= \strlen($this->_sendBuffer)) { + if ($this->onBufferFull) { + try { + \call_user_func($this->onBufferFull, $this); + } catch (\Exception $e) { + Worker::stopAll(250, $e); + } catch (\Error $e) { + Worker::stopAll(250, $e); + } + } + } + } + + /** + * Whether send buffer is full. + * + * @return bool + */ + protected function bufferIsFull() + { + // Buffer has been marked as full but still has data to send then the packet is discarded. + if ($this->maxSendBufferSize <= \strlen($this->_sendBuffer)) { + if ($this->onError) { + try { + \call_user_func($this->onError, $this, \WORKERMAN_SEND_FAIL, 'send buffer full and drop package'); + } catch (\Exception $e) { + Worker::stopAll(250, $e); + } catch (\Error $e) { + Worker::stopAll(250, $e); + } + } + return true; + } + return false; + } + + /** + * Whether send buffer is Empty. + * + * @return bool + */ + public function bufferIsEmpty() + { + return empty($this->_sendBuffer); + } + + /** + * Destroy connection. + * + * @return void + */ + public function destroy() + { + // Avoid repeated calls. + if ($this->_status === self::STATUS_CLOSED) { + return; + } + // Remove event listener. + Worker::$globalEvent->del($this->_socket, EventInterface::EV_READ); + Worker::$globalEvent->del($this->_socket, EventInterface::EV_WRITE); + + // Close socket. + try { + @\fclose($this->_socket); + } catch (\Exception $e) {} catch (\Error $e) {} + + $this->_status = self::STATUS_CLOSED; + // Try to emit onClose callback. + if ($this->onClose) { + try { + \call_user_func($this->onClose, $this); + } catch (\Exception $e) { + Worker::stopAll(250, $e); + } catch (\Error $e) { + Worker::stopAll(250, $e); + } + } + // Try to emit protocol::onClose + if ($this->protocol && \method_exists($this->protocol, 'onClose')) { + try { + \call_user_func(array($this->protocol, 'onClose'), $this); + } catch (\Exception $e) { + Worker::stopAll(250, $e); + } catch (\Error $e) { + Worker::stopAll(250, $e); + } + } + $this->_sendBuffer = $this->_recvBuffer = ''; + $this->_currentPackageLength = 0; + $this->_isPaused = $this->_sslHandshakeCompleted = false; + if ($this->_status === self::STATUS_CLOSED) { + // Cleaning up the callback to avoid memory leaks. + $this->onMessage = $this->onClose = $this->onError = $this->onBufferFull = $this->onBufferDrain = null; + // Remove from worker->connections. + if ($this->worker) { + unset($this->worker->connections[$this->_id]); + } + unset(static::$connections[$this->_id]); + } + } + + + /** + * __wakeup. + * + * @return void + */ + public function __wakeup() + { + $this->_isSafe = false; + } + + /** + * Destruct. + * + * @return void + */ + public function __destruct() + { + static $mod; + if (!$this->_isSafe) { + return; + } + self::$statistics['connection_count']--; + if (Worker::getGracefulStop()) { + if (!isset($mod)) { + $mod = \ceil((self::$statistics['connection_count'] + 1) / 3); + } + + if (0 === self::$statistics['connection_count'] % $mod) { + Worker::log('worker[' . \posix_getpid() . '] remains ' . self::$statistics['connection_count'] . ' connection(s)'); + } + + if(0 === self::$statistics['connection_count']) { + Worker::stopAll(); + } + } + } +} diff --git a/vendor/workerman/workerman/Connection/UdpConnection.php b/vendor/workerman/workerman/Connection/UdpConnection.php new file mode 100644 index 0000000..9cd95ba --- /dev/null +++ b/vendor/workerman/workerman/Connection/UdpConnection.php @@ -0,0 +1,208 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman\Connection; + +/** + * UdpConnection. + */ +class UdpConnection extends ConnectionInterface +{ + /** + * Application layer protocol. + * The format is like this Workerman\\Protocols\\Http. + * + * @var \Workerman\Protocols\ProtocolInterface + */ + public $protocol = null; + + /** + * Transport layer protocol. + * + * @var string + */ + public $transport = 'udp'; + + /** + * Udp socket. + * + * @var resource + */ + protected $_socket = null; + + /** + * Remote address. + * + * @var string + */ + protected $_remoteAddress = ''; + + /** + * Construct. + * + * @param resource $socket + * @param string $remote_address + */ + public function __construct($socket, $remote_address) + { + $this->_socket = $socket; + $this->_remoteAddress = $remote_address; + } + + /** + * Sends data on the connection. + * + * @param string $send_buffer + * @param bool $raw + * @return void|boolean + */ + public function send($send_buffer, $raw = false) + { + if (false === $raw && $this->protocol) { + $parser = $this->protocol; + $send_buffer = $parser::encode($send_buffer, $this); + if ($send_buffer === '') { + return; + } + } + return \strlen($send_buffer) === \stream_socket_sendto($this->_socket, $send_buffer, 0, $this->isIpV6() ? '[' . $this->getRemoteIp() . ']:' . $this->getRemotePort() : $this->_remoteAddress); + } + + /** + * Get remote IP. + * + * @return string + */ + public function getRemoteIp() + { + $pos = \strrpos($this->_remoteAddress, ':'); + if ($pos) { + return \trim(\substr($this->_remoteAddress, 0, $pos), '[]'); + } + return ''; + } + + /** + * Get remote port. + * + * @return int + */ + public function getRemotePort() + { + if ($this->_remoteAddress) { + return (int)\substr(\strrchr($this->_remoteAddress, ':'), 1); + } + return 0; + } + + /** + * Get remote address. + * + * @return string + */ + public function getRemoteAddress() + { + return $this->_remoteAddress; + } + + /** + * Get local IP. + * + * @return string + */ + public function getLocalIp() + { + $address = $this->getLocalAddress(); + $pos = \strrpos($address, ':'); + if (!$pos) { + return ''; + } + return \substr($address, 0, $pos); + } + + /** + * Get local port. + * + * @return int + */ + public function getLocalPort() + { + $address = $this->getLocalAddress(); + $pos = \strrpos($address, ':'); + if (!$pos) { + return 0; + } + return (int)\substr(\strrchr($address, ':'), 1); + } + + /** + * Get local address. + * + * @return string + */ + public function getLocalAddress() + { + return (string)@\stream_socket_get_name($this->_socket, false); + } + + /** + * Is ipv4. + * + * @return bool. + */ + public function isIpV4() + { + if ($this->transport === 'unix') { + return false; + } + return \strpos($this->getRemoteIp(), ':') === false; + } + + /** + * Is ipv6. + * + * @return bool. + */ + public function isIpV6() + { + if ($this->transport === 'unix') { + return false; + } + return \strpos($this->getRemoteIp(), ':') !== false; + } + + /** + * Close connection. + * + * @param mixed $data + * @param bool $raw + * @return bool + */ + public function close($data = null, $raw = false) + { + if ($data !== null) { + $this->send($data, $raw); + } + return true; + } + + /** + * Get the real socket. + * + * @return resource + */ + public function getSocket() + { + return $this->_socket; + } +} diff --git a/vendor/workerman/workerman/Events/Ev.php b/vendor/workerman/workerman/Events/Ev.php new file mode 100644 index 0000000..8e21bc3 --- /dev/null +++ b/vendor/workerman/workerman/Events/Ev.php @@ -0,0 +1,189 @@ + + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman\Events; + +use Workerman\Worker; +use \EvWatcher; + +/** + * ev eventloop + */ +class Ev implements EventInterface +{ + /** + * All listeners for read/write event. + * + * @var array + */ + protected $_allEvents = array(); + + /** + * Event listeners of signal. + * + * @var array + */ + protected $_eventSignal = array(); + + /** + * All timer event listeners. + * [func, args, event, flag, time_interval] + * + * @var array + */ + protected $_eventTimer = array(); + + /** + * Timer id. + * + * @var int + */ + protected static $_timerId = 1; + + /** + * Add a timer. + * {@inheritdoc} + */ + public function add($fd, $flag, $func, $args = null) + { + $callback = function ($event, $socket) use ($fd, $func) { + try { + \call_user_func($func, $fd); + } catch (\Exception $e) { + Worker::stopAll(250, $e); + } catch (\Error $e) { + Worker::stopAll(250, $e); + } + }; + switch ($flag) { + case self::EV_SIGNAL: + $event = new \EvSignal($fd, $callback); + $this->_eventSignal[$fd] = $event; + return true; + case self::EV_TIMER: + case self::EV_TIMER_ONCE: + $repeat = $flag === self::EV_TIMER_ONCE ? 0 : $fd; + $param = array($func, (array)$args, $flag, $fd, self::$_timerId); + $event = new \EvTimer($fd, $repeat, array($this, 'timerCallback'), $param); + $this->_eventTimer[self::$_timerId] = $event; + return self::$_timerId++; + default : + $fd_key = (int)$fd; + $real_flag = $flag === self::EV_READ ? \Ev::READ : \Ev::WRITE; + $event = new \EvIo($fd, $real_flag, $callback); + $this->_allEvents[$fd_key][$flag] = $event; + return true; + } + + } + + /** + * Remove a timer. + * {@inheritdoc} + */ + public function del($fd, $flag) + { + switch ($flag) { + case self::EV_READ: + case self::EV_WRITE: + $fd_key = (int)$fd; + if (isset($this->_allEvents[$fd_key][$flag])) { + $this->_allEvents[$fd_key][$flag]->stop(); + unset($this->_allEvents[$fd_key][$flag]); + } + if (empty($this->_allEvents[$fd_key])) { + unset($this->_allEvents[$fd_key]); + } + break; + case self::EV_SIGNAL: + $fd_key = (int)$fd; + if (isset($this->_eventSignal[$fd_key])) { + $this->_eventSignal[$fd_key]->stop(); + unset($this->_eventSignal[$fd_key]); + } + break; + case self::EV_TIMER: + case self::EV_TIMER_ONCE: + if (isset($this->_eventTimer[$fd])) { + $this->_eventTimer[$fd]->stop(); + unset($this->_eventTimer[$fd]); + } + break; + } + return true; + } + + /** + * Timer callback. + * + * @param EvWatcher $event + */ + public function timerCallback(EvWatcher $event) + { + $param = $event->data; + $timer_id = $param[4]; + if ($param[2] === self::EV_TIMER_ONCE) { + $this->_eventTimer[$timer_id]->stop(); + unset($this->_eventTimer[$timer_id]); + } + try { + \call_user_func_array($param[0], $param[1]); + } catch (\Exception $e) { + Worker::stopAll(250, $e); + } catch (\Error $e) { + Worker::stopAll(250, $e); + } + } + + /** + * Remove all timers. + * + * @return void + */ + public function clearAllTimer() + { + foreach ($this->_eventTimer as $event) { + $event->stop(); + } + $this->_eventTimer = array(); + } + + /** + * Main loop. + * + * @see EventInterface::loop() + */ + public function loop() + { + \Ev::run(); + } + + /** + * Destroy loop. + * + * @return void + */ + public function destroy() + { + \Ev::stop(\Ev::BREAK_ALL); + } + + /** + * Get timer count. + * + * @return integer + */ + public function getTimerCount() + { + return \count($this->_eventTimer); + } +} diff --git a/vendor/workerman/workerman/Events/Event.php b/vendor/workerman/workerman/Events/Event.php new file mode 100644 index 0000000..9e25521 --- /dev/null +++ b/vendor/workerman/workerman/Events/Event.php @@ -0,0 +1,215 @@ + + * @copyright 有个鬼<42765633@qq.com> + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman\Events; + +use Workerman\Worker; + +/** + * libevent eventloop + */ +class Event implements EventInterface +{ + /** + * Event base. + * @var object + */ + protected $_eventBase = null; + + /** + * All listeners for read/write event. + * @var array + */ + protected $_allEvents = array(); + + /** + * Event listeners of signal. + * @var array + */ + protected $_eventSignal = array(); + + /** + * All timer event listeners. + * [func, args, event, flag, time_interval] + * @var array + */ + protected $_eventTimer = array(); + + /** + * Timer id. + * @var int + */ + protected static $_timerId = 1; + + /** + * construct + * @return void + */ + public function __construct() + { + if (\class_exists('\\\\EventBase', false)) { + $class_name = '\\\\EventBase'; + } else { + $class_name = '\EventBase'; + } + $this->_eventBase = new $class_name(); + } + + /** + * @see EventInterface::add() + */ + public function add($fd, $flag, $func, $args=array()) + { + if (\class_exists('\\\\Event', false)) { + $class_name = '\\\\Event'; + } else { + $class_name = '\Event'; + } + switch ($flag) { + case self::EV_SIGNAL: + + $fd_key = (int)$fd; + $event = $class_name::signal($this->_eventBase, $fd, $func); + if (!$event||!$event->add()) { + return false; + } + $this->_eventSignal[$fd_key] = $event; + return true; + + case self::EV_TIMER: + case self::EV_TIMER_ONCE: + + $param = array($func, (array)$args, $flag, $fd, self::$_timerId); + $event = new $class_name($this->_eventBase, -1, $class_name::TIMEOUT|$class_name::PERSIST, array($this, "timerCallback"), $param); + if (!$event||!$event->addTimer($fd)) { + return false; + } + $this->_eventTimer[self::$_timerId] = $event; + return self::$_timerId++; + + default : + $fd_key = (int)$fd; + $real_flag = $flag === self::EV_READ ? $class_name::READ | $class_name::PERSIST : $class_name::WRITE | $class_name::PERSIST; + $event = new $class_name($this->_eventBase, $fd, $real_flag, $func, $fd); + if (!$event||!$event->add()) { + return false; + } + $this->_allEvents[$fd_key][$flag] = $event; + return true; + } + } + + /** + * @see Events\EventInterface::del() + */ + public function del($fd, $flag) + { + switch ($flag) { + + case self::EV_READ: + case self::EV_WRITE: + + $fd_key = (int)$fd; + if (isset($this->_allEvents[$fd_key][$flag])) { + $this->_allEvents[$fd_key][$flag]->del(); + unset($this->_allEvents[$fd_key][$flag]); + } + if (empty($this->_allEvents[$fd_key])) { + unset($this->_allEvents[$fd_key]); + } + break; + + case self::EV_SIGNAL: + $fd_key = (int)$fd; + if (isset($this->_eventSignal[$fd_key])) { + $this->_eventSignal[$fd_key]->del(); + unset($this->_eventSignal[$fd_key]); + } + break; + + case self::EV_TIMER: + case self::EV_TIMER_ONCE: + if (isset($this->_eventTimer[$fd])) { + $this->_eventTimer[$fd]->del(); + unset($this->_eventTimer[$fd]); + } + break; + } + return true; + } + + /** + * Timer callback. + * @param int|null $fd + * @param int $what + * @param int $timer_id + */ + public function timerCallback($fd, $what, $param) + { + $timer_id = $param[4]; + + if ($param[2] === self::EV_TIMER_ONCE) { + $this->_eventTimer[$timer_id]->del(); + unset($this->_eventTimer[$timer_id]); + } + + try { + \call_user_func_array($param[0], $param[1]); + } catch (\Exception $e) { + Worker::stopAll(250, $e); + } catch (\Error $e) { + Worker::stopAll(250, $e); + } + } + + /** + * @see Events\EventInterface::clearAllTimer() + * @return void + */ + public function clearAllTimer() + { + foreach ($this->_eventTimer as $event) { + $event->del(); + } + $this->_eventTimer = array(); + } + + + /** + * @see EventInterface::loop() + */ + public function loop() + { + $this->_eventBase->loop(); + } + + /** + * Destroy loop. + * + * @return void + */ + public function destroy() + { + $this->_eventBase->exit(); + } + + /** + * Get timer count. + * + * @return integer + */ + public function getTimerCount() + { + return \count($this->_eventTimer); + } +} diff --git a/vendor/workerman/workerman/Events/EventInterface.php b/vendor/workerman/workerman/Events/EventInterface.php new file mode 100644 index 0000000..e6f59c6 --- /dev/null +++ b/vendor/workerman/workerman/Events/EventInterface.php @@ -0,0 +1,107 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman\Events; + +interface EventInterface +{ + /** + * Read event. + * + * @var int + */ + const EV_READ = 1; + + /** + * Write event. + * + * @var int + */ + const EV_WRITE = 2; + + /** + * Except event + * + * @var int + */ + const EV_EXCEPT = 3; + + /** + * Signal event. + * + * @var int + */ + const EV_SIGNAL = 4; + + /** + * Timer event. + * + * @var int + */ + const EV_TIMER = 8; + + /** + * Timer once event. + * + * @var int + */ + const EV_TIMER_ONCE = 16; + + /** + * Add event listener to event loop. + * + * @param mixed $fd + * @param int $flag + * @param callable $func + * @param array $args + * @return bool + */ + public function add($fd, $flag, $func, $args = array()); + + /** + * Remove event listener from event loop. + * + * @param mixed $fd + * @param int $flag + * @return bool + */ + public function del($fd, $flag); + + /** + * Remove all timers. + * + * @return void + */ + public function clearAllTimer(); + + /** + * Main loop. + * + * @return void + */ + public function loop(); + + /** + * Destroy loop. + * + * @return mixed + */ + public function destroy(); + + /** + * Get Timer count. + * + * @return mixed + */ + public function getTimerCount(); +} diff --git a/vendor/workerman/workerman/Events/Libevent.php b/vendor/workerman/workerman/Events/Libevent.php new file mode 100644 index 0000000..5f61e9c --- /dev/null +++ b/vendor/workerman/workerman/Events/Libevent.php @@ -0,0 +1,225 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman\Events; + +use Workerman\Worker; + +/** + * libevent eventloop + */ +class Libevent implements EventInterface +{ + /** + * Event base. + * + * @var resource + */ + protected $_eventBase = null; + + /** + * All listeners for read/write event. + * + * @var array + */ + protected $_allEvents = array(); + + /** + * Event listeners of signal. + * + * @var array + */ + protected $_eventSignal = array(); + + /** + * All timer event listeners. + * [func, args, event, flag, time_interval] + * + * @var array + */ + protected $_eventTimer = array(); + + /** + * construct + */ + public function __construct() + { + $this->_eventBase = \event_base_new(); + } + + /** + * {@inheritdoc} + */ + public function add($fd, $flag, $func, $args = array()) + { + switch ($flag) { + case self::EV_SIGNAL: + $fd_key = (int)$fd; + $real_flag = \EV_SIGNAL | \EV_PERSIST; + $this->_eventSignal[$fd_key] = \event_new(); + if (!\event_set($this->_eventSignal[$fd_key], $fd, $real_flag, $func, null)) { + return false; + } + if (!\event_base_set($this->_eventSignal[$fd_key], $this->_eventBase)) { + return false; + } + if (!\event_add($this->_eventSignal[$fd_key])) { + return false; + } + return true; + case self::EV_TIMER: + case self::EV_TIMER_ONCE: + $event = \event_new(); + $timer_id = (int)$event; + if (!\event_set($event, 0, \EV_TIMEOUT, array($this, 'timerCallback'), $timer_id)) { + return false; + } + + if (!\event_base_set($event, $this->_eventBase)) { + return false; + } + + $time_interval = $fd * 1000000; + if (!\event_add($event, $time_interval)) { + return false; + } + $this->_eventTimer[$timer_id] = array($func, (array)$args, $event, $flag, $time_interval); + return $timer_id; + + default : + $fd_key = (int)$fd; + $real_flag = $flag === self::EV_READ ? \EV_READ | \EV_PERSIST : \EV_WRITE | \EV_PERSIST; + + $event = \event_new(); + + if (!\event_set($event, $fd, $real_flag, $func, null)) { + return false; + } + + if (!\event_base_set($event, $this->_eventBase)) { + return false; + } + + if (!\event_add($event)) { + return false; + } + + $this->_allEvents[$fd_key][$flag] = $event; + + return true; + } + + } + + /** + * {@inheritdoc} + */ + public function del($fd, $flag) + { + switch ($flag) { + case self::EV_READ: + case self::EV_WRITE: + $fd_key = (int)$fd; + if (isset($this->_allEvents[$fd_key][$flag])) { + \event_del($this->_allEvents[$fd_key][$flag]); + unset($this->_allEvents[$fd_key][$flag]); + } + if (empty($this->_allEvents[$fd_key])) { + unset($this->_allEvents[$fd_key]); + } + break; + case self::EV_SIGNAL: + $fd_key = (int)$fd; + if (isset($this->_eventSignal[$fd_key])) { + \event_del($this->_eventSignal[$fd_key]); + unset($this->_eventSignal[$fd_key]); + } + break; + case self::EV_TIMER: + case self::EV_TIMER_ONCE: + // 这里 fd 为timerid + if (isset($this->_eventTimer[$fd])) { + \event_del($this->_eventTimer[$fd][2]); + unset($this->_eventTimer[$fd]); + } + break; + } + return true; + } + + /** + * Timer callback. + * + * @param mixed $_null1 + * @param int $_null2 + * @param mixed $timer_id + */ + protected function timerCallback($_null1, $_null2, $timer_id) + { + if ($this->_eventTimer[$timer_id][3] === self::EV_TIMER) { + \event_add($this->_eventTimer[$timer_id][2], $this->_eventTimer[$timer_id][4]); + } + try { + \call_user_func_array($this->_eventTimer[$timer_id][0], $this->_eventTimer[$timer_id][1]); + } catch (\Exception $e) { + Worker::stopAll(250, $e); + } catch (\Error $e) { + Worker::stopAll(250, $e); + } + if (isset($this->_eventTimer[$timer_id]) && $this->_eventTimer[$timer_id][3] === self::EV_TIMER_ONCE) { + $this->del($timer_id, self::EV_TIMER_ONCE); + } + } + + /** + * {@inheritdoc} + */ + public function clearAllTimer() + { + foreach ($this->_eventTimer as $task_data) { + \event_del($task_data[2]); + } + $this->_eventTimer = array(); + } + + /** + * {@inheritdoc} + */ + public function loop() + { + \event_base_loop($this->_eventBase); + } + + /** + * Destroy loop. + * + * @return void + */ + public function destroy() + { + foreach ($this->_eventSignal as $event) { + \event_del($event); + } + } + + /** + * Get timer count. + * + * @return integer + */ + public function getTimerCount() + { + return \count($this->_eventTimer); + } +} + diff --git a/vendor/workerman/workerman/Events/React/Base.php b/vendor/workerman/workerman/Events/React/Base.php new file mode 100644 index 0000000..bce4f73 --- /dev/null +++ b/vendor/workerman/workerman/Events/React/Base.php @@ -0,0 +1,264 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman\Events\React; + +use Workerman\Events\EventInterface; +use React\EventLoop\TimerInterface; +use React\EventLoop\LoopInterface; + +/** + * Class StreamSelectLoop + * @package Workerman\Events\React + */ +class Base implements LoopInterface +{ + /** + * @var array + */ + protected $_timerIdMap = array(); + + /** + * @var int + */ + protected $_timerIdIndex = 0; + + /** + * @var array + */ + protected $_signalHandlerMap = array(); + + /** + * @var LoopInterface + */ + protected $_eventLoop = null; + + /** + * Base constructor. + */ + public function __construct() + { + $this->_eventLoop = new \React\EventLoop\StreamSelectLoop(); + } + + /** + * Add event listener to event loop. + * + * @param int $fd + * @param int $flag + * @param callable $func + * @param array $args + * @return bool + */ + public function add($fd, $flag, $func, array $args = array()) + { + $args = (array)$args; + switch ($flag) { + case EventInterface::EV_READ: + return $this->addReadStream($fd, $func); + case EventInterface::EV_WRITE: + return $this->addWriteStream($fd, $func); + case EventInterface::EV_SIGNAL: + if (isset($this->_signalHandlerMap[$fd])) { + $this->removeSignal($fd, $this->_signalHandlerMap[$fd]); + } + $this->_signalHandlerMap[$fd] = $func; + return $this->addSignal($fd, $func); + case EventInterface::EV_TIMER: + $timer_obj = $this->addPeriodicTimer($fd, function() use ($func, $args) { + \call_user_func_array($func, $args); + }); + $this->_timerIdMap[++$this->_timerIdIndex] = $timer_obj; + return $this->_timerIdIndex; + case EventInterface::EV_TIMER_ONCE: + $index = ++$this->_timerIdIndex; + $timer_obj = $this->addTimer($fd, function() use ($func, $args, $index) { + $this->del($index,EventInterface::EV_TIMER_ONCE); + \call_user_func_array($func, $args); + }); + $this->_timerIdMap[$index] = $timer_obj; + return $this->_timerIdIndex; + } + return false; + } + + /** + * Remove event listener from event loop. + * + * @param mixed $fd + * @param int $flag + * @return bool + */ + public function del($fd, $flag) + { + switch ($flag) { + case EventInterface::EV_READ: + return $this->removeReadStream($fd); + case EventInterface::EV_WRITE: + return $this->removeWriteStream($fd); + case EventInterface::EV_SIGNAL: + if (!isset($this->_eventLoop[$fd])) { + return false; + } + $func = $this->_eventLoop[$fd]; + unset($this->_eventLoop[$fd]); + return $this->removeSignal($fd, $func); + + case EventInterface::EV_TIMER: + case EventInterface::EV_TIMER_ONCE: + if (isset($this->_timerIdMap[$fd])){ + $timer_obj = $this->_timerIdMap[$fd]; + unset($this->_timerIdMap[$fd]); + $this->cancelTimer($timer_obj); + return true; + } + } + return false; + } + + + /** + * Main loop. + * + * @return void + */ + public function loop() + { + $this->run(); + } + + + /** + * Destroy loop. + * + * @return void + */ + public function destroy() + { + + } + + /** + * Get timer count. + * + * @return integer + */ + public function getTimerCount() + { + return \count($this->_timerIdMap); + } + + /** + * @param resource $stream + * @param callable $listener + */ + public function addReadStream($stream, $listener) + { + return $this->_eventLoop->addReadStream($stream, $listener); + } + + /** + * @param resource $stream + * @param callable $listener + */ + public function addWriteStream($stream, $listener) + { + return $this->_eventLoop->addWriteStream($stream, $listener); + } + + /** + * @param resource $stream + */ + public function removeReadStream($stream) + { + return $this->_eventLoop->removeReadStream($stream); + } + + /** + * @param resource $stream + */ + public function removeWriteStream($stream) + { + return $this->_eventLoop->removeWriteStream($stream); + } + + /** + * @param float|int $interval + * @param callable $callback + * @return \React\EventLoop\Timer\Timer|TimerInterface + */ + public function addTimer($interval, $callback) + { + return $this->_eventLoop->addTimer($interval, $callback); + } + + /** + * @param float|int $interval + * @param callable $callback + * @return \React\EventLoop\Timer\Timer|TimerInterface + */ + public function addPeriodicTimer($interval, $callback) + { + return $this->_eventLoop->addPeriodicTimer($interval, $callback); + } + + /** + * @param TimerInterface $timer + */ + public function cancelTimer(TimerInterface $timer) + { + return $this->_eventLoop->cancelTimer($timer); + } + + /** + * @param callable $listener + */ + public function futureTick($listener) + { + return $this->_eventLoop->futureTick($listener); + } + + /** + * @param int $signal + * @param callable $listener + */ + public function addSignal($signal, $listener) + { + return $this->_eventLoop->addSignal($signal, $listener); + } + + /** + * @param int $signal + * @param callable $listener + */ + public function removeSignal($signal, $listener) + { + return $this->_eventLoop->removeSignal($signal, $listener); + } + + /** + * Run. + */ + public function run() + { + return $this->_eventLoop->run(); + } + + /** + * Stop. + */ + public function stop() + { + return $this->_eventLoop->stop(); + } +} diff --git a/vendor/workerman/workerman/Events/React/ExtEventLoop.php b/vendor/workerman/workerman/Events/React/ExtEventLoop.php new file mode 100644 index 0000000..3dab25b --- /dev/null +++ b/vendor/workerman/workerman/Events/React/ExtEventLoop.php @@ -0,0 +1,27 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman\Events\React; + +/** + * Class ExtEventLoop + * @package Workerman\Events\React + */ +class ExtEventLoop extends Base +{ + + public function __construct() + { + $this->_eventLoop = new \React\EventLoop\ExtEventLoop(); + } +} diff --git a/vendor/workerman/workerman/Events/React/ExtLibEventLoop.php b/vendor/workerman/workerman/Events/React/ExtLibEventLoop.php new file mode 100644 index 0000000..eb02b35 --- /dev/null +++ b/vendor/workerman/workerman/Events/React/ExtLibEventLoop.php @@ -0,0 +1,27 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman\Events\React; +use Workerman\Events\EventInterface; + +/** + * Class ExtLibEventLoop + * @package Workerman\Events\React + */ +class ExtLibEventLoop extends Base +{ + public function __construct() + { + $this->_eventLoop = new \React\EventLoop\ExtLibeventLoop(); + } +} diff --git a/vendor/workerman/workerman/Events/React/StreamSelectLoop.php b/vendor/workerman/workerman/Events/React/StreamSelectLoop.php new file mode 100644 index 0000000..7f5f94b --- /dev/null +++ b/vendor/workerman/workerman/Events/React/StreamSelectLoop.php @@ -0,0 +1,26 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman\Events\React; + +/** + * Class StreamSelectLoop + * @package Workerman\Events\React + */ +class StreamSelectLoop extends Base +{ + public function __construct() + { + $this->_eventLoop = new \React\EventLoop\StreamSelectLoop(); + } +} diff --git a/vendor/workerman/workerman/Events/Select.php b/vendor/workerman/workerman/Events/Select.php new file mode 100644 index 0000000..ebc263e --- /dev/null +++ b/vendor/workerman/workerman/Events/Select.php @@ -0,0 +1,357 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman\Events; + +use Throwable; +use Workerman\Worker; + +/** + * select eventloop + */ +class Select implements EventInterface +{ + /** + * All listeners for read/write event. + * + * @var array + */ + public $_allEvents = array(); + + /** + * Event listeners of signal. + * + * @var array + */ + public $_signalEvents = array(); + + /** + * Fds waiting for read event. + * + * @var array + */ + protected $_readFds = array(); + + /** + * Fds waiting for write event. + * + * @var array + */ + protected $_writeFds = array(); + + /** + * Fds waiting for except event. + * + * @var array + */ + protected $_exceptFds = array(); + + /** + * Timer scheduler. + * {['data':timer_id, 'priority':run_timestamp], ..} + * + * @var \SplPriorityQueue + */ + protected $_scheduler = null; + + /** + * All timer event listeners. + * [[func, args, flag, timer_interval], ..] + * + * @var array + */ + protected $_eventTimer = array(); + + /** + * Timer id. + * + * @var int + */ + protected $_timerId = 1; + + /** + * Select timeout. + * + * @var int + */ + protected $_selectTimeout = 100000000; + + /** + * Paired socket channels + * + * @var array + */ + protected $channel = array(); + + /** + * Construct. + */ + public function __construct() + { + // Init SplPriorityQueue. + $this->_scheduler = new \SplPriorityQueue(); + $this->_scheduler->setExtractFlags(\SplPriorityQueue::EXTR_BOTH); + } + + /** + * {@inheritdoc} + */ + public function add($fd, $flag, $func, $args = array()) + { + switch ($flag) { + case self::EV_READ: + case self::EV_WRITE: + $count = $flag === self::EV_READ ? \count($this->_readFds) : \count($this->_writeFds); + if ($count >= 1024) { + echo "Warning: system call select exceeded the maximum number of connections 1024, please install event/libevent extension for more connections.\n"; + } else if (\DIRECTORY_SEPARATOR !== '/' && $count >= 256) { + echo "Warning: system call select exceeded the maximum number of connections 256.\n"; + } + $fd_key = (int)$fd; + $this->_allEvents[$fd_key][$flag] = array($func, $fd); + if ($flag === self::EV_READ) { + $this->_readFds[$fd_key] = $fd; + } else { + $this->_writeFds[$fd_key] = $fd; + } + break; + case self::EV_EXCEPT: + $fd_key = (int)$fd; + $this->_allEvents[$fd_key][$flag] = array($func, $fd); + $this->_exceptFds[$fd_key] = $fd; + break; + case self::EV_SIGNAL: + // Windows not support signal. + if(\DIRECTORY_SEPARATOR !== '/') { + return false; + } + $fd_key = (int)$fd; + $this->_signalEvents[$fd_key][$flag] = array($func, $fd); + \pcntl_signal($fd, array($this, 'signalHandler')); + break; + case self::EV_TIMER: + case self::EV_TIMER_ONCE: + $timer_id = $this->_timerId++; + $run_time = \microtime(true) + $fd; + $this->_scheduler->insert($timer_id, -$run_time); + $this->_eventTimer[$timer_id] = array($func, (array)$args, $flag, $fd); + $select_timeout = ($run_time - \microtime(true)) * 1000000; + $select_timeout = $select_timeout <= 0 ? 1 : $select_timeout; + if( $this->_selectTimeout > $select_timeout ){ + $this->_selectTimeout = (int) $select_timeout; + } + return $timer_id; + } + + return true; + } + + /** + * Signal handler. + * + * @param int $signal + */ + public function signalHandler($signal) + { + \call_user_func_array($this->_signalEvents[$signal][self::EV_SIGNAL][0], array($signal)); + } + + /** + * {@inheritdoc} + */ + public function del($fd, $flag) + { + $fd_key = (int)$fd; + switch ($flag) { + case self::EV_READ: + unset($this->_allEvents[$fd_key][$flag], $this->_readFds[$fd_key]); + if (empty($this->_allEvents[$fd_key])) { + unset($this->_allEvents[$fd_key]); + } + return true; + case self::EV_WRITE: + unset($this->_allEvents[$fd_key][$flag], $this->_writeFds[$fd_key]); + if (empty($this->_allEvents[$fd_key])) { + unset($this->_allEvents[$fd_key]); + } + return true; + case self::EV_EXCEPT: + unset($this->_allEvents[$fd_key][$flag], $this->_exceptFds[$fd_key]); + if(empty($this->_allEvents[$fd_key])) + { + unset($this->_allEvents[$fd_key]); + } + return true; + case self::EV_SIGNAL: + if(\DIRECTORY_SEPARATOR !== '/') { + return false; + } + unset($this->_signalEvents[$fd_key]); + \pcntl_signal($fd, SIG_IGN); + break; + case self::EV_TIMER: + case self::EV_TIMER_ONCE; + unset($this->_eventTimer[$fd_key]); + return true; + } + return false; + } + + /** + * Tick for timer. + * + * @return void + */ + protected function tick() + { + $tasks_to_insert = []; + while (!$this->_scheduler->isEmpty()) { + $scheduler_data = $this->_scheduler->top(); + $timer_id = $scheduler_data['data']; + $next_run_time = -$scheduler_data['priority']; + $time_now = \microtime(true); + $this->_selectTimeout = (int) (($next_run_time - $time_now) * 1000000); + if ($this->_selectTimeout <= 0) { + $this->_scheduler->extract(); + + if (!isset($this->_eventTimer[$timer_id])) { + continue; + } + + // [func, args, flag, timer_interval] + $task_data = $this->_eventTimer[$timer_id]; + if ($task_data[2] === self::EV_TIMER) { + $next_run_time = $time_now + $task_data[3]; + $tasks_to_insert[] = [$timer_id, -$next_run_time]; + } + try { + \call_user_func_array($task_data[0], $task_data[1]); + } catch (Throwable $e) { + Worker::stopAll(250, $e); + } + if (isset($this->_eventTimer[$timer_id]) && $task_data[2] === self::EV_TIMER_ONCE) { + $this->del($timer_id, self::EV_TIMER_ONCE); + } + } else { + break; + } + } + foreach ($tasks_to_insert as $item) { + $this->_scheduler->insert($item[0], $item[1]); + } + if (!$this->_scheduler->isEmpty()) { + $scheduler_data = $this->_scheduler->top(); + $next_run_time = -$scheduler_data['priority']; + $time_now = \microtime(true); + $this->_selectTimeout = \max((int) (($next_run_time - $time_now) * 1000000), 0); + return; + } + $this->_selectTimeout = 100000000; + } + + /** + * {@inheritdoc} + */ + public function clearAllTimer() + { + $this->_scheduler = new \SplPriorityQueue(); + $this->_scheduler->setExtractFlags(\SplPriorityQueue::EXTR_BOTH); + $this->_eventTimer = array(); + } + + /** + * {@inheritdoc} + */ + public function loop() + { + while (1) { + if(\DIRECTORY_SEPARATOR === '/') { + // Calls signal handlers for pending signals + \pcntl_signal_dispatch(); + } + + $read = $this->_readFds; + $write = $this->_writeFds; + $except = $this->_exceptFds; + $ret = false; + + if ($read || $write || $except) { + // Waiting read/write/signal/timeout events. + try { + $ret = @stream_select($read, $write, $except, 0, $this->_selectTimeout); + } catch (\Exception $e) {} catch (\Error $e) {} + + } else { + $this->_selectTimeout >= 1 && usleep($this->_selectTimeout); + } + + if (!$this->_scheduler->isEmpty()) { + $this->tick(); + } + + if (!$ret) { + continue; + } + + if ($read) { + foreach ($read as $fd) { + $fd_key = (int)$fd; + if (isset($this->_allEvents[$fd_key][self::EV_READ])) { + \call_user_func_array($this->_allEvents[$fd_key][self::EV_READ][0], + array($this->_allEvents[$fd_key][self::EV_READ][1])); + } + } + } + + if ($write) { + foreach ($write as $fd) { + $fd_key = (int)$fd; + if (isset($this->_allEvents[$fd_key][self::EV_WRITE])) { + \call_user_func_array($this->_allEvents[$fd_key][self::EV_WRITE][0], + array($this->_allEvents[$fd_key][self::EV_WRITE][1])); + } + } + } + + if($except) { + foreach($except as $fd) { + $fd_key = (int) $fd; + if(isset($this->_allEvents[$fd_key][self::EV_EXCEPT])) { + \call_user_func_array($this->_allEvents[$fd_key][self::EV_EXCEPT][0], + array($this->_allEvents[$fd_key][self::EV_EXCEPT][1])); + } + } + } + } + } + + /** + * Destroy loop. + * + * @return void + */ + public function destroy() + { + + } + + /** + * Get timer count. + * + * @return integer + */ + public function getTimerCount() + { + return \count($this->_eventTimer); + } +} diff --git a/vendor/workerman/workerman/Events/Swoole.php b/vendor/workerman/workerman/Events/Swoole.php new file mode 100644 index 0000000..dc11526 --- /dev/null +++ b/vendor/workerman/workerman/Events/Swoole.php @@ -0,0 +1,285 @@ + + * @link http://www.workerman.net/ + * @link https://github.com/ares333/Workerman + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman\Events; + +use Workerman\Worker; +use Swoole\Event; +use Swoole\Timer; +use Swoole\Coroutine; + +class Swoole implements EventInterface +{ + + protected $_timer = array(); + + protected $_timerOnceMap = array(); + + protected $mapId = 0; + + protected $_fd = array(); + + // milisecond + public static $signalDispatchInterval = 500; + + protected $_hasSignal = false; + + protected $_readEvents = array(); + + protected $_writeEvents = array(); + + /** + * + * {@inheritdoc} + * + * @see \Workerman\Events\EventInterface::add() + */ + public function add($fd, $flag, $func, $args = array()) + { + switch ($flag) { + case self::EV_SIGNAL: + $res = \pcntl_signal($fd, $func, false); + if (! $this->_hasSignal && $res) { + Timer::tick(static::$signalDispatchInterval, + function () { + \pcntl_signal_dispatch(); + }); + $this->_hasSignal = true; + } + return $res; + case self::EV_TIMER: + case self::EV_TIMER_ONCE: + $method = self::EV_TIMER === $flag ? 'tick' : 'after'; + if ($this->mapId > \PHP_INT_MAX) { + $this->mapId = 0; + } + $mapId = $this->mapId++; + $t = (int)($fd * 1000); + if ($t < 1) { + $t = 1; + } + $timer_id = Timer::$method($t, + function ($timer_id = null) use ($func, $args, $mapId) { + try { + \call_user_func_array($func, (array)$args); + } catch (\Exception $e) { + Worker::stopAll(250, $e); + } catch (\Error $e) { + Worker::stopAll(250, $e); + } + // EV_TIMER_ONCE + if (! isset($timer_id)) { + // may be deleted in $func + if (\array_key_exists($mapId, $this->_timerOnceMap)) { + $timer_id = $this->_timerOnceMap[$mapId]; + unset($this->_timer[$timer_id], + $this->_timerOnceMap[$mapId]); + } + } + }); + if ($flag === self::EV_TIMER_ONCE) { + $this->_timerOnceMap[$mapId] = $timer_id; + $this->_timer[$timer_id] = $mapId; + } else { + $this->_timer[$timer_id] = null; + } + return $timer_id; + case self::EV_READ: + case self::EV_WRITE: + $fd_key = (int) $fd; + if ($flag === self::EV_READ) { + $this->_readEvents[$fd_key] = $func; + } else { + $this->_writeEvents[$fd_key] = $func; + } + if (!isset($this->_fd[$fd_key])) { + if ($flag === self::EV_READ) { + $res = Event::add($fd, [$this, 'callRead'], null, SWOOLE_EVENT_READ); + $fd_type = SWOOLE_EVENT_READ; + } else { + $res = Event::add($fd, null, $func, SWOOLE_EVENT_WRITE); + $fd_type = SWOOLE_EVENT_WRITE; + } + if ($res) { + $this->_fd[$fd_key] = $fd_type; + } + } else { + $fd_val = $this->_fd[$fd_key]; + $res = true; + if ($flag === self::EV_READ) { + if (($fd_val & SWOOLE_EVENT_READ) !== SWOOLE_EVENT_READ) { + $res = Event::set($fd, $func, null, + SWOOLE_EVENT_READ | SWOOLE_EVENT_WRITE); + $this->_fd[$fd_key] |= SWOOLE_EVENT_READ; + } + } else { + if (($fd_val & SWOOLE_EVENT_WRITE) !== SWOOLE_EVENT_WRITE) { + $res = Event::set($fd, null, $func, + SWOOLE_EVENT_READ | SWOOLE_EVENT_WRITE); + $this->_fd[$fd_key] |= SWOOLE_EVENT_WRITE; + } + } + } + return $res; + } + } + + /** + * @param $fd + * @return void + */ + protected function callRead($stream) + { + $fd = (int) $stream; + if (isset($this->_readEvents[$fd])) { + try { + \call_user_func($this->_readEvents[$fd], $stream); + } catch (\Exception $e) { + Worker::stopAll(250, $e); + } catch (\Error $e) { + Worker::stopAll(250, $e); + } + } + } + + /** + * @param $fd + * @return void + */ + protected function callWrite($stream) + { + $fd = (int) $stream; + if (isset($this->_writeEvents[$fd])) { + try { + \call_user_func($this->_writeEvents[$fd], $stream); + } catch (\Exception $e) { + Worker::stopAll(250, $e); + } catch (\Error $e) { + Worker::stopAll(250, $e); + } + } + } + + /** + * + * {@inheritdoc} + * + * @see \Workerman\Events\EventInterface::del() + */ + public function del($fd, $flag) + { + switch ($flag) { + case self::EV_SIGNAL: + return \pcntl_signal($fd, SIG_IGN, false); + case self::EV_TIMER: + case self::EV_TIMER_ONCE: + // already remove in EV_TIMER_ONCE callback. + if (! \array_key_exists($fd, $this->_timer)) { + return true; + } + $res = Timer::clear($fd); + if ($res) { + $mapId = $this->_timer[$fd]; + if (isset($mapId)) { + unset($this->_timerOnceMap[$mapId]); + } + unset($this->_timer[$fd]); + } + return $res; + case self::EV_READ: + case self::EV_WRITE: + $fd_key = (int) $fd; + if ($flag === self::EV_READ) { + unset($this->_readEvents[$fd_key]); + } elseif ($flag === self::EV_WRITE) { + unset($this->_writeEvents[$fd_key]); + } + if (isset($this->_fd[$fd_key])) { + $fd_val = $this->_fd[$fd_key]; + if ($flag === self::EV_READ) { + $flag_remove = ~ SWOOLE_EVENT_READ; + } else { + $flag_remove = ~ SWOOLE_EVENT_WRITE; + } + $fd_val &= $flag_remove; + if (0 === $fd_val) { + $res = Event::del($fd); + if ($res) { + unset($this->_fd[$fd_key]); + } + } else { + $res = Event::set($fd, null, null, $fd_val); + if ($res) { + $this->_fd[$fd_key] = $fd_val; + } + } + } else { + $res = true; + } + return $res; + } + } + + /** + * + * {@inheritdoc} + * + * @see \Workerman\Events\EventInterface::clearAllTimer() + */ + public function clearAllTimer() + { + foreach (array_keys($this->_timer) as $v) { + Timer::clear($v); + } + $this->_timer = array(); + $this->_timerOnceMap = array(); + } + + /** + * + * {@inheritdoc} + * + * @see \Workerman\Events\EventInterface::loop() + */ + public function loop() + { + Event::wait(); + } + + /** + * + * {@inheritdoc} + * + * @see \Workerman\Events\EventInterface::destroy() + */ + public function destroy() + { + foreach (Coroutine::listCoroutines() as $coroutine) { + Coroutine::cancel($coroutine); + } + // Wait for coroutines to exit + usleep(100000); + Event::exit(); + } + + /** + * + * {@inheritdoc} + * + * @see \Workerman\Events\EventInterface::getTimerCount() + */ + public function getTimerCount() + { + return \count($this->_timer); + } +} diff --git a/vendor/workerman/workerman/Events/Uv.php b/vendor/workerman/workerman/Events/Uv.php new file mode 100644 index 0000000..49f0ddd --- /dev/null +++ b/vendor/workerman/workerman/Events/Uv.php @@ -0,0 +1,260 @@ + + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman\Events; + +use Workerman\Worker; + +/** + * libuv eventloop + */ +class Uv implements EventInterface +{ + /** + * Event Loop. + * @var object + */ + protected $_eventLoop = null; + + /** + * All listeners for read/write event. + * + * @var array + */ + protected $_allEvents = array(); + + /** + * Event listeners of signal. + * + * @var array + */ + protected $_eventSignal = array(); + + /** + * All timer event listeners. + * + * @var array + */ + protected $_eventTimer = array(); + + /** + * Timer id. + * + * @var int + */ + protected static $_timerId = 1; + + /** + * @brief Constructor + * + * @param object $loop + * + * @return void + */ + public function __construct(\UVLoop $loop = null) + { + if(!extension_loaded('uv')) + { + throw new \Exception(__CLASS__ . ' requires the UV extension, but detected it has NOT been installed yet.'); + } + + if(empty($loop) || !$loop instanceof \UVLoop) + { + $this->_eventLoop = \uv_default_loop(); + return; + } + + $this->_eventLoop = $loop; + } + + /** + * @brief Add a timer + * + * @param resource $fd + * @param int $flag + * @param callback $func + * @param mixed $args + * + * @return mixed + */ + public function add($fd, $flag, $func, $args = null) + { + switch ($flag) + { + case self::EV_SIGNAL: + $signalCallback = function($watcher, $socket)use($func, $fd){ + try { + \call_user_func($func, $fd); + } catch (\Exception $e) { + Worker::stopAll(250, $e); + } catch (\Error $e) { + Worker::stopAll(250, $e); + } + }; + $signalWatcher = \uv_signal_init(); + \uv_signal_start($signalWatcher, $signalCallback, $fd); + $this->_eventSignal[$fd] = $signalWatcher; + return true; + case self::EV_TIMER: + case self::EV_TIMER_ONCE: + $repeat = $flag === self::EV_TIMER_ONCE ? 0 : (int)($fd * 1000); + $param = array($func, (array)$args, $flag, $fd, self::$_timerId); + $timerWatcher = \uv_timer_init(); + \uv_timer_start($timerWatcher, ($flag === self::EV_TIMER_ONCE ? (int)($fd * 1000) :1), $repeat, function($watcher)use($param){ + call_user_func_array([$this, 'timerCallback'], [$param]); + }); + $this->_eventTimer[self::$_timerId] = $timerWatcher; + return self::$_timerId++; + case self::EV_READ: + case self::EV_WRITE: + $fd_key = (int)$fd; + $ioCallback = function($watcher, $status, $events, $fd)use($func){ + try { + \call_user_func($func, $fd); + } catch (\Exception $e) { + Worker::stopAll(250, $e); + } catch (\Error $e) { + Worker::stopAll(250, $e); + } + }; + $ioWatcher = \uv_poll_init($this->_eventLoop, $fd); + $real_flag = $flag === self::EV_READ ? \Uv::READABLE : \Uv::WRITABLE; + \uv_poll_start($ioWatcher, $real_flag, $ioCallback); + $this->_allEvents[$fd_key][$flag] = $ioWatcher; + return true; + default: + break; + } + } + + /** + * @brief Remove a timer + * + * @param resource $fd + * @param int $flag + * + * @return boolean + */ + public function del($fd, $flag) + { + switch ($flag) + { + case self::EV_READ: + case self::EV_WRITE: + $fd_key = (int)$fd; + if (isset($this->_allEvents[$fd_key][$flag])) { + $watcher = $this->_allEvents[$fd_key][$flag]; + \uv_is_active($watcher) && \uv_poll_stop($watcher); + unset($this->_allEvents[$fd_key][$flag]); + } + if (empty($this->_allEvents[$fd_key])) { + unset($this->_allEvents[$fd_key]); + } + break; + case self::EV_SIGNAL: + $fd_key = (int)$fd; + if (isset($this->_eventSignal[$fd_key])) { + $watcher = $this->_eventSignal[$fd_key]; + \uv_is_active($watcher) && \uv_signal_stop($watcher); + unset($this->_eventSignal[$fd_key]); + } + break; + case self::EV_TIMER: + case self::EV_TIMER_ONCE: + if (isset($this->_eventTimer[$fd])) { + $watcher = $this->_eventTimer[$fd]; + \uv_is_active($watcher) && \uv_timer_stop($watcher); + unset($this->_eventTimer[$fd]); + } + break; + } + + return true; + } + + /** + * @brief Timer callback + * + * @param array $input + * + * @return void + */ + public function timerCallback($input) + { + if(!is_array($input)) return; + + $timer_id = $input[4]; + + if ($input[2] === self::EV_TIMER_ONCE) + { + $watcher = $this->_eventTimer[$timer_id]; + \uv_is_active($watcher) && \uv_timer_stop($watcher); + unset($this->_eventTimer[$timer_id]); + } + + try { + \call_user_func_array($input[0], $input[1]); + } catch (\Exception $e) { + Worker::stopAll(250, $e); + } catch (\Error $e) { + Worker::stopAll(250, $e); + } + } + + /** + * @brief Remove all timers + * + * @return void + */ + public function clearAllTimer() + { + if(!is_array($this->_eventTimer)) return; + + foreach($this->_eventTimer as $watcher) + { + \uv_is_active($watcher) && \uv_timer_stop($watcher); + } + + $this->_eventTimer = array(); + } + + /** + * @brief Start loop + * + * @return void + */ + public function loop() + { + \Uv_run(); + } + + /** + * @brief Destroy loop + * + * @return void + */ + public function destroy() + { + !empty($this->_eventLoop) && \uv_loop_delete($this->_eventLoop); + $this->_allEvents = []; + } + + /** + * @brief Get timer count + * + * @return integer + */ + public function getTimerCount() + { + return \count($this->_eventTimer); + } +} diff --git a/vendor/workerman/workerman/Lib/Constants.php b/vendor/workerman/workerman/Lib/Constants.php new file mode 100644 index 0000000..f5e2424 --- /dev/null +++ b/vendor/workerman/workerman/Lib/Constants.php @@ -0,0 +1,44 @@ + + * @copyright walkor + * @license http://www.opensource.org/licenses/mit-license.php MIT License + * + * @link http://www.workerman.net/ + */ + +// Pcre.jit is not stable, temporarily disabled. +ini_set('pcre.jit', 0); + +// For onError callback. +const WORKERMAN_CONNECT_FAIL = 1; +// For onError callback. +const WORKERMAN_SEND_FAIL = 2; + +// Define OS Type +const OS_TYPE_LINUX = 'linux'; +const OS_TYPE_WINDOWS = 'windows'; + +// Compatible with php7 +if (!class_exists('Error')) { + class Error extends Exception + { + } +} + +if (!interface_exists('SessionHandlerInterface')) { + interface SessionHandlerInterface { + public function close(); + public function destroy($session_id); + public function gc($maxlifetime); + public function open($save_path ,$session_name); + public function read($session_id); + public function write($session_id , $session_data); + } +} diff --git a/vendor/workerman/workerman/Lib/Timer.php b/vendor/workerman/workerman/Lib/Timer.php new file mode 100644 index 0000000..b110051 --- /dev/null +++ b/vendor/workerman/workerman/Lib/Timer.php @@ -0,0 +1,22 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman\Lib; + +/** + * Do not use Workerman\Lib\Timer. + * Please use Workerman\Timer. + * This class is only used for compatibility with workerman 3.* + * @package Workerman\Lib + */ +class Timer extends \Workerman\Timer {} \ No newline at end of file diff --git a/vendor/workerman/workerman/MIT-LICENSE.txt b/vendor/workerman/workerman/MIT-LICENSE.txt new file mode 100644 index 0000000..fd6b1c8 --- /dev/null +++ b/vendor/workerman/workerman/MIT-LICENSE.txt @@ -0,0 +1,21 @@ +The MIT License + +Copyright (c) 2009-2015 walkor and contributors (see https://github.com/walkor/workerman/contributors) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/vendor/workerman/workerman/Protocols/Frame.php b/vendor/workerman/workerman/Protocols/Frame.php new file mode 100644 index 0000000..26b04de --- /dev/null +++ b/vendor/workerman/workerman/Protocols/Frame.php @@ -0,0 +1,61 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman\Protocols; + +use Workerman\Connection\TcpConnection; + +/** + * Frame Protocol. + */ +class Frame +{ + /** + * Check the integrity of the package. + * + * @param string $buffer + * @param TcpConnection $connection + * @return int + */ + public static function input($buffer, TcpConnection $connection) + { + if (\strlen($buffer) < 4) { + return 0; + } + $unpack_data = \unpack('Ntotal_length', $buffer); + return $unpack_data['total_length']; + } + + /** + * Decode. + * + * @param string $buffer + * @return string + */ + public static function decode($buffer) + { + return \substr($buffer, 4); + } + + /** + * Encode. + * + * @param string $buffer + * @return string + */ + public static function encode($buffer) + { + $total_length = 4 + \strlen($buffer); + return \pack('N', $total_length) . $buffer; + } +} diff --git a/vendor/workerman/workerman/Protocols/Http.php b/vendor/workerman/workerman/Protocols/Http.php new file mode 100644 index 0000000..9e5d928 --- /dev/null +++ b/vendor/workerman/workerman/Protocols/Http.php @@ -0,0 +1,323 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman\Protocols; + +use Workerman\Connection\TcpConnection; +use Workerman\Protocols\Http\Request; +use Workerman\Protocols\Http\Response; +use Workerman\Protocols\Http\Session; +use Workerman\Protocols\Websocket; +use Workerman\Worker; + +/** + * Class Http. + * @package Workerman\Protocols + */ +class Http +{ + /** + * Request class name. + * + * @var string + */ + protected static $_requestClass = 'Workerman\Protocols\Http\Request'; + + /** + * Upload tmp dir. + * + * @var string + */ + protected static $_uploadTmpDir = ''; + + /** + * Open cache. + * + * @var bool. + */ + protected static $_enableCache = true; + + /** + * Get or set session name. + * + * @param string|null $name + * @return string + */ + public static function sessionName($name = null) + { + if ($name !== null && $name !== '') { + Session::$name = (string)$name; + } + return Session::$name; + } + + /** + * Get or set the request class name. + * + * @param string|null $class_name + * @return string + */ + public static function requestClass($class_name = null) + { + if ($class_name) { + static::$_requestClass = $class_name; + } + return static::$_requestClass; + } + + /** + * Enable or disable Cache. + * + * @param mixed $value + */ + public static function enableCache($value) + { + static::$_enableCache = (bool)$value; + } + + /** + * Check the integrity of the package. + * + * @param string $recv_buffer + * @param TcpConnection $connection + * @return int + */ + public static function input($recv_buffer, TcpConnection $connection) + { + static $input = []; + if (!isset($recv_buffer[512]) && isset($input[$recv_buffer])) { + return $input[$recv_buffer]; + } + $crlf_pos = \strpos($recv_buffer, "\r\n\r\n"); + if (false === $crlf_pos) { + // Judge whether the package length exceeds the limit. + if (\strlen($recv_buffer) >= 16384) { + $connection->close("HTTP/1.1 413 Request Entity Too Large\r\n\r\n", true); + return 0; + } + return 0; + } + + $length = $crlf_pos + 4; + $method = \strstr($recv_buffer, ' ', true); + + if (!\in_array($method, ['GET', 'POST', 'OPTIONS', 'HEAD', 'DELETE', 'PUT', 'PATCH'])) { + $connection->close("HTTP/1.1 400 Bad Request\r\n\r\n", true); + return 0; + } + + $header = \substr($recv_buffer, 0, $crlf_pos); + if ($pos = \strpos($header, "\r\nContent-Length: ")) { + $length = $length + (int)\substr($header, $pos + 18, 10); + $has_content_length = true; + } else if (\preg_match("/\r\ncontent-length: ?(\d+)/i", $header, $match)) { + $length = $length + $match[1]; + $has_content_length = true; + } else { + $has_content_length = false; + if (false !== stripos($header, "\r\nTransfer-Encoding:")) { + $connection->close("HTTP/1.1 400 Bad Request\r\n\r\n", true); + return 0; + } + } + + if ($has_content_length) { + if ($length > $connection->maxPackageSize) { + $connection->close("HTTP/1.1 413 Request Entity Too Large\r\n\r\n", true); + return 0; + } + } + + if (!isset($recv_buffer[512])) { + $input[$recv_buffer] = $length; + if (\count($input) > 512) { + unset($input[key($input)]); + } + } + + return $length; + } + + /** + * Http decode. + * + * @param string $recv_buffer + * @param TcpConnection $connection + * @return \Workerman\Protocols\Http\Request + */ + public static function decode($recv_buffer, TcpConnection $connection) + { + static $requests = array(); + $cacheable = static::$_enableCache && !isset($recv_buffer[512]); + if (true === $cacheable && isset($requests[$recv_buffer])) { + $request = $requests[$recv_buffer]; + $request->connection = $connection; + $connection->__request = $request; + $request->properties = array(); + return $request; + } + $request = new static::$_requestClass($recv_buffer); + $request->connection = $connection; + $connection->__request = $request; + if (true === $cacheable) { + $requests[$recv_buffer] = $request; + if (\count($requests) > 512) { + unset($requests[key($requests)]); + } + } + return $request; + } + + /** + * Http encode. + * + * @param string|Response $response + * @param TcpConnection $connection + * @return string + */ + public static function encode($response, TcpConnection $connection) + { + if (isset($connection->__request)) { + $connection->__request->session = null; + $connection->__request->connection = null; + $connection->__request = null; + } + if (!\is_object($response)) { + $ext_header = ''; + if (isset($connection->__header)) { + foreach ($connection->__header as $name => $value) { + if (\is_array($value)) { + foreach ($value as $item) { + $ext_header = "$name: $item\r\n"; + } + } else { + $ext_header = "$name: $value\r\n"; + } + } + unset($connection->__header); + } + $body_len = \strlen((string)$response); + return "HTTP/1.1 200 OK\r\nServer: workerman\r\n{$ext_header}Connection: keep-alive\r\nContent-Type: text/html;charset=utf-8\r\nContent-Length: $body_len\r\n\r\n$response"; + } + + if (isset($connection->__header)) { + $response->withHeaders($connection->__header); + unset($connection->__header); + } + + if (isset($response->file)) { + $file = $response->file['file']; + $offset = $response->file['offset']; + $length = $response->file['length']; + clearstatcache(); + $file_size = (int)\filesize($file); + $body_len = $length > 0 ? $length : $file_size - $offset; + $response->withHeaders(array( + 'Content-Length' => $body_len, + 'Accept-Ranges' => 'bytes', + )); + if ($offset || $length) { + $offset_end = $offset + $body_len - 1; + $response->header('Content-Range', "bytes $offset-$offset_end/$file_size"); + } + if ($body_len < 2 * 1024 * 1024) { + $connection->send((string)$response . file_get_contents($file, false, null, $offset, $body_len), true); + return ''; + } + $handler = \fopen($file, 'r'); + if (false === $handler) { + $connection->close(new Response(403, null, '403 Forbidden')); + return ''; + } + $connection->send((string)$response, true); + static::sendStream($connection, $handler, $offset, $length); + return ''; + } + + return (string)$response; + } + + /** + * Send remainder of a stream to client. + * + * @param TcpConnection $connection + * @param resource $handler + * @param int $offset + * @param int $length + */ + protected static function sendStream(TcpConnection $connection, $handler, $offset = 0, $length = 0) + { + $connection->bufferFull = false; + if ($offset !== 0) { + \fseek($handler, $offset); + } + $offset_end = $offset + $length; + // Read file content from disk piece by piece and send to client. + $do_write = function () use ($connection, $handler, $length, $offset_end) { + // Send buffer not full. + while ($connection->bufferFull === false) { + // Read from disk. + $size = 1024 * 1024; + if ($length !== 0) { + $tell = \ftell($handler); + $remain_size = $offset_end - $tell; + if ($remain_size <= 0) { + fclose($handler); + $connection->onBufferDrain = null; + return; + } + $size = $remain_size > $size ? $size : $remain_size; + } + + $buffer = \fread($handler, $size); + // Read eof. + if ($buffer === '' || $buffer === false) { + fclose($handler); + $connection->onBufferDrain = null; + return; + } + $connection->send($buffer, true); + } + }; + // Send buffer full. + $connection->onBufferFull = function ($connection) { + $connection->bufferFull = true; + }; + // Send buffer drain. + $connection->onBufferDrain = function ($connection) use ($do_write) { + $connection->bufferFull = false; + $do_write(); + }; + $do_write(); + } + + /** + * Set or get uploadTmpDir. + * + * @return bool|string + */ + public static function uploadTmpDir($dir = null) + { + if (null !== $dir) { + static::$_uploadTmpDir = $dir; + } + if (static::$_uploadTmpDir === '') { + if ($upload_tmp_dir = \ini_get('upload_tmp_dir')) { + static::$_uploadTmpDir = $upload_tmp_dir; + } else if ($upload_tmp_dir = \sys_get_temp_dir()) { + static::$_uploadTmpDir = $upload_tmp_dir; + } + } + return static::$_uploadTmpDir; + } +} diff --git a/vendor/workerman/workerman/Protocols/Http/Chunk.php b/vendor/workerman/workerman/Protocols/Http/Chunk.php new file mode 100644 index 0000000..ab06a9c --- /dev/null +++ b/vendor/workerman/workerman/Protocols/Http/Chunk.php @@ -0,0 +1,48 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman\Protocols\Http; + + +/** + * Class Chunk + * @package Workerman\Protocols\Http + */ +class Chunk +{ + /** + * Chunk buffer. + * + * @var string + */ + protected $_buffer = null; + + /** + * Chunk constructor. + * @param string $buffer + */ + public function __construct($buffer) + { + $this->_buffer = $buffer; + } + + /** + * __toString + * + * @return string + */ + public function __toString() + { + return \dechex(\strlen($this->_buffer))."\r\n$this->_buffer\r\n"; + } +} \ No newline at end of file diff --git a/vendor/workerman/workerman/Protocols/Http/Request.php b/vendor/workerman/workerman/Protocols/Http/Request.php new file mode 100644 index 0000000..6eca3e4 --- /dev/null +++ b/vendor/workerman/workerman/Protocols/Http/Request.php @@ -0,0 +1,694 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman\Protocols\Http; + +use Workerman\Connection\TcpConnection; +use Workerman\Protocols\Http\Session; +use Workerman\Protocols\Http; +use Workerman\Worker; + +/** + * Class Request + * @package Workerman\Protocols\Http + */ +class Request +{ + /** + * Connection. + * + * @var TcpConnection + */ + public $connection = null; + + /** + * Session instance. + * + * @var Session + */ + public $session = null; + + /** + * Properties. + * + * @var array + */ + public $properties = array(); + + /** + * @var int + */ + public static $maxFileUploads = 1024; + + /** + * Http buffer. + * + * @var string + */ + protected $_buffer = null; + + /** + * Request data. + * + * @var array + */ + protected $_data = null; + + /** + * Enable cache. + * + * @var bool + */ + protected static $_enableCache = true; + + /** + * Is safe. + * + * @var bool + */ + protected $_isSafe = true; + + + /** + * Request constructor. + * + * @param string $buffer + */ + public function __construct($buffer) + { + $this->_buffer = $buffer; + } + + /** + * $_GET. + * + * @param string|null $name + * @param mixed|null $default + * @return mixed|null + */ + public function get($name = null, $default = null) + { + if (!isset($this->_data['get'])) { + $this->parseGet(); + } + if (null === $name) { + return $this->_data['get']; + } + return isset($this->_data['get'][$name]) ? $this->_data['get'][$name] : $default; + } + + /** + * $_POST. + * + * @param string|null $name + * @param mixed|null $default + * @return mixed|null + */ + public function post($name = null, $default = null) + { + if (!isset($this->_data['post'])) { + $this->parsePost(); + } + if (null === $name) { + return $this->_data['post']; + } + return isset($this->_data['post'][$name]) ? $this->_data['post'][$name] : $default; + } + + /** + * Get header item by name. + * + * @param string|null $name + * @param mixed|null $default + * @return array|string|null + */ + public function header($name = null, $default = null) + { + if (!isset($this->_data['headers'])) { + $this->parseHeaders(); + } + if (null === $name) { + return $this->_data['headers']; + } + $name = \strtolower($name); + return isset($this->_data['headers'][$name]) ? $this->_data['headers'][$name] : $default; + } + + /** + * Get cookie item by name. + * + * @param string|null $name + * @param mixed|null $default + * @return array|string|null + */ + public function cookie($name = null, $default = null) + { + if (!isset($this->_data['cookie'])) { + $this->_data['cookie'] = array(); + \parse_str(\preg_replace('/; ?/', '&', $this->header('cookie', '')), $this->_data['cookie']); + } + if ($name === null) { + return $this->_data['cookie']; + } + return isset($this->_data['cookie'][$name]) ? $this->_data['cookie'][$name] : $default; + } + + /** + * Get upload files. + * + * @param string|null $name + * @return array|null + */ + public function file(?string $name = null): mixed + { + if (!isset($this->_data['files'])) { + $this->parsePost(); + } + if (null === $name) { + return $this->_data['files']; + } + return isset($this->_data['files'][$name]) ? $this->_data['files'][$name] : null; + } + + /** + * Get method. + * + * @return string + */ + public function method() + { + if (!isset($this->_data['method'])) { + $this->parseHeadFirstLine(); + } + return $this->_data['method']; + } + + /** + * Get http protocol version. + * + * @return string + */ + public function protocolVersion() + { + if (!isset($this->_data['protocolVersion'])) { + $this->parseProtocolVersion(); + } + return $this->_data['protocolVersion']; + } + + /** + * Get host. + * + * @param bool $without_port + * @return string + */ + public function host($without_port = false) + { + $host = $this->header('host'); + if ($host && $without_port) { + return preg_replace('/:\d{1,5}$/', '', $host); + } + return $host; + } + + /** + * Get uri. + * + * @return mixed + */ + public function uri() + { + if (!isset($this->_data['uri'])) { + $this->parseHeadFirstLine(); + } + return $this->_data['uri']; + } + + /** + * Get path. + * + * @return mixed + */ + public function path() + { + if (!isset($this->_data['path'])) { + $this->_data['path'] = (string)\parse_url($this->uri(), PHP_URL_PATH); + } + return $this->_data['path']; + } + + /** + * Get query string. + * + * @return mixed + */ + public function queryString() + { + if (!isset($this->_data['query_string'])) { + $this->_data['query_string'] = (string)\parse_url($this->uri(), PHP_URL_QUERY); + } + return $this->_data['query_string']; + } + + /** + * Get session. + * + * @return bool|\Workerman\Protocols\Http\Session + */ + public function session() + { + if ($this->session === null) { + $session_id = $this->sessionId(); + if ($session_id === false) { + return false; + } + $this->session = new Session($session_id); + } + return $this->session; + } + + /** + * Get/Set session id. + * + * @param $session_id + * @return string + */ + public function sessionId($session_id = null) + { + if ($session_id) { + unset($this->sid); + } + if (!isset($this->sid)) { + $session_name = Session::$name; + $sid = $session_id ? '' : $this->cookie($session_name); + if ($sid === '' || $sid === null) { + if ($this->connection === null) { + Worker::safeEcho('Request->session() fail, header already send'); + return false; + } + $sid = $session_id ? $session_id : static::createSessionId(); + $cookie_params = Session::getCookieParams(); + $this->connection->__header['Set-Cookie'] = array($session_name . '=' . $sid + . (empty($cookie_params['domain']) ? '' : '; Domain=' . $cookie_params['domain']) + . (empty($cookie_params['lifetime']) ? '' : '; Max-Age=' . $cookie_params['lifetime']) + . (empty($cookie_params['path']) ? '' : '; Path=' . $cookie_params['path']) + . (empty($cookie_params['samesite']) ? '' : '; SameSite=' . $cookie_params['samesite']) + . (!$cookie_params['secure'] ? '' : '; Secure') + . (!$cookie_params['httponly'] ? '' : '; HttpOnly')); + } + $this->sid = $sid; + } + return $this->sid; + } + + /** + * Get http raw head. + * + * @return string + */ + public function rawHead() + { + if (!isset($this->_data['head'])) { + $this->_data['head'] = \strstr($this->_buffer, "\r\n\r\n", true); + } + return $this->_data['head']; + } + + /** + * Get http raw body. + * + * @return string + */ + public function rawBody() + { + return \substr($this->_buffer, \strpos($this->_buffer, "\r\n\r\n") + 4); + } + + /** + * Get raw buffer. + * + * @return string + */ + public function rawBuffer() + { + return $this->_buffer; + } + + /** + * Enable or disable cache. + * + * @param mixed $value + */ + public static function enableCache($value) + { + static::$_enableCache = (bool)$value; + } + + /** + * Parse first line of http header buffer. + * + * @return void + */ + protected function parseHeadFirstLine() + { + $first_line = \strstr($this->_buffer, "\r\n", true); + $tmp = \explode(' ', $first_line, 3); + $this->_data['method'] = $tmp[0]; + $this->_data['uri'] = isset($tmp[1]) ? $tmp[1] : '/'; + } + + /** + * Parse protocol version. + * + * @return void + */ + protected function parseProtocolVersion() + { + $first_line = \strstr($this->_buffer, "\r\n", true); + $protoco_version = substr(\strstr($first_line, 'HTTP/'), 5); + $this->_data['protocolVersion'] = $protoco_version ? $protoco_version : '1.0'; + } + + /** + * Parse headers. + * + * @return void + */ + protected function parseHeaders() + { + static $cache = []; + $this->_data['headers'] = array(); + $raw_head = $this->rawHead(); + $end_line_position = \strpos($raw_head, "\r\n"); + if ($end_line_position === false) { + return; + } + $head_buffer = \substr($raw_head, $end_line_position + 2); + $cacheable = static::$_enableCache && !isset($head_buffer[2048]); + if ($cacheable && isset($cache[$head_buffer])) { + $this->_data['headers'] = $cache[$head_buffer]; + return; + } + $head_data = \explode("\r\n", $head_buffer); + foreach ($head_data as $content) { + if (false !== \strpos($content, ':')) { + list($key, $value) = \explode(':', $content, 2); + $key = \strtolower($key); + $value = \ltrim($value); + } else { + $key = \strtolower($content); + $value = ''; + } + if (isset($this->_data['headers'][$key])) { + $this->_data['headers'][$key] = "{$this->_data['headers'][$key]},$value"; + } else { + $this->_data['headers'][$key] = $value; + } + } + if ($cacheable) { + $cache[$head_buffer] = $this->_data['headers']; + if (\count($cache) > 128) { + unset($cache[key($cache)]); + } + } + } + + /** + * Parse head. + * + * @return void + */ + protected function parseGet() + { + static $cache = []; + $query_string = $this->queryString(); + $this->_data['get'] = array(); + if ($query_string === '') { + return; + } + $cacheable = static::$_enableCache && !isset($query_string[1024]); + if ($cacheable && isset($cache[$query_string])) { + $this->_data['get'] = $cache[$query_string]; + return; + } + \parse_str($query_string, $this->_data['get']); + if ($cacheable) { + $cache[$query_string] = $this->_data['get']; + if (\count($cache) > 256) { + unset($cache[key($cache)]); + } + } + } + + /** + * Parse post. + * + * @return void + */ + protected function parsePost() + { + static $cache = []; + $this->_data['post'] = $this->_data['files'] = array(); + $content_type = $this->header('content-type', ''); + if (\preg_match('/boundary="?(\S+)"?/', $content_type, $match)) { + $http_post_boundary = '--' . $match[1]; + $this->parseUploadFiles($http_post_boundary); + return; + } + $body_buffer = $this->rawBody(); + if ($body_buffer === '') { + return; + } + $cacheable = static::$_enableCache && !isset($body_buffer[1024]); + if ($cacheable && isset($cache[$body_buffer])) { + $this->_data['post'] = $cache[$body_buffer]; + return; + } + if (\preg_match('/\bjson\b/i', $content_type)) { + $this->_data['post'] = (array) json_decode($body_buffer, true); + } else { + \parse_str($body_buffer, $this->_data['post']); + } + if ($cacheable) { + $cache[$body_buffer] = $this->_data['post']; + if (\count($cache) > 256) { + unset($cache[key($cache)]); + } + } + } + + /** + * Parse upload files. + * + * @param string $http_post_boundary + * @return void + */ + protected function parseUploadFiles($http_post_boundary) + { + $http_post_boundary = \trim($http_post_boundary, '"'); + $buffer = $this->_buffer; + $post_encode_string = ''; + $files_encode_string = ''; + $files = []; + $boday_position = strpos($buffer, "\r\n\r\n") + 4; + $offset = $boday_position + strlen($http_post_boundary) + 2; + $max_count = static::$maxFileUploads; + while ($max_count-- > 0 && $offset) { + $offset = $this->parseUploadFile($http_post_boundary, $offset, $post_encode_string, $files_encode_string, $files); + } + if ($post_encode_string) { + parse_str($post_encode_string, $this->_data['post']); + } + + if ($files_encode_string) { + parse_str($files_encode_string, $this->_data['files']); + \array_walk_recursive($this->_data['files'], function (&$value) use ($files) { + $value = $files[$value]; + }); + } + } + + /** + * @param $boundary + * @param $section_start_offset + * @return int + */ + protected function parseUploadFile($boundary, $section_start_offset, &$post_encode_string, &$files_encode_str, &$files) + { + $file = []; + $boundary = "\r\n$boundary"; + if (\strlen($this->_buffer) < $section_start_offset) { + return 0; + } + $section_end_offset = \strpos($this->_buffer, $boundary, $section_start_offset); + if (!$section_end_offset) { + return 0; + } + $content_lines_end_offset = \strpos($this->_buffer, "\r\n\r\n", $section_start_offset); + if (!$content_lines_end_offset || $content_lines_end_offset + 4 > $section_end_offset) { + return 0; + } + $content_lines_str = \substr($this->_buffer, $section_start_offset, $content_lines_end_offset - $section_start_offset); + $content_lines = \explode("\r\n", trim($content_lines_str . "\r\n")); + $boundary_value = \substr($this->_buffer, $content_lines_end_offset + 4, $section_end_offset - $content_lines_end_offset - 4); + $upload_key = false; + foreach ($content_lines as $content_line) { + if (!\strpos($content_line, ': ')) { + return 0; + } + list($key, $value) = \explode(': ', $content_line); + switch (strtolower($key)) { + case "content-disposition": + // Is file data. + if (\preg_match('/name="(.*?)"; filename="(.*?)"/i', $value, $match)) { + $error = 0; + $tmp_file = ''; + $file_name = $match[2]; + $size = \strlen($boundary_value); + $tmp_upload_dir = HTTP::uploadTmpDir(); + if (!$tmp_upload_dir) { + $error = UPLOAD_ERR_NO_TMP_DIR; + } else if ($boundary_value === '' && $file_name === '') { + $error = UPLOAD_ERR_NO_FILE; + } else { + $tmp_file = \tempnam($tmp_upload_dir, 'workerman.upload.'); + if ($tmp_file === false || false === \file_put_contents($tmp_file, $boundary_value)) { + $error = UPLOAD_ERR_CANT_WRITE; + } + } + $upload_key = $match[1]; + // Parse upload files. + $file = [ + 'name' => $file_name, + 'tmp_name' => $tmp_file, + 'size' => $size, + 'error' => $error, + 'type' => '', + ]; + break; + } // Is post field. + else { + // Parse $_POST. + if (\preg_match('/name="(.*?)"$/', $value, $match)) { + $k = $match[1]; + $post_encode_string .= \urlencode($k) . "=" . \urlencode($boundary_value) . '&'; + } + return $section_end_offset + \strlen($boundary) + 2; + } + break; + case "content-type": + $file['type'] = \trim($value); + break; + } + } + if ($upload_key === false) { + return 0; + } + $files_encode_str .= \urlencode($upload_key) . '=' . \count($files) . '&'; + $files[] = $file; + + return $section_end_offset + \strlen($boundary) + 2; + } + + /** + * Create session id. + * + * @return string + */ + protected static function createSessionId() + { + return \bin2hex(\pack('d', \microtime(true)) . random_bytes(8)); + } + + /** + * Setter. + * + * @param string $name + * @param mixed $value + * @return void + */ + public function __set($name, $value) + { + $this->properties[$name] = $value; + } + + /** + * Getter. + * + * @param string $name + * @return mixed|null + */ + public function __get($name) + { + return isset($this->properties[$name]) ? $this->properties[$name] : null; + } + + /** + * Isset. + * + * @param string $name + * @return bool + */ + public function __isset($name) + { + return isset($this->properties[$name]); + } + + /** + * Unset. + * + * @param string $name + * @return void + */ + public function __unset($name) + { + unset($this->properties[$name]); + } + + /** + * __toString. + */ + public function __toString() + { + return $this->_buffer; + } + + /** + * __wakeup. + * + * @return void + */ + public function __wakeup() + { + $this->_isSafe = false; + } + + /** + * __destruct. + * + * @return void + */ + public function __destruct() + { + if (isset($this->_data['files']) && $this->_isSafe) { + \clearstatcache(); + \array_walk_recursive($this->_data['files'], function($value, $key){ + if ($key === 'tmp_name') { + if (\is_file($value)) { + \unlink($value); + } + } + }); + } + } +} diff --git a/vendor/workerman/workerman/Protocols/Http/Response.php b/vendor/workerman/workerman/Protocols/Http/Response.php new file mode 100644 index 0000000..e423727 --- /dev/null +++ b/vendor/workerman/workerman/Protocols/Http/Response.php @@ -0,0 +1,458 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman\Protocols\Http; + +/** + * Class Response + * @package Workerman\Protocols\Http + */ +class Response +{ + /** + * Header data. + * + * @var array + */ + protected $_header = null; + + /** + * Http status. + * + * @var int + */ + protected $_status = null; + + /** + * Http reason. + * + * @var string + */ + protected $_reason = null; + + /** + * Http version. + * + * @var string + */ + protected $_version = '1.1'; + + /** + * Http body. + * + * @var string + */ + protected $_body = null; + + /** + * Send file info + * + * @var array + */ + public $file = null; + + /** + * Mine type map. + * @var array + */ + protected static $_mimeTypeMap = null; + + /** + * Phrases. + * + * @var array + */ + protected static $_phrases = array( + 100 => 'Continue', + 101 => 'Switching Protocols', + 102 => 'Processing', + 200 => 'OK', + 201 => 'Created', + 202 => 'Accepted', + 203 => 'Non-Authoritative Information', + 204 => 'No Content', + 205 => 'Reset Content', + 206 => 'Partial Content', + 207 => 'Multi-status', + 208 => 'Already Reported', + 300 => 'Multiple Choices', + 301 => 'Moved Permanently', + 302 => 'Found', + 303 => 'See Other', + 304 => 'Not Modified', + 305 => 'Use Proxy', + 306 => 'Switch Proxy', + 307 => 'Temporary Redirect', + 400 => 'Bad Request', + 401 => 'Unauthorized', + 402 => 'Payment Required', + 403 => 'Forbidden', + 404 => 'Not Found', + 405 => 'Method Not Allowed', + 406 => 'Not Acceptable', + 407 => 'Proxy Authentication Required', + 408 => 'Request Time-out', + 409 => 'Conflict', + 410 => 'Gone', + 411 => 'Length Required', + 412 => 'Precondition Failed', + 413 => 'Request Entity Too Large', + 414 => 'Request-URI Too Large', + 415 => 'Unsupported Media Type', + 416 => 'Requested range not satisfiable', + 417 => 'Expectation Failed', + 418 => 'I\'m a teapot', + 422 => 'Unprocessable Entity', + 423 => 'Locked', + 424 => 'Failed Dependency', + 425 => 'Unordered Collection', + 426 => 'Upgrade Required', + 428 => 'Precondition Required', + 429 => 'Too Many Requests', + 431 => 'Request Header Fields Too Large', + 451 => 'Unavailable For Legal Reasons', + 500 => 'Internal Server Error', + 501 => 'Not Implemented', + 502 => 'Bad Gateway', + 503 => 'Service Unavailable', + 504 => 'Gateway Time-out', + 505 => 'HTTP Version not supported', + 506 => 'Variant Also Negotiates', + 507 => 'Insufficient Storage', + 508 => 'Loop Detected', + 511 => 'Network Authentication Required', + ); + + /** + * Init. + * + * @return void + */ + public static function init() { + static::initMimeTypeMap(); + } + + /** + * Response constructor. + * + * @param int $status + * @param array $headers + * @param string $body + */ + public function __construct( + $status = 200, + $headers = array(), + $body = '' + ) { + $this->_status = $status; + $this->_header = $headers; + $this->_body = (string)$body; + } + + /** + * Set header. + * + * @param string $name + * @param string $value + * @return $this + */ + public function header($name, $value) { + $this->_header[$name] = $value; + return $this; + } + + /** + * Set header. + * + * @param string $name + * @param string $value + * @return Response + */ + public function withHeader($name, $value) { + return $this->header($name, $value); + } + + /** + * Set headers. + * + * @param array $headers + * @return $this + */ + public function withHeaders($headers) { + $this->_header = \array_merge_recursive($this->_header, $headers); + return $this; + } + + /** + * Remove header. + * + * @param string $name + * @return $this + */ + public function withoutHeader($name) { + unset($this->_header[$name]); + return $this; + } + + /** + * Get header. + * + * @param string $name + * @return null|array|string + */ + public function getHeader($name) { + if (!isset($this->_header[$name])) { + return null; + } + return $this->_header[$name]; + } + + /** + * Get headers. + * + * @return array + */ + public function getHeaders() { + return $this->_header; + } + + /** + * Set status. + * + * @param int $code + * @param string|null $reason_phrase + * @return $this + */ + public function withStatus($code, $reason_phrase = null) { + $this->_status = $code; + $this->_reason = $reason_phrase; + return $this; + } + + /** + * Get status code. + * + * @return int + */ + public function getStatusCode() { + return $this->_status; + } + + /** + * Get reason phrase. + * + * @return string + */ + public function getReasonPhrase() { + return $this->_reason; + } + + /** + * Set protocol version. + * + * @param int $version + * @return $this + */ + public function withProtocolVersion($version) { + $this->_version = $version; + return $this; + } + + /** + * Set http body. + * + * @param string $body + * @return $this + */ + public function withBody($body) { + $this->_body = $body; + return $this; + } + + /** + * Get http raw body. + * + * @return string + */ + public function rawBody() { + return $this->_body; + } + + /** + * Send file. + * + * @param string $file + * @param int $offset + * @param int $length + * @return $this + */ + public function withFile($file, $offset = 0, $length = 0) { + if (!\is_file($file)) { + return $this->withStatus(404)->withBody('

    404 Not Found

    '); + } + $this->file = array('file' => $file, 'offset' => $offset, 'length' => $length); + return $this; + } + + /** + * Set cookie. + * + * @param $name + * @param string $value + * @param int $max_age + * @param string $path + * @param string $domain + * @param bool $secure + * @param bool $http_only + * @param string $same_site + * @return $this + */ + public function cookie($name, $value = '', $max_age = null, $path = '', $domain = '', $secure = false, $http_only = false, $same_site = '') + { + $this->_header['Set-Cookie'][] = $name . '=' . \rawurlencode($value) + . (empty($domain) ? '' : '; Domain=' . $domain) + . ($max_age === null ? '' : '; Max-Age=' . $max_age) + . (empty($path) ? '' : '; Path=' . $path) + . (!$secure ? '' : '; Secure') + . (!$http_only ? '' : '; HttpOnly') + . (empty($same_site) ? '' : '; SameSite=' . $same_site); + return $this; + } + + /** + * Create header for file. + * + * @param array $file_info + * @return string + */ + protected function createHeadForFile($file_info) + { + $file = $file_info['file']; + $reason = $this->_reason ? $this->_reason : static::$_phrases[$this->_status]; + $head = "HTTP/{$this->_version} {$this->_status} $reason\r\n"; + $headers = $this->_header; + if (!isset($headers['Server'])) { + $head .= "Server: workerman\r\n"; + } + foreach ($headers as $name => $value) { + if (\is_array($value)) { + foreach ($value as $item) { + $head .= "$name: $item\r\n"; + } + continue; + } + $head .= "$name: $value\r\n"; + } + + if (!isset($headers['Connection'])) { + $head .= "Connection: keep-alive\r\n"; + } + + $file_info = \pathinfo($file); + $extension = isset($file_info['extension']) ? $file_info['extension'] : ''; + $base_name = isset($file_info['basename']) ? $file_info['basename'] : 'unknown'; + if (!isset($headers['Content-Type'])) { + if (isset(self::$_mimeTypeMap[$extension])) { + $head .= "Content-Type: " . self::$_mimeTypeMap[$extension] . "\r\n"; + } else { + $head .= "Content-Type: application/octet-stream\r\n"; + } + } + + if (!isset($headers['Content-Disposition']) && !isset(self::$_mimeTypeMap[$extension])) { + $head .= "Content-Disposition: attachment; filename=\"$base_name\"\r\n"; + } + + if (!isset($headers['Last-Modified'])) { + if ($mtime = \filemtime($file)) { + $head .= 'Last-Modified: '. \gmdate('D, d M Y H:i:s', $mtime) . ' GMT' . "\r\n"; + } + } + + return "{$head}\r\n"; + } + + /** + * __toString. + * + * @return string + */ + public function __toString() + { + if (isset($this->file)) { + return $this->createHeadForFile($this->file); + } + + $reason = $this->_reason ? $this->_reason : static::$_phrases[$this->_status]; + $body_len = \strlen($this->_body); + if (empty($this->_header)) { + return "HTTP/{$this->_version} {$this->_status} $reason\r\nServer: workerman\r\nContent-Type: text/html;charset=utf-8\r\nContent-Length: $body_len\r\nConnection: keep-alive\r\n\r\n{$this->_body}"; + } + + $head = "HTTP/{$this->_version} {$this->_status} $reason\r\n"; + $headers = $this->_header; + if (!isset($headers['Server'])) { + $head .= "Server: workerman\r\n"; + } + foreach ($headers as $name => $value) { + if (\is_array($value)) { + foreach ($value as $item) { + $head .= "$name: $item\r\n"; + } + continue; + } + $head .= "$name: $value\r\n"; + } + + if (!isset($headers['Connection'])) { + $head .= "Connection: keep-alive\r\n"; + } + + if (!isset($headers['Content-Type'])) { + $head .= "Content-Type: text/html;charset=utf-8\r\n"; + } else if ($headers['Content-Type'] === 'text/event-stream') { + return $head . $this->_body; + } + + if (!isset($headers['Transfer-Encoding'])) { + $head .= "Content-Length: $body_len\r\n\r\n"; + } else { + return $body_len ? "$head\r\n" . dechex($body_len) . "\r\n{$this->_body}\r\n" : "$head\r\n"; + } + + // The whole http package + return $head . $this->_body; + } + + /** + * Init mime map. + * + * @return void + */ + public static function initMimeTypeMap() + { + $mime_file = __DIR__ . '/mime.types'; + $items = \file($mime_file, \FILE_IGNORE_NEW_LINES | \FILE_SKIP_EMPTY_LINES); + foreach ($items as $content) { + if (\preg_match("/\s*(\S+)\s+(\S.+)/", $content, $match)) { + $mime_type = $match[1]; + $extension_var = $match[2]; + $extension_array = \explode(' ', \substr($extension_var, 0, -1)); + foreach ($extension_array as $file_extension) { + static::$_mimeTypeMap[$file_extension] = $mime_type; + } + } + } + } +} +Response::init(); diff --git a/vendor/workerman/workerman/Protocols/Http/ServerSentEvents.php b/vendor/workerman/workerman/Protocols/Http/ServerSentEvents.php new file mode 100644 index 0000000..a6e9e0d --- /dev/null +++ b/vendor/workerman/workerman/Protocols/Http/ServerSentEvents.php @@ -0,0 +1,64 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman\Protocols\Http; + +/** + * Class ServerSentEvents + * @package Workerman\Protocols\Http + */ +class ServerSentEvents +{ + /** + * Data. + * @var array + */ + protected $_data = null; + + /** + * ServerSentEvents constructor. + * $data for example ['event'=>'ping', 'data' => 'some thing', 'id' => 1000, 'retry' => 5000] + * @param array $data + */ + public function __construct(array $data) + { + $this->_data = $data; + } + + /** + * __toString. + * + * @return string + */ + public function __toString() + { + $buffer = ''; + $data = $this->_data; + if (isset($data[''])) { + $buffer = ": {$data['']}\n"; + } + if (isset($data['event'])) { + $buffer .= "event: {$data['event']}\n"; + } + if (isset($data['id'])) { + $buffer .= "id: {$data['id']}\n"; + } + if (isset($data['retry'])) { + $buffer .= "retry: {$data['retry']}\n"; + } + if (isset($data['data'])) { + $buffer .= 'data: ' . str_replace("\n", "\ndata: ", $data['data']) . "\n"; + } + return $buffer . "\n"; + } +} \ No newline at end of file diff --git a/vendor/workerman/workerman/Protocols/Http/Session.php b/vendor/workerman/workerman/Protocols/Http/Session.php new file mode 100644 index 0000000..a0c2417 --- /dev/null +++ b/vendor/workerman/workerman/Protocols/Http/Session.php @@ -0,0 +1,461 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ + +namespace Workerman\Protocols\Http; + +use Workerman\Protocols\Http\Session\SessionHandlerInterface; + +/** + * Class Session + * @package Workerman\Protocols\Http + */ +class Session +{ + /** + * Session andler class which implements SessionHandlerInterface. + * + * @var string + */ + protected static $_handlerClass = 'Workerman\Protocols\Http\Session\FileSessionHandler'; + + /** + * Parameters of __constructor for session handler class. + * + * @var null + */ + protected static $_handlerConfig = null; + + /** + * Session name. + * + * @var string + */ + public static $name = 'PHPSID'; + + /** + * Auto update timestamp. + * + * @var bool + */ + public static $autoUpdateTimestamp = false; + + /** + * Session lifetime. + * + * @var int + */ + public static $lifetime = 1440; + + /** + * Cookie lifetime. + * + * @var int + */ + public static $cookieLifetime = 1440; + + /** + * Session cookie path. + * + * @var string + */ + public static $cookiePath = '/'; + + /** + * Session cookie domain. + * + * @var string + */ + public static $domain = ''; + + /** + * HTTPS only cookies. + * + * @var bool + */ + public static $secure = false; + + /** + * HTTP access only. + * + * @var bool + */ + public static $httpOnly = true; + + /** + * Same-site cookies. + * + * @var string + */ + public static $sameSite = ''; + + /** + * Gc probability. + * + * @var int[] + */ + public static $gcProbability = [1, 1000]; + + /** + * Session handler instance. + * + * @var SessionHandlerInterface + */ + protected static $_handler = null; + + /** + * Session data. + * + * @var array + */ + protected $_data = []; + + /** + * Session changed and need to save. + * + * @var bool + */ + protected $_needSave = false; + + /** + * Session id. + * + * @var null + */ + protected $_sessionId = null; + + /** + * Is safe. + * + * @var bool + */ + protected $_isSafe = true; + + /** + * Session constructor. + * + * @param string $session_id + */ + public function __construct($session_id) + { + static::checkSessionId($session_id); + if (static::$_handler === null) { + static::initHandler(); + } + $this->_sessionId = $session_id; + if ($data = static::$_handler->read($session_id)) { + $this->_data = \unserialize($data); + } + } + + /** + * Get session id. + * + * @return string + */ + public function getId() + { + return $this->_sessionId; + } + + /** + * Get session. + * + * @param string $name + * @param mixed|null $default + * @return mixed|null + */ + public function get($name, $default = null) + { + return isset($this->_data[$name]) ? $this->_data[$name] : $default; + } + + /** + * Store data in the session. + * + * @param string $name + * @param mixed $value + */ + public function set($name, $value) + { + $this->_data[$name] = $value; + $this->_needSave = true; + } + + /** + * Delete an item from the session. + * + * @param string $name + */ + public function delete($name) + { + unset($this->_data[$name]); + $this->_needSave = true; + } + + /** + * Retrieve and delete an item from the session. + * + * @param string $name + * @param mixed|null $default + * @return mixed|null + */ + public function pull($name, $default = null) + { + $value = $this->get($name, $default); + $this->delete($name); + return $value; + } + + /** + * Store data in the session. + * + * @param string|array $key + * @param mixed|null $value + */ + public function put($key, $value = null) + { + if (!\is_array($key)) { + $this->set($key, $value); + return; + } + + foreach ($key as $k => $v) { + $this->_data[$k] = $v; + } + $this->_needSave = true; + } + + /** + * Remove a piece of data from the session. + * + * @param string $name + */ + public function forget($name) + { + if (\is_scalar($name)) { + $this->delete($name); + return; + } + if (\is_array($name)) { + foreach ($name as $key) { + unset($this->_data[$key]); + } + } + $this->_needSave = true; + } + + /** + * Retrieve all the data in the session. + * + * @return array + */ + public function all() + { + return $this->_data; + } + + /** + * Remove all data from the session. + * + * @return void + */ + public function flush() + { + $this->_needSave = true; + $this->_data = []; + } + + /** + * Determining If An Item Exists In The Session. + * + * @param string $name + * @return bool + */ + public function has($name) + { + return isset($this->_data[$name]); + } + + /** + * To determine if an item is present in the session, even if its value is null. + * + * @param string $name + * @return bool + */ + public function exists($name) + { + return \array_key_exists($name, $this->_data); + } + + /** + * Save session to store. + * + * @return void + */ + public function save() + { + if ($this->_needSave) { + if (empty($this->_data)) { + static::$_handler->destroy($this->_sessionId); + } else { + static::$_handler->write($this->_sessionId, \serialize($this->_data)); + } + } elseif (static::$autoUpdateTimestamp) { + static::refresh(); + } + $this->_needSave = false; + } + + /** + * Refresh session expire time. + * + * @return bool + */ + public function refresh() + { + static::$_handler->updateTimestamp($this->getId()); + } + + /** + * Init. + * + * @return void + */ + public static function init() + { + if (($gc_probability = (int)\ini_get('session.gc_probability')) && ($gc_divisor = (int)\ini_get('session.gc_divisor'))) { + static::$gcProbability = [$gc_probability, $gc_divisor]; + } + + if ($gc_max_life_time = \ini_get('session.gc_maxlifetime')) { + self::$lifetime = (int)$gc_max_life_time; + } + + $session_cookie_params = \session_get_cookie_params(); + static::$cookieLifetime = $session_cookie_params['lifetime']; + static::$cookiePath = $session_cookie_params['path']; + static::$domain = $session_cookie_params['domain']; + static::$secure = $session_cookie_params['secure']; + static::$httpOnly = $session_cookie_params['httponly']; + } + + /** + * Set session handler class. + * + * @param mixed|null $class_name + * @param mixed|null $config + * @return string + */ + public static function handlerClass($class_name = null, $config = null) + { + if ($class_name) { + static::$_handlerClass = $class_name; + } + if ($config) { + static::$_handlerConfig = $config; + } + return static::$_handlerClass; + } + + /** + * Get cookie params. + * + * @return array + */ + public static function getCookieParams() + { + return [ + 'lifetime' => static::$cookieLifetime, + 'path' => static::$cookiePath, + 'domain' => static::$domain, + 'secure' => static::$secure, + 'httponly' => static::$httpOnly, + 'samesite' => static::$sameSite, + ]; + } + + /** + * Init handler. + * + * @return void + */ + protected static function initHandler() + { + if (static::$_handlerConfig === null) { + static::$_handler = new static::$_handlerClass(); + } else { + static::$_handler = new static::$_handlerClass(static::$_handlerConfig); + } + } + + /** + * GC sessions. + * + * @return void + */ + public function gc() + { + static::$_handler->gc(static::$lifetime); + } + + /** + * __wakeup. + * + * @return void + */ + public function __wakeup() + { + $this->_isSafe = false; + } + + /** + * __destruct. + * + * @return void + */ + public function __destruct() + { + if (!$this->_isSafe) { + return; + } + $this->save(); + if (\random_int(1, static::$gcProbability[1]) <= static::$gcProbability[0]) { + $this->gc(); + } + } + + /** + * Check session id. + * + * @param string $session_id + */ + protected static function checkSessionId($session_id) + { + if (!\preg_match('/^[a-zA-Z0-9"]+$/', $session_id)) { + throw new SessionException("session_id $session_id is invalid"); + } + } +} + +/** + * Class SessionException + * @package Workerman\Protocols\Http + */ +class SessionException extends \RuntimeException +{ + +} + +// Init session. +Session::init(); diff --git a/vendor/workerman/workerman/Protocols/Http/Session/FileSessionHandler.php b/vendor/workerman/workerman/Protocols/Http/Session/FileSessionHandler.php new file mode 100644 index 0000000..a7cefbd --- /dev/null +++ b/vendor/workerman/workerman/Protocols/Http/Session/FileSessionHandler.php @@ -0,0 +1,183 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman\Protocols\Http\Session; + +use Workerman\Protocols\Http\Session; + +/** + * Class FileSessionHandler + * @package Workerman\Protocols\Http\Session + */ +class FileSessionHandler implements SessionHandlerInterface +{ + /** + * Session save path. + * + * @var string + */ + protected static $_sessionSavePath = null; + + /** + * Session file prefix. + * + * @var string + */ + protected static $_sessionFilePrefix = 'session_'; + + /** + * Init. + */ + public static function init() { + $save_path = @\session_save_path(); + if (!$save_path || \strpos($save_path, 'tcp://') === 0) { + $save_path = \sys_get_temp_dir(); + } + static::sessionSavePath($save_path); + } + + /** + * FileSessionHandler constructor. + * @param array $config + */ + public function __construct($config = array()) { + if (isset($config['save_path'])) { + static::sessionSavePath($config['save_path']); + } + } + + /** + * {@inheritdoc} + */ + public function open($save_path, $name) + { + return true; + } + + /** + * {@inheritdoc} + */ + public function read($session_id) + { + $session_file = static::sessionFile($session_id); + \clearstatcache(); + if (\is_file($session_file)) { + if (\time() - \filemtime($session_file) > Session::$lifetime) { + \unlink($session_file); + return ''; + } + $data = \file_get_contents($session_file); + return $data ? $data : ''; + } + return ''; + } + + /** + * {@inheritdoc} + */ + public function write($session_id, $session_data) + { + $temp_file = static::$_sessionSavePath . uniqid(bin2hex(random_bytes(8)), true); + if (!\file_put_contents($temp_file, $session_data)) { + return false; + } + return \rename($temp_file, static::sessionFile($session_id)); + } + + /** + * Update sesstion modify time. + * + * @see https://www.php.net/manual/en/class.sessionupdatetimestamphandlerinterface.php + * @see https://www.php.net/manual/zh/function.touch.php + * + * @param string $id Session id. + * @param string $data Session Data. + * + * @return bool + */ + public function updateTimestamp($id, $data = "") + { + $session_file = static::sessionFile($id); + if (!file_exists($session_file)) { + return false; + } + // set file modify time to current time + $set_modify_time = \touch($session_file); + // clear file stat cache + \clearstatcache(); + return $set_modify_time; + } + + /** + * {@inheritdoc} + */ + public function close() + { + return true; + } + + /** + * {@inheritdoc} + */ + public function destroy($session_id) + { + $session_file = static::sessionFile($session_id); + if (\is_file($session_file)) { + \unlink($session_file); + } + return true; + } + + /** + * {@inheritdoc} + */ + public function gc($maxlifetime) { + $time_now = \time(); + foreach (\glob(static::$_sessionSavePath . static::$_sessionFilePrefix . '*') as $file) { + if(\is_file($file) && $time_now - \filemtime($file) > $maxlifetime) { + \unlink($file); + } + } + } + + /** + * Get session file path. + * + * @param string $session_id + * @return string + */ + protected static function sessionFile($session_id) { + return static::$_sessionSavePath.static::$_sessionFilePrefix.$session_id; + } + + /** + * Get or set session file path. + * + * @param string $path + * @return string + */ + public static function sessionSavePath($path) { + if ($path) { + if ($path[\strlen($path)-1] !== DIRECTORY_SEPARATOR) { + $path .= DIRECTORY_SEPARATOR; + } + static::$_sessionSavePath = $path; + if (!\is_dir($path)) { + \mkdir($path, 0777, true); + } + } + return $path; + } +} + +FileSessionHandler::init(); \ No newline at end of file diff --git a/vendor/workerman/workerman/Protocols/Http/Session/RedisClusterSessionHandler.php b/vendor/workerman/workerman/Protocols/Http/Session/RedisClusterSessionHandler.php new file mode 100644 index 0000000..281759a --- /dev/null +++ b/vendor/workerman/workerman/Protocols/Http/Session/RedisClusterSessionHandler.php @@ -0,0 +1,46 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ + +namespace Workerman\Protocols\Http\Session; + +use Workerman\Protocols\Http\Session; + +class RedisClusterSessionHandler extends RedisSessionHandler +{ + public function __construct($config) + { + $timeout = isset($config['timeout']) ? $config['timeout'] : 2; + $read_timeout = isset($config['read_timeout']) ? $config['read_timeout'] : $timeout; + $persistent = isset($config['persistent']) ? $config['persistent'] : false; + $auth = isset($config['auth']) ? $config['auth'] : ''; + if ($auth) { + $this->_redis = new \RedisCluster(null, $config['host'], $timeout, $read_timeout, $persistent, $auth); + } else { + $this->_redis = new \RedisCluster(null, $config['host'], $timeout, $read_timeout, $persistent); + } + if (empty($config['prefix'])) { + $config['prefix'] = 'redis_session_'; + } + $this->_redis->setOption(\Redis::OPT_PREFIX, $config['prefix']); + } + + /** + * {@inheritdoc} + */ + public function read($session_id) + { + return $this->_redis->get($session_id); + } + +} diff --git a/vendor/workerman/workerman/Protocols/Http/Session/RedisSessionHandler.php b/vendor/workerman/workerman/Protocols/Http/Session/RedisSessionHandler.php new file mode 100644 index 0000000..e1b5bd5 --- /dev/null +++ b/vendor/workerman/workerman/Protocols/Http/Session/RedisSessionHandler.php @@ -0,0 +1,154 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman\Protocols\Http\Session; + +use Workerman\Protocols\Http\Session; +use Workerman\Timer; +use RedisException; + +/** + * Class RedisSessionHandler + * @package Workerman\Protocols\Http\Session + */ +class RedisSessionHandler implements SessionHandlerInterface +{ + + /** + * @var \Redis + */ + protected $_redis; + + /** + * @var array + */ + protected $_config; + + /** + * RedisSessionHandler constructor. + * @param array $config = [ + * 'host' => '127.0.0.1', + * 'port' => 6379, + * 'timeout' => 2, + * 'auth' => '******', + * 'database' => 2, + * 'prefix' => 'redis_session_', + * 'ping' => 55, + * ] + */ + public function __construct($config) + { + if (false === extension_loaded('redis')) { + throw new \RuntimeException('Please install redis extension.'); + } + + if (!isset($config['timeout'])) { + $config['timeout'] = 2; + } + + $this->_config = $config; + + $this->connect(); + + Timer::add(!empty($config['ping']) ? $config['ping'] : 55, function () { + $this->_redis->get('ping'); + }); + } + + public function connect() + { + $config = $this->_config; + + $this->_redis = new \Redis(); + if (false === $this->_redis->connect($config['host'], $config['port'], $config['timeout'])) { + throw new \RuntimeException("Redis connect {$config['host']}:{$config['port']} fail."); + } + if (!empty($config['auth'])) { + $this->_redis->auth($config['auth']); + } + if (!empty($config['database'])) { + $this->_redis->select($config['database']); + } + if (empty($config['prefix'])) { + $config['prefix'] = 'redis_session_'; + } + $this->_redis->setOption(\Redis::OPT_PREFIX, $config['prefix']); + } + + /** + * {@inheritdoc} + */ + public function open($save_path, $name) + { + return true; + } + + /** + * {@inheritdoc} + */ + public function read($session_id) + { + try { + return $this->_redis->get($session_id); + } catch (RedisException $e) { + $msg = strtolower($e->getMessage()); + if ($msg === 'connection lost' || strpos($msg, 'went away')) { + $this->connect(); + return $this->_redis->get($session_id); + } + throw $e; + } + + } + + /** + * {@inheritdoc} + */ + public function write($session_id, $session_data) + { + return true === $this->_redis->setex($session_id, Session::$lifetime, $session_data); + } + + /** + * {@inheritdoc} + */ + public function updateTimestamp($id, $data = "") + { + return true === $this->_redis->expire($id, Session::$lifetime); + } + + /** + * {@inheritdoc} + */ + public function destroy($session_id) + { + $this->_redis->del($session_id); + return true; + } + + /** + * {@inheritdoc} + */ + public function close() + { + return true; + } + + /** + * {@inheritdoc} + */ + public function gc($maxlifetime) + { + return true; + } +} diff --git a/vendor/workerman/workerman/Protocols/Http/Session/SessionHandlerInterface.php b/vendor/workerman/workerman/Protocols/Http/Session/SessionHandlerInterface.php new file mode 100644 index 0000000..23a47f2 --- /dev/null +++ b/vendor/workerman/workerman/Protocols/Http/Session/SessionHandlerInterface.php @@ -0,0 +1,114 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman\Protocols\Http\Session; + +interface SessionHandlerInterface +{ + /** + * Close the session + * @link http://php.net/manual/en/sessionhandlerinterface.close.php + * @return bool

    + * The return value (usually TRUE on success, FALSE on failure). + * Note this value is returned internally to PHP for processing. + *

    + * @since 5.4.0 + */ + public function close(); + + /** + * Destroy a session + * @link http://php.net/manual/en/sessionhandlerinterface.destroy.php + * @param string $session_id The session ID being destroyed. + * @return bool

    + * The return value (usually TRUE on success, FALSE on failure). + * Note this value is returned internally to PHP for processing. + *

    + * @since 5.4.0 + */ + public function destroy($session_id); + + /** + * Cleanup old sessions + * @link http://php.net/manual/en/sessionhandlerinterface.gc.php + * @param int $maxlifetime

    + * Sessions that have not updated for + * the last maxlifetime seconds will be removed. + *

    + * @return bool

    + * The return value (usually TRUE on success, FALSE on failure). + * Note this value is returned internally to PHP for processing. + *

    + * @since 5.4.0 + */ + public function gc($maxlifetime); + + /** + * Initialize session + * @link http://php.net/manual/en/sessionhandlerinterface.open.php + * @param string $save_path The path where to store/retrieve the session. + * @param string $name The session name. + * @return bool

    + * The return value (usually TRUE on success, FALSE on failure). + * Note this value is returned internally to PHP for processing. + *

    + * @since 5.4.0 + */ + public function open($save_path, $name); + + + /** + * Read session data + * @link http://php.net/manual/en/sessionhandlerinterface.read.php + * @param string $session_id The session id to read data for. + * @return string

    + * Returns an encoded string of the read data. + * If nothing was read, it must return an empty string. + * Note this value is returned internally to PHP for processing. + *

    + * @since 5.4.0 + */ + public function read($session_id); + + /** + * Write session data + * @link http://php.net/manual/en/sessionhandlerinterface.write.php + * @param string $session_id The session id. + * @param string $session_data

    + * The encoded session data. This data is the + * result of the PHP internally encoding + * the $_SESSION superglobal to a serialized + * string and passing it as this parameter. + * Please note sessions use an alternative serialization method. + *

    + * @return bool

    + * The return value (usually TRUE on success, FALSE on failure). + * Note this value is returned internally to PHP for processing. + *

    + * @since 5.4.0 + */ + public function write($session_id, $session_data); + + /** + * Update sesstion modify time. + * + * @see https://www.php.net/manual/en/class.sessionupdatetimestamphandlerinterface.php + * + * @param string $id Session id. + * @param string $data Session Data. + * + * @return bool + */ + public function updateTimestamp($id, $data = ""); + +} diff --git a/vendor/workerman/workerman/Protocols/Http/mime.types b/vendor/workerman/workerman/Protocols/Http/mime.types new file mode 100644 index 0000000..e6ccf0a --- /dev/null +++ b/vendor/workerman/workerman/Protocols/Http/mime.types @@ -0,0 +1,90 @@ + +types { + text/html html htm shtml; + text/css css; + text/xml xml; + image/gif gif; + image/jpeg jpeg jpg; + application/javascript js; + application/atom+xml atom; + application/rss+xml rss; + + text/mathml mml; + text/plain txt; + text/vnd.sun.j2me.app-descriptor jad; + text/vnd.wap.wml wml; + text/x-component htc; + + image/png png; + image/tiff tif tiff; + image/vnd.wap.wbmp wbmp; + image/x-icon ico; + image/x-jng jng; + image/x-ms-bmp bmp; + image/svg+xml svg svgz; + image/webp webp; + + application/font-woff woff; + application/java-archive jar war ear; + application/json json; + application/mac-binhex40 hqx; + application/msword doc; + application/pdf pdf; + application/postscript ps eps ai; + application/rtf rtf; + application/vnd.apple.mpegurl m3u8; + application/vnd.ms-excel xls; + application/vnd.ms-fontobject eot; + application/vnd.ms-powerpoint ppt; + application/vnd.wap.wmlc wmlc; + application/vnd.google-earth.kml+xml kml; + application/vnd.google-earth.kmz kmz; + application/x-7z-compressed 7z; + application/x-cocoa cco; + application/x-java-archive-diff jardiff; + application/x-java-jnlp-file jnlp; + application/x-makeself run; + application/x-perl pl pm; + application/x-pilot prc pdb; + application/x-rar-compressed rar; + application/x-redhat-package-manager rpm; + application/x-sea sea; + application/x-shockwave-flash swf; + application/x-stuffit sit; + application/x-tcl tcl tk; + application/x-x509-ca-cert der pem crt; + application/x-xpinstall xpi; + application/xhtml+xml xhtml; + application/xspf+xml xspf; + application/zip zip; + + application/octet-stream bin exe dll; + application/octet-stream deb; + application/octet-stream dmg; + application/octet-stream iso img; + application/octet-stream msi msp msm; + + application/vnd.openxmlformats-officedocument.wordprocessingml.document docx; + application/vnd.openxmlformats-officedocument.spreadsheetml.sheet xlsx; + application/vnd.openxmlformats-officedocument.presentationml.presentation pptx; + + audio/midi mid midi kar; + audio/mpeg mp3; + audio/ogg ogg; + audio/x-m4a m4a; + audio/x-realaudio ra; + + video/3gpp 3gpp 3gp; + video/mp2t ts; + video/mp4 mp4; + video/mpeg mpeg mpg; + video/quicktime mov; + video/webm webm; + video/x-flv flv; + video/x-m4v m4v; + video/x-mng mng; + video/x-ms-asf asx asf; + video/x-ms-wmv wmv; + video/x-msvideo avi; + font/ttf ttf; +} diff --git a/vendor/workerman/workerman/Protocols/ProtocolInterface.php b/vendor/workerman/workerman/Protocols/ProtocolInterface.php new file mode 100644 index 0000000..4fea87d --- /dev/null +++ b/vendor/workerman/workerman/Protocols/ProtocolInterface.php @@ -0,0 +1,52 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman\Protocols; + +use Workerman\Connection\ConnectionInterface; + +/** + * Protocol interface + */ +interface ProtocolInterface +{ + /** + * Check the integrity of the package. + * Please return the length of package. + * If length is unknow please return 0 that mean wating more data. + * If the package has something wrong please return false the connection will be closed. + * + * @param string $recv_buffer + * @param ConnectionInterface $connection + * @return int|false + */ + public static function input($recv_buffer, ConnectionInterface $connection); + + /** + * Decode package and emit onMessage($message) callback, $message is the result that decode returned. + * + * @param string $recv_buffer + * @param ConnectionInterface $connection + * @return mixed + */ + public static function decode($recv_buffer, ConnectionInterface $connection); + + /** + * Encode package brefore sending to client. + * + * @param mixed $data + * @param ConnectionInterface $connection + * @return string + */ + public static function encode($data, ConnectionInterface $connection); +} diff --git a/vendor/workerman/workerman/Protocols/Text.php b/vendor/workerman/workerman/Protocols/Text.php new file mode 100644 index 0000000..407ea2d --- /dev/null +++ b/vendor/workerman/workerman/Protocols/Text.php @@ -0,0 +1,70 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman\Protocols; + +use Workerman\Connection\ConnectionInterface; + +/** + * Text Protocol. + */ +class Text +{ + /** + * Check the integrity of the package. + * + * @param string $buffer + * @param ConnectionInterface $connection + * @return int + */ + public static function input($buffer, ConnectionInterface $connection) + { + // Judge whether the package length exceeds the limit. + if (isset($connection->maxPackageSize) && \strlen($buffer) >= $connection->maxPackageSize) { + $connection->close(); + return 0; + } + // Find the position of "\n". + $pos = \strpos($buffer, "\n"); + // No "\n", packet length is unknown, continue to wait for the data so return 0. + if ($pos === false) { + return 0; + } + // Return the current package length. + return $pos + 1; + } + + /** + * Encode. + * + * @param string $buffer + * @return string + */ + public static function encode($buffer) + { + // Add "\n" + return $buffer . "\n"; + } + + /** + * Decode. + * + * @param string $buffer + * @return string + */ + public static function decode($buffer) + { + // Remove "\n" + return \rtrim($buffer, "\r\n"); + } +} \ No newline at end of file diff --git a/vendor/workerman/workerman/Protocols/Websocket.php b/vendor/workerman/workerman/Protocols/Websocket.php new file mode 100644 index 0000000..e161228 --- /dev/null +++ b/vendor/workerman/workerman/Protocols/Websocket.php @@ -0,0 +1,562 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ + +namespace Workerman\Protocols; + +use Workerman\Connection\ConnectionInterface; +use Workerman\Connection\TcpConnection; +use Workerman\Protocols\Http\Request; +use Workerman\Worker; + +/** + * WebSocket protocol. + */ +class Websocket implements \Workerman\Protocols\ProtocolInterface +{ + /** + * Websocket blob type. + * + * @var string + */ + const BINARY_TYPE_BLOB = "\x81"; + + /** + * Websocket blob type. + * + * @var string + */ + const BINARY_TYPE_BLOB_DEFLATE = "\xc1"; + + /** + * Websocket arraybuffer type. + * + * @var string + */ + const BINARY_TYPE_ARRAYBUFFER = "\x82"; + + /** + * Websocket arraybuffer type. + * + * @var string + */ + const BINARY_TYPE_ARRAYBUFFER_DEFLATE = "\xc2"; + + /** + * Check the integrity of the package. + * + * @param string $buffer + * @param ConnectionInterface $connection + * @return int + */ + public static function input($buffer, ConnectionInterface $connection) + { + // Receive length. + $recv_len = \strlen($buffer); + // We need more data. + if ($recv_len < 6) { + return 0; + } + + // Has not yet completed the handshake. + if (empty($connection->context->websocketHandshake)) { + return static::dealHandshake($buffer, $connection); + } + + // Buffer websocket frame data. + if ($connection->context->websocketCurrentFrameLength) { + // We need more frame data. + if ($connection->context->websocketCurrentFrameLength > $recv_len) { + // Return 0, because it is not clear the full packet length, waiting for the frame of fin=1. + return 0; + } + } else { + $first_byte = \ord($buffer[0]); + $second_byte = \ord($buffer[1]); + $data_len = $second_byte & 127; + $is_fin_frame = $first_byte >> 7; + $masked = $second_byte >> 7; + + if (!$masked) { + Worker::safeEcho("frame not masked so close the connection\n"); + $connection->close(); + return 0; + } + + $opcode = $first_byte & 0xf; + switch ($opcode) { + case 0x0: + break; + // Blob type. + case 0x1: + break; + // Arraybuffer type. + case 0x2: + break; + // Close package. + case 0x8: + // Try to emit onWebSocketClose callback. + $close_cb = $connection->onWebSocketClose ?? $connection->worker->onWebSocketClose ?? false; + if ($close_cb) { + try { + $close_cb($connection); + } catch (\Throwable $e) { + Worker::stopAll(250, $e); + } + } // Close connection. + else { + $connection->close("\x88\x02\x03\xe8", true); + } + return 0; + // Ping package. + case 0x9: + break; + // Pong package. + case 0xa: + break; + // Wrong opcode. + default : + Worker::safeEcho("error opcode $opcode and close websocket connection. Buffer:" . bin2hex($buffer) . "\n"); + $connection->close(); + return 0; + } + + // Calculate packet length. + $head_len = 6; + if ($data_len === 126) { + $head_len = 8; + if ($head_len > $recv_len) { + return 0; + } + $pack = \unpack('nn/ntotal_len', $buffer); + $data_len = $pack['total_len']; + } else { + if ($data_len === 127) { + $head_len = 14; + if ($head_len > $recv_len) { + return 0; + } + $arr = \unpack('n/N2c', $buffer); + $data_len = $arr['c1'] * 4294967296 + $arr['c2']; + } + } + $current_frame_length = $head_len + $data_len; + + $total_package_size = \strlen($connection->context->websocketDataBuffer) + $current_frame_length; + if ($total_package_size > $connection->maxPackageSize) { + Worker::safeEcho("error package. package_length=$total_package_size\n"); + $connection->close(); + return 0; + } + + if ($is_fin_frame) { + if ($opcode === 0x9) { + if ($recv_len >= $current_frame_length) { + $ping_data = static::decode(\substr($buffer, 0, $current_frame_length), $connection); + $connection->consumeRecvBuffer($current_frame_length); + $tmp_connection_type = isset($connection->websocketType) ? $connection->websocketType : static::BINARY_TYPE_BLOB; + $connection->websocketType = "\x8a"; + $ping_cb = $connection->onWebSocketPing ?? $connection->worker->onWebSocketPing ?? false; + if ($ping_cb) { + try { + $ping_cb($connection, $ping_data); + } catch (\Throwable $e) { + Worker::stopAll(250, $e); + } + } else { + $connection->send($ping_data); + } + $connection->websocketType = $tmp_connection_type; + if ($recv_len > $current_frame_length) { + return static::input(\substr($buffer, $current_frame_length), $connection); + } + } + return 0; + } else if ($opcode === 0xa) { + if ($recv_len >= $current_frame_length) { + $pong_data = static::decode(\substr($buffer, 0, $current_frame_length), $connection); + $connection->consumeRecvBuffer($current_frame_length); + $tmp_connection_type = isset($connection->websocketType) ? $connection->websocketType : static::BINARY_TYPE_BLOB; + $connection->websocketType = "\x8a"; + // Try to emit onWebSocketPong callback. + $pong_cb = $connection->onWebSocketPong ?? $connection->worker->onWebSocketPong ?? false; + if ($pong_cb) { + try { + $pong_cb($connection, $pong_data); + } catch (\Throwable $e) { + Worker::stopAll(250, $e); + } + } + $connection->websocketType = $tmp_connection_type; + if ($recv_len > $current_frame_length) { + return static::input(\substr($buffer, $current_frame_length), $connection); + } + } + return 0; + } + return $current_frame_length; + } else { + $connection->context->websocketCurrentFrameLength = $current_frame_length; + } + } + + // Received just a frame length data. + if ($connection->context->websocketCurrentFrameLength === $recv_len) { + static::decode($buffer, $connection); + $connection->consumeRecvBuffer($connection->context->websocketCurrentFrameLength); + $connection->context->websocketCurrentFrameLength = 0; + return 0; + } // The length of the received data is greater than the length of a frame. + elseif ($connection->context->websocketCurrentFrameLength < $recv_len) { + static::decode(\substr($buffer, 0, $connection->context->websocketCurrentFrameLength), $connection); + $connection->consumeRecvBuffer($connection->context->websocketCurrentFrameLength); + $current_frame_length = $connection->context->websocketCurrentFrameLength; + $connection->context->websocketCurrentFrameLength = 0; + // Continue to read next frame. + return static::input(\substr($buffer, $current_frame_length), $connection); + } // The length of the received data is less than the length of a frame. + else { + return 0; + } + } + + /** + * Websocket encode. + * + * @param string $buffer + * @param ConnectionInterface $connection + * @return string + */ + public static function encode($buffer, ConnectionInterface $connection) + { + if (!is_scalar($buffer)) { + throw new \Exception("You can't send(" . \gettype($buffer) . ") to client, you need to convert it to a string. "); + } + + if (empty($connection->websocketType)) { + $connection->websocketType = static::BINARY_TYPE_BLOB; + } + + // permessage-deflate + if (\ord($connection->websocketType) & 64) { + $buffer = static::deflate($connection, $buffer); + } + + $first_byte = $connection->websocketType; + $len = \strlen($buffer); + + if ($len <= 125) { + $encode_buffer = $first_byte . \chr($len) . $buffer; + } else { + if ($len <= 65535) { + $encode_buffer = $first_byte . \chr(126) . \pack("n", $len) . $buffer; + } else { + $encode_buffer = $first_byte . \chr(127) . \pack("xxxxN", $len) . $buffer; + } + } + + // Handshake not completed so temporary buffer websocket data waiting for send. + if (empty($connection->context->websocketHandshake)) { + if (empty($connection->context->tmpWebsocketData)) { + $connection->context->tmpWebsocketData = ''; + } + // If buffer has already full then discard the current package. + if (\strlen($connection->context->tmpWebsocketData) > $connection->maxSendBufferSize) { + if ($connection->onError) { + try { + ($connection->onError)($connection, WORKERMAN_SEND_FAIL, 'send buffer full and drop package'); + } catch (\Throwable $e) { + Worker::stopAll(250, $e); + } + } + return ''; + } + $connection->context->tmpWebsocketData .= $encode_buffer; + // Check buffer is full. + if ($connection->maxSendBufferSize <= \strlen($connection->context->tmpWebsocketData)) { + if ($connection->onBufferFull) { + try { + ($connection->onBufferFull)($connection); + } catch (\Throwable $e) { + Worker::stopAll(250, $e); + } + } + } + // Return empty string. + return ''; + } + + return $encode_buffer; + } + + /** + * Websocket decode. + * + * @param string $buffer + * @param ConnectionInterface $connection + * @return string + */ + public static function decode($buffer, ConnectionInterface $connection) + { + $first_byte = \ord($buffer[0]); + $second_byte = \ord($buffer[1]); + $len = $second_byte & 127; + $is_fin_frame = $first_byte >> 7; + $rsv1 = 64 === ($first_byte & 64); + + if ($len === 126) { + $masks = \substr($buffer, 4, 4); + $data = \substr($buffer, 8); + } else { + if ($len === 127) { + $masks = \substr($buffer, 10, 4); + $data = \substr($buffer, 14); + } else { + $masks = \substr($buffer, 2, 4); + $data = \substr($buffer, 6); + } + } + $dataLength = \strlen($data); + $masks = \str_repeat($masks, \floor($dataLength / 4)) . \substr($masks, 0, $dataLength % 4); + $decoded = $data ^ $masks; + if ($connection->context->websocketCurrentFrameLength) { + $connection->context->websocketDataBuffer .= $decoded; + if ($rsv1) { + return static::inflate($connection, $connection->context->websocketDataBuffer, $is_fin_frame); + } + return $connection->context->websocketDataBuffer; + } else { + if ($connection->context->websocketDataBuffer !== '') { + $decoded = $connection->context->websocketDataBuffer . $decoded; + $connection->context->websocketDataBuffer = ''; + } + if ($rsv1) { + return static::inflate($connection, $decoded, $is_fin_frame); + } + return $decoded; + } + } + + /** + * Inflate. + * + * @param $connection + * @param $buffer + * @param $is_fin_frame + * @return false|string + */ + protected static function inflate($connection, $buffer, $is_fin_frame) + { + if (!isset($connection->context->inflator)) { + $connection->context->inflator = \inflate_init( + \ZLIB_ENCODING_RAW, + [ + 'level' => -1, + 'memory' => 8, + 'window' => 15, + 'strategy' => \ZLIB_DEFAULT_STRATEGY + ] + ); + } + if ($is_fin_frame) { + $buffer .= "\x00\x00\xff\xff"; + } + return \inflate_add($connection->context->inflator, $buffer); + } + + /** + * Deflate. + * + * @param $connection + * @param $buffer + * @return false|string + */ + protected static function deflate($connection, $buffer) + { + if (!isset($connection->context->deflator)) { + $connection->context->deflator = \deflate_init( + \ZLIB_ENCODING_RAW, + [ + 'level' => -1, + 'memory' => 8, + 'window' => 15, + 'strategy' => \ZLIB_DEFAULT_STRATEGY + ] + ); + } + return \substr(\deflate_add($connection->context->deflator, $buffer), 0, -4); + } + + /** + * Websocket handshake. + * + * @param string $buffer + * @param TcpConnection $connection + * @return int + */ + public static function dealHandshake($buffer, $connection) + { + // HTTP protocol. + if (0 === \strpos($buffer, 'GET')) { + // Find \r\n\r\n. + $header_end_pos = \strpos($buffer, "\r\n\r\n"); + if (!$header_end_pos) { + return 0; + } + $header_length = $header_end_pos + 4; + + // Get Sec-WebSocket-Key. + $Sec_WebSocket_Key = ''; + if (\preg_match("/Sec-WebSocket-Key: *(.*?)\r\n/i", $buffer, $match)) { + $Sec_WebSocket_Key = $match[1]; + } else { + $connection->close("HTTP/1.0 400 Bad Request\r\nServer: workerman\r\n\r\n

    WebSocket


    workerman
    ", true); + return 0; + } + // Calculation websocket key. + $new_key = \base64_encode(\sha1($Sec_WebSocket_Key . "258EAFA5-E914-47DA-95CA-C5AB0DC85B11", true)); + // Handshake response data. + $handshake_message = "HTTP/1.1 101 Switching Protocols\r\n" + . "Upgrade: websocket\r\n" + . "Sec-WebSocket-Version: 13\r\n" + . "Connection: Upgrade\r\n" + . "Sec-WebSocket-Accept: " . $new_key . "\r\n"; + + // Websocket data buffer. + $connection->context->websocketDataBuffer = ''; + // Current websocket frame length. + $connection->context->websocketCurrentFrameLength = 0; + // Current websocket frame data. + $connection->context->websocketCurrentFrameBuffer = ''; + // Consume handshake data. + $connection->consumeRecvBuffer($header_length); + + // Try to emit onWebSocketConnect callback. + $on_websocket_connect = $connection->onWebSocketConnect ?? $connection->worker->onWebSocketConnect ?? false; + if ($on_websocket_connect) { + static::parseHttpHeader($buffer); + try { + \call_user_func($on_websocket_connect, $connection, $buffer); + } catch (\Exception $e) { + Worker::stopAll(250, $e); + } catch (\Error $e) { + Worker::stopAll(250, $e); + } + if (!empty($_SESSION) && \class_exists('\GatewayWorker\Lib\Context')) { + $connection->session = \GatewayWorker\Lib\Context::sessionEncode($_SESSION); + } + $_GET = $_SERVER = $_SESSION = $_COOKIE = array(); + } + + // blob or arraybuffer + if (empty($connection->websocketType)) { + $connection->websocketType = static::BINARY_TYPE_BLOB; + } + + $has_server_header = false; + + if (isset($connection->headers)) { + if (\is_array($connection->headers)) { + foreach ($connection->headers as $header) { + if (\stripos($header, 'Server:') === 0) { + $has_server_header = true; + } + $handshake_message .= "$header\r\n"; + } + } else { + if (\stripos($connection->headers, 'Server:') !== false) { + $has_server_header = true; + } + $handshake_message .= "$connection->headers\r\n"; + } + } + if (!$has_server_header) { + $handshake_message .= "Server: workerman/" . Worker::VERSION . "\r\n"; + } + $handshake_message .= "\r\n"; + // Send handshake response. + $connection->send($handshake_message, true); + // Mark handshake complete.. + $connection->context->websocketHandshake = true; + + // There are data waiting to be sent. + if (!empty($connection->context->tmpWebsocketData)) { + $connection->send($connection->context->tmpWebsocketData, true); + $connection->context->tmpWebsocketData = ''; + } + if (\strlen($buffer) > $header_length) { + return static::input(\substr($buffer, $header_length), $connection); + } + return 0; + } + // Bad websocket handshake request. + $connection->close("HTTP/1.0 400 Bad Request\r\nServer: workerman\r\n\r\n

    400 Bad Request


    workerman
    ", true); + return 0; + } + + /** + * Parse http header. + * + * @param string $buffer + * @return void + */ + protected static function parseHttpHeader($buffer) + { + // Parse headers. + list($http_header, ) = \explode("\r\n\r\n", $buffer, 2); + $header_data = \explode("\r\n", $http_header); + + if ($_SERVER) { + $_SERVER = array(); + } + + list($_SERVER['REQUEST_METHOD'], $_SERVER['REQUEST_URI'], $_SERVER['SERVER_PROTOCOL']) = \explode(' ', + $header_data[0]); + + unset($header_data[0]); + foreach ($header_data as $content) { + // \r\n\r\n + if (empty($content)) { + continue; + } + list($key, $value) = \explode(':', $content, 2); + $key = \str_replace('-', '_', \strtoupper($key)); + $value = \trim($value); + $_SERVER['HTTP_' . $key] = $value; + switch ($key) { + // HTTP_HOST + case 'HOST': + $tmp = \explode(':', $value); + $_SERVER['SERVER_NAME'] = $tmp[0]; + if (isset($tmp[1])) { + $_SERVER['SERVER_PORT'] = $tmp[1]; + } + break; + // cookie + case 'COOKIE': + \parse_str(\str_replace('; ', '&', $_SERVER['HTTP_COOKIE']), $_COOKIE); + break; + } + } + + // QUERY_STRING + $_SERVER['QUERY_STRING'] = \parse_url($_SERVER['REQUEST_URI'], \PHP_URL_QUERY); + if ($_SERVER['QUERY_STRING']) { + // $GET + \parse_str($_SERVER['QUERY_STRING'], $_GET); + } else { + $_SERVER['QUERY_STRING'] = ''; + } + } + +} diff --git a/vendor/workerman/workerman/Protocols/Ws.php b/vendor/workerman/workerman/Protocols/Ws.php new file mode 100644 index 0000000..dd1bd1d --- /dev/null +++ b/vendor/workerman/workerman/Protocols/Ws.php @@ -0,0 +1,432 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ + +namespace Workerman\Protocols; + +use Workerman\Worker; +use Workerman\Timer; +use Workerman\Connection\TcpConnection; +use Workerman\Connection\ConnectionInterface; + +/** + * Websocket protocol for client. + */ +class Ws +{ + /** + * Websocket blob type. + * + * @var string + */ + const BINARY_TYPE_BLOB = "\x81"; + + /** + * Websocket arraybuffer type. + * + * @var string + */ + const BINARY_TYPE_ARRAYBUFFER = "\x82"; + + /** + * Check the integrity of the package. + * + * @param string $buffer + * @param ConnectionInterface $connection + * @return int + */ + public static function input($buffer, ConnectionInterface $connection) + { + if (empty($connection->context->handshakeStep)) { + Worker::safeEcho("recv data before handshake. Buffer:" . \bin2hex($buffer) . "\n"); + return false; + } + // Recv handshake response + if ($connection->context->handshakeStep === 1) { + return self::dealHandshake($buffer, $connection); + } + $recvLen = \strlen($buffer); + if ($recvLen < 2) { + return 0; + } + // Buffer websocket frame data. + if ($connection->context->websocketCurrentFrameLength) { + // We need more frame data. + if ($connection->context->websocketCurrentFrameLength > $recvLen) { + // Return 0, because it is not clear the full packet length, waiting for the frame of fin=1. + return 0; + } + } else { + + $firstbyte = \ord($buffer[0]); + $secondbyte = \ord($buffer[1]); + $dataLen = $secondbyte & 127; + $isFinFrame = $firstbyte >> 7; + $masked = $secondbyte >> 7; + + if ($masked) { + Worker::safeEcho("frame masked so close the connection\n"); + $connection->close(); + return 0; + } + + $opcode = $firstbyte & 0xf; + + switch ($opcode) { + case 0x0: + // Blob type. + case 0x1: + // Arraybuffer type. + case 0x2: + // Ping package. + case 0x9: + // Pong package. + case 0xa: + break; + // Close package. + case 0x8: + // Try to emit onWebSocketClose callback. + if (isset($connection->onWebSocketClose)) { + try { + ($connection->onWebSocketClose)($connection); + } catch (\Throwable $e) { + Worker::stopAll(250, $e); + } + } // Close connection. + else { + $connection->close(); + } + return 0; + // Wrong opcode. + default : + Worker::safeEcho("error opcode $opcode and close websocket connection. Buffer:" . $buffer . "\n"); + $connection->close(); + return 0; + } + // Calculate packet length. + if ($dataLen === 126) { + if (\strlen($buffer) < 4) { + return 0; + } + $pack = \unpack('nn/ntotal_len', $buffer); + $currentFrameLength = $pack['total_len'] + 4; + } else if ($dataLen === 127) { + if (\strlen($buffer) < 10) { + return 0; + } + $arr = \unpack('n/N2c', $buffer); + $currentFrameLength = $arr['c1'] * 4294967296 + $arr['c2'] + 10; + } else { + $currentFrameLength = $dataLen + 2; + } + + $totalPackageSize = \strlen($connection->context->websocketDataBuffer) + $currentFrameLength; + if ($totalPackageSize > $connection->maxPackageSize) { + Worker::safeEcho("error package. package_length=$totalPackageSize\n"); + $connection->close(); + return 0; + } + + if ($isFinFrame) { + if ($opcode === 0x9) { + if ($recvLen >= $currentFrameLength) { + $pingData = static::decode(\substr($buffer, 0, $currentFrameLength), $connection); + $connection->consumeRecvBuffer($currentFrameLength); + $tmpConnectionType = isset($connection->websocketType) ? $connection->websocketType : static::BINARY_TYPE_BLOB; + $connection->websocketType = "\x8a"; + if (isset($connection->onWebSocketPing)) { + try { + ($connection->onWebSocketPing)($connection, $pingData); + } catch (\Throwable $e) { + Worker::stopAll(250, $e); + } + } else { + $connection->send($pingData); + } + $connection->websocketType = $tmpConnectionType; + if ($recvLen > $currentFrameLength) { + return static::input(\substr($buffer, $currentFrameLength), $connection); + } + } + return 0; + + } else if ($opcode === 0xa) { + if ($recvLen >= $currentFrameLength) { + $pongData = static::decode(\substr($buffer, 0, $currentFrameLength), $connection); + $connection->consumeRecvBuffer($currentFrameLength); + $tmpConnectionType = isset($connection->websocketType) ? $connection->websocketType : static::BINARY_TYPE_BLOB; + $connection->websocketType = "\x8a"; + // Try to emit onWebSocketPong callback. + if (isset($connection->onWebSocketPong)) { + try { + ($connection->onWebSocketPong)($connection, $pongData); + } catch (\Throwable $e) { + Worker::stopAll(250, $e); + } + } + $connection->websocketType = $tmpConnectionType; + if ($recvLen > $currentFrameLength) { + return static::input(\substr($buffer, $currentFrameLength), $connection); + } + } + return 0; + } + return $currentFrameLength; + } else { + $connection->context->websocketCurrentFrameLength = $currentFrameLength; + } + } + // Received just a frame length data. + if ($connection->context->websocketCurrentFrameLength === $recvLen) { + self::decode($buffer, $connection); + $connection->consumeRecvBuffer($connection->context->websocketCurrentFrameLength); + $connection->context->websocketCurrentFrameLength = 0; + return 0; + } // The length of the received data is greater than the length of a frame. + elseif ($connection->context->websocketCurrentFrameLength < $recvLen) { + self::decode(\substr($buffer, 0, $connection->context->websocketCurrentFrameLength), $connection); + $connection->consumeRecvBuffer($connection->context->websocketCurrentFrameLength); + $currentFrameLength = $connection->context->websocketCurrentFrameLength; + $connection->context->websocketCurrentFrameLength = 0; + // Continue to read next frame. + return self::input(\substr($buffer, $currentFrameLength), $connection); + } // The length of the received data is less than the length of a frame. + else { + return 0; + } + } + + /** + * Websocket encode. + * + * @param string $buffer + * @param ConnectionInterface $connection + * @return string + */ + public static function encode($payload, ConnectionInterface $connection) + { + if (empty($connection->websocketType)) { + $connection->websocketType = self::BINARY_TYPE_BLOB; + } + $payload = (string)$payload; + if (empty($connection->context->handshakeStep)) { + static::sendHandshake($connection); + } + + $maskKey = "\x00\x00\x00\x00"; + $length = \strlen($payload); + + if (strlen($payload) < 126) { + $head = chr(0x80 | $length); + } elseif ($length < 0xFFFF) { + $head = chr(0x80 | 126) . pack("n", $length); + } else { + $head = chr(0x80 | 127) . pack("N", 0) . pack("N", $length); + } + + $frame = $connection->websocketType . $head . $maskKey; + // append payload to frame: + $maskKey = \str_repeat($maskKey, \floor($length / 4)) . \substr($maskKey, 0, $length % 4); + $frame .= $payload ^ $maskKey; + if ($connection->context->handshakeStep === 1) { + // If buffer has already full then discard the current package. + if (\strlen($connection->context->tmpWebsocketData) > $connection->maxSendBufferSize) { + if ($connection->onError) { + try { + ($connection->onError)($connection, WORKERMAN_SEND_FAIL, 'send buffer full and drop package'); + } catch (\Throwable $e) { + Worker::stopAll(250, $e); + } + } + return ''; + } + $connection->context->tmpWebsocketData = $connection->context->tmpWebsocketData . $frame; + // Check buffer is full. + if ($connection->maxSendBufferSize <= \strlen($connection->context->tmpWebsocketData)) { + if ($connection->onBufferFull) { + try { + ($connection->onBufferFull)($connection); + } catch (\Throwable $e) { + Worker::stopAll(250, $e); + } + } + } + return ''; + } + return $frame; + } + + /** + * Websocket decode. + * + * @param string $buffer + * @param ConnectionInterface $connection + * @return string + */ + public static function decode($bytes, ConnectionInterface $connection) + { + $dataLength = \ord($bytes[1]); + + if ($dataLength === 126) { + $decodedData = \substr($bytes, 4); + } else if ($dataLength === 127) { + $decodedData = \substr($bytes, 10); + } else { + $decodedData = \substr($bytes, 2); + } + if ($connection->context->websocketCurrentFrameLength) { + $connection->context->websocketDataBuffer .= $decodedData; + return $connection->context->websocketDataBuffer; + } else { + if ($connection->context->websocketDataBuffer !== '') { + $decodedData = $connection->context->websocketDataBuffer . $decodedData; + $connection->context->websocketDataBuffer = ''; + } + return $decodedData; + } + } + + /** + * Send websocket handshake data. + * + * @return void + */ + public static function onConnect($connection) + { + static::sendHandshake($connection); + } + + /** + * Clean + * + * @param TcpConnection $connection + */ + public static function onClose($connection) + { + $connection->context->handshakeStep = null; + $connection->context->websocketCurrentFrameLength = 0; + $connection->context->tmpWebsocketData = ''; + $connection->context->websocketDataBuffer = ''; + if (!empty($connection->context->websocketPingTimer)) { + Timer::del($connection->context->websocketPingTimer); + $connection->context->websocketPingTimer = null; + } + } + + /** + * Send websocket handshake. + * + * @param TcpConnection $connection + * @return void + */ + public static function sendHandshake(ConnectionInterface $connection) + { + if (!empty($connection->context->handshakeStep)) { + return; + } + // Get Host. + $port = $connection->getRemotePort(); + $host = $port === 80 || $port === 443 ? $connection->getRemoteHost() : $connection->getRemoteHost() . ':' . $port; + // Handshake header. + $connection->context->websocketSecKey = \base64_encode(random_bytes(16)); + $userHeader = $connection->headers ?? null; + $userHeaderStr = ''; + if (!empty($userHeader)) { + if (\is_array($userHeader)) { + foreach ($userHeader as $k => $v) { + $userHeaderStr .= "$k: $v\r\n"; + } + } else { + $userHeaderStr .= $userHeader; + } + $userHeaderStr = "\r\n" . \trim($userHeaderStr); + } + $header = 'GET ' . $connection->getRemoteURI() . " HTTP/1.1\r\n" . + (!\preg_match("/\nHost:/i", $userHeaderStr) ? "Host: $host\r\n" : '') . + "Connection: Upgrade\r\n" . + "Upgrade: websocket\r\n" . + (isset($connection->websocketOrigin) ? "Origin: " . $connection->websocketOrigin . "\r\n" : '') . + (isset($connection->websocketClientProtocol) ? "Sec-WebSocket-Protocol: " . $connection->websocketClientProtocol . "\r\n" : '') . + "Sec-WebSocket-Version: 13\r\n" . + "Sec-WebSocket-Key: " . $connection->context->websocketSecKey . $userHeaderStr . "\r\n\r\n"; + $connection->send($header, true); + $connection->context->handshakeStep = 1; + $connection->context->websocketCurrentFrameLength = 0; + $connection->context->websocketDataBuffer = ''; + $connection->context->tmpWebsocketData = ''; + } + + /** + * Websocket handshake. + * + * @param string $buffer + * @param TcpConnection $connection + * @return int + */ + public static function dealHandshake($buffer, ConnectionInterface $connection) + { + $pos = \strpos($buffer, "\r\n\r\n"); + if ($pos) { + //checking Sec-WebSocket-Accept + if (\preg_match("/Sec-WebSocket-Accept: *(.*?)\r\n/i", $buffer, $match)) { + if ($match[1] !== \base64_encode(\sha1($connection->context->websocketSecKey . "258EAFA5-E914-47DA-95CA-C5AB0DC85B11", true))) { + Worker::safeEcho("Sec-WebSocket-Accept not match. Header:\n" . \substr($buffer, 0, $pos) . "\n"); + $connection->close(); + return 0; + } + } else { + Worker::safeEcho("Sec-WebSocket-Accept not found. Header:\n" . \substr($buffer, 0, $pos) . "\n"); + $connection->close(); + return 0; + } + + // handshake complete + + // Get WebSocket subprotocol (if specified by server) + if (\preg_match("/Sec-WebSocket-Protocol: *(.*?)\r\n/i", $buffer, $match)) { + $connection->websocketServerProtocol = \trim($match[1]); + } + + $connection->context->handshakeStep = 2; + $handshakeResponseLength = $pos + 4; + // Try to emit onWebSocketConnect callback. + if (isset($connection->onWebSocketConnect)) { + try { + ($connection->onWebSocketConnect)($connection, \substr($buffer, 0, $handshakeResponseLength)); + } catch (\Throwable $e) { + Worker::stopAll(250, $e); + } + } + // Headbeat. + if (!empty($connection->websocketPingInterval)) { + $connection->context->websocketPingTimer = Timer::add($connection->websocketPingInterval, function () use ($connection) { + if (false === $connection->send(\pack('H*', '898000000000'), true)) { + Timer::del($connection->context->websocketPingTimer); + $connection->context->websocketPingTimer = null; + } + }); + } + + $connection->consumeRecvBuffer($handshakeResponseLength); + if (!empty($connection->context->tmpWebsocketData)) { + $connection->send($connection->context->tmpWebsocketData, true); + $connection->context->tmpWebsocketData = ''; + } + if (\strlen($buffer) > $handshakeResponseLength) { + return self::input(\substr($buffer, $handshakeResponseLength), $connection); + } + } + return 0; + } + +} diff --git a/vendor/workerman/workerman/README.md b/vendor/workerman/workerman/README.md new file mode 100644 index 0000000..6038c02 --- /dev/null +++ b/vendor/workerman/workerman/README.md @@ -0,0 +1,342 @@ +# Workerman +[![Gitter](https://badges.gitter.im/walkor/Workerman.svg)](https://gitter.im/walkor/Workerman?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=body_badge) +[![Latest Stable Version](https://poser.pugx.org/workerman/workerman/v/stable)](https://packagist.org/packages/workerman/workerman) +[![Total Downloads](https://poser.pugx.org/workerman/workerman/downloads)](https://packagist.org/packages/workerman/workerman) +[![Monthly Downloads](https://poser.pugx.org/workerman/workerman/d/monthly)](https://packagist.org/packages/workerman/workerman) +[![Daily Downloads](https://poser.pugx.org/workerman/workerman/d/daily)](https://packagist.org/packages/workerman/workerman) +[![License](https://poser.pugx.org/workerman/workerman/license)](https://packagist.org/packages/workerman/workerman) + +## What is it +Workerman is an asynchronous event-driven PHP framework with high performance to build fast and scalable network applications. +Workerman supports HTTP, Websocket, SSL and other custom protocols. +Workerman supports event extension. + +## Requires +PHP 7.0 or Higher +A POSIX compatible operating system (Linux, OSX, BSD) +POSIX and PCNTL extensions required +Event extension recommended for better performance + +## Installation + +``` +composer require workerman/workerman +``` + +## Basic Usage + +### A websocket server +```php +onConnect = function ($connection) { + echo "New connection\n"; +}; + +// Emitted when data received +$ws_worker->onMessage = function ($connection, $data) { + // Send hello $data + $connection->send('Hello ' . $data); +}; + +// Emitted when connection closed +$ws_worker->onClose = function ($connection) { + echo "Connection closed\n"; +}; + +// Run worker +Worker::runAll(); +``` + +### An http server +```php +count = 4; + +// Emitted when data received +$http_worker->onMessage = function ($connection, $request) { + //$request->get(); + //$request->post(); + //$request->header(); + //$request->cookie(); + //$request->session(); + //$request->uri(); + //$request->path(); + //$request->method(); + + // Send data to client + $connection->send("Hello World"); +}; + +// Run all workers +Worker::runAll(); +``` + +### A tcp server +```php +count = 4; + +// Emitted when new connection come +$tcp_worker->onConnect = function ($connection) { + echo "New Connection\n"; +}; + +// Emitted when data received +$tcp_worker->onMessage = function ($connection, $data) { + // Send data to client + $connection->send("Hello $data \n"); +}; + +// Emitted when connection is closed +$tcp_worker->onClose = function ($connection) { + echo "Connection closed\n"; +}; + +Worker::runAll(); +``` + +### A udp server + +```php +count = 4; + +// Emitted when data received +$worker->onMessage = function($connection, $data) +{ + $connection->send($data); +}; + +Worker::runAll(); +``` + +### Enable SSL +```php + array( + 'local_cert' => '/your/path/of/server.pem', + 'local_pk' => '/your/path/of/server.key', + 'verify_peer' => false, + ) +); + +// Create a Websocket server with ssl context. +$ws_worker = new Worker('websocket://0.0.0.0:2346', $context); + +// Enable SSL. WebSocket+SSL means that Secure WebSocket (wss://). +// The similar approaches for Https etc. +$ws_worker->transport = 'ssl'; + +$ws_worker->onMessage = function ($connection, $data) { + // Send hello $data + $connection->send('Hello ' . $data); +}; + +Worker::runAll(); +``` + +### Custom protocol +Protocols/MyTextProtocol.php +```php +onConnect = function ($connection) { + echo "New connection\n"; +}; + +$text_worker->onMessage = function ($connection, $data) { + // Send data to client + $connection->send("Hello world\n"); +}; + +$text_worker->onClose = function ($connection) { + echo "Connection closed\n"; +}; + +// Run all workers +Worker::runAll(); +``` + +### Timer +```php +onWorkerStart = function ($task) { + // 2.5 seconds + $time_interval = 2.5; + $timer_id = Timer::add($time_interval, function () { + echo "Timer run\n"; + }); +}; + +// Run all workers +Worker::runAll(); +``` + +### AsyncTcpConnection (tcp/ws/text/frame etc...) +```php +onWorkerStart = function () { + // Websocket protocol for client. + $ws_connection = new AsyncTcpConnection('ws://echo.websocket.org:80'); + $ws_connection->onConnect = function ($connection) { + $connection->send('Hello'); + }; + $ws_connection->onMessage = function ($connection, $data) { + echo "Recv: $data\n"; + }; + $ws_connection->onError = function ($connection, $code, $msg) { + echo "Error: $msg\n"; + }; + $ws_connection->onClose = function ($connection) { + echo "Connection closed\n"; + }; + $ws_connection->connect(); +}; + +Worker::runAll(); +``` + + + +## Available commands +```php start.php start ``` +```php start.php start -d ``` +![workerman start](http://www.workerman.net/img/workerman-start.png) +```php start.php status ``` +![workerman satus](http://www.workerman.net/img/workerman-status.png?a=123) +```php start.php connections``` +```php start.php stop ``` +```php start.php restart ``` +```php start.php reload ``` + +## Documentation + +中文主页:[http://www.workerman.net](https://www.workerman.net) + +中文文档: [https://www.workerman.net/doc/workerman](https://www.workerman.net/doc/workerman) + +Documentation:[https://github.com/walkor/workerman-manual](https://github.com/walkor/workerman-manual/blob/master/english/SUMMARY.md) + +# Benchmarks +https://www.techempower.com/benchmarks/#section=data-r20&hw=ph&test=db&l=yyku7z-e7&a=2 +![image](https://user-images.githubusercontent.com/6073368/146704320-1559fe97-aa67-4ee3-95d6-61e341b3c93b.png) + +## Sponsors +[opencollective.com/walkor](https://opencollective.com/walkor) + +[patreon.com/walkor](https://patreon.com/walkor) + +## Donate + + + +## Other links with workerman + +[webman](https://github.com/walkor/webman) +[PHPSocket.IO](https://github.com/walkor/phpsocket.io) +[php-socks5](https://github.com/walkor/php-socks5) +[php-http-proxy](https://github.com/walkor/php-http-proxy) + +## LICENSE + +Workerman is released under the [MIT license](https://github.com/walkor/workerman/blob/master/MIT-LICENSE.txt). diff --git a/vendor/workerman/workerman/Timer.php b/vendor/workerman/workerman/Timer.php new file mode 100644 index 0000000..9f152f3 --- /dev/null +++ b/vendor/workerman/workerman/Timer.php @@ -0,0 +1,220 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman; + +use Workerman\Events\EventInterface; +use Workerman\Worker; +use \Exception; + +/** + * Timer. + * + * example: + * Workerman\Timer::add($time_interval, callback, array($arg1, $arg2..)); + */ +class Timer +{ + /** + * Tasks that based on ALARM signal. + * [ + * run_time => [[$func, $args, $persistent, time_interval],[$func, $args, $persistent, time_interval],..]], + * run_time => [[$func, $args, $persistent, time_interval],[$func, $args, $persistent, time_interval],..]], + * .. + * ] + * + * @var array + */ + protected static $_tasks = array(); + + /** + * event + * + * @var EventInterface + */ + protected static $_event = null; + + /** + * timer id + * + * @var int + */ + protected static $_timerId = 0; + + /** + * timer status + * [ + * timer_id1 => bool, + * timer_id2 => bool, + * ...................., + * ] + * + * @var array + */ + protected static $_status = array(); + + /** + * Init. + * + * @param EventInterface $event + * @return void + */ + public static function init($event = null) + { + if ($event) { + self::$_event = $event; + return; + } + if (\function_exists('pcntl_signal')) { + \pcntl_signal(\SIGALRM, array('\Workerman\Lib\Timer', 'signalHandle'), false); + } + } + + /** + * ALARM signal handler. + * + * @return void + */ + public static function signalHandle() + { + if (!self::$_event) { + \pcntl_alarm(1); + self::tick(); + } + } + + /** + * Add a timer. + * + * @param float $time_interval + * @param callable $func + * @param mixed $args + * @param bool $persistent + * @return int|bool + */ + public static function add($time_interval, $func, $args = array(), $persistent = true) + { + if ($time_interval <= 0) { + Worker::safeEcho(new Exception("bad time_interval")); + return false; + } + + if ($args === null) { + $args = array(); + } + + if (self::$_event) { + return self::$_event->add($time_interval, + $persistent ? EventInterface::EV_TIMER : EventInterface::EV_TIMER_ONCE, $func, $args); + } + + // If not workerman runtime just return. + if (!Worker::getAllWorkers()) { + return; + } + + if (!\is_callable($func)) { + Worker::safeEcho(new Exception("not callable")); + return false; + } + + if (empty(self::$_tasks)) { + \pcntl_alarm(1); + } + + $run_time = \time() + $time_interval; + if (!isset(self::$_tasks[$run_time])) { + self::$_tasks[$run_time] = array(); + } + + self::$_timerId = self::$_timerId == \PHP_INT_MAX ? 1 : ++self::$_timerId; + self::$_status[self::$_timerId] = true; + self::$_tasks[$run_time][self::$_timerId] = array($func, (array)$args, $persistent, $time_interval); + + return self::$_timerId; + } + + + /** + * Tick. + * + * @return void + */ + public static function tick() + { + if (empty(self::$_tasks)) { + \pcntl_alarm(0); + return; + } + $time_now = \time(); + foreach (self::$_tasks as $run_time => $task_data) { + if ($time_now >= $run_time) { + foreach ($task_data as $index => $one_task) { + $task_func = $one_task[0]; + $task_args = $one_task[1]; + $persistent = $one_task[2]; + $time_interval = $one_task[3]; + try { + \call_user_func_array($task_func, $task_args); + } catch (\Exception $e) { + Worker::safeEcho($e); + } + if($persistent && !empty(self::$_status[$index])) { + $new_run_time = \time() + $time_interval; + if(!isset(self::$_tasks[$new_run_time])) self::$_tasks[$new_run_time] = array(); + self::$_tasks[$new_run_time][$index] = array($task_func, (array)$task_args, $persistent, $time_interval); + } + } + unset(self::$_tasks[$run_time]); + } + } + } + + /** + * Remove a timer. + * + * @param mixed $timer_id + * @return bool + */ + public static function del($timer_id) + { + if (self::$_event) { + return self::$_event->del($timer_id, EventInterface::EV_TIMER); + } + + foreach(self::$_tasks as $run_time => $task_data) + { + if(array_key_exists($timer_id, $task_data)) unset(self::$_tasks[$run_time][$timer_id]); + } + + if(array_key_exists($timer_id, self::$_status)) unset(self::$_status[$timer_id]); + + return true; + } + + /** + * Remove all timers. + * + * @return void + */ + public static function delAll() + { + self::$_tasks = self::$_status = array(); + if (\function_exists('pcntl_alarm')) { + \pcntl_alarm(0); + } + if (self::$_event) { + self::$_event->clearAllTimer(); + } + } +} diff --git a/vendor/workerman/workerman/Worker.php b/vendor/workerman/workerman/Worker.php new file mode 100644 index 0000000..e789322 --- /dev/null +++ b/vendor/workerman/workerman/Worker.php @@ -0,0 +1,2756 @@ + + * @copyright walkor + * @link http://www.workerman.net/ + * @license http://www.opensource.org/licenses/mit-license.php MIT License + */ +namespace Workerman; +require_once __DIR__ . '/Lib/Constants.php'; + +use Workerman\Events\EventInterface; +use Workerman\Connection\ConnectionInterface; +use Workerman\Connection\TcpConnection; +use Workerman\Connection\UdpConnection; +use Workerman\Lib\Timer; +use Workerman\Events\Select; +use \Exception; + +/** + * Worker class + * A container for listening ports + */ +#[\AllowDynamicProperties] +class Worker +{ + /** + * Version. + * + * @var string + */ + const VERSION = '4.2.1'; + + /** + * Status starting. + * + * @var int + */ + const STATUS_STARTING = 1; + + /** + * Status running. + * + * @var int + */ + const STATUS_RUNNING = 2; + + /** + * Status shutdown. + * + * @var int + */ + const STATUS_SHUTDOWN = 4; + + /** + * Status reloading. + * + * @var int + */ + const STATUS_RELOADING = 8; + + /** + * Default backlog. Backlog is the maximum length of the queue of pending connections. + * + * @var int + */ + const DEFAULT_BACKLOG = 102400; + + /** + * Max udp package size. + * + * @var int + */ + const MAX_UDP_PACKAGE_SIZE = 65535; + + /** + * The safe distance for columns adjacent + * + * @var int + */ + const UI_SAFE_LENGTH = 4; + + /** + * Worker id. + * + * @var int + */ + public $id = 0; + + /** + * Name of the worker processes. + * + * @var string + */ + public $name = 'none'; + + /** + * Number of worker processes. + * + * @var int + */ + public $count = 1; + + /** + * Unix user of processes, needs appropriate privileges (usually root). + * + * @var string + */ + public $user = ''; + + /** + * Unix group of processes, needs appropriate privileges (usually root). + * + * @var string + */ + public $group = ''; + + /** + * reloadable. + * + * @var bool + */ + public $reloadable = true; + + /** + * reuse port. + * + * @var bool + */ + public $reusePort = false; + + /** + * Emitted when worker processes start. + * + * @var callable + */ + public $onWorkerStart = null; + + /** + * Emitted when a socket connection is successfully established. + * + * @var callable + */ + public $onConnect = null; + + /** + * Emitted when data is received. + * + * @var callable + */ + public $onMessage = null; + + /** + * Emitted when the other end of the socket sends a FIN packet. + * + * @var callable + */ + public $onClose = null; + + /** + * Emitted when an error occurs with connection. + * + * @var callable + */ + public $onError = null; + + /** + * Emitted when the send buffer becomes full. + * + * @var callable + */ + public $onBufferFull = null; + + /** + * Emitted when the send buffer becomes empty. + * + * @var callable + */ + public $onBufferDrain = null; + + /** + * Emitted when worker processes stopped. + * + * @var callable + */ + public $onWorkerStop = null; + + /** + * Emitted when worker processes get reload signal. + * + * @var callable + */ + public $onWorkerReload = null; + + /** + * Emitted when worker processes exited. + * + * @var callable + */ + public $onWorkerExit = null; + + /** + * Transport layer protocol. + * + * @var string + */ + public $transport = 'tcp'; + + /** + * Store all connections of clients. + * + * @var array + */ + public $connections = array(); + + /** + * Application layer protocol. + * + * @var string + */ + public $protocol = null; + + /** + * Root path for autoload. + * + * @var string + */ + protected $_autoloadRootPath = ''; + + /** + * Pause accept new connections or not. + * + * @var bool + */ + protected $_pauseAccept = true; + + /** + * Is worker stopping ? + * @var bool + */ + public $stopping = false; + + /** + * Daemonize. + * + * @var bool + */ + public static $daemonize = false; + + /** + * Stdout file. + * + * @var string + */ + public static $stdoutFile = '/dev/null'; + + /** + * The file to store master process PID. + * + * @var string + */ + public static $pidFile = ''; + + /** + * The file used to store the master process status file. + * + * @var string + */ + public static $statusFile = ''; + + /** + * Log file. + * + * @var mixed + */ + public static $logFile = ''; + + /** + * Global event loop. + * + * @var EventInterface + */ + public static $globalEvent = null; + + /** + * Emitted when the master process get reload signal. + * + * @var callable + */ + public static $onMasterReload = null; + + /** + * Emitted when the master process terminated. + * + * @var callable + */ + public static $onMasterStop = null; + + /** + * EventLoopClass + * + * @var string + */ + public static $eventLoopClass = ''; + + /** + * Process title + * + * @var string + */ + public static $processTitle = 'WorkerMan'; + + /** + * After sending the stop command to the child process stopTimeout seconds, + * if the process is still living then forced to kill. + * + * @var int + */ + public static $stopTimeout = 2; + + /** + * The PID of master process. + * + * @var int + */ + protected static $_masterPid = 0; + + /** + * Listening socket. + * + * @var resource + */ + protected $_mainSocket = null; + + /** + * Socket name. The format is like this http://0.0.0.0:80 . + * + * @var string + */ + protected $_socketName = ''; + + /** parse from _socketName avoid parse again in master or worker + * LocalSocket The format is like tcp://0.0.0.0:8080 + * @var string + */ + + protected $_localSocket=null; + + /** + * Context of socket. + * + * @var resource + */ + protected $_context = null; + + /** + * All worker instances. + * + * @var Worker[] + */ + protected static $_workers = array(); + + /** + * All worker processes pid. + * The format is like this [worker_id=>[pid=>pid, pid=>pid, ..], ..] + * + * @var array + */ + protected static $_pidMap = array(); + + /** + * All worker processes waiting for restart. + * The format is like this [pid=>pid, pid=>pid]. + * + * @var array + */ + protected static $_pidsToRestart = array(); + + /** + * Mapping from PID to worker process ID. + * The format is like this [worker_id=>[0=>$pid, 1=>$pid, ..], ..]. + * + * @var array + */ + protected static $_idMap = array(); + + /** + * Current status. + * + * @var int + */ + protected static $_status = self::STATUS_STARTING; + + /** + * Maximum length of the worker names. + * + * @var int + */ + protected static $_maxWorkerNameLength = 12; + + /** + * Maximum length of the socket names. + * + * @var int + */ + protected static $_maxSocketNameLength = 12; + + /** + * Maximum length of the process user names. + * + * @var int + */ + protected static $_maxUserNameLength = 12; + + /** + * Maximum length of the Proto names. + * + * @var int + */ + protected static $_maxProtoNameLength = 4; + + /** + * Maximum length of the Processes names. + * + * @var int + */ + protected static $_maxProcessesNameLength = 9; + + /** + * Maximum length of the Status names. + * + * @var int + */ + protected static $_maxStatusNameLength = 1; + + /** + * The file to store status info of current worker process. + * + * @var string + */ + protected static $_statisticsFile = ''; + + /** + * Start file. + * + * @var string + */ + protected static $_startFile = ''; + + /** + * OS. + * + * @var string + */ + protected static $_OS = \OS_TYPE_LINUX; + + /** + * Processes for windows. + * + * @var array + */ + protected static $_processForWindows = array(); + + /** + * Status info of current worker process. + * + * @var array + */ + protected static $_globalStatistics = array( + 'start_timestamp' => 0, + 'worker_exit_info' => array() + ); + + /** + * Available event loops. + * + * @var array + */ + protected static $_availableEventLoops = array( + 'event' => '\Workerman\Events\Event', + 'libevent' => '\Workerman\Events\Libevent' + ); + + /** + * PHP built-in protocols. + * + * @var array + */ + protected static $_builtinTransports = array( + 'tcp' => 'tcp', + 'udp' => 'udp', + 'unix' => 'unix', + 'ssl' => 'tcp' + ); + + /** + * PHP built-in error types. + * + * @var array + */ + protected static $_errorType = array( + \E_ERROR => 'E_ERROR', // 1 + \E_WARNING => 'E_WARNING', // 2 + \E_PARSE => 'E_PARSE', // 4 + \E_NOTICE => 'E_NOTICE', // 8 + \E_CORE_ERROR => 'E_CORE_ERROR', // 16 + \E_CORE_WARNING => 'E_CORE_WARNING', // 32 + \E_COMPILE_ERROR => 'E_COMPILE_ERROR', // 64 + \E_COMPILE_WARNING => 'E_COMPILE_WARNING', // 128 + \E_USER_ERROR => 'E_USER_ERROR', // 256 + \E_USER_WARNING => 'E_USER_WARNING', // 512 + \E_USER_NOTICE => 'E_USER_NOTICE', // 1024 + \E_RECOVERABLE_ERROR => 'E_RECOVERABLE_ERROR', // 4096 + \E_DEPRECATED => 'E_DEPRECATED', // 8192 + \E_USER_DEPRECATED => 'E_USER_DEPRECATED' // 16384 + ); + + /** + * Graceful stop or not. + * + * @var bool + */ + protected static $_gracefulStop = false; + + /** + * Standard output stream + * @var resource + */ + protected static $_outputStream = null; + + /** + * If $outputStream support decorated + * @var bool + */ + protected static $_outputDecorated = null; + + protected static $liveVersionLength = null; + + /** + * Run all worker instances. + * + * @return void + */ + public static function runAll() + { + static::checkSapiEnv(); + static::init(); + static::parseCommand(); + static::lock(); + static::daemonize(); + static::initWorkers(); + static::installSignal(); + static::saveMasterPid(); + static::lock(\LOCK_UN); + static::displayUI(); + static::forkWorkers(); + static::resetStd(); + static::monitorWorkers(); + } + + /** + * Check sapi. + * + * @return void + */ + protected static function checkSapiEnv() + { + // Only for cli and micro. + if (!in_array(\PHP_SAPI, ['cli', 'micro'])) { + exit("Only run in command line mode \n"); + } + if (\DIRECTORY_SEPARATOR === '\\') { + self::$_OS = \OS_TYPE_WINDOWS; + } + } + + /** + * Init. + * + * @return void + */ + protected static function init() + { + \set_error_handler(function($code, $msg, $file, $line){ + Worker::safeEcho("$msg in file $file on line $line\n"); + }); + + // Start file. + $backtrace = \debug_backtrace(); + static::$_startFile = $backtrace[\count($backtrace) - 1]['file']; + + + $unique_prefix = \str_replace('/', '_', static::$_startFile); + + // Pid file. + if (empty(static::$pidFile)) { + static::$pidFile = __DIR__ . "/../$unique_prefix.pid"; + } + + // Log file. + if (empty(static::$logFile)) { + static::$logFile = __DIR__ . '/../workerman.log'; + } + $log_file = (string)static::$logFile; + if (!\is_file($log_file)) { + \touch($log_file); + \chmod($log_file, 0622); + } + + // State. + static::$_status = static::STATUS_STARTING; + + // For statistics. + static::$_globalStatistics['start_timestamp'] = \time(); + + // Process title. + static::setProcessTitle(static::$processTitle . ': master process start_file=' . static::$_startFile); + + // Init data for worker id. + static::initId(); + + // Timer init. + Timer::init(); + } + + /** + * Lock. + * + * @return void + */ + protected static function lock($flag = \LOCK_EX) + { + static $fd; + if (\DIRECTORY_SEPARATOR !== '/') { + return; + } + $lock_file = static::$pidFile . '.lock'; + $fd = $fd ?: \fopen($lock_file, 'a+'); + if ($fd) { + flock($fd, $flag); + if ($flag === \LOCK_UN) { + fclose($fd); + $fd = null; + clearstatcache(); + if (\is_file($lock_file)) { + unlink($lock_file); + } + } + } + } + + /** + * Init All worker instances. + * + * @return void + */ + protected static function initWorkers() + { + if (static::$_OS !== \OS_TYPE_LINUX) { + return; + } + + static::$_statisticsFile = static::$statusFile ? static::$statusFile : __DIR__ . '/../workerman-' .posix_getpid().'.status'; + + foreach (static::$_workers as $worker) { + // Worker name. + if (empty($worker->name)) { + $worker->name = 'none'; + } + + // Get unix user of the worker process. + if (empty($worker->user)) { + $worker->user = static::getCurrentUser(); + } else { + if (\posix_getuid() !== 0 && $worker->user !== static::getCurrentUser()) { + static::log('Warning: You must have the root privileges to change uid and gid.'); + } + } + + // Socket name. + $worker->socket = $worker->getSocketName(); + + // Status name. + $worker->status = ' [OK] '; + + // Get column mapping for UI + foreach(static::getUiColumns() as $column_name => $prop){ + $prop_length = \strlen((string) static::getWorkerProperty($worker, $prop)); + static::updateMaxNameLength($column_name, $prop_length); + } + + // Listen. + if (!$worker->reusePort) { + $worker->listen(); + } + } + } + + /** + * @param Worker $worker + * @param string $prop + * @return mixed + */ + protected static function getWorkerProperty($worker, $prop) + { + switch ($prop) { + case 'transport': + return $worker->transport; + case 'user': + return $worker->user; + case 'name': + return $worker->name; + case 'socket': + return $worker->socket; + case 'count': + return $worker->count; + case 'status': + return $worker->status; + } + return null; + } + + /** + * Update specified column name length + * + * @param string $column_name + * @param int $length + * @return void + */ + protected static function updateMaxNameLength($column_name, $length) + { + switch ($column_name) { + case 'processes': + static::$_maxProcessesNameLength = max(static::$_maxProcessesNameLength, $length); + break; + case 'proto': + static::$_maxProtoNameLength = max(static::$_maxProtoNameLength, $length); + break; + case 'listen': + case 'socket': + static::$_maxSocketNameLength = max(static::$_maxSocketNameLength, $length); + break; + case 'status': + static::$_maxStatusNameLength = max(static::$_maxStatusNameLength, $length); + break; + case 'user': + static::$_maxUserNameLength = max(static::$_maxUserNameLength, $length); + break; + case 'worker': + static::$_maxWorkerNameLength = max(static::$_maxWorkerNameLength, $length); + break; + } + } + + /** + * @param string $column_name + * @return int + */ + protected static function getMaxNameLength($column_name) + { + switch ($column_name) { + case 'processes': + return static::$_maxProcessesNameLength; + case 'proto': + return static::$_maxProtoNameLength; + case 'listen': + case 'socket': + return static::$_maxSocketNameLength; + case 'status': + return static::$_maxStatusNameLength; + case 'user': + return static::$_maxUserNameLength; + case 'worker': + return static::$_maxWorkerNameLength; + } + return 0; + } + + /** + * Reload all worker instances. + * + * @return void + */ + public static function reloadAllWorkers() + { + static::init(); + static::initWorkers(); + static::displayUI(); + static::$_status = static::STATUS_RELOADING; + } + + /** + * Get all worker instances. + * + * @return array + */ + public static function getAllWorkers() + { + return static::$_workers; + } + + /** + * Get global event-loop instance. + * + * @return EventInterface + */ + public static function getEventLoop() + { + return static::$globalEvent; + } + + /** + * Get main socket resource + * @return resource + */ + public function getMainSocket(){ + return $this->_mainSocket; + } + + /** + * Init idMap. + * return void + */ + protected static function initId() + { + foreach (static::$_workers as $worker_id => $worker) { + $new_id_map = array(); + $worker->count = $worker->count < 1 ? 1 : $worker->count; + for($key = 0; $key < $worker->count; $key++) { + $new_id_map[$key] = isset(static::$_idMap[$worker_id][$key]) ? static::$_idMap[$worker_id][$key] : 0; + } + static::$_idMap[$worker_id] = $new_id_map; + } + } + + /** + * Get unix user of current porcess. + * + * @return string + */ + protected static function getCurrentUser() + { + $user_info = \posix_getpwuid(\posix_getuid()); + return $user_info['name'] ?? 'unknown'; + } + + /** + * Display staring UI. + * + * @return void + */ + protected static function displayUI() + { + global $argv; + if (\in_array('-q', $argv)) { + return; + } + if (static::$_OS !== \OS_TYPE_LINUX) { + static::safeEcho("---------------------------------------------- WORKERMAN -----------------------------------------------\r\n"); + static::safeEcho('Workerman version:'. static::VERSION. ' PHP version:'. \PHP_VERSION. "\r\n"); + static::safeEcho("----------------------------------------------- WORKERS ------------------------------------------------\r\n"); + static::safeEcho("worker listen processes status\r\n"); + return; + } + + //show version + $line_version = 'Workerman version:' . static::VERSION . \str_pad('PHP version:', 22, ' ', \STR_PAD_LEFT) . \PHP_VERSION; + $line_version .= \str_pad('Event-Loop:', 22, ' ', \STR_PAD_LEFT) . static::getEventLoopName() . \PHP_EOL; + if (static::$liveVersionLength === null) { + static::$liveVersionLength = \strlen($line_version); + } + $total_length = static::getSingleLineTotalLength(); + $line_one = '' . \str_pad(' WORKERMAN ', $total_length + \strlen(''), '-', \STR_PAD_BOTH) . ''. \PHP_EOL; + $line_two = \str_pad(' WORKERS ' , $total_length + \strlen(''), '-', \STR_PAD_BOTH) . \PHP_EOL; + static::safeEcho($line_one . $line_version . $line_two); + + //Show title + $title = ''; + foreach(static::getUiColumns() as $column_name => $prop){ + $length = static::getMaxNameLength($column_name); + //just keep compatible with listen name + $column_name === 'socket' && $column_name = 'listen'; + $title.= "{$column_name}" . \str_pad('', $length + static::UI_SAFE_LENGTH - \strlen($column_name)); + } + $title && static::safeEcho($title . \PHP_EOL); + + //Show content + foreach (static::$_workers as $worker) { + $content = ''; + foreach(static::getUiColumns() as $column_name => $prop){ + \preg_match_all("/(|<\/n>||<\/w>||<\/g>)/is", (string) static::getWorkerProperty($worker, $prop), $matches); + $place_holder_length = !empty($matches) ? \strlen(\implode('', $matches[0])) : 0; + $content .= \str_pad((string) static::getWorkerProperty($worker, $prop), static::getMaxNameLength($column_name) + static::UI_SAFE_LENGTH + $place_holder_length); + } + $content && static::safeEcho($content . \PHP_EOL); + } + + //Show last line + $line_last = \str_pad('', static::getSingleLineTotalLength(), '-') . \PHP_EOL; + !empty($content) && static::safeEcho($line_last); + + if (static::$daemonize) { + $tmpArgv = $argv; + foreach ($tmpArgv as $index => $value) { + if ($value == '-d') { + unset($tmpArgv[$index]); + } elseif ($value == 'start' || $value == 'restart') { + $tmpArgv[$index] = 'stop'; + } + } + static::safeEcho("Input \"php ".implode(' ', $tmpArgv)."\" to stop. Start success.\n\n"); + } else { + static::safeEcho("Press Ctrl+C to stop. Start success.\n"); + } + } + + /** + * Get UI columns to be shown in terminal + * + * 1. $column_map: array('ui_column_name' => 'clas_property_name') + * 2. Consider move into configuration in future + * + * @return array + */ + public static function getUiColumns() + { + return array( + 'proto' => 'transport', + 'user' => 'user', + 'worker' => 'name', + 'socket' => 'socket', + 'processes' => 'count', + 'status' => 'status', + ); + } + + /** + * Get single line total length for ui + * + * @return int + */ + public static function getSingleLineTotalLength() + { + $total_length = 0; + + foreach(static::getUiColumns() as $column_name => $prop){ + $total_length += static::getMaxNameLength($column_name) + static::UI_SAFE_LENGTH; + } + + //keep beauty when show less colums + if (static::$liveVersionLength === null) { + static::$liveVersionLength = 0; + } + $total_length <= static::$liveVersionLength && $total_length = static::$liveVersionLength; + + return $total_length; + } + + /** + * Parse command. + * + * @return void + */ + protected static function parseCommand() + { + if (static::$_OS !== \OS_TYPE_LINUX) { + return; + } + global $argv; + // Check argv; + $start_file = $argv[0]; + $usage = "Usage: php yourfile [mode]\nCommands: \nstart\t\tStart worker in DEBUG mode.\n\t\tUse mode -d to start in DAEMON mode.\nstop\t\tStop worker.\n\t\tUse mode -g to stop gracefully.\nrestart\t\tRestart workers.\n\t\tUse mode -d to start in DAEMON mode.\n\t\tUse mode -g to stop gracefully.\nreload\t\tReload codes.\n\t\tUse mode -g to reload gracefully.\nstatus\t\tGet worker status.\n\t\tUse mode -d to show live status.\nconnections\tGet worker connections.\n"; + $available_commands = array( + 'start', + 'stop', + 'restart', + 'reload', + 'status', + 'connections', + ); + $available_mode = array( + '-d', + '-g' + ); + $command = $mode = ''; + foreach ($argv as $value) { + if (\in_array($value, $available_commands)) { + $command = $value; + } elseif (\in_array($value, $available_mode)) { + $mode = $value; + } + } + + if (!$command) { + exit($usage); + } + + // Start command. + $mode_str = ''; + if ($command === 'start') { + if ($mode === '-d' || static::$daemonize) { + $mode_str = 'in DAEMON mode'; + } else { + $mode_str = 'in DEBUG mode'; + } + } + static::log("Workerman[$start_file] $command $mode_str"); + + // Get master process PID. + $master_pid = \is_file(static::$pidFile) ? (int)\file_get_contents(static::$pidFile) : 0; + // Master is still alive? + if (static::checkMasterIsAlive($master_pid)) { + if ($command === 'start') { + static::log("Workerman[$start_file] already running"); + exit; + } + } elseif ($command !== 'start' && $command !== 'restart') { + static::log("Workerman[$start_file] not run"); + exit; + } + + $statistics_file = static::$statusFile ? static::$statusFile : __DIR__ . "/../workerman-$master_pid.status"; + + // execute command. + switch ($command) { + case 'start': + if ($mode === '-d') { + static::$daemonize = true; + } + break; + case 'status': + while (1) { + if (\is_file($statistics_file)) { + @\unlink($statistics_file); + } + // Master process will send SIGIOT signal to all child processes. + \posix_kill($master_pid, SIGIOT); + // Sleep 1 second. + \sleep(1); + // Clear terminal. + if ($mode === '-d') { + static::safeEcho("\33[H\33[2J\33(B\33[m", true); + } + // Echo status data. + static::safeEcho(static::formatStatusData($statistics_file)); + if ($mode !== '-d') { + exit(0); + } + static::safeEcho("\nPress Ctrl+C to quit.\n\n"); + } + exit(0); + case 'connections': + if (\is_file($statistics_file) && \is_writable($statistics_file)) { + \unlink($statistics_file); + } + // Master process will send SIGIO signal to all child processes. + \posix_kill($master_pid, SIGIO); + // Waiting amoment. + \usleep(500000); + // Display statisitcs data from a disk file. + if(\is_readable($statistics_file)) { + \readfile($statistics_file); + } + exit(0); + case 'restart': + case 'stop': + if ($mode === '-g') { + static::$_gracefulStop = true; + $sig = \SIGQUIT; + static::log("Workerman[$start_file] is gracefully stopping ..."); + } else { + static::$_gracefulStop = false; + $sig = \SIGINT; + static::log("Workerman[$start_file] is stopping ..."); + } + // Send stop signal to master process. + $master_pid && \posix_kill($master_pid, $sig); + // Timeout. + $timeout = static::$stopTimeout + 3; + $start_time = \time(); + // Check master process is still alive? + while (1) { + $master_is_alive = $master_pid && \posix_kill((int) $master_pid, 0); + if ($master_is_alive) { + // Timeout? + if (!static::$_gracefulStop && \time() - $start_time >= $timeout) { + static::log("Workerman[$start_file] stop fail"); + exit; + } + // Waiting amoment. + \usleep(10000); + continue; + } + // Stop success. + static::log("Workerman[$start_file] stop success"); + if ($command === 'stop') { + exit(0); + } + if ($mode === '-d') { + static::$daemonize = true; + } + break; + } + break; + case 'reload': + if($mode === '-g'){ + $sig = \SIGUSR2; + }else{ + $sig = \SIGUSR1; + } + \posix_kill($master_pid, $sig); + exit; + default : + if (isset($command)) { + static::safeEcho('Unknown command: ' . $command . "\n"); + } + exit($usage); + } + } + + /** + * Format status data. + * + * @param $statistics_file + * @return string + */ + protected static function formatStatusData($statistics_file) + { + static $total_request_cache = array(); + if (!\is_readable($statistics_file)) { + return ''; + } + $info = \file($statistics_file, \FILE_IGNORE_NEW_LINES); + if (!$info) { + return ''; + } + $status_str = ''; + $current_total_request = array(); + $workerInfo = []; + try { + $workerInfo = unserialize($info[0], ['allowed_classes' => false]); + } catch (Throwable $exception) {} + if (!is_array($workerInfo)) { + $workerInfo = []; + } + \ksort($workerInfo, SORT_NUMERIC); + unset($info[0]); + $data_waiting_sort = array(); + $read_process_status = false; + $total_requests = 0; + $total_qps = 0; + $total_connections = 0; + $total_fails = 0; + $total_memory = 0; + $total_timers = 0; + $maxLen1 = static::$_maxSocketNameLength; + $maxLen2 = static::$_maxWorkerNameLength; + foreach($info as $key => $value) { + if (!$read_process_status) { + $status_str .= $value . "\n"; + if (\preg_match('/^pid.*?memory.*?listening/', $value)) { + $read_process_status = true; + } + continue; + } + if(\preg_match('/^[0-9]+/', $value, $pid_math)) { + $pid = $pid_math[0]; + $data_waiting_sort[$pid] = $value; + if(\preg_match('/^\S+?\s+?(\S+?)\s+?(\S+?)\s+?(\S+?)\s+?(\S+?)\s+?(\S+?)\s+?(\S+?)\s+?(\S+?)\s+?/', $value, $match)) { + $total_memory += \intval(\str_ireplace('M','',$match[1])); + $maxLen1 = \max($maxLen1,\strlen($match[2])); + $maxLen2 = \max($maxLen2,\strlen($match[3])); + $total_connections += \intval($match[4]); + $total_fails += \intval($match[5]); + $total_timers += \intval($match[6]); + $current_total_request[$pid] = $match[7]; + $total_requests += \intval($match[7]); + } + } + } + foreach($workerInfo as $pid => $info) { + if (!isset($data_waiting_sort[$pid])) { + $status_str .= "$pid\t" . \str_pad('N/A', 7) . " " + . \str_pad($info['listen'], static::$_maxSocketNameLength) . " " + . \str_pad($info['name'], static::$_maxWorkerNameLength) . " " + . \str_pad('N/A', 11) . " " . \str_pad('N/A', 9) . " " + . \str_pad('N/A', 7) . " " . \str_pad('N/A', 13) . " N/A [busy] \n"; + continue; + } + //$qps = isset($total_request_cache[$pid]) ? $current_total_request[$pid] + if (!isset($total_request_cache[$pid]) || !isset($current_total_request[$pid])) { + $qps = 0; + } else { + $qps = $current_total_request[$pid] - $total_request_cache[$pid]; + $total_qps += $qps; + } + $status_str .= $data_waiting_sort[$pid]. " " . \str_pad($qps, 6) ." [idle]\n"; + } + $total_request_cache = $current_total_request; + $status_str .= "----------------------------------------------PROCESS STATUS---------------------------------------------------\n"; + $status_str .= "Summary\t" . \str_pad($total_memory.'M', 7) . " " + . \str_pad('-', $maxLen1) . " " + . \str_pad('-', $maxLen2) . " " + . \str_pad($total_connections, 11) . " " . \str_pad($total_fails, 9) . " " + . \str_pad($total_timers, 7) . " " . \str_pad($total_requests, 13) . " " + . \str_pad($total_qps,6)." [Summary] \n"; + return $status_str; + } + + + /** + * Install signal handler. + * + * @return void + */ + protected static function installSignal() + { + if (static::$_OS !== \OS_TYPE_LINUX) { + return; + } + $signalHandler = '\Workerman\Worker::signalHandler'; + // stop + \pcntl_signal(\SIGINT, $signalHandler, false); + // stop + \pcntl_signal(\SIGTERM, $signalHandler, false); + // stop + \pcntl_signal(\SIGHUP, $signalHandler, false); + // stop + \pcntl_signal(\SIGTSTP, $signalHandler, false); + // graceful stop + \pcntl_signal(\SIGQUIT, $signalHandler, false); + // reload + \pcntl_signal(\SIGUSR1, $signalHandler, false); + // graceful reload + \pcntl_signal(\SIGUSR2, $signalHandler, false); + // status + \pcntl_signal(\SIGIOT, $signalHandler, false); + // connection status + \pcntl_signal(\SIGIO, $signalHandler, false); + // ignore + \pcntl_signal(\SIGPIPE, \SIG_IGN, false); + } + + /** + * Reinstall signal handler. + * + * @return void + */ + protected static function reinstallSignal() + { + if (static::$_OS !== \OS_TYPE_LINUX) { + return; + } + $signalHandler = '\Workerman\Worker::signalHandler'; + // uninstall stop signal handler + \pcntl_signal(\SIGINT, \SIG_IGN, false); + // uninstall stop signal handler + \pcntl_signal(\SIGTERM, \SIG_IGN, false); + // uninstall stop signal handler + \pcntl_signal(\SIGHUP, \SIG_IGN, false); + // uninstall stop signal handler + \pcntl_signal(\SIGTSTP, \SIG_IGN, false); + // uninstall graceful stop signal handler + \pcntl_signal(\SIGQUIT, \SIG_IGN, false); + // uninstall reload signal handler + \pcntl_signal(\SIGUSR1, \SIG_IGN, false); + // uninstall graceful reload signal handler + \pcntl_signal(\SIGUSR2, \SIG_IGN, false); + // uninstall status signal handler + \pcntl_signal(\SIGIOT, \SIG_IGN, false); + // uninstall connections status signal handler + \pcntl_signal(\SIGIO, \SIG_IGN, false); + // reinstall stop signal handler + static::$globalEvent->add(\SIGINT, EventInterface::EV_SIGNAL, $signalHandler); + // reinstall graceful stop signal handler + static::$globalEvent->add(\SIGQUIT, EventInterface::EV_SIGNAL, $signalHandler); + // reinstall graceful stop signal handler + static::$globalEvent->add(\SIGHUP, EventInterface::EV_SIGNAL, $signalHandler); + // reinstall graceful stop signal handler + static::$globalEvent->add(\SIGTSTP, EventInterface::EV_SIGNAL, $signalHandler); + // reinstall reload signal handler + static::$globalEvent->add(\SIGUSR1, EventInterface::EV_SIGNAL, $signalHandler); + // reinstall graceful reload signal handler + static::$globalEvent->add(\SIGUSR2, EventInterface::EV_SIGNAL, $signalHandler); + // reinstall status signal handler + static::$globalEvent->add(\SIGIOT, EventInterface::EV_SIGNAL, $signalHandler); + // reinstall connection status signal handler + static::$globalEvent->add(\SIGIO, EventInterface::EV_SIGNAL, $signalHandler); + } + + /** + * Signal handler. + * + * @param int $signal + */ + public static function signalHandler($signal) + { + switch ($signal) { + // Stop. + case \SIGINT: + case \SIGTERM: + case \SIGHUP: + case \SIGTSTP: + static::$_gracefulStop = false; + static::stopAll(); + break; + // Graceful stop. + case \SIGQUIT: + static::$_gracefulStop = true; + static::stopAll(); + break; + // Reload. + case \SIGUSR2: + case \SIGUSR1: + if (static::$_status === static::STATUS_SHUTDOWN || static::$_status === static::STATUS_RELOADING) { + return; + } + static::$_gracefulStop = $signal === \SIGUSR2; + static::$_pidsToRestart = static::getAllWorkerPids(); + static::reload(); + break; + // Show status. + case \SIGIOT: + static::writeStatisticsToStatusFile(); + break; + // Show connection status. + case \SIGIO: + static::writeConnectionsStatisticsToStatusFile(); + break; + } + } + + /** + * Run as daemon mode. + * + * @throws Exception + */ + protected static function daemonize() + { + if (!static::$daemonize || static::$_OS !== \OS_TYPE_LINUX) { + return; + } + \umask(0); + $pid = \pcntl_fork(); + if (-1 === $pid) { + throw new Exception('Fork fail'); + } elseif ($pid > 0) { + exit(0); + } + if (-1 === \posix_setsid()) { + throw new Exception("Setsid fail"); + } + // Fork again avoid SVR4 system regain the control of terminal. + $pid = \pcntl_fork(); + if (-1 === $pid) { + throw new Exception("Fork fail"); + } elseif (0 !== $pid) { + exit(0); + } + } + + /** + * Redirect standard input and output. + * + * @throws Exception + */ + public static function resetStd() + { + if (!static::$daemonize || \DIRECTORY_SEPARATOR !== '/') { + return; + } + global $STDOUT, $STDERR; + $handle = \fopen(static::$stdoutFile, "a"); + if ($handle) { + unset($handle); + \set_error_handler(function(){}); + if ($STDOUT) { + \fclose($STDOUT); + } + if ($STDERR) { + \fclose($STDERR); + } + if (\is_resource(\STDOUT)) { + \fclose(\STDOUT); + } + if (\is_resource(\STDERR)) { + \fclose(\STDERR); + } + $STDOUT = \fopen(static::$stdoutFile, "a"); + $STDERR = \fopen(static::$stdoutFile, "a"); + // Fix standard output cannot redirect of PHP 8.1.8's bug + if (\function_exists('posix_isatty') && \posix_isatty(2)) { + \ob_start(function ($string) { + \file_put_contents(static::$stdoutFile, $string, FILE_APPEND); + }, 1); + } + // change output stream + static::$_outputStream = null; + static::outputStream($STDOUT); + \restore_error_handler(); + return; + } + + throw new Exception('Can not open stdoutFile ' . static::$stdoutFile); + } + + /** + * Save pid. + * + * @throws Exception + */ + protected static function saveMasterPid() + { + if (static::$_OS !== \OS_TYPE_LINUX) { + return; + } + + static::$_masterPid = \posix_getpid(); + if (false === \file_put_contents(static::$pidFile, static::$_masterPid)) { + throw new Exception('can not save pid to ' . static::$pidFile); + } + } + + /** + * Get event loop name. + * + * @return string + */ + protected static function getEventLoopName() + { + if (static::$eventLoopClass) { + return static::$eventLoopClass; + } + + if (!\class_exists('\Swoole\Event', false)) { + unset(static::$_availableEventLoops['swoole']); + } + + $loop_name = ''; + foreach (static::$_availableEventLoops as $name=>$class) { + if (\extension_loaded($name)) { + $loop_name = $name; + break; + } + } + + if ($loop_name) { + static::$eventLoopClass = static::$_availableEventLoops[$loop_name]; + } else { + static::$eventLoopClass = '\Workerman\Events\Select'; + } + return static::$eventLoopClass; + } + + /** + * Get all pids of worker processes. + * + * @return array + */ + protected static function getAllWorkerPids() + { + $pid_array = array(); + foreach (static::$_pidMap as $worker_pid_array) { + foreach ($worker_pid_array as $worker_pid) { + $pid_array[$worker_pid] = $worker_pid; + } + } + return $pid_array; + } + + /** + * Fork some worker processes. + * + * @return void + */ + protected static function forkWorkers() + { + if (static::$_OS === \OS_TYPE_LINUX) { + static::forkWorkersForLinux(); + } else { + static::forkWorkersForWindows(); + } + } + + /** + * Fork some worker processes. + * + * @return void + */ + protected static function forkWorkersForLinux() + { + + foreach (static::$_workers as $worker) { + if (static::$_status === static::STATUS_STARTING) { + if (empty($worker->name)) { + $worker->name = $worker->getSocketName(); + } + $worker_name_length = \strlen($worker->name); + if (static::$_maxWorkerNameLength < $worker_name_length) { + static::$_maxWorkerNameLength = $worker_name_length; + } + } + + while (\count(static::$_pidMap[$worker->workerId]) < $worker->count) { + static::forkOneWorkerForLinux($worker); + } + } + } + + /** + * Fork some worker processes. + * + * @return void + */ + protected static function forkWorkersForWindows() + { + $files = static::getStartFilesForWindows(); + global $argv; + if(\in_array('-q', $argv) || \count($files) === 1) + { + if(\count(static::$_workers) > 1) + { + static::safeEcho("@@@ Error: multi workers init in one php file are not support @@@\r\n"); + static::safeEcho("@@@ See http://doc.workerman.net/faq/multi-woker-for-windows.html @@@\r\n"); + } + elseif(\count(static::$_workers) <= 0) + { + exit("@@@no worker inited@@@\r\n\r\n"); + } + + \reset(static::$_workers); + /** @var Worker $worker */ + $worker = current(static::$_workers); + + \Workerman\Timer::delAll(); + + //Update process state. + static::$_status = static::STATUS_RUNNING; + + // Register shutdown function for checking errors. + \register_shutdown_function([__CLASS__, 'checkErrors']); + + // Create a global event loop. + if (!static::$globalEvent) { + $eventLoopClass = static::getEventLoopName(); + static::$globalEvent = new $eventLoopClass; + } + + // Reinstall signal. + static::reinstallSignal(); + + // Init Timer. + Timer::init(static::$globalEvent); + + \restore_error_handler(); + + // Add an empty timer to prevent the event-loop from exiting. + Timer::add(1000000, function (){}); + + // Display UI. + static::safeEcho(\str_pad($worker->name, 48) . \str_pad($worker->getSocketName(), 36) . \str_pad('1', 10) . " [ok]\n"); + $worker->listen(); + $worker->run(); + static::$globalEvent->loop(); + if (static::$_status !== self::STATUS_SHUTDOWN) { + $err = new Exception('event-loop exited'); + static::log($err); + exit(250); + } + exit(0); + } + else + { + static::$globalEvent = new \Workerman\Events\Select(); + Timer::init(static::$globalEvent); + foreach($files as $start_file) + { + static::forkOneWorkerForWindows($start_file); + } + } + } + + /** + * Get start files for windows. + * + * @return array + */ + public static function getStartFilesForWindows() { + global $argv; + $files = array(); + foreach($argv as $file) + { + if(\is_file($file)) + { + $files[$file] = $file; + } + } + return $files; + } + + /** + * Fork one worker process. + * + * @param string $start_file + */ + public static function forkOneWorkerForWindows($start_file) + { + $start_file = \realpath($start_file); + + $descriptorspec = array( + STDIN, STDOUT, STDOUT + ); + + $pipes = array(); + $process = \proc_open("php \"$start_file\" -q", $descriptorspec, $pipes); + + if (empty(static::$globalEvent)) { + static::$globalEvent = new Select(); + Timer::init(static::$globalEvent); + } + + // 保存子进程句柄 + static::$_processForWindows[$start_file] = array($process, $start_file); + } + + /** + * check worker status for windows. + * @return void + */ + public static function checkWorkerStatusForWindows() + { + foreach(static::$_processForWindows as $process_data) + { + $process = $process_data[0]; + $start_file = $process_data[1]; + $status = \proc_get_status($process); + if(isset($status['running'])) + { + if(!$status['running']) + { + static::safeEcho("process $start_file terminated and try to restart\n"); + \proc_close($process); + static::forkOneWorkerForWindows($start_file); + } + } + else + { + static::safeEcho("proc_get_status fail\n"); + } + } + } + + + /** + * Fork one worker process. + * + * @param self $worker + * @throws Exception + */ + protected static function forkOneWorkerForLinux(self $worker) + { + // Get available worker id. + $id = static::getId($worker->workerId, 0); + if ($id === false) { + return; + } + $pid = \pcntl_fork(); + // For master process. + if ($pid > 0) { + static::$_pidMap[$worker->workerId][$pid] = $pid; + static::$_idMap[$worker->workerId][$id] = $pid; + } // For child processes. + elseif (0 === $pid) { + \srand(); + \mt_srand(); + static::$_gracefulStop = false; + if (static::$_status === static::STATUS_STARTING) { + static::resetStd(); + } + static::$_pidMap = array(); + // Remove other listener. + foreach(static::$_workers as $key => $one_worker) { + if ($one_worker->workerId !== $worker->workerId) { + $one_worker->unlisten(); + unset(static::$_workers[$key]); + } + } + Timer::delAll(); + //Update process state. + static::$_status = static::STATUS_RUNNING; + + // Register shutdown function for checking errors. + \register_shutdown_function(array("\\Workerman\\Worker", 'checkErrors')); + + // Create a global event loop. + if (!static::$globalEvent) { + $event_loop_class = static::getEventLoopName(); + static::$globalEvent = new $event_loop_class; + } + + // Reinstall signal. + static::reinstallSignal(); + + // Init Timer. + Timer::init(static::$globalEvent); + + \restore_error_handler(); + + static::setProcessTitle(self::$processTitle . ': worker process ' . $worker->name . ' ' . $worker->getSocketName()); + $worker->setUserAndGroup(); + $worker->id = $id; + $worker->run(); + // Main loop. + static::$globalEvent->loop(); + if (strpos(static::$eventLoopClass, 'Workerman\Events\Swoole') !== false) { + exit(0); + } + $err = new Exception('event-loop exited'); + static::log($err); + exit(250); + } else { + throw new Exception("forkOneWorker fail"); + } + } + + /** + * Get worker id. + * + * @param string $worker_id + * @param int $pid + * + * @return integer + */ + protected static function getId($worker_id, $pid) + { + return \array_search($pid, static::$_idMap[$worker_id]); + } + + /** + * Set unix user and group for current process. + * + * @return void + */ + public function setUserAndGroup() + { + // Get uid. + $user_info = \posix_getpwnam($this->user); + if (!$user_info) { + static::log("Warning: User {$this->user} not exists"); + return; + } + $uid = $user_info['uid']; + // Get gid. + if ($this->group) { + $group_info = \posix_getgrnam($this->group); + if (!$group_info) { + static::log("Warning: Group {$this->group} not exists"); + return; + } + $gid = $group_info['gid']; + } else { + $gid = $user_info['gid']; + } + + // Set uid and gid. + if ($uid !== \posix_getuid() || $gid !== \posix_getgid()) { + if (!\posix_setgid($gid) || !\posix_initgroups($user_info['name'], $gid) || !\posix_setuid($uid)) { + static::log("Warning: change gid or uid fail."); + } + } + } + + /** + * Set process name. + * + * @param string $title + * @return void + */ + protected static function setProcessTitle($title) + { + \set_error_handler(function(){}); + // >=php 5.5 + if (\function_exists('cli_set_process_title')) { + \cli_set_process_title($title); + } // Need proctitle when php<=5.5 . + elseif (\extension_loaded('proctitle') && \function_exists('setproctitle')) { + \setproctitle($title); + } + \restore_error_handler(); + } + + /** + * Monitor all child processes. + * + * @return void + */ + protected static function monitorWorkers() + { + if (static::$_OS === \OS_TYPE_LINUX) { + static::monitorWorkersForLinux(); + } else { + static::monitorWorkersForWindows(); + } + } + + /** + * Monitor all child processes. + * + * @return void + */ + protected static function monitorWorkersForLinux() + { + static::$_status = static::STATUS_RUNNING; + while (1) { + // Calls signal handlers for pending signals. + \pcntl_signal_dispatch(); + // Suspends execution of the current process until a child has exited, or until a signal is delivered + $status = 0; + $pid = \pcntl_wait($status, \WUNTRACED); + // Calls signal handlers for pending signals again. + \pcntl_signal_dispatch(); + // If a child has already exited. + if ($pid > 0) { + // Find out which worker process exited. + foreach (static::$_pidMap as $worker_id => $worker_pid_array) { + if (isset($worker_pid_array[$pid])) { + $worker = static::$_workers[$worker_id]; + // Fix exit with status 2 for php8.2 + if ($status === \SIGINT && static::$_status === static::STATUS_SHUTDOWN) { + $status = 0; + } + // Exit status. + if ($status !== 0) { + static::log("worker[{$worker->name}:$pid] exit with status $status"); + } + + // onWorkerExit + if ($worker->onWorkerExit) { + try { + ($worker->onWorkerExit)($worker, $status, $pid); + } catch (\Throwable $exception) { + static::log("worker[{$worker->name}] onWorkerExit $exception"); + } + } + + // For Statistics. + if (!isset(static::$_globalStatistics['worker_exit_info'][$worker_id][$status])) { + static::$_globalStatistics['worker_exit_info'][$worker_id][$status] = 0; + } + ++static::$_globalStatistics['worker_exit_info'][$worker_id][$status]; + + // Clear process data. + unset(static::$_pidMap[$worker_id][$pid]); + + // Mark id is available. + $id = static::getId($worker_id, $pid); + static::$_idMap[$worker_id][$id] = 0; + + break; + } + } + // Is still running state then fork a new worker process. + if (static::$_status !== static::STATUS_SHUTDOWN) { + static::forkWorkers(); + // If reloading continue. + if (isset(static::$_pidsToRestart[$pid])) { + unset(static::$_pidsToRestart[$pid]); + static::reload(); + } + } + } + + // If shutdown state and all child processes exited then master process exit. + if (static::$_status === static::STATUS_SHUTDOWN && !static::getAllWorkerPids()) { + static::exitAndClearAll(); + } + } + } + + /** + * Monitor all child processes. + * + * @return void + */ + protected static function monitorWorkersForWindows() + { + Timer::add(1, "\\Workerman\\Worker::checkWorkerStatusForWindows"); + + static::$globalEvent->loop(); + } + + /** + * Exit current process. + * + * @return void + */ + protected static function exitAndClearAll() + { + foreach (static::$_workers as $worker) { + $socket_name = $worker->getSocketName(); + if ($worker->transport === 'unix' && $socket_name) { + list(, $address) = \explode(':', $socket_name, 2); + $address = substr($address, strpos($address, '/') + 2); + @\unlink($address); + } + } + @\unlink(static::$pidFile); + static::log("Workerman[" . \basename(static::$_startFile) . "] has been stopped"); + if (static::$onMasterStop) { + \call_user_func(static::$onMasterStop); + } + exit(0); + } + + /** + * Execute reload. + * + * @return void + */ + protected static function reload() + { + // For master process. + if (static::$_masterPid === \posix_getpid()) { + if (static::$_gracefulStop) { + $sig = \SIGUSR2; + } else { + $sig = \SIGUSR1; + } + // Set reloading state. + if (static::$_status !== static::STATUS_RELOADING && static::$_status !== static::STATUS_SHUTDOWN) { + static::log("Workerman[" . \basename(static::$_startFile) . "] reloading"); + static::$_status = static::STATUS_RELOADING; + // Try to emit onMasterReload callback. + if (static::$onMasterReload) { + try { + \call_user_func(static::$onMasterReload); + } catch (\Exception $e) { + static::stopAll(250, $e); + } catch (\Error $e) { + static::stopAll(250, $e); + } + static::initId(); + } + + // Send reload signal to all child processes. + $reloadable_pid_array = array(); + foreach (static::$_pidMap as $worker_id => $worker_pid_array) { + $worker = static::$_workers[$worker_id]; + if ($worker->reloadable) { + foreach ($worker_pid_array as $pid) { + $reloadable_pid_array[$pid] = $pid; + } + } else { + foreach ($worker_pid_array as $pid) { + // Send reload signal to a worker process which reloadable is false. + \posix_kill($pid, $sig); + } + } + } + + // Get all pids that are waiting reload. + static::$_pidsToRestart = \array_intersect(static::$_pidsToRestart, $reloadable_pid_array); + + } + + // Reload complete. + if (empty(static::$_pidsToRestart)) { + if (static::$_status !== static::STATUS_SHUTDOWN) { + static::$_status = static::STATUS_RUNNING; + } + return; + } + // Continue reload. + $one_worker_pid = \current(static::$_pidsToRestart); + // Send reload signal to a worker process. + \posix_kill($one_worker_pid, $sig); + // If the process does not exit after static::$stopTimeout seconds try to kill it. + if(!static::$_gracefulStop){ + Timer::add(static::$stopTimeout, '\posix_kill', array($one_worker_pid, \SIGKILL), false); + } + } // For child processes. + else { + \reset(static::$_workers); + $worker = \current(static::$_workers); + // Try to emit onWorkerReload callback. + if ($worker->onWorkerReload) { + try { + \call_user_func($worker->onWorkerReload, $worker); + } catch (\Exception $e) { + static::stopAll(250, $e); + } catch (\Error $e) { + static::stopAll(250, $e); + } + } + + if ($worker->reloadable) { + static::stopAll(); + } + } + } + + /** + * Stop all. + * + * @param int $code + * @param string $log + */ + public static function stopAll($code = 0, $log = '') + { + if ($log) { + static::log($log); + } + + static::$_status = static::STATUS_SHUTDOWN; + // For master process. + if (\DIRECTORY_SEPARATOR === '/' && static::$_masterPid === \posix_getpid()) { + static::log("Workerman[" . \basename(static::$_startFile) . "] stopping ..."); + $worker_pid_array = static::getAllWorkerPids(); + // Send stop signal to all child processes. + if (static::$_gracefulStop) { + $sig = \SIGQUIT; + } else { + $sig = \SIGINT; + } + foreach ($worker_pid_array as $worker_pid) { + if (static::$daemonize) { + \posix_kill($worker_pid, $sig); + } else { + Timer::add(1, '\posix_kill', array($worker_pid, $sig), false); + } + if(!static::$_gracefulStop){ + Timer::add(static::$stopTimeout, '\posix_kill', array($worker_pid, \SIGKILL), false); + } + } + Timer::add(1, "\\Workerman\\Worker::checkIfChildRunning"); + // Remove statistics file. + if (\is_file(static::$_statisticsFile)) { + @\unlink(static::$_statisticsFile); + } + } // For child processes. + else { + // Execute exit. + $workers = array_reverse(static::$_workers); + foreach ($workers as $worker) { + if(!$worker->stopping){ + $worker->stop(); + $worker->stopping = true; + } + } + if (!static::$_gracefulStop || ConnectionInterface::$statistics['connection_count'] <= 0) { + static::$_workers = array(); + if (static::$globalEvent) { + static::$globalEvent->destroy(); + } + + try { + exit($code); + } catch (Exception $e) { + + } + } + } + } + + /** + * check if child processes is really running + */ + public static function checkIfChildRunning() + { + foreach (static::$_pidMap as $worker_id => $worker_pid_array) { + foreach ($worker_pid_array as $pid => $worker_pid) { + if (!\posix_kill($pid, 0)) { + unset(static::$_pidMap[$worker_id][$pid]); + } + } + } + } + + /** + * Get process status. + * + * @return number + */ + public static function getStatus() + { + return static::$_status; + } + + /** + * If stop gracefully. + * + * @return bool + */ + public static function getGracefulStop() + { + return static::$_gracefulStop; + } + + /** + * Write statistics data to disk. + * + * @return void + */ + protected static function writeStatisticsToStatusFile() + { + // For master process. + if (static::$_masterPid === \posix_getpid()) { + $all_worker_info = array(); + foreach(static::$_pidMap as $worker_id => $pid_array) { + /** @var Worker $worker */ + $worker = static::$_workers[$worker_id]; + foreach($pid_array as $pid) { + $all_worker_info[$pid] = array('name' => $worker->name, 'listen' => $worker->getSocketName()); + } + } + + \file_put_contents(static::$_statisticsFile, \serialize($all_worker_info)."\n", \FILE_APPEND); + $loadavg = \function_exists('sys_getloadavg') ? \array_map('round', \sys_getloadavg(), array(2,2,2)) : array('-', '-', '-'); + \file_put_contents(static::$_statisticsFile, + "----------------------------------------------GLOBAL STATUS----------------------------------------------------\n", \FILE_APPEND); + \file_put_contents(static::$_statisticsFile, + 'Workerman version:' . static::VERSION . " PHP version:" . \PHP_VERSION . "\n", \FILE_APPEND); + \file_put_contents(static::$_statisticsFile, 'start time:' . \date('Y-m-d H:i:s', + static::$_globalStatistics['start_timestamp']) . ' run ' . \floor((\time() - static::$_globalStatistics['start_timestamp']) / (24 * 60 * 60)) . ' days ' . \floor(((\time() - static::$_globalStatistics['start_timestamp']) % (24 * 60 * 60)) / (60 * 60)) . " hours \n", + FILE_APPEND); + $load_str = 'load average: ' . \implode(", ", $loadavg); + \file_put_contents(static::$_statisticsFile, + \str_pad($load_str, 33) . 'event-loop:' . static::getEventLoopName() . "\n", \FILE_APPEND); + \file_put_contents(static::$_statisticsFile, + \count(static::$_pidMap) . ' workers ' . \count(static::getAllWorkerPids()) . " processes\n", + \FILE_APPEND); + \file_put_contents(static::$_statisticsFile, + \str_pad('worker_name', static::$_maxWorkerNameLength) . " exit_status exit_count\n", \FILE_APPEND); + foreach (static::$_pidMap as $worker_id => $worker_pid_array) { + $worker = static::$_workers[$worker_id]; + if (isset(static::$_globalStatistics['worker_exit_info'][$worker_id])) { + foreach (static::$_globalStatistics['worker_exit_info'][$worker_id] as $worker_exit_status => $worker_exit_count) { + \file_put_contents(static::$_statisticsFile, + \str_pad($worker->name, static::$_maxWorkerNameLength) . " " . \str_pad($worker_exit_status, + 16) . " $worker_exit_count\n", \FILE_APPEND); + } + } else { + \file_put_contents(static::$_statisticsFile, + \str_pad($worker->name, static::$_maxWorkerNameLength) . " " . \str_pad(0, 16) . " 0\n", + \FILE_APPEND); + } + } + \file_put_contents(static::$_statisticsFile, + "----------------------------------------------PROCESS STATUS---------------------------------------------------\n", + \FILE_APPEND); + \file_put_contents(static::$_statisticsFile, + "pid\tmemory " . \str_pad('listening', static::$_maxSocketNameLength) . " " . \str_pad('worker_name', + static::$_maxWorkerNameLength) . " connections " . \str_pad('send_fail', 9) . " " + . \str_pad('timers', 8) . \str_pad('total_request', 13) ." qps status\n", \FILE_APPEND); + + \chmod(static::$_statisticsFile, 0722); + + foreach (static::getAllWorkerPids() as $worker_pid) { + \posix_kill($worker_pid, \SIGIOT); + } + return; + } + + // For child processes. + \gc_collect_cycles(); + if (\function_exists('gc_mem_caches')) { + \gc_mem_caches(); + } + \reset(static::$_workers); + /** @var \Workerman\Worker $worker */ + $worker = current(static::$_workers); + $worker_status_str = \posix_getpid() . "\t" . \str_pad(round(memory_get_usage(false) / (1024 * 1024), 2) . "M", 7) + . " " . \str_pad($worker->getSocketName(), static::$_maxSocketNameLength) . " " + . \str_pad(($worker->name === $worker->getSocketName() ? 'none' : $worker->name), static::$_maxWorkerNameLength) + . " "; + $worker_status_str .= \str_pad(ConnectionInterface::$statistics['connection_count'], 11) + . " " . \str_pad(ConnectionInterface::$statistics['send_fail'], 9) + . " " . \str_pad(static::$globalEvent->getTimerCount(), 7) + . " " . \str_pad(ConnectionInterface::$statistics['total_request'], 13) . "\n"; + \file_put_contents(static::$_statisticsFile, $worker_status_str, \FILE_APPEND); + } + + /** + * Write statistics data to disk. + * + * @return void + */ + protected static function writeConnectionsStatisticsToStatusFile() + { + // For master process. + if (static::$_masterPid === \posix_getpid()) { + \file_put_contents(static::$_statisticsFile, "--------------------------------------------------------------------- WORKERMAN CONNECTION STATUS --------------------------------------------------------------------------------\n", \FILE_APPEND); + \file_put_contents(static::$_statisticsFile, "PID Worker CID Trans Protocol ipv4 ipv6 Recv-Q Send-Q Bytes-R Bytes-W Status Local Address Foreign Address\n", \FILE_APPEND); + \chmod(static::$_statisticsFile, 0722); + foreach (static::getAllWorkerPids() as $worker_pid) { + \posix_kill($worker_pid, \SIGIO); + } + return; + } + + // For child processes. + $bytes_format = function($bytes) + { + if($bytes > 1024*1024*1024*1024) { + return round($bytes/(1024*1024*1024*1024), 1)."TB"; + } + if($bytes > 1024*1024*1024) { + return round($bytes/(1024*1024*1024), 1)."GB"; + } + if($bytes > 1024*1024) { + return round($bytes/(1024*1024), 1)."MB"; + } + if($bytes > 1024) { + return round($bytes/(1024), 1)."KB"; + } + return $bytes."B"; + }; + + $pid = \posix_getpid(); + $str = ''; + \reset(static::$_workers); + $current_worker = current(static::$_workers); + $default_worker_name = $current_worker->name; + + /** @var \Workerman\Worker $worker */ + foreach(TcpConnection::$connections as $connection) { + /** @var \Workerman\Connection\TcpConnection $connection */ + $transport = $connection->transport; + $ipv4 = $connection->isIpV4() ? ' 1' : ' 0'; + $ipv6 = $connection->isIpV6() ? ' 1' : ' 0'; + $recv_q = $bytes_format($connection->getRecvBufferQueueSize()); + $send_q = $bytes_format($connection->getSendBufferQueueSize()); + $local_address = \trim($connection->getLocalAddress()); + $remote_address = \trim($connection->getRemoteAddress()); + $state = $connection->getStatus(false); + $bytes_read = $bytes_format($connection->bytesRead); + $bytes_written = $bytes_format($connection->bytesWritten); + $id = $connection->id; + $protocol = $connection->protocol ? $connection->protocol : $connection->transport; + $pos = \strrpos($protocol, '\\'); + if ($pos) { + $protocol = \substr($protocol, $pos+1); + } + if (\strlen($protocol) > 15) { + $protocol = \substr($protocol, 0, 13) . '..'; + } + $worker_name = isset($connection->worker) ? $connection->worker->name : $default_worker_name; + if (\strlen($worker_name) > 14) { + $worker_name = \substr($worker_name, 0, 12) . '..'; + } + $str .= \str_pad($pid, 9) . \str_pad($worker_name, 16) . \str_pad($id, 10) . \str_pad($transport, 8) + . \str_pad($protocol, 16) . \str_pad($ipv4, 7) . \str_pad($ipv6, 7) . \str_pad($recv_q, 13) + . \str_pad($send_q, 13) . \str_pad($bytes_read, 13) . \str_pad($bytes_written, 13) . ' ' + . \str_pad($state, 14) . ' ' . \str_pad($local_address, 22) . ' ' . \str_pad($remote_address, 22) ."\n"; + } + if ($str) { + \file_put_contents(static::$_statisticsFile, $str, \FILE_APPEND); + } + } + + /** + * Check errors when current process exited. + * + * @return void + */ + public static function checkErrors() + { + if (static::STATUS_SHUTDOWN !== static::$_status) { + $error_msg = static::$_OS === \OS_TYPE_LINUX ? 'Worker['. \posix_getpid() .'] process terminated' : 'Worker process terminated'; + $errors = error_get_last(); + if ($errors && ($errors['type'] === \E_ERROR || + $errors['type'] === \E_PARSE || + $errors['type'] === \E_CORE_ERROR || + $errors['type'] === \E_COMPILE_ERROR || + $errors['type'] === \E_RECOVERABLE_ERROR) + ) { + $error_msg .= ' with ERROR: ' . static::getErrorType($errors['type']) . " \"{$errors['message']} in {$errors['file']} on line {$errors['line']}\""; + } + static::log($error_msg); + } + } + + /** + * Get error message by error code. + * + * @param integer $type + * @return string + */ + protected static function getErrorType($type) + { + if(isset(self::$_errorType[$type])) { + return self::$_errorType[$type]; + } + + return ''; + } + + /** + * Log. + * + * @param string $msg + * @return void + */ + public static function log($msg) + { + $msg = $msg . "\n"; + if (!static::$daemonize) { + static::safeEcho($msg); + } + \file_put_contents((string)static::$logFile, \date('Y-m-d H:i:s') . ' ' . 'pid:' + . (static::$_OS === \OS_TYPE_LINUX ? \posix_getpid() : 1) . ' ' . $msg, \FILE_APPEND | \LOCK_EX); + } + + /** + * Safe Echo. + * @param string $msg + * @param bool $decorated + * @return bool + */ + public static function safeEcho($msg, $decorated = false) + { + $stream = static::outputStream(); + if (!$stream) { + return false; + } + if (!$decorated) { + $line = $white = $green = $end = ''; + if (static::$_outputDecorated) { + $line = "\033[1A\n\033[K"; + $white = "\033[47;30m"; + $green = "\033[32;40m"; + $end = "\033[0m"; + } + $msg = \str_replace(array('', '', ''), array($line, $white, $green), $msg); + $msg = \str_replace(array('', '', ''), $end, $msg); + } elseif (!static::$_outputDecorated) { + return false; + } + set_error_handler(function(){}); + if (!feof($stream)) { + fwrite($stream, $msg); + fflush($stream); + } + restore_error_handler(); + return true; + } + + /** + * @param resource|null $stream + * @return bool|resource + */ + private static function outputStream($stream = null) + { + if (!$stream) { + $stream = static::$_outputStream ? static::$_outputStream : \STDOUT; + } + if (!$stream || !\is_resource($stream) || 'stream' !== \get_resource_type($stream)) { + return false; + } + $stat = \fstat($stream); + if (!$stat) { + return false; + } + if (($stat['mode'] & 0170000) === 0100000) { + // file + static::$_outputDecorated = false; + } else { + static::$_outputDecorated = + static::$_OS === \OS_TYPE_LINUX && + \function_exists('posix_isatty') && + \posix_isatty($stream); + } + return static::$_outputStream = $stream; + } + + /** + * Construct. + * + * @param string $socket_name + * @param array $context_option + */ + public function __construct($socket_name = '', array $context_option = array()) + { + // Save all worker instances. + $this->workerId = \spl_object_hash($this); + static::$_workers[$this->workerId] = $this; + static::$_pidMap[$this->workerId] = array(); + + // Get autoload root path. + $backtrace = \debug_backtrace(); + $this->_autoloadRootPath = \dirname($backtrace[0]['file']); + Autoloader::setRootPath($this->_autoloadRootPath); + + // Context for socket. + if ($socket_name) { + $this->_socketName = $socket_name; + if (!isset($context_option['socket']['backlog'])) { + $context_option['socket']['backlog'] = static::DEFAULT_BACKLOG; + } + $this->_context = \stream_context_create($context_option); + } + + // Turn reusePort on. + /*if (static::$_OS === \OS_TYPE_LINUX // if linux + && \version_compare(\PHP_VERSION,'7.0.0', 'ge') // if php >= 7.0.0 + && \version_compare(php_uname('r'), '3.9', 'ge') // if kernel >=3.9 + && \strtolower(\php_uname('s')) !== 'darwin' // if not Mac OS + && strpos($socket_name,'unix') !== 0) { // if not unix socket + + $this->reusePort = true; + }*/ + } + + + /** + * Listen. + * + * @throws Exception + */ + public function listen() + { + if (!$this->_socketName) { + return; + } + + // Autoload. + Autoloader::setRootPath($this->_autoloadRootPath); + + if (!$this->_mainSocket) { + + $local_socket = $this->parseSocketAddress(); + + // Flag. + $flags = $this->transport === 'udp' ? \STREAM_SERVER_BIND : \STREAM_SERVER_BIND | \STREAM_SERVER_LISTEN; + $errno = 0; + $errmsg = ''; + // SO_REUSEPORT. + if ($this->reusePort) { + \stream_context_set_option($this->_context, 'socket', 'so_reuseport', 1); + } + + // Create an Internet or Unix domain server socket. + $this->_mainSocket = \stream_socket_server($local_socket, $errno, $errmsg, $flags, $this->_context); + if (!$this->_mainSocket) { + throw new Exception($errmsg); + } + + if ($this->transport === 'ssl') { + \stream_socket_enable_crypto($this->_mainSocket, false); + } elseif ($this->transport === 'unix') { + $socket_file = \substr($local_socket, 7); + if ($this->user) { + \chown($socket_file, $this->user); + } + if ($this->group) { + \chgrp($socket_file, $this->group); + } + } + + // Try to open keepalive for tcp and disable Nagle algorithm. + if (\function_exists('socket_import_stream') && static::$_builtinTransports[$this->transport] === 'tcp') { + \set_error_handler(function(){}); + $socket = \socket_import_stream($this->_mainSocket); + \socket_set_option($socket, \SOL_SOCKET, \SO_KEEPALIVE, 1); + \socket_set_option($socket, \SOL_TCP, \TCP_NODELAY, 1); + \restore_error_handler(); + } + + // Non blocking. + \stream_set_blocking($this->_mainSocket, false); + } + + $this->resumeAccept(); + } + + /** + * Unlisten. + * + * @return void + */ + public function unlisten() { + $this->pauseAccept(); + if ($this->_mainSocket) { + \set_error_handler(function(){}); + \fclose($this->_mainSocket); + \restore_error_handler(); + $this->_mainSocket = null; + } + } + + /** + * Parse local socket address. + * + * @throws Exception + */ + protected function parseSocketAddress() { + if (!$this->_socketName) { + return; + } + // Get the application layer communication protocol and listening address. + list($scheme, $address) = \explode(':', $this->_socketName, 2); + // Check application layer protocol class. + if (!isset(static::$_builtinTransports[$scheme])) { + $scheme = \ucfirst($scheme); + $this->protocol = \substr($scheme,0,1)==='\\' ? $scheme : 'Protocols\\' . $scheme; + if (!\class_exists($this->protocol)) { + $this->protocol = "Workerman\\Protocols\\$scheme"; + if (!\class_exists($this->protocol)) { + throw new Exception("class \\Protocols\\$scheme not exist"); + } + } + + if (!isset(static::$_builtinTransports[$this->transport])) { + throw new Exception('Bad worker->transport ' . \var_export($this->transport, true)); + } + } else { + $this->transport = $scheme; + } + //local socket + return static::$_builtinTransports[$this->transport] . ":" . $address; + } + + /** + * Pause accept new connections. + * + * @return void + */ + public function pauseAccept() + { + if (static::$globalEvent && false === $this->_pauseAccept && $this->_mainSocket) { + static::$globalEvent->del($this->_mainSocket, EventInterface::EV_READ); + $this->_pauseAccept = true; + } + } + + /** + * Resume accept new connections. + * + * @return void + */ + public function resumeAccept() + { + // Register a listener to be notified when server socket is ready to read. + if (static::$globalEvent && true === $this->_pauseAccept && $this->_mainSocket) { + if ($this->transport !== 'udp') { + static::$globalEvent->add($this->_mainSocket, EventInterface::EV_READ, array($this, 'acceptConnection')); + } else { + static::$globalEvent->add($this->_mainSocket, EventInterface::EV_READ, array($this, 'acceptUdpConnection')); + } + $this->_pauseAccept = false; + } + } + + /** + * Get socket name. + * + * @return string + */ + public function getSocketName() + { + return $this->_socketName ? \lcfirst($this->_socketName) : 'none'; + } + + /** + * Run worker instance. + * + * @return void + * @throws Exception + */ + public function run() + { + $this->listen(); + + // Try to emit onWorkerStart callback. + if ($this->onWorkerStart) { + try { + \call_user_func($this->onWorkerStart, $this); + } catch (\Exception $e) { + // Avoid rapid infinite loop exit. + sleep(1); + static::stopAll(250, $e); + } catch (\Error $e) { + // Avoid rapid infinite loop exit. + sleep(1); + static::stopAll(250, $e); + } + } + } + + /** + * Stop current worker instance. + * + * @return void + */ + public function stop() + { + // Try to emit onWorkerStop callback. + if ($this->onWorkerStop) { + try { + \call_user_func($this->onWorkerStop, $this); + } catch (\Exception $e) { + static::stopAll(250, $e); + } catch (\Error $e) { + static::stopAll(250, $e); + } + } + // Remove listener for server socket. + $this->unlisten(); + // Close all connections for the worker. + if (!static::$_gracefulStop) { + foreach ($this->connections as $connection) { + $connection->close(); + } + } + // Remove worker. + foreach(static::$_workers as $key => $one_worker) { + if ($one_worker->workerId === $this->workerId) { + unset(static::$_workers[$key]); + } + } + + // Clear callback. + $this->onMessage = $this->onClose = $this->onError = $this->onBufferDrain = $this->onBufferFull = null; + } + + /** + * Accept a connection. + * + * @param resource $socket + * @return void + */ + public function acceptConnection($socket) + { + // Accept a connection on server socket. + \set_error_handler(function(){}); + $new_socket = \stream_socket_accept($socket, 0, $remote_address); + \restore_error_handler(); + + // Thundering herd. + if (!$new_socket) { + return; + } + + // TcpConnection. + $connection = new TcpConnection($new_socket, $remote_address); + $this->connections[$connection->id] = $connection; + $connection->worker = $this; + $connection->protocol = $this->protocol; + $connection->transport = $this->transport; + $connection->onMessage = $this->onMessage; + $connection->onClose = $this->onClose; + $connection->onError = $this->onError; + $connection->onBufferDrain = $this->onBufferDrain; + $connection->onBufferFull = $this->onBufferFull; + + // Try to emit onConnect callback. + if ($this->onConnect) { + try { + \call_user_func($this->onConnect, $connection); + } catch (\Exception $e) { + static::stopAll(250, $e); + } catch (\Error $e) { + static::stopAll(250, $e); + } + } + } + + /** + * For udp package. + * + * @param resource $socket + * @return bool + */ + public function acceptUdpConnection($socket) + { + \set_error_handler(function(){}); + $recv_buffer = \stream_socket_recvfrom($socket, static::MAX_UDP_PACKAGE_SIZE, 0, $remote_address); + \restore_error_handler(); + if (false === $recv_buffer || empty($remote_address)) { + return false; + } + // UdpConnection. + $connection = new UdpConnection($socket, $remote_address); + $connection->protocol = $this->protocol; + if ($this->onMessage) { + try { + if ($this->protocol !== null) { + /** @var \Workerman\Protocols\ProtocolInterface $parser */ + $parser = $this->protocol; + if ($parser && \method_exists($parser, 'input')) { + while ($recv_buffer !== '') { + $len = $parser::input($recv_buffer, $connection); + if ($len === 0) + return true; + $package = \substr($recv_buffer, 0, $len); + $recv_buffer = \substr($recv_buffer, $len); + $data = $parser::decode($package, $connection); + if ($data === false) + continue; + \call_user_func($this->onMessage, $connection, $data); + } + } else { + $data = $parser::decode($recv_buffer, $connection); + // Discard bad packets. + if ($data === false) + return true; + \call_user_func($this->onMessage, $connection, $data); + } + } else { + \call_user_func($this->onMessage, $connection, $recv_buffer); + } + ++ConnectionInterface::$statistics['total_request']; + } catch (\Exception $e) { + static::stopAll(250, $e); + } catch (\Error $e) { + static::stopAll(250, $e); + } + } + return true; + } + + /** + * Check master process is alive + * + * @param int $master_pid + * @return bool + */ + protected static function checkMasterIsAlive($master_pid) + { + if (empty($master_pid)) { + return false; + } + + $master_is_alive = $master_pid && \posix_kill((int) $master_pid, 0) && \posix_getpid() !== $master_pid; + if (!$master_is_alive) { + return false; + } + + $cmdline = "/proc/{$master_pid}/cmdline"; + if (!is_readable($cmdline) || empty(static::$processTitle)) { + return true; + } + + $content = file_get_contents($cmdline); + if (empty($content)) { + return true; + } + + return stripos($content, static::$processTitle) !== false || stripos($content, 'php') !== false; + } +} diff --git a/vendor/workerman/workerman/composer.json b/vendor/workerman/workerman/composer.json new file mode 100644 index 0000000..b9897b1 --- /dev/null +++ b/vendor/workerman/workerman/composer.json @@ -0,0 +1,38 @@ +{ + "name": "workerman/workerman", + "type": "library", + "keywords": [ + "event-loop", + "asynchronous" + ], + "homepage": "http://www.workerman.net", + "license": "MIT", + "description": "An asynchronous event driven PHP framework for easily building fast, scalable network applications.", + "authors": [ + { + "name": "walkor", + "email": "walkor@workerman.net", + "homepage": "http://www.workerman.net", + "role": "Developer" + } + ], + "support": { + "email": "walkor@workerman.net", + "issues": "https://github.com/walkor/workerman/issues", + "forum": "http://wenda.workerman.net/", + "wiki": "http://doc.workerman.net/", + "source": "https://github.com/walkor/workerman" + }, + "require": { + "php": ">=8.0" + }, + "suggest": { + "ext-event": "For better performance. " + }, + "autoload": { + "psr-4": { + "Workerman\\": "./" + } + }, + "minimum-stability": "dev" +}

    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≫X`E_65+|hAWO+YK<{`9NgK#qbq{y{_ z9S0qU6y$)nUO&eF@Q3$khMFTKpJ6zlUM|zDOq2FC(XfTUu(`308x#=;5^YJ0B=OqG%~K`B#*qH)E*MQwS@f{Wks~FF2%J)rVktoAK6ST5 ztP_Ooqa2M(k?xvd`J*oF+bIp#A&LyM=gxEKzx^i!Z@fsq|BxUZ;)a{pK^GxR#*ol4 zsZA-DDO>N-U`E`61;J&VdiA;uDB*;FsU@$sD!Li!l# zp{vtu_lGR~^FQGEx4w!za}hagbK>R${4f0yvR=Zb9;t~D?G8dp5=Y{A0;yE?jXN>} z?P;3v&2^ehoMr@k0h<81Ui^6QPsljrS=LUY4Psz0N}(!Ms#S+@d5yuf%aj)`;2k=K zExM$GWu)Unr%$r{5a!Mx+*x$c0TrPVA8SfkA9M^!oQ*%y$-H_p)3csT!~%A#ah-vl zG&45rDEcMW*CwX{Njo-1$dho{+>v30gL&a~(xVpuFJlb}ne|72XJX{aHR|bILS{*? zUB!8Hld4D%(j_$!VQUqFI3@8S08PQsn7E6UJ~0xfRG_{vk6mA9c<(19iyu*{P1A3; z8Q!@?y}CfjSLjLsRj)EEmvQG$K)FU#uhMw-8N&Owx&E)d!+e}lqC&efq$E>jY6U7m z3El4@&_u4tg4nGnw+RlapUnlPQ3O83m4yj>H@Y{Co-8Vt`-_c2uLm7u+937 zzruU?F*D6MM4?Q0|31Sg!A+MbI5F5EFeyu#5{V4dHe{|53!fuqu^-7<|AqzFuMS?Ic%pxY8_Ogj*-)- z?RymE0RPY-BUmj*E`nXhv*5UqfiU{*@a%WI0D0Ys1SQ8eBvaw{eZ>0msx%M5hpHu0h_pZ z)j3RRNlb!uBvPwv?9>J$Wac@RDaK@yhgMpIqtIcOv&Ro}_V6+fm+o`)g%hYWAx>g? zJ%einNo*;V0`#EIu)RUCK7-MQK@>C4eTtP5FC06?%H}G|CdM-2}} z8?bqYARHi)6gzAoZHn-HWCT$fk_wIID?HyJj)w>&oqmT8Z+t+d;4;&ghJJ+Wf^Y&X zZWbJ+6a+r9;1TJNUZ=;>$|8>+JY=iCO{fM44;s}bm7oSFlnOY!(4=0jF&uR0J$}IP zUPv_z5k_N_MA`(IW_)lXEh5hJ+>MpU5uM9uq{)rYobILSN16TF@9|*JVdd(NXqJm8 zuY}PlBoZSXtVnT$pBtwNqkJ?HYZXTN#L^>}D$;oGL;6X9%76Jq=nq(U{mY2I_hpPo zS-*FkxBuqPDXlE?#eeTNkjLjSj>Z@d5osK$v(H_MOania6Z2J)&sQ?@x|s|JXM?-U zW$i531exkgA;vnm+X*%ZD9%g~3=@*2d-Qv4{FA5fYsawNb#!GKH|}9J?-Q5L5tK?G z5{y+y9bnQF;UownGwyvJ5I7#xWKJ!x`8YCG*2$GSMoaQG&Bh0*L5wv06EZ48#-E0a z)0=j>$YU4am0!VlO|(`xXposSrK1W&t2gLh|1s5~MtMFqyhG931QetxjuTKXCq&oZ z0VlvaG!KD?w=e^(khD;t==KnfAa)e~p)&D@57A2-=x=@t@6ipWPE0{!h&LYL%unG| zQ`G8qHqtg5xG%hdez;Ei<_(I^zl8sDze!x!QmsJ0Hy|;RL9B5-MZHwu z-%cX;ig=Q>qY=lIWCDP(n%xNsoB(D#=IhQXwW?Ym?|l z1czN5>!E@ss#?VcGthStx=msedV}pOA=&Yx1fohY(iF=cLi#Vz`vAs%Ry5;%hxw1SetIu*3>v95zt3~=-ueh?uV(@;w>)*=lE;bCnS zJev8wL{4|f-oMP*oxf`~&2v&HbS_6b@*IyaUp8lIjFCubu*4YapoEK5BDW>;EQDiK zm~2+uoh5WMhmYp_Ne7wOT_tzi37c!jO>)3Rrm{B9*D{*i_hH0Qx!w79G+U3rx|vXU z8}aBTsVH{${#f35+}9m&oJX?dU7rBeOu86HKzsKy8Tl#4b;eb91M|stcAoT}8{Y?b zpRj*W9}fII36xLvZ*PUC1NOa!$dmf?iQ7*wMAYy9*5CX6Nq+NAprhEmz3Un$6<3yR5Y+yGoi0uO-9}|1H!@`2x1Do4LzjpM2KO?>b-=;%R^Rf4IzY*<1+|ToY^{W{*(Wj`kS9aw;rO0+sJ+&8O0eN zR5{>!MDdX2?JasH!pclRBQ=&ViWo+HHd`A+QI~~g89(hK`r9yQVZ$yW3BeQSxX;qs z11{fqmn+xaM{xKUiR0nB0YW$kt+P*FI^?oDpfdS3Ar;n9I~-N15Yo$*$Q>7Ey2&%J3Q z?PY-_wJDK~aUBOIaFNj(a(e@9ig?WiiL}JBjM5sn_ZX#olwZc+kcAAJEZEpW<}shl z(mW>0jmMEJb|RD06WZo02-%7oHqFX)lF31)X=V(h3FruG60A*08`H?od=+)oAi;x(%sQ>^V07*naRHJ-ElF!gEjpbQGgq z2X*K$lpE-74E57^U;ka$T0`8ufto);+&GL;F3Hk;ig6!TrNrGfUbT!4d_=WM;lw%8 zQkA|dsh>N|aCM87@4tucwi(14M+HPlAJ=!7E|%F^-{5hpM@Tl#mI?u9&z<4i`LitD zdq7V}F8<=LQaO7OcV+>C03$Q1gi;cuM7b`5&V9CTeFNTqpJKaDpf%Fpofq%IWErLc%;5`|%6XJq$>}4x zzf6wkBL*c!{%#tqO%S$&NPAdJmYG>(--;A283A#Cuwnl0N=A~WmMm|oH#G)|W6OPao0G?xsB7&+JQ}%p z!%mRt$m_lv2xoz)BW=6!Z-R0ocI}f>YWDm$xgxN)Z{zFjDVqTAqdEtB|33w2pZIs* zy&QNBJJ)_f+337|Z5`;1-wXJ61MuB#JRP*}@6&;DkfRD25POQ5a==9=z~6!A+1>RH z_z9l=*q+}0&+;2JviIMK@_kS3?lbRv_^3VPfi{&5u?tefr@JYii@n9RNHNt67Z_ZPyRWJflEQzsMR6dzp zmXtE13J3{8VaG&Wi?#;O@epCc#S166aBhZMcdj#g;S8>0@s+@rC4AqZ(^{icbQp#a z@t{SeQehY?l$3Bqb`qH5xU!FiMFQ+nk!8;oQ8# zOu?dbL>eco-H%zl+h%1k!GxBoQdlV%^oLL_^SS@-zhUaFUnJRD!t^(haSsz4jB!w& zgHQr346g6t35ibo#9E?smVq!yBOF&EYCa#Y-bP)E_{{uK>T!x}_n}l}Sg!G?v&_Af zWgcyN}5x3YSjvBTN@-viZ5L%#WJ<(G?hw)!Rj*U`Wg!+rV$OYm4GPDCUXOr zD5EVQ5y~=}l#wEnn9OD1Kwyo`K)%U!%GChT?NT`YDhprz9oGKE|BM~BsFkNktjd<( zbDDvxB*OQ({H-7I_8)zhi@)$DLKIL29BXL2@nudOK8Z*ZjPKEta|~`>#ooEi?Aaq6 zeeTzh1wmvIl!Zhm7$W=tjCF{U7*{wbCl4O8d7zoik`>uB1)V7h36p}9Ss%P>>TSTFp_8x zVFE$n+;ec^B_dJ62uWZRT7woAWgMcr?-6aashzz*91ZDiFH=c+NI*%6#lZ>(o%GO7 z8CfkeSXp6s?E$hB(D=*?^gezYG3ZdAEzw!fgT zEa)VLUWz{dI%aB{0AH+itJ z!u|CXUjL1MfI51PVWCRV^Fc|{WQgNuLDo`965SyaJoG%nMiYNy8MSzuAQ@nFgj*;hibaxY9aEbldhaK6R=`SEEx3IQ^XjX~a4^a!#i0U-jokJF9 z05_XSgw12wZ9Z$6OpY~IX2C@0w1-anU^6NnD#cnCYXnk4rs1A@;28x|3#3hRg&7B_ z6h=ynQ3#vnNtrUxI|jrs4(J>MR%5g8c4GG5K?hjFEnme~s3B+wqwaBSYSN$_p*d!4+F&9TNL^=+~bllMHyi_f3J2)ysD zzsm?9e^UF`HFnqCx$S+%z@EN5`Su`#Z`Exvb{xqB0eSY+#A5pIrSz6rS!^_wB`mg;0hmSTX6pDF( zoX4QwCQVXwYB+WJI4{0<0pEj-^)0^py`M0QQhxh)ev?|QLbtWT)`O3!1unzp2~tl{ zn>~!<6iL$rtt8fFOZC~GK*J~y7>UTU*@8t1g%%2(FZKGK;H}qR;Q#o8zo46xI5$6y z4%bPC8fyy##X4?a@RXswwN9<*;R>JBBotjmk`75zO>^oH#kn_#tm2aE(+Yb;;gBSe zY;`;Iw>O9$-{-kG2!?G2%N+)5J=Px%NS6$5-{Lr6+>BpoBZKt|eC9v@Z4SNlOX&U@ zbhl9bHcn~~Qej*`N;DvBigjE{%_`GoK%wCvY>Bni0gfY3WLoNJ(&yfzd(0$;bCn8i zMY5c1aesM}?bz^mV}(Mw$imDaq|IbTJ4sBbK0~uSOLKM>zu6#8BHC+@D6DUCNJ2Rt zB3ms)FU-FHl`Rbm5Hd?9g3yrU>JZAwCLxgpd75#;pE!HZ9Y2p#*h07gjTgT{|G~#> ze*aIvi%AP!CT%Ds`!Sl}$4nyw! z;s3+>pZ>qpw>MdyZF2Ir|3m6u|2=%Cij5nqbl-m!C{Y zq8!Y;_RQ5O@y4&jt%UH0VKy>t^0|6Gb?+8Wako z>r2q>;yRf}el%@ZX)!_|r30yhQa&*XJ@X8ra1>!(90la6O@S&h=(SnD{1c{?L>Pnr z;2i>~5yKuf9blw~lnK&v@k>S0FeF`FqqE*65Q4_p=U`xI_FIUTpM_^$#lPR?yr|K8 zbeGn*uQ5N^#?cAM>K3N%BTHq34R8~%!wr&~AK<_IS(4ry$=iR7`-}et-TE9s{|a6w zK5XErss*a+brI`#nMuTf|A6zEVX;okr=IM zo|z{aY~XHmDEkfz%~^`Ri%nDR-nhfj*WaZ0%q5sUir<(5$0bdZ(Ev@7YJ9gwy#5h` z8$W_OYt&+cH4^{qMa1!Q$ZiPo7o@I?egiwuegEznXyvx-|#P%NX}B77< zKiQMMx6Ts){HFlz@QDeSMkjs(;Qm=oed;+o0DT;9aga0oi49I{?>amIgnvdXKY10N zbn0ZAy9|r$-|?e=;=LSn50l15i&jm?)4eJ8J%MWN>sT4QQYo^5r)Xc01BeiRaHjMWL+Dm<@FrCecseGT99 z@jVaMbCD9FXvm{`kJ#GSW@fg@#TTAODMgZM;v}V1@+lUIe023T?RKA1sm$D51J6}# zY;5zrzkP?>x9)TD#0gHHIm)ZAJr4rz-+jz>tId_G9}{>*{_#KlkEqpaXr1uj=Ermw z-=REv1Z@Il40oh?ct#M~4T7!5L=SG$efWU;S8lMh_z>-f$ZC(s#w3YFCnlr*xGt~!`dgg& zhrfdiyNLA-WY|UzLj*3uRVcETMoO^B5Lxs&@zS$2;|jfGg^l$g#)Jr^>2$i3%0+@w zf%c%shf5D>zI2I}7xDh)B8A#f+Wi4@$B%Jnu1VMr>9o3Nt0`5goH%)bM&lU5(G0_F z+V`(Bv(;vyALB#`CQcxUP$REauE{LqNEAK~bQEN1#FYa&1BG}NX>!$;G}k0oPDbbO zEw;6SoLOM{=YNa--Md6uDf(JIy1I`w07*owp2?T@(p zhkrupy=&A80VjX&w^-`*@&3<$#uws2cK-b>r2D6sw|*Q?uanmUD@y+A6< zD3gh;A}q>tNIGk*{ot=@$PT5FAi4Ha)aE0+6BjY-2}(+I5@VAHn;3+asB(qj_7+vg zq43&yy1gNtw;wQDS41`?j3Y{C&a?I5b>z~!9QFD*3r&coP@OFp_7S3ou6W3x0^Jts z(fe?yjGUQ6J${6~e+S1ZoKk`I-CM8`Q<*B^R21DX#SNiw;Rtf>2qLJViv?`Zz}gC( z)qA}5_dbK)i~0V)eh0q>exPte&4n+%$+=7C_&0y_hg6C#&2pXg))rCVv(;&HjX`j8I(fe`UT>!$Kc^r;u}Aq)=%(d4SDJq>e4S@W1p?zP2AaY z_@^!q7|q$?HpE@b2R|lSS;uQM5yGL>+NPHdC^i%`3o{5+z%0jv>zlaqMGg@o{Vv67 z87i}co13^^fK#s_t5aClh3#$Z)+SPDyr@s|?eF3?50MU*>8w3K4O{ddKB6qjRL^}5 zgtudSTM)+P^p%{Bg~k{IVgU5P3{f_RmbvG67wF5KM_G__wt8xfK}d}dNe13UuKtwg zSh1+=JtvzUN9)vLJQt3n4M*U1V#*#*@s^R}KBJ`?cK=3-G5H)mQm7eu;Y~i-@4^Fn zpv0(yWcXnxiQ*(^-gzEl=xZkxV7${n-QZ$0zS8AA{Z9pkM5( zzw-z_xidc-V4uAHr)%p8p!~r712ES_*{(JxK>d?}`##{CckSO2_f#`3=o1Hu#eaota9sLQIXrdyqZ_7R^wOR$r_enKLIgO%PG zz#C$;NiaAVU1WM@j#j%v7!D|wig>=y*48?Uj~}tUJ-`}8t?n>ATOvs`tyV~sCN!sJ zc;?xY+`9D;p&%S2{O#Yo!}N5G_ul`2Mq`Sv|Ju*->~rUF97P-@T>ju1*FU~ZoM?`n zILVj3^fE!gN9&l)#XA)ACdGz>u|v*XdJXNRM7=Ixu$g2B$_jL1vFI$|Q7UY%mSZPW zcOVPCwNjB<2dz_F&+>&gF7dzo-{0catuiMMS%is^IK*)uWBOE!f`Sv!@Aa8&rf6$% zU5knnO7$vn*kkkkKcrZ#Q9k!7{=&03#Y41p4<{K=Q~`GCBHr|CG+s_Ae14IO!!B~z zr@g*K@74oY>!KG|Sh{i@+oP!APhT zY8;(AjPD1m#Vyk9ZS)84ab$Cg`Cf!f5~S;9USn%B&bO36k_B~Hkte`%vI%dLW5A}_ zz9z3nCXH$U6=G#SQ@U|nOl*kS>-hCU9Qxv~viN5YXvBt~RN}*rAMp0~KIRvH<>%O3 zYtiY%oH;*7Wnqr)<|6O>!9Qj8o7Xs}1O*kK|EK?rnuw@~GF~tPCZ*~2ukQW(;!@|<-S?^2YIwy0+Aq+Uo~9K?96oduslb{n!=n@UM8g4AC~T5uOZ(DdbdarN znKY-;Xs}Mkoo5I(&N9#%gG?pH3>hZvEP>e|z|KC4Xe~0h`b~mozk-@R48q`U-iOs& zh{7{y$HSyu7^e883c?ypw~I*!7#(AEgc1s;7+?pIbkHXV=17J^oJxb#DbfpvR2_pO z1SZu;qmfaHZ!M{@s9}gLm+&us7Fj!tP7OvHq_Iftqm!7$Yu~47HvvOy*rymIxN1n$ zx=PgDqBQ7(5=aZl$_BDfMimNp#*iqU8B+O;1&bK!U=}GF3z1FQdwCrn*^6$h3Rvc+7t~HARj%ZI9vlKAnipI z1}VaqsLB+D6K5C}JiM~R6n$i|NYdYC@%m3Fs)$r2;H9`pN*T-9Gl!VJw7`dNe;={l zC#ncyM-oZNFbSzOk8|WJU&U0WP{kt3bx4wkSSNUH9zWqI1e!tbW74&UhzD!98y4r) zFCypX=~Bj?ev#tr5zM=PPWS)&->KDR;P?yZnd6AkS=?WL1Cg#`|N0vglp%Qj6|C^+ zudTxSKg2s)qA+_Hw4~LGC@Y1Sog$q-j(f~Ub~cCxJ;IeGXm3$XHOhCP=HR;t$;Ly> z(Q^zoZzD@3DzAJA=k4!c{b9C}B|Mala+*svp$Q?d+GYm31!YsPL(;gHee?NTXLoJo zG!K)_tD`BhErLHpjKgMjj<=;zb!b6>lAiw`J!id~Tv+XMgnlhFU* z21Xy#$kRSLWB2{-wy{P-!j7pi#{Lscjt0Curac3j2n3qZGFE1*WrNF3w$%v<$jSD_ zC_8JOCRvWev$AUlsj^_ZJfIFo=HQ}_a!T32qF`#O!RqQV!N8}}Y0>F+2}6w_pi-^S zs8`TwAJ_MpJyb_v84h}s%03rfc!m$({|IB+7$dlM?*VVT{t7R>@;r{~Fzh94_j}yB zd53r2d53zv!I!`E1}DxO#&t5C>pLHRkKyt=9Inq2G>@YF25RmsqO(nuwsIO!HmF&V zX4L&uWE2XKX-->da}8b>D>FKPvI;F-5|d3VZX9#*%rqCzPw`-*MXgk%qBP~AKotU7 z?Jh|ysF#YwagX-qI@7Z=q-lx~2EDpMyu6H`c2J!@{nZ<+&7Hvy~qfjI5sxR9orl5i=O%G4`mdV>M76p%QIQlm<} zSZ8^0k%tfOQK{9Ko}FcCHj}06gqsW=KVa&;8`Rq^=9I)u6NKY{DT3#NaS$4;G9WUb zg;JSkN~NQhb4L@|l7VweM)z`aX+_b`JZl9Bj*Ar~bhm|d9cmXoL-)?l5#IQKc)iDa zKl*_7md3`0&So2Jq13FS>OPy_`vHf3c%2i0PZ1Z-^&n1ggp1=FNJE71&`3B7x8e?(}J*)knlvzk&ba zXQ5dowoPPvo5IEtcKR^J4{+)Y%%FwocTtW&ieQ`(RSHOYJ$&CIwVKF;_*4+>Ay$|y z>!SjsBu!IJ>H=z~cnx2Oki;b_w(9=Lim8 zL~plAF8?+9$`4Ssk5Cp91qf3>uXahVKg2(C3Gv`D^tWJpnRsy>>i6-E&e6R&z{kOR z?FG8GZ)2^Zx^RTji?3s<$4EUFH>hFM6i(1&u=J4IKYf?mKVCxUlzKHl8t^>H_8_G5 zNB^3|u#2oKgf;Z_kn&WM*an>c($^>*Iz_A`g;D`6vV0w$>*IMoLRfShlEy=l#g7Po z^j*rKAUJ*;-xKuWknkt}0{P8hgno?v?!UyAYZQ`m=%i14;t(i- z=yyo2-h|bMxbqD-JjZ6I2OnG|SPOBEPC=!K)D{tH%-tneUdNv)BTE6&6;PgsG=#w> z?sSde`3tx|xQ<`0G3-YaiYemam(j9GibaVeTj7->@3zWwlVnsl0qAr{67`W7MgovK zq75TpYC+`O?K~Nh6$(4b*i4qdN!u8tn+4MvnI|ZkgjJJ?ieQJnGIE#g)D#o*@3?Go zRoogTr~iF$!shT~7udDCHZvTM0rm`gmT@=LpFatcCvvn4BDqe!>Fy@{TPGs zT|j;!z;suj>H#2kUy$qMz3n-7FW7(Tw%v7Dh`n|8b!5EtX*}`=d*h!5#F=;&d+YAm zeu7cr?7SJD0+jD<@bBz}AGLFE8~cH+<*BlZd)t@<;hzZBpT2Lg6OrC~0Q^291fKpt zMknn3LO+c`v=_AR_10TP8CEB|G5U;Q^hib?;T;&BHJ<_P(RHkx0PW-UBqI&mQ6{&1 zZ^z@G^Xs#C1x1#PE_c&A5|l+4gJV-LAx3sURGFHpvcA4dyWOT*E;BzjP2A8}BPo~5 zl*=AT8X-_vBk8mTEHAIq?Zm9Eu2U$Kc=r4}hZY)4&y-M(WMy%kPCKHtJ>dHFn{2n% zc<%X=eD2N9QE!w1Lu+%9u(w5TYXwg_B*MYSGKY?x1EG~M7*+V!H(J;z%`K`uL5-DBMIH5XKXJ{qTz|9-i=xuJ%oSo(L#TQYv z8qG$H@bP`jJMVGy{vz|e2p@se7UOzQorX#U>3R?)FpR*)I~vI*$rNO4{_Jz9#_`g# z%t3ytvv(GQ6$Yz7Iu0b6yr<^~WWR@~R+)YME3B`svU2q@t<{(#$7gBGOw<1H`zR?; zr2-84BzGP$v!w}2io_KNo#tu9i)fqV!JUT0b5Sooi}XuK$7P_m`QVTLoM%4sGUwlX zi_@37IDtzkNf5&#{Z>L>Z!$om+buS(EFzAsA-#Z7qmDN_MW@w4SxLEG!z(o)j3G`T z4l$;KRhhQC)hQy?Xst83Q0t)wAxas9+(w59<+)kn?KQ%W-l1^z0?za_9TOs2Yj|!0 zuU$=AW32P+Xa&1fhmsuIsgD5 z07*naR2AH66Q+-nY%QV6Qw-NvNSD?rm1an`EJ3OW))Mrq=diDSnbesj{oY@(`RyN2 zdUlJXbPc~YL#@=rRu5yl_rRnWTSNwB@V!%n$$?z{)rSMgTcxaW=| z+iheD=J6xkPKTN4D&EW-wpKxxD_AdJs6C|P;|&LV?=Sv_jjL;X{`3*2>tQffF)Wu zM!(g9>$jP8EzV3Ge9Ped>%>-4ymX23iC54;iFo@i>AT;-UtC3=ID-3?uVd~##JP7J ze1VN3Yyz?}4OqOZKR_J5h%tuFts8i+{u0UbY0|_Hs3gm~kgMcCE_XbFPX+`D=q@6S zvawqzv=K-vF=W!OYBZPH?48Ojda@j1yfY4>9Zk4)?1kSsxHB8?;?L)Svtz0Z?DTIEXzvO5 z+*f~BpLYZOUEqG#eX*zA1Fm(DVKBa>y}*C(u}=enC)}KN-@$$LKMi2t2gW~5y?tE% zgZnF<0@~p~s?1YB`GMf~2~Xjmx?>=HK>fXSav+<>i?EBQzV`yV%ASPKN1%TM`2mj?Kjy^o!(4jx6}H#9m^h|7 zQ_qs>Bq>%|99bYrVysLvFag=qs615%)jB+E0G>+}kNCeMJ0KsgFhfeQP)c#MitUk=8-@gj4^zAN0zdlJcNh*N$IqTe7JN3B*Kj;Vxl+coyYyF9skjD(L713iOsi4| zt+J|g?_%W}2^;ePg z650+K4BGUsT&2-G!f+5F!-TB|4-w^ntzM5}smjdUA*z0n(%d}VjST|N!7mrFR%6^z zN^^^d!hAxP*+gI?(lo@F2r0m8%o8m?rhn@;)fZo(*qFh#HOb}%Ua^RkD$7Dk1L^tb zZkx{PDxM>7RsNm}DAs2&E00N*AE66dgq;rMARroaNCqt`vs0N=y-smzRdj0|QJ+IT z{}rsPlG@B^BC~)ToVd$yV}pXVxGN6{w?mwM7rzXqS;bsWVAvp8qDxseW!+D4REk)rpxqkQ zJxtvbM2{cQ-WDiIXk)3(6;UR|Zf#&Ux9Em_g0PQGHHBuCScg~b6N*5v{g{sEv2^0~}(?Gjo_? zK;KMbh90$r)3}bM=J~iwO9W?5AzekZwS;=GM#)ww{QZBQ^zc!(Z!EER`(50X`!r0C zxnqam{7KrwF3IwJW{u6{Jsk}Nh4mavqOneqewdP^5i_SxBP*xr4FyIGDOxZ8cI9|V zx7cjjvH3Txdzf?!MUqJ@T9u0i?0`3m&GVq-$-YG9>6X@vbBGBeK#|365CINIXB^0y z<$}m(z_EvV0+5brtCJvhHwd$1wU&whM%Z19IO(J5d<4|@Vgn}58(rVz?ZZx@C3fbl zu`10Z=YOIP2T@{1*W3HwB+{^>V9>q5dO!Fc89QR4g^^hnY!%5j;Vo}=Ar z(eAVfiUFQiCrMHUgNSy!$MVuT(J-c7YmlZXuH#azlqm!?7MGT}dGjWo=Q9Y~45L1W z<`47i^FAj|&QLB_ag>L(L%Q1!hfgO(OSkM&3GIdbEJ`DBD{uU{N$IBpB%Qs5ng5&2BV+-m90|>+biSB{Thy=T_aiRSiJ4Z%0Snb55Q--^qJU z=0CsufB)}->k~YuP@t3xcC{tya<01pqd<6WfUx<%k~g6g zF1b}u@%iXS7x?|JUuLbTSt6W1GL5wsDHYaaC^5hajS?A(gdnseX~LUtzCk%Gu({r0(CcGzW=h=eA#6q=iU@^A zS-DJ?X={KfWNhu+PE{gJ9B|JEPp4Wc9dHo_sVpdo5Pm+US&+H5xNlwPNRnV>AB%@D zK9&%|5F2|4Q6M`16b-*f7)XvEn~fMq)DbNLF$yEYjw&9@ax<8Cqs| zpL!mBfX=r`+c;O*r}M{_*uAfi}t0zp)^q>=xq~kY%_6W4wLR6 zss{V`1=dQ?_|Eq^dHWX0o$r%vdQ_G#!r3M2^HtbbL)^WD=rr*bk6`0%2KTSwo>L z!gFk1x=i8BW0Wfa{nvg%4T|59445qVR3&8Xm;n$=2n}=spL6FPqdd2Otdx*p zh>+4H3zHHrj1byo)(+w=Ixl^P;H4LcJVS8w32Zb=|DBic20q?{d&tIh=F%o~HL5&~ z@&fGbpRv8RN~C|K`F}v%+@f>ohm<$gs09I{TyV~xG<9Q7cL06`aqKxt6;0>uSLkePP!6t9nmUAIA=HR*GbsxalcJE~pLukEMXmpmjC-cHc8;`uWySnLzwa@Sc*aOl+ zvj5@9?HJl%Q0`$8`|EH!at|a9bci8f7bA6zJO;byUgQ*!-2hiN88E`SY<79)X|cKd zUX05CnRmpxk1;!Vs(_F+CMG9XTV18w?qf2yI&k~eeKt3CsMlwhs!w68CMpJmVHI={ zB^9@B-6Bg9jx8VI^yw1-lt630)Fz6|%}+ae2?k?g`pq>S+C|A)U8eXoOHm-$QvJHcdgqx&FNcE3qgvDMP=G$W>*mP#_c%4V2_QlDAl_WBNsk1mm=J$$~3enaMqGR!LeSDce zZqi!Nf^uN7DrNKgZ*ckLx48b;ab|wuvn+r1^AwI8XV6ZOotP{efXGOaF0qcuY>Lh@ zXB(El_t7RG(|weZRLf;#5aI_RRvUDjP%Tf=ZS^tP0Br@<6J*lT8VrzFYLyxafhQFY z?%bnmdT8Hp^5`$h32y3Bb!hc=_*O+%u;IC#@FPT8aFm>G zikvvYfJAtS_O0>OB*1S#py*H_v z0{-kLP|K$gTbpp@WdwZ!Q6Tbts>_cc3w7?@zU%_e3pF_ZEYyw?s0fj0(m0{le4EM) z94*yIyBnlwAFlxSyB+)}dAF(ja82J^?{AjKxMO zfiwnV3|1*Rw_c}x`9-F;!B-K?JVx{C1H#tZsFN4Tu3y6}9;fik1-Se&jmahS@`s6k z@LhttH}Jy*)$5UE34S?3)dG~3*p0iW)fIfzK@B`2Kp+D==_cxW$hY3*T@O#SBSWs^!>ds*u+?A`LS$GO=Y2X1 z_1>-73%=YtXISA-QrYeeu_I+1OfdU)?*rwd=a_uF7Q?Z94_qIRXdEq;)649>dmrvI zyOh^m$;RDl?%|iwBuIALM)GUyp0_9FZS8ou!vO2ZF*^jgLwU)Eobxa&e&G1~0p`8W z0dPJ3dx_Dq?`6yXH_(1~x&5FW_64WrCXM0XgTVTr`3K5A3|~GB?C&lCi7{+^*#3u9 zv~TxVnfJ2op>~ac_kF;XU2fgJllM_r#DO3FU_9|iY9w)3J)_l+0Q~%6*_|`&&fZ52 zbm(QTxkg{UTsBL{y%$^Ly5n}#);uB8u-aiKIlPo$clmL*%gXl&B*t3jVc!M*GIz|o zj>9BHV4J15q@f?ebbI!Ij1K*?9*JP=t zQVICT^Jl7LX#(;0MA8vdmB^M|}LL z6a48nUgp7OjY^~`dy>_S9ekOfQbnXdRV3P1)az4ZD;-pnptMD6i&bE(L`+r)kCaf2 z2HDDhqsNL2x&yBLZQw~uxe{SxL)`9TFeHNkahgyl zMouv?6HM0X6pKZYG{p--3Z;l%tIc+tQmIz4)*~~5G|lLAVk{bgAW1Wd#R9!{!q(O% zsv0meJw=kH+_-sz!saHEJwf58msr|tPzWS8$&iI9IL+gq z{tWReuVcvYqmZyrBHn2-Xmt=mGBHuZ2!WA99epp3c@ce)MPw_#VfBQ`mZ3(9qc>2pg{!;w=*nLU4o;?x{E@F~sAbNu5caIhkSvP5`oWINA#Yb?kh2M%f8-MU0g z!hmP`WN2(`A@ZnBM0D?5WujihtInVwbkL18I8{W} ziZr!BUwxB_w1L(hL25Dm42os^xfx7_5KK-Up||}SJD1outO8NM%_Wayn+*w|o>pTndB!a;_rlo8bc+v*Yp5wU=% zP(e&hGgY5O3!ja9w~39Q7?h}AxCjf246H{w7`P-@5?UK~@MM?Rz$<_L0zdusTTD-s znD8yq^Vw`{A<~56FC5UmYT4hWNs?xi=db2a3>x5*xCQt~sTRiw8y zddd==ual)Qvej|92D&{`VbO&G@{Jd;OA8c>3ftKjj!3&BvyldEoW!AX$+%>9)^x%4 zb7duskeWRP{BUJ>Sc?WStWERbO+wyhSp>s`%b*bC^iDK+;MX4T&ppw5L8?P8y4)Mb zcY(HW$Bo&G4c+yCk0`L@de{fx$xv^8_a5@|$7n4>>C0Vj`v{01UdK^4hh>M@BmX|2?nuLD2sY!Hyjp-sGtFeDv=J z^1>hX83E<{CISze4eae7jXJkOFgyBV>r`tsZr{8~sZ{0I@-dDaokw|H2CeJZ%tQHA0#Tw|im*7Kmc~7F+@w&NCF{cW>N|u} z5u{yKuf0m3QWj@VGf^uu81x7WK9%_+6s8|Vgwt59@x2bhY7EMGb&Lz-#b!t)Q7S;2 zuJh*R&0?f0C$NqNBZW&*Z}TKrGMCKE)h<9GjE|53HtF;1W7GWjM~XXl@AJfCN9pyu z1W20O2{q+2I~5TX0+OtUtrf6yRnpcrR$GTh0h3t5LPYT+%QPAZ`I{=XoOp5Uq9{#9n@=4muLh=L-N9vLC&AV!KJo(U1cAcRl5(_?3+#UM^u zTVKUuSzKJ87#0Z%5i(SGL5NK(t$rJA4MGaiETP#Rpjr(O3gszeG9XI^grScY_{4*h zvaB&h#ozMIDY|(zLR20Gxyxv3~OR+u5&NU0CeJ{4~=kmd6=+J7?-p~ z;@lKQxN_13oni8XV8UXhgv2G#GO`ar7o`Gh>atIYevji9pJwahAE(vp63y0`oUXBU zt3}rDV}RPxB{s?)y;P&5kFtV5W|%l834O}H{hO#~pGL=BjP$wj&2QsBctB~c&S0|4 z_3wO-M}Pf4q~F>gYd4vD@;N^AAN>w~v4oEM9DU)V#8=)SZMS&)d*7k(%4@W5UFYq; zG^G6|#S=&Q<^SxT(yJ8t+1LJp2iI;;nVaOvPd?4UlTYGReb`D}f1&(5JER=xf`pqy zqmd>hOMtGR5SFlkCcSfmaQOnVSS8!sKvXC3WErUIzg-v#*!rg>a$H*UxbW1J%jn_<%iHtk?_ zf)N5MH3+pkV!B~Z=DABUAOYbxenagUo6}ju?!cNWy%-nN?)r;iU2fd5Io=SvKvs}@ z5e|SZ2W;)=(76Yu+1uWoWQ;Na%(zbcNd5WW{Q;#zYlh_y>a*{G#gX%d_mq$QdvIq= z^L^y{qxI~AN27N(X6xt#U_WRb2lzu^yLaVLwah(8`Y-@I`gxed0DpdH4kGW!7O2q-%YLmy)7fjSPWcXyu{$F}?H89U*Cq~c*TmT?e0TINt}Jr2aj z!TUJaAF<4mFV&6JeZc(ji30hHFg6c7P=4>y`;QBDJ?y*pKLpMrn_{o)8OQj;=yfZ6 zxAd2LmQ^0GYOT#Zk9v2KG2{adgHRnU#*CP;_o6w^yQ|BPd)r;fDPq|Wcd`)ZES-r*T_17tvrU>dsu}MauRHG9&iMtz={D|h- zZ3^`zIvveoJz~(71PJPd2?Avq^!ij5mzk)Y2dN0cI@mI)b{6{pR_yZ7jkS61I_Dwt z0*_QnjJBW?)UeB!0%64Ny$?T9D2&uD&33N5;{tXSN_yxtW^zjM>F3Y!um9v_wj0w- zMG_@^3dJh*TEIlz;1xW2-Hi1?Of*+P-)!I~7U5e03$>*Z;cOYxYoTT&t-G4_%PT|$ zkBQlk)>ap#6(^7Qy!6U->?iKC_@R#=I@j1~HBng`X;OSopnQpMCEacdL`GPUr2Uv? zt4}}ak)|@KB7EPc+wPL|1zF+}pk!K;Wtuci&}gzaVR~kga=A#kQeb{zhQ*~t zDzysTp1=^0oLgl3?rkPA4|V1==Ft;~P$7q}qtO_nky(Ps5^UPVCS63@!)6Jjj=*ZI zpJzkNa|`5yuC>BtMnz&}o|nMnlo=_U8VVMKhfoUoeUK40C_oTl(~PiI<>W7Xf#%EK zVM6*WEiTZE?y|GC$=a>E%$+~S#@VCnymphxAO+!J1hf)C;otvx)W7#Rx@khORAu$* zn_PeOB^LYwF`Bbq{ygnBZqvJdi`55rDX5IcKmC~;J7|oBSOx?~meFZO_xcUK@TD(t z;y?M%8QfcE?d2cQ>$cc>^%7gHJ5>9Ik`!F|n;-DCKmRkH{mNJP(BJztC>B8rJe6X! zvr#I=P%TPm=cyA~;~|iP0Z2))?9c}5zlqj+QjIajCk?lqX3 zBfE2niM1ZjpI;<>_7hzB!8>rP%TWrHQ%&M0q=_NzIBJ!(0lsIb${keJ!@Tt~%*GtO zPM5URr)V|4$VmMNI~ZX4uFV#YE#sGp3`#Y`sSB8(jxbFERU|4G=s&p4-4|XZU1_tm z0cTE4Q>_>I;ms8`J3CBQBc>vSDn+zAJvvFo$3Ol#>PL;f|pg)<`NL0fLh8kP8Z% zWc2QC5}iCj`pgroy#5oamo76kT}PEdj12Pk)pL{U1PYZJsq7-pew?IK#ppgB+V!0l zheQF`3}gEUG}bCC&N1MELUSlT4D_@D z(0kr_JcgR?CZ{V}?QB!K7{c!1s8RMnzACscFm(uAM`_5|h<7+x{@~zy@7Ui4uzwI6_P)LkXt(kt4ZZZH; zDc8YDi#1LYSK!n?h6=mZ3WRV96hbH1w26>Y1gc8CHi@wrai{58cHk25_+mg{Tim(* zHcRshgd(B0bsxVt!Hn0XuW#cOeR`%qt@<>BojySr6NZv-Vur%pajf*ov_a~eQeh29 zCkEy`;ug1b3RYX3cSR$Wz*7;4?&h3Fi!hE}VbC}&VX@oxLn%)8PhzD9B6ZrsD3mN> zIvpN+WQnPXE3B2?$;|mhyh4@U{VmMhb?kh| zYQKwjXTZYwDSEn3xs>8fSJ>R@qZ@t1oi3$glIdeUQ|B(Cx|Vw8Q_p;wiO0H0*kHg` z(kC?;sm>S-`e>6;D3nN&jKzgHy1g#Voh>TW0^M%U>Fu{N!XRR@KEZaQMZe!CNi=De z5|uoPkxvxB{K5>?i5c3x0gYyx*g#M!6C9sq^W-8?CaFAf9$PFsJ~p{ldk!W|njqqV z`=7+vehf+C9B9&myrr#>d4TY6l_MX$#n3Ay-5@9=HggkFfp%0Usj*%PULPBDAoLNj zLL?#elV@nZ^%7~n$HMXg?@ah?t~O}gSYhd@$C!TVBJIm7$RxoF1ie@z9$m)&JHJR< zd5Fv-jr+XvwXc(Tf`#*sa_!2SESx&a_8Zq&dGmGpBEvKWyzsyNE4sx$V!`UdNSj$tfLg-f9hT45fguQlNYHI^Kyh*ix0W zyN#;MBD|2y3Y5$xVe`Z`LrS1f9zvzqBtr;AST2DlvCSPM7UgC5K^bxK2?&>vR*)&_ zm`y^usGMFGJLusLx|loHi6?7hZ4Y_#hZI8(nLy{kB?^%w=r0gXPm?uTL_y?MR6GxH z=21kN5nq0TiAO$+s?LzT_7=yoKK?I$nL@9NXl$YEfPzg(t%70|N+H6gWGg=-nK2Z@ zN$g+z2)~fwpIRWOmPuDuXtcM8Y6U`*kzq)~2vkV<`OjeHj}mtVBtjDT5hdT_#TS3T z{cBsCI5kOU(4|%@vM@KpnWRH=Ws9Ox)Py8WGg?W^sS6jVEX*TIRm$~Qq*uTokSLNQ z#SaVkL53AwlI9BiSN;&cx5MN!7f~la2FISEmKn0!m(Xv&f!*0ewztXV7APG(g{KAm zn>_}iM!0bwgry%^3WaIB^G{$m8;H$KNOq8(CR>%jtYMtPjpF`YCh-zmE%OS${ zXszDDT>mLGzf1JtCoxhm_`QG5q=3r&QB=vtW(h)TY~08D!q3w`ew5y~|1FahO*;+A z7SE9>4`upj^7mE@$3Tga0%2lw+Q4K@Fl{`qfRrAYu}Zdh8>EXTKso_}Awb^+sQF+xr0)Ta#%g!_sQviL?B6~V_zl6~ z7&y*>;HW4506ep!bvz7I=Vk03s28J?f|2_66M4-3IoHJwNX-@A)pc9tYy1+r!I`0r&&9kGy<)#Pf&PH+malznupfeQf{8eTjYc z?Op2dwjY^#+r95%cQ&7&oa?s>hWvOl#N>PPDKP}^mffyn_zvdwiF`I~aNbU-oOZd( zYMC+&jBzDg;F;B6g+dAsB@CJFVN4ULLWER~b1NljmJpT}IC?TdN=>E&)w%->exb~K ztxh&D=%k4Bsw_;+kR}f>CZ;esM|JK9e&jN@T4N!#_|`gA8)1<)PkFC=x5S#cL>$(* zn{;5@wSn&kXgzR!vay7L2Oj98kLjgOtz-BD<@*0hqtMe6#QqbyjDMYX{&~)Mk#j;05d32R!;rtxMDUaSyH_5I+|3(X24G3of(l})K z@j8QYmv`RSp|@?oKw~4JGA(%G*FH(}EREiuwae}Rl4Ys$pNV5Ujh3g`f#`i5+yL9171z4To`yQoIgb>hd zHfgt8l#3;nPoG8=E5s@IPd)~z2bDUhRd_j7%Vrj|MraL5jE#GUUJu*vJ016dTf#;N zH@`wSg$>~*VnT}C`))D99TQSumBL!N`}PSdK{&gu=VQGAA`KC7AFCAf0)lFt^3oie zZ@Qby4;MHoBJ56ZpAZk?xtJm@SP5eRyEdvBS z)G%wX5V-(HPRElHg~Dd;H8O<&p^G3bUNXQ=&Z1{dqX`LwKw9JGVkX1Nz-2W}+K97H zp|&CT>AyjF0siDHV*WVEt$S32MHD19?O{7Hwi_esQ^adq#08(|*=K3J{4h(NRQ?qzx# z+njvl0!sO4J#d*hcfr2gUt9;eYB{e2Zn@%*v3?KkIB_OTi3Rj_5@Q4b96nQeq#$Yh-t+GQ~}ODTVQ)fvw6?5 zb2}yI1U&Z4vv`qDnzivn8);*#2@%$3I;t~S2$?PSx!>O5&h|a-Y^>2rVuDhMAPfk? z0$Yt8?ys-2(`q6SluAYFQxk**pHAN(y$oS2L7|8gK038z+9OE}e&hzsFbb)bD)?cA zomLZXex7z%qTp3gRzTd#2PW<4E}7%Di@1j!^qhoT-_c~OP|g!(U3VyQeyfw`bUNTh zYB#wUdYP@=T|c)%IPnIduu@`E50iMkx(F)xGt>0n5flTD3l|^f#yfYp zboFhHynT%$pLmw~r$5KWy)Bw=uTnZYN%7cG(vDzquEN?|KjWMK{9o|=XFkEBKmRGd z`j>yr*)vbjiU)MI*Eu(Fk)OQ$5>H=vhLgYko19k?(`|G2tAEVvfBHuR#R~oVt3*l6 zD}VYY=x==;uTtm8(h<&n_S1;^B-v(@$A9U=DCvT5qvg}6sS2jqBI^u@>SgynE0@i9 z*l$>jdtUcRw}Q~l^DYK`sQ9!R8x#r)V8O&ah$=`gL=59Xz$LJeViyca;ei#zgFaEw zcT$DQLy)3nKsNsfe)$-d5QN4W>(b8)ur{N)vO?+hO`wI6is-p7VODRDZf@YOZQ#W{ zWGJ9i!xSb+HXjfiIYR6SIy)`6m(pqeHIpCxB;njedVljXwqJUY*|07?*Kldc2IE{JjhlpEmV}lSmHGzq)jTtreef;=g+aCm=e=xufqY&qV0d{xJ`vLaxjbYo4Y#$2P z$Ln(656VIAYt>P({T`rk{JcYNSR7JrypG|IEcW5%Luo6!^^F5vG1dSNnZ1tM`T->* zM|5D^gDdh^XS|)ppUhoUJJJq^+5TS7$-djq3yuN&eM@h{A9+X-*!OWA(Rd85-Q~c! zy7xH?gc!2{7nLq7LOSn)Ay=&uBf)MmZ#&~6@`VL!a?bq7L{S)nbH!P#HrTX{3|b%q zus+6EbeiBPkHltZqe1yZUKLMxq-1FA<9Q`YwFqHDcO5a|WCM-kJPN=V$CsBktW6JzDtrc=s>>D-Y`hkS1ht4=?Z#aR~jG^6VTzxyH`=7AKaEa`wU_T=~&k zTzU0PCeELueB>CDU;aFIT3^KvJSYc*^)lVfyZrI*{w_yn7J2SJ{%v~e_t|)`%FloH zOWb(tGU|~>n4DiGx%M@xpZ*m$x$py2S+XKBCg+w2N>x^G-r&*mkMZbNzQWd#SYAg0UI3Cm$yq449c)aH|R!l6H!YQ^KhlUabaRinSVnL<|*hq;%>YXxEO$y2+=K zPDsO~$i&C`5i)Dz^}CcyRkB_iD${N}ml7vNCHA^BpAEXtGEZiek@L}anTV3G`i z5@O~Fgq%W2jWG$D%)PTVKo~>NTql^AgNX`ZcZWEdp>J-X27Q9YCbHK<#|dJ)i>!tO zQGh6g^w-vqCZjwviTd0ZF$rvb_lE>)D-`vBv=kD`3^_fCEY=vL0gZ0TTI((<@|coE zyl93&b%8Vu33LtN&l8q?%tVp?_7MeO z2`g1P%_i4=_&S>#>#TMAbTrrwluCkHy-L+j+3EC&+cD=p^&#d?oT4x_PoXx87Zosh ze2^r?NW~zINwXfs_%?UH^CuiPA*Q!NvT~D7Y7ngsMX$u#o$It)7R(g0ryphNv6JXx z9lfxOw|W)XTO+M#M4S?IW30Xd8z~d@3btB_x5#+={BP)@3VZB&c)O$vp(r!wN?Lz{r??kWw=` z4(ATG;k9$HJnEi12pID+c659HF;~Y3m;L}Y84ZFR1MCON+r8$)BKBQlr1*iAhw*)f z*?Z8ghnIh^awC(Xhkg#P=K!2N)aHZR?+@C?fAhU(HS*=h`~kHh=eS!J2xx^%Ff>H| z)}~HAQ5dj#WT{OftVZNOVaP9(B0!KK>?YEN7+o87w_s9)l?dbESts?Cii9-NcmY^{ zfRY~Qn4!{)ll96u&w!E^H%Y)5n=2GxOs?l`F(yN2zDtuG!p6!?+AA+{>Z!kj4Cd*z zx7b?0!QCJJ8#-%m^Z8%>`*_JLul>>g$kvSo%BP=9i{f zT3RB>GFI1C+1}iuST3T3$JSN@T@ML7kLmgpTiXq;#x8tvC7B|MB}AnV#ay|K)!{G&99pFMNlv=o1xuqE?5G{nkIBefbKy-Qj2d?i<+l zfaymb;n>17cV2&sleGo<60Y5Rhx4EMMXDe9IjYZpoMT#(b_c}$HZOnkj|gj%1WQY# z!ma3Ruic^7=@Kr?l0_x3JyZ~3lLV|n;9-qIFu=*d7>vnWUI3$Qq>LoZn10Vhb zs{_g4&%eWzZBm+^K%P8KbFf2my+Ku#kwy~L>dY=xnJN2d-Nvg;qYIN{kpwpJGw6sS zNmU~*|B$e7nL?$E&MeBG#rHj;C?%{`$)XZg7O=gP1VwMqMA1ce`uyeBzs>6Ru2BmG zp@7+A)3mxVeXVJ=V=|qhlY~>}PcgZCn(ERiY73_jVFfEA(j-9&f#)fN?_oWKXVzHz z#-A|x&N|_dC2X4EpZgHiGpC^2$6R`yYNN-* zKT2sCrLSOj9d)}@n?vyM9=|=eakxsbyIKH;Pd-M@vxnF=4(!=mJ+KE1Im9q~$i8v# za{xdeQik^f><{1n{($|k^G89uJ)|8D`F_Ymz}r`7AHIA)FmFf7j+}ScNuv+Z0c`dH=m@9p-f(e&6S5AC~)|+oQMRHbm|%-M!ZX0DrtKMsIAdeMa*$?Y{>* zR`2jS!`_6kI!6J&1Iv3W17a6U?|nw#`GGdwZ}pzF>@9!iy5;+VFQsG053lQfx*?BV zlj#B2%u#SgmIwDVw++^6r#>;P!5GN;Ai7xNBZZR$)S1qC;nt}OV39(hBp9v9(gDH? zk%i^5jQ%{~^D$2NatXa246WYsCbYuEquh{1dGpHa3hJ1vDyJsv~ud7UT$vw8z`GWw+)^Lq0dAyqITpc zE3G1T%a&?2L|7=NmX-BYw)W~Y+v~h>|0)+Jj#3vnh#d5gjU8xjAv!JScM)-%&%vBBjM3~p ziNl{-?&%skcB?=rw>*wgE-;!5i<7HFYS5WWs1(Oo-$w)?){C*Kk4X9mQ6j9?X-G-4 zy~AX^&d0y_Nxu5W-{J?~eUYiN$Ent<6px>zHZ{-2%6(q`>es1HPw@-?@HZ*cC(ykn z+t+U4#~P+4Is3$ugfk1gcC0FYwjUTzm0u!M%DroO zFzL`yV6BT-Ksb3*VFefs+G4aul&kc69jt&jjVYT1Pr6AE*gV?7A~NghHjXX>Ae6)_ z7SR0`Mt5D#hlx2m0Ew^@50fimi0D1%2Y%Wc*xk#cma%9d(a)j-%LoXA4npcM(7~!xV z9rlZChaE8rhi0VF#ArqmC6OXUap`XM!d_=223P<9AOJ~3K~#Zm>_DMV`+E0#&ytyb z$aC(70-Ca8!Z!k_b8sYs!eBdqTc*IO`Ez&~-GKsy)$qz)LHp5){A-sDF=e4n#n$i#So z$x4yR+$@E1iPh~IA3oUPuv%koVVo1sJxzXQf${m{WJ(hR%5KKc3dgrzeO1dNo0qJ; z{{s$dt6ci(*9aawB%_*`rHkxMUqT%(Gj;wI@>}bu>+hp0dD<^tCil|~%*I`0CIcb> z7rco%)UjoR0)2lSol|&T1lK@1{f(TJ8L1qkei1Xlmgz%_0JUo8_p##K08z;YvRt9GP6BupR z6-kWIEy7?M9k;9p<5-|nj1fLytW;m7`r6hZm5>5KjOArd#%Xe89TV!|wLu6HYi)Xl zs#tHYMmq?Ro>~EkIL4lH(X%D9h_plL2Fgv@Wd_oSp|Tl{A5zgtPaX#I^T^-yBw!e?4yG9avb{byDm?=m zf&Nb%k#3~WCx#C_>mLEw`*}y+^--YRjE48`pTH_JkXa;;du-Z)ETfY7M}X{T*in@i zPYCOOz{8+9jT0kbBhTwyrvP~rFc03Re?|baA#uW#mYJka^Yu0(Ntz*b7}Klz@Gspt z5472gR(eof=g3C&d#cwzBONV9()Gf`P<@55y6UMMJ~jO7sonI%5~)7D0BLpErA#I= zVbD6Xk`ZAYVqmOsktUI}0~iu6)85fw+DLq~E?QKHPLB9(I+45=Aq+}u!fu4j zSumFBIrhhYVt8ao+S8vv1rRHh7%loZCc>BwN`TZJg~}3Q=|%3}c!#HtpJ#k>ma*|K zqT()BfATl%-u#H!r=RD{r@qcR-}@7SjXM-)pF#(1Tp`g3O{A2Gv95M8(y9j;ZM^^r z;ovw0+-}5Io}c08Z{OqETAggxqZTT58%+)mJJh=_h4Fccr6L(ZG+oS?hw(I>!#eGs z)o}IN44U9zlg7jARL-2mt44%B{Z|y8TA~>X^u|3( z`7&mH5-nV!W)&}=vj&er7p-EX@8Grr!gt!G}eaKB2iGLD!SC%$=&>g!i& z9kd9dhUIC|g4Ca=}Y~Cci@m++wfv$Hkk+2kuxiV3~rM9xm z)XXAsc8*wPF|JP(G{GMu%;cGzTjHgcF0%LY4`|ifEX~qhyC31To8_GRR22B)lQrfT7inO^R-a@W!7j6u08n`$;quFkWNDLn>aQSsbDN2 zL$JbyzLZ)d#<0VZ>HcpJdiEsdkAU`(>)zjVfgc9RJ)~nyZ{0J4d55kU$~zRFv~QRi za`btl;QaBRT^t!U^881B=80EB7;GTu@#Q@!ZUnF&3963@8-4zh0QnMY#3jIa5J)rfw+Cp`wwuS?4^)06kCm8@ zl>Nvl#7JES(hhBi2RrB!P7j9mK!Y2DUZ07P{DvVN_w-0`=pCBGLD0ZQ4?W{e`>K+U zZm3^UATJWa8msRvrS+0(M2u2_Rgoda=+H_cjKL&Fkk;*mW%x)p3y7pVqcEloxJWW+ z?G4!Sq;<74mIkYyqm?EKBP6Z`;h2Oe#DaFCt-6H3^eAfu+DiR|L%VfI^+Bs~=G~^;IxgTrXg0X^F$NtIW2~Fg16EiENq88}D&?;hg2@ zaXduNJD*4x2m}}j+6SSq2doO|NaCnNq2TlKi>J80brrlx4%;zre!RlcWS$8xLp~$% zP~`K9PS9Xuqe)l`kS!>TctGR`7G`G{o1UQ^1-Sc$ zsqGrwjV)RN%9k!M{oF+w-4;SauAFDD!>iKCGH-EBIpI+f|EWYNfMJNf97eN@f_$n^;U!K&HQ+U}4qKP~+^9u;K!}ZtR zAiKE0^;dsLzLdwAA43X*7eRcui7Xd6SbIpm6L9jGXOPk%YSj7J|M^D<1fTl-Z<8$) z`P?(lbJ!NRLSnQ*#gR1v#gIzfd;9WaTG3h~i~>JK5Q7qAoh+)pg*QH7og^7;$FMO8 zm8wpr7n3-Al>GxPEfCVhbsThI63Pq7Tx9i$g^?&BaHNN~yUL=hkykn5$Ybop48(hM z4kd1^qF0*H5@gjw3*U&hKOpa*v z9=SL~?t zoMWd>Q&~Pmarzk9@))7EZt7jv0mlL3p=B2@dO+*y_n9i>DEp_0nr&olA644`&tqYJ z45mI$=O6x->Yx7+{>3X4ybQ&B38}X+84t&G(XA#ZjoR5kl;>!yZBaaXoZMHgfIG|X z${JB?kA;`N0@V(?ckWPr`LmS2_7(JQ9q0BtOw8sH6BWen9n3)uQz#&O57CLOI%3ea zLYgo@X0w=Xm1b8U&RoG!d&D2SgL`@w`Sde{XrxXAHHnPKs<9YUTq6p%5p)2DIF@+Q z0pXyPLJEl#KGO2VV7-$#$+$KM5hoPq1|d@8N|CI68bbs)$+#4~ack8?Ej4gY_#+&v zj)z8z0l|){vL4Nrm6`6s$^nm?9-obQ_{DYx(4E>%AfCuXjDexbOPjSp+%lOBI3v+b%FB>Mz zliFlPE*}?XuiZx?`j2@8H$E14KQ{i8!XDWj4AezDAuI)`BXN)DsSg11N2nej2i6Df zhpN#})02#+9v267(FW_4g7?SO>v7LKvOm(hM4jZ3el$rllLfX1*83lm8BCh6HS|=~ zP2Z+IE!-OM>Et@0%rgn_6_)qf7LquyK_jJ;Tq}$Y&?ZC*h0qF_P;c3V*}fAim5Y0l zIhjnP>Es|xV4Y-`F4Fj)&Gjsjng&jgHzx?JVW78IGMePyNAty1dTLevPwFUu0tG z3~LW=ak#s|#IcJkoV?7#o3C-A{s7@m0WMDDCVNwjQ3fGAgtV*!miZ*MQ>d|1sn?15 z?8OCs_WlYt)&iDh=9nBe%oYXHZjA3oxB`?L5p@l2HpkTE0(w6pU&+(f0iE3j6TZMN zx>O&unETXu%I7a4f(~xCOWbbbM4^?W8i9#p%gllTH#rSa+A_N|nnY!X!*Yf;9-eS< zIuRl(I6SOkVwjp7XZiF=Ouo$4JMX}I*D2oF`>p$3B=y*^P)4mX99+0HZ)$zrwL}ktouWBdrt|ffS(~9}-LP7J8VVi}W%ObfDWn zL?t}m#pFF&trj_vCkR6J)gH^wF7u5^pTGa^t9~ZFwzYJLkL5rg2FjXk9|K>Y1-h7+Fi&tnLJm5$F?$0>3xJYii#NpaQ@{{8@ zr741TmyiDX-}A=5`7^%syZ?;BSP9t*8Ncu}VYA7P{`dct>h&9ZL3bMn9f6K8#H23Eg)lhjx-1gA6z$mY5QP{dUSR@PtlG`6(K+JKQRCe~DMy-z7Tz&Y`C+{p-bK}Su- z+%BTJ2GuqKg{wk}%{H!+*eWQ4>%VDOWI+BH5KX zacBsSohCbX92G$8u!Y2DvXEi@gP*f~`&GPdl~(IMFesE6M~f_;)CiqHjF&OlJf=~@ ztiI3GvtL3_pX2bo*C}U;h|`}!6i?!5>lZ*^Sz3gX=(_6|6E)C54WR?e9EL<0%LL;} z*Rn)uV;utvkV2x3uy!ya#7f+)FYmNZ`)ZW2otKS3SSJ!#xTF#l$Yg%h^wQ#Zb`6Tb zBx;{_S=1Pt@%=wf0QUp^<$UM&U;0je8=H=n6nrxLcPRcb*Ze5O0utlN{BN2|(^D{yu6j=Z@Nv#r1L=BjfYu+A-O6)NyS|g>vaS|g-VZ*G! zo53D^YNW6m39YS%Sm}EBevb9qZ_rx3#?qx%FfxM_A;!44zJqBsc=Jbp!Gn)p<>8GF z@rao`^BJ10kk0mPCT8bxO0(R%d6n^kpg4Pqplc0MQ_r75=$;e^9b3j7t&nJ>0HtGe z*dbT&={6&-KiK8Di;I+`!fn?$yEH{E=Mr{X=+NK`7cCU|*&+o`(J?IoV)9uZCnJa= zhsLddE1 zRtHO!tkDTYn@%_0LL_5OC*Mu-T_odJNNJ7CT*pf4T^He6Dmm$b@C1#`Rl>b(JS46$ z7!?zli0SDmmQO6Px4F$bZ@q=%ILyz@;<=I_?69}JjWTfd^DnY+=>o!&C@IMmip*Ck z+9p3v3lhQ(?^7qKhm1yqmQYaTKJC37?gElhiAaxh10?;8s zMHrQMH8zIS0hvhM%DX;B`jE}oGIqBx`2wh5_33IQjHboW1gCD(5cZ zO-_@^6)?t0ghtkO$Mv)5s7Cw2d$jKSf^nySuk%FOrQzl=m2=cHC&@2eBtJ7leEWTJ zo9~lz9P7n)Zx0!3$mbBs0Y3+Yj8zZ3c#)t~p?2p!S=A*oHGz5WJ(^dqQJQqg&Ws^d z7l#^3)Y*CW1H=#Bq`h{J_TCEq!76?bB7%;Um`^VurcNTdhlr&qqU9wz`+IniLX4MT zvIHU^+_;Af+jyV;65`lXxH3bkJ#HoAR;5MJB<`+ZqCJQLRIJEkG8hbD5aGBU!u4^a zht>k5Z@nQ4Cjsakv^gADZ#5$2Lnd{Z2bTLiMc1MyFcPM}E?f0iX~Da;DtgjrE1e&Z zbPJKLm^PJ+NUIDtGXA6kul{-4XYX0NtZN`(x5P@-vUz_R-bH+oMrb0Lf zZ27jn(i$f9W zaGdVpE}M65aP0DzaI;yAqX?rAlvRgGL3;|^(+N(b;L{WMPRvBPz*{#~h_&SMsabZ` z9}>l&bz~R$&;lXhfOcaF1qh>n+(eF0cIj+%kcSbSL&(1PY4R_9iCS$3v%f>8*+hmd z3#gKlB!Okt>2HW)0wUsKnY)bx?(T2mxGt5-B;8JfTeojeC}cUdxI|^?ICmdzaPQy# zC6}+RamsZ#b?G#fj&fxT_x3j4Pw$ak+r~XMgPttnBbhBtk|~tf*xF`) zXP-v1hLj4|cfj@OmWxEyI*U6Ei~z^UAYuopC6>q}RnaiX7&OG%`c2dcr@l5;@@0gz zs4&v>4~|6Qm`Q+<*8Mt;z&HZ!+6|54S}%#h(Fjk_+FB#p*&-vQl^*LD6Ndyrhw^xl z(`QZ~q~z**SJ~Wn$i(Cr<>@Ih`5cYiT^bu3Y^~g<+iDVL9O9@$`Q!yoe&HFqL6_S4 z29tBM{Pw^67Zk31k!x4qW&4N!z-+n9-~aKyV(lj%@cfrQ$FKbl|0DSm%l!Dy{txCV z6;A%@*Kw!kSiE$JxVcNvtT8qD_v7Pe*THcG zMnnWPg?hM8VZ4m~+~;XmPLe52K;KTC6D)h z@?FfqHlbE1Ox%mrKtg{d)QrA*BTyi$e2m%dE1p(%vp z6c;CPFk1(XAHd+0z6EhltfZ{KTGO?lFWT((D*bFSYZ;X$^>ps_zUwgI>8uYzi2_3y%ZW zqh&pkXA~rxC!`}aM*#cd(sD$6|JI_9Uo!pU!Uj$rj!yHqO~%OeV>TzwcYg1s z?+kc-UrhT28}kLAD%*GG5UR4khli?N1X+C@r_)zy!9|0n;J<)t~YlV{o8 zU19g`$1Gla4&xTVc;Fby6Gcv)TqLS?n11R@WE_vpYws|7;UYnlrM7#Y%G3hmr93y^ z{uyzj%e`CIh&nZ0nBeb@>+1l!n3zHaFYK4>rsRFX)9J|$sH{UzpspAtA zTt%Z5;Rr#u+eK@I>o{aG9!f`ePC(~Qi|}?pdn3SXDB^vEGgW5hcYhl_GlAYez-v_T z8i$B(8=+%*QX!1hzqg9bmb=>%>=E(t-WrimIF6-7+uPp3b6qYybCJsYENi=ato*z0 zaqjjOPiONi{MuJ2e(^J?auFsf_{*m$zVIA#moG7w&muQAX@B@Jos~6a78huh3sg-^ z(aTfJ6xcl2rrNDR7*i}w5&0#^<;m%o?8+Vzj|h8=Eu>7=1lx|(&Nltdbh1R5WVrQY zNW%2g#_W(!oe_a{9P3%t5ojsFk$A4iR%6?H?Drf-tHb_6XQ&uSfD&PhBk`E;Xe1SUgP2Qt8~}b2-{s|=8v&-{sLoj zv(y_^9=`J?H-Gda^xi)8y&X!k$N1HM{s&zAgMW@cHAk>}i(mYkKV|Xk(~O;U_%u4_KsUg2W0aG@J$V|bI%Li~ zN2XYzv$smik7;Ks6edp4xp5Eg-VOA%ciDdZ$LNo)(!Oz>+WG_P4$N* zcD+H-DI%w)kW*uLm2o?MbO*8-)Wif)y^fpBAkJSPtR153bqcfdP+1@>j?-LUA-el9 zMcpC$xyv}`zKW647}f5nLRvvi3~CJ(-5~C66GtJQ>mdkfHfjhV$z{u6vi2lZ$2d*~ z$0>qz5cmiYfv6%xKu^U)2vTmeo(izA683Zz79@69B!;GTrs;!u45>3Sp;OPPmP~=v ze~0N)0Sg#lR!b!EgWyz%9t=orP7+qkCbGix-c7#!#DJknVA~ z`lJ1jOdCDNM*V&@Y2IEx^+X2PiNl7aN-=}O$!-<~oFy?(PCu1Z8*oLUB9k&t=!AU4 z>iP*Ok|WI+r2~u#kS4|@(QVfjyi1WVRwS1GmK&Eu$33B*BRvgBzosM)GD+`%5u}uL z>1Mzf%UUB6FlM3{*KrUTkNV*u@4of}#>QN7#Tis2kkU`46NgTFm$kS4g!zd)xw+@@ z#;17j#=oaBR-!n28H{58=BsQze89|^=h?n>l7Z zs>tR6B4}F{8AtTtt+3lKp{#yn$8>pX^B#Ard-(Yb8Q-1UWfc8qL3%jWJ5faTDK#MhNC(R{Xw|Laf#X>V;zfTQ zN{2S7stm~@X}=w9`T!pxEHAv22uI+!_GCf|1D-=`e}`c6A+8pd?L&ts6WKnMRub1~ zH^~<=oIQJ**|}M|wK}_NYdn1TkhW1wEG;lQKg-F*6D%wp!;cNs)g8i4i(2!5cC|`p zW1HyUfTzx%=gRN=I#2)RuX666ew)%$&tkeY>U%4+SMGD~)pt03;c1+_CRfZb_uM($ zjDk*p=yWh~2N8GCQ3!DpX}SqxPHa7urqfb-#GfDofw8JWG6Qbba*4OBj3x?176 z8HAsup#{cuIdSPJj$gjW%=wGtrsmPo!OLcGg=1-5ojlq^1pC+NT>mNI)$5FREp@Kv z_~;-axAYV_1lf2OcY775+ab~pGPJ6NqSHWCYczIhXg|Zmr#}yohrV%>%E3O~VHL-5 zX&p4F9qcncmZNa?DdJX0^UhsLCr(o=PQdyurdr1xn?ObZL2Zlr{vIM{a~nTDi9555sVv|vpCng*NN()|#8eUa%D16(8WTyRQ9Z%~A;72u z;_w!o_AP|zLJVOy#F&t5u86=v8xPkhqI5_Yb@071QWnud*b`Qo7!E9IHZj)h#kFgl z))&?uR9soiKxJ^N|NmtlZWd^%OTD2yH(TS5M145_ts)K9opz$ZYYcX&=if4sM z*YiFoPG>b+w?~1r=;hPHh4n!9fBh=WCjxi~#%wYTgz%)a(7zs0<5PwA2P@EWv zGXrVF5#eIsB`5jQxWU2=Lx9-UGx@rDc?KHTW1tyHKNyzkxb^C8`t`*0cH!xLzny6t z2ilhA7h-@p(`FbpLP-ov7<_ih1Dp1P?01O}J=g8S-K)XK0X3OaUSRvmBreU<4M(a@ z00t?o1-?})u>8#y94A`<;UJ|o$gz!y6X4PXG>)(UJ(Us&gQbK+^nHPHZq&V^Rm=dKj2WVF!ss`aB_A-Bdv6P zZtg6Lvr9a@^)cnA4Rdo(bLPT%9)9>Ev^UM#^$&@+Zd18<1xNVIom^)9-M?h^*_S!? z?6a(Y{5t23e~#SvJk{zB`Kd{cU-=w!Cl)D8&T;c6KjP-Qzu?8CQv^z*w89sX)Gt8) ztr}d%BZ|Ak0;Gyrn9A`hR|@=xA8#-@F-}>;blQUP@+7&uqF&vk(F!RSJu<~9#xCS= z;$8BkBHp}9d#!_<5a4?Fk;14L(`qBb027B6utteKw>B8*BtycW{VaEy2Yk5kfW4qe zzK~~Zei9*FCQ9?nFPbQuk}xXMAu5Gfq$)g8j1NqMZo^H(m=u7}i+$A=Goohd*8N_4*P1f@#GULzAva?!a{n`ztrt{TG07Y(64f-jv`PEv zO9`%kP761Rz;hF@tu5n@iXhoUqjd5uCr9?m+H*MA&8yD%kj?jCiv>US8#i%8roM}A z9w1uloK-c9Ge^9=$3z)K?4j!+PSk>O2`87Q-10D`Ji;qr3X>eHt>UTxeeXI!ro_U_ zUqw!zr~Up7y0_nF^2N^*UiekEjMA5L;RqLKQlozF@e80N48SI6f)#y zb9AoXBO5irfV+GOCg$KErZ{_oc4M1JI~4saj_cv%@&vVg*6-b5^`lij_4yYt**tH& zc9pCPLTG}pOKEzBxf3UtKYf<`!V=1O5F1QvJw*$dLl_6qU7>yVN5r>(!PMj=esPJo z71CMTAk*5ztyPJ3cJQ~}Cpz&g)%_g`;TE!S0CWL^=SjvrO}w^=_{nSduY4PC;W*+4 ze+unAqWL`ez@wO%C6sNN`&*2uJo)?-Tg?Ve#*kUxp#1D}IN$mWsvD~`9;`CeI3VMK zYDS3C7>pIjbihA%jJUCjSbab)?2yfukrzILo|vHd?vK$s2RMZ>axecHX6)0%8jLu^ zF%IBkgbTVw9Ig{}cF}<%R?4`Dq(bppYf2cT^lV%*2#JifC-beS|POT zEuGe;D>Wuegi^SWIDex5X(TIY>Z1d@Ch6E3!aK=HZz7TJsk*0lU=$=JYnSN7_t%3# zD3KNQ?>`Y>?_K_5;vWU{f|ONeXdDf6$|C@N zV6Yt(|4Cs(dCf=~F_K^)d?@`OI3J7?{VyZcfga^rALN)Pedb6xg9v-n^XgDPq!!@= z;JOF!N9xo24FGw}NWY|@-SneIHzh-rmm~KB?MP>r0qObRu%|cKrF!pTxGuek&W3Aa z(8@Zmu#_84h+<*jvBJiL+P8 z7AKiG{}La){$tM7_HYVg$gzv8zWIlU>U|0)KFjgn{IAH)E+R~p@ue%QeE192KYpEK z7hh!c!w;$7`32L*PP6y%+c*agh_hwNvzIZZ#i?tZ|G;{!RO*gAI#O@~f7#w@xt zcH4}H5+{_*oVtL@7txzd+&Dm}7!wN%41@wA@EvPltOC2KaRspoxxTr=esh<}=_%&s z=27IxeWS0qp|mSo%kyTu_R*+qG&7o(3f` zaf2uhh&60)ZBQ)xlqzH3ShX1`QjuCljD%_h^3|z1t`&>+w2e@ zY$7v7YGFtxv<`k+jV9w$Q-o1SCytn!n#RRY_A*Q?ERdO*<;M5FkE-ucTArr8zRknG z`+IU)l6mGlx#f8)q0}98*u|C78ga%JTuTfnV;L~gg)}*zmqLQ{FvdgTprnITZB%;) zlg;9zG3_oQ)VQ%_kitZX3YY?wveGEf0hj=xLfj}Oc3p(bA`@ddB_yHp$l{RotO2dp z-b2mI!^y7^ynT(hX~?-D1Tn%$;z|*n4{@6zA`-|<4hngKjTQ9jD#fA)_X6Y>oE0QTL5jz=zxI??UO{29(F`MPRS3jbPkTX8rG0430ea!R;HY1Nh*N_V# zHV)l`J){cAkRdvMlGe@pM6ccEV9Mdt3*!jYME~9QXvbSPTWw_2KxSfeH$u%GqkG{P znPQpFjay{z-hfJh>_P>#c@uMOlJ-+C(OrK)u30DlmEV91-#}^K&J)6*q$V&DPe*uh zow!rOH6fuEx>htHd02!Q4OU7q|TGc7SY<;U1=jQQekumChR#)l8H`w zPx5Mv6@m={(%$;hXVA85j-6AiSMX#KS28)FbCUT*;~)}gesYqWg4|?{?1ATWJx$lX zo}e)S+(${7O%E(2>*gT99>hSS;VJMQ1k!zCNDH|J>iS5Y!Fr5<>fZCxppm>s0N6pJ z)-+=Zy2VKOY0-UfKA5Io7DHjl{U|IOt@kezZbs{VR9bVyCo+M*$4Y!pspz?dDW&gq{w zBv*-XjRATNfl_z$#!i$Lyjvy~fz2X>#I&ls`wxG^>C5M+6pj;#B9+U(&Ha@P?!NQa zl#B0k^@CTboH&ki<^o2RnLd7n+?(&P|JEN9d=JGP$*~E-`&Bll_(c;bh;hd zoeW;yq2X$rN`Y{@PTa}RiX{2zCGfKLbfeWyB%?9Jk=AW*E< z_wn-u&YZiz{OkhVwq#;_nr6wR`qt}+pT5qSdY36&#xGt#6bhJX0};nos_TGbBD?l! zkU;=ZV1Zl|5;a?>Ru|#>Ocf?@Z`>!ky+(XkrS{w@jBr_AT4aBFm(_=>OtC=JjrgGG zl9?Fe)b0TyYi%op2UBLWf9s5>&#eP0^v`IjygrP_#Dog-US_yo@-LAuA zOvYHi8-a;CI6`oEP^D38lJQIIZtvmxS#sF|!U#OiC7bhT*BeMLpj569c3Xt1i=WRT zvpzXj;^i||dW~hjFeU?T1{1`fD@fnNc%C&3mu^Ba?IN6rxVpvi^Jh4IejYFA5FS>^ zbX!c6#}J(cx{*N;Bf=07C+&+8XGun3luD%IiIlLXSnJr+2*~dhj+yF9d%K?Yf9;2VL7IYBdR3P%O;T-fW=cA=#+SxEr(gK;zFZQ2N@pxb?H2 zGP~KN_|z+Seu?(O4{x?$m9(^f@jX1 zrE>lpGbc}hlP3-%q|Bg98|gWC?j&LDHevWPs<(eYrGA#o(_g3iaG&_qAEH}_6u$c3 z(Ac}rPW=uOv&Rs-A0gN8lcR=X0%&XE2x1}eW-6#1jXsFc)m_vJa~!<$D&3Vm%I7P% za|_6YMH(M}O#beDa=DoLjkoDEL&g^il!Gqb>0d#ge~$3&pHaAeokGyTot;AO?cmIx zLd~A0^ZI+pGgD+_h?8+)zYSmgCQfCZ=+&Pg-})>q{6e2s1zstfL0 zR1B0Mhw==zrw4l$kQ-xfhHxhyLmzt8yCB-!y2T7|gAZh%B`G9ir`+6Y+|1w%%|^aT9kqcv9d z;PTlyTw1gmEyl*m7$U-s!uKSu2gMBJV#Dt3F0GDa{L5d!J#`YZyN^@fg=P&}4G24k zu#1QyQe-W(fmjpf1n)L?S&6#L%q_Aszl_!{nM|I_Oojc2ciH~4KjXReJ@U$spQ+$q zc^HGfWEdf%5V`>(ijb;{=r*8sfIiqp)wT$#J9yP9lWj#MhQ?l< zR@|kyG)wGxtUr86&8khEIBC^o97iVC z_TLbBa{4Ve#!BC$L^vcgqaYmxo~Bbhq_ee;P=?CH7_DZL?X5cPW`~@gV}JJ$6_WGV zP$82i=9pZZN4A=H!cZ*c30*;9dW?KlLL6DpuF`)Au#RJhV@vr+pXnmCov|+61;&x! z``~Bc@BnIuh^Yni*ff|35jQa5|HIsScFA(2cYeQ!NK?M5y}5n8gBi?VfB}XW%iSFg zms&2hlFnIbd33a|^a=C@=2Pg^>PY7-#g+E#YDKRhIRppe0K(e~TyNUj>ayt~LN6k- zs=97p05mVuK;O=ajEs!T%8d9wPdv~6A0g5Rkqxj} zZ0wS>x3Kgmubgu%GJ^pJ>$fRaEp}lUJG+cpT&5fK7__&Tn_DBO%psIv(C@nUIqC7< zpZ*!*IO5!;3mon3;rW&%=@N=E*Isy;*2SxM&3VGv1x&euH4;UD=X*$dgz5Yo`{Aqj z>jQK&Pib}m|DXI0WnpOl;*ZeX1HzRv9NoH4Dbtj*W0Xk|%0ikVl$#H9XMnVZWKxlecN z4*t;|L933sa2^xXF;~A1i>p+Q+o-J#MChaDnh*_1gC^?fSI~oq@YWmnS&aDJe~Ufy z0@}ntiidDwNix7%1<5`1@IzF#4_YFOrq}OawLuDrwHZpfzaa2b86iWg3=lGK#0tU# zF+|WsTDMx`3{@wxWb&|1fyw6=GoH1L8M&2;xu{4_9nI4=U&TY^xnlui-)R0mIZg+R zFpiySOip`ZHXmb8JN`Wl>^}B+3|a*RgUvK#DC$hmK|Xe#Nw7Z#)ne)#Cjsgy+b0Z$ z(*Ql6TXt$l%c&rJYJ0lQW7zud0@zOn{iljPJ+}Edb>LJ`{-phr=No(63)DD?cSqY( z9hwHPrycWo^(>=_bX;e$!{TJwsDAzg+KCvhk$0OhV4u8cqq4jn6Q5zKY@&_HE}iI( z7~hkLE{ni0NitvH9sn;ySiu1Di`3Q+GXZZUDqh62nN3TzJaf#bN#t$QiQ z@$U(7t1b$MJdmXN90sfxj+qC=YvAQqep)36hVf}!&O{7{Fpt) zTE~H13*ZOJixCh3EbyaZu%Wdz-3XMb0cTcl9cRN3V0{rGHL1`#f1|$jaI~Jo?EW zFn8@4eAUDZdl+ev%_SBtzr^i#f5rTBuP}e{1s;9&2G4%?cQAg9LAyTnt63L6SUDNZ6L`Yjv*T4&sPXx=m4Hq zcnb%KRDPw!+%sfi*(*@EvYVrwzd=C4ZT=pAit;E8c^nW6X&oVu<==D8QC z6Q|M&qhnNNk)CnjHwBv{nAp*2HfwdH1;05%z1|{95^NTu<38PFNHl0utCyLnmAG?% z10h59Hy)7=demAqWZ)Cjswfd4jRwzi3EjSjNDadGNYe;1gN^|sFh--TMX54gTtY<0 zWZJ!tp65|tYEoTnx@+%u5hg*T)(KK+10=bIfXx@T3L`~w;z*0MCDWR~S4a$2Ra_r+g76eG zOREh0I%eY`(e0Zw*Jkm*^ShW&e?_wU*93zho(w?vc$I)krHaupjpx6Hxp&{?=+rB$ zuFgU061~6rYo0D2GxRdN!5zZNGPITvD4015%{sQR2nnvgbLX)ORm8>{hzB2IU%!c7 zJV&zK#@pE^eCiy`mJtm>JnYckJES~YBAA_lG$raB&^;PZs#G9KP+l1^=yKzOw|jl;W~{U{44sKx7hpTC!Cv|M;$x_BCtNPxrj^ZkC4U?dI~*^QHgb{W3y$_PrJ;_ z&JkHdc4wQB=)MU603ZNKL_t($t3}!yaQu_k=+zr61`AZL%@FVJG2GmzdVL6@E_g8y!sam(-<4|P#2%YyYL)| zbyT6Aux?%x2DHUD8A-B@N%tU4DXArlsZjL?sKBCiijY2o;n2mZOHE22KP(}n%9W7| z&5r?)=BsTk$3+x#v~_dLc*++e4B?VgGlcbkET2o&2w0BiY=IjbB-jYZaw8xIq9Q*| zxOvU0Jd{jp$c4(>d5ab5VlFIJsf)hl^WeIHT0W%ZV%jtDSb98Za<9cJ-Nv8TR zwLOi+P6gRh^&hJ{{dfBK(>_maKM_QKiSoyGeThU?JN5ZX*O~f$CVr-k1m|&gdrml{ zN8Z}MkB9vWz3$WJVxrC|eVF`wqK-Iu>}1(w<6`P$C+_@2dy_jpx1CekqyU~g-rnS4 zC;!O@h2j$2briueqXWbQsGYnIll`AC7$%!1A1I1@FA(GKcpTq#!6YJbIxMI7mWxMd zorhGo0mc^bs>1cuN{LX;3vP@HkCDP9lQIgCapxk3reo^CaYrW~%kj#eWt63#OU}7O z)VxirkoYc#D07}dX*3duO9A^w>&Sz<%%6LjgM)1rS5~s~y*Pe$Rxp z7&KZt?(58^l!a!l-s0_#9x{lb-m25>_ORMeD*FV!!6cGOSSBVyR25z)C8*5O`mNu@ zRBMRc9aMK8hF!#9kSl=>9XEAO0g2I=dX0yqyw^XZ(U{@<`KJg=4H~UFt!9}|{^}>p z{plNAvzE5CRBKf#m#<-h3MP)RI>G8F7vo7Gjv$R7>SO!I=*zeM7ACV<4SuTrX(kLQ}W3ZYm84$-2QMX4Z zoEDU@APtUc(I$8ZbP|D1v003;88%I@(GZyo5%Cbx7?C6nG^Y+!V=^qcAewQ@_Er{g zv`&-3pb+H}G#c1a8S6QA6B+ubxfZfiMhFj;4I%4*9wK$>Xa_SV#)M8BisZ|dJ3xudJsD@7r8|F>XknG3)&gDCpdBT2 zqXF6M8TJ=1(pgzU)SF~Gy98Tz=c+3@+B6Yx<>2jQ^-b(^6Vm+cGS9ltwAz;$fFU`#&Q*Tt`$x1R)&9h)la@ zJC2|nB4%bVo{GQI??(bdU>A4 zfAw2rD&+XB53o8RXa>k)9ODV&^bmw|{0Q4Y==)^DJ7mKHY?6>hLjvE40csN=WI~on zLa&ZcA=ZWjK^^6lNsU4XA1O;nJghiE66JaijOIjZ%_xL!1hB``maA$DcC&mgo)8Qi z&8<0Rv9@68a%^YT=yBMo%~!F6%;W53Zb;;Yb58Uy3R$BVmqZSl^FCVRLePr2e$x0T z;^-+7Rwo=~BLl@w%%u|`-%fzjJcQ>&{Qo3Ke`2`I7-Ni$fvL}@g6b!fO@4eLFrWT; z66k+Y+2^%+lDX&9HogpChsQwq7wta*+Vg!maQ_nE`Z1vW4=I}l^ppEfD}MrDpWHry zvx~|1#MPhtaPk|NDtiKepFU=Eh&ZMC6Z$({K4Itx#Hj0&^&jt6QDagO)qz|g#8`H; zNIq2s2X20}DKf|nLI|W(qkHChk~7GpP9R7m&Lbf5!9oZe14*tfi8L6SV#ts2O~QGBkH4C zv$XmYt%Ws|KSQZ`mczThV1Mf&%h!I5_RekEpZ$b0SFaP+*Vw-K0ln=zEPv%WQUc12 z28Ra^x&O(hoPXw7ys&~vGm^yOH|CJG&CPdy&bjL^Fo=%m9`#tbc!lon27%Uul@`WA znx<464SIWz*xP)_nQPZjM&yc;7SKqWxyzK+QHWWMu^Q_MJd;qVm+5vR-o3F&rBS8g z`ItCCNvPF)qG9I3g+iB**{~k?Wt!jrKH4uM_cjsT1N5+m9OfZ1QR0BRb{=?R44uUm z?+lJC_7Z+`4rP7T&Mvd}_M6E6@aJ3{4DgI5m4fQh65;Y0w_=kykS27DO(Sd+ zBcd3h9(K?s>u(ZwH;9jSFx?KK8zY7WKM^P`3VMEY{#}Mb;14ot2Lpn=4$)zk2c-1k zgki78pybi3C~A8>f>@JFO&w)(%Hgj>8yo9H-5&jRo09Kw^W#t0eYDQb!}~PKWs**xqpclenxS-tDtn*}HcPQtf`>(E zjnHnt&;?kJAx#iz5p$k_O%eHuSRs!tq`+!Tnr7Hq4Y9C9?ECDuJM7%Q&)&_uc%6vk z@R+?@w>f^eMbdBMhoAzD%wkNOBMEa6a$ub!9NQNoZ%%V5FLE4Pq9~%VutatKEZd)az`?!GC}SvvAxFIdNfuMCgq*o} z0p06zd~nRguRTZY(s|~uKTYe>GpI@(p#-v2#S5!+4sUSy+JB&Q<9!y-Jw-)^$jdL$ zKhgxdd({8Uzs2tzpm!dU9q!}by-76yyT6S{QjjH=h#Ghh57E0ZCdv@i5@NAQ7Dw34 zHYMW`TwGx|>?8M&2^Xpu(PePsE)A_|EY zsT^%1j&@0tE~PVzq(@!SNB8j;&Z2(n_vrUxtT1HH{E+_EI{vNKG0SHV-~HEQK@HEk z1a?o5C(H{-+hoV@Gw9zyCx-;mM;L{$9zq6a?I5YK66uwZxl*d$8Fh(`lIqw zLHQH*6`vmiy3_rd+AmJ2e;SxSaoiVxWFc>kCjaxGgaqAn_}c4b|CffQ=Zzl5#XLGqllFk zjE97=1pVkN0{5b;0<@b#n&&`Y?dd|nB3yF zxp;&W7ztJsB1{%Ya|*~5mtC*j07X6t=iUr*>c+|Yr`jXVEPeIKzJ8!C1jw183p^+t{RzxZRC)dsb5Pdi#en_-QnwtAI^cR$1L-(&I0 zOWgkOP0lROB2|^-;69~VjSPda2Hy{;S1Nq=!CNfO%}{PGK$7KyWs-A_=c^#rg==V1 ztTkj>Q3|16D)HuxJ-o2VGZ)X$+1n+KQ>14dgMv!1l&3G` zxfqaY5ZV%ChH5vZ)El5oMx|axmVNehjFuiPPf|J_P||rkb{%?yK_X`i%?3r6({MYGGkn#vC$fxB^aGK zl~5`1m84n@Y1GQpYZdCX3gwbdy;7nac+|^P0%)7* zhkY823jOX8M_UJ!!w@AjWU&)Fn(%g$B?uF{&?TK9a#js;5aC`XmoQ3d9ROOG$0(nz zM?3889Ww0qsn=V~E-g^2l<~_Y!crCK2@c!49PMn<+uEgCs-P-m>~MfcQmk-cGMLy2 zeHq8;E_4dn08^buUivj`*urY3jA=>p2)_XK?x4CoJX<2$zDx4a>&(;?N*Z)~4>ME7 z6B6C;lb*Xw_`}~r4!guRZ&Hd9>NOvKZ57ohlkV=|1wP?i9dB_3_2ReiFFk`dvp{q0 z4Aq$yl`52yBV_-8nHRpw%$f59evQ(VD;L^fv-7tVth!b}BIEukB8i0V9gzm4CG2-a4JYE=$C{*)OZDSi7Tl3K{H z*P}i+hm9jj=bFe8?0j;Y{?-O7&wYjPo4-N&@Bzt3ucN#Bgvua0$ByDs8UmeBks66( zaOv+IkUo45v%iV%KB5%HsBir?X6q`nE1F3Ndux^la zP6mT4=H>z{TkAaWBk(*02!(Mg3dmjLpol}|MI zWx)Gsz#J2z24DQv#XCzZg(@D0Hx zZm`YSWP}}u%80^+N?`<;5%;Y7j61KGq_P_KZ)_4V-Y+Z?nL7_1;`5|SuG2O{*de|z zIoj(YbWC}Eo;#nsLwEf>r0Fwr^+g6d59rOgkfTn_ySH|@ zw7iU$4#==bp(&R`OxDK}DV3l^H%@3QF4KDIc~Eu4@fN0gj2#S-!#*;}AkMI9gpPU` zz^tC(UC(e>Z*uAEb!6(}`HH#4SvqgOgMIC1EX1)B(~^R)`U5=fDUU4T^zqa@bz5YiiY;f0c8&~9@OpFeLx;IzJ^195Uk)J+ho#NygjGF|4=x85c+1B^{M>_^m_6?!|n=-9Gw<`TDV-sIBNb1a^n z;~+6CTzM96b`Bw$c#T=&o!fN(>i@)Syw2?LHVx||n#=S{%cM6y!8`j5>X{emfBbXe zyB`y*T&I2KE;SLO>n+mthxlO)VKlNHAXZmMcRPsH3y2q=M`1}4flUSR?jE92LM}Eq zTz`n{M##*NDM{2FGIQ-RQKC^Z^B5J;d$>z2vCKbp4S9Bzou9o+_TUp{)qsixRSS`& z5@tBWL<3}?5VK1l671nRV)Fr&x~41!RD6N_wO@y?{&T0ytt}W((qe6j)dS+_A#rpc z759)@AVmq`mC%_p2$e4}HYG_0`S{==q(Vs_sRD%Z5Yk7=iZk5lfax-(ZnQb%nBX=W zu`1;g(h3?`^Hir!1?#7r_mtB=R$n}!;^g&?tlbO z&V)ByfROpXkw1_YTo{b<-SV<mP((|a!ud@E`DZ<@3*w9<;gftJnDCr+>i3^K%5Pi)_9B zGv)(BuM^X{@^uECh(Y(5dZU3tkfuX|uuM=YaqE-!S(=+Cs5dc5=Df=`#Tt{V&>D<& zMo?%h*7zi3gfgR1D)ZK7n{>J<=T{dwb9N4$4YArHr65U$RKq%niSX(b7QXT_R#dUa zJE-n4cF@BP`*^8_I7Ma&G8&Qv0h^bWxmgKWK7Wmx35cVZvlmx5esr6oAOD!=4?9$n zq|hh9_kBv05{?T!hIELDI;6uMX>^PkcCdp!^b=Iy;P*fdoO4)bV2wan>F7lTWEQk> zRG3-*wJYKHmSd+Cg&ZazfNkykt#`=oJut#l>5-7*spgn={oX1@#w^HQP z81wj2nJWwDkE4@hGA?{Z7=$t|`&okY+$xqIC`^`dxZg%-@RWxVW13PaTzg7Lq!6zE z!lH8RgFF}9iJeJMLgnmm24PdA7=rEN2ZpdJsLcfUo+j{NX0}ChHlSSd$h5#}Ny+o5 zRXpe2)ET5%eskSlp*2>gxpJvXPPO^+oR9)-Ev6h|&t2utjXQMrjyU&~XR#(Djt1;+ zZPI@DkYsm{&}i&nNPMt|u?bQCnC`(gOBdECS1WAZzC)G_sV~l<;|Q_{kpp+P%x_&D zMV4U8GpH*sVZ%9eX0SE}=~kF*n$q65k3Za_EC}>iNiUBRg_oOI7l=HTRUXC9m-ya(wh2GllqLJ+^AB$ex1hE z=LuKO6Es8A@j700!O;@7*Rgw#Fzqe;P$8eW%9hQDdV<-x^VC)@aJaF_ zNrW3m5BHBbclj!F7thj~X%h90*|_mGs~4^#7p~zq7w{@|c5i*iqyO~pSl#}VN>;;O zdIeEmh0+qyK$4UKbea;Jz0Be6Bh=RWRN^k|tW(MQU{looAzqvy=3D4S1##{SVqod@ z4LgTNl-fhW<_yPoJ|)^eqdG1c5F!be7eGnO=03qNMq3}*TA=r6om!_)xzt3h zT}CX;682&${UcPP0_7Hj0#WjiK?qrfL}8!(Cb|?N28VbiUx5ne5SL%ZeEo-LZ-y*O z&^j7%`CAiX%n?bl4#@#35g-TnL5Q)6IO!sUEv6T=&XCF{2+JtpJO7hVC@(;$0I4du zN8lLYGLIRH2u|psjAFmd2>>T1xf!h<&(FESa z{qeR7PkV7|3IJau?4IOOpSXu7wx`RA`#iCK8njPup9c895HOE7z7$v=75yUt_7ld) zc>lN`r|&O*oW~u;y`KF04=Fpb?+HNu#NRIf>!*NsapKtN{Y;ge0-TxZ%hX{{2JjR8 zee4_}|NoS}OtvY;z_jpa+v1oL-7A*saxhVtks_C2mmUcBLKm@b*0`8biX_q;sElIs zikMbyFvgAt8Yy#1#r!4B>EZGUE(}20QCpUb%tl}nq;;NkVRI_TTzb;+){X~5up=6* z{FB>PT=OI)pBaNGH!|ccC{o z%@w-ceP*saOM7>p!Oo}5Klekj&Vbu*zrnSaUZ#2F8D!>R(k!Cm%9A zYIFOwKY?_Mi_gDA>+%aUW|la5aG&1JJ)%K}=9x>B=axC%yhp8M@XBR`(F~)E>g)o0 z4<8X9Y_NFsG9m?Gv{Ohdz5`s$w6&H@dVnF587Av9Tdr|))shO$!i8s$m3ee~7tw7a2VEErQAvh~6HMwvnZ(&u?p<9)oITI^`E%@S zY@?Q1%+0lk|MVwRe)S%+I>V$IE%Mw=i;KnA877U$qCUx>M>^;s1~J|sCF~izKG+Dd zM4(fF&@QIEkRx!9oFFq|q^)b^C@&c^o>u|Llt5a6>cp({hAbp~Ho}BM}P!yhC@d&sVmLvHd7)UI&Smf<_6VTlh(=-H$S^Unnujc&mrR;B8&3y zIVfc1t&XsznUTlcrcMY<2#xYR`iE_L@4m`R=#j;ibEvh{5mXJ*hV%N%whl&Z0~b`2TU*u41( zGTBEY29a5WPKhJI*{^(!)ywCxNlJXM&j)|>``Eb!u7CeGk^UTEZHCP^{)prM^1rb1 z>~+k-8Q9sN^Y!20P86}QTt#fG!~7MZPd}!d?$Pb-6YgzOB0>y%_*shSbdbVBh!koe zx<1F?!~3Kw3zQd{bYA~kY}_MQSwQXYqoN_DGi%5wz&kjCxeDI(i!c~aI=e)>drWg> z8Pz_*TVE%rO47A8bfrdm=QH^34@i#=kXw(CfyE>d*|3ic17xj=9t_CR7#VojVT`Pl zNO~R2m5Yd1{uyy;0htZ37^Dz*QX)vvNt-O)#KhaA{Wj8CwCR#&8N&KGWuzjDEdq~9 zrHZx^X#=Eiw2w-K2pOPM1u08dks@d#NU^p6>l3TGmT~O1Fr%``4d+uT0PLs*_nuC; zr38$-F0LtOa>>2w zBkY>T*C7hfUVIigNcTs8y#O6HPXHqii$Qu0)Jkt`B$zQEwB9Qe#eAZR2wF^a(>-!~ozPCUX>hL0OJ-FXZW zD=SF9f%R*oaR$i{FE<{P)uh@W!v?*rJ%XS_MGfd~-(%_8w>Y|gmsX`pb7_YAAG}I! zagL=cU*Yz(pga%=ROGLGfWX0hM;rJ^zOpEhB20=fc|M7DD`0516i;rH zjB?&A2;pHoA0sTP)#T`)OLuR;Gv9g%(cdQR?lQBwjMuEvT%Mz>GCUI_7-G{QUYg*? zeQM1rwQ`yCxWm!bCW~hlSvWJtqmS-T34JOJgBe6fEAwj@B5dqp+)GW=`4^GF3@Wu~ z;TSl4tB9i>_QPLL(|wY|4r=ETJFL=XCy$-)HTc7pZ^u3j6o(Vj52)w(es} zHR{VxVP5|$Dyt2`i_dWM<}axoKcrS^pmcy&t6)kJ)9K(1Gm=`JUXpgkAcdF$xePu=2=j}UDHU*wXb?oEEjq2K| zW5fv5jZpEZ&h);#jEOdwtd}3lE1r~1WIU-Dze{Oc2KGI9P< zUDy5zAqHVw+->d&ckyn8sv-_37=sl8lhaNigp1`9K2}ML5EOzsHjlY=eQ`ocBO7P* z^5yYx){K7bNCMr(+KYUd&Lxn=$UG_3k_-2cXT)2B#WB&?!s>U(oAE`C@2RoH_*1;F zg#o81DEi#M=@MKG0YX(A_p>bFRSag(L!g~{BNicILeHZ+inG^3%Ugsks8$&^_GX-i>$Jy7vjQvp!e9 z{xqIeEL^^T(gDe!4FwO5F&}{+;wwNI8qG4D zN3o-}m*5E=ka4O+hz6vZw{wNxYu{p_% z$fqKa-w*2mys!@FN~2K5GIywH*@!^}QV&o9qY7r3{DGIwa2_)!xHjE8mAMH#PvCMB znnDHNJxB+L3`CZ>@F-8<#RE#E3bvdO>jRo|Ef}Qq?|#b6 zw||{9w)9{98@#ZF`QEpPzVb5tUwurl)1y|&kbz+M#{2kJ7HKTb(Y>>USns12=V*NA zJBZ_LO8XzNFjIq6K<^PH&ma?t$pj4A2s~!$C3fGuN4VFf9D2~0;{ZXNB-Cf;FgE6B zXA^}>MDF*G5z?d7IK%RVRiZc|-q_|>fAnKoGflqvKmJby^Q+)j=)V6t@t^-Eu6^q% z)XXA#fAur6<1USt{sr=<|B;#69PM4GbdRtP?xA0Kj<&9F{%DB0b{1pHh&Vx33~^?O z`-aMk-(v9dUy{Ceo7tDIv$9+zzVRukNU2GI-yI?sLcpj0%MZY__(G!M7`eYqXd*hd zGv;2pj$OJy=cn(XBWMI=d|!}mtW&Z>f`bmE7Fr>AWzZ5|TeAHgdV3r18$RC3GQ@^K z|CrM9S;BApHd@Ug`VoPj=Il=a(xwXK!r#l&|0IU%tfb)mE#n*1eX&iU`PLn(HwUYJWT@faSZu1Rw=3!A)KyU zN{QAQW1>7C41}toM82{uoaTwO877T$XIrj{><9VWoqOI*?8ZYO5i)RCK;%w2;Z~}0 zNpw)TQt?!Rs&h=_@%R&Eg_k}DE8}}mIQEz*FK)^x%ym4aQxs2}vp9Ba6ij*aC&1_k z|9l<@wolletT$nxjIZ@`+B{MGgz|p~VE+O@K7AifZD(q~H>xuY%)bm+p9Esl^}i6% z+o`(Zl=9C5??w9)Ws~)a4-?q?#Qhk3F2MQ}03X#6<93SkGqJyTmc>N9iEiaPAHTL@ zq8<$xc^3+b#3FfAc!1|7`CL}n=78EYlqZWyl{3gl=Z(&(>4de;vxx&b#*K0#FF>*M zXRR59$}sZGn^CzH4*V;D>w`{Eqz*{uF?+V)0e8gejJ*?u$D+7JIqjUCFsN*P(@uO3 zBVNmi?^{0V1Y{-;QjVNHh77GaNQJ@X>hzq8KW4}Z$+rKe~vuW*0kE>Y)@UfMvFFiCVF2Xt+JvYKSK5~(RcbkWJSRLa@k8eM>#K$)eX!k!nWSJ&yG#IX~5LRb+w7$vQ!W^?Y z;ocwrXRd6uS@i^cr7@mF7usIhj$YBs%v==c!9gOy)~u zv&pSTo4k8?#Oe_AUYnJ#f1ALQ#KSIoH}4Ydbg0e51gR!%mf5)f2p`LAqe-=;8659W zZ7wpmwoH4yO<5RPixqYrz~88{g&LtFMv#_%FELQpj?J!EqM? zpK@uI?(Q+9mQq+lu3e>9^%*=oqSDt?Ly$oL!XRgxh* zkHv$vGaSA75#_xUe`S$up+vTEM5Q-Gl??HRH(9!T2K(Fvwtn?7?8YoFdg#DCUu7ep zC-I-Z0GHf7=*CbHKnY8L z_u@-1GfVd2+nDwyUMQ$~CBpChHyCdPF^Eypfc4!_Au@!GKp&F!?_xT)@Xav@MVv$! zVd?9Agvjs%i50PX&b0t32>c3ZmV)t|_gV%>C7s}$a7HWIdFjdFx+uawCr6gid_4h7 ziqN@YPAmqYT$_0W4Mt$T0Ib%H7s5m93?X7S=ZOsA`&gZavytbt7=zU*R!eLi660u` zB`6o(=crXRWP`k;o)eV=a=zLeM_1N|og6JoK^69p}=$OARU_V(;oLcAe0ei7u{pfeU z@uP`WPXGJ4Wrb(-l)q1mXJ?}BY2}~ydGfqP6>*~M#Lp9xS5Ikk@|>T$f2v=T9Tcb3 zod6!EUvrVgE?f|7?$s1R<$WtQDY2D8B;I4aV*kTatbs&&HT6#v(D=Af=))*JN>Jf#ZWCgh`pX z^el0=%b?w+b@>^NcJ8xx?*S{%e-o2M9DVW*3oB=d+Pj=zo#XP0zfN`WA}Z0yQjM$| zvwrt8)~-B_Uuq&ufLq5f;5%Bo`|rF#_ufa$UpYsoyAM&9=KLI;jl0}_>kZmlZ7yBA z#M)C=2z<}U-P=6e!kSUYh6}kCxaCrEZwh$Er_qvZ9CrBNcAs-|HEb4PEmSKdW?L1q zWI%t=r8c+7?1k&tSVO-9{bRD;F?tw7sxetacJ%_=moJbe0+Cv(3r)6v`g1P-^b=-6 zi!YoJm|7=lB&|Rg_f$#CiQgh5qwtL5o)R+Gb+<@eJaD-;%H|<6#<&$2BPM`7?tpPJ z8To3HdtQtJr36x0lqU#$P|~eB8Ra3Rhm^`02>BButvjhPI#&>Nl#M2TmXR)mMJnT5 z9KsTm6kbWv@5LM+#gs}Fid7|JELoO0iFzd+|GRQ@tTOlhxnEZMxz(eTqw;Q+lWOox)3AnYl z$5V@S8cK20iCAdOGdyhb)~`O|`L8`k-0fkrgyYUJhnt&JJfFjj9+g^^oy{#aZat)4 z4r$HI@c+^FW=oPJ*_qyVRMpIU3y(b`_spuy+PbO>y#b8@Kn#EuNQ+P?6ye2SE+~AL zdKB^vhF2pbMFt`ikeF$pf!?dTsF#Q3YHH?Y zs{c9qpa1j{@YNYfCu9HVF}vFtMsj>v#QV7nv9rA{`u4Z5W(}-E`wFc*B9`*-fW?Df zFzBw+fBy$efBS3P>73r5{P(zYjls!NI$c99V^03>|4jejE4FTTNxCWJ*&-yR+U+m{ z%CiZ*?G)*2+~}C{r@y4<3%oX*oJ}zufyIR4>=e~A6pI=5@R01*eN=ZFzyE~7ShA1b z;S|fWufF8g-MdI61A0)-nl__G@%-9Gr0dg6eZoAHAH#N zrem@{`5tQRE|dMIoF1Ow&vMr9zsuUa>ts)!lTJ@aZmr|5ZZn$9(RoFGcN=y8KJ>PO zAydwRXSgbnWkGfOeU=~ph_eOAlLvIPN8kSz^6eku%N#8RFBPTDLr|t);PWHw{0VmP z7%9)7EbuIGc8s$@-yLg%5(|R2E{^SrvI@pvl626@#5^S`1lFc~RJRX4N8ExC?p^~{ zY37;+L^S}sUI}XpDG&^Xnnzw^9q(Jtg_bg$4~jCLK$}rokdSF1P}giL0a~53FpfdE z3U7nlaE(bsB>|k{8w!p0MVJ@raaM?t@6bB2cy{MOVAJP%yl9Qtb^W%deD&9QU5a-v z0`Jy-7d-Lj+js+bzF6ndeZI-(*R^}0{2SN*mjQcurOqYoyuk~vKlz&*0vM zC&<5K|4X;G%ir+*+_u*M?5_jkmzBL1p#KZLx6-MvvZ=AU?y{=aT(c0Vc1}~>M^Ctq z^pKEvNTHNLbPCE4*@3}x=p9&#wl+`_8XPPaPE}}iu<2SY)kyUI)z6+skmv;q16L6T z!VpLnIPq2V&_~I+&?}(Mv>H|kYEK8q$}`YhC!&MnG5{Ys=zN7oFs2W>2a@73I1#iF zis=NuoW-jm_%aUgNk%%@;PmhXetO9EosZBe<>bW|^wtd9d++i1C;tz7TO9`1uk-L9 z{|h^NdtCX>pV8mCj;4o{E@+LDFdX*y>Suq4F`D(8caX9QstA4&yt-A+V)TObjUg|d zJY+hVq9o)g0^k2~+ZOV;UNi!vq?iK`RQ)2qbCcKs^Y(1W!e=NxHQ z(@9eP{+G}3y2rJx0r`B4s|vCtMTwy*3)0?zD{p;(wF5G z7=tzjlNi!eqqQb624xglsd&6qz-w*LdsM^KtYziUDg?OJk*^`^6Bvyo8gCS66M(wW zAviZl5T$Ty9m)h2iz#=v*SWvF%Z;_`{O-j*)2?vm)*YsgkC>eta`V;>&mKLcJJ75R z`%I2bQI+F#KWA-iofl6IS?^}#XEVg-Wc?-8a!j|sMUhuz8q&leWf3&oJ(Lbe4Cd;6 zd}j+?I3NRCFS!kNzRT@j~<3qhvO&oZ|q@u1IUl?i=6WMd#u0zF;a{v zUhboNj!xI$eHX?{>}ZPF+(7SbGu=O;i={irz+1F9q?m!NaJdaDB5P}8H*Vo8#p3yM zI&Oryv5UKNgM&w()5|ON?ta9w5)O}^@!8M+f%0rYwz|0U!9^uN)2{srrIZ=>J+fZ6aCX9s8O?(MRC^d4eZf#B%hFI zhpALlD)N+159w}gQQq0&@Na)Y|8&9NY6rSmFi?95%VJ4)r;p$0vp76q^7(U&IM#+8 zpu)ZX7DvxdkfMkD_(#az4Hk=>wDL@z?_;_>xVDD5z6bMy#nEGQmXh@n?DzzZrj+A3 zs;5w@goQ=S0NLr`mlNE>FG$WF(Agg1wszoqKSZ{!BZWs)0d9#e7bu@YaY#9Ngj+tO zT6~4g=M=>$S~60-g|!u00!_`^0xb?)668aT!C46zw9$wXv?#n2EQX}FiF5|w3dHAl ziZCZND^nrEDUGAV#<|SK?{$D^4d4UVt|!M;(57pq_CVp2NI{hrU%Ztu6^U^uai$Cj zJP>>gT$e!2iz-l!M6kFOPEc_yYvybl&!xr{LJW&<&h%UyTN^Ak*rWyubyBAlZT1{! zZg~FwLNn)SD(AueC7}J4a++(q`h202{^I^z0J*Jta^{5Q4Ju6xNg+GXDqyk9K4fZ$&N^p^qnOFm!h)9XOK zT=-D)S>=*$!wRh98@=iv@npip+j?+T+0nxCz0x{>cF`+uyz>Dt+lo4Ev-Wi+x0YcL zfw0tlJa@fibp{RJ&95kKN>Ijt0_Q8l7bqh4jyTwP8waYY@xBuSMZ>xH)iEO1xQ@~f zY^7$%TjBH;*E{q-dOB2s=su_}kb>2b4&m|Tl5%`Xs%myZP_e-aMkQ3s35$bAY~6Yn z$+mH`=h*Q>*53O|lCv|O{_?+aFgm83&$#o^_b{Da2)Ocqi^?HY$UeB7j(Pfw|LC{u+`7%?-FH|_a@NL{bI7iy+)7#oci{Q#CC=3t+rNjk= zo?710M?-3*_!9C*5LsuqjXh)$W#3(}-ZmUZ#oF`v#TiV~9;vMeJ> z3?5HqtH^y19yb#Kdy;69RK?E*qa$cHDu8R<8V};1wE49X&M(xHK$VkljwDG?(NQj3 zgEYZ+5=fH}53^i=^*lIw$%D};cdl$voQ!yUHe-F>L5~((-`=9PRAjzlb9)VyD!eS& z+)5aq7G!CU+3^vZd%G;lirMIx_da-wN1vUrePu}h3fSq4th3H?S(1+@47v)c1U~Q{7-ZqeaiN&J>>S=xK5W@y36G06SnTZ!`Xx9_{md@ zcI2ZYdV@9a2|llos)X?rl`m1<4*Kwvq4CIe7k%#|M$b=>_uocc-(~rWN6e?Ebb!vX z;_S&OUN5k-8P&VD8Q#6i>_7jUlP3?^_|qS-@mGI_NjxVH9$+85AXgQo_H-phE1}a# zQRRZ_;23o>!_8)>avr2?@7%@TxeL7k>h3L6IU#-U0JewdZ+#bk<85*r-saeH7U&_i zMBJ2W{sb0JD3{N0)oD=0@*Z2Jh#Lm5EsOBjO9sv$Bq&ih=Md2(Ne79XawAcFCFzo^ zUjf~X`VKh|z3%70QA;EJoG?T^`P6k|yq8}EIkwp|p}MTT`BhM=lCaM0mBxD$=kGX3 zy0C&!CukDU&D_my%kFMs8A8DM_{xc^#UzoH7i zsm|B76VEGBW!?nHc>|EY?EPXpudDk8@ct%%{yHFj+4iR1WnleP;QGoj&(-&rlwH#1 zIY8XH;TynCYvPUGK&dBa;=^1=k^3+qYaN!_Yoovg#N@4Q)L&Gzh?|^DQU~2c!!sVU zj$dgZm~fotnXVt!+QOD_{3OAP3xPJiL|V&qwTg_7R==t}?X?a$bxj| zI-;39d&uPUjI*PC9)J27gO27qKmMQS?cSlBoH8FDlBEVMDi~8@0nOU_HV=RP_hia5 zycd?Coei90wByNdeo7&V+kf<@T-~|GaBUqC6P82E99LH1xAZ}WVnT+y001BWNkltSmAxts+VRZ1;Bepk_qcs%0GT~io>!wfV5-qbok=w0jEpHw6NU0bCb>M zyHt}gelf$(&q%ABaz5qMRuns1>^n#4DhB`b8N0uJ$_)`p?HlwU@oQA?rX=AL{wq;57lH`anHLjNlD;4ax|jJjzI0cD9! zG@X8zPS!ywp{xq5t5Bjz5{*s*h?gV{S%?!8{&b@m8F;QH>Njf@KzV9{w51O9ebktg zRDltEs*!#cHKJ7rFfSa{*@W3>gexl~Gt7Q!r|c&ckb550Flu z83ylP6GCY`t}#>9k}voAKl~kNMWO-s4+8 ze24jH1icLLj>kX!8Sj1f+iYIhqLKn-D`x-nQ!3xPk+JA zhwn3)c_#n-bGB~`F}*I@I;7Wy=?EqxjPfvCM^_b{Yum_H#{A?AdK=82pHOvRaPt~x z|NJFMZs{eO)MU_4=)S#&9Zfm=a-a2&zeRtqi~sd!`0){DnDOGtBQ|BYgO{iS6Fuw%M}v>cgM!A}IDgk|iiCc-))>eth&05()QU7!bddQ7*Wz(JSZ8rj z3bt9nrfzek1s~?!+9gugYX{7?2JCYlcz-Sg@f-!FjdR`vL|?}%f33&)5+HwB-OIr7 zr3S#8`u3Xg*S7omy03cKFKO@h3{KUb{7v+@e`6qi5#+yS-%IzuSogB>H-Yy{z_y&P zdhYeF{k?5PHV3ay_Pmi1O4>X*zXI$cE5KeyvbT7)b&?0sIxKTb(7JXu0t{CtGz#gC zCGzb;(<`sK#B02w%B*y2eYCL8>$9$+&Kso}QD96+$xI0@N4XO5G5aF66=@&6mz31m zQhoGpG+4bcPF4?|)PTM2OEYG)m-ND*;YES&Af^YBAZP-Gro<5_1|G1}5vk4bfC~D8 zRNj(inv?zK7?UvA+{RT2)x2P`|7)_{9&2koQZej(_Yct#85Yw8MgrBrM+F~OmY7aL zH9O+bZ+^q=cRoO8JzO5Vt1h2#^5O|Q*KV=i-#}X%C=K4C;!>n9JlL9jb?nQALkYDUKKWD zju5%}E6+L-=`#Yh_O#c@QR1)f>g6i|l;DlvbpY04Bmj3U&8o1{LX+O02Hq+Jde#P_ zw_zz7hACm2DBf~E1YrEX&u2GF<^vf=@FHa~=rgSpH%a;e}M3JN^Zjm#* zwoN&k@$0{T&e}%8=f8QtTlcP!Udh-@6ze-1EX$JNTEhC3UPxPC76>`HFOht~`kIN! zp#le4fFf78;TC%L4pcF_tE*6P+?am$Db>+45?SD9BeYh`_UD|w7?b#du5xt$=m+Fy zGkEkAT`fr8ew*^fU0(j|F&(-L{>LA)JU(Xm{D^MiPy*RnRB`I{sI*57dz1@UjusdN zc4nb6bpQSL;E%q|RD`q9KC|OzY+t`kGQ7&sMy{2%|BEX}y~-hCeb z?7wm6#ue7C?op~SMtdIr-B0L_&sbaUQB@A^e8|z<(Kmw4q5Rcv*;q3yjnI4egk*U} za{UVQI~4OH#1*(aN3HjfZl7{ALGE7RtH&?N3P*KtKy^4~XlINcJwg{H!%QejkIzzi zfAk?^TT*;>$mVg0>8Ffutzn-(VmO+hj6s=aSX(U6%N*rB+E+o8MJv?$ zF2%JSMvtE`_~6^9cmIImr$0eX_mLM*G2%)8`bVg5eTUp>Y*nCbN#elZPqLR^Q1|N^B$u$S`5}ItYl=H zH&DqsO;D;^B7REnyhqP^%u}**5XGs?vjV*Fy$ObI;6Oe2`4(tz1LN>L2tmaNv*?hs zXgs=!K?^I~Ey+n(wOQi^54D_S9W?J<0Px<2fvfhy*9L%d72Xyx@ZN?#)RemDiTA`+ zX^BoL-*&sy1NX{^sIh{$)#vjdzXhu0d^6`>&G(D@x8GZ@H-h#z0QA=eo?fi?n)1u) ze*<7I@b!TGb%w^dqE|tE1nw8XdE9;}5Wo0-8KD2Vx|fx|;rnH6U0SvRsOMf6k^O5u z>~gO7wfmpj2UeiG1v1-+raAA3AmXxBz^1|D=j%i%NkR=_>jBE4-^+C-bkIPJ@KJm zQLDZg1byqCx#XG?IDy3TYI-ON(H%th5J>?Yz@RIG2S6FLB7o9z9KehO&b@bzBr}Xo zj>u;twr<{H^x`o|vSjb}2kiX8pRhUH=665+35kNWD_28i)_logG9v5u!8>eOpmm^7 z42GLL{`D`(e97?E-57K?>yF3I2(=5I&*L|DjK^w z3BlNsfKCLJg#OK!7HbWl;=)y2*>d4W)QKVKWF*}TWenCiiXx|~@{m2z`@m<jpJjzxBe#59kc~IP3Z7JKLPRTyQ#`bNl=6 z@%cZ0#pgdifx>b4d`8ykp(Uq3aG1>wy-iI&T{3#OPnHSdmMB@UtOUs&gO0)%f!{99 zfm4(vs9uKNz8+QwY=P9lh~g<9Kf#^7L@`5YjXOQX{o+^1!6TBylI>pS_?KTY`PCN; zjYE1K`|*d&e|JFsiA!|e{E`2oNBFF)gI+U5R_{+t)T`4pow z_CESHc3Gg)9;1Ky8O7lt+c&PF4xUf|$>ueVUmT#5lGGT=-+smVT87%$L_dB>wpg+# zb7l(EbWAeXg6r2gp3UgIbqBXBu;VF}R%{ItlI0w|^z=4Tq*&5dhRP@wlM0KYb90UP zvlIODIsF|?QO&R~Pw0#nq%(^QHFiBi&1YoF<5P#NN>b;M#3E8)=LM7%W-!2tL+7WY z%2F03{_$t1~?c*SPy{Q!a8;kz=X?Q-pC?`30^xrkp;+E?!{VDZZRjmU)O5 zkuF+1&J{rdx6-6)9q|QKIYxO!qBFo_j3zY+WmSb_Y(Bxc1l`*tUB8CYy%68x9pV;v zKLr+H{vtR#AI zGPc$l^R(W>%hK|~`&y5lAow7`Oz@Gj-;P0(IPNyV?|yZh+Hux+*l#K7rstr6b$7i`1M?OYiX;M(NHh1wYhrd?(K6o zY=nmK!SfN7DQyttaK1oXf%4IMCkzt42AVZs585G-+rILq$Ht+~0(+6Z6#EfM+sk(K zb&Y^u0(VhVA4tLLI950`4o6Vz&~AyJ9-$;;sIzf3LF*78c=GfC9bfV2*%SI#w;66- zMRJGqGnQwEynOhO>v!%3l@DJqKHVqnWSAty*)mX(Jeaj1emUmBZ+^z!TW^tOYlvT> zyv1~S0T2?FbbT3tdpr1-03>~V-tl^d0k{Uo@%lv%N1ZrBd5>2f>jdp8)`uyN4pP2) zwnRizX-$??><$fk>jS8k3^#fV`$J^Dz*hynnxU5^({7i2N~#x!+<0`xdKpys1;Nzn zB%X86V!gO5bwKsSaYj~@8Ak-AM9>~-TQ1(zUIJC7H9v+sLR|puDuC+X2`6}*)#|+t z7ZD|>y1uOLqdGRgS1zm^M1`I@z6+7?TM12~LT!BTYA3MBJ$VjMW(I3ZthK?wRf6{} zXu1n1rAZP)x7TIR?~`Rg{;sMjtgWzR3ARF26{d0_3#|*ktJDTM1X)w!N&>`etAa8B zbU=&0A+S}Y1~CeZMi08k`T)~kBkT7ugAQJK%2`fvHpWe7*hP+A7IZoqwU#nJJ7sIw z#acyKmTYWfh;tZin4X<6+}j{S`0YPG;fH_mK1JnN&c_VbJIqF73=3X9IwC)tvKSRS z|IM7eYZ)qAfUa1U7AZWvPT=ZFF1SKL=1DS8+Cpy=$x^TdVuLdS<&hMMXJ3(yM&LV? zCqWfzt)npcl=*x{t~;z>*~Ki+kWPpB%Q4H(pRjj-n|TM0|MtJqSB{;%F3uG!&MHu# zQ-ht)(N-vq7DytLvjU$D=>Pc-(BJ!z#qo3U<0ll$Gt$D6r0bCNaT>O^2Au34@cFME zUwxPJF0CnpDxdr|?lwaw{^=cLn@IPYO} zN`LnXk`0lEk1(48vz+Bu69zZ8Sj-mWX@})(M!&yC-q9RAJ7Djfd$?tendhkC0ILIM z8i6DeRH{k)8Gd#K^MZcQkZvoSU7$`Dm{MaBg<8|hM*Fz4Q?fyVy0SsCF@*6L$-)C- zY>3rxX!PzTiO*4!Q|##xNj}5wtfT+(e}L=n;3i{OE=Z{G_0JA=*)ObHfd>LoMNaY01>y}G1W~@Lftb#A&ywuEd{=&Wy+DA`0wWnMpe3nS3 zi2>*Mnu}O3`Nc6y;+%PozIquR9mwj#*y>8!&$9zLOt@1V_ z`dfpM!CK4j z9v*=hZtwK?=;j)`nWLMeoJ>o~((%^qU34|aEfyG`EYf+JvV5@Lb zSrIA;nM$n>9v&NkcEeAvpR@SWt;!>JU9CLoPSs`Mvqhp8zV*BbQ7I*4New!aLGN8h z4tv8iYXzN3<86#Dn1ncb+@G)36-1FcgJw|IG2?9=NqnOV;t`dxr05Yly z=Pb2ygs;6;;#R6`Se!3GLAT#yu)aoj&?C)K60I;IAe{CsEw85tauXW(O zM~POSLm+uY;5;P5=B)`$rp~_{cM301BQKJ zbTmht!CHq_&`kw$7gRvH9_hv(#X6+723Z%0aR%NxBrnl}E{U?to;<_&4pmjMbPlXw za*Okp^$$OwEDC&IlfCyY`q2p;S0F>j+4DziEgV;`Y@!lRak50=NqRb{AypPCM=|kC zWRbs89V^UPQ1xjO*9Bb!%{)-0~m-77|{Ruu3s?iZU z*RJ5DLMcyqc#8e>w{(YH(#-++lP6^B8&pT9sP%QkLHgxmvfY%PHt6YsljqMcvoXp2 zE7+OPA93G)4$EEY44o-F9B8PdMTYA?4&L`TQBaIzh;B&f#o=Q5m)@!pfA( z1I@#Q)wJdE7+2*eLQto(f%;{%0k47#q!`2|m~0cheG{7u8k&k03vLGP6mhe#IvkbS zyt@o|UjU)L_9nEbD%7CYx2CW5d>`hrn(7+9tHu!%)}e#b!?_?zumYuSg)J_6wl6s6 z8u{1O%6nL~tpk#1=Ji^!2I307tx&d>ajwBb#3n5RWOdBifT+jQHZH2Gw)@)t&Z=zH z!0L65a?`r@?eDLAegnvDfca&|dEM(`-Pe>~DErp|?3eZJvi^AVC;#DlpS%jFF9P$g z1N2`5;$H{Uzt&KYH`i@_zKE?~srN7Xei?v==4PlRrOt84HA1b!9_rRXo6W->T!tZG z5>V4+h*>Oa5VykQb%2aC4`<-2U4-H-;9YmC{oLUj?|0Ki^sHa}u9S)ioqPo9%RrT( z_O@3M#Mjn%iAW9D>tNM7&2oDHfED+@mOpItMDV!Ps-v$#ee1IjHK{XD8QuqPN)2K) zRXCFAQaW(s5rz_>h+c*;pmqBLy2DLw-F};{?&0!+M1_DNv$h8FV;+9~1=nugMXhge zbaKS;i$kvL?V+7RY=tpMR!wlF9b*WG(n|-2Om}wG}cut@+rk~iE|cfE2^rXDod)e3`^zC;fn&6kv5j3 zBqk;8WTgEbrk9~Q1}{ERvBGmZ*`IN62*WGe^!0+Qa=d&wqdVwPRVk>7owtYV-d=|) z=lQ2&w$}Hk>3b7?>Eu(Ud&ZPB<_mi|C^_}~fSQO>u2@IBUs9jfU*{l1ASR27raOXd%rASWjb-hPY8^Jnyy zGdhU@lW=yt&$>}`j>nJ`EcR#U(=l0ZNzxUTIh>x942DB=QZX$n`q!@EyO#NKgnK#X ziq`0frQj z7g-IAD~e5>In@!8D=P55k$qgv(=`BXJGjmtzXrGUNLoue2Ot@Z0axN}fp=vX=W3N3 z39ETE^)k$jZD3sk_*wx#Xid(mvAXFKoWFi`Kg0X0Qjx2x`znZi)Az60=Q6PUuLjmv z<-)%uV85(itM8F2^ZSBxd40V%df_kI_oBu2W`KSUpyPHRa_(CDX4^`*Wp#tKAEc(W z8qCLYtj7Wof?=UG5VG2dFGG?IUk0$!DBncg+Xlb~K;!FVOs@`l{6z0bV}gi5n}lk5jGvFuTClZNq4T6BVPkUxtu(H(fWlGXssf`8 zz2OEAfBRb|$H#15xyo0+{haw^&aHd*P-U(0>%(=3171k{@oKz<>}#=;d+<7p&?Zj z+q;`kMERp0YadRHBTzM1U_rT}JAkA>L)@mIx$RAQ$H;BVYvG0h0z^ zyGk`An$wA;h(N?kOcE8Z{CTb`!NQQ>c@O8QLV_g;@@-A%n)qm7c)V6fYEYdN>1EJO zaGfN4PXi}D>Gsgw4%#H>EX8y?m@Gj$2`Wobu}lvJm|ho5JthTXJ0!8G<1IX*GPLV3 zKAUmp-92`0SSl=4k@4Qgdvu2>m0K`67*kFho&}FTE4cUWZLYlEqthvwoQ?U}-!8~c z4L5FRjL8vQa{c2znGqHzC2MPf&Pzl|soX+X=4W=vP^MdYrpT)s3)&4R4zDMf{S9!9|5HFs|;hZwJr1y4NARIj_ zuya@zitdf8?ELw+>HNW6a6W;|=VYA>4(50t zq&w4%A#8Rz_|+L58|(^RJm>{-F~ z-UhSTgxS*tU8Px^%t&>HO*L*&Q5wy3wqV#xD5+3R;Yv^8D$)$>;W08R0;LCsB!LQM z69s9CpXX3nFbcVS8~OOV$kl6<EEr(o$8HZnq20V^o4t38l3pCPkGFNxSG9_wm^r?b64jgko8SJ&y_XTk@K&M0QZ%BFKO$Wfa2G-_3Az=?DVGk-w?2WlX{o*OMmh= z-~FWN%{K+-z}p9T0*1*)%kfP{*qGv79w2yw@L_Fd%J14={f>( ziAspXq)IA!;dNAwspT5$+o1_uZPD&M@h7R>{uaEIKuc@RsXmUN5|2q^9C@NJ1HRm<(VY&{lM%UH(%%~J?BN+zuGqO@ z=x-`|sRJ+cx;vaVv6yO?)7!5)RQ=ko0L?? za|YVeHI`ypA(G;>!p)W>)`y=yNjQ44q?&ow?rgF1XYVuk!5ykzPPsUwIygZ`jH-mh? zgqb7F6veE-7=>~=fL?J(CrH1#qC(=TVrdoT?K`;dew%qmp~?bPO)<<-u0oX+ts}mYkB~KXFSBO6B8XKvBeLWX6;I5`z)?_hyklPR`?ZyQg|>X;XC$7&m`@2u*a1Ec=j+v|b&CE#8zDSPEOuiIW1e?3^Q z4<(nBzf$+#5U|%9B30&f0K5fE-w5Qt4y3=X?bi3#8UPoMbFu8z-CqyDU$gzv`WFFl z`yll-sW*CRk0(G-nFu%dDv3}8bZ(XGAt<`WiTxZ$e%0>kT3i?q>NaW_#d_dqyt|=I zx$wgat4kmH+Pc^^z*fP#5HDprA%?Jz{!1W*Q0*0R(AaIMR?0-Yfn zWc#6xgO=1oMt$y{Ihqs z{)%hYuhHpdDDUWOth2Ybi!q9OAAZQrt(#DU6%s8p%Zkky+_K1PNv#0Ds>X;RCa#j& z+a8S|YYUu>SsMu)Umz@LdKa=g5@ZaO#O!(yy#4X0;ygw)ovg!y7souDdYtW}B}J4b zQG#)nr-w(RNy(k-Td2xY6*I`^NUeO*Dd>NoH4 zmXFl+aGyw+Jd~EG788MLizX8!9^-p-7PTog!4qGz$RaST=anXYT2^sa^|eEyRC@5T zn*`ESNIIH@6%Iz0s>uQ?&A3~8^fbW`2*yiXS&98nO3>ob5(0gLUQ__$;Xbm>*dR8p zAB#AI-S; zK}xDMPaZ7M8m_;UAoD!Ld~^eSp|Ayha#%DJGPV+*`3Ne6w>L^Iz% zBXy1}t0*aOiwZTj7$ulgp|!@K&}oN!JfkQrj-WPFP70*ka+h1>*;g7!DFd zG}F<9USU~ZOF>suXxz~W-DS?~V2)aP%yx(Ii!oVcF{!Y8HlufYjjEG!_^_ZOnog%A zu@*aZRHeuDx*$1|m-{GRk|ilpc#3hs{Ip;;a;)`IvaTjGLYY?-Q;#ZyUTVzMou?Wfsb*qL8E*e+WAQW`(8l9UT z<2yTeX8;{M>vn>;18^ghpT)VV9;4wrP;Vp63#e0Q&95sb)M~z}z1`BPBjGt~W273m z*Arh&MR9}}rgL2H)|>|`Ant3By{dN(q&M`M7Gq4|yrI1H{z_Y~+tw~?15aLkT?YOy+t$9(8aH+8 z;+-Rmw|4QaxyBOP7tyQ6YrR!pQy^MY6{(eAn#bjmzF)Wr<-&VY^&$mkRV_SU(z>bT zLc0-cMYW1ri9>uDfP3@|2mW~o>Ivsn#(}2h`qna#br#TgOn-r&Uw5h*DB^Wu1hQenp@BradI<$@R67{&NtpI`pNKXCQNHE!Iw zi7oTyHZc8+;q9wry&k?QQ7Q(%*8Js$qi@6Va4k>btL9oXhK(;`d3~*__*1wLBo_g? zvMz!@VK$j^xWCV0J|jyES*L@yF?f%tKoUK&8jtchI&+*&XMC~0KqYJ8p7c-@CFAia z>%%n$9nXznm$ci*Z?`J*6$j}^Yi!c`Fpat|31U^39D z&|5R8G~w~flH-Y|^ipGGoDcph@X`Ah?%bL?YLtY;UlOTNUZTMj>g#%Lgk~ZQtIu%) zj`TT+-uH&y67Ssxkh`cx5rKKFMpMg=x~jyLk>=)V`OC1s@*sW*Zi4A)ibct6q}aQ% zMcT2rLUHtBOuuhPJH)J)Bb1+lTatA({oMp)!T4o?Die11GP;8~{q>M}bnnI%-E0BV zGE$xbEv+`xP~fd#mtdzwc$^anMy>du1s{zTs*+^0Pq!=J3kp|Yt;3h$-WRP%vW&`m zmP<>KS2*V>6G3hD=w98Td*=%Mk8YuNGp2ULVs?xv3KCmj?UK^wi1K7f7N6A|?@Gie zL@ZT)hE}k#y+yT{2Y~7eP!(1ikPZj`_!Z@7%<%RmYHOWdH$%@BC=a%>%%)4aWr>XE zn59Ec9LZIUIxFDBVYUs+mnFXNWH-0)Hm7d{N=3Q!^w)YU&I*p7P3UYTYz+(?%ox2~ z(A64c9j=0nD;wBF=(kCP$*7{Tf)OFp4%1aw5Bc1arV6VaX4og`B~+6+Dse~#l?}$J zQqgE#@1X8oA^Gq=UJFv@n3&r``7#=bb6kGRa{i3ve1i8jJbzZj7!ws#z^q5S!g-HF zsEWY%RsyM3Ar7Gmt5e>Ed<#Ya4veIvq7Yx=Dn)wh574{s;^~G}V=C|ysE!bKjC0fA zFu5@2_&AR@{-1LLm1pG?tK+h2UU+QdV&G+bj>C#8zDC#(_;P8n~1XNI-^F(!- zP_tgit;dNlmbL<7YlESgBWsY}HXd5rTGY*;US&gW1zYEkiQ{~|9Ez;YrJn13G;|ug z*Amxg_v;*;<~6T#K>HG~{z@G#)O|zyuYljnK=XxTvBF~V#`gWCAOEcZd;Qfk<+Z1? zL6Xw??px*GWV^hf+`s;NeUn@~78m!6CveHC&^*+9F?bWwLywU5l-}o^7*L`q)^-we|`_=V2ckN?e>uaY%`_j-xBznKy z>H%|(+7LN+iG>(A=z~|-Ncga0 zq7pnB!BP}c7V|07`5bKU)J~^oOebetxw;p)pPmTrqK8HWa*DSz5=q%v@6j**Ki1x6 z$&wvO5BoggWLDj}-P6;Yo@xGwlteR{$;gE^TIp@{czPJ^w4%&NnrTRpoMCf%`c744 z<_WkK@So2;5GV8YOmx@H6MzG7IQ$QQ1Mz$O)!+SR;OPrC4BW;m{`7gn?e+QOoO9$i>^2}jAO(7&}mcH4tPIguAY+=m8XlO zkEnHje%SCS*wSvWNT=Ox-@NBs<2ISyR@p;*-5a(zb{&FoD8?}_Zoyrk_q0nYv;6aC z#lDB{4?yr0JO1`>-|*KzZTRos1^R9F@rH@lZ3k|f;(51QXGCzj&4153@VpCdJFwjp zxBZU&20T5z;puk6{q}_0(+&H5#=Q@l`OK>*H=D$W8Tq`&A9IvV1uP7mY`*VjDs!Hl z81UPO681QL!Zu!U$P8)t$AA87{QLjsCw!By_!s}|hJXKW|A5zTg8zb7{N04o zhtGGs-4#E67QDRPar=J9fBbjAU;c+T{4f9JhJX66KI7}}?)VS??!a&U{0n~Z^>7 z9ys(BLrib$f!F(hZoqMW!+p%~x^I7&liM#pe8KPk>aQUHK7V?~zA46w066f|@BRyZ z_m_WzUq37U=0E&L+g)Un z&eM+@zW?PLUS9q`{K-F8eEpA#zxvOD&o{yS^LM;{1wIeK(_g>fr+GI5q)(_tU(B^ZSO+8}R%^ zaN893Z-U#e1>67lr@%k{HMTFG@%H)?j{BHrHgw>=2@ZV)-o9bn|A4RG{uaj=#>aNW zF--RKn44ci?5N3R-!H(7rQd+>FRp9m8o8K_JiZUyo)!1)1^f1jr>6~{fAJUC{_MB& zgN5Te#(0B_IVl~-?;*$E0eCe#Rkcx`w;WBLd}W^$7d)_(H5qF(FXwts%tme&nlks~ zCbMr48FB1i1op*bc>JA(PLdNz#!}su0;!PE;5gm=fGAJSug?5oyAM98o-TyUU3j}> zLH!`B)584`KPMo*gTcn1+KNAnGyi1V`RT9^-b=BI^yaL;Th9`QkbCm2tQ4w!xIap&G0_Y`gBVi=SP${Y{g=rx_^RfPne$I6Sf_A`pus~Zg2BTq%tQr3IJo^FaGr}@lS4Z z*>K=J|ma{3m?V1Hbz1Z}G#I zA0baS{Oy1LulU>F{|)}IZ}{aee~B+Y{sM3J83P(#=oq*k-?2S?#{clkPx#;Q&+xm~ zCt!QFZD!zCKmLF}`J(vp`8!^I|6lR-Pkw_x{fj@v)31Mn+t)wf^UGI^mpjJm9ru?5 z_is0h*B_@7Kjs%yJt}H)s*R}3ez;k4M+@d0598m>;GIpyWXErc5dj@`m0Zm6co&&h z1**5{7#?%AXz0LpJYyTrldU!ZwgGIf*gqZEKONYf@7SLP#?y~@ zd-?^Q@r?gz2>#;xf$!gs8Mk}9;ZO_rkURF<9nVkuyopIR?4o#*xia{)@7QlUwtd5X zo3Z&ZX%T@w%`c&bNIIXz#M*mgj5l1L%<}9=IL(E&?9=6~8Vv&I+Z=>_%r8*NmtWvt z{F5jA_5b^yu>a~a{^f5!;eH67_D}e$|MC^%^N#PgZ+LrEJpJ-d@Q1(o8~pg=C;aN) ze8%|gSLhc&|LhaK9{&x${@1_6Z~o~oFveeD`$q?EL+6#B#teRzL&h9}PdYHL1J6&u zZ+;Ct-LMUf3HIjlViT546<_w-ygKvs6))euLGJ??iqG2(Uv4|(wqgJB3Ao*GKkm4X zJ7k+zXWj4zJ>{L4@HblWiQ2R?6ee{9?b?mvCQrZ?RF#b>9;%n?C*Ys&!4~G{`M96@?tjzJ>mPezr&Lb z?E4Ml0G_}6h~qf$^7<7&{ttrZ+cQ)KKHaC>?4Q5j?fwSAz^4s(vhyH>(|0=%GHW_N91kHo;Jd4Dvt4|iSM&({H>%tJZ4Gt`ms%WxZ1etSzc(9r!+85Ww($)f z@-gG!2Gkw(;rF?7Y`Zjvn>Cv`RIdEQPw^9N1IGc6Q+HQHWt$;L=5#0B&81NRaD&P- zuz$w3&#NL8H;nxb!FR~~dW*q%AAhA%xL#^3ojY+|DE^;Np z;|*={qgD=iur$srYy!2A9Zx2`2qUaJ=E=hmncbgJ!G~^5ax$beJr)B|EVju6dJ@%a#n^`3hn^R}bN9xGzmx|0=PQ>_pdz!H0Zb_z3{i>niWi^L{ zb*-N@xP6-RxxWIKcjo5;jp@9Bxg&SXt7dh(&9M;Em-`0D^IYsWtlzRhx7$3gAi!}` z+>UMPtZ|3jZcv>ovhz!yJFtHN)Hlf$a?EoSy4l_Trq{>)6|#MTj8A}kn|N-!^?UM( z+KQ^`TkOE9Vtxb=GS66;7!JKdpXPP7^SWZ#ZAJdg5vShl@4R@xj;V`dYiD+BH+qO4 z)^z!qyPD$rU1DEW_8XymcmUEFwoo(%WbDB9jDdk6Um^M(^MJpf^YHML=InZ<%`r+H zHCp=CY(4u2>}2}yoBiXMzNbvX{6OQ74P*O^O@4&D3Gng?+f~Y=#?jJwyU+U< z4#HMxq9dFG_5VutLt(RH%&?j$(W>ISPseM6K=mtt8{~L~>ioLpCU$sOd@E2Vo<1~=@t4LEKPea5x}haMO>a44{E`~0xbc!T0@R~PPfd(9hE z4`aPp3MVG?p-g_=te-)r$g(pEAu9;K3C;tOwKHMGbp{YP%xgh&((0!V)YAN%hd}2w zhypW2d(cyDXJ}$)XA*pZ3t(P6ZvCGgFLav@r;qh+#%&)Kq81n_R1WCo{dOJ_<0=o( zL42Gl&8?V|>}O{-`1cR|8aJ0~x0lW@Bb;AXBN^PKP~dHz5FMKUhhiLenz%qi4u^1sFYj-i0Q;iel# z+~hHJ!tj;kF%P~^);)~h=k6l5uhVbY?MA5k0N$of+nxmay5mjfmz}YH0`wL4ZC(|- zLm;Af`~KJ1_GjE~Uoh^kfWBbY8+5xtF)t5LJ8N^>KVj$wY&LPx`KVPl4X_VAIA_G1I&4f{6lke?IoEli9t4~j!>V+}Zupuza#hMCfqjx+sMAeOD& zM*EJp3#!G%%qtsTq5IREbVjJ0&h-XgOghCWa(m5)IIZE6`uKl{*WiPpbLbLRoFh$eSgrnp{QX{)j|c#(8f zsN?$%{NK}I_q1EQ1O@7tT$Q%}90PNL zU|W3Qj2NEBD^y>wZBJpK#(}xY1rIwAnk&+nhEi1c7M~7R+7j)h0+!4x491V|NLZdJ zbmiNZQn5P6UKdheR7zC zuH%j}2or(F^2vKkJz>3|(0=fUbS?9ZM$*Fw_f4#`&f&Ia1U<09O~boo3t zKf{f7aTyfj@As>50xAC(LNdT0J6xuP3Lyp%(qcs ze4li=z1h9{H;5>n=NCJ)o+%Z96tR!H-F*D&&}luP3<=3;k4V@{GBYdl*HJxl#|m{?{*z z9moUkq&J-pO%I1$06F=CKrN2i?V?|`EPjolz+}UA%fiQ@arWOX5@Ea8&a=HI{wVsG z6`I>tgzkv8{9aqZq?Z7|9jfzC>IUGz3v`=dUUP@l&!!MgTz_fT@8g+}e?Ba;bl9)je!tyYIE|-@C@qXKQplGp z^E3#NPH--e1qOBC9;LzC*Mi>3Un=hg!1!>v6`?p>1_&lDb%v8kbr!`hjdu1f(~yL; z^j!^Dd~WPQ3{tFKSFWIgm0!?eOhKVBQP3frP+apr^RSz3n~m>zlT3uj*j0wU0*^NU ze9!A5Oh%JFQ{XHX5;Ds&&6J&m9OEiKk~DMCEpOIx_axZ4dz1 ztw2G&0mMqU7m@8m@`;8S?~Nw43ix5P%^IHJ2fp1c@VneaZ#F^oVbT(HmaJhbxzM>f z39(P8%ywb{-@cSPSv14K1UvGoOrZvl{H8k!3l&}L@wv`4wz5kTL$$jz2M{4Da6_x^ z1PM0eN4~Oysp}%7MRq3&^j?$mb*t$*eaUe+mDP{|>8( zH~pTb*zIw)H~XNZll`m;h4zZc1081d4+J_Kz@f|(IwRh8;-413TmwPUN4DY0IX>Cv zi$@>j>x0(^WtLfs#E-UZKX1v@z}f+qb743vmqjYv)TigaKxX}C?){pe4K=_wYz$MzzfUAuc7ir1GkI`4Cmd`{V*jrE~Wr^B6Gsk1csT&=%6yU zH$#}l8}#@J(H9hF9sb2Niy6e2@8gcS3TJi3Z8(lVm`nI-i-JBx#R!ug4VAA4jSt8D zgN!?JOigLbB4ooGfDNi zg2cuiZc$f>xd19+_sb9CpHym-WJmDW^pz&9;wXf7L7-hOL$5%-202VFghQ(K-^)v?lx$_w}?T!UZM$8io8FfT` zAI$nBfcRuw2ZjP$T&LzLE#D&%ZBpXOJFe1E0v1YhCZO?GkAIlE3ln4`Bbc}(Ar;%^ z;Wn_zdq2P9&Y2t74Y9&~Set4gNB6_%?K+E{G^6`r<0P~TusLod(~M@KJ9|GQ6CF#< za53Q!%b=V0p19N<1s;+jV1}QI9-U#Sm{pbG!Es`XF0n3byP)n2r7oL%r(4?7`TYjK zKXiv}%Q#`52)F|tJA#@MBU_N$c01z{*C-+N%Smlfx(asN(eyqg&T}d=!^Vo@&U!RM zJ$z(BwtR*aB+Rn@wbS`h|7wh>;S>I|@1fdiuA6t5d`CZhk;d$5*d6D)qE*^IrjKTQ z@vfD3L+*T{Z@ekKLn^KqtiW!v_W~U|bldZWnZtLEJmk_sTqFBrVB`Xb*#05eV)X+%gLVLX6y1k`!oM=_ar{mu(TaO&!#-a87mK`A z)`PrWP9NlTz-9I#Q7_Uvyw)GLQ;su}bB0r?JM{pngm78Ces`fMWe71&!-M=szcF#2 zjORkyI`0ajv_%U4WI!4$oEDP#g_dS8R{aUZcJ5~?uDQkS;>!5Oyv7|*UP0`{h$$?^ zy)!+wxuT;`jPVT^FEg%G4`{@=-yv%8&A#1l4t=gZD`FKqo{WP|=OX9Mk{wBUDKM{| zB)Xe|m+M&a;bT;4P$s z*Gs~Xv&^ba-w*)A9ZtbKyjAI{MV?K*J#@yLBU^5!p*G%Pr!?MOB#Mxx9-y{m+e|gE zqv%Bi^CL{PY;ampzLM&p>zSp3XT6*C#Fznahe&KY-lzJjxhbPj-xVIJltnoH)pS#= zm})w#vW2ndDsy1T2#fPb(mL6dbF^T>{BouP$Wfc)J!BC7h{=GoD%9kwk*7?cot+*C zJCbT*I->80`8Bs12ngcV4WE!0t^I7yEX(o1P7ms9v0IkTy4Y=n>wkBq{5SO>Y!rmX z-Nq$&$Y^Ud7$8*-%yBJ-e>0nJIIBX(E9MvGW~{sK8fV94>C6HsVQwWu zdHk|$zRq%fjd98`ukKfU1{l2cHFoH%j~a^==6h_@!HzM#XD)2zeA&D zIuk|^43Kfu7j;Iz3D;hr=uT;bZS|KG{>7tQPC|FaDuoQ%+P2l3*!pJNc@<$pA!77} z$93k*zS-y42ae+vIKE-G!>Foui;R7O8N@a@kt&1R3Z9Cm*>l|@#=_IEsQ{$z1NE4~F!k7~VPQoqw6fvS1Tn(ph(5Q4Ejhjli zLQ&3-E~To^_1AF4G~bGZ_^Mc8^lYJsrmvWLtD!@P<~C*%W>6(L_EY`&8dB29`@wol z2n%)&yhZT}1L3M0+!XpMCilIn;gUmq7)p&Eg4HP#QYO)fX8}K*!*Lo`B{Rw8a>h@) z4h~40V13S8iWo=lhVh2ZIO#Z$7j=65Cc#0UD@CsGg^ajb7pmIRC>@V=OjI1)t%|OenH%ZQ*;40$YY4a z#|q_wg4rX3%UE?yzEL0#n|iwUQKCMf(Vf*LeNx79j6-d@j*WMPAO0^H(LG+^alK^= zA1Z|}${_eoGCwD{p6|BE3FLU~h)JxYH++HQZnU_~n~Cs!+WXsXyP%{?%SWFoPFltw zaf_=X+t`OzJvq6B5nDS-Sz7Dyf4(c~lN4uD-`!W|n}OVu3TxkJ+GVr#qu^ZWQPMm3 zs@y5*vQTU919hJ8dI0}U`-=}SNxlO}4kO~NLSmS*S1?f}=aCUQ!EybBrwdt38XA09 z1t*km&nrnfJ0naSX}|TH><_mU^H*wefbj;Ad2OAjg~q7eq=7p`@AFm}yE@Q?Ofc^O-b@f7gtwZq4qERt zZn@|@UBgX;&{19c~9HF+9S;5x zyjK%Kk)%e*0f;W2M7<^i^^BHKzeF33RqFy%>BEG5@qDp>71U=)-E?yxs-PTF0d&B^R3hfwNYwY|jpl zuv__Ip9!3DaUQ>lkvpVh$FA`6olXahe$!;bbuQ~RyYiRza4XLjJwj#E41rdb5OgoJ z6@v3{GP4_)@$C}anX&#ew0E96f@0q1z6r4Tq8Nv)RGfuzgre-wxKrO9d0%md=1x__ z`)6BXSZ6)1Z~KlP*%y;nKkMW4oP3_U;Bnvkf*TQ_V%Ks#kW-Gy?{(+aG^`4}g!D#Q*S>2%u1f$=uKMyckkN3*mtxIxN$ z^p9A3wm1*RD#40}YIXF3L5z+@hZ*NCLEYhPpM-VsTXL76&dH?}ky8yZar6GD8KOd7 zX@8NVjt*;WZ}o_oP?>zk;rRNX3igd^cGLTE=9Ch^65(>RV)n@Pp~+GF;oEbZ$6B~a zFK7H1p=JQWAqizPJ1P)UeZ#t_gmY^_)Xp%@aole=$bN(FVmw&w0LRMDBy-vX1^?9z zQN3&PyoS-2ozBqv>}UZI&c;;^k_9j0nDB(r-wAX%bVS1hvbbcUvDe*10`)AB>E>w1 zIfeX<(^#%?ZGU#V-v`mKGdijO5 zhxK0KJy>?U&NB;}_^pv%G5NED?4L%v4hJChKjB?qxZgv`wm2f(Uk|6@dQIOsZHVrU zSFEtR`S5aLx>{*s;u8d^XPb&mOecc}j9$+g>+-ph$E&jXAg=>nW?$8LRiN_WEj2sH zYC2&g6 zV%!0bYd^}oCl1c4=D|Qi5p`^b!2-GJ4Y&eiWMno2pNi0IH1-=GjXA6?jd zjZ=`JR@@G+@o9wE$WS|=h(r1fmemOHM&ZZlJImb0qCkT$8oL_YHU@DXUF{+83CrVF6 z;FDo5txW~d^h#Iq?F>h4l0z&;?5W$@L`vtC zne`yJgNQ|?y<&b-;R%p!@_$4hrIVX_k!a_6of@k-~HQ9jIECNJ#a}a7xU8MR`=%a1J{%UYEU> zr7mVV&HjhsGG;RxP0|SED{B0@IT->oSmxZggAq=o(|b&1p%(k;hX%*nblmY~xZk1b zUy_`MP{qHVYX8J;d(m!$gC@S}=i@yUl&ee#IX*G&>?j}b&E*)ccEi9_1=V4gpSkD3 zI=dMeTI54@#Z3G+hcEj{t9raDhQ)i}-OaD!6nfyw^Swv0C=2-HqyU}_qLw^izGnIW zC{7Q&yGHk+^Ln~%$J@8BxW9hIr_a+_jxyo6dnlN+%Dh>@UIM%Yv0GElk_eV#OCd3{ zLcV98WGP~leKm(CDjU_6nu425j=LrO%j10N?{qyS=SQ|A9Zr2AA{D)y(~GQ|=;7BT z3fIwj4@>+rDJMEAGFeT0j1t}rB#vyp(dR|A`3#l+( zUEKCVEi51J&k103po#aEbdBj=?D}?nvrug()^bAj9fK9tTE~w6Dyf>-VPIW2>i9vh z3==ycPIQd2iKkDxC2W@K8Xv1^gEq{?D8CjmuAX%|>dk(CpPBn^m#j&^W!G7s&%fgG zq6W)0sX6C<0xYjO<<)ks7bvUuooBWEEi^jQEY35;{MKklzcs$@>Qr9Y525~onfUa04W=+v!QN-jZ z7)xvdmqzDoSyzpy-C>^D$2c&4xB;JcTfEv4_iY2qbPCz3o0Wm|S{9^QkZH1Cs zLSC#cL0LDL&mL+n3mG#Y zHA3EqDEXYOoR}f# zrM8n3+xd_%TXF5J@BV37!a3QcKvxypc*5JuD~>U+vD&h~H5_4~-%omm^R$@WsmG^& zi9?vM#g>yODAl2j#uN;sShsz`1*`eonMYmLhKG~rqMb)ZoRaGgoE*Z_U(!8g0;wnq z7p0nkG8sIf;_>LMqhUi`H!kpG1rttko1$@(ia5J8CtLY#2w$vF*Ck^B`zu5~W3IX% z@LNNRL$1`KdU%-`(%pFs6-o0N< z&&MD2vFJRuVrXjnGU=)uJndiRr`!w4HF=NIlqz%nc7BD17zt0d zFO6!VDWS9GZ{dCv3VA2&2BKDRa-Q`=UYC#1-}%9$)Hn4W_4!9i z$(Vl6cpK|4!f;Jh?qOvUr_Ld|a#j?{&v8z{ce1wVx4VTgWL2Qs-&LN4I`s28^h>b|fjFxOQOr(_*_<_yWlAkL*;+d!-Tg<@(Xk=i-B-hEKQ} zZP$X-U%C)3GmY4B83O2PNN&E_atAo|bM`$Wi|LT2rtavfKQ`OrkTC$e*kKm2^H#P) z4ZF*KUJv;+53AmJuT7)PXi*an01sE%^ZZjy&pNoSO4D$l(aVA07R-K{{A9lKcut7i z?~!&NOFctT-f}l;{e7B=I6_2e0zKy)jqzY`UdEmDVur2OnzvIoCPx$ZqU^~kq%RG z*b&A=`sc0%=|C`j9oKYZ#0+?3(Q9FeP$c9S@D9j(!VzC*^!|CB9d=7xWfW)aTm!9E5kx{wg{soPtm1E&_x^b2Sp7UCL#k|hUXg>TSTPFYFhqRnSy2V_e z?hd%zZRMU7$@zDWs|A4gFjMrE%C%4o?X(mdhZz538dAS^IY{WvWODv|4%^j3&_CmQ z{ewi?Til#t>&ol=Iif$=e}zIeI>^jw+h3wTzQZ*VelcXw zTq!HbaiwEmohA8@3hBXsXZ8ymdHeyNcn8PwWPrLYe*GU@kE9aGHf*9}Ux8KF?$RNU z{mEeN$eTj!pLz^F?HR?jrrCGy*Ya_GGuf_$+J`Vg_zp1~q40p2AitWz84YWq{I`M<`FJ$T?^+NjxnA`($;hc;J7@HBiRXL(=Nml$JHY9}Gop`qaAo#k_Vyr> zld_YI=r8eamTtE{#DUvNZ#8-|=}!)x?<_?=KP#o9XceyQP*H3(i+zzmsh2rd2tJ(p z@M){)rQuVuq<9x(jh9#%Mm`xrAmz%P>dpCXVBY}U=0s2IaA;KH+ti8}YuVaZxRSQ< z76`?Ev$7VtZGZ-(^j89QR@(du>+Cu2{wo%xNi@QF{4p{DJA z!eebaHRmg;br=~xD_tqY;YJ|-Q_RU4Fb@*$z&30VLQE%mD+fUB))1+xA67j$sg<&t z$nd?a;8K^Yl9#Y6Ww8q9S(jw4e!m|}Mm#qZA5pS$GUXxdcB?CHe=!+lJ+@l;-erw ze#pNkeBUX10)0<5=CAevCMOpCPHT$CAvLXRE1oOOEiLLMyg%|AKylKqbV47vvI0k@ z@@gghG9LY%GVyBd6`Ht$G33HJTb)6}3700^{+XiTm~Xz3A{3D*@^+M5eHR(fF`(l+ z1aDLE4Raze=HGDM-EsGAb-tN|Nav+@GTeBv|SsG%;-K@;z#z zD^;&g5#J5)1=HtW0J`CL{SLt$n@{p=95g-*WviZpX*F@-^K&WyhQ!z06JH8hSvbil zEgr(;XFxh{%$)g?V*kAz8!&eSWfMU1Oo#Nbj+CvXFmF?5=u@4(f*iUCun(iLPRQ}A zl(Pv#=#Z`4*yG*WpqWN;%GZC!gh?b;?EoM@(~dJsz*MT{)IkZrLs)|Cti3_M$>k;F z{2#|q^MO3(Yo+ywnj8GoWi|ARPZ0bHS`C~Ao};$y=^6W{8)O&Li6#RjzS-$9b??cK zs49V|v@&i4Sg%7>3-mrceeAW2tA{d1y;U zPJ3g%SWzEAx6pN6*xMpTp+VHyes_ATexJsr=da+qjz$vF$2`XJqR!LP+x!5`Df?0W zB2VAR?|BX67L7*d9Z-@nR^c$9-^qcCdQj!M*9}ww_~>t3QHlfp(9R@R43Et*FKB zh+r3x{P1gVx=B}b!1;ts3ruj_-A{#lgO&f~fs$1BvMs*Z=(Bl+9ooee}K zZyqZ+aJf^g{z$s?m`3H7+D-3-lsen(UA=s{DM+K;X@+U1-0>OH#?3F1yS+PXJf1?P z$^mT!@t(H!m^L`!5wucToCx}9fEOM|Z-f70QLeXp1-HmwvbEHHIT-6|_D{Q5_Vynp zUCAkfya)5Boe!410J~+^h~Ylsyz}o^QbDcGEpa%F2J;W~yS!@*;H9(OnWL?y$6X1_ zRrc10l|!%!#W=Ow;N!p>^`j8b|Jq&Vh0yfXN*Pg?wy&$kcDznwJy$Y4{DlNZT`~Ep zyF2ao$Wt7s*XWV)hsVqTcA1)WO)W14&u@L0#WunZWwnn#wiAk4kaTNwb;Zbp7i^(t z{a)wOSd>@ir6v~*cAC>;c~e@i@M5`@%5eSKBC@`qEXu1pK`%nvf9+3(qR zluk~z0(r(n!1Ek;*?G%dV`6@7n38P`Q^J9PB>F2hE=)zIMz$@q0=ZPrQBpY>Q!Dz- z8r-T=@xT}_821-!`bO=zZZiEgTz}RB>rpK-|3o9LKVs}+*9bUGz`|A&WfrzZTiw;R ztR5wqL(2SR-Au_vT_x0QrL+jI<%+DNeG-OqoEklSd``NQcZGa;$0==~;rrw+T=D_^ zTbhuIzPYT#4o}Ky*mex~HOtW5IMM+v)Kx}=i>f+qNr#Dkr;XFWQFBK<;e_x6TG>Kt z>fhBCTzOrMC8(Vh{T3t)IXd%ey$wf7PF@gj!RO0%9z9q1y;Fz2lfTMaf@LCofQhvK z&vxFi&i@Awjq%@#laqXcpjA+Je(u`O+9K69iR+^G>Vn^MDt}n&+gzJ=omN7oblz1i9)| zXf)}hd~?m|#38Ssq(Nso&Jy!8b8~yqewW=0damS1n}e@@h>(Q0Oz?P&n*uA$T%V$9 zT(Qy}_mO|P@nGEnIVWXky0-S*APN>vC_!@A9QQYHIsmyt#vAnI8^!@_+Y>}~_!?-4 zZM4Ejip`VKU2;s~cw{hD(ozUbS7V&PPOk6#lv@y-hoX)tXVpcj{98tGJ){9S^@kAf zqJZ#^+G>dcG-Y&Ndo|uZIWG-C)y@`xoLs@EJ+Riivnt2`QfQcAORc@k%d5{^|i8bt$UC7$);e29>j`Bldm&LBKX_gRcPw)Ek%se2Ig5>F=`R@8fR z+L>{Ngr#|9x04IfxSwcrX+SUD9sRS8ykhlrdarYk&*ulbS2~RJ>s3pJTRC&l+g5{f z9UT)xiOz6HUDA?iI2Xd0r_^sF^7@qX7$M`eE624U?)D_>1?H}}Y&%r#Mkg8OQcYgt z-G&@5>U+Fb7@>E*g(emV+GOYCv@^qM`&;_c-_J68hFQ@Hware)Ql|6v;yDTadyjqq z>;mAbKaa{ULC=Zw0VetjtbZ$ziVD>c{ct|2zWC^GT;yHBuKL{K+XLXV@;+I)SkL97 z)OK@pdbzMZQt=2!PZs42DZkMnj6W&nh=1LpuBjM(1)grJ7@PUI+q_X??9jnitQn3= z2j2c}sW1{v$I}&RD#+}lUFWE-=uB7n3RN7etq#s)8?V@DMI>Mx0>-z(k$n+?U4gQA zx}uOa`S5ltoEU6)7biYsXF(RqYtgm<($9=vTFw@l12|C&B1wlXNUW5)+qANb%(qPM z`RslZ%ML(ZqUe5VLos83C+#MwY^Uf-mWBV2IVER@(NW~EXsfJXtzsXM$yMdc=M)li z0wCRII2uW$#hoXXfo;|zrhf?A60gri-JhYJ&be}%8lBMg@UjsCpqs$zOq9l*MohEr`t)(&RaU_5LLCLxSKJoS;^AZV=5)}wzcSyG zZtD(U*YT%%Kr|xTdHPCeFWYsRr;U~z25oYNmm5Ix3hP&DGivsJ)G?~NAT*Xl8yy4r zWhR++so7>3^RH6Hd>){{ce;~oodc{r237V)=;k?sdvX@~su2G`#a07iDn)#{#=_e5IA628+U= zaza&~2-wSVo+2j!+;%GWHF1dcJ-wiu2BXG#n!+r~dTy_k19DLNOuYiz4wYw&@qKRp zx_)tmU^Maf{O5i3mG)F_=|>9nw+^((+@4Q0GPi?=!3%{q2(Q)`ML~3;>g)Pi9iZuR z*;g~$nDMI{a8W-5$o)kIH{ zml^q9_Ixt5R_riVwQ)gy$aEQVFK9iX|8SjEj%U`^@G;(zL7^F~xzhLkRafcyzBstCT<&9l&#+>w}LTjC+Q}0 z_fi!&>Ln7c;mSl*Yr8BT>JyYl_<_o)uf|iK%HKtQnZA$m3(Pxdr5?s}Rjpq9y{PlS z>jyHjQNthspq8CHBxE4~1d*&V8qRiH3^pFXdRF_jY<2!vDQ@PxJnibZek9 zLEzr1D9J>ZQ=Q1ZoRH^^tF*C9W{05v^`v!%7&5{n>ZG5M(i$-P0xf5 zN_uO=jbcF;hi{MTVb*D~fDfm|UP5*I?f?agoZ9xqhIb6C04nutMIL%hxXF^4dzKaE zzyl}ex$ELn9{q4$Q96)1+}eyZk=$3fyXY(2tHG%4TpdzAJzibc{~s#e$G~JMm{)K* z*vY!E_!TI;UiugW;VX%`Qnpzz{X?tKk*86g6#lDXJDbz6k^DUv$E~uoeS|Rn)j?E< zMOeukW4j(VT_8JYBW4#>F^&T=hOLg%0?8sYhP$aI8ixaE-rn-%jN1z4QM-?xF2nBwJ^=rKV6}cwsElU{88jc5=B&7ZN=sXm4=kH?aQ=P| z#@nZK;OD<{8dk8R2(HpwUTw;0wQ8%?!N{FLisTF%imMwqK@Im{0@4b2n57oi>psO8 zz^g!Rz_vXD@&>)%O}OV>#Tr*as$J@0rhns(x}x2YUq@vp$mv@hsBUC(SHRzMAmIr&3h+Dm3~XiiJ-<0E0CF|*ys90y__#rnt9F_Ui91Q2y=a#m%SF$rst_}- zV>Pi6=UpE|8{4{SE!MLK4id9Ag9-nT3Mf)BcRmYa@9k0#PbkctF|l2YIDQ#BH~j{x zXu6^8P|mlY1G^jH=KVc$ACs`lWHq>zv9Bf;F0=g$tLIT*IYiKHdDUX^1#)tkG0?64 z2sz+>7>!ggW5X7=9G!H*3h!E__>CemmL`h(JJYt>JsxNpFFuUeDRP!bCXgVn0`BA2 zu!_Yv3&XKc&8o}D77mXCQ?N#tG=iS9` zFd2PoN6b+V9c}b*Mai_AEXEZ|jsvY`PQA);q|AoCj%6Rd2uIiJ@lk4wTb#7B@@n0$ z_JMd@d@NVO+S8)hl~Mx{mt(iZcw!-VO^%fDNroq!D_^c15~1yuWRgUo8q~1(#7w9gZcp6Ql1BN_u zR}t5C!}SimdlKpJJj6$OoO%>kNl&|Iw+Y2^HP|QGC!#NjN~`3~Lqg$MT+Y9GDy_`xh;@iEQXp0ps(Mz<{%3O8| zd8B*heS#Bkgx;*y=n`X^gpU8}ygWh10kumNpm(S|0ox}Cc3=$XafcoX-Teb_^V($b zuRGIt6dJ{3jd!Go7FT~yFsuC5;W92OJl=sRubuH1{LOinD(9-)J36X>egt*_^GCJ$ zs4odquY+7U>OB+&K&+Z~1s4Wg69#ByAN=;dxd+GPaZwJywPW7OEz?OVPr4zGd_`3G zL))Z81FlF2XQDS6jUT2vf~$W<1Kp?{4w>0e59|yG?$G-y^uA;4&yf9xd5TbOfIb7V zW5{mdG@ny=1*U9>W-%@;omb#JF&rYNj$p1jwu7UKILp|s?2e6kohK&3R9fzM2+q#f z$qlgP%^cET_f@}IdZm!+W3`aaLh=S;53WRk>TGtb>olUHvH3@^cx(#oH2sxQd+(pW z@$J{GZ!1DZf3pvY1kP!g?XYwuDgE_4epl_5UyG_EzwpyahBJG0KGnlHTBWTOy(mwU zkkv4k%ud5KT*Rh#wZ@9e_{ue0uvsbO2D{5v?*lWPA`i?gy3nfwD)U_#{F5`?>V@-$ zCU{gsb+8^Qk5=0Q4cX+|NJ9NY+g9JhFdeF!cl}IgSo3p{g+U_79LJap^o6ac&~NJU zmGf5R8QZ9$c7Y|=>+>GC-RcABd30M?-~{jolr&c7SBSBVAK=MpB1pWPNF$wgjsar) zxU+R6Qe?btrvZodbsPYpaGy0cZ_jB$E1yn9Z+-I zRH1srCjP9`XsI?X+QNg%N;=8d%3)u@@!ukkTK?2`eGGGzw#>h3Zwa)(;RDYfyQ;oS z`Wbb-3z`5FFgmFEN|X+_9K+=+Cz;R+*tV?;CUd-!p_h4hQf!7L+eJL{R(Q%iB#> zCmbFb=e$|#+6d}J{z|@Fo>9A6p8S4Bysv2J4jtK&OxM7B{^6B*w={MOQ;}IZL*nD2 z$rTd~1=Er)XI+NcA#@D@nn>6C{kh)OpThS}Yo<-7e@-UqA>Rc*oaicx@lJZ3jb+xI zx-xN(9mX;~l{`K^`PERc`U~G!T#SPHkN(gUo*q zg!`k~T?1r{I~3`dlVJ?rHz9rq(|i7uZ!N1Yq`cwMr<;md)Bkk}`JDIV}fz(vEiaS)_5XO4|Dm&)4 ziYAQ6s9U(=Tg>i!cqq(4l<~XMw~{v1mn53Bdd;eKX8C)+sxH$&rRM>kegn1VCM{;2 zt~?cf+X;r22&IW*zp(>IgGxN$tN6uerdeQa$@w9>Hrlf29mk!2<@#$a4^}pv;>L6dSd+9WDynYw0*ws`( z!=V;zCnrehU+rYL2?f6GsM6#_?ftPtGp0I2yh$qpl@;Cg#Te+k&8#3nPN;vcfLqFT z4Nfbi6QjJ=^So2J;4R`K<#Pe*x0wOZJ4Ey2hU&H)+jQP-e6-U|4WCnZ3-dhFL1(^# zaObk6;#MclzY8q)ccHiR1hkOL)$2Pt@ZpO2Stj49?1RZ4stoIX{>-|RW87Wwo*Z*e zM**F`8w~7y8D6t0PkAf2Kjxj&u*d^xl@)!2GA>r&&%RSbX4M~t_coNvP@Aqnh3Hxo zd3WOcop0N)e?Ie%wgmHwe{aBe%~R_BNfgzoq+|Q+0E#=O0QPyRp8A;vsT)w|2|r*e zN&glOlkSVJkXjwo-Obr8TFG*X?n2eo&1%Hcq3GrZBG|SKaR5^)kg9#aLcIMns;OxG zK7EZbEg=jVCTo@{%BGKNWlQgA3FAk9TpoS$A{iU585&XAmUJJo4$EjWQ*ANpv%a;l zs&&!|VvaB%g3)dUvgA-lS-!`lUn!NVr@@LeM`K-901M}lJ|L}cUZ3+$8_#lfg~PY3 ze48B1Qhp`kdp*tiLKBp*JI2($*w`c^x7TShtR!1jRfg9)9s9&~^>}_a+7~nr2jr1b z?|L#}m-%1B_NT6Z3-#6cC9Orj9+9QH>b*Jc={{+a)nrltV3YY>6_sfxi(wT2+tl4< zG1GB$`emPDdQUHCsRIkR4!h#xRUJM5LEaLd55T>f{a%~@ zz-mX=G3S?yvE)b1K?xdU86J-H*uPWvs*RT!uOb@;W}o-*muA|91l`)|Z7t8Prwn$5aT;aZC@WtRRr*jKfb&9G z?_0k6;)$2~@<|)jjOZ^hEUA^mo!>_U9ISp=p4( zV+*Q??3lN`8n-Z*jp;?27KkbyFt4QuWJbW3u{VCMH)BXB9>P0FKvzeeZZ{$0-HnIPN@DRV z(v7KA&BKnV=r`m9%|}O_GC_yzr%)S30)pmF z_d<2zAnvd4+PKVgCD&*Mh4Vl-9w9$Lut}3sRh@@xzY-$HCnosI$!k-DK?ILo^>S;4 z88j|9alT2C9&l%F4uwx7I%Vl^oJ--!PUVHlwmmi(6_#;S`t9c-nvB&EWPPdBR?nxl z1XUk4P{!{RhG6AWw|J4tk5QpA?dvM-yHB5hv+Y!ZaW>LkR#P7-Y`nVj>U_`2EcM4s zB^!1^yR9aN*l;@||MC@vW`Ckk?E2A7WT)MPgb%J;>{Rw~JCR&%3`0bm*E}uxxz0<~ z@MoPd;VZ4IJ|>yTtl!KN;c;SsvSHrOe1pmja|vaGO5X84?Uq{zZma6oE{By)O8L|W zp1_04xAEz9o$?mME<|Y0$^lq_Vl;?_+3+T?v zF^3`#{t4pFcWpZYUZyGHaPp$RTdW8wm&=qatzyo)DLVnm2V?-0PfAm}IZ;^nF+oSq z)H4bKoF*?Z6wddlyo-8SIQJ(9!gDErIa>2^VBoD8Ua9MmaY1IR_w-EsuGb=?+lF8Hd`)vgzwG3&3T2mzB2ccVMm? z`#=*Ptovu+@$*7u(B3as)q6Rdbu{DnbKgG-6OZGz$|u2ZNvB5$Kx;;EDne*XY)tW% z!jB+2T&!vvl0OWg( z4lr6*1dEvXSa6f)qd4uFM*uvDOtrIR;bH>_pA%m^GAs%Xw~%sA9fNrrE@LZ0>%2M6 zX)9iejhFxcAOJ~3K~!8?$j_s#^z+A*&NY{vhvFQbYO^pBYTwG%un_wX>8i8P@q24~ z+20vY?)7@r;`t)xD_^bl_wlBcau*rrN$t4Egdf)L!Yll-CPmTlM5`nP_qpNc4u8;t z+ZUpt6qr07tvR`9{Z7B!bvI2Cv`=+`GY*M~TM$Gk@1vqFG)=uLraPwdew$Y@!_QUO zt#8|A8kob09KTsU`Iha1wzPKp4?FEq--_S(U2EQ>Rrf1id!$EBxL<)@>?vwD9Qh7qVgmvk)ot42Ohhi90QWKf~> z@*d53zq_$?ny^x;HJ7}ypLYRYY=kKlSH?QXX+MC&!e_<-Iqvo`CRSQ0grOKi4=C#5 zW)dZ~Ay?f(hnM6Jm|ApO4ql0G#$R!A9y#=3k~SS8ufN`CBB&pd;-@=qJ%v z9{}!5on5u9jaPrBlF!ku{F*(l!osV&rD`Wfld0LtVz7d4grxT`#)}MDUttfl40~#? zV;)VFt4w%^=gP7qG~t$QtF@4DG=9rn8`5(nuU~QMI?|K841YJ_k#crEPa0pUKiQ%u z=TI2>P56{9_D6T*&KJ|SWAFg0XkJs7)J9r8p3L>pZ`Ut;E7p4?EcmU`Yd@qr9q}|g zS0Oc}DnpF*Cz3EqH$@9067kpwyai;8dt^ZW7+REHYLE@z{;%=-QlEiY&^=W+y9O8 zzo9eyefXi%xq^^ean@J0)p)Jfpv8N55KWj)q+mKy7noKj-+?F^dYw~Ev4_HBty(05%w(Z~$J3*TnP>ZX6+x#A=}ypUcaw*Z5l-eC z#7wXAZdq1Ly3)RA4h&#Bpkp3Xo%R>=#+ia)BSPn^$kKKGY8AbY@5)hMI`&)_+SAjz zEcCuSNI$i=%)ESk|G6k|SHtI!`s#$kkRzJ>`4dOYSK!_Kaf%xh`L1`9e3c>=ckj zOHw(fHcl@`jOjz;7b~|Pcur2}C1BCbjF$LI=qdk59dL4RiY;hH@k>_W?k z{&uIB!&Mwdven9c>1AcX6N=(22F)(gPGY0R0$v5gxYuPl6P7BAr)A-6cVa zxhid8QnT7cN!7~*PSw&K{z^QgcK5vUHyjk{L+})1MLVVB)vYmFe_w{l@NXv2qcpq& zR~kAMJ!e0X*GDq-vjpcs_6Kzf!~d)zKM$w;0MpVT2ZF;tvZ8*1UF5|(uInl=7w=bT zoPN>i6U-x;NdvfW{z*4jmqHW?hSCIaZQB%|)N1Ss)M$K6Z;ZVdD zXRNB{iGL`?Y>pc9Nd6Ye#Ngq>A5oDLc=WpqXAsHzNo@m{<4~=G(~|DmEnx(+-e6fC zgJ5AlV06ZPxjI|6fh!i&v04rLi|3AB^fMj8dKKE@LoEs{xBUYo;mhiqSG!WmtDT+G zSh{?Zk#SlVfytV3BE>zZ&f%qF**m6yf3>#ulXyhuM3?X4zo;;9PGi}f$+H3JlgL>~ zyAqH|7?-ff3Eht$A^jO}J+BKK|?!5dNjvcMLeSrAk*A_K-qGM}d>$ zQ8F8jS8W&2MPC?PTGomOgGUy;SKvI4+Vu7xsRGxNE?6fR&GuJpQSjH=ucFJyR$twE zrkv*G<=h6S-oVds?Z_$VB8F$))#lq9f1Yej2a$&W!R4CYy;$=t@oW5t&jm?ss$D3s zr~ztr*kjzYV%H*aN-O*mZ5w=mG&^*fWOlvAW3rO%ULFa8-TAZ<3rS~>TTv(Ji_JLAG~a^MNKp7s$KPFr@^^GOR{(X1=C zCGnP?)-|Dp9Yzl|NfqW4Y@bI7KBV`RVqoLdaLI5U1RuCk&LqdjTy--r-4;%tLr``- zMCR9N9l+&*pDqhw1PPXn6YB4Jw3+yTZX8gnE8Qxdc=d7eSEW}XZb5%#v5ti!Rd}@_^N8SVl2bh{5%n{;nPYFg6<+vAQH#?98jH)l&xho^8mE(` zxm@zITAe>tg-~Z~Fy^8E~J`;pWMk}hGoeKvQog7eiar&`TrSYt!?Gh2( znmIzN^n%odtdEKg<=;wri|DG3om;R4J(-rhPPDueY~#IXx7F44*-F2i(iY?06P9Xj zk*M$FKYIQ?Wx3qXD*6H7E1I+?W84D?HxMq!WH3T*9NwKJZsQTWzk}+he4y1yFj21c zWtE0MBHy3)Xv>C{X?9U>DvQt{(Wm^#0##*_I=8kmUs?Je;TT$@;mA(mDVDJdo0VB? zDR;Y7{FtK1=kH)8S2W>!O05T(o1kdu_klNI$w{Cg4sMc?SUYz0Fab{TR>!lJW7(g0v7t-j1ZX$V%?afj z835jLekAPOSxTM6;YNJ|aV~SlhYhO4e^=k!B#vU4MFjl;fKvZURIINZ}*F|Es;chyQKwM22 z21Mum*o0)ban@)(h{T;C9He#9k-D-rCu4Kc&b_or8MLT0f-&CZeYZZF@5DM(BXNAF*$ ze?e2~Lcw?8`<@D|J;w({{2EM7({uUY!FLQLm+wNmV%w`aPDx!p-bdpf3=Y7xu_=sx z)`hI2!!h!@y2I|gz;<*+J6-K3VU1@_e6T22^pV>lMY&UbHR)JQXG6Dg zF)7et8m0mue3~7_nnQ~^Eb@r6&q^VEbu+OFX)!ru*+FSVwA&(8?1}~q$(-A0wL{{O zrNwqjp>Y|wv!V(a(gjR|zvN*qca`QzSHk{4j!*Tj@-Ff_@VoeY=Uv?Qg+?a8%Sg+%vv?B1_jzm2t&l%sicq%|uvD z!Eo4sG$k0SG7LbXS^ch}No(5#b5^6M&R&orJ5&#YQaf$6_o~a>uVnYxvt-{UBiz9r zRuhW4bgp%_8NYJ{Ad8e`qTAFNKFC>C*rej1XXB{We)2H#V5XH((HsN%c}AN;vs!3g zG3Q+-yUyuPL0YL@ukS3kT#>5U7JBR3)#Hv#uLI|yPM%uTOG39=wJva72|j{nJU;@5 z3z(}kJ-?qo8=t*b_to$e^jRP;&9Gq?o9s=q`eXd{E@;XyHoi9R*NNnAXRHqv2asZZ-qH>$3<%^zU+e3wwB;F|8MVGyCg|*EG6^Eo>SfR|9|Li&D3;d zxM@Ft;OfD{%sn!*_B44S-JORdKu8x1u%Q9&ClnCt;uYIUx2>yV-(l~FZ|h_8?4 z<0gw~iZI#98~|QGp}z_W>sV=fR6FA5Ra$$EX!~D>jzs0Ju98pc2bxQK8Jgbq3;;Ja zN64G8S36Cvy{2B1!i^o6WPYTOC@H|UY!k!Df#ztocOUJWDev_mvFTwP%*MLsD-^dB z2Eia{l7})n_&c#@D#KjJyj+&8P0nF#1-Z2iUENS`O%Y#KbvJ3VHkQ2|b+R*dVR)Bm zwI7^{&_>{}EzoYx?S6N|Uf0=>X_~3N0AIwdG>lF%EL>oQgbxu>1MQHcV?AtX6JOf) zh3J#zM0b~<-SzdT1G0X%5xowhF|!<^nJx~}chfe_!i9{94ZRx1vbr~?Qg2W+daKp< z=Gj~sq>}>pj8`X_%0I?{k%kX`Z0zRSDU;HV4ySJ|sNhe*gY!Gh3>rVKw>v1H$_BjS z3-;7Fkg$Iae^*KPL3DgrgWuW!!KaozNw~kPiNlq=^)>9KuI})TCg1_84A5(T8(as> zLSLvyNIKALGg&ExB(cCuFvVW3s7^=w&JGQ?fykeLR`r#Sk;qLC50^y6Rfn2aC1`_yr-8JVwTM zZ>#B(aOG?5qe-ZwQX@AAApiEGVK=UmRIUcd+$%G@6$a&y_A}2mqv7(U8NHrpzQm7& z;$FWTS&bjv#54^K93qXDB(9IdeP;4z_J=q68peNil`=+XzxKz#pd!iGOnGJYRX^Q$ z6gy$|_E%gPdn1?)Jo#m!aPK-W?kn6iCRD@uQ*;^i>=N@qbl~-}wLo@;$=EI~<@liX zw410IoM?Zg>y_Xct*mdP`FR;4Gu9K06WMmKk^MJxYmgnXV@me^!@hsqhn%NW+4RXx z92!witii9}q?cv=ZQ8`Ku1=m|@);)^z^CaC5Hu>`?E{VnWV`?o1|*pZLAzRzmu=bV zZQ)zh*3VV~w^jL@eYjH7de}1nWt@1uacyBFOTx?+njtVZbPVldo{SBhCIF6Yfd-+G z8#!(n;7GA?S@BuDTawqyK?r%Uoy2BPogdQ7cqZ+d`N%YA{yJX5>aiIZUC(fQVtbg+ zjQ2Tdd#}^>#YXlPCVLPy(-eUeBT-TYO?fLLP2Fhe|ca<#dB+SIeqk`@S5g#Oc zbU%mwA}k_+utZbC3*Gn1uo^1s z43i=^%C7h>NW!f$L=9aTXDOh7GKix|IVVVpo4j#@d;!Eez8MYA6T{dF%)`}k(?hV( zKE@Vn`|6QNEFlC#v=&t(tDpL2N={^h_^@JDjX^7PZ$N>wLi4kf|y-+ z!8kD=z1fYVQboa%j445!4vc#~JRcDZEbF0Mpw-YVBIzsc{4J0-M#HFXU zUIzx-e2w_ocn-(rpzqpNCGh5W1)QNly`K4dTTNywdkZ?IHD9lbRId2+qfMU7WC*`k z9wSi};-SL{HAOSvJpW$3b6u8nF@Dm6}yjJK6xAZLKeNDLp?UlhN$womfS>{}Sm zl70;`hCUhSdi$~%;3K;-li_OEwOw-pmy>*k4;!Jt1_qsKTtfibsSE=i0MXV~m{D1u zk04%U2l^&{P*;yUW(H};Kkb$^9n3CYA537I0*{8twOpgg@QLBHXsLc$fICzMX-j=O==mU`Z)N43z7x^EiOvW%k(|L;O*ZKwqRq0%uqCJuYSkbx z-0bLj#x1zET>vEPPBsR+=jc(r{q?P<&7l)aSWIQ@N^ft9>=7#DVK2HfdO}@>=G3`3 zByXJj*ha?6jD*@jE?3<2mjMbJ$g@pKfv8{_W{ytJoBHzG(lOO>EIKK!W^31IBg{_( zY0+qFt=VmN^n*aX`8d)G3bAfq#01i$o`fAI*jNu5b5b{1Bg_=(~q)ayCtjaXfkr624Zs0n^YkN zdwOTIFJ4T3EUv5U4dOTB!pkXrtY(VV zB5L{eq!Rn}LLZ^Lclwyf_KWB5Nd?lrPb6j<^b3o=*iKsn%l0~D_D9c{ln`(C!px~Z z6||rn{vQR&u4~n?%a5|seteMKCIe;MLXKcv9l5R#OoXfU&Bua29!qRLQ@xe=eG2FY zjXfGe#%^W0vC!9@JgE#Rq3hwN0`;v7L}cEaN|XY1a`Bf}(MM&yoF0@XsMOaBW$z&Se^yez)$u$@58L44HT-xGA0KX;jDq%Bp4luY6&r4CQsk=)l@2`Z&I}j1 zxM3b~s+RSw#PSH@!JH+9=VN{~-j?H0ravzv#(cZk@A6yHzb8Q4=IK zwS54pagciLbnSyvGhlmru;p|^b?0ERTXqg2`c`GH``)qsZneBo#sjb@dkDERD$>}- zmQn8353XTTU#7rrkSCQD+Ab{j0-e_E-cZ%rG{E3D$_Uv>K~lLUJC2!Pi6^!2Z8NeD zUVgL}US6?zyu6`GN~`LLXP>-;iYxEX^q#DDOpT^L%$nRZlIn`uE37*k*@n)}&~t)K zo!kv45Q_N9WDYLtH%xXm`L1(pY{bxMF2jf?13u2kV*6$0CF>KP&+AH>!F|WNcpj-v zj%fJ4@wURt<`X^LtlcF2iiWED6}?{^-*yb0qpn@39Y8g=D`jFrs=pAje-28Dj{0sV z#FSb4l-50H((2e{rg|V152ZfpYI_CRxLqcAoa9|2-megK;2vnK`YY@Bf$eC&GhK6Z z(y=j!GwF-LKTOZ~Y~;(5M(_W*95xG2v%MrhEB}##300&O01xpy<@G;R5D&;1Xk_^z zUv|>b1W!9{gLRl$ml=(n1G5u{Bt&7pL_{4cCp0^_)0;}9#;ds~X{H_9pBkRCJ4I5Q{7B$63?ARTe_!u6d|%_XQ1Pl{)r)fWu%8F7@?{e78o;Tfvyo4a34%>l&5F z&>XP?W64)1w95mHU{=z^W)r{D{iJ>lp_Aw(d?WZw0ck=U3ZE#T>X1&*7{24c4egSR zbxrrqW8`E(VQ>K8q!&#Kk$+-Mu^p5U=rW4kvacMJli8G+w7c&vvw)J>*hKW!lnk=0 z!b}GskAlr`*}cn~O|)@KUdm(KrsYk<-tKo%g6JcfPIV*qKEW#%GO+dP{rnn`rqmchL{rSi>8D3X*CE zCBYyu+}eSJ8koo=Q5vpK`BCfeq;xWqHj!^juZ#Vwso8*j(+F`T`f_b4FIYlvI!Kgc zbmgQK+9kUlV~ls@VM4%uOf(v2?~l-@KrbENUcO{Jhu{E21GoU%owE#`r15QQLx!lb zaqD!NjkGblrlkj*nEFHmZcQ?iRi>=l$AN8|hX8f*cFOz)83sPq#1%Bs)6E`LZy{Xa z^q%sS&8nXP1gLRX0E&c%+9&hGZ6?diNsoSl9<-KW)E(^~J3jneDYYyzs`Em|FxeZ~ z#*t3xIMqL&7wG##q>YuBpG^AxhE7jZR(KH*bA6+yh;2(TrFw+7yEfIPh?mM&*}n54 zEYx^&$&O!@mE8-*JJ@!@nREo}UGVN>y)U)(1*zc-D<^q;k<2EFO&bY*>#(Wk=l$-0 zXC~h?>Smr-@~;Wp%zl;c2Au&(*yFBR|?ueW6&YtkbbkCrHsW?Y@C&8PR}FJ%(WT- z03ZNKL_t(ly#)LrI2DTNA>WWVBuSpd2;NBfe` zcfUO%2@XDaq1(%zumtPN-`cpQ=o69}^n7C^#y)GHy}?JcjMSgrI4wZcvX2a-7|r2} zO*Hn9Yi#}Q+DD(!2GC8^^Fm!2{!7JxiOE#V#Ab5K%!Cun{;q{dtq1CynpEIq%%mrD zs4x4V0-HXFNZ)h9J)P?onntwyt(m#c!6(=;Q+lN*`gNdN;UKxoGxE#g6Mb6xV^Fsw z%xJuve}mrTqA$>#(b*vT5po*<4~n7&z@wPq3VbcsMg%Gd(ovo`x;$Sk<_uvN@RJ(P z8e`XI@AlKk5Bl_Agvm+f$CoLvief!$$1hz zPmjA>hV0E zMP?LCOAkTd2#VNL@k9dP>gf?jYGwyS+M{1@bfb5(?{W2#Bl}TpN*fXD^Pp}c+Fj&4 zD(({;A9j6IMK)D;`2##3Z0)d|5*y5Oy!#Plj!jz=7Z!oi4QJoT@Nag&Z8_+@!4Nm zCv-S}j6Ng7GAO4{-+V%r0`n}+^GF?1lGpp1fh-x1MUlD1(kvIo=Pu1<_NzQE5WhkC zBi-UcMC0u<_4gKlr*0gYz9RUXWQD5?eK1leaX>(IgrS1q@V%gS*JE1+1uAk{B?)FZEMTST(4}oq|C6~DEqD* z*vxmC?#*(q$Z?xRFZj`atHXj!>Gl~-tG}lJ9+-`2nHvZ)!vcuSgap(K4Lq-vW$7I7 z=U|}t@7`wzo@&(;m}1){ZQN+o0k0rW+?pg5?;>Ch9VXGiOmq;P z=RxIh;Xz#QgI9UV`9-FanS}pM#Lu>}(GTJa5kKi9A>s!ekMcqbIeQ!F>PZKCOk58M zH6X%WzP{S7dodA|Xgd{MKe!sr^E>e&YafHxdd=vaKMwf}wJG!Dm*#+sO_IU{lxNc7@bT9e{bl ze%+-1xz#3)Lx0UVhA zP#sI+{9*xbLZ(%j0!7;_R)T1jTqTk=Ge>g`KZ)fjF%yn&Hw6hV&<}>bVtJIs>*Juu zw{LVlK1knoY}$?p%0)RsHR@qn^%%q_9YWRiGsywHq(ie^v``n99_7Avs<+56Kj`2` zy=kW8m0E^-CG+~bFC6l@@!HxetEDUFeYIyMz6_=PJEf7bpU}v7PQ$3KQwH&8YTzyr zzQ_M%R^x*4I!J>=w3EGYgml&NFq;OWX=rJAp-h+@a|Y zZwAoi+fHmVBWqDZ%VEydxR|l8dq%B%!~13Zff(b!z@XRuKUhc(p;PM31E*9lUR8*T zAv}%;6?^$?+jpC=Ohoh~=I_M(jfg+!Jm6h>4ov9^djkvDKBRcAJH~_TijetQZ%2{y zqZo7|;`6j^#XYONFrz!m*pBtX`(D$6-DQ>oVuLpg#(1JaLmo`ma*K z-uFUy`%n24^SGnCqtt$q_7R!Oj@Yz_mSIzfn{3o<7q0lFxR-h#nVL44-T0&`7*3w? zsYceAt)qE7?;T1Oh;?3R9_e*ieRv2`fFr^yyG6#&M6I}6I=n%Z|W0(GZNH(ue5;Mc(ooogzb0f z>EV#3mV-EfCmfvcWkPNo8xI5cq_REys37@4^6{u=*}bhsPO(NUg|SHY6$h1-cR8QL z^en!M`Vi6gUlfeabsNls_|pfqv56x`DegmyZ=!a8@$PD19J+uelJw1V}o}QKo zBiT0guq+mtS%y5yv%DNG(Nqhf?NQB4YDZ&U#x|zjrgq=EWffaQkp?nDE9m09!ngh2 z-B34Jb_x-n1s-zwI}V~#L65RMh>m&)wyboYT^cSEkTSU_`{en-^mu$LlK?7jnbeh$ zQb!5x%%)B~)-{jKqkF7Bz7fkmh(6CEB@5A0dLKaRDTo)K-;ajma;YlE?((nH9_X{U zB+CLmJ!Fv1-<2_Eo%yhd3NR3%Ha;0>!q$yDnSHNdSzE6z>(OFLWa((pc@Q@hyj!QwaT3@uNHC@3aI1NLuW%p&Wa!FY%ibG^J ztJ-l`ue9TczF?x*yh+n_6y+?HX&)RI?sv$ah^g&s9$zCM)&9^e4Fdp~nrSBDgN~zY z0xT=9M_E~~*Y61(B&5c&zV7`Lq)_(^3bA}ArhgDI(fMF1cf#BIZrh#0c=#wh+MhKJ z10G>I_=D*A50c}Pm_Lcn2N6A?FFQ>4E5erJCP19V`j>1%MWs<=a3Q+!#C&fu`71$w;|OG0}k0n z8{hfRilRMimjr0v0l-L=ufBvRsY<7*NgeX43}z>fh5)GCz^!#;Ib2UeCWi8?-0N>4 zYPX01$(Bd!69$i^z120^6&#z;ysLvN7_M7Uj*kx#evm#<_7kq<0p|pi7TyPuob-@S zI_V^H=Am7NP`m%&wz5u5Hm)n~qzYw2OA17(s zEa^_0+tZljS>{`0T9$nU%w5r`H_^O7uI_R7h5?L#DvYt9+DSTk6BOFKs23b)wj#dV zsH|p7oaQW~&$F#a3j#Ni2Qr$b!uAEQ1eU&K_bc>}ts6rvm%)r#eN8rpb^C#t z%f3qaM)ag2`*D^P|JpZtz5w^mgZo)==pTd0=5j^71{_9d2Ai`3Qas2TSfIWN*~8^n z%cRCSUd=)P0$HKfeo(%UwjjcD>b39#!2RN`9cFfvHVvYWI0?y%D9r?&L7Hh>zm2d3 zkTs91kM;i`TU27E}HdS8lPqMLsf`D##a=}Mo680y@ zIaV!a+N2eRer2U5c8f+>;G!hW^RsaW)Sn?CfKYE=ji03cTNiquepV*+83Nz6yobV` z&fLF_lUzG-U+5@LF-x8{;^1-7aU6Az_=EWPAUXQ2EcT8mtMSOM`%En*WL{QB2hmeV z&L@$466&ocx8|-0UiYncABMkey_@HSt)^De-p*xygoDEC7WCQdu&DW(&`6V3WhIhY z(o7>RBu^64q&=^DyWC~+cjZ};v~=xtkV4KN$HNtYEoi2LpyQe z^L0IC$fsA1rO#Lt0LW8S|;rs#6XpXxYTL2NpcO~^S3rz&P9S=L4rFL0=q}tV{ z*Q>2sw7+_%I|(rz#f+b)UHCD+=_HaT2|bCq7;(LAAY>MzP6+hG?4_`P#|Ccg!HhDZ9oNJV34g80}!}WqD~>x(T>kTv{AWio6A6fxp^&ux?&A_ zJC$EaTe@pX+f|XR0hNqJF++?Ne&geO>J@Ha#^)s>5jbQiWgvg(gSNkbX}r~2FT z5^_BE^njCZ$`c_&b|8-3Zz7_21JD-pA-%OBmDpF=FwCwx)OSk^`)Pd-i_#aTca{to zMDjy)1Z3FBod-d>CLZ@K12D~SDfco&b*POFH#cTZCtLO71+4ZvTlK`T7BgEOMC9IZ zRmQCNHU(D9uodN_>?==ZZua!cY%HKXt~Q#9NDd-?63LVJeD<8)OfuKK?bYwpyV}d4 z)B@)DAc~C$d)2LIWX6DDsht7|31G8%lel4?fo_g?tR@L*v5EetNq2DB9k8}p<}&F! zvh0vu)BOm8JilYG=RxHg0eE9{Ag+-~%*AjO9l@Cg2rk|8aV$c(;I~4!(r4HfDL{AW z?DI}|CV(e8m`ahbO!4iY-0m$k5fQjh%R&ST7uA;u}Q_fzMCP$lKaii66nQ?<*oiBu3 zC1WRB%n{L#*{rdx=MF@MG2E$l#S!2rjh_IZFyOv@Jzbk)jZha$nh?W-8HP3w;@LPD zLro|3cbAx28>1MZt2D!)51rV+$o7?ycLYR7EG%#TtF(>26?PRa7_o$$!HmsZjgTDn zC*+&;9TDNGWv6l1c{^qc-Ui^WXbNc69`;b=E*>lz0{pe3Bki?(JOc4HLC3 zGX0hqHnKK|tILt$npT~*H?kb~Ihd&L;su@3{es6) zw!lzd1r;gV-VX)t=Vy`WcsK)RtG(O(!TqyK;e+Vo8`1Mo_?OL&bkfswQ_3{>4g1u@ zEMT`Tu0Nm~F*yr}eRgWjo`-tO05ms(dBV~nF}eTdq$Z)w5TyA0n!P`dY5&_WazG4gDL#j*en)b!3#)>U=Eaw!*hJP6Z%Ov!??z zuI+C=z=*Kb_B`|nGAj)sYEO9U;ZEj9vAsvx-%iJaM9Tdy;lW?R16!j1>IHkzvIVof zOhmMOv<(!D*A;)JzSu-4NQo2fmq(xmjFDL1rXYjRv6D~Rl zv_LN~rX<<%wBL6OHnddmmkAB-_45DQGIsM|3ea_O=x>M_E}UicsREhpfjc#i{bC=C za@~H???~6POgb^}b{6YcaI!UQ+`fq`L-kFme^Ggnh|?jp1!fOB97ts#eyE?T*S_le z2|Q>wjyP|vCTj|wec$*n!b6)#R%UUVK;$x5e*;j5kDaU=k#7zglZl(5ZvaoEvjl%djPJRmO`j9}PC9c4kpAk$XTG#DNiwZ#MUI=E9jgMdEeot5eR&`7#w zY=F4s6Se1oHCF=ovWqTi*(B2v(Pp2Ua1t{*jmU36ilgKGT2<&Aafsi9q1 zq-l-i;o2X- z0KI+eXNacFFvx53ZRlN+A-jIl{D!eSXbLM7PINP1k%|Y(1C?iBJj8%^Tu&>*<<+oJ$h`^&$Bh#y3cZ$!tVQx46cQdgOq zF^;*c*yT1El24-ZJCU3?+-?1idWnMa@#(k-BaT_!S{fcUj==B`Bu{|#C`D)pmYCD~>I;3UoC#)Hb; z@8z@Pg(m}A9eI*G{~~_;7tzPV`sAUW`gl#9cVyoS$;6LubUy!Tf|N(O&zg_T93w?} z0$qcjiAwtws9_b1Gf3(((Dw*b6}L%9-wo|SQ9JvoH9MkpO1eYsmD8y&0qP!5j!x?dnYxGrrLDg*U=ZH4oQJK40<|qhFnC_h z$u&qGhZObX1RK$fd^2`!+@d|r2D-iDWQSeI4+Z`8oq6B5$Y2{BP>O6)GWJCdKQ8p) zrmNZ&tm~?~5cP9Zy^x79k7N?0tR_M4Zahzt^DiR#Eb#)vMZ39fe=#@7s1B&J)bA>m z2=yls0;;$gi$1~kg@ohVxdAFPZQiB&)u+cm8%3M3nDaSqIeoE}b*7$%|yHJ)=-Pn`NduKI}PG z4h*sWt}W_QCLxeSMpEtAteGO(^p~bAyM;6C^(6rr07Eci9eB+Lr0G5L!`{!X^zx?g z?cD!ImF!ZBFBa?K&X{qvwPxbLz^Mw@>;1lvSsxIpoO5EX*t*(XI;b3A7s9Jr1^%~W z-8gP>=ud^pnW^t>aY?f`*Hmr4U2WID=CW*cP8fs&GXecQ3p;z*cj)-CE1+(oN3>`3 zRy23Q7nOfYSk?Ut_*@9_&8eQ~6#!2JAl?~A1ei+@?`e5@_!IJE;OR>EiVnhd^Zvr~ zGPRVTnMdsE*#TuTWvuINok#z+zMs$L0WvCDpZ2 zoMc*bro-_}lkVLh7sCuhyae4Z0tp}X(0rCF@o0;fPG$9U&Vy?Igfa)}UdmiTKjL(n zn~kGlVrx009O5$pH#-d|Qn9763NQOhwfS)EWux9Jp>3r0c@t4}z}dv!$X33*67#mbv+^C1788bH@ugwACd+oVo60s- zojY~88{SL!!_b?(C`2GGOv@7xZ=9i53Wy(}Or&L!C#HC}ZC><2m%^k;ZF~aAL;l1y z`Gc*Vy=&q|VdOvBpiU+MN#K^dg7$7EiJn5FPd}wsv22s5e^lP4%I)og&v1!O**7o5 z&rhP`Npwh81z5o~GlE{3LGYHekMRByA|~Po2|ehbXEEYZSAt#+ca(5P!L!NApxn#j zz!MlE-82QJW>9wLfMLlV-d@1kqwXN~5{X=C2!;VP4*0OFO-8(03Y+apD~S+xY1_Tl ziKEGsH#~`L`hfxA>IlMnKpGF?&&&6$`}OowQ;bac82aO}GOD44^p%!nYeXTUxR&8F z3}b#wC|eF6#QdOB$^li?x8Cck@!{K4VyY0)`D}aJ5#XDxbj`7}AMLZ?dA9aMfqNSx z=#QLyNz{JJk9_>AM0ZHe|%RvVFIkrWXLjYuZfI z-o{D9B&Sq6Cgr6Sx}H;w98L(94`xR6Lp?D$*8ejefqZl4f&o}FJwgo#ye`)#1BTXbjVGon zntQzASycTPtV5$eKo>*fc5_~7KU~Q?sxBX;ZbEgR`!}+BsS71Lmv|1DkVw5r=KNk> z`bVG!2-@2fknl(D&h|=^s$cSL9`tMXc9*T>&AiKV3&~_+MgQ_-V~6Yuw&e=&|2qKm zCCQ!`52tPc_!=(|A3*#7aL+(Ikp=Rcq}#+?@orn9cLg=D37lZ~-X=geh(P!$kOyAo zx=EWl+iip*Iagi&*A)bb_R5Gy-1fv9=R#7pDISUFtmV|rmObS9vLyo+su*;hMCW&s z=O@wQ(Fh5ybleFZAsPLtSCes-4dvB3itj_(*E`=oxAb+V&{qNaotejl*~u7*xVQ{B zp+*v|SK1eR=JSO`K2;(~@?ji9{uz7QhB@H2zg9iYl-zug=KGo9+Mw9E7->gKL#&SV zW-CChjW(QdxE8uRrXInDS^v|=#~8ftu+2+esh6MplofUns&6Pgh9wq)#4OFnNCobC zcRK~2*1z~aNb}f5+zSoSM^8cS6;Qd8cgJ>Rc4#5Ml?lTrT$vbLrnyP$C6-_1H&>+R zd_Q7T0^o^gx{aoN;EXgwi5fiu@vdC^>L&*o{Xx>usU`*9>Y+SiZKnj7FPgUh$l8JC zifp0^@BYZXgNt@B5dgT(o6Igl0Qw`B+SZ1Y-q|Ddt(Wa(B6`aR_0^4%O9g0jf8zvB65`G5!sv2Ut1=`0b ziUN%tIcLxd`eAr*`Q{AC4-r>2GjvC*Y{QA#6}?%lKJL<*4T@hNpwY?Fl1Sedc~6TW zp{v=WzDz??gxxkA0k|9b9!!ly^6HNhKYUC3vjVc+S~)?zJ*Guf9{?C3OhH$|XTD#~ zy3+o=yo)1%YvA2h*1@hvgx}>8m>~JZ8|JNSt}^@g%-rb@VHM%$7l!u01&Q8L_t)9%K1?K zB;mh^&VLX++*1B*a5vkz(_c(FU16%Pz1Hi*+A7i0R=_mmfX(uaO1a#PkN$o$9{nL< zbfA+#w>{3lTbO#Ji`(_$P8>qojPI0DEe7!2`!rlk*`kIA1 z^Rs2Ok{A7?1X>U8iIsuDeWAt#)ZQAKtRQg01FMnRytz!vrr%bd7mbYp$9e^1aT@)Z zQX))J=LB6)TMRhMOZ-Sa%l1uEfQy|$+nr&Gpo>Cc-smj7KZDrG#44-7L2>YVLM5W!>j4RQKsWpkg_{oNT&mwIk31JX|L?3~wJRh<0%T8MB4Rfeza8 z=?uvcnN^A{n`X9VU<-b}Y>z!~Yhp##iYu~qa#a>`;~{OPUERB(6w9%2o#g9GN7>#j z%!J+)XD6V3i_Hu2|3FM*Lz#d#)n(l#)4>~Wy^lZ|wK$oT0Y0qeh$-C8;%kToQo@N`B8QZ+~gda%%t3t}+#|)^xRmNa&hs;cP6~x!{ zDUh#uyn;>r$0YIHGs2rRy{8d!zyxT3)| zrhqqduQ3x`#U=eJKPm@-#2wgehg5|~x6H`#t>h)hleAT;+L-3my;Vo$uB+~+?!xaA zjIA)mjynpoVzgS`ybyLtT*h))!{1@vb=G&6_&l`OQo;gtN~=`KSaSBQj@Xj zqd3bJcwDK?HQicGm%b!iR{zli@0D?s=(!;~pG4l{J@6a9N^n@ZeQ!@Ose*QWf?5sz zmHG%#KaeSa+ZD7wJ7`xwVgkFrMihKAL`x=LHjc%n51`JnZub&hwu|8ZwmvNizO1J| zSkbp8IzKW9Zj~WQSH9V$IRY(hhK^Q1K6RWUXXf%wSKfX?*cQW0MEuK^c2?c5gyCwm zB-sSMyQObv?~ZS|^?7)a6A_6>e^FCgh93ug@de%&Lt0FT_&m#&ndf(+$6>&Gm>@z# zre)duQEHvIG8NeS2=fukAp`$!3%d~LtDsT>!$Kb>3U=v2=$?0E4S4X2;nRY5{6Bw_ zaQPend?mQ7Mw0Qx2~aGayd0-ae*K$a_rn+1%mka~`o+ zyr$EHkr+cihBh9+vbp5osthoNS8#oPQh7`2IZ?z3XiwQlb>CodQeeCZlv}o;lfD+V zL3+aH9g~DN6?@4(C9rnC%r7#gCUUsLsUCe`)T|{OgXPUI3lQLExKmzP9_Pt!c?mEA zUlq(m!~=OvOWI}|6ktF4Nthd~!!A8-e#G#2F|`cnRNi{iqhEB1TEz{xTfW_}iwN=g zS>Awmd{9wi57`>b-s=7gDD|&rG17e0-7!phO&K0SoX$xqj(w|bxNMN_(pye>^7LfB zmsl7`8PH?}t$u)T_*P8Ed?BD8Lu^yiJZxi#EaPV93~0v-F7vYHr9WS4s%%^3FVw;u zb8+@XRgjdj*a(Ti9Qq7Re-mK86NUhArqf>`!&lJq)*qAH0?}<+*k`^NIRlB;I_E% zO78%9QsB)O$ztu_Bg>Rk0|1#KvHK+k^X!!h%#z<(k1s~;dd`q%zGUOJ3T=iffN7L* zR`8~-{1os~#~VzpMelMCLS5AXeRFcvp!2LRT{?5Xjxr6$oYTvCOPV>9dQHeY-d}$_ z3+d!;hsUDGex|Rb`EI_y1W13Q5JH2kGDC*1f_TWogFGWz8M<5AtGB|W*TQo4O<>IK z7ow ztWUtf)ti#@3+}{?0k02YzrP`bt5qix(w4ZM!4A3Y2R~kC0C{XDvb)lI5A4#L{my92 zd<0CAhP;2kL@4mOt4}Ws!e23X1L^z1TnD>DXr5l)4N?|%%2pW|haRqYqh$rNX|+82 zh?W=PcgONfRgBtRvGyy_{({oHi_R{u<;vTyGyvWU&S&AnDsrZTBWia*JQVQWJY*k9 z&hspOsqTyI^$7;KHq&VG&%t>6RrWkt{W-{E(!*I(@e0DLlX zrR_hjudqH3;^PAjyXJGCVc5nlOy$b5ClTpgI(V_5)9qi$rfh_zjdXd_Fq;=Hh>uJO zV&IUk{)$^S;I92)%|;6iKL6Dj*g*dcJ*Onwy23Xd`s-o#a-+AJ*==xuN;1hO?Y}`- zEm-Y@)x_fl-M^XrNP};dHXgCfkDlRHo#U95^Q5x3UCe`F8*r6jwCXO2GXY*xU%AkO z6(AiNj{^4DuEN8OFoECIL9-#NoYLQpCkoC-ta=-ySmhKV`Xo9(i1-l} zEq7toZYVyd--JNK<>0D0tdxbD!YrEe(v;3E2;F-9!4C{$*o=24V;;Db2urS<<5ql% zK9W2ejkGuovHXFGxWpGf zV^Dk%&$p26L+GePI-~QO-A;*kXyV4`KL? zx;1IEo>d!N`-m2ejJ-ay9UOA!IgoC~t;f%}4y@H6yrM-(ZJM)sgLY>3NF%PlP4|U7 zx7B&n^F;9}10+wMJX`_Wqr97~n3?$vv;WJ4cgnd0?e=%uoZ_kgh=O_u}^uSB0t>6H&d-{4UxWxk{At&*vEAB+??snv_3qk?#viaz&9RA2)PNpZr#hPS^2`A!# z-fE`oc%`^#Hr{4oGxKnq{741;0lZ#j@w$x3iu(eF_*wBCAU~WdTm|#K$VP+wSkIIM z?^$*n?1rNlE^c~WM0oFd%qOvrhdSX6lcULY^GNUJv!N=#bHLiG$&yu@&`SaBR1T@C zBS`Vh%R%a7Lsw+VABU^VhQ)7$iEjLKUH*dLRpvl72;5^$@w^ z6p@M*^19ev%t|BS-5m8vBqzyv5+8%S?+Q#rbdXfNHB*znh4cJRz+fG*iM1i?+i8FA zIMj{M065Ye&>PWS@iaU@?&X_RHxNEfAg;)?6>c@=7xB3YD8iENpuhkS-eCRHg6V!H zQzty9(O!LhV}esBf+8oiz3rNwlIsgEZT3FH_-0awfIWP%zh{d&>17mJG+SK5Osg=! zZh_>Yt$&Day@AOqByN}ec?0jm3UFoRcNfI3=#G?nu;R5_{{NSdtyFD=tbbhp%_c|b z8|)UV0jtMznj%!U%ZwfiCQ*q2wA*E#<$6eAB0j!oFKQ_#Kwz87cHh@pn0@AUm$y?#e{Gr_N%f4_y% z*N2bvZDn4u)36KT>yK?9pAs0aRQz&);VV0P@N{A%N7^>os=HflK+wKpoD5yyKPe_u z0XM@_bJk+`QlkNo@fhbkiTFt*$-$zx1|1`MEu>pP`n!i8W)ufu2b*{tnc>@?-6gl= zVXN03$&T>;RET#p#O})9tKeV;%r7d~ZuVc-H!s4~e%-8SGsIWRkK{oePFCAB&s9}T z$5&avq4Qikupd3OmiQD{{hy~ZIu~{&7`t`V$1d=f53}}Nvi^yK&pKenzcsHL)Abza#dCmX@uFlB&!xE!|5lEibP zA6MO(LR1W45m4%0_rt#AX+&rR5Lb23ae;^0ewmZ=f8%gx!R-|vdUZkJ${02i&4l)7 zA=`r|(s9&z!BoDfefp6O5e*Y78NGSNu~Kjk<1?>~snEfhG(|CaXrmEu``qyPPbgp2*B zZ}l*f$UjGR0dWA1|9BcN^e6qRj$a|7@A8}c-#=KG{)c|E{#WtL@z38y4j32zc7BSB z9Z;M@zx^(CPbbrv_)YMSqIBpD`d{hG2Cfj4XNFJCpQ{fi;s@U^t9ZGX|5uKem*|iX Z{XeA*AU|x?Xh{G7002ovPDHLkV1k0CpF;ou literal 0 HcmV?d00001 diff --git a/public/uploads/20251022/1581418ab3b7131a11d398ce7d6bcbc9.png b/public/uploads/20251022/1581418ab3b7131a11d398ce7d6bcbc9.png new file mode 100644 index 0000000000000000000000000000000000000000..3d7e26152424cc4548451f030769c759bed1df1b GIT binary patch literal 41431 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