From f1b278f27df2e2430036358face3d279b8e80d7e Mon Sep 17 00:00:00 2001 From: Flatlogic Bot Date: Tue, 2 Dec 2025 15:13:03 +0000 Subject: [PATCH] Chep Kart --- assets/css/custom.css | 143 + assets/js/main.js | 13 + category.php | 170 + composer.json | 5 + composer.lock | 202 + composer.phar | Bin 0 -> 3281618 bytes db/migrations/001_initial_schema.php | 71 + db/seeders/seed_categories.php | 23 + db/seeders/seed_platforms.php | 30 + db/seeders/seed_product_listings.php | 54 + db/seeders/seed_products.php | 39 + index.php | 252 +- integrations/AmazonAdapter.php | 31 + integrations/BlinkitAdapter.php | 1 + integrations/BookMyShowAdapter.php | 1 + integrations/FlipkartAdapter.php | 1 + integrations/InstamartAdapter.php | 1 + integrations/JiomartAdapter.php | 1 + integrations/MagicpinAdapter.php | 1 + integrations/MyntraAdapter.php | 1 + integrations/PVRAdapter.php | 1 + integrations/PaytmMoviesAdapter.php | 1 + integrations/SwiggyAdapter.php | 1 + integrations/ZomatoAdapter.php | 1 + search_results.php | 158 + sync.php | 105 + vendor/autoload.php | 22 + vendor/composer/ClassLoader.php | 579 + vendor/composer/InstalledVersions.php | 396 + vendor/composer/LICENSE | 21 + vendor/composer/autoload_classmap.php | 10 + vendor/composer/autoload_files.php | 10 + vendor/composer/autoload_namespaces.php | 9 + vendor/composer/autoload_psr4.php | 11 + vendor/composer/autoload_real.php | 50 + vendor/composer/autoload_static.php | 48 + vendor/composer/installed.json | 198 + vendor/composer/installed.php | 50 + vendor/composer/platform_check.php | 25 + vendor/fakerphp/faker/CHANGELOG.md | 209 + vendor/fakerphp/faker/LICENSE | 22 + vendor/fakerphp/faker/README.md | 114 + vendor/fakerphp/faker/composer.json | 56 + vendor/fakerphp/faker/rector-migrate.php | 161 + .../faker/src/Faker/Calculator/Ean.php | 50 + .../faker/src/Faker/Calculator/Iban.php | 69 + .../faker/src/Faker/Calculator/Inn.php | 42 + .../faker/src/Faker/Calculator/Isbn.php | 60 + .../faker/src/Faker/Calculator/Luhn.php | 72 + .../faker/src/Faker/Calculator/TCNo.php | 43 + .../faker/src/Faker/ChanceGenerator.php | 60 + .../faker/src/Faker/Container/Container.php | 139 + .../src/Faker/Container/ContainerBuilder.php | 68 + .../Faker/Container/ContainerException.php | 14 + .../Faker/Container/ContainerInterface.php | 9 + .../Container/NotInContainerException.php | 14 + .../fakerphp/faker/src/Faker/Core/Barcode.php | 52 + .../fakerphp/faker/src/Faker/Core/Blood.php | 42 + .../fakerphp/faker/src/Faker/Core/Color.php | 177 + .../faker/src/Faker/Core/Coordinates.php | 78 + .../faker/src/Faker/Core/DateTime.php | 217 + vendor/fakerphp/faker/src/Faker/Core/File.php | 564 + .../fakerphp/faker/src/Faker/Core/Number.php | 83 + vendor/fakerphp/faker/src/Faker/Core/Uuid.php | 65 + .../fakerphp/faker/src/Faker/Core/Version.php | 69 + .../faker/src/Faker/DefaultGenerator.php | 49 + .../fakerphp/faker/src/Faker/Documentor.php | 70 + .../src/Faker/Extension/AddressExtension.php | 39 + .../src/Faker/Extension/BarcodeExtension.php | 41 + .../src/Faker/Extension/BloodExtension.php | 30 + .../src/Faker/Extension/ColorExtension.php | 63 + .../src/Faker/Extension/CompanyExtension.php | 21 + .../src/Faker/Extension/CountryExtension.php | 14 + .../src/Faker/Extension/DateTimeExtension.php | 242 + .../faker/src/Faker/Extension/Extension.php | 14 + .../src/Faker/Extension/ExtensionNotFound.php | 12 + .../src/Faker/Extension/FileExtension.php | 28 + .../Extension/GeneratorAwareExtension.php | 20 + .../GeneratorAwareExtensionTrait.php | 30 + .../faker/src/Faker/Extension/Helper.php | 106 + .../src/Faker/Extension/NumberExtension.php | 53 + .../src/Faker/Extension/PersonExtension.php | 52 + .../Faker/Extension/PhoneNumberExtension.php | 19 + .../src/Faker/Extension/UuidExtension.php | 16 + .../src/Faker/Extension/VersionExtension.php | 21 + vendor/fakerphp/faker/src/Faker/Factory.php | 71 + vendor/fakerphp/faker/src/Faker/Generator.php | 985 + .../fakerphp/faker/src/Faker/Guesser/Name.php | 180 + .../Faker/ORM/CakePHP/ColumnTypeGuesser.php | 79 + .../src/Faker/ORM/CakePHP/EntityPopulator.php | 173 + .../faker/src/Faker/ORM/CakePHP/Populator.php | 113 + .../Faker/ORM/Doctrine/ColumnTypeGuesser.php | 91 + .../Faker/ORM/Doctrine/EntityPopulator.php | 248 + .../src/Faker/ORM/Doctrine/Populator.php | 126 + .../ORM/Doctrine/backward-compatibility.php | 11 + .../Faker/ORM/Mandango/ColumnTypeGuesser.php | 57 + .../Faker/ORM/Mandango/EntityPopulator.php | 123 + .../src/Faker/ORM/Mandango/Populator.php | 63 + .../Faker/ORM/Propel/ColumnTypeGuesser.php | 109 + .../src/Faker/ORM/Propel/EntityPopulator.php | 204 + .../faker/src/Faker/ORM/Propel/Populator.php | 90 + .../Faker/ORM/Propel2/ColumnTypeGuesser.php | 112 + .../src/Faker/ORM/Propel2/EntityPopulator.php | 207 + .../faker/src/Faker/ORM/Propel2/Populator.php | 93 + .../src/Faker/ORM/Spot/ColumnTypeGuesser.php | 84 + .../src/Faker/ORM/Spot/EntityPopulator.php | 199 + .../faker/src/Faker/ORM/Spot/Populator.php | 89 + .../faker/src/Faker/Provider/Address.php | 166 + .../faker/src/Faker/Provider/Barcode.php | 107 + .../faker/src/Faker/Provider/Base.php | 710 + .../faker/src/Faker/Provider/Biased.php | 65 + .../faker/src/Faker/Provider/Color.php | 158 + .../faker/src/Faker/Provider/Company.php | 50 + .../faker/src/Faker/Provider/DateTime.php | 389 + .../faker/src/Faker/Provider/File.php | 610 + .../faker/src/Faker/Provider/HtmlLorem.php | 307 + .../faker/src/Faker/Provider/Image.php | 196 + .../faker/src/Faker/Provider/Internet.php | 407 + .../faker/src/Faker/Provider/Lorem.php | 228 + .../faker/src/Faker/Provider/Medical.php | 34 + .../src/Faker/Provider/Miscellaneous.php | 342 + .../faker/src/Faker/Provider/Payment.php | 312 + .../faker/src/Faker/Provider/Person.php | 147 + .../faker/src/Faker/Provider/PhoneNumber.php | 270 + .../faker/src/Faker/Provider/Text.php | 202 + .../faker/src/Faker/Provider/UserAgent.php | 219 + .../faker/src/Faker/Provider/Uuid.php | 59 + .../src/Faker/Provider/ar_EG/Address.php | 217 + .../faker/src/Faker/Provider/ar_EG/Color.php | 65 + .../src/Faker/Provider/ar_EG/Company.php | 85 + .../src/Faker/Provider/ar_EG/Internet.php | 93 + .../src/Faker/Provider/ar_EG/Payment.php | 16 + .../faker/src/Faker/Provider/ar_EG/Person.php | 107 + .../faker/src/Faker/Provider/ar_EG/Text.php | 31 + .../src/Faker/Provider/ar_JO/Address.php | 152 + .../src/Faker/Provider/ar_JO/Company.php | 66 + .../src/Faker/Provider/ar_JO/Internet.php | 55 + .../faker/src/Faker/Provider/ar_JO/Person.php | 108 + .../faker/src/Faker/Provider/ar_JO/Text.php | 272 + .../src/Faker/Provider/ar_SA/Address.php | 146 + .../faker/src/Faker/Provider/ar_SA/Color.php | 81 + .../src/Faker/Provider/ar_SA/Company.php | 78 + .../src/Faker/Provider/ar_SA/Internet.php | 55 + .../src/Faker/Provider/ar_SA/Payment.php | 22 + .../faker/src/Faker/Provider/ar_SA/Person.php | 121 + .../faker/src/Faker/Provider/ar_SA/Text.php | 272 + .../src/Faker/Provider/at_AT/Payment.php | 11 + .../src/Faker/Provider/bg_BG/Internet.php | 9 + .../src/Faker/Provider/bg_BG/Payment.php | 46 + .../faker/src/Faker/Provider/bg_BG/Person.php | 117 + .../src/Faker/Provider/bg_BG/PhoneNumber.php | 20 + .../src/Faker/Provider/bn_BD/Address.php | 310 + .../src/Faker/Provider/bn_BD/Company.php | 28 + .../faker/src/Faker/Provider/bn_BD/Person.php | 36 + .../src/Faker/Provider/bn_BD/PhoneNumber.php | 14 + .../faker/src/Faker/Provider/bn_BD/Utils.php | 14 + .../src/Faker/Provider/cs_CZ/Address.php | 149 + .../src/Faker/Provider/cs_CZ/Company.php | 125 + .../src/Faker/Provider/cs_CZ/DateTime.php | 65 + .../src/Faker/Provider/cs_CZ/Internet.php | 9 + .../src/Faker/Provider/cs_CZ/Payment.php | 22 + .../faker/src/Faker/Provider/cs_CZ/Person.php | 538 + .../src/Faker/Provider/cs_CZ/PhoneNumber.php | 14 + .../faker/src/Faker/Provider/cs_CZ/Text.php | 7186 +++++ .../src/Faker/Provider/da_DK/Address.php | 284 + .../src/Faker/Provider/da_DK/Company.php | 67 + .../src/Faker/Provider/da_DK/Internet.php | 27 + .../src/Faker/Provider/da_DK/Payment.php | 22 + .../faker/src/Faker/Provider/da_DK/Person.php | 195 + .../src/Faker/Provider/da_DK/PhoneNumber.php | 18 + .../src/Faker/Provider/de_AT/Address.php | 143 + .../src/Faker/Provider/de_AT/Company.php | 13 + .../src/Faker/Provider/de_AT/Internet.php | 9 + .../src/Faker/Provider/de_AT/Payment.php | 42 + .../faker/src/Faker/Provider/de_AT/Person.php | 154 + .../src/Faker/Provider/de_AT/PhoneNumber.php | 23 + .../faker/src/Faker/Provider/de_AT/Text.php | 7 + .../src/Faker/Provider/de_CH/Address.php | 197 + .../src/Faker/Provider/de_CH/Company.php | 15 + .../src/Faker/Provider/de_CH/Internet.php | 17 + .../src/Faker/Provider/de_CH/Payment.php | 22 + .../faker/src/Faker/Provider/de_CH/Person.php | 119 + .../src/Faker/Provider/de_CH/PhoneNumber.php | 47 + .../faker/src/Faker/Provider/de_CH/Text.php | 2038 ++ .../src/Faker/Provider/de_DE/Address.php | 126 + .../src/Faker/Provider/de_DE/Company.php | 24 + .../src/Faker/Provider/de_DE/Internet.php | 26 + .../src/Faker/Provider/de_DE/Payment.php | 60 + .../faker/src/Faker/Provider/de_DE/Person.php | 132 + .../src/Faker/Provider/de_DE/PhoneNumber.php | 127 + .../faker/src/Faker/Provider/de_DE/Text.php | 2038 ++ .../src/Faker/Provider/el_CY/Address.php | 55 + .../src/Faker/Provider/el_CY/Company.php | 18 + .../src/Faker/Provider/el_CY/Internet.php | 9 + .../src/Faker/Provider/el_CY/Payment.php | 50 + .../faker/src/Faker/Provider/el_CY/Person.php | 100 + .../src/Faker/Provider/el_CY/PhoneNumber.php | 32 + .../src/Faker/Provider/el_GR/Address.php | 61 + .../src/Faker/Provider/el_GR/Company.php | 84 + .../src/Faker/Provider/el_GR/Payment.php | 22 + .../faker/src/Faker/Provider/el_GR/Person.php | 181 + .../src/Faker/Provider/el_GR/PhoneNumber.php | 324 + .../faker/src/Faker/Provider/el_GR/Text.php | 2582 ++ .../src/Faker/Provider/en_AU/Address.php | 112 + .../src/Faker/Provider/en_AU/Internet.php | 9 + .../src/Faker/Provider/en_AU/PhoneNumber.php | 56 + .../src/Faker/Provider/en_CA/Address.php | 72 + .../src/Faker/Provider/en_CA/PhoneNumber.php | 18 + .../src/Faker/Provider/en_GB/Address.php | 174 + .../src/Faker/Provider/en_GB/Company.php | 130 + .../src/Faker/Provider/en_GB/Internet.php | 9 + .../src/Faker/Provider/en_GB/Payment.php | 22 + .../faker/src/Faker/Provider/en_GB/Person.php | 113 + .../src/Faker/Provider/en_GB/PhoneNumber.php | 49 + .../src/Faker/Provider/en_HK/Address.php | 239 + .../src/Faker/Provider/en_HK/Internet.php | 14 + .../src/Faker/Provider/en_HK/PhoneNumber.php | 41 + .../src/Faker/Provider/en_IN/Address.php | 188 + .../src/Faker/Provider/en_IN/Internet.php | 9 + .../faker/src/Faker/Provider/en_IN/Person.php | 125 + .../src/Faker/Provider/en_IN/PhoneNumber.php | 37 + .../src/Faker/Provider/en_NG/Address.php | 98 + .../src/Faker/Provider/en_NG/Internet.php | 8 + .../faker/src/Faker/Provider/en_NG/Person.php | 90 + .../src/Faker/Provider/en_NG/PhoneNumber.php | 133 + .../src/Faker/Provider/en_NZ/Address.php | 88 + .../src/Faker/Provider/en_NZ/Internet.php | 17 + .../src/Faker/Provider/en_NZ/PhoneNumber.php | 102 + .../src/Faker/Provider/en_PH/Address.php | 417 + .../src/Faker/Provider/en_PH/PhoneNumber.php | 59 + .../src/Faker/Provider/en_SG/Address.php | 125 + .../faker/src/Faker/Provider/en_SG/Person.php | 74 + .../src/Faker/Provider/en_SG/PhoneNumber.php | 105 + .../src/Faker/Provider/en_UG/Address.php | 101 + .../src/Faker/Provider/en_UG/Internet.php | 9 + .../faker/src/Faker/Provider/en_UG/Person.php | 133 + .../src/Faker/Provider/en_UG/PhoneNumber.php | 17 + .../src/Faker/Provider/en_US/Address.php | 97 + .../src/Faker/Provider/en_US/Company.php | 119 + .../src/Faker/Provider/en_US/Payment.php | 36 + .../faker/src/Faker/Provider/en_US/Person.php | 133 + .../src/Faker/Provider/en_US/PhoneNumber.php | 135 + .../faker/src/Faker/Provider/en_US/Text.php | 3721 +++ .../src/Faker/Provider/en_ZA/Address.php | 70 + .../src/Faker/Provider/en_ZA/Company.php | 26 + .../src/Faker/Provider/en_ZA/Internet.php | 23 + .../faker/src/Faker/Provider/en_ZA/Person.php | 182 + .../src/Faker/Provider/en_ZA/PhoneNumber.php | 116 + .../src/Faker/Provider/es_AR/Address.php | 68 + .../src/Faker/Provider/es_AR/Company.php | 68 + .../faker/src/Faker/Provider/es_AR/Person.php | 90 + .../src/Faker/Provider/es_AR/PhoneNumber.php | 42 + .../src/Faker/Provider/es_ES/Address.php | 101 + .../faker/src/Faker/Provider/es_ES/Color.php | 24 + .../src/Faker/Provider/es_ES/Company.php | 82 + .../src/Faker/Provider/es_ES/Internet.php | 9 + .../src/Faker/Provider/es_ES/Payment.php | 42 + .../faker/src/Faker/Provider/es_ES/Person.php | 149 + .../src/Faker/Provider/es_ES/PhoneNumber.php | 47 + .../faker/src/Faker/Provider/es_ES/Text.php | 688 + .../src/Faker/Provider/es_PE/Address.php | 65 + .../src/Faker/Provider/es_PE/Company.php | 88 + .../faker/src/Faker/Provider/es_PE/Person.php | 105 + .../src/Faker/Provider/es_PE/PhoneNumber.php | 17 + .../src/Faker/Provider/es_VE/Address.php | 72 + .../src/Faker/Provider/es_VE/Company.php | 42 + .../src/Faker/Provider/es_VE/Internet.php | 9 + .../faker/src/Faker/Provider/es_VE/Person.php | 176 + .../src/Faker/Provider/es_VE/PhoneNumber.php | 29 + .../faker/src/Faker/Provider/et_EE/Person.php | 84 + .../src/Faker/Provider/fa_IR/Address.php | 100 + .../src/Faker/Provider/fa_IR/Company.php | 60 + .../src/Faker/Provider/fa_IR/Internet.php | 102 + .../faker/src/Faker/Provider/fa_IR/Person.php | 210 + .../src/Faker/Provider/fa_IR/PhoneNumber.php | 76 + .../faker/src/Faker/Provider/fa_IR/Text.php | 551 + .../src/Faker/Provider/fi_FI/Address.php | 85 + .../src/Faker/Provider/fi_FI/Company.php | 66 + .../src/Faker/Provider/fi_FI/Internet.php | 9 + .../src/Faker/Provider/fi_FI/Payment.php | 22 + .../faker/src/Faker/Provider/fi_FI/Person.php | 154 + .../src/Faker/Provider/fi_FI/PhoneNumber.php | 101 + .../src/Faker/Provider/fr_BE/Address.php | 72 + .../faker/src/Faker/Provider/fr_BE/Color.php | 7 + .../src/Faker/Provider/fr_BE/Company.php | 13 + .../src/Faker/Provider/fr_BE/Internet.php | 9 + .../src/Faker/Provider/fr_BE/Payment.php | 42 + .../faker/src/Faker/Provider/fr_BE/Person.php | 49 + .../src/Faker/Provider/fr_BE/PhoneNumber.php | 20 + .../src/Faker/Provider/fr_CA/Address.php | 125 + .../faker/src/Faker/Provider/fr_CA/Color.php | 7 + .../src/Faker/Provider/fr_CA/Company.php | 7 + .../faker/src/Faker/Provider/fr_CA/Person.php | 82 + .../faker/src/Faker/Provider/fr_CA/Text.php | 2446 ++ .../src/Faker/Provider/fr_CH/Address.php | 150 + .../faker/src/Faker/Provider/fr_CH/Color.php | 7 + .../src/Faker/Provider/fr_CH/Company.php | 15 + .../src/Faker/Provider/fr_CH/Internet.php | 9 + .../src/Faker/Provider/fr_CH/Payment.php | 22 + .../faker/src/Faker/Provider/fr_CH/Person.php | 114 + .../src/Faker/Provider/fr_CH/PhoneNumber.php | 43 + .../faker/src/Faker/Provider/fr_CH/Text.php | 7 + .../src/Faker/Provider/fr_FR/Address.php | 151 + .../faker/src/Faker/Provider/fr_FR/Color.php | 40 + .../src/Faker/Provider/fr_FR/Company.php | 481 + .../src/Faker/Provider/fr_FR/Internet.php | 9 + .../src/Faker/Provider/fr_FR/Payment.php | 49 + .../faker/src/Faker/Provider/fr_FR/Person.php | 130 + .../src/Faker/Provider/fr_FR/PhoneNumber.php | 168 + .../faker/src/Faker/Provider/fr_FR/Text.php | 15532 ++++++++++ .../src/Faker/Provider/he_IL/Address.php | 122 + .../src/Faker/Provider/he_IL/Company.php | 14 + .../src/Faker/Provider/he_IL/Payment.php | 22 + .../faker/src/Faker/Provider/he_IL/Person.php | 132 + .../src/Faker/Provider/he_IL/PhoneNumber.php | 14 + .../src/Faker/Provider/hr_HR/Address.php | 68 + .../src/Faker/Provider/hr_HR/Company.php | 25 + .../src/Faker/Provider/hr_HR/Payment.php | 22 + .../faker/src/Faker/Provider/hr_HR/Person.php | 27 + .../src/Faker/Provider/hr_HR/PhoneNumber.php | 14 + .../src/Faker/Provider/hu_HU/Address.php | 148 + .../src/Faker/Provider/hu_HU/Company.php | 13 + .../src/Faker/Provider/hu_HU/Payment.php | 22 + .../faker/src/Faker/Provider/hu_HU/Person.php | 101 + .../src/Faker/Provider/hu_HU/PhoneNumber.php | 14 + .../faker/src/Faker/Provider/hu_HU/Text.php | 3407 +++ .../src/Faker/Provider/hy_AM/Address.php | 132 + .../faker/src/Faker/Provider/hy_AM/Color.php | 12 + .../src/Faker/Provider/hy_AM/Company.php | 56 + .../src/Faker/Provider/hy_AM/Internet.php | 9 + .../faker/src/Faker/Provider/hy_AM/Person.php | 110 + .../src/Faker/Provider/hy_AM/PhoneNumber.php | 36 + .../src/Faker/Provider/id_ID/Address.php | 319 + .../faker/src/Faker/Provider/id_ID/Color.php | 40 + .../src/Faker/Provider/id_ID/Company.php | 64 + .../src/Faker/Provider/id_ID/Internet.php | 25 + .../faker/src/Faker/Provider/id_ID/Person.php | 343 + .../src/Faker/Provider/id_ID/PhoneNumber.php | 55 + .../src/Faker/Provider/is_IS/Address.php | 175 + .../src/Faker/Provider/is_IS/Company.php | 50 + .../src/Faker/Provider/is_IS/Internet.php | 20 + .../src/Faker/Provider/is_IS/Payment.php | 22 + .../faker/src/Faker/Provider/is_IS/Person.php | 142 + .../src/Faker/Provider/is_IS/PhoneNumber.php | 17 + .../src/Faker/Provider/it_CH/Address.php | 149 + .../src/Faker/Provider/it_CH/Company.php | 15 + .../src/Faker/Provider/it_CH/Internet.php | 9 + .../src/Faker/Provider/it_CH/Payment.php | 22 + .../faker/src/Faker/Provider/it_CH/Person.php | 102 + .../src/Faker/Provider/it_CH/PhoneNumber.php | 43 + .../faker/src/Faker/Provider/it_CH/Text.php | 7 + .../src/Faker/Provider/it_IT/Address.php | 97 + .../src/Faker/Provider/it_IT/Company.php | 95 + .../src/Faker/Provider/it_IT/Internet.php | 9 + .../src/Faker/Provider/it_IT/Payment.php | 22 + .../faker/src/Faker/Provider/it_IT/Person.php | 113 + .../src/Faker/Provider/it_IT/PhoneNumber.php | 21 + .../faker/src/Faker/Provider/it_IT/Text.php | 2079 ++ .../src/Faker/Provider/ja_JP/Address.php | 137 + .../src/Faker/Provider/ja_JP/Company.php | 17 + .../src/Faker/Provider/ja_JP/Internet.php | 93 + .../faker/src/Faker/Provider/ja_JP/Person.php | 147 + .../src/Faker/Provider/ja_JP/PhoneNumber.php | 19 + .../faker/src/Faker/Provider/ja_JP/Text.php | 640 + .../src/Faker/Provider/ka_GE/Address.php | 139 + .../faker/src/Faker/Provider/ka_GE/Color.php | 16 + .../src/Faker/Provider/ka_GE/Company.php | 53 + .../src/Faker/Provider/ka_GE/DateTime.php | 43 + .../src/Faker/Provider/ka_GE/Internet.php | 15 + .../src/Faker/Provider/ka_GE/Payment.php | 55 + .../faker/src/Faker/Provider/ka_GE/Person.php | 63 + .../src/Faker/Provider/ka_GE/PhoneNumber.php | 14 + .../faker/src/Faker/Provider/ka_GE/Text.php | 1000 + .../src/Faker/Provider/kk_KZ/Address.php | 105 + .../faker/src/Faker/Provider/kk_KZ/Color.php | 12 + .../src/Faker/Provider/kk_KZ/Company.php | 72 + .../src/Faker/Provider/kk_KZ/Internet.php | 9 + .../src/Faker/Provider/kk_KZ/Payment.php | 35 + .../faker/src/Faker/Provider/kk_KZ/Person.php | 265 + .../src/Faker/Provider/kk_KZ/PhoneNumber.php | 16 + .../faker/src/Faker/Provider/kk_KZ/Text.php | 492 + .../src/Faker/Provider/ko_KR/Address.php | 96 + .../src/Faker/Provider/ko_KR/Company.php | 31 + .../src/Faker/Provider/ko_KR/Internet.php | 86 + .../faker/src/Faker/Provider/ko_KR/Person.php | 54 + .../src/Faker/Provider/ko_KR/PhoneNumber.php | 40 + .../faker/src/Faker/Provider/ko_KR/Text.php | 1725 ++ .../src/Faker/Provider/lt_LT/Address.php | 209 + .../src/Faker/Provider/lt_LT/Company.php | 15 + .../src/Faker/Provider/lt_LT/Internet.php | 18 + .../src/Faker/Provider/lt_LT/Payment.php | 22 + .../faker/src/Faker/Provider/lt_LT/Person.php | 390 + .../src/Faker/Provider/lt_LT/PhoneNumber.php | 17 + .../src/Faker/Provider/lv_LV/Address.php | 117 + .../faker/src/Faker/Provider/lv_LV/Color.php | 19 + .../src/Faker/Provider/lv_LV/Internet.php | 9 + .../src/Faker/Provider/lv_LV/Payment.php | 22 + .../faker/src/Faker/Provider/lv_LV/Person.php | 173 + .../src/Faker/Provider/lv_LV/PhoneNumber.php | 15 + .../src/Faker/Provider/me_ME/Address.php | 119 + .../src/Faker/Provider/me_ME/Company.php | 49 + .../src/Faker/Provider/me_ME/Payment.php | 22 + .../faker/src/Faker/Provider/me_ME/Person.php | 102 + .../src/Faker/Provider/me_ME/PhoneNumber.php | 15 + .../faker/src/Faker/Provider/mn_MN/Person.php | 102 + .../src/Faker/Provider/mn_MN/PhoneNumber.php | 13 + .../src/Faker/Provider/ms_MY/Address.php | 710 + .../src/Faker/Provider/ms_MY/Company.php | 105 + .../Faker/Provider/ms_MY/Miscellaneous.php | 169 + .../src/Faker/Provider/ms_MY/Payment.php | 244 + .../faker/src/Faker/Provider/ms_MY/Person.php | 812 + .../src/Faker/Provider/ms_MY/PhoneNumber.php | 217 + .../src/Faker/Provider/nb_NO/Address.php | 197 + .../src/Faker/Provider/nb_NO/Company.php | 57 + .../src/Faker/Provider/nb_NO/Payment.php | 22 + .../faker/src/Faker/Provider/nb_NO/Person.php | 335 + .../src/Faker/Provider/nb_NO/PhoneNumber.php | 41 + .../src/Faker/Provider/ne_NP/Address.php | 131 + .../src/Faker/Provider/ne_NP/Internet.php | 32 + .../src/Faker/Provider/ne_NP/Payment.php | 316 + .../faker/src/Faker/Provider/ne_NP/Person.php | 121 + .../src/Faker/Provider/ne_NP/PhoneNumber.php | 19 + .../src/Faker/Provider/nl_BE/Address.php | 124 + .../src/Faker/Provider/nl_BE/Company.php | 13 + .../src/Faker/Provider/nl_BE/Internet.php | 9 + .../src/Faker/Provider/nl_BE/Payment.php | 49 + .../faker/src/Faker/Provider/nl_BE/Person.php | 108 + .../src/Faker/Provider/nl_BE/PhoneNumber.php | 20 + .../faker/src/Faker/Provider/nl_BE/Text.php | 25348 ++++++++++++++++ .../src/Faker/Provider/nl_NL/Address.php | 153 + .../faker/src/Faker/Provider/nl_NL/Color.php | 36 + .../src/Faker/Provider/nl_NL/Company.php | 122 + .../src/Faker/Provider/nl_NL/Internet.php | 9 + .../src/Faker/Provider/nl_NL/Payment.php | 22 + .../faker/src/Faker/Provider/nl_NL/Person.php | 353 + .../src/Faker/Provider/nl_NL/PhoneNumber.php | 39 + .../faker/src/Faker/Provider/nl_NL/Text.php | 3933 +++ .../src/Faker/Provider/pl_PL/Address.php | 209 + .../faker/src/Faker/Provider/pl_PL/Color.php | 40 + .../src/Faker/Provider/pl_PL/Company.php | 90 + .../src/Faker/Provider/pl_PL/Internet.php | 9 + .../src/Faker/Provider/pl_PL/LicensePlate.php | 545 + .../src/Faker/Provider/pl_PL/Payment.php | 120 + .../faker/src/Faker/Provider/pl_PL/Person.php | 243 + .../src/Faker/Provider/pl_PL/PhoneNumber.php | 18 + .../faker/src/Faker/Provider/pl_PL/Text.php | 2867 ++ .../src/Faker/Provider/pt_BR/Address.php | 154 + .../src/Faker/Provider/pt_BR/Company.php | 36 + .../src/Faker/Provider/pt_BR/Internet.php | 9 + .../src/Faker/Provider/pt_BR/Payment.php | 148 + .../faker/src/Faker/Provider/pt_BR/Person.php | 159 + .../src/Faker/Provider/pt_BR/PhoneNumber.php | 150 + .../faker/src/Faker/Provider/pt_BR/Text.php | 3427 +++ .../src/Faker/Provider/pt_BR/check_digit.php | 39 + .../src/Faker/Provider/pt_PT/Address.php | 130 + .../src/Faker/Provider/pt_PT/Company.php | 16 + .../src/Faker/Provider/pt_PT/Internet.php | 9 + .../src/Faker/Provider/pt_PT/Payment.php | 22 + .../faker/src/Faker/Provider/pt_PT/Person.php | 147 + .../src/Faker/Provider/pt_PT/PhoneNumber.php | 50 + .../src/Faker/Provider/ro_MD/Address.php | 125 + .../src/Faker/Provider/ro_MD/Payment.php | 22 + .../faker/src/Faker/Provider/ro_MD/Person.php | 91 + .../src/Faker/Provider/ro_MD/PhoneNumber.php | 33 + .../faker/src/Faker/Provider/ro_MD/Text.php | 2465 ++ .../src/Faker/Provider/ro_RO/Address.php | 153 + .../src/Faker/Provider/ro_RO/Payment.php | 22 + .../faker/src/Faker/Provider/ro_RO/Person.php | 251 + .../src/Faker/Provider/ro_RO/PhoneNumber.php | 62 + .../faker/src/Faker/Provider/ro_RO/Text.php | 155 + .../src/Faker/Provider/ru_RU/Address.php | 139 + .../faker/src/Faker/Provider/ru_RU/Color.php | 23 + .../src/Faker/Provider/ru_RU/Company.php | 178 + .../src/Faker/Provider/ru_RU/Internet.php | 9 + .../src/Faker/Provider/ru_RU/Payment.php | 812 + .../faker/src/Faker/Provider/ru_RU/Person.php | 188 + .../src/Faker/Provider/ru_RU/PhoneNumber.php | 14 + .../faker/src/Faker/Provider/ru_RU/Text.php | 4551 +++ .../src/Faker/Provider/sk_SK/Address.php | 343 + .../src/Faker/Provider/sk_SK/Company.php | 66 + .../src/Faker/Provider/sk_SK/Internet.php | 9 + .../src/Faker/Provider/sk_SK/Payment.php | 22 + .../faker/src/Faker/Provider/sk_SK/Person.php | 171 + .../src/Faker/Provider/sk_SK/PhoneNumber.php | 15 + .../src/Faker/Provider/sl_SI/Address.php | 106 + .../src/Faker/Provider/sl_SI/Company.php | 14 + .../src/Faker/Provider/sl_SI/Internet.php | 10 + .../src/Faker/Provider/sl_SI/Payment.php | 22 + .../faker/src/Faker/Provider/sl_SI/Person.php | 149 + .../src/Faker/Provider/sl_SI/PhoneNumber.php | 18 + .../src/Faker/Provider/sr_Cyrl_RS/Address.php | 58 + .../src/Faker/Provider/sr_Cyrl_RS/Payment.php | 22 + .../src/Faker/Provider/sr_Cyrl_RS/Person.php | 242 + .../src/Faker/Provider/sr_Latn_RS/Address.php | 58 + .../src/Faker/Provider/sr_Latn_RS/Payment.php | 22 + .../src/Faker/Provider/sr_Latn_RS/Person.php | 213 + .../src/Faker/Provider/sr_RS/Address.php | 58 + .../src/Faker/Provider/sr_RS/Payment.php | 22 + .../faker/src/Faker/Provider/sr_RS/Person.php | 143 + .../src/Faker/Provider/sv_SE/Address.php | 151 + .../src/Faker/Provider/sv_SE/Company.php | 26 + .../src/Faker/Provider/sv_SE/Municipality.php | 27 + .../src/Faker/Provider/sv_SE/Payment.php | 22 + .../faker/src/Faker/Provider/sv_SE/Person.php | 170 + .../src/Faker/Provider/sv_SE/PhoneNumber.php | 64 + .../src/Faker/Provider/th_TH/Address.php | 141 + .../faker/src/Faker/Provider/th_TH/Color.php | 16 + .../src/Faker/Provider/th_TH/Company.php | 32 + .../src/Faker/Provider/th_TH/Internet.php | 8 + .../src/Faker/Provider/th_TH/Payment.php | 44 + .../faker/src/Faker/Provider/th_TH/Person.php | 87 + .../src/Faker/Provider/th_TH/PhoneNumber.php | 39 + .../src/Faker/Provider/tr_TR/Address.php | 94 + .../faker/src/Faker/Provider/tr_TR/Color.php | 58 + .../src/Faker/Provider/tr_TR/Company.php | 100 + .../src/Faker/Provider/tr_TR/DateTime.php | 48 + .../src/Faker/Provider/tr_TR/Internet.php | 9 + .../src/Faker/Provider/tr_TR/Payment.php | 22 + .../faker/src/Faker/Provider/tr_TR/Person.php | 159 + .../src/Faker/Provider/tr_TR/PhoneNumber.php | 186 + .../src/Faker/Provider/uk_UA/Address.php | 364 + .../faker/src/Faker/Provider/uk_UA/Color.php | 23 + .../src/Faker/Provider/uk_UA/Company.php | 74 + .../src/Faker/Provider/uk_UA/Internet.php | 9 + .../src/Faker/Provider/uk_UA/Payment.php | 41 + .../faker/src/Faker/Provider/uk_UA/Person.php | 101 + .../src/Faker/Provider/uk_UA/PhoneNumber.php | 72 + .../faker/src/Faker/Provider/uk_UA/Text.php | 4512 +++ .../src/Faker/Provider/vi_VN/Address.php | 170 + .../faker/src/Faker/Provider/vi_VN/Color.php | 36 + .../src/Faker/Provider/vi_VN/Internet.php | 8 + .../faker/src/Faker/Provider/vi_VN/Person.php | 186 + .../src/Faker/Provider/vi_VN/PhoneNumber.php | 61 + .../src/Faker/Provider/zh_CN/Address.php | 148 + .../faker/src/Faker/Provider/zh_CN/Color.php | 66 + .../src/Faker/Provider/zh_CN/Company.php | 235 + .../src/Faker/Provider/zh_CN/DateTime.php | 48 + .../src/Faker/Provider/zh_CN/Internet.php | 24 + .../src/Faker/Provider/zh_CN/Payment.php | 43 + .../faker/src/Faker/Provider/zh_CN/Person.php | 83 + .../src/Faker/Provider/zh_CN/PhoneNumber.php | 23 + .../src/Faker/Provider/zh_TW/Address.php | 421 + .../faker/src/Faker/Provider/zh_TW/Color.php | 66 + .../src/Faker/Provider/zh_TW/Company.php | 268 + .../src/Faker/Provider/zh_TW/DateTime.php | 48 + .../src/Faker/Provider/zh_TW/Internet.php | 28 + .../src/Faker/Provider/zh_TW/Payment.php | 21 + .../faker/src/Faker/Provider/zh_TW/Person.php | 201 + .../src/Faker/Provider/zh_TW/PhoneNumber.php | 19 + .../faker/src/Faker/Provider/zh_TW/Text.php | 900 + .../faker/src/Faker/UniqueGenerator.php | 87 + .../faker/src/Faker/ValidGenerator.php | 78 + vendor/fakerphp/faker/src/autoload.php | 29 + vendor/psr/container/.gitignore | 3 + vendor/psr/container/LICENSE | 21 + vendor/psr/container/README.md | 13 + vendor/psr/container/composer.json | 27 + .../src/ContainerExceptionInterface.php | 12 + .../psr/container/src/ContainerInterface.php | 36 + .../src/NotFoundExceptionInterface.php | 10 + .../deprecation-contracts/CHANGELOG.md | 5 + vendor/symfony/deprecation-contracts/LICENSE | 19 + .../symfony/deprecation-contracts/README.md | 26 + .../deprecation-contracts/composer.json | 35 + .../deprecation-contracts/function.php | 27 + 565 files changed, 145241 insertions(+), 145 deletions(-) create mode 100644 assets/css/custom.css create mode 100644 assets/js/main.js create mode 100644 category.php create mode 100644 composer.json create mode 100644 composer.lock create mode 100755 composer.phar create mode 100644 db/migrations/001_initial_schema.php create mode 100644 db/seeders/seed_categories.php create mode 100644 db/seeders/seed_platforms.php create mode 100644 db/seeders/seed_product_listings.php create mode 100644 db/seeders/seed_products.php create mode 100644 integrations/AmazonAdapter.php create mode 100644 integrations/BlinkitAdapter.php create mode 100644 integrations/BookMyShowAdapter.php create mode 100644 integrations/FlipkartAdapter.php create mode 100644 integrations/InstamartAdapter.php create mode 100644 integrations/JiomartAdapter.php create mode 100644 integrations/MagicpinAdapter.php create mode 100644 integrations/MyntraAdapter.php create mode 100644 integrations/PVRAdapter.php create mode 100644 integrations/PaytmMoviesAdapter.php create mode 100644 integrations/SwiggyAdapter.php create mode 100644 integrations/ZomatoAdapter.php create mode 100644 search_results.php create mode 100644 sync.php create mode 100644 vendor/autoload.php create mode 100644 vendor/composer/ClassLoader.php create mode 100644 vendor/composer/InstalledVersions.php create mode 100644 vendor/composer/LICENSE create mode 100644 vendor/composer/autoload_classmap.php create mode 100644 vendor/composer/autoload_files.php create mode 100644 vendor/composer/autoload_namespaces.php create mode 100644 vendor/composer/autoload_psr4.php create mode 100644 vendor/composer/autoload_real.php create mode 100644 vendor/composer/autoload_static.php create mode 100644 vendor/composer/installed.json create mode 100644 vendor/composer/installed.php create mode 100644 vendor/composer/platform_check.php create mode 100644 vendor/fakerphp/faker/CHANGELOG.md create mode 100644 vendor/fakerphp/faker/LICENSE create mode 100644 vendor/fakerphp/faker/README.md create mode 100644 vendor/fakerphp/faker/composer.json create mode 100644 vendor/fakerphp/faker/rector-migrate.php create mode 100644 vendor/fakerphp/faker/src/Faker/Calculator/Ean.php create mode 100644 vendor/fakerphp/faker/src/Faker/Calculator/Iban.php create mode 100644 vendor/fakerphp/faker/src/Faker/Calculator/Inn.php create mode 100644 vendor/fakerphp/faker/src/Faker/Calculator/Isbn.php create mode 100644 vendor/fakerphp/faker/src/Faker/Calculator/Luhn.php create mode 100644 vendor/fakerphp/faker/src/Faker/Calculator/TCNo.php create mode 100644 vendor/fakerphp/faker/src/Faker/ChanceGenerator.php create mode 100644 vendor/fakerphp/faker/src/Faker/Container/Container.php create mode 100644 vendor/fakerphp/faker/src/Faker/Container/ContainerBuilder.php create mode 100644 vendor/fakerphp/faker/src/Faker/Container/ContainerException.php create mode 100644 vendor/fakerphp/faker/src/Faker/Container/ContainerInterface.php create mode 100644 vendor/fakerphp/faker/src/Faker/Container/NotInContainerException.php create mode 100644 vendor/fakerphp/faker/src/Faker/Core/Barcode.php create mode 100644 vendor/fakerphp/faker/src/Faker/Core/Blood.php create mode 100644 vendor/fakerphp/faker/src/Faker/Core/Color.php create mode 100644 vendor/fakerphp/faker/src/Faker/Core/Coordinates.php create mode 100644 vendor/fakerphp/faker/src/Faker/Core/DateTime.php create mode 100644 vendor/fakerphp/faker/src/Faker/Core/File.php create mode 100644 vendor/fakerphp/faker/src/Faker/Core/Number.php create mode 100644 vendor/fakerphp/faker/src/Faker/Core/Uuid.php create mode 100644 vendor/fakerphp/faker/src/Faker/Core/Version.php create mode 100644 vendor/fakerphp/faker/src/Faker/DefaultGenerator.php create mode 100644 vendor/fakerphp/faker/src/Faker/Documentor.php create mode 100644 vendor/fakerphp/faker/src/Faker/Extension/AddressExtension.php create mode 100644 vendor/fakerphp/faker/src/Faker/Extension/BarcodeExtension.php create mode 100644 vendor/fakerphp/faker/src/Faker/Extension/BloodExtension.php create mode 100644 vendor/fakerphp/faker/src/Faker/Extension/ColorExtension.php create mode 100644 vendor/fakerphp/faker/src/Faker/Extension/CompanyExtension.php create mode 100644 vendor/fakerphp/faker/src/Faker/Extension/CountryExtension.php create mode 100644 vendor/fakerphp/faker/src/Faker/Extension/DateTimeExtension.php create mode 100644 vendor/fakerphp/faker/src/Faker/Extension/Extension.php create mode 100644 vendor/fakerphp/faker/src/Faker/Extension/ExtensionNotFound.php create mode 100644 vendor/fakerphp/faker/src/Faker/Extension/FileExtension.php create mode 100644 vendor/fakerphp/faker/src/Faker/Extension/GeneratorAwareExtension.php create mode 100644 vendor/fakerphp/faker/src/Faker/Extension/GeneratorAwareExtensionTrait.php create mode 100644 vendor/fakerphp/faker/src/Faker/Extension/Helper.php create mode 100644 vendor/fakerphp/faker/src/Faker/Extension/NumberExtension.php create mode 100644 vendor/fakerphp/faker/src/Faker/Extension/PersonExtension.php create mode 100644 vendor/fakerphp/faker/src/Faker/Extension/PhoneNumberExtension.php create mode 100644 vendor/fakerphp/faker/src/Faker/Extension/UuidExtension.php create mode 100644 vendor/fakerphp/faker/src/Faker/Extension/VersionExtension.php create mode 100644 vendor/fakerphp/faker/src/Faker/Factory.php create mode 100644 vendor/fakerphp/faker/src/Faker/Generator.php create mode 100644 vendor/fakerphp/faker/src/Faker/Guesser/Name.php create mode 100644 vendor/fakerphp/faker/src/Faker/ORM/CakePHP/ColumnTypeGuesser.php create mode 100644 vendor/fakerphp/faker/src/Faker/ORM/CakePHP/EntityPopulator.php create mode 100644 vendor/fakerphp/faker/src/Faker/ORM/CakePHP/Populator.php create mode 100644 vendor/fakerphp/faker/src/Faker/ORM/Doctrine/ColumnTypeGuesser.php create mode 100644 vendor/fakerphp/faker/src/Faker/ORM/Doctrine/EntityPopulator.php create mode 100644 vendor/fakerphp/faker/src/Faker/ORM/Doctrine/Populator.php create mode 100644 vendor/fakerphp/faker/src/Faker/ORM/Doctrine/backward-compatibility.php create mode 100644 vendor/fakerphp/faker/src/Faker/ORM/Mandango/ColumnTypeGuesser.php create mode 100644 vendor/fakerphp/faker/src/Faker/ORM/Mandango/EntityPopulator.php create mode 100644 vendor/fakerphp/faker/src/Faker/ORM/Mandango/Populator.php create mode 100644 vendor/fakerphp/faker/src/Faker/ORM/Propel/ColumnTypeGuesser.php create mode 100644 vendor/fakerphp/faker/src/Faker/ORM/Propel/EntityPopulator.php create mode 100644 vendor/fakerphp/faker/src/Faker/ORM/Propel/Populator.php create mode 100644 vendor/fakerphp/faker/src/Faker/ORM/Propel2/ColumnTypeGuesser.php create mode 100644 vendor/fakerphp/faker/src/Faker/ORM/Propel2/EntityPopulator.php create mode 100644 vendor/fakerphp/faker/src/Faker/ORM/Propel2/Populator.php create mode 100644 vendor/fakerphp/faker/src/Faker/ORM/Spot/ColumnTypeGuesser.php create mode 100644 vendor/fakerphp/faker/src/Faker/ORM/Spot/EntityPopulator.php create mode 100644 vendor/fakerphp/faker/src/Faker/ORM/Spot/Populator.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/Barcode.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/Base.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/Biased.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/Color.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/DateTime.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/File.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/HtmlLorem.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/Image.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/Lorem.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/Medical.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/Miscellaneous.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/UserAgent.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/Uuid.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ar_EG/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ar_EG/Color.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ar_EG/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ar_EG/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ar_EG/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ar_EG/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ar_EG/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ar_JO/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ar_JO/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ar_JO/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ar_JO/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ar_JO/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ar_SA/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ar_SA/Color.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ar_SA/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ar_SA/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ar_SA/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ar_SA/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ar_SA/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/at_AT/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/bg_BG/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/bg_BG/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/bg_BG/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/bg_BG/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/bn_BD/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/bn_BD/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/bn_BD/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/bn_BD/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/bn_BD/Utils.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/cs_CZ/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/cs_CZ/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/cs_CZ/DateTime.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/cs_CZ/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/cs_CZ/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/cs_CZ/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/cs_CZ/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/cs_CZ/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/da_DK/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/da_DK/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/da_DK/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/da_DK/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/da_DK/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/da_DK/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/de_AT/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/de_AT/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/de_AT/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/de_AT/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/de_AT/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/de_AT/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/de_AT/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/de_CH/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/de_CH/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/de_CH/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/de_CH/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/de_CH/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/de_CH/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/de_CH/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/de_DE/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/de_DE/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/de_DE/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/de_DE/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/de_DE/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/de_DE/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/de_DE/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/el_CY/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/el_CY/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/el_CY/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/el_CY/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/el_CY/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/el_CY/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/el_GR/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/el_GR/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/el_GR/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/el_GR/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/el_GR/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/el_GR/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_AU/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_AU/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_AU/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_CA/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_CA/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_GB/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_GB/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_GB/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_GB/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_GB/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_GB/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_HK/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_HK/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_HK/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_IN/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_IN/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_IN/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_IN/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_NG/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_NG/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_NG/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_NG/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_NZ/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_NZ/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_NZ/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_PH/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_PH/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_SG/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_SG/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_SG/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_UG/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_UG/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_UG/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_UG/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_US/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_US/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_US/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_US/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_US/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_US/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_ZA/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_ZA/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_ZA/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_ZA/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/en_ZA/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/es_AR/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/es_AR/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/es_AR/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/es_AR/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/es_ES/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/es_ES/Color.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/es_ES/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/es_ES/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/es_ES/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/es_ES/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/es_ES/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/es_ES/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/es_PE/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/es_PE/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/es_PE/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/es_PE/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/es_VE/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/es_VE/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/es_VE/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/es_VE/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/es_VE/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/et_EE/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fa_IR/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fa_IR/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fa_IR/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fa_IR/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fa_IR/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fa_IR/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fi_FI/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fi_FI/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fi_FI/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fi_FI/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fi_FI/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fi_FI/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fr_BE/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fr_BE/Color.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fr_BE/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fr_BE/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fr_BE/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fr_BE/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fr_BE/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fr_CA/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fr_CA/Color.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fr_CA/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fr_CA/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fr_CA/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fr_CH/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fr_CH/Color.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fr_CH/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fr_CH/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fr_CH/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fr_CH/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fr_CH/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fr_CH/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fr_FR/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fr_FR/Color.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fr_FR/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fr_FR/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fr_FR/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fr_FR/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fr_FR/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/fr_FR/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/he_IL/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/he_IL/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/he_IL/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/he_IL/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/he_IL/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/hr_HR/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/hr_HR/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/hr_HR/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/hr_HR/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/hr_HR/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/hu_HU/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/hu_HU/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/hu_HU/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/hu_HU/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/hu_HU/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/hu_HU/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/hy_AM/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/hy_AM/Color.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/hy_AM/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/hy_AM/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/hy_AM/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/hy_AM/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/id_ID/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/id_ID/Color.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/id_ID/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/id_ID/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/id_ID/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/id_ID/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/is_IS/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/is_IS/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/is_IS/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/is_IS/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/is_IS/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/is_IS/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/it_CH/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/it_CH/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/it_CH/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/it_CH/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/it_CH/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/it_CH/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/it_CH/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/it_IT/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/it_IT/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/it_IT/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/it_IT/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/it_IT/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/it_IT/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/it_IT/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ja_JP/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ja_JP/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ja_JP/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ja_JP/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ja_JP/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ja_JP/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ka_GE/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ka_GE/Color.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ka_GE/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ka_GE/DateTime.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ka_GE/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ka_GE/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ka_GE/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ka_GE/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ka_GE/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/kk_KZ/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/kk_KZ/Color.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/kk_KZ/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/kk_KZ/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/kk_KZ/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/kk_KZ/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/kk_KZ/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/kk_KZ/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ko_KR/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ko_KR/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ko_KR/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ko_KR/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ko_KR/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ko_KR/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/lt_LT/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/lt_LT/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/lt_LT/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/lt_LT/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/lt_LT/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/lt_LT/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/lv_LV/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/lv_LV/Color.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/lv_LV/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/lv_LV/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/lv_LV/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/lv_LV/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/me_ME/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/me_ME/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/me_ME/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/me_ME/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/me_ME/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/mn_MN/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/mn_MN/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ms_MY/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ms_MY/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ms_MY/Miscellaneous.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ms_MY/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ms_MY/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ms_MY/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/nb_NO/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/nb_NO/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/nb_NO/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/nb_NO/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/nb_NO/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ne_NP/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ne_NP/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ne_NP/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ne_NP/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ne_NP/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/nl_BE/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/nl_BE/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/nl_BE/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/nl_BE/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/nl_BE/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/nl_BE/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/nl_BE/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/nl_NL/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/nl_NL/Color.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/nl_NL/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/nl_NL/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/nl_NL/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/nl_NL/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/nl_NL/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/nl_NL/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/pl_PL/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/pl_PL/Color.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/pl_PL/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/pl_PL/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/pl_PL/LicensePlate.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/pl_PL/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/pl_PL/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/pl_PL/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/pl_PL/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/pt_BR/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/pt_BR/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/pt_BR/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/pt_BR/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/pt_BR/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/pt_BR/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/pt_BR/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/pt_BR/check_digit.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/pt_PT/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/pt_PT/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/pt_PT/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/pt_PT/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/pt_PT/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/pt_PT/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ro_MD/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ro_MD/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ro_MD/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ro_MD/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ro_MD/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ro_RO/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ro_RO/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ro_RO/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ro_RO/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ro_RO/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ru_RU/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ru_RU/Color.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ru_RU/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ru_RU/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ru_RU/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ru_RU/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ru_RU/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/ru_RU/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/sk_SK/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/sk_SK/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/sk_SK/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/sk_SK/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/sk_SK/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/sk_SK/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/sl_SI/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/sl_SI/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/sl_SI/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/sl_SI/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/sl_SI/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/sl_SI/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/sr_Cyrl_RS/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/sr_Cyrl_RS/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/sr_Cyrl_RS/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/sr_Latn_RS/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/sr_Latn_RS/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/sr_Latn_RS/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/sr_RS/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/sr_RS/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/sr_RS/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/sv_SE/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/sv_SE/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/sv_SE/Municipality.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/sv_SE/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/sv_SE/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/sv_SE/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/th_TH/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/th_TH/Color.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/th_TH/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/th_TH/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/th_TH/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/th_TH/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/th_TH/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/tr_TR/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/tr_TR/Color.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/tr_TR/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/tr_TR/DateTime.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/tr_TR/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/tr_TR/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/tr_TR/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/tr_TR/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/uk_UA/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/uk_UA/Color.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/uk_UA/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/uk_UA/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/uk_UA/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/uk_UA/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/uk_UA/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/uk_UA/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/vi_VN/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/vi_VN/Color.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/vi_VN/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/vi_VN/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/vi_VN/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/zh_CN/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/zh_CN/Color.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/zh_CN/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/zh_CN/DateTime.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/zh_CN/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/zh_CN/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/zh_CN/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/zh_CN/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/zh_TW/Address.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/zh_TW/Color.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/zh_TW/Company.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/zh_TW/DateTime.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/zh_TW/Internet.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/zh_TW/Payment.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/zh_TW/Person.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/zh_TW/PhoneNumber.php create mode 100644 vendor/fakerphp/faker/src/Faker/Provider/zh_TW/Text.php create mode 100644 vendor/fakerphp/faker/src/Faker/UniqueGenerator.php create mode 100644 vendor/fakerphp/faker/src/Faker/ValidGenerator.php create mode 100644 vendor/fakerphp/faker/src/autoload.php create mode 100644 vendor/psr/container/.gitignore create mode 100644 vendor/psr/container/LICENSE create mode 100644 vendor/psr/container/README.md create mode 100644 vendor/psr/container/composer.json create mode 100644 vendor/psr/container/src/ContainerExceptionInterface.php create mode 100644 vendor/psr/container/src/ContainerInterface.php create mode 100644 vendor/psr/container/src/NotFoundExceptionInterface.php create mode 100644 vendor/symfony/deprecation-contracts/CHANGELOG.md create mode 100644 vendor/symfony/deprecation-contracts/LICENSE create mode 100644 vendor/symfony/deprecation-contracts/README.md create mode 100644 vendor/symfony/deprecation-contracts/composer.json create mode 100644 vendor/symfony/deprecation-contracts/function.php diff --git a/assets/css/custom.css b/assets/css/custom.css new file mode 100644 index 0000000..1bfc8ad --- /dev/null +++ b/assets/css/custom.css @@ -0,0 +1,143 @@ +@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;700;900&display=swap'); + +:root { + --primary-color: #5A67D8; + --secondary-color: #38B2AC; + --text-color: #2D3748; + --bg-gradient-start: #f5f7fa; + --bg-gradient-end: #c3cfe2; + --card-bg: rgba(255, 255, 255, 0.6); + --card-shadow: 0 8px 32px 0 rgba(31, 38, 135, 0.1); + --card-border: rgba(255, 255, 255, 0.18); +} + +body { + font-family: 'Inter', sans-serif; + background: linear-gradient(135deg, var(--bg-gradient-start) 0%, var(--bg-gradient-end) 100%); + color: var(--text-color); + min-height: 100vh; +} + +.navbar-sticky { + position: sticky; + top: 0; + z-index: 1020; + background: rgba(255, 255, 255, 0.8); + backdrop-filter: blur(10px); + -webkit-backdrop-filter: blur(10px); + border-bottom: 1px solid rgba(0,0,0,.1); + transition: background 0.3s ease-in-out, box-shadow 0.3s ease-in-out; +} + +.navbar-sticky.scrolled { + background: rgba(255, 255, 255, 0.95); + box-shadow: 0 4px 6px rgba(0,0,0,0.05); +} + +.brand-logo { + font-weight: 900; + font-size: 1.75rem; + color: var(--primary-color); +} + +.hero-section { + padding: 6rem 0; +} + +.hero-title { + font-weight: 900; + font-size: 3.5rem; +} + +.hero-subtitle { + font-size: 1.25rem; + color: #4A5568; +} + +.search-bar-wrapper { + position: relative; + max-width: 600px; + margin: 2rem auto; +} + +.search-input { + border-radius: 50px; + border: 1px solid #E2E8F0; + padding: 1rem 2rem 1rem 3.5rem; + font-size: 1.1rem; + transition: all 0.3s ease-in-out; + box-shadow: 0 4px 6px rgba(0,0,0,0.05); +} + +.search-input:focus { + box-shadow: 0 8px 25px rgba(0,0,0,0.1); + transform: translateY(-2px); + border-color: var(--primary-color); +} + +.search-icon { + position: absolute; + left: 1.25rem; + top: 50%; + transform: translateY(-50%); + color: #A0AEC0; +} + +.category-card { + background: var(--card-bg); + border-radius: 1rem; + border: 1px solid var(--card-border); + box-shadow: var(--card-shadow); + backdrop-filter: blur(8px); + -webkit-backdrop-filter: blur(8px); + padding: 2rem; + text-align: center; + transition: all 0.3s ease-in-out; + text-decoration: none; + color: var(--text-color); + overflow: hidden; + position: relative; +} + +.category-card:before { + content: ''; + position: absolute; + top: -50%; + left: -50%; + width: 200%; + height: 200%; + background: radial-gradient(circle, rgba(255,255,255,0.4) 0%, rgba(255,255,255,0) 60%); + transform: scale(0); + transition: transform 0.5s ease; +} + + +.category-card:hover { + transform: translateY(-10px) scale(1.03); + box-shadow: 0 16px 40px rgba(31, 38, 135, 0.15); +} + +.category-card:hover:before { + transform: scale(1); +} + +.category-card .card-icon { + font-size: 3rem; + margin-bottom: 1rem; + color: var(--primary-color); + transition: color 0.3s ease; +} + +.category-card:hover .card-icon { + color: var(--secondary-color); +} + +.card-title { + font-weight: 700; + font-size: 1.25rem; +} + +.footer { + background: transparent; + border-top: 1px solid rgba(0,0,0,.05); +} \ No newline at end of file diff --git a/assets/js/main.js b/assets/js/main.js new file mode 100644 index 0000000..c426493 --- /dev/null +++ b/assets/js/main.js @@ -0,0 +1,13 @@ + +document.addEventListener('DOMContentLoaded', function () { + const navbar = document.querySelector('.navbar-sticky'); + if (navbar) { + window.addEventListener('scroll', function () { + if (window.scrollY > 20) { + navbar.classList.add('scrolled'); + } else { + navbar.classList.remove('scrolled'); + } + }); + } +}); diff --git a/category.php b/category.php new file mode 100644 index 0000000..6fc874b --- /dev/null +++ b/category.php @@ -0,0 +1,170 @@ +prepare("SELECT * FROM categories WHERE slug = ?"); +$stmt->execute([$category_slug]); +$category = $stmt->fetch(PDO::FETCH_ASSOC); + +if (!$category) { + die("Category not found."); +} + +$sort = $_GET['sort'] ?? 'popularity'; // New default for categories +$filter_brand = $_GET['filter_brand'] ?? ''; + +$results = []; +$brands = []; + +// Get all products in this category +$sql = "SELECT p.id, p.name, p.brand, p.image_url FROM products p WHERE p.category_id = ?"; +$params = [$category['id']]; + +// Get all possible brands for the current category +$brand_stmt = $pdo->prepare("SELECT DISTINCT brand FROM products WHERE category_id = ? AND brand IS NOT NULL ORDER BY brand"); +$brand_stmt->execute([$category['id']]); +$brands = $brand_stmt->fetchAll(PDO::FETCH_COLUMN); + +// Add brand filter +if (!empty($filter_brand)) { + $sql .= " AND p.brand = ?"; + $params[] = $filter_brand; +} + +// Sorting logic for category page +switch ($sort) { + case 'price_asc': + $sql .= " ORDER BY (SELECT MIN(effective_price) FROM product_listings WHERE product_id = p.id) ASC"; + break; + case 'price_desc': + $sql .= " ORDER BY (SELECT MIN(effective_price) FROM product_listings WHERE product_id = p.id) DESC"; + break; + case 'rating': + $sql .= " ORDER BY (SELECT AVG(rating) FROM product_listings WHERE product_id = p.id) DESC"; + break; + default: // Popularity/relevance for categories could be based on number of listings or other metrics + $sql .= " ORDER BY p.id DESC"; // Simple default: newest products first + break; +} + +$stmt = $pdo->prepare($sql); +$stmt->execute($params); +$products = $stmt->fetchAll(PDO::FETCH_ASSOC); + +$product_ids = array_column($products, 'id'); +if (!empty($product_ids)) { + $placeholders = implode(',', array_fill(0, count($product_ids), '?')); + $stmt = $pdo->prepare("SELECT *, pl.id as listing_id, plat.name as platform_name FROM product_listings pl JOIN platforms plat ON pl.platform_id = plat.id WHERE pl.product_id IN ($placeholders)"); + $stmt->execute($product_ids); + $listings = $stmt->fetchAll(PDO::FETCH_ASSOC); + + $listings_by_product = []; + foreach ($listings as $listing) { + $listings_by_product[$listing['product_id']][] = $listing; + } + + foreach ($products as $product) { + $product['listings'] = $listings_by_product[$product['id']] ?? []; + if (!empty($product['listings'])) { + $cheapest = array_reduce($product['listings'], fn($c, $i) => ($c === null || $i['effective_price'] < $c['effective_price']) ? $i : $c); + $product['cheapest_price'] = $cheapest['effective_price']; + $product['badge'] = $cheapest['badge']; + } + $results[] = $product; + } +} + +?> + + + + + + <?php echo htmlspecialchars($category['name']); ?> - XUPER MALL + + + + +
+ ← Back to Home +

+ +
+ +
+ + +
+
+ + +
+
+ +
+
+ + +
No products found in this category yet.
+ +
+ +
+
+
+
+ <?php echo htmlspecialchars($product['name']); ?> +
+
+
+
+

+

From: $

+ + + +
+
+
+
+
Available on:
+ +
+
+
+
+
+ +
+ +
+ + + \ No newline at end of file diff --git a/composer.json b/composer.json new file mode 100644 index 0000000..52e2849 --- /dev/null +++ b/composer.json @@ -0,0 +1,5 @@ +{ + "require": { + "fakerphp/faker": "^1.24" + } +} diff --git a/composer.lock b/composer.lock new file mode 100644 index 0000000..cc87a9e --- /dev/null +++ b/composer.lock @@ -0,0 +1,202 @@ +{ + "_readme": [ + "This file locks the dependencies of your project to a known state", + "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", + "This file is @generated automatically" + ], + "content-hash": "0ac0340f2120a65e4928bde600db496b", + "packages": [ + { + "name": "fakerphp/faker", + "version": "v1.24.1", + "source": { + "type": "git", + "url": "https://github.com/FakerPHP/Faker.git", + "reference": "e0ee18eb1e6dc3cda3ce9fd97e5a0689a88a64b5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/FakerPHP/Faker/zipball/e0ee18eb1e6dc3cda3ce9fd97e5a0689a88a64b5", + "reference": "e0ee18eb1e6dc3cda3ce9fd97e5a0689a88a64b5", + "shasum": "" + }, + "require": { + "php": "^7.4 || ^8.0", + "psr/container": "^1.0 || ^2.0", + "symfony/deprecation-contracts": "^2.2 || ^3.0" + }, + "conflict": { + "fzaninotto/faker": "*" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.4.1", + "doctrine/persistence": "^1.3 || ^2.0", + "ext-intl": "*", + "phpunit/phpunit": "^9.5.26", + "symfony/phpunit-bridge": "^5.4.16" + }, + "suggest": { + "doctrine/orm": "Required to use Faker\\ORM\\Doctrine", + "ext-curl": "Required by Faker\\Provider\\Image to download images.", + "ext-dom": "Required by Faker\\Provider\\HtmlLorem for generating random HTML.", + "ext-iconv": "Required by Faker\\Provider\\ru_RU\\Text::realText() for generating real Russian text.", + "ext-mbstring": "Required for multibyte Unicode string functionality." + }, + "type": "library", + "autoload": { + "psr-4": { + "Faker\\": "src/Faker/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "François Zaninotto" + } + ], + "description": "Faker is a PHP library that generates fake data for you.", + "keywords": [ + "data", + "faker", + "fixtures" + ], + "support": { + "issues": "https://github.com/FakerPHP/Faker/issues", + "source": "https://github.com/FakerPHP/Faker/tree/v1.24.1" + }, + "time": "2024-11-21T13:46:39+00:00" + }, + { + "name": "psr/container", + "version": "2.0.2", + "source": { + "type": "git", + "url": "https://github.com/php-fig/container.git", + "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/container/zipball/c71ecc56dfe541dbd90c5360474fbc405f8d5963", + "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963", + "shasum": "" + }, + "require": { + "php": ">=7.4.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Container\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common Container Interface (PHP FIG PSR-11)", + "homepage": "https://github.com/php-fig/container", + "keywords": [ + "PSR-11", + "container", + "container-interface", + "container-interop", + "psr" + ], + "support": { + "issues": "https://github.com/php-fig/container/issues", + "source": "https://github.com/php-fig/container/tree/2.0.2" + }, + "time": "2021-11-05T16:47:00+00:00" + }, + { + "name": "symfony/deprecation-contracts", + "version": "v3.6.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/deprecation-contracts.git", + "reference": "63afe740e99a13ba87ec199bb07bbdee937a5b62" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/63afe740e99a13ba87ec199bb07bbdee937a5b62", + "reference": "63afe740e99a13ba87ec199bb07bbdee937a5b62", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, + "branch-alias": { + "dev-main": "3.6-dev" + } + }, + "autoload": { + "files": [ + "function.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "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" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2024-09-25T14:21:43+00:00" + } + ], + "packages-dev": [], + "aliases": [], + "minimum-stability": "stable", + "stability-flags": {}, + "prefer-stable": false, + "prefer-lowest": false, + "platform": {}, + "platform-dev": {}, + "plugin-api-version": "2.9.0" +} diff --git a/composer.phar b/composer.phar new file mode 100755 index 0000000000000000000000000000000000000000..02740c582be6e50e21a48bc1370de50c4b7198b0 GIT binary patch literal 3281618 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�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%0A9sL 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�_7GJ(9BPET-Y0|)=Q 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

v+M9z4Ss=a(537!k+)3Dv*ju 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 EJy5r#j(1@#S;zjakdZ+*tX1J*UfMLC6 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 z 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

jA;L@;~OkV-zZDlkvnM{+Rh^;2+~ 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

g}kXohGwZJi#YL zy}OF+EXY11S(`P&*1TXOI?N(_1FI$Vnt+bx4kev9bfyF;7D?GqfR*||*y+G~y?96t zZaOwtUtUCJAW57}&p7jYb%_jp^AMg>+?}&lEfwXYFF(dY-d)WBe3>PE$EUY&Q>27m>C`J@9%$ZsqR z-C!e%mMMT(!v%Ohi)?iXIl3iekU`S~XwqkjIi%{1Yg=Gl8VFOF#G)Bp@IV99w}T&o z$4l;;b03QgAfco-sNt zkf8-l}wQ-K=Mo3IZRGR@W`-tolY;9 zihvv27N%MRDOWc%Vh4x!6TgL-A2!wGeZ(h!2r)K9aP8YH``on5^YL*=pYB~v3C>u|m_M)owoQxwpL ziY*}E0~Sjumz|v(fxncyzaXE{@7z!b4tNKk44hyPp(d%Vup~|G7jvxYqr`6cjB$(I z!m`(P3!f9ah2~oC)~y@AAPl67T#}&5B06*7Y$$J*>QQecsKq}~{S*}=P?pgmt%-`n zifn_W={}MnH{%kQ9;3ZmH&L5II9p!F=FWor+0EHKN83P~v@qnKkZ(Jr@)M0-(iFO8 zfmX*5ip$6|Y-x!=atJxbY*Axf_^IZ=9zGt?!Ssz?ll)eFRqyRkaJ1Fu+rfI&$m;P< z!(LWPdYWTJmj=G-O>EXV@F3wl*df)-eg_Cyb5E#4k;R#(L&eY{3b~G0b3>_O3|<{9 zU)w|}wTzoSYdJaRptSeH9L?baQDSDy_^M(JpAH#XP8hN3WJei8r5Dmi3f4!+ff3UN zB4P>PT;!pDFzACZ8yHsrEdUiQQ-#0UE{E9&R)AkB=)%&{l($BkE>lgxt?HJ@+F@bH zbJ(t2AKtFjz?_Do4Qh171wx>kMc`r&wZ?um>mTrp3n8@|OLf5M;#agnbbuhb3}z%@ zNN;YgVjdY4W%Vbi&+s6r@e&1yR5S`uplQxbKm}KeV@eaD=wchtIR@b{9~LE&8W=RN zA(A5yVYysc*8v9lBNdGKA~v5WQb=fND<4s;m37&zd7)B5NqDHBMR9T|+%Y-t>7kHV zKoKV@7~3#z!6_>!9nw7(zG)HTcwG)CI2}+BO&uAKm;UMzSMJoyIt-YtriZQYBDh2e z;*F#>NpI89Ax|<�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

L=eSJZljFxiip=1b-wKVZ$d3mBA6EfKimzD2 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%0A0)*>_Z&w$GYW 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

;0N3st7_o*47LKQe7x;I-MTeN=`dF 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 literal 0 HcmV?d00001 diff --git a/db/migrations/001_initial_schema.php b/db/migrations/001_initial_schema.php new file mode 100644 index 0000000..b32251f --- /dev/null +++ b/db/migrations/001_initial_schema.php @@ -0,0 +1,71 @@ +exec($sql); + echo "Database schema created successfully." . PHP_EOL; + } catch (PDOException $e) { + die("Error creating schema: " . $e->getMessage()); + } +} + +// If this script is run directly, execute the migration. +if (basename(__FILE__) == basename($_SERVER["SCRIPT_FILENAME"])) { + migrate_001_initial_schema(); +} diff --git a/db/seeders/seed_categories.php b/db/seeders/seed_categories.php new file mode 100644 index 0000000..d61d798 --- /dev/null +++ b/db/seeders/seed_categories.php @@ -0,0 +1,23 @@ + 'E-Commerce', 'slug' => 'ecommerce', 'icon_url' => 'shopping-bag'], + ['name' => 'Food Delivery', 'slug' => 'food', 'icon_url' => 'coffee'], + ['name' => 'Movie Tickets', 'slug' => 'movies', 'icon_url' => 'film'], + ['name' => '30-Min Delivery', 'slug' => 'delivery', 'icon_url' => 'truck'], + ]; + + $stmt = $pdo->prepare("INSERT INTO categories (name, slug, icon_url) VALUES (?, ?, ?) ON DUPLICATE KEY UPDATE name=VALUES(name)"); + + foreach ($categories as $category) { + $stmt->execute([$category['name'], $category['slug'], $category['icon_url']]); + } + echo "Categories seeded successfully." . PHP_EOL; +} + +if (basename(__FILE__) == basename($_SERVER["SCRIPT_FILENAME"])) { + seed_categories(); +} diff --git a/db/seeders/seed_platforms.php b/db/seeders/seed_platforms.php new file mode 100644 index 0000000..8d7f944 --- /dev/null +++ b/db/seeders/seed_platforms.php @@ -0,0 +1,30 @@ + 'Amazon', 'slug' => 'amazon', 'logo_url' => 'assets/images/logos/amazon.png'], + ['name' => 'Flipkart', 'slug' => 'flipkart', 'logo_url' => 'assets/images/logos/flipkart.png'], + ['name' => 'Myntra', 'slug' => 'myntra', 'logo_url' => 'assets/images/logos/myntra.png'], + ['name' => 'Zomato', 'slug' => 'zomato', 'logo_url' => 'assets/images/logos/zomato.png'], + ['name' => 'Swiggy', 'slug' => 'swiggy', 'logo_url' => 'assets/images/logos/swiggy.png'], + ['name' => 'Magicpin', 'slug' => 'magicpin', 'logo_url' => 'assets/images/logos/magicpin.png'], + ['name' => 'Blinkit', 'slug' => 'blinkit', 'logo_url' => 'assets/images/logos/blinkit.png'], + ['name' => 'Jiomart', 'slug' => 'jiomart', 'logo_url' => 'assets/images/logos/jiomart.png'], + ['name' => 'Instamart', 'slug' => 'instamart', 'logo_url' => 'assets/images/logos/instamart.png'], + ['name' => 'BookMyShow', 'slug' => 'bookmyshow', 'logo_url' => 'assets/images/logos/bookmyshow.png'], + ['name' => 'PaytmMovies', 'slug' => 'paytmmovies', 'logo_url' => 'assets/images/logos/paytmmovies.png'], + ['name' => 'PVR', 'slug' => 'pvr', 'logo_url' => 'assets/images/logos/pvr.png'], + ]; + + $stmt = $pdo->prepare("INSERT INTO platforms (name, slug, logo_url) VALUES (:name, :slug, :logo_url) ON DUPLICATE KEY UPDATE name=VALUES(name), slug=VALUES(slug), logo_url=VALUES(logo_url)"); + + foreach ($platforms as $platform) { + $stmt->execute($platform); + } + + echo "Platforms seeded successfully.\n"; +} + +seed_platforms(); diff --git a/db/seeders/seed_product_listings.php b/db/seeders/seed_product_listings.php new file mode 100644 index 0000000..eb78828 --- /dev/null +++ b/db/seeders/seed_product_listings.php @@ -0,0 +1,54 @@ +query("SELECT id FROM products")->fetchAll(PDO::FETCH_COLUMN); + $platform_ids = $pdo->query("SELECT id FROM platforms")->fetchAll(PDO::FETCH_COLUMN); + + if (empty($product_ids) || empty($platform_ids)) { + echo "Please seed products and platforms first.\n"; + return; + } + + $listings = []; + foreach ($product_ids as $product_id) { + $num_listings = rand(1, count($platform_ids)); + $used_platforms = []; + for ($i = 0; $i < $num_listings; $i++) { + $platform_id = $platform_ids[array_rand($platform_ids)]; + if (in_array($platform_id, $used_platforms)) { + continue; + } + $used_platforms[] = $platform_id; + + $original_price = $faker->randomFloat(2, 10, 1000); + $discounted_price = $original_price - $faker->randomFloat(2, 0, $original_price * 0.5); + $coupon_price = $discounted_price - $faker->randomFloat(2, 0, $discounted_price * 0.2); + + $listings[] = [ + 'product_id' => $product_id, + 'platform_id' => $platform_id, + 'original_price' => $original_price, + 'discounted_price' => $discounted_price, + 'coupon_price' => $coupon_price, + 'rating' => $faker->randomFloat(1, 1, 5), + 'product_url' => $faker->url, + ]; + } + } + + $stmt = $pdo->prepare("INSERT INTO product_listings (product_id, platform_id, original_price, discounted_price, coupon_price, rating, product_url) VALUES (:product_id, :platform_id, :original_price, :discounted_price, :coupon_price, :rating, :product_url)"); + + foreach ($listings as $listing) { + $stmt->execute($listing); + } + + echo count($listings) . " product listings seeded successfully.\n"; +} + +seed_product_listings(); diff --git a/db/seeders/seed_products.php b/db/seeders/seed_products.php new file mode 100644 index 0000000..10551a9 --- /dev/null +++ b/db/seeders/seed_products.php @@ -0,0 +1,39 @@ +query("SELECT id FROM categories"); + $category_ids = $stmt->fetchAll(PDO::FETCH_COLUMN); + + if (empty($category_ids)) { + echo "Please seed categories first.\n"; + return; + } + + $products = []; + for ($i = 0; $i < 300; $i++) { + $products[] = [ + 'name' => $faker->words(3, true), + 'brand' => $faker->company, + 'category_id' => $category_ids[array_rand($category_ids)], + 'subcategory' => $faker->word, + 'image_url' => $faker->imageUrl(640, 480, 'technics', true), + ]; + } + + $stmt = $pdo->prepare("INSERT INTO products (name, brand, category_id, subcategory, image_url) VALUES (:name, :brand, :category_id, :subcategory, :image_url)"); + + foreach ($products as $product) { + $stmt->execute($product); + } + + echo "300 products seeded successfully.\n"; +} + +seed_products(); + diff --git a/index.php b/index.php index 7205f3d..b686150 100644 --- a/index.php +++ b/index.php @@ -1,150 +1,112 @@ - - + - - - New Style - - - - - - - - - - - - - - - - - - - + + + + XUPER MALL - Real-Time Price Comparison + + + + + + + + + + + + + + + + -
-
-

Analyzing your requirements and generating your website…

-
- Loading… -
-

AI is collecting your requirements and applying the first changes.

-

This page will update automatically as the plan is implemented.

-

Runtime: PHP — UTC

-
-
-
- Page updated: (UTC) -
+ +
+ +
+
+
+

Find it. Compare it. Save on it.

+

Your ultimate real-time price comparison hub.

+
+
+ + +
+
+
+
+ +
+ +
+
+ +
+
+ © XUPER MALL. All rights reserved. +
+
+ + + + + - + \ No newline at end of file diff --git a/integrations/AmazonAdapter.php b/integrations/AmazonAdapter.php new file mode 100644 index 0000000..2702000 --- /dev/null +++ b/integrations/AmazonAdapter.php @@ -0,0 +1,31 @@ + rand(100, 1000) / 10, + 'discounted_price' => rand(80, 900) / 10, + 'coupon_price' => rand(1, 50) / 10, + 'rating' => rand(10, 50) / 10, + 'url' => 'https://www.amazon.com/s?k=' . urlencode($productIdOrQuery), + ]; + } + + public function fetchCoupons() { + // Mock data + return [ + ['code' => 'AMAZON10', 'discount' => 10] + ]; + } + + public function fetchRatings() { + // Mock data + return 4.5; + } + + public function resolveProductURL($productIdOrQuery) { + // Mock data + return "https://www.amazon.com/s?k=" . urlencode($productIdOrQuery); + } +} diff --git a/integrations/BlinkitAdapter.php b/integrations/BlinkitAdapter.php new file mode 100644 index 0000000..fbd8330 --- /dev/null +++ b/integrations/BlinkitAdapter.php @@ -0,0 +1 @@ +prepare("SELECT DISTINCT brand FROM products WHERE MATCH(name, brand) AGAINST(? IN BOOLEAN MODE) AND brand IS NOT NULL ORDER BY brand"); + $brand_stmt->execute(["*" . $query . "*"]); + $brands = $brand_stmt->fetchAll(PDO::FETCH_COLUMN); + + // Sorting logic + switch ($sort) { + case 'price_asc': + $sql .= " ORDER BY (SELECT MIN(effective_price) FROM product_listings WHERE product_id = p.id) ASC"; + break; + case 'price_desc': + $sql .= " ORDER BY (SELECT MIN(effective_price) FROM product_listings WHERE product_id = p.id) DESC"; + break; + case 'rating': + $sql .= " ORDER BY (SELECT AVG(rating) FROM product_listings WHERE product_id = p.id) DESC"; + break; + default: + // Default is relevance, no extra ORDER BY needed for MATCH...AGAINST + break; + } + + // 1. Search for products + $stmt = $pdo->prepare($sql); + $stmt->execute($params); + $products = $stmt->fetchAll(PDO::FETCH_ASSOC); + + $product_ids = array_column($products, 'id'); + if (!empty($product_ids)) { + $placeholders = implode(',', array_fill(0, count($product_ids), '?')); + $stmt = $pdo->prepare("SELECT *, pl.id as listing_id, plat.name as platform_name FROM product_listings pl JOIN platforms plat ON pl.platform_id = plat.id WHERE pl.product_id IN ($placeholders)"); + $stmt->execute($product_ids); + $listings = $stmt->fetchAll(PDO::FETCH_ASSOC); + + $listings_by_product = []; + foreach ($listings as $listing) { + $listings_by_product[$listing['product_id']][] = $listing; + } + + foreach ($products as $product) { + $product['listings'] = $listings_by_product[$product['id']] ?? []; + if (!empty($product['listings'])) { + $cheapest = array_reduce($product['listings'], fn($c, $i) => ($c === null || $i['effective_price'] < $c['effective_price']) ? $i : $c); + $product['cheapest_price'] = $cheapest['effective_price']; + $product['badge'] = $cheapest['badge']; + } + $results[] = $product; + } + } +} +?> + + + + + + Search Results for "<?php echo htmlspecialchars($query); ?>" - XUPER MALL + + + + +
+ ← Back to Home +

Search Results for ""

+ +
+ +
+ + +
+
+ + +
+
+ +
+
+ + +
No products found matching your search.
+ +
+ +
+
+
+
+ <?php echo htmlspecialchars($product['name']); ?> +
+
+
+
+

+

From: $

+ + + +
+
+
+
+
Available on:
+ +
+
+
+
+
+ +
+ +
+ + + diff --git a/sync.php b/sync.php new file mode 100644 index 0000000..39181b5 --- /dev/null +++ b/sync.php @@ -0,0 +1,105 @@ +query("SELECT * FROM products")->fetchAll(PDO::FETCH_ASSOC); + $platforms = $pdo->query("SELECT * FROM platforms")->fetchAll(PDO::FETCH_ASSOC); + + $adapters = []; + foreach ($platforms as $platform) { + $class_name = ucfirst($platform['slug']) . 'Adapter'; + if (class_exists($class_name)) { + $adapters[$platform['id']] = new $class_name(); + } + } + + foreach ($products as $product) { + $cheapest_listing = null; + $top_rated_listing = null; + $best_deal_listing = null; + + foreach ($platforms as $platform) { + if (!isset($adapters[$platform['id']])) { + continue; + } + + $adapter = $adapters[$platform['id']]; + $price_data = $adapter->fetchProductPrice($product['name']); + + // Prepare listing data + $listing_data = [ + 'product_id' => $product['id'], + 'platform_id' => $platform['id'], + 'original_price' => $price_data['original_price'], + 'discounted_price' => $price_data['discounted_price'], + 'coupon_price' => $price_data['coupon_price'], + 'rating' => $price_data['rating'], + 'product_url' => $price_data['url'], + 'last_synced_at' => date('Y-m-d H:i:s'), + ]; + + $listing_data['effective_price'] = calculate_effective_price($listing_data); + $listing_data['final_score'] = calculate_final_score($listing_data); + + // Insert or update listing + $stmt = $pdo->prepare("SELECT id FROM product_listings WHERE product_id = :product_id AND platform_id = :platform_id"); + $stmt->execute(['product_id' => $product['id'], 'platform_id' => $platform['id']]); + $existing_listing_id = $stmt->fetchColumn(); + + if ($existing_listing_id) { + $sql = "UPDATE product_listings SET original_price = :original_price, discounted_price = :discounted_price, coupon_price = :coupon_price, rating = :rating, product_url = :product_url, last_synced_at = :last_synced_at, effective_price = :effective_price, final_score = :final_score WHERE id = :id"; + $listing_data['id'] = $existing_listing_id; + } else { + $sql = "INSERT INTO product_listings (product_id, platform_id, original_price, discounted_price, coupon_price, rating, product_url, last_synced_at, effective_price, final_score) VALUES (:product_id, :platform_id, :original_price, :discounted_price, :coupon_price, :rating, :product_url, :last_synced_at, :effective_price, :final_score)"; + } + $pdo->prepare($sql)->execute($listing_data); + $listing_id = $existing_listing_id ?: $pdo->lastInsertId(); + + // Badge logic + $listing_data['id'] = $listing_id; + if (!$cheapest_listing || $listing_data['effective_price'] < $cheapest_listing['effective_price']) { + $cheapest_listing = $listing_data; + } + if (!$top_rated_listing || $listing_data['rating'] > $top_rated_listing['rating']) { + $top_rated_listing = $listing_data; + } + if (!$best_deal_listing || $listing_data['final_score'] > $best_deal_listing['final_score']) { + $best_deal_listing = $listing_data; + } + } + + // Update badges + $pdo->prepare("UPDATE product_listings SET badge = NULL WHERE product_id = ?")->execute([$product['id']]); + if ($cheapest_listing) { + $pdo->prepare("UPDATE product_listings SET badge = 'CHEAPEST' WHERE id = ?")->execute([$cheapest_listing['id']]); + } + if ($top_rated_listing) { + $pdo->prepare("UPDATE product_listings SET badge = CASE WHEN badge IS NULL THEN 'TOP RATED' ELSE CONCAT(badge, ', TOP RATED') END WHERE id = ?")->execute([$top_rated_listing['id']]); + } + if ($best_deal_listing) { + $pdo->prepare("UPDATE product_listings SET badge = CASE WHEN badge IS NULL THEN 'BEST DEAL' ELSE CONCAT(badge, ', BEST DEAL') END WHERE id = ?")->execute([$best_deal_listing['id']]); + } + } + + echo "Sync completed successfully.\n"; +} + +sync_data(); diff --git a/vendor/autoload.php b/vendor/autoload.php new file mode 100644 index 0000000..e3de376 --- /dev/null +++ b/vendor/autoload.php @@ -0,0 +1,22 @@ + + * Jordi Boggiano + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace Composer\Autoload; + +/** + * ClassLoader implements a PSR-0, PSR-4 and classmap class loader. + * + * $loader = new \Composer\Autoload\ClassLoader(); + * + * // register classes with namespaces + * $loader->add('Symfony\Component', __DIR__.'/component'); + * $loader->add('Symfony', __DIR__.'/framework'); + * + * // activate the autoloader + * $loader->register(); + * + * // to enable searching the include path (eg. for PEAR packages) + * $loader->setUseIncludePath(true); + * + * In this example, if you try to use a class in the Symfony\Component + * namespace or one of its children (Symfony\Component\Console for instance), + * the autoloader will first look for the class under the component/ + * directory, and it will then fallback to the framework/ directory if not + * found before giving up. + * + * This class is loosely based on the Symfony UniversalClassLoader. + * + * @author Fabien Potencier + * @author Jordi Boggiano + * @see https://www.php-fig.org/psr/psr-0/ + * @see https://www.php-fig.org/psr/psr-4/ + */ +class ClassLoader +{ + /** @var \Closure(string):void */ + private static $includeFile; + + /** @var string|null */ + private $vendorDir; + + // PSR-4 + /** + * @var array> + */ + private $prefixLengthsPsr4 = array(); + /** + * @var array> + */ + private $prefixDirsPsr4 = array(); + /** + * @var list + */ + private $fallbackDirsPsr4 = array(); + + // PSR-0 + /** + * List of PSR-0 prefixes + * + * Structured as array('F (first letter)' => array('Foo\Bar (full prefix)' => array('path', 'path2'))) + * + * @var array>> + */ + private $prefixesPsr0 = array(); + /** + * @var list + */ + private $fallbackDirsPsr0 = array(); + + /** @var bool */ + private $useIncludePath = false; + + /** + * @var array + */ + private $classMap = array(); + + /** @var bool */ + private $classMapAuthoritative = false; + + /** + * @var array + */ + private $missingClasses = array(); + + /** @var string|null */ + private $apcuPrefix; + + /** + * @var array + */ + private static $registeredLoaders = array(); + + /** + * @param string|null $vendorDir + */ + public function __construct($vendorDir = null) + { + $this->vendorDir = $vendorDir; + self::initializeIncludeClosure(); + } + + /** + * @return array> + */ + public function getPrefixes() + { + if (!empty($this->prefixesPsr0)) { + return call_user_func_array('array_merge', array_values($this->prefixesPsr0)); + } + + return array(); + } + + /** + * @return array> + */ + public function getPrefixesPsr4() + { + return $this->prefixDirsPsr4; + } + + /** + * @return list + */ + public function getFallbackDirs() + { + return $this->fallbackDirsPsr0; + } + + /** + * @return list + */ + public function getFallbackDirsPsr4() + { + return $this->fallbackDirsPsr4; + } + + /** + * @return array Array of classname => path + */ + public function getClassMap() + { + return $this->classMap; + } + + /** + * @param array $classMap Class to filename map + * + * @return void + */ + public function addClassMap(array $classMap) + { + if ($this->classMap) { + $this->classMap = array_merge($this->classMap, $classMap); + } else { + $this->classMap = $classMap; + } + } + + /** + * 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 list|string $paths The PSR-0 root directories + * @param bool $prepend Whether to prepend the directories + * + * @return void + */ + public function add($prefix, $paths, $prepend = false) + { + $paths = (array) $paths; + if (!$prefix) { + if ($prepend) { + $this->fallbackDirsPsr0 = array_merge( + $paths, + $this->fallbackDirsPsr0 + ); + } else { + $this->fallbackDirsPsr0 = array_merge( + $this->fallbackDirsPsr0, + $paths + ); + } + + return; + } + + $first = $prefix[0]; + if (!isset($this->prefixesPsr0[$first][$prefix])) { + $this->prefixesPsr0[$first][$prefix] = $paths; + + return; + } + if ($prepend) { + $this->prefixesPsr0[$first][$prefix] = array_merge( + $paths, + $this->prefixesPsr0[$first][$prefix] + ); + } else { + $this->prefixesPsr0[$first][$prefix] = array_merge( + $this->prefixesPsr0[$first][$prefix], + $paths + ); + } + } + + /** + * 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 list|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) + { + $paths = (array) $paths; + if (!$prefix) { + // Register directories for the root namespace. + if ($prepend) { + $this->fallbackDirsPsr4 = array_merge( + $paths, + $this->fallbackDirsPsr4 + ); + } else { + $this->fallbackDirsPsr4 = array_merge( + $this->fallbackDirsPsr4, + $paths + ); + } + } elseif (!isset($this->prefixDirsPsr4[$prefix])) { + // Register directories for a new namespace. + $length = strlen($prefix); + if ('\\' !== $prefix[$length - 1]) { + throw new \InvalidArgumentException("A non-empty PSR-4 prefix must end with a namespace separator."); + } + $this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length; + $this->prefixDirsPsr4[$prefix] = $paths; + } elseif ($prepend) { + // Prepend directories for an already registered namespace. + $this->prefixDirsPsr4[$prefix] = array_merge( + $paths, + $this->prefixDirsPsr4[$prefix] + ); + } else { + // Append directories for an already registered namespace. + $this->prefixDirsPsr4[$prefix] = array_merge( + $this->prefixDirsPsr4[$prefix], + $paths + ); + } + } + + /** + * 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 list|string $paths The PSR-0 base directories + * + * @return void + */ + public function set($prefix, $paths) + { + if (!$prefix) { + $this->fallbackDirsPsr0 = (array) $paths; + } else { + $this->prefixesPsr0[$prefix[0]][$prefix] = (array) $paths; + } + } + + /** + * 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 list|string $paths The PSR-4 base directories + * + * @throws \InvalidArgumentException + * + * @return void + */ + public function setPsr4($prefix, $paths) + { + if (!$prefix) { + $this->fallbackDirsPsr4 = (array) $paths; + } else { + $length = strlen($prefix); + if ('\\' !== $prefix[$length - 1]) { + throw new \InvalidArgumentException("A non-empty PSR-4 prefix must end with a namespace separator."); + } + $this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length; + $this->prefixDirsPsr4[$prefix] = (array) $paths; + } + } + + /** + * Turns on searching the include path for class files. + * + * @param bool $useIncludePath + * + * @return void + */ + public function setUseIncludePath($useIncludePath) + { + $this->useIncludePath = $useIncludePath; + } + + /** + * Can be used to check if the autoloader uses the include path to check + * for classes. + * + * @return bool + */ + public function getUseIncludePath() + { + return $this->useIncludePath; + } + + /** + * Turns off searching the prefix and fallback directories for classes + * that have not been registered with the class map. + * + * @param bool $classMapAuthoritative + * + * @return void + */ + public function setClassMapAuthoritative($classMapAuthoritative) + { + $this->classMapAuthoritative = $classMapAuthoritative; + } + + /** + * Should class lookup fail if not found in the current class map? + * + * @return bool + */ + public function isClassMapAuthoritative() + { + return $this->classMapAuthoritative; + } + + /** + * 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) + { + $this->apcuPrefix = function_exists('apcu_fetch') && filter_var(ini_get('apc.enabled'), FILTER_VALIDATE_BOOLEAN) ? $apcuPrefix : null; + } + + /** + * The APCu prefix in use, or null if APCu caching is not enabled. + * + * @return string|null + */ + public function getApcuPrefix() + { + return $this->apcuPrefix; + } + + /** + * Registers this instance as an autoloader. + * + * @param bool $prepend Whether to prepend the autoloader or not + * + * @return void + */ + public function register($prepend = false) + { + spl_autoload_register(array($this, 'loadClass'), true, $prepend); + + if (null === $this->vendorDir) { + return; + } + + if ($prepend) { + self::$registeredLoaders = array($this->vendorDir => $this) + self::$registeredLoaders; + } else { + unset(self::$registeredLoaders[$this->vendorDir]); + self::$registeredLoaders[$this->vendorDir] = $this; + } + } + + /** + * Unregisters this instance as an autoloader. + * + * @return void + */ + public function unregister() + { + spl_autoload_unregister(array($this, 'loadClass')); + + if (null !== $this->vendorDir) { + unset(self::$registeredLoaders[$this->vendorDir]); + } + } + + /** + * Loads the given class or interface. + * + * @param string $class The name of the class + * @return true|null True if loaded, null otherwise + */ + public function loadClass($class) + { + if ($file = $this->findFile($class)) { + $includeFile = self::$includeFile; + $includeFile($file); + + return true; + } + + return null; + } + + /** + * Finds the path to the file where the class is defined. + * + * @param string $class The name of the class + * + * @return string|false The path if found, false otherwise + */ + public function findFile($class) + { + // class map lookup + if (isset($this->classMap[$class])) { + return $this->classMap[$class]; + } + if ($this->classMapAuthoritative || isset($this->missingClasses[$class])) { + return false; + } + if (null !== $this->apcuPrefix) { + $file = apcu_fetch($this->apcuPrefix.$class, $hit); + if ($hit) { + return $file; + } + } + + $file = $this->findFileWithExtension($class, '.php'); + + // Search for Hack files if we are running on HHVM + if (false === $file && defined('HHVM_VERSION')) { + $file = $this->findFileWithExtension($class, '.hh'); + } + + if (null !== $this->apcuPrefix) { + apcu_add($this->apcuPrefix.$class, $file); + } + + if (false === $file) { + // Remember that this class does not exist. + $this->missingClasses[$class] = true; + } + + return $file; + } + + /** + * Returns the currently registered loaders keyed by their corresponding vendor directories. + * + * @return array + */ + public static function getRegisteredLoaders() + { + return self::$registeredLoaders; + } + + /** + * @param string $class + * @param string $ext + * @return string|false + */ + private function findFileWithExtension($class, $ext) + { + // PSR-4 lookup + $logicalPathPsr4 = strtr($class, '\\', DIRECTORY_SEPARATOR) . $ext; + + $first = $class[0]; + if (isset($this->prefixLengthsPsr4[$first])) { + $subPath = $class; + while (false !== $lastPos = strrpos($subPath, '\\')) { + $subPath = substr($subPath, 0, $lastPos); + $search = $subPath . '\\'; + if (isset($this->prefixDirsPsr4[$search])) { + $pathEnd = DIRECTORY_SEPARATOR . substr($logicalPathPsr4, $lastPos + 1); + foreach ($this->prefixDirsPsr4[$search] as $dir) { + if (file_exists($file = $dir . $pathEnd)) { + return $file; + } + } + } + } + } + + // PSR-4 fallback dirs + foreach ($this->fallbackDirsPsr4 as $dir) { + if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr4)) { + return $file; + } + } + + // PSR-0 lookup + if (false !== $pos = strrpos($class, '\\')) { + // namespaced class name + $logicalPathPsr0 = substr($logicalPathPsr4, 0, $pos + 1) + . strtr(substr($logicalPathPsr4, $pos + 1), '_', DIRECTORY_SEPARATOR); + } else { + // PEAR-like class name + $logicalPathPsr0 = strtr($class, '_', DIRECTORY_SEPARATOR) . $ext; + } + + if (isset($this->prefixesPsr0[$first])) { + foreach ($this->prefixesPsr0[$first] as $prefix => $dirs) { + if (0 === strpos($class, $prefix)) { + foreach ($dirs as $dir) { + if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr0)) { + return $file; + } + } + } + } + } + + // PSR-0 fallback dirs + foreach ($this->fallbackDirsPsr0 as $dir) { + if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr0)) { + return $file; + } + } + + // PSR-0 include paths. + if ($this->useIncludePath && $file = stream_resolve_include_path($logicalPathPsr0)) { + return $file; + } + + 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); + } +} diff --git a/vendor/composer/InstalledVersions.php b/vendor/composer/InstalledVersions.php new file mode 100644 index 0000000..2052022 --- /dev/null +++ b/vendor/composer/InstalledVersions.php @@ -0,0 +1,396 @@ + + * 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; + + /** + * @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; + } +} diff --git a/vendor/composer/LICENSE b/vendor/composer/LICENSE new file mode 100644 index 0000000..f27399a --- /dev/null +++ b/vendor/composer/LICENSE @@ -0,0 +1,21 @@ + +Copyright (c) Nils Adermann, Jordi Boggiano + +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/composer/autoload_classmap.php b/vendor/composer/autoload_classmap.php new file mode 100644 index 0000000..0fb0a2c --- /dev/null +++ b/vendor/composer/autoload_classmap.php @@ -0,0 +1,10 @@ + $vendorDir . '/composer/InstalledVersions.php', +); diff --git a/vendor/composer/autoload_files.php b/vendor/composer/autoload_files.php new file mode 100644 index 0000000..be8e1c3 --- /dev/null +++ b/vendor/composer/autoload_files.php @@ -0,0 +1,10 @@ + $vendorDir . '/symfony/deprecation-contracts/function.php', +); diff --git a/vendor/composer/autoload_namespaces.php b/vendor/composer/autoload_namespaces.php new file mode 100644 index 0000000..15a2ff3 --- /dev/null +++ b/vendor/composer/autoload_namespaces.php @@ -0,0 +1,9 @@ + array($vendorDir . '/psr/container/src'), + 'Faker\\' => array($vendorDir . '/fakerphp/faker/src/Faker'), +); diff --git a/vendor/composer/autoload_real.php b/vendor/composer/autoload_real.php new file mode 100644 index 0000000..f748e4b --- /dev/null +++ b/vendor/composer/autoload_real.php @@ -0,0 +1,50 @@ +register(true); + + $filesToLoad = \Composer\Autoload\ComposerStaticInit06a246fb7fd541d754d977d9b5f184ae::$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); + } + + return $loader; + } +} diff --git a/vendor/composer/autoload_static.php b/vendor/composer/autoload_static.php new file mode 100644 index 0000000..079a92d --- /dev/null +++ b/vendor/composer/autoload_static.php @@ -0,0 +1,48 @@ + __DIR__ . '/..' . '/symfony/deprecation-contracts/function.php', + ); + + public static $prefixLengthsPsr4 = array ( + 'P' => + array ( + 'Psr\\Container\\' => 14, + ), + 'F' => + array ( + 'Faker\\' => 6, + ), + ); + + public static $prefixDirsPsr4 = array ( + 'Psr\\Container\\' => + array ( + 0 => __DIR__ . '/..' . '/psr/container/src', + ), + 'Faker\\' => + array ( + 0 => __DIR__ . '/..' . '/fakerphp/faker/src/Faker', + ), + ); + + public static $classMap = array ( + 'Composer\\InstalledVersions' => __DIR__ . '/..' . '/composer/InstalledVersions.php', + ); + + public static function getInitializer(ClassLoader $loader) + { + return \Closure::bind(function () use ($loader) { + $loader->prefixLengthsPsr4 = ComposerStaticInit06a246fb7fd541d754d977d9b5f184ae::$prefixLengthsPsr4; + $loader->prefixDirsPsr4 = ComposerStaticInit06a246fb7fd541d754d977d9b5f184ae::$prefixDirsPsr4; + $loader->classMap = ComposerStaticInit06a246fb7fd541d754d977d9b5f184ae::$classMap; + + }, null, ClassLoader::class); + } +} diff --git a/vendor/composer/installed.json b/vendor/composer/installed.json new file mode 100644 index 0000000..da1b882 --- /dev/null +++ b/vendor/composer/installed.json @@ -0,0 +1,198 @@ +{ + "packages": [ + { + "name": "fakerphp/faker", + "version": "v1.24.1", + "version_normalized": "1.24.1.0", + "source": { + "type": "git", + "url": "https://github.com/FakerPHP/Faker.git", + "reference": "e0ee18eb1e6dc3cda3ce9fd97e5a0689a88a64b5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/FakerPHP/Faker/zipball/e0ee18eb1e6dc3cda3ce9fd97e5a0689a88a64b5", + "reference": "e0ee18eb1e6dc3cda3ce9fd97e5a0689a88a64b5", + "shasum": "" + }, + "require": { + "php": "^7.4 || ^8.0", + "psr/container": "^1.0 || ^2.0", + "symfony/deprecation-contracts": "^2.2 || ^3.0" + }, + "conflict": { + "fzaninotto/faker": "*" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.4.1", + "doctrine/persistence": "^1.3 || ^2.0", + "ext-intl": "*", + "phpunit/phpunit": "^9.5.26", + "symfony/phpunit-bridge": "^5.4.16" + }, + "suggest": { + "doctrine/orm": "Required to use Faker\\ORM\\Doctrine", + "ext-curl": "Required by Faker\\Provider\\Image to download images.", + "ext-dom": "Required by Faker\\Provider\\HtmlLorem for generating random HTML.", + "ext-iconv": "Required by Faker\\Provider\\ru_RU\\Text::realText() for generating real Russian text.", + "ext-mbstring": "Required for multibyte Unicode string functionality." + }, + "time": "2024-11-21T13:46:39+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "Faker\\": "src/Faker/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "François Zaninotto" + } + ], + "description": "Faker is a PHP library that generates fake data for you.", + "keywords": [ + "data", + "faker", + "fixtures" + ], + "support": { + "issues": "https://github.com/FakerPHP/Faker/issues", + "source": "https://github.com/FakerPHP/Faker/tree/v1.24.1" + }, + "install-path": "../fakerphp/faker" + }, + { + "name": "psr/container", + "version": "2.0.2", + "version_normalized": "2.0.2.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/container.git", + "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/container/zipball/c71ecc56dfe541dbd90c5360474fbc405f8d5963", + "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963", + "shasum": "" + }, + "require": { + "php": ">=7.4.0" + }, + "time": "2021-11-05T16:47:00+00:00", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Psr\\Container\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common Container Interface (PHP FIG PSR-11)", + "homepage": "https://github.com/php-fig/container", + "keywords": [ + "PSR-11", + "container", + "container-interface", + "container-interop", + "psr" + ], + "support": { + "issues": "https://github.com/php-fig/container/issues", + "source": "https://github.com/php-fig/container/tree/2.0.2" + }, + "install-path": "../psr/container" + }, + { + "name": "symfony/deprecation-contracts", + "version": "v3.6.0", + "version_normalized": "3.6.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/deprecation-contracts.git", + "reference": "63afe740e99a13ba87ec199bb07bbdee937a5b62" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/63afe740e99a13ba87ec199bb07bbdee937a5b62", + "reference": "63afe740e99a13ba87ec199bb07bbdee937a5b62", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "time": "2024-09-25T14:21:43+00:00", + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, + "branch-alias": { + "dev-main": "3.6-dev" + } + }, + "installation-source": "dist", + "autoload": { + "files": [ + "function.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "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" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "install-path": "../symfony/deprecation-contracts" + } + ], + "dev": true, + "dev-package-names": [] +} diff --git a/vendor/composer/installed.php b/vendor/composer/installed.php new file mode 100644 index 0000000..4613865 --- /dev/null +++ b/vendor/composer/installed.php @@ -0,0 +1,50 @@ + array( + 'name' => '__root__', + 'pretty_version' => 'dev-master', + 'version' => 'dev-master', + 'reference' => '84efa2fe150e314ad2cb51e9200a66c25409ee7c', + 'type' => 'library', + 'install_path' => __DIR__ . '/../../', + 'aliases' => array(), + 'dev' => true, + ), + 'versions' => array( + '__root__' => array( + 'pretty_version' => 'dev-master', + 'version' => 'dev-master', + 'reference' => '84efa2fe150e314ad2cb51e9200a66c25409ee7c', + 'type' => 'library', + 'install_path' => __DIR__ . '/../../', + 'aliases' => array(), + 'dev_requirement' => false, + ), + 'fakerphp/faker' => array( + 'pretty_version' => 'v1.24.1', + 'version' => '1.24.1.0', + 'reference' => 'e0ee18eb1e6dc3cda3ce9fd97e5a0689a88a64b5', + 'type' => 'library', + 'install_path' => __DIR__ . '/../fakerphp/faker', + 'aliases' => array(), + 'dev_requirement' => false, + ), + '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, + ), + '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, + ), + ), +); diff --git a/vendor/composer/platform_check.php b/vendor/composer/platform_check.php new file mode 100644 index 0000000..2beb149 --- /dev/null +++ b/vendor/composer/platform_check.php @@ -0,0 +1,25 @@ += 80100)) { + $issues[] = 'Your Composer dependencies require a PHP version ">= 8.1.0". You are running ' . PHP_VERSION . '.'; +} + +if ($issues) { + if (!headers_sent()) { + header('HTTP/1.1 500 Internal Server Error'); + } + if (!ini_get('display_errors')) { + if (PHP_SAPI === 'cli' || PHP_SAPI === 'phpdbg') { + fwrite(STDERR, 'Composer detected issues in your platform:' . PHP_EOL.PHP_EOL . implode(PHP_EOL, $issues) . PHP_EOL.PHP_EOL); + } elseif (!headers_sent()) { + echo 'Composer detected issues in your platform:' . PHP_EOL.PHP_EOL . str_replace('You are running '.PHP_VERSION.'.', '', implode(PHP_EOL, $issues)) . PHP_EOL.PHP_EOL; + } + } + throw new \RuntimeException( + 'Composer detected issues in your platform: ' . implode(' ', $issues) + ); +} diff --git a/vendor/fakerphp/faker/CHANGELOG.md b/vendor/fakerphp/faker/CHANGELOG.md new file mode 100644 index 0000000..d3e3722 --- /dev/null +++ b/vendor/fakerphp/faker/CHANGELOG.md @@ -0,0 +1,209 @@ +# CHANGELOG + +## [Unreleased](https://github.com/FakerPHP/Faker/compare/v1.24.0...1.24.1) + +- Removed domain `gmail.com.au` from `Provider\en_AU\Internet` (#886) + +## [2024-11-09, v1.24.0](https://github.com/FakerPHP/Faker/compare/v1.23.1..v1.24.0) + +- Fix internal deprecations in Doctrine's populator by @gnutix in (#889) +- Fix mobile phone number pattern for France by @ker0x in (#859) +- PHP 8.4 Support by @Jubeki in (#904) + +- Added support for PHP 8.4 (#904) + +## [2023-09-29, v1.23.1](https://github.com/FakerPHP/Faker/compare/v1.23.0..v1.23.1) + +- Fixed double `а` female lastName in `ru_RU/Person::name()` (#832) +- Fixed polish license plates (#685) +- Stopped using `static` in callables in `Provider\pt_BR\PhoneNumber` (#785) +- Fixed incorrect female name (#794) +- Stopped using the deprecated `MT_RAND_PHP` constant to seed the random generator on PHP 8.3 (#844) + +## [2023-06-12, v1.23.0](https://github.com/FakerPHP/Faker/compare/v1.22.0..v1.23.0) + +- Update `randomElements` to return random number of elements when no count is provided (#658) + +## [2023-05-14, v1.22.0](https://github.com/FakerPHP/Faker/compare/v1.21.0..v1.22.0) + +- Fixed `randomElements()` to accept empty iterator (#605) +- Added support for passing an `Enum` to `randomElement()` and `randomElements()` (#620) +- Started rejecting invalid arguments passed to `randomElement()` and `randomElements()` (#642) + +## [2022-12-13, v1.21.0](https://github.com/FakerPHP/Faker/compare/v1.20.0..v1.21.0) + +- Dropped support for PHP 7.1, 7.2, and 7.3 (#543) +- Added support for PHP 8.2 (#528) + +## [2022-07-20, v1.20.0](https://github.com/FakerPHP/Faker/compare/v1.19.0..v1.20.0) + +- Fixed typo in French phone number (#452) +- Fixed some Hungarian naming bugs (#451) +- Fixed bug where the NL-BE VAT generation was incorrect (#455) +- Improve Turkish phone numbers for E164 and added landline support (#460) +- Add Microsoft Edge User Agent (#464) +- Added option to set image formats on Faker\Provider\Image (#473) +- Added support for French color translations (#466) +- Support filtering timezones by country code (#480) +- Fixed typo in some greek names (#490) +- Marked the Faker\Provider\Image as deprecated + +## [2022-02-02, v1.19.0](https://github.com/FakerPHP/Faker/compare/v1.18.0..v1.19.0) + +- Added color extension to core (#442) +- Added conflict with `doctrine/persistence` below version `1.4` +- Fix for support on different Doctrine ORM versions (#414) +- Fix usage of `Doctrine\Persistence` dependency +- Fix CZ Person birthNumber docblock return type (#437) +- Fix is_IS Person docbock types (#439) +- Fix is_IS Address docbock type (#438) +- Fix regexify escape backslash in character class (#434) +- Removed UUID from Generator to be able to extend it (#441) + +## [2022-01-23, v1.18.0](https://github.com/FakerPHP/Faker/compare/v1.17.0..v1.18.0) + +- Deprecated UUID, use uuid3 to specify version (#427) +- Reset formatters when adding a new provider (#366) +- Helper methods to use our custom generators (#155) +- Set allow-plugins for Composer 2.2 (#405) +- Fix kk_KZ\Person::individualIdentificationNumber generation (#411) +- Allow for -> syntax to be used in parsing (#423) +- Person->name was missing string return type (#424) +- Generate a valid BE TAX number (#415) +- Added the UUID extension to Core (#427) + +## [2021-12-05, v1.17.0](https://github.com/FakerPHP/Faker/compare/v1.16.0..v1.17.0) + +- Partial PHP 8.1 compatibility (#373) +- Add payment provider for `ne_NP` locale (#375) +- Add Egyptian Arabic `ar_EG` locale (#377) +- Updated list of South African TLDs (#383) +- Fixed formatting of E.164 numbers (#380) +- Allow `symfony/deprecation-contracts` `^3.0` (#397) + +## [2021-09-06, v1.16.0](https://github.com/FakerPHP/Faker/compare/v1.15.0..v1.16.0) + +- Add Company extension +- Add Address extension +- Add Person extension +- Add PhoneNumber extension +- Add VersionExtension (#350) +- Stricter types in Extension\Container and Extension\GeneratorAwareExtension (#345) +- Fix deprecated property access in `nl_NL` (#348) +- Add support for `psr/container` >= 2.0 (#354) +- Add missing union types in Faker\Generator (#352) + +## [2021-07-06, v1.15.0](https://github.com/FakerPHP/Faker/compare/v1.14.1..v1.15.0) + +- Updated the generator phpdoc to help identify magic methods (#307) +- Prevent direct access and triggered deprecation warning for "word" (#302) +- Updated length on all global e164 numbers (#301) +- Updated last names from different source (#312) +- Don't generate birth number of '000' for Swedish personal identity (#306) +- Add job list for localization id_ID (#339) + +## [2021-03-30, v1.14.1](https://github.com/FakerPHP/Faker/compare/v1.14.0..v1.14.1) + +- Fix where randomNumber and randomFloat would return a 0 value (#291 / #292) + +## [2021-03-29, v1.14.0](https://github.com/FakerPHP/Faker/compare/v1.13.0..v1.14.0) + +- Fix for realText to ensure the text keeps closer to its boundaries (#152) +- Fix where regexify produces a random character instead of a literal dot (#135 +- Deprecate zh_TW methods that only call base methods (#122) +- Add used extensions to composer.json as suggestion (#120) +- Moved TCNo and INN from calculator to localized providers (#108) +- Fix regex dot/backslash issue where a dot is replaced with a backslash as escape character (#206) +- Deprecate direct property access (#164) +- Added test to assert unique() behaviour (#233) +- Added RUC for the es_PE locale (#244) +- Test IBAN formats for Latin America (AR/PE/VE) (#260) +- Added VAT number for en_GB (#255) +- Added new districts for the ne_NP locale (#258) +- Fix for U.S. Area Code Generation (#261) +- Fix in numerify where a better random numeric value is guaranteed (#256) +- Fix e164PhoneNumber to only generate valid phone numbers with valid country codes (#264) +- Extract fixtures into separate classes (#234) +- Remove french domains that no longer exists (#277) +- Fix error that occurs when getting a polish title (#279) +- Use valid area codes for North America E164 phone numbers (#280) + +- Adding support for extensions and PSR-11 (#154) +- Adding trait for GeneratorAwareExtension (#165) +- Added helper class for extension (#162) +- Added blood extension to core (#232) +- Added barcode extension to core (#252) +- Added number extension (#257) + +- Various code style updates +- Added a note about our breaking change promise (#273) + +## [2020-12-18, v1.13.0](https://github.com/FakerPHP/Faker/compare/v1.12.1..v1.13.0) + +Several fixes and new additions in this release. A lot of cleanup has been done +on the codebase on both tests and consistency. + +- Feature/pl pl license plate (#62) +- Fix greek phone numbers (#16) +- Move AT payment provider logic to de_AT (#72) +- Fix wiktionary links (#73) +- Fix AT person links (#74) +- Fix AT cities (#75) +- Deprecate at_AT providers (#78) +- Add Austrian `ssn()` to `Person` provider (#79) +- Fix typos in id_ID Address (#83) +- Austrian post codes (#86) +- Updated Polish data (#70) +- Improve Austrian social security number generation (#88) +- Move US phone numbers with extension to own method (#91) +- Add UK National Insurance number generator (#89) +- Fix en_SG phone number generator (#100) +- Remove usage of mt_rand (#87) +- Remove whitespace from beginning of el_GR phone numbers (#105) +- Building numbers can not be 0, 00, 000 (#107) +- Add 172.16/12 local IPv4 block (#121) +- Add JCB credit card type (#124) +- Remove json_decode from emoji generation (#123) +- Remove ro street address (#146) + +## [2020-12-11, v1.12.1](https://github.com/FakerPHP/Faker/compare/v1.12.0..v1.12.1) + +This is a security release that prevents a hacker to execute code on the server. + +## [2020-11-23, v1.12.0](https://github.com/FakerPHP/Faker/compare/v1.11.0..v1.12.0) + +- Fix ro_RO first and last day of year calculation offset (#65) +- Fix en_NG locale test namespaces that did not match PSR-4 (#57) +- Added Singapore NRIC/FIN provider (#56) +- Added provider for Lithuanian municipalities (#58) +- Added blood types provider (#61) + +## [2020-11-15, v1.11.0](https://github.com/FakerPHP/Faker/compare/v1.10.1..v1.11.0) + +- Added Provider for Swedish Municipalities +- Updates to person names in pt_BR +- Many code style changes + +## [2020-10-28, v1.10.1](https://github.com/FakerPHP/Faker/compare/v1.10.0..v1.10.1) + +- Updates the Danish addresses in dk_DK +- Removed offense company names in nl_NL +- Clarify changelog with original fork +- Standin replacement for LoremPixel to Placeholder.com (#11) + +## [2020-10-27, v1.10.0](https://github.com/FakerPHP/Faker/compare/v1.9.1..v1.10.0) + +- Support PHP 7.1-8.0 +- Fix typo in de_DE Company Provider +- Fix dateTimeThisYear method +- Fix typo in de_DE jobTitleFormat +- Fix IBAN generation for CR +- Fix typos in greek first names +- Fix US job title typo +- Do not clear entity manager for doctrine orm populator +- Remove persian rude words +- Corrections to RU names + +## 2020-10-27, v1.9.1 + +- Initial version. Same as `fzaninotto/Faker:v1.9.1`. diff --git a/vendor/fakerphp/faker/LICENSE b/vendor/fakerphp/faker/LICENSE new file mode 100644 index 0000000..99ed007 --- /dev/null +++ b/vendor/fakerphp/faker/LICENSE @@ -0,0 +1,22 @@ +Copyright (c) 2011 François Zaninotto +Portions Copyright (c) 2008 Caius Durling +Portions Copyright (c) 2008 Adam Royle +Portions Copyright (c) 2008 Fiona Burrows + +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/fakerphp/faker/README.md b/vendor/fakerphp/faker/README.md new file mode 100644 index 0000000..2c6a268 --- /dev/null +++ b/vendor/fakerphp/faker/README.md @@ -0,0 +1,114 @@ +

Social card of FakerPHP

+ +# Faker + +[![Packagist Downloads](https://img.shields.io/packagist/dm/FakerPHP/Faker)](https://packagist.org/packages/fakerphp/faker) +[![GitHub Workflow Status](https://img.shields.io/github/workflow/status/FakerPHP/Faker/Tests/main)](https://github.com/FakerPHP/Faker/actions) +[![Type Coverage](https://shepherd.dev/github/FakerPHP/Faker/coverage.svg)](https://shepherd.dev/github/FakerPHP/Faker) +[![Code Coverage](https://codecov.io/gh/FakerPHP/Faker/branch/main/graph/badge.svg)](https://codecov.io/gh/FakerPHP/Faker) + +Faker is a PHP library that generates fake data for you. Whether you need to bootstrap your database, create good-looking XML documents, fill-in your persistence to stress test it, or anonymize data taken from a production service, Faker is for you. + +It's heavily inspired by Perl's [Data::Faker](https://metacpan.org/pod/Data::Faker), and by Ruby's [Faker](https://rubygems.org/gems/faker). + +## Getting Started + +### Installation + +Faker requires PHP >= 7.4. + +```shell +composer require fakerphp/faker +``` + +### Documentation + +Full documentation can be found over on [fakerphp.github.io](https://fakerphp.github.io). + +### Basic Usage + +Use `Faker\Factory::create()` to create and initialize a Faker generator, which can generate data by accessing methods named after the type of data you want. + +```php +name(); +// 'Vince Sporer' +echo $faker->email(); +// 'walter.sophia@hotmail.com' +echo $faker->text(); +// 'Numquam ut mollitia at consequuntur inventore dolorem.' +``` + +Each call to `$faker->name()` yields a different (random) result. This is because Faker uses `__call()` magic, and forwards `Faker\Generator->$method()` calls to `Faker\Generator->format($method, $attributes)`. + +```php +name() . "\n"; +} + +// 'Cyrus Boyle' +// 'Alena Cummerata' +// 'Orlo Bergstrom' +``` + +## Automated refactoring + +If you already used this library with its properties, they are now deprecated and needs to be replaced by their equivalent methods. + +You can use the provided [Rector](https://github.com/rectorphp/rector) config file to automate the work. + +Run + +```bash +composer require --dev rector/rector +``` + +to install `rector/rector`. + +Run + +```bash +vendor/bin/rector process src/ --config vendor/fakerphp/faker/rector-migrate.php +``` + +to run `rector/rector`. + +*Note:* do not forget to replace `src/` with the path to your source directory. + +Alternatively, import the configuration in your `rector.php` file: + +```php +import('vendor/fakerphp/faker/rector-migrate.php'); +}; +``` + +## License + +Faker is released under the MIT License. See [`LICENSE`](LICENSE) for details. + +## Backward compatibility promise + +Faker is using [Semver](https://semver.org/). This means that versions are tagged +with MAJOR.MINOR.PATCH. Only a new major version will be allowed to break backward +compatibility (BC). + +Classes marked as `@experimental` or `@internal` are not included in our backward compatibility promise. +You are also not guaranteed that the value returned from a method is always the +same. You are guaranteed that the data type will not change. + +PHP 8 introduced [named arguments](https://wiki.php.net/rfc/named_params), which +increased the cost and reduces flexibility for package maintainers. The names of the +arguments for methods in Faker is not included in our BC promise. diff --git a/vendor/fakerphp/faker/composer.json b/vendor/fakerphp/faker/composer.json new file mode 100644 index 0000000..88724f2 --- /dev/null +++ b/vendor/fakerphp/faker/composer.json @@ -0,0 +1,56 @@ +{ + "name": "fakerphp/faker", + "type": "library", + "description": "Faker is a PHP library that generates fake data for you.", + "keywords": [ + "faker", + "fixtures", + "data" + ], + "license": "MIT", + "authors": [ + { + "name": "François Zaninotto" + } + ], + "require": { + "php": "^7.4 || ^8.0", + "psr/container": "^1.0 || ^2.0", + "symfony/deprecation-contracts": "^2.2 || ^3.0" + }, + "require-dev": { + "ext-intl": "*", + "bamarni/composer-bin-plugin": "^1.4.1", + "doctrine/persistence": "^1.3 || ^2.0", + "phpunit/phpunit": "^9.5.26", + "symfony/phpunit-bridge": "^5.4.16" + }, + "autoload": { + "psr-4": { + "Faker\\": "src/Faker/" + } + }, + "autoload-dev": { + "psr-4": { + "Faker\\Test\\": "test/Faker/", + "Faker\\Test\\Fixture\\": "test/Fixture/" + } + }, + "conflict": { + "fzaninotto/faker": "*" + }, + "suggest": { + "ext-curl": "Required by Faker\\Provider\\Image to download images.", + "ext-dom": "Required by Faker\\Provider\\HtmlLorem for generating random HTML.", + "ext-iconv": "Required by Faker\\Provider\\ru_RU\\Text::realText() for generating real Russian text.", + "ext-mbstring": "Required for multibyte Unicode string functionality.", + "doctrine/orm": "Required to use Faker\\ORM\\Doctrine" + }, + "config": { + "allow-plugins": { + "bamarni/composer-bin-plugin": true, + "composer/package-versions-deprecated": true + }, + "sort-packages": true + } +} diff --git a/vendor/fakerphp/faker/rector-migrate.php b/vendor/fakerphp/faker/rector-migrate.php new file mode 100644 index 0000000..7d99b57 --- /dev/null +++ b/vendor/fakerphp/faker/rector-migrate.php @@ -0,0 +1,161 @@ +ruleWithConfiguration( + Transform\Rector\Assign\PropertyFetchToMethodCallRector::class, + array_map(static function (string $property): Transform\ValueObject\PropertyFetchToMethodCall { + return new Transform\ValueObject\PropertyFetchToMethodCall( + Generator::class, + $property, + $property, + ); + }, $properties), + ); +}; diff --git a/vendor/fakerphp/faker/src/Faker/Calculator/Ean.php b/vendor/fakerphp/faker/src/Faker/Calculator/Ean.php new file mode 100644 index 0000000..fbf11fc --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Calculator/Ean.php @@ -0,0 +1,50 @@ + $digit) { + $sums += ((int) $digit) * $sequence[$n % 2]; + } + + return (10 - $sums % 10) % 10; + } + + /** + * Checks whether the provided number is an EAN compliant number and that + * the checksum is correct. + * + * @param string $ean An EAN number + * + * @return bool + */ + public static function isValid(string $ean) + { + if (!preg_match(self::PATTERN, $ean)) { + return false; + } + + return self::checksum(substr($ean, 0, -1)) === (int) substr($ean, -1); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Calculator/Iban.php b/vendor/fakerphp/faker/src/Faker/Calculator/Iban.php new file mode 100644 index 0000000..19068fd --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Calculator/Iban.php @@ -0,0 +1,69 @@ += 0; $i -= 2) { + $sum += $number[$i]; + } + + for ($i = $length - 2; $i >= 0; $i -= 2) { + $sum += array_sum(str_split($number[$i] * 2)); + } + + return $sum % 10; + } + + /** + * @return string + */ + public static function computeCheckDigit(string $partialNumber) + { + $checkDigit = self::checksum($partialNumber . '0'); + + if ($checkDigit === 0) { + return '0'; + } + + return (string) (10 - $checkDigit); + } + + /** + * Checks whether a number (partial number + check digit) is Luhn compliant + * + * @return bool + */ + public static function isValid(string $number) + { + return self::checksum($number) === 0; + } + + /** + * Generate a Luhn compliant number. + * + * @return string + */ + public static function generateLuhnNumber(string $partialValue) + { + if (!preg_match('/^\d+$/', $partialValue)) { + throw new \InvalidArgumentException('Argument should be an integer.'); + } + + return $partialValue . Luhn::computeCheckDigit($partialValue); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Calculator/TCNo.php b/vendor/fakerphp/faker/src/Faker/Calculator/TCNo.php new file mode 100644 index 0000000..a75c93e --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Calculator/TCNo.php @@ -0,0 +1,43 @@ +default = $default; + $this->generator = $generator; + $this->weight = $weight; + } + + public function ext(string $id) + { + return new self($this->generator->ext($id), $this->weight, $this->default); + } + + /** + * Catch and proxy all generator calls but return only valid values + * + * @param string $attribute + * + * @deprecated Use a method instead. + */ + public function __get($attribute) + { + trigger_deprecation('fakerphp/faker', '1.14', 'Accessing property "%s" is deprecated, use "%s()" instead.', $attribute, $attribute); + + return $this->__call($attribute, []); + } + + /** + * @param string $name + * @param array $arguments + */ + public function __call($name, $arguments) + { + if (mt_rand(1, 100) <= (100 * $this->weight)) { + return call_user_func_array([$this->generator, $name], $arguments); + } + + return $this->default; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Container/Container.php b/vendor/fakerphp/faker/src/Faker/Container/Container.php new file mode 100644 index 0000000..9b36184 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Container/Container.php @@ -0,0 +1,139 @@ + + */ + private array $definitions; + + private array $services = []; + + /** + * Create a container object with a set of definitions. The array value MUST + * produce an object that implements Extension. + * + * @param array $definitions + */ + public function __construct(array $definitions) + { + $this->definitions = $definitions; + } + + /** + * Retrieve a definition from the container. + * + * @param string $id + * + * @throws \InvalidArgumentException + * @throws \RuntimeException + * @throws ContainerException + * @throws NotInContainerException + */ + public function get($id): Extension + { + if (!is_string($id)) { + throw new \InvalidArgumentException(sprintf( + 'First argument of %s::get() must be string', + self::class, + )); + } + + if (array_key_exists($id, $this->services)) { + return $this->services[$id]; + } + + if (!$this->has($id)) { + throw new NotInContainerException(sprintf( + 'There is not service with id "%s" in the container.', + $id, + )); + } + + $definition = $this->definitions[$id]; + + $service = $this->getService($id, $definition); + + if (!$service instanceof Extension) { + throw new \RuntimeException(sprintf( + 'Service resolved for identifier "%s" does not implement the %s" interface.', + $id, + Extension::class, + )); + } + + $this->services[$id] = $service; + + return $service; + } + + /** + * Get the service from a definition. + * + * @param callable|object|string $definition + */ + private function getService(string $id, $definition) + { + if (is_callable($definition)) { + try { + return $definition(); + } catch (\Throwable $e) { + throw new ContainerException( + sprintf('Error while invoking callable for "%s"', $id), + 0, + $e, + ); + } + } elseif (is_object($definition)) { + return $definition; + } elseif (is_string($definition)) { + if (class_exists($definition)) { + try { + return new $definition(); + } catch (\Throwable $e) { + throw new ContainerException(sprintf('Could not instantiate class "%s"', $id), 0, $e); + } + } + + throw new ContainerException(sprintf( + 'Could not instantiate class "%s". Class was not found.', + $id, + )); + } else { + throw new ContainerException(sprintf( + 'Invalid type for definition with id "%s"', + $id, + )); + } + } + + /** + * Check if the container contains a given identifier. + * + * @param string $id + * + * @throws \InvalidArgumentException + */ + public function has($id): bool + { + if (!is_string($id)) { + throw new \InvalidArgumentException(sprintf( + 'First argument of %s::get() must be string', + self::class, + )); + } + + return array_key_exists($id, $this->definitions); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Container/ContainerBuilder.php b/vendor/fakerphp/faker/src/Faker/Container/ContainerBuilder.php new file mode 100644 index 0000000..f2545e9 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Container/ContainerBuilder.php @@ -0,0 +1,68 @@ + + */ + private array $definitions = []; + + /** + * @param callable|object|string $definition + * + * @throws \InvalidArgumentException + */ + public function add(string $id, $definition): self + { + if (!is_string($definition) && !is_callable($definition) && !is_object($definition)) { + throw new \InvalidArgumentException(sprintf( + 'First argument to "%s::add()" must be a string, callable or object.', + self::class, + )); + } + + $this->definitions[$id] = $definition; + + return $this; + } + + public function build(): ContainerInterface + { + return new Container($this->definitions); + } + + private static function defaultExtensions(): array + { + return [ + Extension\BarcodeExtension::class => Core\Barcode::class, + Extension\BloodExtension::class => Core\Blood::class, + Extension\ColorExtension::class => Core\Color::class, + Extension\DateTimeExtension::class => Core\DateTime::class, + Extension\FileExtension::class => Core\File::class, + Extension\NumberExtension::class => Core\Number::class, + Extension\UuidExtension::class => Core\Uuid::class, + Extension\VersionExtension::class => Core\Version::class, + ]; + } + + public static function withDefaultExtensions(): self + { + $instance = new self(); + + foreach (self::defaultExtensions() as $id => $definition) { + $instance->add($id, $definition); + } + + return $instance; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Container/ContainerException.php b/vendor/fakerphp/faker/src/Faker/Container/ContainerException.php new file mode 100644 index 0000000..12b3caa --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Container/ContainerException.php @@ -0,0 +1,14 @@ +numberExtension = $numberExtension ?: new Number(); + } + + private function ean(int $length = 13): string + { + $code = Extension\Helper::numerify(str_repeat('#', $length - 1)); + + return sprintf('%s%s', $code, Calculator\Ean::checksum($code)); + } + + public function ean13(): string + { + return $this->ean(); + } + + public function ean8(): string + { + return $this->ean(8); + } + + public function isbn10(): string + { + $code = Extension\Helper::numerify(str_repeat('#', 9)); + + return sprintf('%s%s', $code, Calculator\Isbn::checksum($code)); + } + + public function isbn13(): string + { + $code = '97' . $this->numberExtension->numberBetween(8, 9) . Extension\Helper::numerify(str_repeat('#', 9)); + + return sprintf('%s%s', $code, Calculator\Ean::checksum($code)); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Core/Blood.php b/vendor/fakerphp/faker/src/Faker/Core/Blood.php new file mode 100644 index 0000000..03e563f --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Core/Blood.php @@ -0,0 +1,42 @@ +bloodTypes); + } + + public function bloodRh(): string + { + return Extension\Helper::randomElement($this->bloodRhFactors); + } + + public function bloodGroup(): string + { + return sprintf( + '%s%s', + $this->bloodType(), + $this->bloodRh(), + ); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Core/Color.php b/vendor/fakerphp/faker/src/Faker/Core/Color.php new file mode 100644 index 0000000..c6cac0d --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Core/Color.php @@ -0,0 +1,177 @@ +numberExtension = $numberExtension ?: new Number(); + } + + /** + * @example '#fa3cc2' + */ + public function hexColor(): string + { + return '#' . str_pad(dechex($this->numberExtension->numberBetween(1, 16777215)), 6, '0', STR_PAD_LEFT); + } + + /** + * @example '#ff0044' + */ + public function safeHexColor(): string + { + $color = str_pad(dechex($this->numberExtension->numberBetween(0, 255)), 3, '0', STR_PAD_LEFT); + + return sprintf( + '#%s%s%s%s%s%s', + $color[0], + $color[0], + $color[1], + $color[1], + $color[2], + $color[2], + ); + } + + /** + * @example 'array(0,255,122)' + * + * @return int[] + */ + public function rgbColorAsArray(): array + { + $color = $this->hexColor(); + + return [ + hexdec(substr($color, 1, 2)), + hexdec(substr($color, 3, 2)), + hexdec(substr($color, 5, 2)), + ]; + } + + /** + * @example '0,255,122' + */ + public function rgbColor(): string + { + return implode(',', $this->rgbColorAsArray()); + } + + /** + * @example 'rgb(0,255,122)' + */ + public function rgbCssColor(): string + { + return sprintf( + 'rgb(%s)', + $this->rgbColor(), + ); + } + + /** + * @example 'rgba(0,255,122,0.8)' + */ + public function rgbaCssColor(): string + { + return sprintf( + 'rgba(%s,%s)', + $this->rgbColor(), + $this->numberExtension->randomFloat(1, 0, 1), + ); + } + + /** + * @example 'blue' + */ + public function safeColorName(): string + { + return Helper::randomElement($this->safeColorNames); + } + + /** + * @example 'NavajoWhite' + */ + public function colorName(): string + { + return Helper::randomElement($this->allColorNames); + } + + /** + * @example '340,50,20' + */ + public function hslColor(): string + { + return sprintf( + '%s,%s,%s', + $this->numberExtension->numberBetween(0, 360), + $this->numberExtension->numberBetween(0, 100), + $this->numberExtension->numberBetween(0, 100), + ); + } + + /** + * @example array(340, 50, 20) + * + * @return int[] + */ + public function hslColorAsArray(): array + { + return [ + $this->numberExtension->numberBetween(0, 360), + $this->numberExtension->numberBetween(0, 100), + $this->numberExtension->numberBetween(0, 100), + ]; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Core/Coordinates.php b/vendor/fakerphp/faker/src/Faker/Core/Coordinates.php new file mode 100644 index 0000000..bc0678f --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Core/Coordinates.php @@ -0,0 +1,78 @@ +numberExtension = $numberExtension ?: new Number(); + } + + /** + * @example '77.147489' + * + * @return float Uses signed degrees format (returns a float number between -90 and 90) + */ + public function latitude(float $min = -90.0, float $max = 90.0): float + { + if ($min < -90 || $max < -90) { + throw new \LogicException('Latitude cannot be less that -90.0'); + } + + if ($min > 90 || $max > 90) { + throw new \LogicException('Latitude cannot be greater that 90.0'); + } + + return $this->randomFloat(6, $min, $max); + } + + /** + * @example '86.211205' + * + * @return float Uses signed degrees format (returns a float number between -180 and 180) + */ + public function longitude(float $min = -180.0, float $max = 180.0): float + { + if ($min < -180 || $max < -180) { + throw new \LogicException('Longitude cannot be less that -180.0'); + } + + if ($min > 180 || $max > 180) { + throw new \LogicException('Longitude cannot be greater that 180.0'); + } + + return $this->randomFloat(6, $min, $max); + } + + /** + * @example array('77.147489', '86.211205') + * + * @return array{latitude: float, longitude: float} + */ + public function localCoordinates(): array + { + return [ + 'latitude' => $this->latitude(), + 'longitude' => $this->longitude(), + ]; + } + + private function randomFloat(int $nbMaxDecimals, float $min, float $max): float + { + if ($min > $max) { + throw new \LogicException('Invalid coordinates boundaries'); + } + + return $this->numberExtension->randomFloat($nbMaxDecimals, $min, $max); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Core/DateTime.php b/vendor/fakerphp/faker/src/Faker/Core/DateTime.php new file mode 100644 index 0000000..6e02c66 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Core/DateTime.php @@ -0,0 +1,217 @@ +getTimestamp(); + } + + return strtotime(empty($until) ? 'now' : $until); + } + + /** + * Get a DateTime created based on a POSIX-timestamp. + * + * @param int $timestamp the UNIX / POSIX-compatible timestamp + */ + private function getTimestampDateTime(int $timestamp): \DateTime + { + return new \DateTime('@' . $timestamp); + } + + private function resolveTimezone(?string $timezone): string + { + if ($timezone !== null) { + return $timezone; + } + + return null === $this->defaultTimezone ? date_default_timezone_get() : $this->defaultTimezone; + } + + /** + * Internal method to set the timezone on a DateTime object. + */ + private function setTimezone(\DateTime $dateTime, ?string $timezone): \DateTime + { + $timezone = $this->resolveTimezone($timezone); + + return $dateTime->setTimezone(new \DateTimeZone($timezone)); + } + + public function dateTime($until = 'now', ?string $timezone = null): \DateTime + { + return $this->setTimezone( + $this->getTimestampDateTime($this->unixTime($until)), + $timezone, + ); + } + + public function dateTimeAD($until = 'now', ?string $timezone = null): \DateTime + { + $min = (PHP_INT_SIZE > 4) ? -62135597361 : -PHP_INT_MAX; + + return $this->setTimezone( + $this->getTimestampDateTime($this->generator->numberBetween($min, $this->getTimestamp($until))), + $timezone, + ); + } + + public function dateTimeBetween($from = '-30 years', $until = 'now', ?string $timezone = null): \DateTime + { + $start = $this->getTimestamp($from); + $end = $this->getTimestamp($until); + + if ($start > $end) { + throw new \InvalidArgumentException('"$from" must be anterior to "$until".'); + } + + $timestamp = $this->generator->numberBetween($start, $end); + + return $this->setTimezone( + $this->getTimestampDateTime($timestamp), + $timezone, + ); + } + + public function dateTimeInInterval($from = '-30 years', string $interval = '+5 days', ?string $timezone = null): \DateTime + { + $intervalObject = \DateInterval::createFromDateString($interval); + $datetime = $from instanceof \DateTime ? $from : new \DateTime($from); + + $other = (clone $datetime)->add($intervalObject); + + $begin = min($datetime, $other); + $end = $datetime === $begin ? $other : $datetime; + + return $this->dateTimeBetween($begin, $end, $timezone); + } + + public function dateTimeThisWeek($until = 'sunday this week', ?string $timezone = null): \DateTime + { + return $this->dateTimeBetween('monday this week', $until, $timezone); + } + + public function dateTimeThisMonth($until = 'last day of this month', ?string $timezone = null): \DateTime + { + return $this->dateTimeBetween('first day of this month', $until, $timezone); + } + + public function dateTimeThisYear($until = 'last day of december', ?string $timezone = null): \DateTime + { + return $this->dateTimeBetween('first day of january', $until, $timezone); + } + + public function dateTimeThisDecade($until = 'now', ?string $timezone = null): \DateTime + { + $year = floor(date('Y') / 10) * 10; + + return $this->dateTimeBetween("first day of january $year", $until, $timezone); + } + + public function dateTimeThisCentury($until = 'now', ?string $timezone = null): \DateTime + { + $year = floor(date('Y') / 100) * 100; + + return $this->dateTimeBetween("first day of january $year", $until, $timezone); + } + + public function date(string $format = 'Y-m-d', $until = 'now'): string + { + return $this->dateTime($until)->format($format); + } + + public function time(string $format = 'H:i:s', $until = 'now'): string + { + return $this->date($format, $until); + } + + public function unixTime($until = 'now'): int + { + return $this->generator->numberBetween(0, $this->getTimestamp($until)); + } + + public function iso8601($until = 'now'): string + { + return $this->date(\DateTime::ISO8601, $until); + } + + public function amPm($until = 'now'): string + { + return $this->date('a', $until); + } + + public function dayOfMonth($until = 'now'): string + { + return $this->date('d', $until); + } + + public function dayOfWeek($until = 'now'): string + { + return $this->date('l', $until); + } + + public function month($until = 'now'): string + { + return $this->date('m', $until); + } + + public function monthName($until = 'now'): string + { + return $this->date('F', $until); + } + + public function year($until = 'now'): string + { + return $this->date('Y', $until); + } + + public function century(): string + { + return Helper::randomElement($this->centuries); + } + + public function timezone(?string $countryCode = null): string + { + if ($countryCode) { + $timezones = \DateTimeZone::listIdentifiers(\DateTimeZone::PER_COUNTRY, $countryCode); + } else { + $timezones = \DateTimeZone::listIdentifiers(); + } + + return Helper::randomElement($timezones); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Core/File.php b/vendor/fakerphp/faker/src/Faker/Core/File.php new file mode 100644 index 0000000..5151e90 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Core/File.php @@ -0,0 +1,564 @@ + file extension(s) + * + * @see http://svn.apache.org/repos/asf/httpd/httpd/trunk/docs/conf/mime.types + */ + private array $mimeTypes = [ + 'application/atom+xml' => 'atom', + 'application/ecmascript' => 'ecma', + 'application/emma+xml' => 'emma', + 'application/epub+zip' => 'epub', + 'application/java-archive' => 'jar', + 'application/java-vm' => 'class', + 'application/javascript' => 'js', + 'application/json' => 'json', + 'application/jsonml+json' => 'jsonml', + 'application/lost+xml' => 'lostxml', + 'application/mathml+xml' => 'mathml', + 'application/mets+xml' => 'mets', + 'application/mods+xml' => 'mods', + 'application/mp4' => 'mp4s', + 'application/msword' => ['doc', 'dot'], + 'application/octet-stream' => [ + 'bin', + 'dms', + 'lrf', + 'mar', + 'so', + 'dist', + 'distz', + 'pkg', + 'bpk', + 'dump', + 'elc', + 'deploy', + ], + 'application/ogg' => 'ogx', + 'application/omdoc+xml' => 'omdoc', + 'application/pdf' => 'pdf', + 'application/pgp-encrypted' => 'pgp', + 'application/pgp-signature' => ['asc', 'sig'], + 'application/pkix-pkipath' => 'pkipath', + 'application/pkixcmp' => 'pki', + 'application/pls+xml' => 'pls', + 'application/postscript' => ['ai', 'eps', 'ps'], + 'application/pskc+xml' => 'pskcxml', + 'application/rdf+xml' => 'rdf', + 'application/reginfo+xml' => 'rif', + 'application/rss+xml' => 'rss', + 'application/rtf' => 'rtf', + 'application/sbml+xml' => 'sbml', + 'application/vnd.adobe.air-application-installer-package+zip' => 'air', + 'application/vnd.adobe.xdp+xml' => 'xdp', + 'application/vnd.adobe.xfdf' => 'xfdf', + 'application/vnd.ahead.space' => 'ahead', + 'application/vnd.dart' => 'dart', + 'application/vnd.data-vision.rdz' => 'rdz', + 'application/vnd.dece.data' => ['uvf', 'uvvf', 'uvd', 'uvvd'], + 'application/vnd.dece.ttml+xml' => ['uvt', 'uvvt'], + 'application/vnd.dece.unspecified' => ['uvx', 'uvvx'], + 'application/vnd.dece.zip' => ['uvz', 'uvvz'], + 'application/vnd.denovo.fcselayout-link' => 'fe_launch', + 'application/vnd.dna' => 'dna', + 'application/vnd.dolby.mlp' => 'mlp', + 'application/vnd.dpgraph' => 'dpg', + 'application/vnd.dreamfactory' => 'dfac', + 'application/vnd.ds-keypoint' => 'kpxx', + 'application/vnd.dvb.ait' => 'ait', + 'application/vnd.dvb.service' => 'svc', + 'application/vnd.dynageo' => 'geo', + 'application/vnd.ecowin.chart' => 'mag', + 'application/vnd.enliven' => 'nml', + 'application/vnd.epson.esf' => 'esf', + 'application/vnd.epson.msf' => 'msf', + 'application/vnd.epson.quickanime' => 'qam', + 'application/vnd.epson.salt' => 'slt', + 'application/vnd.epson.ssf' => 'ssf', + 'application/vnd.ezpix-album' => 'ez2', + 'application/vnd.ezpix-package' => 'ez3', + 'application/vnd.fdf' => 'fdf', + 'application/vnd.fdsn.mseed' => 'mseed', + 'application/vnd.fdsn.seed' => ['seed', 'dataless'], + 'application/vnd.flographit' => 'gph', + 'application/vnd.fluxtime.clip' => 'ftc', + 'application/vnd.hal+xml' => 'hal', + 'application/vnd.hydrostatix.sof-data' => 'sfd-hdstx', + 'application/vnd.ibm.minipay' => 'mpy', + 'application/vnd.ibm.secure-container' => 'sc', + 'application/vnd.iccprofile' => ['icc', 'icm'], + 'application/vnd.igloader' => 'igl', + 'application/vnd.immervision-ivp' => 'ivp', + 'application/vnd.kde.karbon' => 'karbon', + 'application/vnd.kde.kchart' => 'chrt', + 'application/vnd.kde.kformula' => 'kfo', + 'application/vnd.kde.kivio' => 'flw', + 'application/vnd.kde.kontour' => 'kon', + 'application/vnd.kde.kpresenter' => ['kpr', 'kpt'], + 'application/vnd.kde.kspread' => 'ksp', + 'application/vnd.kde.kword' => ['kwd', 'kwt'], + 'application/vnd.kenameaapp' => 'htke', + 'application/vnd.kidspiration' => 'kia', + 'application/vnd.kinar' => ['kne', 'knp'], + 'application/vnd.koan' => ['skp', 'skd', 'skt', 'skm'], + 'application/vnd.kodak-descriptor' => 'sse', + 'application/vnd.las.las+xml' => 'lasxml', + 'application/vnd.llamagraphics.life-balance.desktop' => 'lbd', + 'application/vnd.llamagraphics.life-balance.exchange+xml' => 'lbe', + 'application/vnd.lotus-1-2-3' => '123', + 'application/vnd.lotus-approach' => 'apr', + 'application/vnd.lotus-freelance' => 'pre', + 'application/vnd.lotus-notes' => 'nsf', + 'application/vnd.lotus-organizer' => 'org', + 'application/vnd.lotus-screencam' => 'scm', + 'application/vnd.mozilla.xul+xml' => 'xul', + 'application/vnd.ms-artgalry' => 'cil', + 'application/vnd.ms-cab-compressed' => 'cab', + 'application/vnd.ms-excel' => [ + 'xls', + 'xlm', + 'xla', + 'xlc', + 'xlt', + 'xlw', + ], + 'application/vnd.ms-excel.addin.macroenabled.12' => 'xlam', + 'application/vnd.ms-excel.sheet.binary.macroenabled.12' => 'xlsb', + 'application/vnd.ms-excel.sheet.macroenabled.12' => 'xlsm', + 'application/vnd.ms-excel.template.macroenabled.12' => 'xltm', + 'application/vnd.ms-fontobject' => 'eot', + 'application/vnd.ms-htmlhelp' => 'chm', + 'application/vnd.ms-ims' => 'ims', + 'application/vnd.ms-lrm' => 'lrm', + 'application/vnd.ms-officetheme' => 'thmx', + 'application/vnd.ms-pki.seccat' => 'cat', + 'application/vnd.ms-pki.stl' => 'stl', + 'application/vnd.ms-powerpoint' => ['ppt', 'pps', 'pot'], + 'application/vnd.ms-powerpoint.addin.macroenabled.12' => 'ppam', + 'application/vnd.ms-powerpoint.presentation.macroenabled.12' => 'pptm', + 'application/vnd.ms-powerpoint.slide.macroenabled.12' => 'sldm', + 'application/vnd.ms-powerpoint.slideshow.macroenabled.12' => 'ppsm', + 'application/vnd.ms-powerpoint.template.macroenabled.12' => 'potm', + 'application/vnd.ms-project' => ['mpp', 'mpt'], + 'application/vnd.ms-word.document.macroenabled.12' => 'docm', + 'application/vnd.ms-word.template.macroenabled.12' => 'dotm', + 'application/vnd.ms-works' => ['wps', 'wks', 'wcm', 'wdb'], + 'application/vnd.ms-wpl' => 'wpl', + 'application/vnd.ms-xpsdocument' => 'xps', + 'application/vnd.mseq' => 'mseq', + 'application/vnd.musician' => 'mus', + 'application/vnd.oasis.opendocument.chart' => 'odc', + 'application/vnd.oasis.opendocument.chart-template' => 'otc', + 'application/vnd.oasis.opendocument.database' => 'odb', + 'application/vnd.oasis.opendocument.formula' => 'odf', + 'application/vnd.oasis.opendocument.formula-template' => 'odft', + 'application/vnd.oasis.opendocument.graphics' => 'odg', + 'application/vnd.oasis.opendocument.graphics-template' => 'otg', + 'application/vnd.oasis.opendocument.image' => 'odi', + 'application/vnd.oasis.opendocument.image-template' => 'oti', + 'application/vnd.oasis.opendocument.presentation' => 'odp', + 'application/vnd.oasis.opendocument.presentation-template' => 'otp', + 'application/vnd.oasis.opendocument.spreadsheet' => 'ods', + 'application/vnd.oasis.opendocument.spreadsheet-template' => 'ots', + 'application/vnd.oasis.opendocument.text' => 'odt', + 'application/vnd.oasis.opendocument.text-master' => 'odm', + 'application/vnd.oasis.opendocument.text-template' => 'ott', + 'application/vnd.oasis.opendocument.text-web' => 'oth', + 'application/vnd.olpc-sugar' => 'xo', + 'application/vnd.oma.dd2+xml' => 'dd2', + 'application/vnd.openofficeorg.extension' => 'oxt', + 'application/vnd.openxmlformats-officedocument.presentationml.presentation' => 'pptx', + 'application/vnd.openxmlformats-officedocument.presentationml.slide' => 'sldx', + 'application/vnd.openxmlformats-officedocument.presentationml.slideshow' => 'ppsx', + 'application/vnd.openxmlformats-officedocument.presentationml.template' => 'potx', + 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' => 'xlsx', + 'application/vnd.openxmlformats-officedocument.spreadsheetml.template' => 'xltx', + 'application/vnd.openxmlformats-officedocument.wordprocessingml.document' => 'docx', + 'application/vnd.openxmlformats-officedocument.wordprocessingml.template' => 'dotx', + 'application/vnd.pvi.ptid1' => 'ptid', + 'application/vnd.quark.quarkxpress' => [ + 'qxd', + 'qxt', + 'qwd', + 'qwt', + 'qxl', + 'qxb', + ], + 'application/vnd.realvnc.bed' => 'bed', + 'application/vnd.recordare.musicxml' => 'mxl', + 'application/vnd.recordare.musicxml+xml' => 'musicxml', + 'application/vnd.rig.cryptonote' => 'cryptonote', + 'application/vnd.rim.cod' => 'cod', + 'application/vnd.rn-realmedia' => 'rm', + 'application/vnd.rn-realmedia-vbr' => 'rmvb', + 'application/vnd.route66.link66+xml' => 'link66', + 'application/vnd.sailingtracker.track' => 'st', + 'application/vnd.seemail' => 'see', + 'application/vnd.sema' => 'sema', + 'application/vnd.semd' => 'semd', + 'application/vnd.semf' => 'semf', + 'application/vnd.shana.informed.formdata' => 'ifm', + 'application/vnd.shana.informed.formtemplate' => 'itp', + 'application/vnd.shana.informed.interchange' => 'iif', + 'application/vnd.shana.informed.package' => 'ipk', + 'application/vnd.simtech-mindmapper' => ['twd', 'twds'], + 'application/vnd.smaf' => 'mmf', + 'application/vnd.stepmania.stepchart' => 'sm', + 'application/vnd.sun.xml.calc' => 'sxc', + 'application/vnd.sun.xml.calc.template' => 'stc', + 'application/vnd.sun.xml.draw' => 'sxd', + 'application/vnd.sun.xml.draw.template' => 'std', + 'application/vnd.sun.xml.impress' => 'sxi', + 'application/vnd.sun.xml.impress.template' => 'sti', + 'application/vnd.sun.xml.math' => 'sxm', + 'application/vnd.sun.xml.writer' => 'sxw', + 'application/vnd.sun.xml.writer.global' => 'sxg', + 'application/vnd.sun.xml.writer.template' => 'stw', + 'application/vnd.sus-calendar' => ['sus', 'susp'], + 'application/vnd.svd' => 'svd', + 'application/vnd.symbian.install' => ['sis', 'sisx'], + 'application/vnd.syncml+xml' => 'xsm', + 'application/vnd.syncml.dm+wbxml' => 'bdm', + 'application/vnd.syncml.dm+xml' => 'xdm', + 'application/vnd.tao.intent-module-archive' => 'tao', + 'application/vnd.tcpdump.pcap' => ['pcap', 'cap', 'dmp'], + 'application/vnd.tmobile-livetv' => 'tmo', + 'application/vnd.trid.tpt' => 'tpt', + 'application/vnd.triscape.mxs' => 'mxs', + 'application/vnd.trueapp' => 'tra', + 'application/vnd.ufdl' => ['ufd', 'ufdl'], + 'application/vnd.uiq.theme' => 'utz', + 'application/vnd.umajin' => 'umj', + 'application/vnd.unity' => 'unityweb', + 'application/vnd.uoml+xml' => 'uoml', + 'application/vnd.vcx' => 'vcx', + 'application/vnd.visio' => ['vsd', 'vst', 'vss', 'vsw'], + 'application/vnd.visionary' => 'vis', + 'application/vnd.vsf' => 'vsf', + 'application/vnd.wap.wbxml' => 'wbxml', + 'application/vnd.wap.wmlc' => 'wmlc', + 'application/vnd.wap.wmlscriptc' => 'wmlsc', + 'application/vnd.webturbo' => 'wtb', + 'application/vnd.wolfram.player' => 'nbp', + 'application/vnd.wordperfect' => 'wpd', + 'application/vnd.wqd' => 'wqd', + 'application/vnd.wt.stf' => 'stf', + 'application/vnd.xara' => 'xar', + 'application/vnd.xfdl' => 'xfdl', + 'application/voicexml+xml' => 'vxml', + 'application/widget' => 'wgt', + 'application/winhlp' => 'hlp', + 'application/wsdl+xml' => 'wsdl', + 'application/wspolicy+xml' => 'wspolicy', + 'application/x-7z-compressed' => '7z', + 'application/x-bittorrent' => 'torrent', + 'application/x-blorb' => ['blb', 'blorb'], + 'application/x-bzip' => 'bz', + 'application/x-cdlink' => 'vcd', + 'application/x-cfs-compressed' => 'cfs', + 'application/x-chat' => 'chat', + 'application/x-chess-pgn' => 'pgn', + 'application/x-conference' => 'nsc', + 'application/x-cpio' => 'cpio', + 'application/x-csh' => 'csh', + 'application/x-debian-package' => ['deb', 'udeb'], + 'application/x-dgc-compressed' => 'dgc', + 'application/x-director' => [ + 'dir', + 'dcr', + 'dxr', + 'cst', + 'cct', + 'cxt', + 'w3d', + 'fgd', + 'swa', + ], + 'application/x-font-ttf' => ['ttf', 'ttc'], + 'application/x-font-type1' => ['pfa', 'pfb', 'pfm', 'afm'], + 'application/x-font-woff' => 'woff', + 'application/x-freearc' => 'arc', + 'application/x-futuresplash' => 'spl', + 'application/x-gca-compressed' => 'gca', + 'application/x-glulx' => 'ulx', + 'application/x-gnumeric' => 'gnumeric', + 'application/x-gramps-xml' => 'gramps', + 'application/x-gtar' => 'gtar', + 'application/x-hdf' => 'hdf', + 'application/x-install-instructions' => 'install', + 'application/x-iso9660-image' => 'iso', + 'application/x-java-jnlp-file' => 'jnlp', + 'application/x-latex' => 'latex', + 'application/x-lzh-compressed' => ['lzh', 'lha'], + 'application/x-mie' => 'mie', + 'application/x-mobipocket-ebook' => ['prc', 'mobi'], + 'application/x-ms-application' => 'application', + 'application/x-ms-shortcut' => 'lnk', + 'application/x-ms-wmd' => 'wmd', + 'application/x-ms-wmz' => 'wmz', + 'application/x-ms-xbap' => 'xbap', + 'application/x-msaccess' => 'mdb', + 'application/x-msbinder' => 'obd', + 'application/x-mscardfile' => 'crd', + 'application/x-msclip' => 'clp', + 'application/x-msdownload' => ['exe', 'dll', 'com', 'bat', 'msi'], + 'application/x-msmediaview' => [ + 'mvb', + 'm13', + 'm14', + ], + 'application/x-msmetafile' => ['wmf', 'wmz', 'emf', 'emz'], + 'application/x-rar-compressed' => 'rar', + 'application/x-research-info-systems' => 'ris', + 'application/x-sh' => 'sh', + 'application/x-shar' => 'shar', + 'application/x-shockwave-flash' => 'swf', + 'application/x-silverlight-app' => 'xap', + 'application/x-sql' => 'sql', + 'application/x-stuffit' => 'sit', + 'application/x-stuffitx' => 'sitx', + 'application/x-subrip' => 'srt', + 'application/x-sv4cpio' => 'sv4cpio', + 'application/x-sv4crc' => 'sv4crc', + 'application/x-t3vm-image' => 't3', + 'application/x-tads' => 'gam', + 'application/x-tar' => 'tar', + 'application/x-tcl' => 'tcl', + 'application/x-tex' => 'tex', + 'application/x-tex-tfm' => 'tfm', + 'application/x-texinfo' => ['texinfo', 'texi'], + 'application/x-tgif' => 'obj', + 'application/x-ustar' => 'ustar', + 'application/x-wais-source' => 'src', + 'application/x-x509-ca-cert' => ['der', 'crt'], + 'application/x-xfig' => 'fig', + 'application/x-xliff+xml' => 'xlf', + 'application/x-xpinstall' => 'xpi', + 'application/x-xz' => 'xz', + 'application/x-zmachine' => 'z1', + 'application/xaml+xml' => 'xaml', + 'application/xcap-diff+xml' => 'xdf', + 'application/xenc+xml' => 'xenc', + 'application/xhtml+xml' => ['xhtml', 'xht'], + 'application/xml' => ['xml', 'xsl'], + 'application/xml-dtd' => 'dtd', + 'application/xop+xml' => 'xop', + 'application/xproc+xml' => 'xpl', + 'application/xslt+xml' => 'xslt', + 'application/xspf+xml' => 'xspf', + 'application/xv+xml' => ['mxml', 'xhvml', 'xvml', 'xvm'], + 'application/yang' => 'yang', + 'application/yin+xml' => 'yin', + 'application/zip' => 'zip', + 'audio/adpcm' => 'adp', + 'audio/basic' => ['au', 'snd'], + 'audio/midi' => ['mid', 'midi', 'kar', 'rmi'], + 'audio/mp4' => 'mp4a', + 'audio/mpeg' => [ + 'mpga', + 'mp2', + 'mp2a', + 'mp3', + 'm2a', + 'm3a', + ], + 'audio/ogg' => ['oga', 'ogg', 'spx'], + 'audio/vnd.dece.audio' => ['uva', 'uvva'], + 'audio/vnd.rip' => 'rip', + 'audio/webm' => 'weba', + 'audio/x-aac' => 'aac', + 'audio/x-aiff' => ['aif', 'aiff', 'aifc'], + 'audio/x-caf' => 'caf', + 'audio/x-flac' => 'flac', + 'audio/x-matroska' => 'mka', + 'audio/x-mpegurl' => 'm3u', + 'audio/x-ms-wax' => 'wax', + 'audio/x-ms-wma' => 'wma', + 'audio/x-pn-realaudio' => ['ram', 'ra'], + 'audio/x-pn-realaudio-plugin' => 'rmp', + 'audio/x-wav' => 'wav', + 'audio/xm' => 'xm', + 'image/bmp' => 'bmp', + 'image/cgm' => 'cgm', + 'image/g3fax' => 'g3', + 'image/gif' => 'gif', + 'image/ief' => 'ief', + 'image/jpeg' => ['jpeg', 'jpg', 'jpe'], + 'image/ktx' => 'ktx', + 'image/png' => 'png', + 'image/prs.btif' => 'btif', + 'image/sgi' => 'sgi', + 'image/svg+xml' => ['svg', 'svgz'], + 'image/tiff' => ['tiff', 'tif'], + 'image/vnd.adobe.photoshop' => 'psd', + 'image/vnd.dece.graphic' => ['uvi', 'uvvi', 'uvg', 'uvvg'], + 'image/vnd.dvb.subtitle' => 'sub', + 'image/vnd.djvu' => ['djvu', 'djv'], + 'image/vnd.dwg' => 'dwg', + 'image/vnd.dxf' => 'dxf', + 'image/vnd.fastbidsheet' => 'fbs', + 'image/vnd.fpx' => 'fpx', + 'image/vnd.fst' => 'fst', + 'image/vnd.fujixerox.edmics-mmr' => 'mmr', + 'image/vnd.fujixerox.edmics-rlc' => 'rlc', + 'image/vnd.ms-modi' => 'mdi', + 'image/vnd.ms-photo' => 'wdp', + 'image/vnd.net-fpx' => 'npx', + 'image/vnd.wap.wbmp' => 'wbmp', + 'image/vnd.xiff' => 'xif', + 'image/webp' => 'webp', + 'image/x-3ds' => '3ds', + 'image/x-cmu-raster' => 'ras', + 'image/x-cmx' => 'cmx', + 'image/x-freehand' => ['fh', 'fhc', 'fh4', 'fh5', 'fh7'], + 'image/x-icon' => 'ico', + 'image/x-mrsid-image' => 'sid', + 'image/x-pcx' => 'pcx', + 'image/x-pict' => ['pic', 'pct'], + 'image/x-portable-anymap' => 'pnm', + 'image/x-portable-bitmap' => 'pbm', + 'image/x-portable-graymap' => 'pgm', + 'image/x-portable-pixmap' => 'ppm', + 'image/x-rgb' => 'rgb', + 'image/x-tga' => 'tga', + 'image/x-xbitmap' => 'xbm', + 'image/x-xpixmap' => 'xpm', + 'image/x-xwindowdump' => 'xwd', + 'message/rfc822' => ['eml', 'mime'], + 'model/iges' => ['igs', 'iges'], + 'model/mesh' => ['msh', 'mesh', 'silo'], + 'model/vnd.collada+xml' => 'dae', + 'model/vnd.dwf' => 'dwf', + 'model/vnd.gdl' => 'gdl', + 'model/vnd.gtw' => 'gtw', + 'model/vnd.mts' => 'mts', + 'model/vnd.vtu' => 'vtu', + 'model/vrml' => ['wrl', 'vrml'], + 'model/x3d+binary' => 'x3db', + 'model/x3d+vrml' => 'x3dv', + 'model/x3d+xml' => 'x3d', + 'text/cache-manifest' => 'appcache', + 'text/calendar' => ['ics', 'ifb'], + 'text/css' => 'css', + 'text/csv' => 'csv', + 'text/html' => ['html', 'htm'], + 'text/n3' => 'n3', + 'text/plain' => [ + 'txt', + 'text', + 'conf', + 'def', + 'list', + 'log', + 'in', + ], + 'text/prs.lines.tag' => 'dsc', + 'text/richtext' => 'rtx', + 'text/sgml' => ['sgml', 'sgm'], + 'text/tab-separated-values' => 'tsv', + 'text/troff' => [ + 't', + 'tr', + 'roff', + 'man', + 'me', + 'ms', + ], + 'text/turtle' => 'ttl', + 'text/uri-list' => ['uri', 'uris', 'urls'], + 'text/vcard' => 'vcard', + 'text/vnd.curl' => 'curl', + 'text/vnd.curl.dcurl' => 'dcurl', + 'text/vnd.curl.scurl' => 'scurl', + 'text/vnd.curl.mcurl' => 'mcurl', + 'text/vnd.dvb.subtitle' => 'sub', + 'text/vnd.fly' => 'fly', + 'text/vnd.fmi.flexstor' => 'flx', + 'text/vnd.graphviz' => 'gv', + 'text/vnd.in3d.3dml' => '3dml', + 'text/vnd.in3d.spot' => 'spot', + 'text/vnd.sun.j2me.app-descriptor' => 'jad', + 'text/vnd.wap.wml' => 'wml', + 'text/vnd.wap.wmlscript' => 'wmls', + 'text/x-asm' => ['s', 'asm'], + 'text/x-fortran' => ['f', 'for', 'f77', 'f90'], + 'text/x-java-source' => 'java', + 'text/x-opml' => 'opml', + 'text/x-pascal' => ['p', 'pas'], + 'text/x-nfo' => 'nfo', + 'text/x-setext' => 'etx', + 'text/x-sfv' => 'sfv', + 'text/x-uuencode' => 'uu', + 'text/x-vcalendar' => 'vcs', + 'text/x-vcard' => 'vcf', + 'video/3gpp' => '3gp', + 'video/3gpp2' => '3g2', + 'video/h261' => 'h261', + 'video/h263' => 'h263', + 'video/h264' => 'h264', + 'video/jpeg' => 'jpgv', + 'video/jpm' => ['jpm', 'jpgm'], + 'video/mj2' => 'mj2', + 'video/mp4' => 'mp4', + 'video/mpeg' => ['mpeg', 'mpg', 'mpe', 'm1v', 'm2v'], + 'video/ogg' => 'ogv', + 'video/quicktime' => ['qt', 'mov'], + 'video/vnd.dece.hd' => ['uvh', 'uvvh'], + 'video/vnd.dece.mobile' => ['uvm', 'uvvm'], + 'video/vnd.dece.pd' => ['uvp', 'uvvp'], + 'video/vnd.dece.sd' => ['uvs', 'uvvs'], + 'video/vnd.dece.video' => ['uvv', 'uvvv'], + 'video/vnd.dvb.file' => 'dvb', + 'video/vnd.fvt' => 'fvt', + 'video/vnd.mpegurl' => ['mxu', 'm4u'], + 'video/vnd.ms-playready.media.pyv' => 'pyv', + 'video/vnd.uvvu.mp4' => ['uvu', 'uvvu'], + 'video/vnd.vivo' => 'viv', + 'video/webm' => 'webm', + 'video/x-f4v' => 'f4v', + 'video/x-fli' => 'fli', + 'video/x-flv' => 'flv', + 'video/x-m4v' => 'm4v', + 'video/x-matroska' => ['mkv', 'mk3d', 'mks'], + 'video/x-mng' => 'mng', + 'video/x-ms-asf' => ['asf', 'asx'], + 'video/x-ms-vob' => 'vob', + 'video/x-ms-wm' => 'wm', + 'video/x-ms-wmv' => 'wmv', + 'video/x-ms-wmx' => 'wmx', + 'video/x-ms-wvx' => 'wvx', + 'video/x-msvideo' => 'avi', + 'video/x-sgi-movie' => 'movie', + ]; + + public function mimeType(): string + { + return array_rand($this->mimeTypes, 1); + } + + public function extension(): string + { + $extension = $this->mimeTypes[array_rand($this->mimeTypes, 1)]; + + return is_array($extension) ? $extension[array_rand($extension, 1)] : $extension; + } + + public function filePath(): string + { + return tempnam(sys_get_temp_dir(), 'faker'); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Core/Number.php b/vendor/fakerphp/faker/src/Faker/Core/Number.php new file mode 100644 index 0000000..4334dcf --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Core/Number.php @@ -0,0 +1,83 @@ +numberBetween(0, 9); + } + + public function randomDigitNot(int $except): int + { + $result = $this->numberBetween(0, 8); + + if ($result >= $except) { + ++$result; + } + + return $result; + } + + public function randomDigitNotZero(): int + { + return $this->numberBetween(1, 9); + } + + public function randomFloat(?int $nbMaxDecimals = null, float $min = 0, ?float $max = null): float + { + if (null === $nbMaxDecimals) { + $nbMaxDecimals = $this->randomDigit(); + } + + if (null === $max) { + $max = $this->randomNumber(); + + if ($min > $max) { + $max = $min; + } + } + + if ($min > $max) { + $tmp = $min; + $min = $max; + $max = $tmp; + } + + return round($min + $this->numberBetween() / mt_getrandmax() * ($max - $min), $nbMaxDecimals); + } + + public function randomNumber(?int $nbDigits = null, bool $strict = false): int + { + if (null === $nbDigits) { + $nbDigits = $this->randomDigitNotZero(); + } + $max = 10 ** $nbDigits - 1; + + if ($max > mt_getrandmax()) { + throw new \InvalidArgumentException('randomNumber() can only generate numbers up to mt_getrandmax()'); + } + + if ($strict) { + return $this->numberBetween(10 ** ($nbDigits - 1), $max); + } + + return $this->numberBetween(0, $max); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Core/Uuid.php b/vendor/fakerphp/faker/src/Faker/Core/Uuid.php new file mode 100644 index 0000000..4580460 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Core/Uuid.php @@ -0,0 +1,65 @@ +numberExtension = $numberExtension ?: new Number(); + } + + public function uuid3(): string + { + // fix for compatibility with 32bit architecture; each mt_rand call is restricted to 32bit + // two such calls will cause 64bits of randomness regardless of architecture + $seed = $this->numberExtension->numberBetween(0, 2147483647) . '#' . $this->numberExtension->numberBetween(0, 2147483647); + + // Hash the seed and convert to a byte array + $val = md5($seed, true); + $byte = array_values(unpack('C16', $val)); + + // extract fields from byte array + $tLo = ($byte[0] << 24) | ($byte[1] << 16) | ($byte[2] << 8) | $byte[3]; + $tMi = ($byte[4] << 8) | $byte[5]; + $tHi = ($byte[6] << 8) | $byte[7]; + $csLo = $byte[9]; + $csHi = $byte[8] & 0x3f | (1 << 7); + + // correct byte order for big edian architecture + if (pack('L', 0x6162797A) == pack('N', 0x6162797A)) { + $tLo = (($tLo & 0x000000ff) << 24) | (($tLo & 0x0000ff00) << 8) + | (($tLo & 0x00ff0000) >> 8) | (($tLo & 0xff000000) >> 24); + $tMi = (($tMi & 0x00ff) << 8) | (($tMi & 0xff00) >> 8); + $tHi = (($tHi & 0x00ff) << 8) | (($tHi & 0xff00) >> 8); + } + + // apply version number + $tHi &= 0x0fff; + $tHi |= (3 << 12); + + // cast to string + return sprintf( + '%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x', + $tLo, + $tMi, + $tHi, + $csHi, + $csLo, + $byte[10], + $byte[11], + $byte[12], + $byte[13], + $byte[14], + $byte[15], + ); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Core/Version.php b/vendor/fakerphp/faker/src/Faker/Core/Version.php new file mode 100644 index 0000000..7c321e0 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Core/Version.php @@ -0,0 +1,69 @@ +numberExtension = $numberExtension ?: new Number(); + } + + /** + * Represents v2.0.0 of the semantic versioning: https://semver.org/spec/v2.0.0.html + */ + public function semver(bool $preRelease = false, bool $build = false): string + { + return sprintf( + '%d.%d.%d%s%s', + $this->numberExtension->numberBetween(0, 9), + $this->numberExtension->numberBetween(0, 99), + $this->numberExtension->numberBetween(0, 99), + $preRelease && $this->numberExtension->numberBetween(0, 1) === 1 ? '-' . $this->semverPreReleaseIdentifier() : '', + $build && $this->numberExtension->numberBetween(0, 1) === 1 ? '+' . $this->semverBuildIdentifier() : '', + ); + } + + /** + * Common pre-release identifier + */ + private function semverPreReleaseIdentifier(): string + { + $ident = Extension\Helper::randomElement($this->semverCommonPreReleaseIdentifiers); + + if ($this->numberExtension->numberBetween(0, 1) !== 1) { + return $ident; + } + + return $ident . '.' . $this->numberExtension->numberBetween(1, 99); + } + + /** + * Common random build identifier + */ + private function semverBuildIdentifier(): string + { + if ($this->numberExtension->numberBetween(0, 1) === 1) { + // short git revision syntax: https://git-scm.com/book/en/v2/Git-Tools-Revision-Selection + return substr(sha1(Extension\Helper::lexify('??????')), 0, 7); + } + + // date syntax + return DateTime::date('YmdHis'); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/DefaultGenerator.php b/vendor/fakerphp/faker/src/Faker/DefaultGenerator.php new file mode 100644 index 0000000..688f476 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/DefaultGenerator.php @@ -0,0 +1,49 @@ +default = $default; + } + + public function ext() + { + return $this; + } + + /** + * @param string $attribute + * + * @deprecated Use a method instead. + */ + public function __get($attribute) + { + trigger_deprecation('fakerphp/faker', '1.14', 'Accessing property "%s" is deprecated, use "%s()" instead.', $attribute, $attribute); + + return $this->default; + } + + /** + * @param string $method + * @param array $attributes + */ + public function __call($method, $attributes) + { + return $this->default; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Documentor.php b/vendor/fakerphp/faker/src/Faker/Documentor.php new file mode 100644 index 0000000..280b832 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Documentor.php @@ -0,0 +1,70 @@ +generator = $generator; + } + + /** + * @return array + */ + public function getFormatters() + { + $formatters = []; + $providers = array_reverse($this->generator->getProviders()); + $providers[] = new Provider\Base($this->generator); + + foreach ($providers as $provider) { + $providerClass = get_class($provider); + $formatters[$providerClass] = []; + $refl = new \ReflectionObject($provider); + + foreach ($refl->getMethods(\ReflectionMethod::IS_PUBLIC) as $reflmethod) { + if ($reflmethod->getDeclaringClass()->getName() == 'Faker\Provider\Base' && $providerClass != 'Faker\Provider\Base') { + continue; + } + $methodName = $reflmethod->name; + + if ($reflmethod->isConstructor()) { + continue; + } + $parameters = []; + + foreach ($reflmethod->getParameters() as $reflparameter) { + $parameter = '$' . $reflparameter->getName(); + + if ($reflparameter->isDefaultValueAvailable()) { + $parameter .= ' = ' . var_export($reflparameter->getDefaultValue(), true); + } + $parameters[] = $parameter; + } + $parameters = $parameters ? '(' . implode(', ', $parameters) . ')' : ''; + + try { + $example = $this->generator->format($methodName); + } catch (\InvalidArgumentException $e) { + $example = ''; + } + + if (is_array($example)) { + $example = "array('" . implode("', '", $example) . "')"; + } elseif ($example instanceof \DateTime) { + $example = "DateTime('" . $example->format('Y-m-d H:i:s') . "')"; + } elseif ($example instanceof Generator || $example instanceof UniqueGenerator) { // modifier + $example = ''; + } else { + $example = var_export($example, true); + } + $formatters[$providerClass][$methodName . $parameters] = $example; + } + } + + return $formatters; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Extension/AddressExtension.php b/vendor/fakerphp/faker/src/Faker/Extension/AddressExtension.php new file mode 100644 index 0000000..568ca37 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Extension/AddressExtension.php @@ -0,0 +1,39 @@ +generator = $generator; + + return $instance; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Extension/Helper.php b/vendor/fakerphp/faker/src/Faker/Extension/Helper.php new file mode 100644 index 0000000..47200e9 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Extension/Helper.php @@ -0,0 +1,106 @@ +addProvider(new $providerClassName($generator)); + } + + return $generator; + } + + /** + * @param string $provider + * @param string $locale + * + * @return string + */ + protected static function getProviderClassname($provider, $locale = '') + { + if ($providerClass = self::findProviderClassname($provider, $locale)) { + return $providerClass; + } + + // fallback to default locale + if ($providerClass = self::findProviderClassname($provider, static::DEFAULT_LOCALE)) { + return $providerClass; + } + + // fallback to no locale + if ($providerClass = self::findProviderClassname($provider)) { + return $providerClass; + } + + throw new \InvalidArgumentException(sprintf('Unable to find provider "%s" with locale "%s"', $provider, $locale)); + } + + /** + * @param string $provider + * @param string $locale + * + * @return string|null + */ + protected static function findProviderClassname($provider, $locale = '') + { + $providerClass = 'Faker\\' . ($locale ? sprintf('Provider\%s\%s', $locale, $provider) : sprintf('Provider\%s', $provider)); + + if (class_exists($providerClass, true)) { + return $providerClass; + } + + return null; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Generator.php b/vendor/fakerphp/faker/src/Faker/Generator.php new file mode 100644 index 0000000..d132031 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Generator.php @@ -0,0 +1,985 @@ +container = $container ?: Container\ContainerBuilder::withDefaultExtensions()->build(); + } + + /** + * @template T of Extension\Extension + * + * @param class-string $id + * + * @throws Extension\ExtensionNotFound + * + * @return T + */ + public function ext(string $id): Extension\Extension + { + if (!$this->container->has($id)) { + throw new Extension\ExtensionNotFound(sprintf( + 'No Faker extension with id "%s" was loaded.', + $id, + )); + } + + $extension = $this->container->get($id); + + if ($extension instanceof Extension\GeneratorAwareExtension) { + $extension = $extension->withGenerator($this); + } + + return $extension; + } + + public function addProvider($provider) + { + array_unshift($this->providers, $provider); + + $this->formatters = []; + } + + public function getProviders() + { + return $this->providers; + } + + /** + * With the unique generator you are guaranteed to never get the same two + * values. + * + * + * // will never return twice the same value + * $faker->unique()->randomElement(array(1, 2, 3)); + * + * + * @param bool $reset If set to true, resets the list of existing values + * @param int $maxRetries Maximum number of retries to find a unique value, + * After which an OverflowException is thrown. + * + * @throws \OverflowException When no unique value can be found by iterating $maxRetries times + * + * @return self A proxy class returning only non-existing values + */ + public function unique($reset = false, $maxRetries = 10000) + { + if ($reset || $this->uniqueGenerator === null) { + $this->uniqueGenerator = new UniqueGenerator($this, $maxRetries); + } + + return $this->uniqueGenerator; + } + + /** + * Get a value only some percentage of the time. + * + * @param float $weight A probability between 0 and 1, 0 means that we always get the default value. + * + * @return self + */ + public function optional(float $weight = 0.5, $default = null) + { + if ($weight > 1) { + trigger_deprecation('fakerphp/faker', '1.16', 'First argument ($weight) to method "optional()" must be between 0 and 1. You passed %f, we assume you meant %f.', $weight, $weight / 100); + $weight = $weight / 100; + } + + return new ChanceGenerator($this, $weight, $default); + } + + /** + * To make sure the value meet some criteria, pass a callable that verifies the + * output. If the validator fails, the generator will try again. + * + * The value validity is determined by a function passed as first argument. + * + * + * $values = array(); + * $evenValidator = function ($digit) { + * return $digit % 2 === 0; + * }; + * for ($i=0; $i < 10; $i++) { + * $values []= $faker->valid($evenValidator)->randomDigit; + * } + * print_r($values); // [0, 4, 8, 4, 2, 6, 0, 8, 8, 6] + * + * + * @param ?\Closure $validator A function returning true for valid values + * @param int $maxRetries Maximum number of retries to find a valid value, + * After which an OverflowException is thrown. + * + * @throws \OverflowException When no valid value can be found by iterating $maxRetries times + * + * @return self A proxy class returning only valid values + */ + public function valid(?\Closure $validator = null, int $maxRetries = 10000) + { + return new ValidGenerator($this, $validator, $maxRetries); + } + + public function seed($seed = null) + { + if ($seed === null) { + mt_srand(); + } else { + mt_srand((int) $seed, self::mode()); + } + } + + /** + * @see https://www.php.net/manual/en/migration83.deprecated.php#migration83.deprecated.random + */ + private static function mode(): int + { + if (PHP_VERSION_ID < 80300) { + return MT_RAND_PHP; + } + + return MT_RAND_MT19937; + } + + public function format($format, $arguments = []) + { + return call_user_func_array($this->getFormatter($format), $arguments); + } + + /** + * @param string $format + * + * @return callable + */ + public function getFormatter($format) + { + if (isset($this->formatters[$format])) { + return $this->formatters[$format]; + } + + if (method_exists($this, $format)) { + $this->formatters[$format] = [$this, $format]; + + return $this->formatters[$format]; + } + + // "Faker\Core\Barcode->ean13" + if (preg_match('|^([a-zA-Z0-9\\\]+)->([a-zA-Z0-9]+)$|', $format, $matches)) { + $this->formatters[$format] = [$this->ext($matches[1]), $matches[2]]; + + return $this->formatters[$format]; + } + + foreach ($this->providers as $provider) { + if (method_exists($provider, $format)) { + $this->formatters[$format] = [$provider, $format]; + + return $this->formatters[$format]; + } + } + + throw new \InvalidArgumentException(sprintf('Unknown format "%s"', $format)); + } + + /** + * Replaces tokens ('{{ tokenName }}') with the result from the token method call + * + * @param string $string String that needs to bet parsed + * + * @return string + */ + public function parse($string) + { + $callback = function ($matches) { + return $this->format($matches[1]); + }; + + return preg_replace_callback('/{{\s?(\w+|[\w\\\]+->\w+?)\s?}}/u', $callback, $string); + } + + /** + * Get a random MIME type + * + * @example 'video/avi' + */ + public function mimeType() + { + return $this->ext(Extension\FileExtension::class)->mimeType(); + } + + /** + * Get a random file extension (without a dot) + * + * @example avi + */ + public function fileExtension() + { + return $this->ext(Extension\FileExtension::class)->extension(); + } + + /** + * Get a full path to a new real file on the system. + */ + public function filePath() + { + return $this->ext(Extension\FileExtension::class)->filePath(); + } + + /** + * Get an actual blood type + * + * @example 'AB' + */ + public function bloodType(): string + { + return $this->ext(Extension\BloodExtension::class)->bloodType(); + } + + /** + * Get a random resis value + * + * @example '+' + */ + public function bloodRh(): string + { + return $this->ext(Extension\BloodExtension::class)->bloodRh(); + } + + /** + * Get a full blood group + * + * @example 'AB+' + */ + public function bloodGroup(): string + { + return $this->ext(Extension\BloodExtension::class)->bloodGroup(); + } + + /** + * Get a random EAN13 barcode. + * + * @example '4006381333931' + */ + public function ean13(): string + { + return $this->ext(Extension\BarcodeExtension::class)->ean13(); + } + + /** + * Get a random EAN8 barcode. + * + * @example '73513537' + */ + public function ean8(): string + { + return $this->ext(Extension\BarcodeExtension::class)->ean8(); + } + + /** + * Get a random ISBN-10 code + * + * @see http://en.wikipedia.org/wiki/International_Standard_Book_Number + * + * @example '4881416324' + */ + public function isbn10(): string + { + return $this->ext(Extension\BarcodeExtension::class)->isbn10(); + } + + /** + * Get a random ISBN-13 code + * + * @see http://en.wikipedia.org/wiki/International_Standard_Book_Number + * + * @example '9790404436093' + */ + public function isbn13(): string + { + return $this->ext(Extension\BarcodeExtension::class)->isbn13(); + } + + /** + * Returns a random number between $int1 and $int2 (any order) + * + * @example 79907610 + */ + public function numberBetween($int1 = 0, $int2 = 2147483647): int + { + return $this->ext(Extension\NumberExtension::class)->numberBetween((int) $int1, (int) $int2); + } + + /** + * Returns a random number between 0 and 9 + */ + public function randomDigit(): int + { + return $this->ext(Extension\NumberExtension::class)->randomDigit(); + } + + /** + * Generates a random digit, which cannot be $except + */ + public function randomDigitNot($except): int + { + return $this->ext(Extension\NumberExtension::class)->randomDigitNot((int) $except); + } + + /** + * Returns a random number between 1 and 9 + */ + public function randomDigitNotZero(): int + { + return $this->ext(Extension\NumberExtension::class)->randomDigitNotZero(); + } + + /** + * Return a random float number + * + * @example 48.8932 + */ + public function randomFloat($nbMaxDecimals = null, $min = 0, $max = null): float + { + return $this->ext(Extension\NumberExtension::class)->randomFloat( + $nbMaxDecimals !== null ? (int) $nbMaxDecimals : null, + (float) $min, + $max !== null ? (float) $max : null, + ); + } + + /** + * Returns a random integer with 0 to $nbDigits digits. + * + * The maximum value returned is mt_getrandmax() + * + * @param int|null $nbDigits Defaults to a random number between 1 and 9 + * @param bool $strict Whether the returned number should have exactly $nbDigits + * + * @example 79907610 + */ + public function randomNumber($nbDigits = null, $strict = false): int + { + return $this->ext(Extension\NumberExtension::class)->randomNumber( + $nbDigits !== null ? (int) $nbDigits : null, + (bool) $strict, + ); + } + + /** + * Get a version number in semantic versioning syntax 2.0.0. (https://semver.org/spec/v2.0.0.html) + * + * @param bool $preRelease Pre release parts may be randomly included + * @param bool $build Build parts may be randomly included + * + * @example 1.0.0 + * @example 1.0.0-alpha.1 + * @example 1.0.0-alpha.1+b71f04d + */ + public function semver(bool $preRelease = false, bool $build = false): string + { + return $this->ext(Extension\VersionExtension::class)->semver($preRelease, $build); + } + + /** + * @deprecated + */ + protected function callFormatWithMatches($matches) + { + trigger_deprecation('fakerphp/faker', '1.14', 'Protected method "callFormatWithMatches()" is deprecated and will be removed.'); + + return $this->format($matches[1]); + } + + /** + * @param string $attribute + * + * @deprecated Use a method instead. + */ + public function __get($attribute) + { + trigger_deprecation('fakerphp/faker', '1.14', 'Accessing property "%s" is deprecated, use "%s()" instead.', $attribute, $attribute); + + return $this->format($attribute); + } + + /** + * @param string $method + * @param array $attributes + */ + public function __call($method, $attributes) + { + return $this->format($method, $attributes); + } + + public function __destruct() + { + $this->seed(); + } + + public function __wakeup() + { + $this->formatters = []; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Guesser/Name.php b/vendor/fakerphp/faker/src/Faker/Guesser/Name.php new file mode 100644 index 0000000..1f98c4f --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Guesser/Name.php @@ -0,0 +1,180 @@ +generator = $generator; + } + + /** + * @param string $name + * @param int|null $size Length of field, if known + * + * @return callable|null + */ + public function guessFormat($name, $size = null) + { + $name = Base::toLower($name); + $generator = $this->generator; + + if (preg_match('/^is[_A-Z]/', $name)) { + return static function () use ($generator) { + return $generator->boolean(); + }; + } + + if (preg_match('/(_a|A)t$/', $name)) { + return static function () use ($generator) { + return $generator->dateTime(); + }; + } + + switch (str_replace('_', '', $name)) { + case 'firstname': + return static function () use ($generator) { + return $generator->firstName(); + }; + + case 'lastname': + return static function () use ($generator) { + return $generator->lastName(); + }; + + case 'username': + case 'login': + return static function () use ($generator) { + return $generator->userName(); + }; + + case 'email': + case 'emailaddress': + return static function () use ($generator) { + return $generator->email(); + }; + + case 'phonenumber': + case 'phone': + case 'telephone': + case 'telnumber': + return static function () use ($generator) { + return $generator->phoneNumber(); + }; + + case 'address': + return static function () use ($generator) { + return $generator->address(); + }; + + case 'city': + case 'town': + return static function () use ($generator) { + return $generator->city(); + }; + + case 'streetaddress': + return static function () use ($generator) { + return $generator->streetAddress(); + }; + + case 'postcode': + case 'zipcode': + return static function () use ($generator) { + return $generator->postcode(); + }; + + case 'state': + return static function () use ($generator) { + return $generator->state(); + }; + + case 'county': + if ($this->generator->locale == 'en_US') { + return static function () use ($generator) { + return sprintf('%s County', $generator->city()); + }; + } + + return static function () use ($generator) { + return $generator->state(); + }; + + case 'country': + switch ($size) { + case 2: + return static function () use ($generator) { + return $generator->countryCode(); + }; + + case 3: + return static function () use ($generator) { + return $generator->countryISOAlpha3(); + }; + + case 5: + case 6: + return static function () use ($generator) { + return $generator->locale(); + }; + + default: + return static function () use ($generator) { + return $generator->country(); + }; + } + + break; + + case 'locale': + return static function () use ($generator) { + return $generator->locale(); + }; + + case 'currency': + case 'currencycode': + return static function () use ($generator) { + return $generator->currencyCode(); + }; + + case 'url': + case 'website': + return static function () use ($generator) { + return $generator->url(); + }; + + case 'company': + case 'companyname': + case 'employer': + return static function () use ($generator) { + return $generator->company(); + }; + + case 'title': + if ($size !== null && $size <= 10) { + return static function () use ($generator) { + return $generator->title(); + }; + } + + return static function () use ($generator) { + return $generator->sentence(); + }; + + case 'body': + case 'summary': + case 'article': + case 'description': + return static function () use ($generator) { + return $generator->text(); + }; + } + + return null; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/ORM/CakePHP/ColumnTypeGuesser.php b/vendor/fakerphp/faker/src/Faker/ORM/CakePHP/ColumnTypeGuesser.php new file mode 100644 index 0000000..c2a30e6 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/ORM/CakePHP/ColumnTypeGuesser.php @@ -0,0 +1,79 @@ +generator = $generator; + } + + /** + * @return \Closure|null + */ + public function guessFormat($column, $table) + { + $generator = $this->generator; + $schema = $table->schema(); + + switch ($schema->columnType($column)) { + case 'boolean': + return static function () use ($generator) { + return $generator->boolean; + }; + + case 'integer': + return static function () use ($generator) { + return $generator->numberBetween(0, 2147483647); + }; + + case 'biginteger': + return static function () use ($generator) { + return $generator->numberBetween(0, PHP_INT_MAX); + }; + + case 'decimal': + case 'float': + return static function () use ($generator) { + return $generator->randomFloat(); + }; + + case 'uuid': + return static function () use ($generator) { + return $generator->uuid(); + }; + + case 'string': + if (method_exists($schema, 'getColumn')) { + $columnData = $schema->getColumn($column); + } else { + $columnData = $schema->column($column); + } + $length = $columnData['length']; + + return static function () use ($generator, $length) { + return $generator->text($length); + }; + + case 'text': + return static function () use ($generator) { + return $generator->text(); + }; + + case 'date': + case 'datetime': + case 'timestamp': + case 'time': + return static function () use ($generator) { + return $generator->datetime(); + }; + + case 'binary': + default: + return null; + } + } +} diff --git a/vendor/fakerphp/faker/src/Faker/ORM/CakePHP/EntityPopulator.php b/vendor/fakerphp/faker/src/Faker/ORM/CakePHP/EntityPopulator.php new file mode 100644 index 0000000..cd9890b --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/ORM/CakePHP/EntityPopulator.php @@ -0,0 +1,173 @@ +class = $class; + } + + /** + * @param string $name + */ + public function __get($name) + { + return $this->{$name}; + } + + /** + * @param string $name + */ + public function __set($name, $value) + { + $this->{$name} = $value; + } + + public function mergeColumnFormattersWith($columnFormatters) + { + $this->columnFormatters = array_merge($this->columnFormatters, $columnFormatters); + } + + public function mergeModifiersWith($modifiers) + { + $this->modifiers = array_merge($this->modifiers, $modifiers); + } + + /** + * @return array + */ + public function guessColumnFormatters($populator) + { + $formatters = []; + $class = $this->class; + $table = $this->getTable($class); + $schema = $table->schema(); + $pk = $schema->primaryKey(); + $guessers = $populator->getGuessers() + ['ColumnTypeGuesser' => new ColumnTypeGuesser($populator->getGenerator())]; + $isForeignKey = static function ($column) use ($table) { + foreach ($table->associations()->type('BelongsTo') as $assoc) { + if ($column == $assoc->foreignKey()) { + return true; + } + } + + return false; + }; + + foreach ($schema->columns() as $column) { + if ($column == $pk[0] || $isForeignKey($column)) { + continue; + } + + foreach ($guessers as $guesser) { + if ($formatter = $guesser->guessFormat($column, $table)) { + $formatters[$column] = $formatter; + + break; + } + } + } + + return $formatters; + } + + /** + * @return array + */ + public function guessModifiers() + { + $modifiers = []; + $table = $this->getTable($this->class); + + $belongsTo = $table->associations()->type('BelongsTo'); + + foreach ($belongsTo as $assoc) { + $modifiers['belongsTo' . $assoc->name()] = function ($data, $insertedEntities) use ($assoc) { + $table = $assoc->target(); + $foreignModel = $table->alias(); + + $foreignKeys = []; + + if (!empty($insertedEntities[$foreignModel])) { + $foreignKeys = $insertedEntities[$foreignModel]; + } else { + $foreignKeys = $table->find('all') + ->select(['id']) + ->map(static function ($row) { + return $row->id; + }) + ->toArray(); + } + + if (empty($foreignKeys)) { + throw new \Exception(sprintf('%s belongsTo %s, which seems empty at this point.', $this->getTable($this->class)->table(), $assoc->table())); + } + + $foreignKey = $foreignKeys[array_rand($foreignKeys)]; + $data[$assoc->foreignKey()] = $foreignKey; + + return $data; + }; + } + + // TODO check if TreeBehavior attached to modify lft/rgt cols + + return $modifiers; + } + + /** + * @param array $options + */ + public function execute($class, $insertedEntities, $options = []) + { + $table = $this->getTable($class); + $entity = $table->newEntity(); + + foreach ($this->columnFormatters as $column => $format) { + if (null !== $format) { + $entity->{$column} = is_callable($format) ? $format($insertedEntities, $table) : $format; + } + } + + foreach ($this->modifiers as $modifier) { + $entity = $modifier($entity, $insertedEntities); + } + + if (!$entity = $table->save($entity, $options)) { + throw new \RuntimeException("Failed saving $class record"); + } + + $pk = $table->primaryKey(); + + if (is_string($pk)) { + return $entity->{$pk}; + } + + return $entity->{$pk[0]}; + } + + public function setConnection($name) + { + $this->connectionName = $name; + } + + protected function getTable($class) + { + $options = []; + + if (!empty($this->connectionName)) { + $options['connection'] = $this->connectionName; + } + + return TableRegistry::get($class, $options); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/ORM/CakePHP/Populator.php b/vendor/fakerphp/faker/src/Faker/ORM/CakePHP/Populator.php new file mode 100644 index 0000000..ac195fb --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/ORM/CakePHP/Populator.php @@ -0,0 +1,113 @@ +generator = $generator; + } + + /** + * @return \Faker\Generator + */ + public function getGenerator() + { + return $this->generator; + } + + /** + * @return array + */ + public function getGuessers() + { + return $this->guessers; + } + + /** + * @return $this + */ + public function removeGuesser($name) + { + if ($this->guessers[$name]) { + unset($this->guessers[$name]); + } + + return $this; + } + + /** + * @throws \Exception + * + * @return $this + */ + public function addGuesser($class) + { + if (!is_object($class)) { + $class = new $class($this->generator); + } + + if (!method_exists($class, 'guessFormat')) { + throw new \Exception('Missing required custom guesser method: ' . get_class($class) . '::guessFormat()'); + } + + $this->guessers[get_class($class)] = $class; + + return $this; + } + + /** + * @param array $customColumnFormatters + * @param array $customModifiers + * + * @return $this + */ + public function addEntity($entity, $number, $customColumnFormatters = [], $customModifiers = []) + { + if (!$entity instanceof EntityPopulator) { + $entity = new EntityPopulator($entity); + } + + $entity->columnFormatters = $entity->guessColumnFormatters($this); + + if ($customColumnFormatters) { + $entity->mergeColumnFormattersWith($customColumnFormatters); + } + + $entity->modifiers = $entity->guessModifiers($this); + + if ($customModifiers) { + $entity->mergeModifiersWith($customModifiers); + } + + $class = $entity->class; + $this->entities[$class] = $entity; + $this->quantities[$class] = $number; + + return $this; + } + + /** + * @param array $options + * + * @return array + */ + public function execute($options = []) + { + $insertedEntities = []; + + foreach ($this->quantities as $class => $number) { + for ($i = 0; $i < $number; ++$i) { + $insertedEntities[$class][] = $this->entities[$class]->execute($class, $insertedEntities, $options); + } + } + + return $insertedEntities; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/ORM/Doctrine/ColumnTypeGuesser.php b/vendor/fakerphp/faker/src/Faker/ORM/Doctrine/ColumnTypeGuesser.php new file mode 100644 index 0000000..024d8a9 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/ORM/Doctrine/ColumnTypeGuesser.php @@ -0,0 +1,91 @@ +generator = $generator; + } + + /** + * @return \Closure|null + */ + public function guessFormat($fieldName, ClassMetadata $class) + { + $generator = $this->generator; + $type = $class->getTypeOfField($fieldName); + + switch ($type) { + case 'boolean': + return static function () use ($generator) { + return $generator->boolean(); + }; + + case 'decimal': + $size = $class->fieldMappings[$fieldName]['precision'] ?? 2; + + return static function () use ($generator, $size) { + return $generator->randomNumber($size + 2) / 100; + }; + + case 'smallint': + return static function () use ($generator) { + return $generator->numberBetween(0, 65535); + }; + + case 'integer': + return static function () use ($generator) { + return $generator->numberBetween(0, 2147483647); + }; + + case 'bigint': + return static function () use ($generator) { + return $generator->numberBetween(0, PHP_INT_MAX); + }; + + case 'float': + return static function () use ($generator) { + return $generator->randomFloat(); + }; + + case 'string': + $size = $class->fieldMappings[$fieldName]['length'] ?? 255; + + return static function () use ($generator, $size) { + return $generator->text($size); + }; + + case 'text': + return static function () use ($generator) { + return $generator->text(); + }; + + case 'datetime': + case 'date': + case 'time': + return static function () use ($generator) { + return $generator->datetime(); + }; + + case 'datetime_immutable': + case 'date_immutable': + case 'time_immutable': + return static function () use ($generator) { + return \DateTimeImmutable::createFromMutable($generator->datetime); + }; + + default: + // no smart way to guess what the user expects here + return null; + } + } +} diff --git a/vendor/fakerphp/faker/src/Faker/ORM/Doctrine/EntityPopulator.php b/vendor/fakerphp/faker/src/Faker/ORM/Doctrine/EntityPopulator.php new file mode 100644 index 0000000..4792399 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/ORM/Doctrine/EntityPopulator.php @@ -0,0 +1,248 @@ +class = $class; + } + + /** + * @return string + */ + public function getClass() + { + return $this->class->getName(); + } + + public function setColumnFormatters($columnFormatters) + { + $this->columnFormatters = $columnFormatters; + } + + /** + * @return array + */ + public function getColumnFormatters() + { + return $this->columnFormatters; + } + + public function mergeColumnFormattersWith($columnFormatters) + { + $this->columnFormatters = array_merge($this->columnFormatters, $columnFormatters); + } + + public function setModifiers(array $modifiers) + { + $this->modifiers = $modifiers; + } + + /** + * @return array + */ + public function getModifiers() + { + return $this->modifiers; + } + + public function mergeModifiersWith(array $modifiers) + { + $this->modifiers = array_merge($this->modifiers, $modifiers); + } + + /** + * @return array + */ + public function guessColumnFormatters(\Faker\Generator $generator) + { + $formatters = []; + $nameGuesser = new \Faker\Guesser\Name($generator); + $columnTypeGuesser = new ColumnTypeGuesser($generator); + + foreach ($this->class->getFieldNames() as $fieldName) { + if ($this->class->isIdentifier($fieldName) || !$this->class->hasField($fieldName)) { + continue; + } + + $size = $this->class->fieldMappings[$fieldName]['length'] ?? null; + + if ($formatter = $nameGuesser->guessFormat($fieldName, $size)) { + $formatters[$fieldName] = $formatter; + + continue; + } + + if ($formatter = $columnTypeGuesser->guessFormat($fieldName, $this->class)) { + $formatters[$fieldName] = $formatter; + + continue; + } + } + + foreach ($this->class->getAssociationNames() as $assocName) { + if ($this->class->isCollectionValuedAssociation($assocName)) { + continue; + } + + $relatedClass = $this->class->getAssociationTargetClass($assocName); + + $unique = $optional = false; + + if ($this->class instanceof \Doctrine\ORM\Mapping\ClassMetadata) { + $mappings = $this->class->getAssociationMappings(); + + foreach ($mappings as $mapping) { + if ($mapping['targetEntity'] == $relatedClass) { + if ($mapping['type'] == \Doctrine\ORM\Mapping\ClassMetadata::ONE_TO_ONE) { + $unique = true; + $optional = $mapping['joinColumns'][0]['nullable'] ?? false; + + break; + } + } + } + } elseif ($this->class instanceof \Doctrine\ODM\MongoDB\Mapping\ClassMetadata) { + $mappings = $this->class->associationMappings; + + foreach ($mappings as $mapping) { + if ($mapping['targetDocument'] == $relatedClass) { + if ($mapping['type'] == \Doctrine\ODM\MongoDB\Mapping\ClassMetadata::ONE && $mapping['association'] == \Doctrine\ODM\MongoDB\Mapping\ClassMetadata::REFERENCE_ONE) { + $unique = true; + $optional = $mapping['nullable'] ?? false; + + break; + } + } + } + } + + $index = 0; + $formatters[$assocName] = static function ($inserted) use ($relatedClass, &$index, $unique, $optional, $generator) { + if (isset($inserted[$relatedClass])) { + if ($unique) { + $related = null; + + if (isset($inserted[$relatedClass][$index]) || !$optional) { + $related = $inserted[$relatedClass][$index]; + } + + ++$index; + + return $related; + } + + return $generator->randomElement($inserted[$relatedClass]); + } + + return null; + }; + } + + return $formatters; + } + + /** + * Insert one new record using the Entity class. + * + * @param bool $generateId + * + * @return EntityPopulator + */ + public function execute(ObjectManager $manager, $insertedEntities, $generateId = false) + { + $obj = $this->class->newInstance(); + + $this->fillColumns($obj, $insertedEntities); + $this->callMethods($obj, $insertedEntities); + + if ($generateId) { + $idsName = $this->class->getIdentifier(); + + foreach ($idsName as $idName) { + $id = $this->generateId($obj, $idName, $manager); + $this->class->reflFields[$idName]->setValue($obj, $id); + } + } + + $manager->persist($obj); + + return $obj; + } + + private function fillColumns($obj, $insertedEntities): void + { + foreach ($this->columnFormatters as $field => $format) { + if (null !== $format) { + // Add some extended debugging information to any errors thrown by the formatter + try { + $value = is_callable($format) ? $format($insertedEntities, $obj) : $format; + } catch (\InvalidArgumentException $ex) { + throw new \InvalidArgumentException(sprintf( + 'Failed to generate a value for %s::%s: %s', + get_class($obj), + $field, + $ex->getMessage(), + )); + } + // Try a standard setter if it's available, otherwise fall back on reflection + $setter = sprintf('set%s', ucfirst($field)); + + if (is_callable([$obj, $setter])) { + $obj->$setter($value); + } else { + $this->class->reflFields[$field]->setValue($obj, $value); + } + } + } + } + + private function callMethods($obj, $insertedEntities): void + { + foreach ($this->getModifiers() as $modifier) { + $modifier($obj, $insertedEntities); + } + } + + /** + * @return int + */ + private function generateId($obj, $column, ObjectManager $manager) + { + $repository = $manager->getRepository(get_class($obj)); + $result = $repository->createQueryBuilder('e') + ->select(sprintf('e.%s', $column)) + ->getQuery() + ->execute(); + $ids = array_map('current', $result->toArray()); + + do { + $id = mt_rand(); + } while (in_array($id, $ids, false)); + + return $id; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/ORM/Doctrine/Populator.php b/vendor/fakerphp/faker/src/Faker/ORM/Doctrine/Populator.php new file mode 100644 index 0000000..61d4171 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/ORM/Doctrine/Populator.php @@ -0,0 +1,126 @@ +generator = $generator; + $this->manager = $manager; + $this->batchSize = $batchSize; + } + + /** + * Add an order for the generation of $number records for $entity. + * + * @param mixed $entity A Doctrine classname, or a \Faker\ORM\Doctrine\EntityPopulator instance + * @param int $number The number of entities to populate + */ + public function addEntity($entity, $number, $customColumnFormatters = [], $customModifiers = [], $generateId = false) + { + if (!$entity instanceof \Faker\ORM\Doctrine\EntityPopulator) { + if (null === $this->manager) { + throw new \InvalidArgumentException('No entity manager passed to Doctrine Populator.'); + } + $entity = new \Faker\ORM\Doctrine\EntityPopulator($this->manager->getClassMetadata($entity)); + } + $entity->setColumnFormatters($entity->guessColumnFormatters($this->generator)); + + if ($customColumnFormatters) { + $entity->mergeColumnFormattersWith($customColumnFormatters); + } + $entity->mergeModifiersWith($customModifiers); + $this->generateId[$entity->getClass()] = $generateId; + + $class = $entity->getClass(); + $this->entities[$class] = $entity; + $this->quantities[$class] = $number; + } + + /** + * Populate the database using all the Entity classes previously added. + * + * Please note that large amounts of data will result in more memory usage since the the Populator will return + * all newly created primary keys after executing. + * + * @param ObjectManager|null $entityManager A Doctrine connection object + * + * @return array A list of the inserted PKs + */ + public function execute($entityManager = null) + { + if (null === $entityManager) { + $entityManager = $this->manager; + } + + if (null === $entityManager) { + throw new \InvalidArgumentException('No entity manager passed to Doctrine Populator.'); + } + + $insertedEntities = []; + + foreach ($this->quantities as $class => $number) { + $generateId = $this->generateId[$class]; + + for ($i = 0; $i < $number; ++$i) { + $insertedEntities[$class][] = $this->entities[$class]->execute( + $entityManager, + $insertedEntities, + $generateId, + ); + + if (count($insertedEntities) % $this->batchSize === 0) { + $entityManager->flush(); + } + } + $entityManager->flush(); + } + + return $insertedEntities; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/ORM/Doctrine/backward-compatibility.php b/vendor/fakerphp/faker/src/Faker/ORM/Doctrine/backward-compatibility.php new file mode 100644 index 0000000..6f545f8 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/ORM/Doctrine/backward-compatibility.php @@ -0,0 +1,11 @@ +generator = $generator; + } + + /** + * @return \Closure|null + */ + public function guessFormat($field) + { + $generator = $this->generator; + + switch ($field['type']) { + case 'boolean': + return static function () use ($generator) { + return $generator->boolean; + }; + + case 'integer': + return static function () use ($generator) { + return $generator->numberBetween(0, 4294967295); + }; + + case 'float': + return static function () use ($generator) { + return $generator->randomFloat(); + }; + + case 'string': + return static function () use ($generator) { + return $generator->text(255); + }; + + case 'date': + return static function () use ($generator) { + return $generator->dateTime; + }; + + default: + // no smart way to guess what the user expects here + return null; + } + } +} diff --git a/vendor/fakerphp/faker/src/Faker/ORM/Mandango/EntityPopulator.php b/vendor/fakerphp/faker/src/Faker/ORM/Mandango/EntityPopulator.php new file mode 100644 index 0000000..515ab7b --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/ORM/Mandango/EntityPopulator.php @@ -0,0 +1,123 @@ +class = $class; + } + + /** + * @return string + */ + public function getClass() + { + return $this->class; + } + + public function setColumnFormatters($columnFormatters) + { + $this->columnFormatters = $columnFormatters; + } + + /** + * @return array + */ + public function getColumnFormatters() + { + return $this->columnFormatters; + } + + public function mergeColumnFormattersWith($columnFormatters) + { + $this->columnFormatters = array_merge($this->columnFormatters, $columnFormatters); + } + + /** + * @return array + */ + public function guessColumnFormatters(\Faker\Generator $generator, Mandango $mandango) + { + $formatters = []; + $nameGuesser = new \Faker\Guesser\Name($generator); + $columnTypeGuesser = new \Faker\ORM\Mandango\ColumnTypeGuesser($generator); + + $metadata = $mandango->getMetadata($this->class); + + // fields + foreach ($metadata['fields'] as $fieldName => $field) { + if ($formatter = $nameGuesser->guessFormat($fieldName)) { + $formatters[$fieldName] = $formatter; + + continue; + } + + if ($formatter = $columnTypeGuesser->guessFormat($field)) { + $formatters[$fieldName] = $formatter; + + continue; + } + } + + // references + foreach (array_merge($metadata['referencesOne'], $metadata['referencesMany']) as $referenceName => $reference) { + if (!isset($reference['class'])) { + continue; + } + $referenceClass = $reference['class']; + + $formatters[$referenceName] = static function ($insertedEntities) use ($referenceClass) { + if (isset($insertedEntities[$referenceClass])) { + return Base::randomElement($insertedEntities[$referenceClass]); + } + + return null; + }; + } + + return $formatters; + } + + /** + * Insert one new record using the Entity class. + */ + public function execute(Mandango $mandango, $insertedEntities) + { + $metadata = $mandango->getMetadata($this->class); + + $obj = $mandango->create($this->class); + + foreach ($this->columnFormatters as $column => $format) { + if (null !== $format) { + $value = is_callable($format) ? $format($insertedEntities, $obj) : $format; + + if (isset($metadata['fields'][$column]) + || isset($metadata['referencesOne'][$column])) { + $obj->set($column, $value); + } + + if (isset($metadata['referencesMany'][$column])) { + $adder = 'add' . ucfirst($column); + $obj->$adder($value); + } + } + } + $mandango->persist($obj); + + return $obj; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/ORM/Mandango/Populator.php b/vendor/fakerphp/faker/src/Faker/ORM/Mandango/Populator.php new file mode 100644 index 0000000..de6c3b8 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/ORM/Mandango/Populator.php @@ -0,0 +1,63 @@ +generator = $generator; + $this->mandango = $mandango; + } + + /** + * Add an order for the generation of $number records for $entity. + * + * @param mixed $entity A Propel ActiveRecord classname, or a \Faker\ORM\Propel\EntityPopulator instance + * @param int $number The number of entities to populate + */ + public function addEntity($entity, $number, $customColumnFormatters = []) + { + if (!$entity instanceof \Faker\ORM\Mandango\EntityPopulator) { + $entity = new \Faker\ORM\Mandango\EntityPopulator($entity); + } + $entity->setColumnFormatters($entity->guessColumnFormatters($this->generator, $this->mandango)); + + if ($customColumnFormatters) { + $entity->mergeColumnFormattersWith($customColumnFormatters); + } + $class = $entity->getClass(); + $this->entities[$class] = $entity; + $this->quantities[$class] = $number; + } + + /** + * Populate the database using all the Entity classes previously added. + * + * @return array A list of the inserted entities. + */ + public function execute() + { + $insertedEntities = []; + + foreach ($this->quantities as $class => $number) { + for ($i = 0; $i < $number; ++$i) { + $insertedEntities[$class][] = $this->entities[$class]->execute($this->mandango, $insertedEntities); + } + } + $this->mandango->flush(); + + return $insertedEntities; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/ORM/Propel/ColumnTypeGuesser.php b/vendor/fakerphp/faker/src/Faker/ORM/Propel/ColumnTypeGuesser.php new file mode 100644 index 0000000..3d8a9a1 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/ORM/Propel/ColumnTypeGuesser.php @@ -0,0 +1,109 @@ +generator = $generator; + } + + /** + * @return \Closure|null + */ + public function guessFormat(\ColumnMap $column) + { + $generator = $this->generator; + + if ($column->isTemporal()) { + if ($column->isEpochTemporal()) { + return static function () use ($generator) { + return $generator->dateTime; + }; + } + + return static function () use ($generator) { + return $generator->dateTimeAD; + }; + } + $type = $column->getType(); + + switch ($type) { + case \PropelColumnTypes::BOOLEAN: + case \PropelColumnTypes::BOOLEAN_EMU: + return static function () use ($generator) { + return $generator->boolean; + }; + + case \PropelColumnTypes::NUMERIC: + case \PropelColumnTypes::DECIMAL: + $size = $column->getSize(); + + return static function () use ($generator, $size) { + return $generator->randomNumber($size + 2) / 100; + }; + + case \PropelColumnTypes::TINYINT: + return static function () use ($generator) { + return $generator->numberBetween(0, 127); + }; + + case \PropelColumnTypes::SMALLINT: + return static function () use ($generator) { + return $generator->numberBetween(0, 32767); + }; + + case \PropelColumnTypes::INTEGER: + return static function () use ($generator) { + return $generator->numberBetween(0, 2147483647); + }; + + case \PropelColumnTypes::BIGINT: + return static function () use ($generator) { + return $generator->numberBetween(0, PHP_INT_MAX); + }; + + case \PropelColumnTypes::FLOAT: + case \PropelColumnTypes::DOUBLE: + case \PropelColumnTypes::REAL: + return static function () use ($generator) { + return $generator->randomFloat(); + }; + + case \PropelColumnTypes::CHAR: + case \PropelColumnTypes::VARCHAR: + case \PropelColumnTypes::BINARY: + case \PropelColumnTypes::VARBINARY: + $size = $column->getSize(); + + return static function () use ($generator, $size) { + return $generator->text($size); + }; + + case \PropelColumnTypes::LONGVARCHAR: + case \PropelColumnTypes::LONGVARBINARY: + case \PropelColumnTypes::CLOB: + case \PropelColumnTypes::CLOB_EMU: + case \PropelColumnTypes::BLOB: + return static function () use ($generator) { + return $generator->text; + }; + + case \PropelColumnTypes::ENUM: + $valueSet = $column->getValueSet(); + + return static function () use ($generator, $valueSet) { + return $generator->randomElement($valueSet); + }; + + case \PropelColumnTypes::OBJECT: + case \PropelColumnTypes::PHP_ARRAY: + default: + // no smart way to guess what the user expects here + return null; + } + } +} diff --git a/vendor/fakerphp/faker/src/Faker/ORM/Propel/EntityPopulator.php b/vendor/fakerphp/faker/src/Faker/ORM/Propel/EntityPopulator.php new file mode 100644 index 0000000..f5af75c --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/ORM/Propel/EntityPopulator.php @@ -0,0 +1,204 @@ +class = $class; + } + + /** + * @return string + */ + public function getClass() + { + return $this->class; + } + + public function setColumnFormatters($columnFormatters) + { + $this->columnFormatters = $columnFormatters; + } + + /** + * @return array + */ + public function getColumnFormatters() + { + return $this->columnFormatters; + } + + public function mergeColumnFormattersWith($columnFormatters) + { + $this->columnFormatters = array_merge($this->columnFormatters, $columnFormatters); + } + + /** + * @return array + */ + public function guessColumnFormatters(\Faker\Generator $generator) + { + $formatters = []; + $class = $this->class; + $peerClass = $class::PEER; + $tableMap = $peerClass::getTableMap(); + $nameGuesser = new \Faker\Guesser\Name($generator); + $columnTypeGuesser = new \Faker\ORM\Propel\ColumnTypeGuesser($generator); + + foreach ($tableMap->getColumns() as $columnMap) { + // skip behavior columns, handled by modifiers + if ($this->isColumnBehavior($columnMap)) { + continue; + } + + if ($columnMap->isForeignKey()) { + $relatedClass = $columnMap->getRelation()->getForeignTable()->getClassname(); + $formatters[$columnMap->getPhpName()] = static function ($inserted) use ($relatedClass, $generator) { + return isset($inserted[$relatedClass]) ? $generator->randomElement($inserted[$relatedClass]) : null; + }; + + continue; + } + + if ($columnMap->isPrimaryKey()) { + continue; + } + + if ($formatter = $nameGuesser->guessFormat($columnMap->getPhpName(), $columnMap->getSize())) { + $formatters[$columnMap->getPhpName()] = $formatter; + + continue; + } + + if ($formatter = $columnTypeGuesser->guessFormat($columnMap)) { + $formatters[$columnMap->getPhpName()] = $formatter; + + continue; + } + } + + return $formatters; + } + + /** + * @return bool + */ + protected function isColumnBehavior(\ColumnMap $columnMap) + { + foreach ($columnMap->getTable()->getBehaviors() as $name => $params) { + $columnName = Base::toLower($columnMap->getName()); + + switch ($name) { + case 'nested_set': + $columnNames = [$params['left_column'], $params['right_column'], $params['level_column']]; + + if (in_array($columnName, $columnNames, false)) { + return true; + } + + break; + + case 'timestampable': + $columnNames = [$params['create_column'], $params['update_column']]; + + if (in_array($columnName, $columnNames, false)) { + return true; + } + + break; + } + } + + return false; + } + + public function setModifiers($modifiers) + { + $this->modifiers = $modifiers; + } + + /** + * @return array + */ + public function getModifiers() + { + return $this->modifiers; + } + + public function mergeModifiersWith($modifiers) + { + $this->modifiers = array_merge($this->modifiers, $modifiers); + } + + /** + * @return array + */ + public function guessModifiers(\Faker\Generator $generator) + { + $modifiers = []; + $class = $this->class; + $peerClass = $class::PEER; + $tableMap = $peerClass::getTableMap(); + + foreach ($tableMap->getBehaviors() as $name => $params) { + switch ($name) { + case 'nested_set': + $modifiers['nested_set'] = static function ($obj, $inserted) use ($class, $generator): void { + if (isset($inserted[$class])) { + $queryClass = $class . 'Query'; + $parent = $queryClass::create()->findPk($generator->randomElement($inserted[$class])); + $obj->insertAsLastChildOf($parent); + } else { + $obj->makeRoot(); + } + }; + + break; + + case 'sortable': + $modifiers['sortable'] = static function ($obj, $inserted) use ($class, $generator): void { + $obj->insertAtRank($generator->numberBetween(1, count($inserted[$class] ?? []) + 1)); + }; + + break; + } + } + + return $modifiers; + } + + /** + * Insert one new record using the Entity class. + */ + public function execute($con, $insertedEntities) + { + $obj = new $this->class(); + + foreach ($this->getColumnFormatters() as $column => $format) { + if (null !== $format) { + $obj->setByName($column, is_callable($format) ? $format($insertedEntities, $obj) : $format); + } + } + + foreach ($this->getModifiers() as $modifier) { + $modifier($obj, $insertedEntities); + } + $obj->save($con); + + return $obj->getPrimaryKey(); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/ORM/Propel/Populator.php b/vendor/fakerphp/faker/src/Faker/ORM/Propel/Populator.php new file mode 100644 index 0000000..e3d4298 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/ORM/Propel/Populator.php @@ -0,0 +1,90 @@ +generator = $generator; + } + + /** + * Add an order for the generation of $number records for $entity. + * + * @param mixed $entity A Propel ActiveRecord classname, or a \Faker\ORM\Propel\EntityPopulator instance + * @param int $number The number of entities to populate + */ + public function addEntity($entity, $number, $customColumnFormatters = [], $customModifiers = []) + { + if (!$entity instanceof \Faker\ORM\Propel\EntityPopulator) { + $entity = new \Faker\ORM\Propel\EntityPopulator($entity); + } + $entity->setColumnFormatters($entity->guessColumnFormatters($this->generator)); + + if ($customColumnFormatters) { + $entity->mergeColumnFormattersWith($customColumnFormatters); + } + $entity->setModifiers($entity->guessModifiers($this->generator)); + + if ($customModifiers) { + $entity->mergeModifiersWith($customModifiers); + } + $class = $entity->getClass(); + $this->entities[$class] = $entity; + $this->quantities[$class] = $number; + } + + /** + * Populate the database using all the Entity classes previously added. + * + * @param PropelPDO $con A Propel connection object + * + * @return array A list of the inserted PKs + */ + public function execute($con = null) + { + if (null === $con) { + $con = $this->getConnection(); + } + $isInstancePoolingEnabled = \Propel::isInstancePoolingEnabled(); + \Propel::disableInstancePooling(); + $insertedEntities = []; + $con->beginTransaction(); + + foreach ($this->quantities as $class => $number) { + for ($i = 0; $i < $number; ++$i) { + $insertedEntities[$class][] = $this->entities[$class]->execute($con, $insertedEntities); + } + } + $con->commit(); + + if ($isInstancePoolingEnabled) { + \Propel::enableInstancePooling(); + } + + return $insertedEntities; + } + + protected function getConnection() + { + // use the first connection available + $class = key($this->entities); + + if (!$class) { + throw new \RuntimeException('No class found from entities. Did you add entities to the Populator ?'); + } + + $peer = $class::PEER; + + return \Propel::getConnection($peer::DATABASE_NAME, \Propel::CONNECTION_WRITE); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/ORM/Propel2/ColumnTypeGuesser.php b/vendor/fakerphp/faker/src/Faker/ORM/Propel2/ColumnTypeGuesser.php new file mode 100644 index 0000000..4c08e0a --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/ORM/Propel2/ColumnTypeGuesser.php @@ -0,0 +1,112 @@ +generator = $generator; + } + + /** + * @return \Closure|null + */ + public function guessFormat(ColumnMap $column) + { + $generator = $this->generator; + + if ($column->isTemporal()) { + if ($column->getType() == PropelTypes::BU_DATE || $column->getType() == PropelTypes::BU_TIMESTAMP) { + return static function () use ($generator) { + return $generator->dateTime; + }; + } + + return static function () use ($generator) { + return $generator->dateTimeAD; + }; + } + $type = $column->getType(); + + switch ($type) { + case PropelTypes::BOOLEAN: + case PropelTypes::BOOLEAN_EMU: + return static function () use ($generator) { + return $generator->boolean; + }; + + case PropelTypes::NUMERIC: + case PropelTypes::DECIMAL: + $size = $column->getSize(); + + return static function () use ($generator, $size) { + return $generator->randomNumber($size + 2) / 100; + }; + + case PropelTypes::TINYINT: + return static function () use ($generator) { + return $generator->numberBetween(0, 127); + }; + + case PropelTypes::SMALLINT: + return static function () use ($generator) { + return $generator->numberBetween(0, 32767); + }; + + case PropelTypes::INTEGER: + return static function () use ($generator) { + return $generator->numberBetween(0, 2147483647); + }; + + case PropelTypes::BIGINT: + return static function () use ($generator) { + return $generator->numberBetween(0, PHP_INT_MAX); + }; + + case PropelTypes::FLOAT: + case PropelTypes::DOUBLE: + case PropelTypes::REAL: + return static function () use ($generator) { + return $generator->randomFloat(); + }; + + case PropelTypes::CHAR: + case PropelTypes::VARCHAR: + case PropelTypes::BINARY: + case PropelTypes::VARBINARY: + $size = $column->getSize(); + + return static function () use ($generator, $size) { + return $generator->text($size); + }; + + case PropelTypes::LONGVARCHAR: + case PropelTypes::LONGVARBINARY: + case PropelTypes::CLOB: + case PropelTypes::CLOB_EMU: + case PropelTypes::BLOB: + return static function () use ($generator) { + return $generator->text; + }; + + case PropelTypes::ENUM: + $valueSet = $column->getValueSet(); + + return static function () use ($generator, $valueSet) { + return $generator->randomElement($valueSet); + }; + + case PropelTypes::OBJECT: + case PropelTypes::PHP_ARRAY: + default: + // no smart way to guess what the user expects here + return null; + } + } +} diff --git a/vendor/fakerphp/faker/src/Faker/ORM/Propel2/EntityPopulator.php b/vendor/fakerphp/faker/src/Faker/ORM/Propel2/EntityPopulator.php new file mode 100644 index 0000000..44804e3 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/ORM/Propel2/EntityPopulator.php @@ -0,0 +1,207 @@ +class = $class; + } + + /** + * @return string + */ + public function getClass() + { + return $this->class; + } + + public function setColumnFormatters($columnFormatters) + { + $this->columnFormatters = $columnFormatters; + } + + /** + * @return array + */ + public function getColumnFormatters() + { + return $this->columnFormatters; + } + + public function mergeColumnFormattersWith($columnFormatters) + { + $this->columnFormatters = array_merge($this->columnFormatters, $columnFormatters); + } + + /** + * @return array + */ + public function guessColumnFormatters(\Faker\Generator $generator) + { + $formatters = []; + $class = $this->class; + $peerClass = $class::TABLE_MAP; + $tableMap = $peerClass::getTableMap(); + $nameGuesser = new \Faker\Guesser\Name($generator); + $columnTypeGuesser = new \Faker\ORM\Propel2\ColumnTypeGuesser($generator); + + foreach ($tableMap->getColumns() as $columnMap) { + // skip behavior columns, handled by modifiers + if ($this->isColumnBehavior($columnMap)) { + continue; + } + + if ($columnMap->isForeignKey()) { + $relatedClass = $columnMap->getRelation()->getForeignTable()->getClassname(); + $formatters[$columnMap->getPhpName()] = static function ($inserted) use ($relatedClass, $generator) { + $relatedClass = trim($relatedClass, '\\'); + + return isset($inserted[$relatedClass]) ? $generator->randomElement($inserted[$relatedClass]) : null; + }; + + continue; + } + + if ($columnMap->isPrimaryKey()) { + continue; + } + + if ($formatter = $nameGuesser->guessFormat($columnMap->getPhpName(), $columnMap->getSize())) { + $formatters[$columnMap->getPhpName()] = $formatter; + + continue; + } + + if ($formatter = $columnTypeGuesser->guessFormat($columnMap)) { + $formatters[$columnMap->getPhpName()] = $formatter; + + continue; + } + } + + return $formatters; + } + + /** + * @return bool + */ + protected function isColumnBehavior(ColumnMap $columnMap) + { + foreach ($columnMap->getTable()->getBehaviors() as $name => $params) { + $columnName = Base::toLower($columnMap->getName()); + + switch ($name) { + case 'nested_set': + $columnNames = [$params['left_column'], $params['right_column'], $params['level_column']]; + + if (in_array($columnName, $columnNames, false)) { + return true; + } + + break; + + case 'timestampable': + $columnNames = [$params['create_column'], $params['update_column']]; + + if (in_array($columnName, $columnNames, false)) { + return true; + } + + break; + } + } + + return false; + } + + public function setModifiers($modifiers) + { + $this->modifiers = $modifiers; + } + + /** + * @return array + */ + public function getModifiers() + { + return $this->modifiers; + } + + public function mergeModifiersWith($modifiers) + { + $this->modifiers = array_merge($this->modifiers, $modifiers); + } + + /** + * @return array + */ + public function guessModifiers(\Faker\Generator $generator) + { + $modifiers = []; + $class = $this->class; + $peerClass = $class::TABLE_MAP; + $tableMap = $peerClass::getTableMap(); + + foreach ($tableMap->getBehaviors() as $name => $params) { + switch ($name) { + case 'nested_set': + $modifiers['nested_set'] = static function ($obj, $inserted) use ($class, $generator): void { + if (isset($inserted[$class])) { + $queryClass = $class . 'Query'; + $parent = $queryClass::create()->findPk($generator->randomElement($inserted[$class])); + $obj->insertAsLastChildOf($parent); + } else { + $obj->makeRoot(); + } + }; + + break; + + case 'sortable': + $modifiers['sortable'] = static function ($obj, $inserted) use ($class, $generator): void { + $obj->insertAtRank($generator->numberBetween(1, count($inserted[$class] ?? []) + 1)); + }; + + break; + } + } + + return $modifiers; + } + + /** + * Insert one new record using the Entity class. + */ + public function execute($con, $insertedEntities) + { + $obj = new $this->class(); + + foreach ($this->getColumnFormatters() as $column => $format) { + if (null !== $format) { + $obj->setByName($column, is_callable($format) ? $format($insertedEntities, $obj) : $format); + } + } + + foreach ($this->getModifiers() as $modifier) { + $modifier($obj, $insertedEntities); + } + $obj->save($con); + + return $obj->getPrimaryKey(); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/ORM/Propel2/Populator.php b/vendor/fakerphp/faker/src/Faker/ORM/Propel2/Populator.php new file mode 100644 index 0000000..7698f80 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/ORM/Propel2/Populator.php @@ -0,0 +1,93 @@ +generator = $generator; + } + + /** + * Add an order for the generation of $number records for $entity. + * + * @param mixed $entity A Propel ActiveRecord classname, or a \Faker\ORM\Propel2\EntityPopulator instance + * @param int $number The number of entities to populate + */ + public function addEntity($entity, $number, $customColumnFormatters = [], $customModifiers = []) + { + if (!$entity instanceof \Faker\ORM\Propel2\EntityPopulator) { + $entity = new \Faker\ORM\Propel2\EntityPopulator($entity); + } + $entity->setColumnFormatters($entity->guessColumnFormatters($this->generator)); + + if ($customColumnFormatters) { + $entity->mergeColumnFormattersWith($customColumnFormatters); + } + $entity->setModifiers($entity->guessModifiers($this->generator)); + + if ($customModifiers) { + $entity->mergeModifiersWith($customModifiers); + } + $class = $entity->getClass(); + $this->entities[$class] = $entity; + $this->quantities[$class] = $number; + } + + /** + * Populate the database using all the Entity classes previously added. + * + * @param PropelPDO $con A Propel connection object + * + * @return array A list of the inserted PKs + */ + public function execute($con = null) + { + if (null === $con) { + $con = $this->getConnection(); + } + $isInstancePoolingEnabled = Propel::isInstancePoolingEnabled(); + Propel::disableInstancePooling(); + $insertedEntities = []; + $con->beginTransaction(); + + foreach ($this->quantities as $class => $number) { + for ($i = 0; $i < $number; ++$i) { + $insertedEntities[$class][] = $this->entities[$class]->execute($con, $insertedEntities); + } + } + $con->commit(); + + if ($isInstancePoolingEnabled) { + Propel::enableInstancePooling(); + } + + return $insertedEntities; + } + + protected function getConnection() + { + // use the first connection available + $class = key($this->entities); + + if (!$class) { + throw new \RuntimeException('No class found from entities. Did you add entities to the Populator ?'); + } + + $peer = $class::TABLE_MAP; + + return Propel::getConnection($peer::DATABASE_NAME, ServiceContainerInterface::CONNECTION_WRITE); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/ORM/Spot/ColumnTypeGuesser.php b/vendor/fakerphp/faker/src/Faker/ORM/Spot/ColumnTypeGuesser.php new file mode 100644 index 0000000..f06ba04 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/ORM/Spot/ColumnTypeGuesser.php @@ -0,0 +1,84 @@ +generator = $generator; + } + + /** + * @return \Closure|null + */ + public function guessFormat(array $field) + { + $generator = $this->generator; + $type = $field['type']; + + switch ($type) { + case 'boolean': + return static function () use ($generator) { + return $generator->boolean; + }; + + case 'decimal': + $size = $field['precision'] ?? 2; + + return static function () use ($generator, $size) { + return $generator->randomNumber($size + 2) / 100; + }; + + case 'smallint': + return static function () use ($generator) { + return $generator->numberBetween(0, 65535); + }; + + case 'integer': + return static function () use ($generator) { + return $generator->numberBetween(0, 2147483647); + }; + + case 'bigint': + return static function () use ($generator) { + return $generator->numberBetween(0, PHP_INT_MAX); + }; + + case 'float': + return static function () use ($generator) { + return $generator->randomFloat(null, 0, 4294967295); + }; + + case 'string': + $size = $field['length'] ?? 255; + + return static function () use ($generator, $size) { + return $generator->text($size); + }; + + case 'text': + return static function () use ($generator) { + return $generator->text; + }; + + case 'datetime': + case 'date': + case 'time': + return static function () use ($generator) { + return $generator->datetime; + }; + + default: + // no smart way to guess what the user expects here + return null; + } + } +} diff --git a/vendor/fakerphp/faker/src/Faker/ORM/Spot/EntityPopulator.php b/vendor/fakerphp/faker/src/Faker/ORM/Spot/EntityPopulator.php new file mode 100644 index 0000000..b67ae25 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/ORM/Spot/EntityPopulator.php @@ -0,0 +1,199 @@ +mapper = $mapper; + $this->locator = $locator; + $this->useExistingData = $useExistingData; + } + + /** + * @return string + */ + public function getMapper() + { + return $this->mapper; + } + + public function setColumnFormatters($columnFormatters) + { + $this->columnFormatters = $columnFormatters; + } + + /** + * @return array + */ + public function getColumnFormatters() + { + return $this->columnFormatters; + } + + public function mergeColumnFormattersWith($columnFormatters) + { + $this->columnFormatters = array_merge($this->columnFormatters, $columnFormatters); + } + + public function setModifiers(array $modifiers) + { + $this->modifiers = $modifiers; + } + + /** + * @return array + */ + public function getModifiers() + { + return $this->modifiers; + } + + public function mergeModifiersWith(array $modifiers) + { + $this->modifiers = array_merge($this->modifiers, $modifiers); + } + + /** + * @return array + */ + public function guessColumnFormatters(Generator $generator) + { + $formatters = []; + $nameGuesser = new Name($generator); + $columnTypeGuesser = new ColumnTypeGuesser($generator); + $fields = $this->mapper->fields(); + + foreach ($fields as $fieldName => $field) { + if ($field['primary'] === true) { + continue; + } + + if ($formatter = $nameGuesser->guessFormat($fieldName)) { + $formatters[$fieldName] = $formatter; + + continue; + } + + if ($formatter = $columnTypeGuesser->guessFormat($field)) { + $formatters[$fieldName] = $formatter; + + continue; + } + } + $entityName = $this->mapper->entity(); + $entity = $this->mapper->build([]); + $relations = $entityName::relations($this->mapper, $entity); + + foreach ($relations as $relation) { + // We don't need any other relation here. + if ($relation instanceof BelongsTo) { + $fieldName = $relation->localKey(); + $entityName = $relation->entityName(); + $field = $fields[$fieldName]; + $required = $field['required']; + + $locator = $this->locator; + + $formatters[$fieldName] = function ($inserted) use ($required, $entityName, $locator, $generator) { + if (!empty($inserted[$entityName])) { + return $generator->randomElement($inserted[$entityName])->get('id'); + } + + if ($required && $this->useExistingData) { + // We did not add anything like this, but it's required, + // So let's find something existing in DB. + $mapper = $locator->mapper($entityName); + $records = $mapper->all()->limit(self::RELATED_FETCH_COUNT)->toArray(); + + if (empty($records)) { + return null; + } + + return $generator->randomElement($records)['id']; + } + + return null; + }; + } + } + + return $formatters; + } + + /** + * Insert one new record using the Entity class. + * + * @return string + */ + public function execute($insertedEntities) + { + $obj = $this->mapper->build([]); + + $this->fillColumns($obj, $insertedEntities); + $this->callMethods($obj, $insertedEntities); + + $this->mapper->insert($obj); + + return $obj; + } + + private function fillColumns($obj, $insertedEntities): void + { + foreach ($this->columnFormatters as $field => $format) { + if (null !== $format) { + $value = is_callable($format) ? $format($insertedEntities, $obj) : $format; + $obj->set($field, $value); + } + } + } + + private function callMethods($obj, $insertedEntities): void + { + foreach ($this->getModifiers() as $modifier) { + $modifier($obj, $insertedEntities); + } + } +} diff --git a/vendor/fakerphp/faker/src/Faker/ORM/Spot/Populator.php b/vendor/fakerphp/faker/src/Faker/ORM/Spot/Populator.php new file mode 100644 index 0000000..9ad3bfb --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/ORM/Spot/Populator.php @@ -0,0 +1,89 @@ +generator = $generator; + $this->locator = $locator; + } + + /** + * Add an order for the generation of $number records for $entity. + * + * @param string $entityName Name of Entity object to generate + * @param int $number The number of entities to populate + * @param array $customColumnFormatters + * @param array $customModifiers + * @param bool $useExistingData Should we use existing rows (e.g. roles) to populate relations? + */ + public function addEntity( + $entityName, + $number, + $customColumnFormatters = [], + $customModifiers = [], + $useExistingData = false + ) { + $mapper = $this->locator->mapper($entityName); + + if (null === $mapper) { + throw new \InvalidArgumentException('No mapper can be found for entity ' . $entityName); + } + $entity = new EntityPopulator($mapper, $this->locator, $useExistingData); + + $entity->setColumnFormatters($entity->guessColumnFormatters($this->generator)); + + if ($customColumnFormatters) { + $entity->mergeColumnFormattersWith($customColumnFormatters); + } + $entity->mergeModifiersWith($customModifiers); + + $this->entities[$entityName] = $entity; + $this->quantities[$entityName] = $number; + } + + /** + * Populate the database using all the Entity classes previously added. + * + * @param Locator $locator A Spot locator + * + * @return array A list of the inserted PKs + */ + public function execute($locator = null) + { + if (null === $locator) { + $locator = $this->locator; + } + + if (null === $locator) { + throw new \InvalidArgumentException('No entity manager passed to Spot Populator.'); + } + + $insertedEntities = []; + + foreach ($this->quantities as $entityName => $number) { + for ($i = 0; $i < $number; ++$i) { + $insertedEntities[$entityName][] = $this->entities[$entityName]->execute( + $insertedEntities, + ); + } + } + + return $insertedEntities; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/Address.php b/vendor/fakerphp/faker/src/Faker/Provider/Address.php new file mode 100644 index 0000000..9727497 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/Address.php @@ -0,0 +1,166 @@ +generator->parse($format); + } + + /** + * @example 'Crist Parks' + * + * @return string + */ + public function streetName() + { + $format = static::randomElement(static::$streetNameFormats); + + return $this->generator->parse($format); + } + + /** + * @example '791 Crist Parks' + * + * @return string + */ + public function streetAddress() + { + $format = static::randomElement(static::$streetAddressFormats); + + return $this->generator->parse($format); + } + + /** + * @example 86039-9874 + * + * @return string + */ + public static function postcode() + { + return static::toUpper(static::bothify(static::randomElement(static::$postcode))); + } + + /** + * @example '791 Crist Parks, Sashabury, IL 86039-9874' + * + * @return string + */ + public function address() + { + $format = static::randomElement(static::$addressFormats); + + return $this->generator->parse($format); + } + + /** + * @example 'Japan' + * + * @return string + */ + public static function country() + { + return static::randomElement(static::$country); + } + + /** + * Uses signed degrees format (returns a float number between -90 and 90) + * + * @example '77.147489' + * + * @param float|int $min + * @param float|int $max + * + * @return float + */ + public static function latitude($min = -90, $max = 90) + { + return static::randomFloat(6, $min, $max); + } + + /** + * Uses signed degrees format (returns a float number between -180 and 180) + * + * @example '86.211205' + * + * @param float|int $min + * @param float|int $max + * + * @return float + */ + public static function longitude($min = -180, $max = 180) + { + return static::randomFloat(6, $min, $max); + } + + /** + * @example array('77.147489', '86.211205') + * + * @return float[] + */ + public static function localCoordinates() + { + return [ + 'latitude' => static::latitude(), + 'longitude' => static::longitude(), + ]; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/Barcode.php b/vendor/fakerphp/faker/src/Faker/Provider/Barcode.php new file mode 100644 index 0000000..0d39a61 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/Barcode.php @@ -0,0 +1,107 @@ +ean(13); + } + + /** + * Get a random EAN8 barcode. + * + * @return string + * + * @example '73513537' + */ + public function ean8() + { + return $this->ean(8); + } + + /** + * Get a random ISBN-10 code + * + * @see http://en.wikipedia.org/wiki/International_Standard_Book_Number + * + * @return string + * + * @example '4881416324' + */ + public function isbn10() + { + $code = static::numerify(str_repeat('#', 9)); + + return $code . Isbn::checksum($code); + } + + /** + * Get a random ISBN-13 code + * + * @see http://en.wikipedia.org/wiki/International_Standard_Book_Number + * + * @return string + * + * @example '9790404436093' + */ + public function isbn13() + { + $code = '97' . self::numberBetween(8, 9) . static::numerify(str_repeat('#', 9)); + + return $code . Ean::checksum($code); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/Base.php b/vendor/fakerphp/faker/src/Faker/Provider/Base.php new file mode 100644 index 0000000..6b9876b --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/Base.php @@ -0,0 +1,710 @@ +generator = $generator; + } + + /** + * Returns a random number between 0 and 9 + * + * @return int + */ + public static function randomDigit() + { + return mt_rand(0, 9); + } + + /** + * Returns a random number between 1 and 9 + * + * @return int + */ + public static function randomDigitNotNull() + { + return mt_rand(1, 9); + } + + /** + * Generates a random digit, which cannot be $except + * + * @param int $except + * + * @return int + */ + public static function randomDigitNot($except) + { + $result = self::numberBetween(0, 8); + + if ($result >= $except) { + ++$result; + } + + return $result; + } + + /** + * Returns a random integer with 0 to $nbDigits digits. + * + * The maximum value returned is mt_getrandmax() + * + * @param int $nbDigits Defaults to a random number between 1 and 9 + * @param bool $strict Whether the returned number should have exactly $nbDigits + * + * @example 79907610 + * + * @return int + */ + public static function randomNumber($nbDigits = null, $strict = false) + { + if (!is_bool($strict)) { + throw new \InvalidArgumentException('randomNumber() generates numbers of fixed width. To generate numbers between two boundaries, use numberBetween() instead.'); + } + + if (null === $nbDigits) { + $nbDigits = static::randomDigitNotNull(); + } + $max = 10 ** $nbDigits - 1; + + if ($max > mt_getrandmax()) { + throw new \InvalidArgumentException('randomNumber() can only generate numbers up to mt_getrandmax()'); + } + + if ($strict) { + return mt_rand(10 ** ($nbDigits - 1), $max); + } + + return mt_rand(0, $max); + } + + /** + * Return a random float number + * + * @param int $nbMaxDecimals + * @param float|int $min + * @param float|int $max + * + * @example 48.8932 + * + * @return float + */ + public static function randomFloat($nbMaxDecimals = null, $min = 0, $max = null) + { + if (null === $nbMaxDecimals) { + $nbMaxDecimals = static::randomDigit(); + } + + if (null === $max) { + $max = static::randomNumber(); + + if ($min > $max) { + $max = $min; + } + } + + if ($min > $max) { + $tmp = $min; + $min = $max; + $max = $tmp; + } + + return round($min + mt_rand() / mt_getrandmax() * ($max - $min), $nbMaxDecimals); + } + + /** + * Returns a random number between $int1 and $int2 (any order) + * + * @param int $int1 default to 0 + * @param int $int2 defaults to 32 bit max integer, ie 2147483647 + * + * @example 79907610 + * + * @return int + */ + public static function numberBetween($int1 = 0, $int2 = 2147483647) + { + $min = $int1 < $int2 ? $int1 : $int2; + $max = $int1 < $int2 ? $int2 : $int1; + + return mt_rand($min, $max); + } + + /** + * Returns the passed value + */ + public static function passthrough($value) + { + return $value; + } + + /** + * Returns a random letter from a to z + * + * @return string + */ + public static function randomLetter() + { + return chr(mt_rand(97, 122)); + } + + /** + * Returns a random ASCII character (excluding accents and special chars) + * + * @return string + */ + public static function randomAscii() + { + return chr(mt_rand(33, 126)); + } + + /** + * Returns randomly ordered subsequence of $count elements from a provided array + * + * @todo update default $count to `null` (BC) for next major version + * + * @param array|class-string|\Traversable $array Array to take elements from. Defaults to a-c + * @param int|null $count Number of elements to take. If `null` then returns random number of elements + * @param bool $allowDuplicates Allow elements to be picked several times. Defaults to false + * + * @throws \InvalidArgumentException + * @throws \LengthException When requesting more elements than provided + * + * @return array New array with $count elements from $array + */ + public static function randomElements($array = ['a', 'b', 'c'], $count = 1, $allowDuplicates = false) + { + $elements = $array; + + if (is_string($array) && function_exists('enum_exists') && enum_exists($array)) { + $elements = $array::cases(); + } + + if ($array instanceof \Traversable) { + $elements = \iterator_to_array($array, false); + } + + if (!is_array($elements)) { + throw new \InvalidArgumentException(sprintf( + 'Argument for parameter $array needs to be array, an instance of %s, or an instance of %s, got %s instead.', + \UnitEnum::class, + \Traversable::class, + is_object($array) ? get_class($array) : gettype($array), + )); + } + + $numberOfElements = count($elements); + + if (!$allowDuplicates && null !== $count && $numberOfElements < $count) { + throw new \LengthException(sprintf( + 'Cannot get %d elements, only %d in array', + $count, + $numberOfElements, + )); + } + + if (null === $count) { + $count = mt_rand(1, $numberOfElements); + } + + $randomElements = []; + + $keys = array_keys($elements); + $maxIndex = $numberOfElements - 1; + $elementHasBeenSelectedAlready = []; + $numberOfRandomElements = 0; + + while ($numberOfRandomElements < $count) { + $index = mt_rand(0, $maxIndex); + + if (!$allowDuplicates) { + if (isset($elementHasBeenSelectedAlready[$index])) { + continue; + } + + $elementHasBeenSelectedAlready[$index] = true; + } + + $key = $keys[$index]; + + $randomElements[] = $elements[$key]; + + ++$numberOfRandomElements; + } + + return $randomElements; + } + + /** + * Returns a random element from a passed array + * + * @param array|class-string|\Traversable $array + * + * @throws \InvalidArgumentException + */ + public static function randomElement($array = ['a', 'b', 'c']) + { + $elements = $array; + + if (is_string($array) && function_exists('enum_exists') && enum_exists($array)) { + $elements = $array::cases(); + } + + if ($array instanceof \Traversable) { + $elements = iterator_to_array($array, false); + } + + if ($elements === []) { + return null; + } + + if (!is_array($elements)) { + throw new \InvalidArgumentException(sprintf( + 'Argument for parameter $array needs to be array, an instance of %s, or an instance of %s, got %s instead.', + \UnitEnum::class, + \Traversable::class, + is_object($array) ? get_class($array) : gettype($array), + )); + } + + $randomElements = static::randomElements($elements, 1); + + return $randomElements[0]; + } + + /** + * Returns a random key from a passed associative array + * + * @param array $array + * + * @return int|string|null + */ + public static function randomKey($array = []) + { + if (!$array) { + return null; + } + $keys = array_keys($array); + + return $keys[mt_rand(0, count($keys) - 1)]; + } + + /** + * Returns a shuffled version of the argument. + * + * This function accepts either an array, or a string. + * + * @example $faker->shuffle([1, 2, 3]); // [2, 1, 3] + * @example $faker->shuffle('hello, world'); // 'rlo,h eold!lw' + * + * @see shuffleArray() + * @see shuffleString() + * + * @param array|string $arg The set to shuffle + * + * @return array|string The shuffled set + */ + public static function shuffle($arg = '') + { + if (is_array($arg)) { + return static::shuffleArray($arg); + } + + if (is_string($arg)) { + return static::shuffleString($arg); + } + + throw new \InvalidArgumentException('shuffle() only supports strings or arrays'); + } + + /** + * Returns a shuffled version of the array. + * + * This function does not mutate the original array. It uses the + * Fisher–Yates algorithm, which is unbiased, together with a Mersenne + * twister random generator. This function is therefore more random than + * PHP's shuffle() function, and it is seedable. + * + * @see http://en.wikipedia.org/wiki/Fisher%E2%80%93Yates_shuffle + * + * @example $faker->shuffleArray([1, 2, 3]); // [2, 1, 3] + * + * @param array $array The set to shuffle + * + * @return array The shuffled set + */ + public static function shuffleArray($array = []) + { + $shuffledArray = []; + $i = 0; + reset($array); + + foreach ($array as $key => $value) { + if ($i == 0) { + $j = 0; + } else { + $j = mt_rand(0, $i); + } + + if ($j == $i) { + $shuffledArray[] = $value; + } else { + $shuffledArray[] = $shuffledArray[$j]; + $shuffledArray[$j] = $value; + } + ++$i; + } + + return $shuffledArray; + } + + /** + * Returns a shuffled version of the string. + * + * This function does not mutate the original string. It uses the + * Fisher–Yates algorithm, which is unbiased, together with a Mersenne + * twister random generator. This function is therefore more random than + * PHP's shuffle() function, and it is seedable. Additionally, it is + * UTF8 safe if the mb extension is available. + * + * @see http://en.wikipedia.org/wiki/Fisher%E2%80%93Yates_shuffle + * + * @example $faker->shuffleString('hello, world'); // 'rlo,h eold!lw' + * + * @param string $string The set to shuffle + * @param string $encoding The string encoding (defaults to UTF-8) + * + * @return string The shuffled set + */ + public static function shuffleString($string = '', $encoding = 'UTF-8') + { + if (function_exists('mb_strlen')) { + // UTF8-safe str_split() + $array = []; + $strlen = mb_strlen($string, $encoding); + + for ($i = 0; $i < $strlen; ++$i) { + $array[] = mb_substr($string, $i, 1, $encoding); + } + } else { + $array = str_split($string, 1); + } + + return implode('', static::shuffleArray($array)); + } + + private static function replaceWildcard($string, $wildcard, $callback) + { + if (($pos = strpos($string, $wildcard)) === false) { + return $string; + } + + for ($i = $pos, $last = strrpos($string, $wildcard, $pos) + 1; $i < $last; ++$i) { + if ($string[$i] === $wildcard) { + $string[$i] = call_user_func($callback); + } + } + + return $string; + } + + /** + * Replaces all hash sign ('#') occurrences with a random number + * Replaces all percentage sign ('%') occurrences with a not null number + * + * @param string $string String that needs to bet parsed + * + * @return string + */ + public static function numerify($string = '###') + { + // instead of using randomDigit() several times, which is slow, + // count the number of hashes and generate once a large number + $toReplace = []; + + if (($pos = strpos($string, '#')) !== false) { + for ($i = $pos, $last = strrpos($string, '#', $pos) + 1; $i < $last; ++$i) { + if ($string[$i] === '#') { + $toReplace[] = $i; + } + } + } + + if ($nbReplacements = count($toReplace)) { + $maxAtOnce = strlen((string) mt_getrandmax()) - 1; + $numbers = ''; + $i = 0; + + while ($i < $nbReplacements) { + $size = min($nbReplacements - $i, $maxAtOnce); + $numbers .= str_pad(static::randomNumber($size), $size, '0', STR_PAD_LEFT); + $i += $size; + } + + for ($i = 0; $i < $nbReplacements; ++$i) { + $string[$toReplace[$i]] = $numbers[$i]; + } + } + $string = self::replaceWildcard($string, '%', [static::class, 'randomDigitNotNull']); + + return $string; + } + + /** + * Replaces all question mark ('?') occurrences with a random letter + * + * @param string $string String that needs to bet parsed + * + * @return string + */ + public static function lexify($string = '????') + { + return self::replaceWildcard($string, '?', [static::class, 'randomLetter']); + } + + /** + * Replaces hash signs ('#') and question marks ('?') with random numbers and letters + * An asterisk ('*') is replaced with either a random number or a random letter + * + * @param string $string String that needs to be parsed + * + * @return string + */ + public static function bothify($string = '## ??') + { + $string = self::replaceWildcard($string, '*', static function () { + return mt_rand(0, 1) === 1 ? '#' : '?'; + }); + + return static::lexify(static::numerify($string)); + } + + /** + * Replaces * signs with random numbers and letters and special characters + * + * @example $faker->asciify(''********'); // "s5'G!uC3" + * + * @param string $string String that needs to bet parsed + * + * @return string + */ + public static function asciify($string = '****') + { + return preg_replace_callback('/\*/u', [static::class, 'randomAscii'], $string); + } + + /** + * Transforms a basic regular expression into a random string satisfying the expression. + * + * @example $faker->regexify('[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}'); // sm0@y8k96a.ej + * + * Regex delimiters '/.../' and begin/end markers '^...$' are ignored. + * + * Only supports a small subset of the regex syntax. For instance, + * unicode, negated classes, unbounded ranges, subpatterns, back references, + * assertions, recursive patterns, and comments are not supported. Escaping + * support is extremely fragile. + * + * This method is also VERY slow. Use it only when no other formatter + * can generate the fake data you want. For instance, prefer calling + * `$faker->email` rather than `regexify` with the previous regular + * expression. + * + * Also note than `bothify` can probably do most of what this method does, + * but much faster. For instance, for a dummy email generation, try + * `$faker->bothify('?????????@???.???')`. + * + * @see https://github.com/icomefromthenet/ReverseRegex for a more robust implementation + * + * @param string $regex A regular expression (delimiters are optional) + * + * @return string + */ + public static function regexify($regex = '') + { + // ditch the anchors + $regex = preg_replace('/^\/?\^?/', '', $regex); + $regex = preg_replace('/\$?\/?$/', '', $regex); + // All {2} become {2,2} + $regex = preg_replace('/\{(\d+)\}/', '{\1,\1}', $regex); + // Single-letter quantifiers (?, *, +) become bracket quantifiers ({0,1}, {0,rand}, {1, rand}) + $regex = preg_replace('/(? 0 && $weight < 1 && mt_rand() / mt_getrandmax() <= $weight) { + return $this->generator; + } + + // new system with percentage + if (is_int($weight) && mt_rand(1, 100) <= $weight) { + return $this->generator; + } + + return new DefaultGenerator($default); + } + + /** + * Chainable method for making any formatter unique. + * + * + * // will never return twice the same value + * $faker->unique()->randomElement(array(1, 2, 3)); + * + * + * @param bool $reset If set to true, resets the list of existing values + * @param int $maxRetries Maximum number of retries to find a unique value, + * After which an OverflowException is thrown. + * + * @throws \OverflowException When no unique value can be found by iterating $maxRetries times + * + * @return UniqueGenerator A proxy class returning only non-existing values + */ + public function unique($reset = false, $maxRetries = 10000) + { + if ($reset || !$this->unique) { + $this->unique = new UniqueGenerator($this->generator, $maxRetries); + } + + return $this->unique; + } + + /** + * Chainable method for forcing any formatter to return only valid values. + * + * The value validity is determined by a function passed as first argument. + * + * + * $values = array(); + * $evenValidator = function ($digit) { + * return $digit % 2 === 0; + * }; + * for ($i=0; $i < 10; $i++) { + * $values []= $faker->valid($evenValidator)->randomDigit; + * } + * print_r($values); // [0, 4, 8, 4, 2, 6, 0, 8, 8, 6] + * + * + * @param Closure $validator A function returning true for valid values + * @param int $maxRetries Maximum number of retries to find a unique value, + * After which an OverflowException is thrown. + * + * @throws \OverflowException When no valid value can be found by iterating $maxRetries times + * + * @return ValidGenerator A proxy class returning only valid values + */ + public function valid($validator = null, $maxRetries = 10000) + { + return new ValidGenerator($this->generator, $validator, $maxRetries); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/Biased.php b/vendor/fakerphp/faker/src/Faker/Provider/Biased.php new file mode 100644 index 0000000..42c70bc --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/Biased.php @@ -0,0 +1,65 @@ +generator->parse($format); + } + + /** + * @example 'Ltd' + * + * @return string + */ + public static function companySuffix() + { + return static::randomElement(static::$companySuffix); + } + + /** + * @example 'Job' + * + * @return string + */ + public function jobTitle() + { + $format = static::randomElement(static::$jobTitleFormat); + + return $this->generator->parse($format); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/DateTime.php b/vendor/fakerphp/faker/src/Faker/Provider/DateTime.php new file mode 100644 index 0000000..a8a1992 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/DateTime.php @@ -0,0 +1,389 @@ +getTimestamp(); + } + + return strtotime(empty($max) ? 'now' : $max); + } + + /** + * Get a timestamp between January 1, 1970, and now + * + * @param \DateTime|int|string $max maximum timestamp used as random end limit, default to "now" + * + * @return int + * + * @example 1061306726 + */ + public static function unixTime($max = 'now') + { + return self::numberBetween(0, static::getMaxTimestamp($max)); + } + + /** + * Get a datetime object for a date between January 1, 1970 and now + * + * @param \DateTime|int|string $max maximum timestamp used as random end limit, default to "now" + * @param string $timezone time zone in which the date time should be set, default to DateTime::$defaultTimezone, if set, otherwise the result of `date_default_timezone_get` + * + * @return \DateTime + * + * @see http://php.net/manual/en/timezones.php + * @see http://php.net/manual/en/function.date-default-timezone-get.php + * + * @example DateTime('2005-08-16 20:39:21') + */ + public static function dateTime($max = 'now', $timezone = null) + { + return static::setTimezone( + new \DateTime('@' . static::unixTime($max)), + $timezone, + ); + } + + /** + * Get a datetime object for a date between January 1, 001 and now + * + * @param \DateTime|int|string $max maximum timestamp used as random end limit, default to "now" + * @param string|null $timezone time zone in which the date time should be set, default to DateTime::$defaultTimezone, if set, otherwise the result of `date_default_timezone_get` + * + * @return \DateTime + * + * @see http://php.net/manual/en/timezones.php + * @see http://php.net/manual/en/function.date-default-timezone-get.php + * + * @example DateTime('1265-03-22 21:15:52') + */ + public static function dateTimeAD($max = 'now', $timezone = null) + { + $min = (PHP_INT_SIZE > 4 ? -62135597361 : -PHP_INT_MAX); + + return static::setTimezone( + new \DateTime('@' . self::numberBetween($min, static::getMaxTimestamp($max))), + $timezone, + ); + } + + /** + * get a date string formatted with ISO8601 + * + * @param \DateTime|int|string $max maximum timestamp used as random end limit, default to "now" + * + * @return string + * + * @example '2003-10-21T16:05:52+0000' + */ + public static function iso8601($max = 'now') + { + return static::date(\DateTime::ISO8601, $max); + } + + /** + * Get a date string between January 1, 1970 and now + * + * @param string $format + * @param \DateTime|int|string $max maximum timestamp used as random end limit, default to "now" + * + * @return string + * + * @example '2008-11-27' + */ + public static function date($format = 'Y-m-d', $max = 'now') + { + return static::dateTime($max)->format($format); + } + + /** + * Get a time string (24h format by default) + * + * @param string $format + * @param \DateTime|int|string $max maximum timestamp used as random end limit, default to "now" + * + * @return string + * + * @example '15:02:34' + */ + public static function time($format = 'H:i:s', $max = 'now') + { + return static::dateTime($max)->format($format); + } + + /** + * Get a DateTime object based on a random date between two given dates. + * Accepts date strings that can be recognized by strtotime(). + * + * @param \DateTime|string $startDate Defaults to 30 years ago + * @param \DateTime|string $endDate Defaults to "now" + * @param string|null $timezone time zone in which the date time should be set, default to DateTime::$defaultTimezone, if set, otherwise the result of `date_default_timezone_get` + * + * @return \DateTime + * + * @see http://php.net/manual/en/timezones.php + * @see http://php.net/manual/en/function.date-default-timezone-get.php + * + * @example DateTime('1999-02-02 11:42:52') + */ + public static function dateTimeBetween($startDate = '-30 years', $endDate = 'now', $timezone = null) + { + $startTimestamp = $startDate instanceof \DateTime ? $startDate->getTimestamp() : strtotime($startDate); + $endTimestamp = static::getMaxTimestamp($endDate); + + if ($startTimestamp > $endTimestamp) { + throw new \InvalidArgumentException('Start date must be anterior to end date.'); + } + + $timestamp = self::numberBetween($startTimestamp, $endTimestamp); + + return static::setTimezone( + new \DateTime('@' . $timestamp), + $timezone, + ); + } + + /** + * Get a DateTime object based on a random date between one given date and + * an interval + * Accepts date string that can be recognized by strtotime(). + * + * @param \DateTime|string $date Defaults to 30 years ago + * @param string $interval Defaults to 5 days after + * @param string|null $timezone time zone in which the date time should be set, default to DateTime::$defaultTimezone, if set, otherwise the result of `date_default_timezone_get` + * + * @return \DateTime + * + * @example dateTimeInInterval('1999-02-02 11:42:52', '+ 5 days') + * + * @see http://php.net/manual/en/timezones.php + * @see http://php.net/manual/en/function.date-default-timezone-get.php + */ + public static function dateTimeInInterval($date = '-30 years', $interval = '+5 days', $timezone = null) + { + $intervalObject = \DateInterval::createFromDateString($interval); + $datetime = $date instanceof \DateTime ? $date : new \DateTime($date); + $otherDatetime = clone $datetime; + $otherDatetime->add($intervalObject); + + $begin = min($datetime, $otherDatetime); + $end = $datetime === $begin ? $otherDatetime : $datetime; + + return static::dateTimeBetween( + $begin, + $end, + $timezone, + ); + } + + /** + * Get a date time object somewhere within a century. + * + * @param \DateTime|int|string $max maximum timestamp used as random end limit, default to "now" + * @param string|null $timezone time zone in which the date time should be set, default to DateTime::$defaultTimezone, if set, otherwise the result of `date_default_timezone_get` + * + * @return \DateTime + */ + public static function dateTimeThisCentury($max = 'now', $timezone = null) + { + return static::dateTimeBetween('-100 year', $max, $timezone); + } + + /** + * Get a date time object somewhere within a decade. + * + * @param \DateTime|int|string $max maximum timestamp used as random end limit, default to "now" + * @param string|null $timezone time zone in which the date time should be set, default to DateTime::$defaultTimezone, if set, otherwise the result of `date_default_timezone_get` + * + * @return \DateTime + */ + public static function dateTimeThisDecade($max = 'now', $timezone = null) + { + return static::dateTimeBetween('-10 year', $max, $timezone); + } + + /** + * Get a date time object somewhere inside the current year. + * + * @param \DateTime|int|string $max maximum timestamp used as random end limit, default to "now" + * @param string|null $timezone time zone in which the date time should be set, default to DateTime::$defaultTimezone, if set, otherwise the result of `date_default_timezone_get` + * + * @return \DateTime + */ + public static function dateTimeThisYear($max = 'now', $timezone = null) + { + return static::dateTimeBetween('first day of january this year', $max, $timezone); + } + + /** + * Get a date time object somewhere within a month. + * + * @param \DateTime|int|string $max maximum timestamp used as random end limit, default to "now" + * @param string|null $timezone time zone in which the date time should be set, default to DateTime::$defaultTimezone, if set, otherwise the result of `date_default_timezone_get` + * + * @return \DateTime + */ + public static function dateTimeThisMonth($max = 'now', $timezone = null) + { + return static::dateTimeBetween('-1 month', $max, $timezone); + } + + /** + * Get a string containing either "am" or "pm". + * + * @param \DateTime|int|string $max maximum timestamp used as random end limit, default to "now" + * + * @return string + * + * @example 'am' + */ + public static function amPm($max = 'now') + { + return static::dateTime($max)->format('a'); + } + + /** + * @param \DateTime|int|string $max maximum timestamp used as random end limit, default to "now" + * + * @return string + * + * @example '22' + */ + public static function dayOfMonth($max = 'now') + { + return static::dateTime($max)->format('d'); + } + + /** + * @param \DateTime|int|string $max maximum timestamp used as random end limit, default to "now" + * + * @return string + * + * @example 'Tuesday' + */ + public static function dayOfWeek($max = 'now') + { + return static::dateTime($max)->format('l'); + } + + /** + * @param \DateTime|int|string $max maximum timestamp used as random end limit, default to "now" + * + * @return string + * + * @example '7' + */ + public static function month($max = 'now') + { + return static::dateTime($max)->format('m'); + } + + /** + * @param \DateTime|int|string $max maximum timestamp used as random end limit, default to "now" + * + * @return string + * + * @example 'September' + */ + public static function monthName($max = 'now') + { + return static::dateTime($max)->format('F'); + } + + /** + * @param \DateTime|int|string $max maximum timestamp used as random end limit, default to "now" + * + * @return string + * + * @example '1987' + */ + public static function year($max = 'now') + { + return static::dateTime($max)->format('Y'); + } + + /** + * @return string + * + * @example 'XVII' + */ + public static function century() + { + return static::randomElement(static::$century); + } + + /** + * @return string + * + * @example 'Europe/Paris' + */ + public static function timezone(?string $countryCode = null) + { + if ($countryCode) { + $timezones = \DateTimeZone::listIdentifiers(\DateTimeZone::PER_COUNTRY, $countryCode); + } else { + $timezones = \DateTimeZone::listIdentifiers(); + } + + return static::randomElement($timezones); + } + + /** + * Internal method to set the time zone on a DateTime. + * + * @param string|null $timezone + * + * @return \DateTime + */ + private static function setTimezone(\DateTime $dt, $timezone) + { + return $dt->setTimezone(new \DateTimeZone(static::resolveTimezone($timezone))); + } + + /** + * Sets default time zone. + * + * @param string $timezone + */ + public static function setDefaultTimezone($timezone = null) + { + static::$defaultTimezone = $timezone; + } + + /** + * Gets default time zone. + * + * @return string|null + */ + public static function getDefaultTimezone() + { + return static::$defaultTimezone; + } + + /** + * @param string|null $timezone + * + * @return string|null + */ + private static function resolveTimezone($timezone) + { + return (null === $timezone) ? ((null === static::$defaultTimezone) ? date_default_timezone_get() : static::$defaultTimezone) : $timezone; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/File.php b/vendor/fakerphp/faker/src/Faker/Provider/File.php new file mode 100644 index 0000000..3cf3db9 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/File.php @@ -0,0 +1,610 @@ + file extension(s) + * + * @see http://svn.apache.org/repos/asf/httpd/httpd/trunk/docs/conf/mime.types + */ + protected static $mimeTypes = [ + 'application/atom+xml' => 'atom', + 'application/ecmascript' => 'ecma', + 'application/emma+xml' => 'emma', + 'application/epub+zip' => 'epub', + 'application/java-archive' => 'jar', + 'application/java-vm' => 'class', + 'application/javascript' => 'js', + 'application/json' => 'json', + 'application/jsonml+json' => 'jsonml', + 'application/lost+xml' => 'lostxml', + 'application/mathml+xml' => 'mathml', + 'application/mets+xml' => 'mets', + 'application/mods+xml' => 'mods', + 'application/mp4' => 'mp4s', + 'application/msword' => ['doc', 'dot'], + 'application/octet-stream' => [ + 'bin', + 'dms', + 'lrf', + 'mar', + 'so', + 'dist', + 'distz', + 'pkg', + 'bpk', + 'dump', + 'elc', + 'deploy', + ], + 'application/ogg' => 'ogx', + 'application/omdoc+xml' => 'omdoc', + 'application/pdf' => 'pdf', + 'application/pgp-encrypted' => 'pgp', + 'application/pgp-signature' => ['asc', 'sig'], + 'application/pkix-pkipath' => 'pkipath', + 'application/pkixcmp' => 'pki', + 'application/pls+xml' => 'pls', + 'application/postscript' => ['ai', 'eps', 'ps'], + 'application/pskc+xml' => 'pskcxml', + 'application/rdf+xml' => 'rdf', + 'application/reginfo+xml' => 'rif', + 'application/rss+xml' => 'rss', + 'application/rtf' => 'rtf', + 'application/sbml+xml' => 'sbml', + 'application/vnd.adobe.air-application-installer-package+zip' => 'air', + 'application/vnd.adobe.xdp+xml' => 'xdp', + 'application/vnd.adobe.xfdf' => 'xfdf', + 'application/vnd.ahead.space' => 'ahead', + 'application/vnd.dart' => 'dart', + 'application/vnd.data-vision.rdz' => 'rdz', + 'application/vnd.dece.data' => ['uvf', 'uvvf', 'uvd', 'uvvd'], + 'application/vnd.dece.ttml+xml' => ['uvt', 'uvvt'], + 'application/vnd.dece.unspecified' => ['uvx', 'uvvx'], + 'application/vnd.dece.zip' => ['uvz', 'uvvz'], + 'application/vnd.denovo.fcselayout-link' => 'fe_launch', + 'application/vnd.dna' => 'dna', + 'application/vnd.dolby.mlp' => 'mlp', + 'application/vnd.dpgraph' => 'dpg', + 'application/vnd.dreamfactory' => 'dfac', + 'application/vnd.ds-keypoint' => 'kpxx', + 'application/vnd.dvb.ait' => 'ait', + 'application/vnd.dvb.service' => 'svc', + 'application/vnd.dynageo' => 'geo', + 'application/vnd.ecowin.chart' => 'mag', + 'application/vnd.enliven' => 'nml', + 'application/vnd.epson.esf' => 'esf', + 'application/vnd.epson.msf' => 'msf', + 'application/vnd.epson.quickanime' => 'qam', + 'application/vnd.epson.salt' => 'slt', + 'application/vnd.epson.ssf' => 'ssf', + 'application/vnd.ezpix-album' => 'ez2', + 'application/vnd.ezpix-package' => 'ez3', + 'application/vnd.fdf' => 'fdf', + 'application/vnd.fdsn.mseed' => 'mseed', + 'application/vnd.fdsn.seed' => ['seed', 'dataless'], + 'application/vnd.flographit' => 'gph', + 'application/vnd.fluxtime.clip' => 'ftc', + 'application/vnd.hal+xml' => 'hal', + 'application/vnd.hydrostatix.sof-data' => 'sfd-hdstx', + 'application/vnd.ibm.minipay' => 'mpy', + 'application/vnd.ibm.secure-container' => 'sc', + 'application/vnd.iccprofile' => ['icc', 'icm'], + 'application/vnd.igloader' => 'igl', + 'application/vnd.immervision-ivp' => 'ivp', + 'application/vnd.kde.karbon' => 'karbon', + 'application/vnd.kde.kchart' => 'chrt', + 'application/vnd.kde.kformula' => 'kfo', + 'application/vnd.kde.kivio' => 'flw', + 'application/vnd.kde.kontour' => 'kon', + 'application/vnd.kde.kpresenter' => ['kpr', 'kpt'], + 'application/vnd.kde.kspread' => 'ksp', + 'application/vnd.kde.kword' => ['kwd', 'kwt'], + 'application/vnd.kenameaapp' => 'htke', + 'application/vnd.kidspiration' => 'kia', + 'application/vnd.kinar' => ['kne', 'knp'], + 'application/vnd.koan' => ['skp', 'skd', 'skt', 'skm'], + 'application/vnd.kodak-descriptor' => 'sse', + 'application/vnd.las.las+xml' => 'lasxml', + 'application/vnd.llamagraphics.life-balance.desktop' => 'lbd', + 'application/vnd.llamagraphics.life-balance.exchange+xml' => 'lbe', + 'application/vnd.lotus-1-2-3' => '123', + 'application/vnd.lotus-approach' => 'apr', + 'application/vnd.lotus-freelance' => 'pre', + 'application/vnd.lotus-notes' => 'nsf', + 'application/vnd.lotus-organizer' => 'org', + 'application/vnd.lotus-screencam' => 'scm', + 'application/vnd.mozilla.xul+xml' => 'xul', + 'application/vnd.ms-artgalry' => 'cil', + 'application/vnd.ms-cab-compressed' => 'cab', + 'application/vnd.ms-excel' => [ + 'xls', + 'xlm', + 'xla', + 'xlc', + 'xlt', + 'xlw', + ], + 'application/vnd.ms-excel.addin.macroenabled.12' => 'xlam', + 'application/vnd.ms-excel.sheet.binary.macroenabled.12' => 'xlsb', + 'application/vnd.ms-excel.sheet.macroenabled.12' => 'xlsm', + 'application/vnd.ms-excel.template.macroenabled.12' => 'xltm', + 'application/vnd.ms-fontobject' => 'eot', + 'application/vnd.ms-htmlhelp' => 'chm', + 'application/vnd.ms-ims' => 'ims', + 'application/vnd.ms-lrm' => 'lrm', + 'application/vnd.ms-officetheme' => 'thmx', + 'application/vnd.ms-pki.seccat' => 'cat', + 'application/vnd.ms-pki.stl' => 'stl', + 'application/vnd.ms-powerpoint' => ['ppt', 'pps', 'pot'], + 'application/vnd.ms-powerpoint.addin.macroenabled.12' => 'ppam', + 'application/vnd.ms-powerpoint.presentation.macroenabled.12' => 'pptm', + 'application/vnd.ms-powerpoint.slide.macroenabled.12' => 'sldm', + 'application/vnd.ms-powerpoint.slideshow.macroenabled.12' => 'ppsm', + 'application/vnd.ms-powerpoint.template.macroenabled.12' => 'potm', + 'application/vnd.ms-project' => ['mpp', 'mpt'], + 'application/vnd.ms-word.document.macroenabled.12' => 'docm', + 'application/vnd.ms-word.template.macroenabled.12' => 'dotm', + 'application/vnd.ms-works' => ['wps', 'wks', 'wcm', 'wdb'], + 'application/vnd.ms-wpl' => 'wpl', + 'application/vnd.ms-xpsdocument' => 'xps', + 'application/vnd.mseq' => 'mseq', + 'application/vnd.musician' => 'mus', + 'application/vnd.oasis.opendocument.chart' => 'odc', + 'application/vnd.oasis.opendocument.chart-template' => 'otc', + 'application/vnd.oasis.opendocument.database' => 'odb', + 'application/vnd.oasis.opendocument.formula' => 'odf', + 'application/vnd.oasis.opendocument.formula-template' => 'odft', + 'application/vnd.oasis.opendocument.graphics' => 'odg', + 'application/vnd.oasis.opendocument.graphics-template' => 'otg', + 'application/vnd.oasis.opendocument.image' => 'odi', + 'application/vnd.oasis.opendocument.image-template' => 'oti', + 'application/vnd.oasis.opendocument.presentation' => 'odp', + 'application/vnd.oasis.opendocument.presentation-template' => 'otp', + 'application/vnd.oasis.opendocument.spreadsheet' => 'ods', + 'application/vnd.oasis.opendocument.spreadsheet-template' => 'ots', + 'application/vnd.oasis.opendocument.text' => 'odt', + 'application/vnd.oasis.opendocument.text-master' => 'odm', + 'application/vnd.oasis.opendocument.text-template' => 'ott', + 'application/vnd.oasis.opendocument.text-web' => 'oth', + 'application/vnd.olpc-sugar' => 'xo', + 'application/vnd.oma.dd2+xml' => 'dd2', + 'application/vnd.openofficeorg.extension' => 'oxt', + 'application/vnd.openxmlformats-officedocument.presentationml.presentation' => 'pptx', + 'application/vnd.openxmlformats-officedocument.presentationml.slide' => 'sldx', + 'application/vnd.openxmlformats-officedocument.presentationml.slideshow' => 'ppsx', + 'application/vnd.openxmlformats-officedocument.presentationml.template' => 'potx', + 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' => 'xlsx', + 'application/vnd.openxmlformats-officedocument.spreadsheetml.template' => 'xltx', + 'application/vnd.openxmlformats-officedocument.wordprocessingml.document' => 'docx', + 'application/vnd.openxmlformats-officedocument.wordprocessingml.template' => 'dotx', + 'application/vnd.pvi.ptid1' => 'ptid', + 'application/vnd.quark.quarkxpress' => [ + 'qxd', + 'qxt', + 'qwd', + 'qwt', + 'qxl', + 'qxb', + ], + 'application/vnd.realvnc.bed' => 'bed', + 'application/vnd.recordare.musicxml' => 'mxl', + 'application/vnd.recordare.musicxml+xml' => 'musicxml', + 'application/vnd.rig.cryptonote' => 'cryptonote', + 'application/vnd.rim.cod' => 'cod', + 'application/vnd.rn-realmedia' => 'rm', + 'application/vnd.rn-realmedia-vbr' => 'rmvb', + 'application/vnd.route66.link66+xml' => 'link66', + 'application/vnd.sailingtracker.track' => 'st', + 'application/vnd.seemail' => 'see', + 'application/vnd.sema' => 'sema', + 'application/vnd.semd' => 'semd', + 'application/vnd.semf' => 'semf', + 'application/vnd.shana.informed.formdata' => 'ifm', + 'application/vnd.shana.informed.formtemplate' => 'itp', + 'application/vnd.shana.informed.interchange' => 'iif', + 'application/vnd.shana.informed.package' => 'ipk', + 'application/vnd.simtech-mindmapper' => ['twd', 'twds'], + 'application/vnd.smaf' => 'mmf', + 'application/vnd.stepmania.stepchart' => 'sm', + 'application/vnd.sun.xml.calc' => 'sxc', + 'application/vnd.sun.xml.calc.template' => 'stc', + 'application/vnd.sun.xml.draw' => 'sxd', + 'application/vnd.sun.xml.draw.template' => 'std', + 'application/vnd.sun.xml.impress' => 'sxi', + 'application/vnd.sun.xml.impress.template' => 'sti', + 'application/vnd.sun.xml.math' => 'sxm', + 'application/vnd.sun.xml.writer' => 'sxw', + 'application/vnd.sun.xml.writer.global' => 'sxg', + 'application/vnd.sun.xml.writer.template' => 'stw', + 'application/vnd.sus-calendar' => ['sus', 'susp'], + 'application/vnd.svd' => 'svd', + 'application/vnd.symbian.install' => ['sis', 'sisx'], + 'application/vnd.syncml+xml' => 'xsm', + 'application/vnd.syncml.dm+wbxml' => 'bdm', + 'application/vnd.syncml.dm+xml' => 'xdm', + 'application/vnd.tao.intent-module-archive' => 'tao', + 'application/vnd.tcpdump.pcap' => ['pcap', 'cap', 'dmp'], + 'application/vnd.tmobile-livetv' => 'tmo', + 'application/vnd.trid.tpt' => 'tpt', + 'application/vnd.triscape.mxs' => 'mxs', + 'application/vnd.trueapp' => 'tra', + 'application/vnd.ufdl' => ['ufd', 'ufdl'], + 'application/vnd.uiq.theme' => 'utz', + 'application/vnd.umajin' => 'umj', + 'application/vnd.unity' => 'unityweb', + 'application/vnd.uoml+xml' => 'uoml', + 'application/vnd.vcx' => 'vcx', + 'application/vnd.visio' => ['vsd', 'vst', 'vss', 'vsw'], + 'application/vnd.visionary' => 'vis', + 'application/vnd.vsf' => 'vsf', + 'application/vnd.wap.wbxml' => 'wbxml', + 'application/vnd.wap.wmlc' => 'wmlc', + 'application/vnd.wap.wmlscriptc' => 'wmlsc', + 'application/vnd.webturbo' => 'wtb', + 'application/vnd.wolfram.player' => 'nbp', + 'application/vnd.wordperfect' => 'wpd', + 'application/vnd.wqd' => 'wqd', + 'application/vnd.wt.stf' => 'stf', + 'application/vnd.xara' => 'xar', + 'application/vnd.xfdl' => 'xfdl', + 'application/voicexml+xml' => 'vxml', + 'application/widget' => 'wgt', + 'application/winhlp' => 'hlp', + 'application/wsdl+xml' => 'wsdl', + 'application/wspolicy+xml' => 'wspolicy', + 'application/x-7z-compressed' => '7z', + 'application/x-bittorrent' => 'torrent', + 'application/x-blorb' => ['blb', 'blorb'], + 'application/x-bzip' => 'bz', + 'application/x-cdlink' => 'vcd', + 'application/x-cfs-compressed' => 'cfs', + 'application/x-chat' => 'chat', + 'application/x-chess-pgn' => 'pgn', + 'application/x-conference' => 'nsc', + 'application/x-cpio' => 'cpio', + 'application/x-csh' => 'csh', + 'application/x-debian-package' => ['deb', 'udeb'], + 'application/x-dgc-compressed' => 'dgc', + 'application/x-director' => [ + 'dir', + 'dcr', + 'dxr', + 'cst', + 'cct', + 'cxt', + 'w3d', + 'fgd', + 'swa', + ], + 'application/x-font-ttf' => ['ttf', 'ttc'], + 'application/x-font-type1' => ['pfa', 'pfb', 'pfm', 'afm'], + 'application/x-font-woff' => 'woff', + 'application/x-freearc' => 'arc', + 'application/x-futuresplash' => 'spl', + 'application/x-gca-compressed' => 'gca', + 'application/x-glulx' => 'ulx', + 'application/x-gnumeric' => 'gnumeric', + 'application/x-gramps-xml' => 'gramps', + 'application/x-gtar' => 'gtar', + 'application/x-hdf' => 'hdf', + 'application/x-install-instructions' => 'install', + 'application/x-iso9660-image' => 'iso', + 'application/x-java-jnlp-file' => 'jnlp', + 'application/x-latex' => 'latex', + 'application/x-lzh-compressed' => ['lzh', 'lha'], + 'application/x-mie' => 'mie', + 'application/x-mobipocket-ebook' => ['prc', 'mobi'], + 'application/x-ms-application' => 'application', + 'application/x-ms-shortcut' => 'lnk', + 'application/x-ms-wmd' => 'wmd', + 'application/x-ms-wmz' => 'wmz', + 'application/x-ms-xbap' => 'xbap', + 'application/x-msaccess' => 'mdb', + 'application/x-msbinder' => 'obd', + 'application/x-mscardfile' => 'crd', + 'application/x-msclip' => 'clp', + 'application/x-msdownload' => ['exe', 'dll', 'com', 'bat', 'msi'], + 'application/x-msmediaview' => [ + 'mvb', + 'm13', + 'm14', + ], + 'application/x-msmetafile' => ['wmf', 'wmz', 'emf', 'emz'], + 'application/x-rar-compressed' => 'rar', + 'application/x-research-info-systems' => 'ris', + 'application/x-sh' => 'sh', + 'application/x-shar' => 'shar', + 'application/x-shockwave-flash' => 'swf', + 'application/x-silverlight-app' => 'xap', + 'application/x-sql' => 'sql', + 'application/x-stuffit' => 'sit', + 'application/x-stuffitx' => 'sitx', + 'application/x-subrip' => 'srt', + 'application/x-sv4cpio' => 'sv4cpio', + 'application/x-sv4crc' => 'sv4crc', + 'application/x-t3vm-image' => 't3', + 'application/x-tads' => 'gam', + 'application/x-tar' => 'tar', + 'application/x-tcl' => 'tcl', + 'application/x-tex' => 'tex', + 'application/x-tex-tfm' => 'tfm', + 'application/x-texinfo' => ['texinfo', 'texi'], + 'application/x-tgif' => 'obj', + 'application/x-ustar' => 'ustar', + 'application/x-wais-source' => 'src', + 'application/x-x509-ca-cert' => ['der', 'crt'], + 'application/x-xfig' => 'fig', + 'application/x-xliff+xml' => 'xlf', + 'application/x-xpinstall' => 'xpi', + 'application/x-xz' => 'xz', + 'application/x-zmachine' => 'z1', + 'application/xaml+xml' => 'xaml', + 'application/xcap-diff+xml' => 'xdf', + 'application/xenc+xml' => 'xenc', + 'application/xhtml+xml' => ['xhtml', 'xht'], + 'application/xml' => ['xml', 'xsl'], + 'application/xml-dtd' => 'dtd', + 'application/xop+xml' => 'xop', + 'application/xproc+xml' => 'xpl', + 'application/xslt+xml' => 'xslt', + 'application/xspf+xml' => 'xspf', + 'application/xv+xml' => ['mxml', 'xhvml', 'xvml', 'xvm'], + 'application/yang' => 'yang', + 'application/yin+xml' => 'yin', + 'application/zip' => 'zip', + 'audio/adpcm' => 'adp', + 'audio/basic' => ['au', 'snd'], + 'audio/midi' => ['mid', 'midi', 'kar', 'rmi'], + 'audio/mp4' => 'mp4a', + 'audio/mpeg' => [ + 'mpga', + 'mp2', + 'mp2a', + 'mp3', + 'm2a', + 'm3a', + ], + 'audio/ogg' => ['oga', 'ogg', 'spx'], + 'audio/vnd.dece.audio' => ['uva', 'uvva'], + 'audio/vnd.rip' => 'rip', + 'audio/webm' => 'weba', + 'audio/x-aac' => 'aac', + 'audio/x-aiff' => ['aif', 'aiff', 'aifc'], + 'audio/x-caf' => 'caf', + 'audio/x-flac' => 'flac', + 'audio/x-matroska' => 'mka', + 'audio/x-mpegurl' => 'm3u', + 'audio/x-ms-wax' => 'wax', + 'audio/x-ms-wma' => 'wma', + 'audio/x-pn-realaudio' => ['ram', 'ra'], + 'audio/x-pn-realaudio-plugin' => 'rmp', + 'audio/x-wav' => 'wav', + 'audio/xm' => 'xm', + 'image/bmp' => 'bmp', + 'image/cgm' => 'cgm', + 'image/g3fax' => 'g3', + 'image/gif' => 'gif', + 'image/ief' => 'ief', + 'image/jpeg' => ['jpeg', 'jpg', 'jpe'], + 'image/ktx' => 'ktx', + 'image/png' => 'png', + 'image/prs.btif' => 'btif', + 'image/sgi' => 'sgi', + 'image/svg+xml' => ['svg', 'svgz'], + 'image/tiff' => ['tiff', 'tif'], + 'image/vnd.adobe.photoshop' => 'psd', + 'image/vnd.dece.graphic' => ['uvi', 'uvvi', 'uvg', 'uvvg'], + 'image/vnd.dvb.subtitle' => 'sub', + 'image/vnd.djvu' => ['djvu', 'djv'], + 'image/vnd.dwg' => 'dwg', + 'image/vnd.dxf' => 'dxf', + 'image/vnd.fastbidsheet' => 'fbs', + 'image/vnd.fpx' => 'fpx', + 'image/vnd.fst' => 'fst', + 'image/vnd.fujixerox.edmics-mmr' => 'mmr', + 'image/vnd.fujixerox.edmics-rlc' => 'rlc', + 'image/vnd.ms-modi' => 'mdi', + 'image/vnd.ms-photo' => 'wdp', + 'image/vnd.net-fpx' => 'npx', + 'image/vnd.wap.wbmp' => 'wbmp', + 'image/vnd.xiff' => 'xif', + 'image/webp' => 'webp', + 'image/x-3ds' => '3ds', + 'image/x-cmu-raster' => 'ras', + 'image/x-cmx' => 'cmx', + 'image/x-freehand' => ['fh', 'fhc', 'fh4', 'fh5', 'fh7'], + 'image/x-icon' => 'ico', + 'image/x-mrsid-image' => 'sid', + 'image/x-pcx' => 'pcx', + 'image/x-pict' => ['pic', 'pct'], + 'image/x-portable-anymap' => 'pnm', + 'image/x-portable-bitmap' => 'pbm', + 'image/x-portable-graymap' => 'pgm', + 'image/x-portable-pixmap' => 'ppm', + 'image/x-rgb' => 'rgb', + 'image/x-tga' => 'tga', + 'image/x-xbitmap' => 'xbm', + 'image/x-xpixmap' => 'xpm', + 'image/x-xwindowdump' => 'xwd', + 'message/rfc822' => ['eml', 'mime'], + 'model/iges' => ['igs', 'iges'], + 'model/mesh' => ['msh', 'mesh', 'silo'], + 'model/vnd.collada+xml' => 'dae', + 'model/vnd.dwf' => 'dwf', + 'model/vnd.gdl' => 'gdl', + 'model/vnd.gtw' => 'gtw', + 'model/vnd.mts' => 'mts', + 'model/vnd.vtu' => 'vtu', + 'model/vrml' => ['wrl', 'vrml'], + 'model/x3d+binary' => 'x3db', + 'model/x3d+vrml' => 'x3dv', + 'model/x3d+xml' => 'x3d', + 'text/cache-manifest' => 'appcache', + 'text/calendar' => ['ics', 'ifb'], + 'text/css' => 'css', + 'text/csv' => 'csv', + 'text/html' => ['html', 'htm'], + 'text/n3' => 'n3', + 'text/plain' => [ + 'txt', + 'text', + 'conf', + 'def', + 'list', + 'log', + 'in', + ], + 'text/prs.lines.tag' => 'dsc', + 'text/richtext' => 'rtx', + 'text/sgml' => ['sgml', 'sgm'], + 'text/tab-separated-values' => 'tsv', + 'text/troff' => [ + 't', + 'tr', + 'roff', + 'man', + 'me', + 'ms', + ], + 'text/turtle' => 'ttl', + 'text/uri-list' => ['uri', 'uris', 'urls'], + 'text/vcard' => 'vcard', + 'text/vnd.curl' => 'curl', + 'text/vnd.curl.dcurl' => 'dcurl', + 'text/vnd.curl.scurl' => 'scurl', + 'text/vnd.curl.mcurl' => 'mcurl', + 'text/vnd.dvb.subtitle' => 'sub', + 'text/vnd.fly' => 'fly', + 'text/vnd.fmi.flexstor' => 'flx', + 'text/vnd.graphviz' => 'gv', + 'text/vnd.in3d.3dml' => '3dml', + 'text/vnd.in3d.spot' => 'spot', + 'text/vnd.sun.j2me.app-descriptor' => 'jad', + 'text/vnd.wap.wml' => 'wml', + 'text/vnd.wap.wmlscript' => 'wmls', + 'text/x-asm' => ['s', 'asm'], + 'text/x-fortran' => ['f', 'for', 'f77', 'f90'], + 'text/x-java-source' => 'java', + 'text/x-opml' => 'opml', + 'text/x-pascal' => ['p', 'pas'], + 'text/x-nfo' => 'nfo', + 'text/x-setext' => 'etx', + 'text/x-sfv' => 'sfv', + 'text/x-uuencode' => 'uu', + 'text/x-vcalendar' => 'vcs', + 'text/x-vcard' => 'vcf', + 'video/3gpp' => '3gp', + 'video/3gpp2' => '3g2', + 'video/h261' => 'h261', + 'video/h263' => 'h263', + 'video/h264' => 'h264', + 'video/jpeg' => 'jpgv', + 'video/jpm' => ['jpm', 'jpgm'], + 'video/mj2' => 'mj2', + 'video/mp4' => 'mp4', + 'video/mpeg' => ['mpeg', 'mpg', 'mpe', 'm1v', 'm2v'], + 'video/ogg' => 'ogv', + 'video/quicktime' => ['qt', 'mov'], + 'video/vnd.dece.hd' => ['uvh', 'uvvh'], + 'video/vnd.dece.mobile' => ['uvm', 'uvvm'], + 'video/vnd.dece.pd' => ['uvp', 'uvvp'], + 'video/vnd.dece.sd' => ['uvs', 'uvvs'], + 'video/vnd.dece.video' => ['uvv', 'uvvv'], + 'video/vnd.dvb.file' => 'dvb', + 'video/vnd.fvt' => 'fvt', + 'video/vnd.mpegurl' => ['mxu', 'm4u'], + 'video/vnd.ms-playready.media.pyv' => 'pyv', + 'video/vnd.uvvu.mp4' => ['uvu', 'uvvu'], + 'video/vnd.vivo' => 'viv', + 'video/webm' => 'webm', + 'video/x-f4v' => 'f4v', + 'video/x-fli' => 'fli', + 'video/x-flv' => 'flv', + 'video/x-m4v' => 'm4v', + 'video/x-matroska' => ['mkv', 'mk3d', 'mks'], + 'video/x-mng' => 'mng', + 'video/x-ms-asf' => ['asf', 'asx'], + 'video/x-ms-vob' => 'vob', + 'video/x-ms-wm' => 'wm', + 'video/x-ms-wmv' => 'wmv', + 'video/x-ms-wmx' => 'wmx', + 'video/x-ms-wvx' => 'wvx', + 'video/x-msvideo' => 'avi', + 'video/x-sgi-movie' => 'movie', + ]; + + /** + * Get a random MIME type + * + * @return string + * + * @example 'video/avi' + */ + public static function mimeType() + { + return static::randomElement(array_keys(static::$mimeTypes)); + } + + /** + * Get a random file extension (without a dot) + * + * @example avi + * + * @return string + */ + public static function fileExtension() + { + $random_extension = static::randomElement(array_values(static::$mimeTypes)); + + return is_array($random_extension) ? static::randomElement($random_extension) : $random_extension; + } + + /** + * Copy a random file from the source directory to the target directory and returns the filename/fullpath + * + * @param string $sourceDirectory The directory to look for random file taking + * @param string $targetDirectory + * @param bool $fullPath Whether to have the full path or just the filename + * + * @return string + */ + public static function file($sourceDirectory = '/tmp', $targetDirectory = '/tmp', $fullPath = true) + { + if (!is_dir($sourceDirectory)) { + throw new \InvalidArgumentException(sprintf('Source directory %s does not exist or is not a directory.', $sourceDirectory)); + } + + if (!is_dir($targetDirectory)) { + throw new \InvalidArgumentException(sprintf('Target directory %s does not exist or is not a directory.', $targetDirectory)); + } + + if ($sourceDirectory == $targetDirectory) { + throw new \InvalidArgumentException('Source and target directories must differ.'); + } + + // Drop . and .. and reset array keys + $files = array_filter(array_values(array_diff(scandir($sourceDirectory), ['.', '..'])), static function ($file) use ($sourceDirectory) { + return is_file($sourceDirectory . DIRECTORY_SEPARATOR . $file) && is_readable($sourceDirectory . DIRECTORY_SEPARATOR . $file); + }); + + if (empty($files)) { + throw new \InvalidArgumentException(sprintf('Source directory %s is empty.', $sourceDirectory)); + } + + $sourceFullPath = $sourceDirectory . DIRECTORY_SEPARATOR . static::randomElement($files); + + $destinationFile = Uuid::uuid() . '.' . pathinfo($sourceFullPath, PATHINFO_EXTENSION); + $destinationFullPath = $targetDirectory . DIRECTORY_SEPARATOR . $destinationFile; + + if (false === copy($sourceFullPath, $destinationFullPath)) { + return false; + } + + return $fullPath ? $destinationFullPath : $destinationFile; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/HtmlLorem.php b/vendor/fakerphp/faker/src/Faker/Provider/HtmlLorem.php new file mode 100644 index 0000000..a843410 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/HtmlLorem.php @@ -0,0 +1,307 @@ +addProvider(new Lorem($generator)); + $generator->addProvider(new Internet($generator)); + } + + /** + * @param int $maxDepth + * @param int $maxWidth + * + * @return string + */ + public function randomHtml($maxDepth = 4, $maxWidth = 4) + { + if (!class_exists(\DOMDocument::class, false)) { + throw new \RuntimeException('ext-dom is required to use randomHtml.'); + } + + $document = new \DOMDocument(); + $this->idGenerator = new UniqueGenerator($this->generator); + + $head = $document->createElement('head'); + $this->addRandomTitle($head); + + $body = $document->createElement('body'); + $this->addLoginForm($body); + $this->addRandomSubTree($body, $maxDepth, $maxWidth); + + $html = $document->createElement('html'); + $html->appendChild($head); + $html->appendChild($body); + + $document->appendChild($html); + + return $document->saveHTML(); + } + + private function addRandomSubTree(\DOMElement $root, $maxDepth, $maxWidth) + { + --$maxDepth; + + if ($maxDepth <= 0) { + return $root; + } + + $siblings = self::numberBetween(1, $maxWidth); + + for ($i = 0; $i < $siblings; ++$i) { + if ($maxDepth == 1) { + $this->addRandomLeaf($root); + } else { + $sibling = $root->ownerDocument->createElement('div'); + $root->appendChild($sibling); + $this->addRandomAttribute($sibling); + $this->addRandomSubTree($sibling, self::numberBetween(0, $maxDepth), $maxWidth); + } + } + + return $root; + } + + private function addRandomLeaf(\DOMElement $node): void + { + $rand = self::numberBetween(1, 10); + + switch ($rand) { + case 1: + $this->addRandomP($node); + + break; + + case 2: + $this->addRandomA($node); + + break; + + case 3: + $this->addRandomSpan($node); + + break; + + case 4: + $this->addRandomUL($node); + + break; + + case 5: + $this->addRandomH($node); + + break; + + case 6: + $this->addRandomB($node); + + break; + + case 7: + $this->addRandomI($node); + + break; + + case 8: + $this->addRandomTable($node); + + break; + + default: + $this->addRandomText($node); + + break; + } + } + + private function addRandomAttribute(\DOMElement $node): void + { + $rand = self::numberBetween(1, 2); + + switch ($rand) { + case 1: + $node->setAttribute('class', $this->generator->word()); + + break; + + case 2: + $node->setAttribute('id', (string) $this->idGenerator->randomNumber(5)); + + break; + } + } + + private function addRandomP(\DOMElement $element, $maxLength = 10): void + { + $node = $element->ownerDocument->createElement(static::P_TAG); + $node->textContent = $this->generator->sentence(self::numberBetween(1, $maxLength)); + $element->appendChild($node); + } + + private function addRandomText(\DOMElement $element, $maxLength = 10): void + { + $text = $element->ownerDocument->createTextNode($this->generator->sentence(self::numberBetween(1, $maxLength))); + $element->appendChild($text); + } + + private function addRandomA(\DOMElement $element, $maxLength = 10): void + { + $text = $element->ownerDocument->createTextNode($this->generator->sentence(self::numberBetween(1, $maxLength))); + $node = $element->ownerDocument->createElement(static::A_TAG); + $node->setAttribute('href', $this->generator->safeEmailDomain()); + $node->appendChild($text); + $element->appendChild($node); + } + + private function addRandomTitle(\DOMElement $element, $maxLength = 10): void + { + $text = $element->ownerDocument->createTextNode($this->generator->sentence(self::numberBetween(1, $maxLength))); + $node = $element->ownerDocument->createElement(static::TITLE_TAG); + $node->appendChild($text); + $element->appendChild($node); + } + + private function addRandomH(\DOMElement $element, $maxLength = 10): void + { + $h = static::H_TAG . (string) self::numberBetween(1, 3); + $text = $element->ownerDocument->createTextNode($this->generator->sentence(self::numberBetween(1, $maxLength))); + $node = $element->ownerDocument->createElement($h); + $node->appendChild($text); + $element->appendChild($node); + } + + private function addRandomB(\DOMElement $element, $maxLength = 10): void + { + $text = $element->ownerDocument->createTextNode($this->generator->sentence(self::numberBetween(1, $maxLength))); + $node = $element->ownerDocument->createElement(static::B_TAG); + $node->appendChild($text); + $element->appendChild($node); + } + + private function addRandomI(\DOMElement $element, $maxLength = 10): void + { + $text = $element->ownerDocument->createTextNode($this->generator->sentence(self::numberBetween(1, $maxLength))); + $node = $element->ownerDocument->createElement(static::I_TAG); + $node->appendChild($text); + $element->appendChild($node); + } + + private function addRandomSpan(\DOMElement $element, $maxLength = 10): void + { + $text = $element->ownerDocument->createTextNode($this->generator->sentence(self::numberBetween(1, $maxLength))); + $node = $element->ownerDocument->createElement(static::SPAN_TAG); + $node->appendChild($text); + $element->appendChild($node); + } + + private function addLoginForm(\DOMElement $element): void + { + $textInput = $element->ownerDocument->createElement(static::INPUT_TAG); + $textInput->setAttribute('type', 'text'); + $textInput->setAttribute('id', 'username'); + + $textLabel = $element->ownerDocument->createElement(static::LABEL_TAG); + $textLabel->setAttribute('for', 'username'); + $textLabel->textContent = $this->generator->word(); + + $passwordInput = $element->ownerDocument->createElement(static::INPUT_TAG); + $passwordInput->setAttribute('type', 'password'); + $passwordInput->setAttribute('id', 'password'); + + $passwordLabel = $element->ownerDocument->createElement(static::LABEL_TAG); + $passwordLabel->setAttribute('for', 'password'); + $passwordLabel->textContent = $this->generator->word(); + + $submit = $element->ownerDocument->createElement(static::INPUT_TAG); + $submit->setAttribute('type', 'submit'); + $submit->setAttribute('value', $this->generator->word()); + + $submit = $element->ownerDocument->createElement(static::FORM_TAG); + $submit->setAttribute('action', $this->generator->safeEmailDomain()); + $submit->setAttribute('method', 'POST'); + $submit->appendChild($textLabel); + $submit->appendChild($textInput); + $submit->appendChild($passwordLabel); + $submit->appendChild($passwordInput); + $element->appendChild($submit); + } + + private function addRandomTable(\DOMElement $element, $maxRows = 10, $maxCols = 6, $maxTitle = 4, $maxLength = 10): void + { + $rows = self::numberBetween(1, $maxRows); + $cols = self::numberBetween(1, $maxCols); + + $table = $element->ownerDocument->createElement(static::TABLE_TAG); + $thead = $element->ownerDocument->createElement(static::THEAD_TAG); + $tbody = $element->ownerDocument->createElement(static::TBODY_TAG); + + $table->appendChild($thead); + $table->appendChild($tbody); + + $tr = $element->ownerDocument->createElement(static::TR_TAG); + $thead->appendChild($tr); + + for ($i = 0; $i < $cols; ++$i) { + $th = $element->ownerDocument->createElement(static::TH_TAG); + $th->textContent = $this->generator->sentence(self::numberBetween(1, $maxTitle)); + $tr->appendChild($th); + } + + for ($i = 0; $i < $rows; ++$i) { + $tr = $element->ownerDocument->createElement(static::TR_TAG); + $tbody->appendChild($tr); + + for ($j = 0; $j < $cols; ++$j) { + $th = $element->ownerDocument->createElement(static::TD_TAG); + $th->textContent = $this->generator->sentence(self::numberBetween(1, $maxLength)); + $tr->appendChild($th); + } + } + $element->appendChild($table); + } + + private function addRandomUL(\DOMElement $element, $maxItems = 11, $maxLength = 4): void + { + $num = self::numberBetween(1, $maxItems); + $ul = $element->ownerDocument->createElement(static::UL_TAG); + + for ($i = 0; $i < $num; ++$i) { + $li = $element->ownerDocument->createElement(static::LI_TAG); + $li->textContent = $this->generator->sentence(self::numberBetween(1, $maxLength)); + $ul->appendChild($li); + } + $element->appendChild($ul); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/Image.php b/vendor/fakerphp/faker/src/Faker/Provider/Image.php new file mode 100644 index 0000000..e787142 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/Image.php @@ -0,0 +1,196 @@ + 0 ? '?text=' . urlencode(implode(' ', $imageParts)) : '', + ); + } + + /** + * Download a remote random image to disk and return its location + * + * Requires curl, or allow_url_fopen to be on in php.ini. + * + * @example '/path/to/dir/13b73edae8443990be1aa8f1a483bc27.png' + * + * @return bool|string + */ + public static function image( + $dir = null, + $width = 640, + $height = 480, + $category = null, + $fullPath = true, + $randomize = true, + $word = null, + $gray = false, + $format = 'png' + ) { + trigger_deprecation( + 'fakerphp/faker', + '1.20', + 'Provider is deprecated and will no longer be available in Faker 2. Please use a custom provider instead', + ); + + $dir = null === $dir ? sys_get_temp_dir() : $dir; // GNU/Linux / OS X / Windows compatible + + // Validate directory path + if (!is_dir($dir) || !is_writable($dir)) { + throw new \InvalidArgumentException(sprintf('Cannot write to directory "%s"', $dir)); + } + + // Generate a random filename. Use the server address so that a file + // generated at the same time on a different server won't have a collision. + $name = md5(uniqid(empty($_SERVER['SERVER_ADDR']) ? '' : $_SERVER['SERVER_ADDR'], true)); + $filename = sprintf('%s.%s', $name, $format); + $filepath = $dir . DIRECTORY_SEPARATOR . $filename; + + $url = static::imageUrl($width, $height, $category, $randomize, $word, $gray, $format); + + // save file + if (function_exists('curl_exec')) { + // use cURL + $fp = fopen($filepath, 'w'); + $ch = curl_init($url); + curl_setopt($ch, CURLOPT_FILE, $fp); + $success = curl_exec($ch) && curl_getinfo($ch, CURLINFO_HTTP_CODE) === 200; + fclose($fp); + curl_close($ch); + + if (!$success) { + unlink($filepath); + + // could not contact the distant URL or HTTP error - fail silently. + return false; + } + } elseif (ini_get('allow_url_fopen')) { + // use remote fopen() via copy() + $success = copy($url, $filepath); + + if (!$success) { + // could not contact the distant URL or HTTP error - fail silently. + return false; + } + } else { + return new \RuntimeException('The image formatter downloads an image from a remote HTTP server. Therefore, it requires that PHP can request remote hosts, either via cURL or fopen()'); + } + + return $fullPath ? $filepath : $filename; + } + + public static function getFormats(): array + { + trigger_deprecation( + 'fakerphp/faker', + '1.20', + 'Provider is deprecated and will no longer be available in Faker 2. Please use a custom provider instead', + ); + + return array_keys(static::getFormatConstants()); + } + + public static function getFormatConstants(): array + { + trigger_deprecation( + 'fakerphp/faker', + '1.20', + 'Provider is deprecated and will no longer be available in Faker 2. Please use a custom provider instead', + ); + + return [ + static::FORMAT_JPG => constant('IMAGETYPE_JPEG'), + static::FORMAT_JPEG => constant('IMAGETYPE_JPEG'), + static::FORMAT_PNG => constant('IMAGETYPE_PNG'), + ]; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/Internet.php b/vendor/fakerphp/faker/src/Faker/Provider/Internet.php new file mode 100644 index 0000000..122d9c0 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/Internet.php @@ -0,0 +1,407 @@ +generator->parse($format); + } + + /** + * @example 'jdoe@example.com' + * + * @return string + */ + final public function safeEmail() + { + return preg_replace('/\s/u', '', $this->userName() . '@' . static::safeEmailDomain()); + } + + /** + * @example 'jdoe@gmail.com' + * + * @return string + */ + public function freeEmail() + { + return preg_replace('/\s/u', '', $this->userName() . '@' . static::freeEmailDomain()); + } + + /** + * @example 'jdoe@dawson.com' + * + * @return string + */ + public function companyEmail() + { + return preg_replace('/\s/u', '', $this->userName() . '@' . $this->domainName()); + } + + /** + * @example 'gmail.com' + * + * @return string + */ + public static function freeEmailDomain() + { + return static::randomElement(static::$freeEmailDomain); + } + + /** + * @example 'example.org' + * + * @return string + */ + final public static function safeEmailDomain() + { + $domains = [ + 'example.com', + 'example.org', + 'example.net', + ]; + + return static::randomElement($domains); + } + + /** + * @example 'jdoe' + * + * @return string + */ + public function userName() + { + $format = static::randomElement(static::$userNameFormats); + $username = static::bothify($this->generator->parse($format)); + + $username = strtolower(static::transliterate($username)); + + // check if transliterate() didn't support the language and removed all letters + if (trim($username, '._') === '') { + throw new \Exception('userName failed with the selected locale. Try a different locale or activate the "intl" PHP extension.'); + } + + // clean possible trailing dots from first/last names + $username = str_replace('..', '.', $username); + $username = rtrim($username, '.'); + + return $username; + } + + /** + * @example 'fY4èHdZv68' + * + * @return string + */ + public function password($minLength = 6, $maxLength = 20) + { + $pattern = str_repeat('*', $this->numberBetween($minLength, $maxLength)); + + return $this->asciify($pattern); + } + + /** + * @example 'tiramisu.com' + * + * @return string + */ + public function domainName() + { + return $this->domainWord() . '.' . $this->tld(); + } + + /** + * @example 'faber' + * + * @return string + */ + public function domainWord() + { + $lastName = $this->generator->format('lastName'); + + $lastName = strtolower(static::transliterate($lastName)); + + // check if transliterate() didn't support the language and removed all letters + if (trim($lastName, '._') === '') { + throw new \Exception('domainWord failed with the selected locale. Try a different locale or activate the "intl" PHP extension.'); + } + + // clean possible trailing dot from last name + $lastName = rtrim($lastName, '.'); + + return $lastName; + } + + /** + * @example 'com' + * + * @return string + */ + public function tld() + { + return static::randomElement(static::$tld); + } + + /** + * @example 'http://www.runolfsdottir.com/' + * + * @return string + */ + public function url() + { + $format = static::randomElement(static::$urlFormats); + + return $this->generator->parse($format); + } + + /** + * @example 'aut-repellat-commodi-vel-itaque-nihil-id-saepe-nostrum' + * + * @return string + */ + public function slug($nbWords = 6, $variableNbWords = true) + { + if ($nbWords <= 0) { + return ''; + } + + if ($variableNbWords) { + $nbWords = (int) ($nbWords * self::numberBetween(60, 140) / 100) + 1; + } + $words = $this->generator->words($nbWords); + + return implode('-', $words); + } + + /** + * @example '237.149.115.38' + * + * @return string + */ + public function ipv4() + { + return long2ip(Miscellaneous::boolean() ? self::numberBetween(-2147483648, -2) : self::numberBetween(16777216, 2147483647)); + } + + /** + * @example '35cd:186d:3e23:2986:ef9f:5b41:42a4:e6f1' + * + * @return string + */ + public function ipv6() + { + $res = []; + + for ($i = 0; $i < 8; ++$i) { + $res[] = dechex(self::numberBetween(0, 65535)); + } + + return implode(':', $res); + } + + /** + * @example '10.1.1.17' + * + * @return string + */ + public static function localIpv4() + { + $ipBlock = self::randomElement(static::$localIpBlocks); + + return long2ip(static::numberBetween(ip2long($ipBlock[0]), ip2long($ipBlock[1]))); + } + + /** + * @example '32:F1:39:2F:D6:18' + * + * @return string + */ + public static function macAddress() + { + $mac = []; + + for ($i = 0; $i < 6; ++$i) { + $mac[] = sprintf('%02X', self::numberBetween(0, 0xff)); + } + + return implode(':', $mac); + } + + protected static function transliterate($string) + { + if (0 === preg_match('/[^A-Za-z0-9_.]/', $string)) { + return $string; + } + + $transId = 'Any-Latin; Latin-ASCII; NFD; [:Nonspacing Mark:] Remove; NFC;'; + + if (class_exists(\Transliterator::class, false) && $transliterator = \Transliterator::create($transId)) { + $transString = $transliterator->transliterate($string); + } else { + $transString = static::toAscii($string); + } + + return preg_replace('/[^A-Za-z0-9_.]/u', '', $transString); + } + + protected static function toAscii($string) + { + static $arrayFrom, $arrayTo; + + if (empty($arrayFrom)) { + $transliterationTable = [ + 'IJ' => 'I', 'Ö' => 'O', 'Œ' => 'O', 'Ü' => 'U', 'ä' => 'a', 'æ' => 'a', + 'ij' => 'i', 'ö' => 'o', 'œ' => 'o', 'ü' => 'u', 'ß' => 's', 'ſ' => 's', + 'À' => 'A', 'Á' => 'A', 'Â' => 'A', 'Ã' => 'A', 'Ä' => 'A', 'Å' => 'A', + 'Æ' => 'A', 'Ā' => 'A', 'Ą' => 'A', 'Ă' => 'A', 'Ç' => 'C', 'Ć' => 'C', + 'Č' => 'C', 'Ĉ' => 'C', 'Ċ' => 'C', 'Ď' => 'D', 'Đ' => 'D', 'È' => 'E', + 'É' => 'E', 'Ê' => 'E', 'Ë' => 'E', 'Ē' => 'E', 'Ę' => 'E', 'Ě' => 'E', + 'Ĕ' => 'E', 'Ė' => 'E', 'Ĝ' => 'G', 'Ğ' => 'G', 'Ġ' => 'G', 'Ģ' => 'G', + 'Ĥ' => 'H', 'Ħ' => 'H', 'Ì' => 'I', 'Í' => 'I', 'Î' => 'I', 'Ï' => 'I', + 'Ī' => 'I', 'Ĩ' => 'I', 'Ĭ' => 'I', 'Į' => 'I', 'İ' => 'I', 'Ĵ' => 'J', + 'Ķ' => 'K', 'Ľ' => 'K', 'Ĺ' => 'K', 'Ļ' => 'K', 'Ŀ' => 'K', 'Ł' => 'L', + 'Ñ' => 'N', 'Ń' => 'N', 'Ň' => 'N', 'Ņ' => 'N', 'Ŋ' => 'N', 'Ò' => 'O', + 'Ó' => 'O', 'Ô' => 'O', 'Õ' => 'O', 'Ø' => 'O', 'Ō' => 'O', 'Ő' => 'O', + 'Ŏ' => 'O', 'Ŕ' => 'R', 'Ř' => 'R', 'Ŗ' => 'R', 'Ś' => 'S', 'Ş' => 'S', + 'Ŝ' => 'S', 'Ș' => 'S', 'Š' => 'S', 'Ť' => 'T', 'Ţ' => 'T', 'Ŧ' => 'T', + 'Ț' => 'T', 'Ù' => 'U', 'Ú' => 'U', 'Û' => 'U', 'Ū' => 'U', 'Ů' => 'U', + 'Ű' => 'U', 'Ŭ' => 'U', 'Ũ' => 'U', 'Ų' => 'U', 'Ŵ' => 'W', 'Ŷ' => 'Y', + 'Ÿ' => 'Y', 'Ý' => 'Y', 'Ź' => 'Z', 'Ż' => 'Z', 'Ž' => 'Z', 'à' => 'a', + 'á' => 'a', 'â' => 'a', 'ã' => 'a', 'ā' => 'a', 'ą' => 'a', 'ă' => 'a', + 'å' => 'a', 'ç' => 'c', 'ć' => 'c', 'č' => 'c', 'ĉ' => 'c', 'ċ' => 'c', + 'ď' => 'd', 'đ' => 'd', 'è' => 'e', 'é' => 'e', 'ê' => 'e', 'ë' => 'e', + 'ē' => 'e', 'ę' => 'e', 'ě' => 'e', 'ĕ' => 'e', 'ė' => 'e', 'ƒ' => 'f', + 'ĝ' => 'g', 'ğ' => 'g', 'ġ' => 'g', 'ģ' => 'g', 'ĥ' => 'h', 'ħ' => 'h', + 'ì' => 'i', 'í' => 'i', 'î' => 'i', 'ï' => 'i', 'ī' => 'i', 'ĩ' => 'i', + 'ĭ' => 'i', 'į' => 'i', 'ı' => 'i', 'ĵ' => 'j', 'ķ' => 'k', 'ĸ' => 'k', + 'ł' => 'l', 'ľ' => 'l', 'ĺ' => 'l', 'ļ' => 'l', 'ŀ' => 'l', 'ñ' => 'n', + 'ń' => 'n', 'ň' => 'n', 'ņ' => 'n', 'ʼn' => 'n', 'ŋ' => 'n', 'ò' => 'o', + 'ó' => 'o', 'ô' => 'o', 'õ' => 'o', 'ø' => 'o', 'ō' => 'o', 'ő' => 'o', + 'ŏ' => 'o', 'ŕ' => 'r', 'ř' => 'r', 'ŗ' => 'r', 'ś' => 's', 'š' => 's', + 'ť' => 't', 'ù' => 'u', 'ú' => 'u', 'û' => 'u', 'ū' => 'u', 'ů' => 'u', + 'ű' => 'u', 'ŭ' => 'u', 'ũ' => 'u', 'ų' => 'u', 'ŵ' => 'w', 'ÿ' => 'y', + 'ý' => 'y', 'ŷ' => 'y', 'ż' => 'z', 'ź' => 'z', 'ž' => 'z', 'Α' => 'A', + 'Ά' => 'A', 'Ἀ' => 'A', 'Ἁ' => 'A', 'Ἂ' => 'A', 'Ἃ' => 'A', 'Ἄ' => 'A', + 'Ἅ' => 'A', 'Ἆ' => 'A', 'Ἇ' => 'A', 'ᾈ' => 'A', 'ᾉ' => 'A', 'ᾊ' => 'A', + 'ᾋ' => 'A', 'ᾌ' => 'A', 'ᾍ' => 'A', 'ᾎ' => 'A', 'ᾏ' => 'A', 'Ᾰ' => 'A', + 'Ᾱ' => 'A', 'Ὰ' => 'A', 'ᾼ' => 'A', 'Β' => 'B', 'Γ' => 'G', 'Δ' => 'D', + 'Ε' => 'E', 'Έ' => 'E', 'Ἐ' => 'E', 'Ἑ' => 'E', 'Ἒ' => 'E', 'Ἓ' => 'E', + 'Ἔ' => 'E', 'Ἕ' => 'E', 'Ὲ' => 'E', 'Ζ' => 'Z', 'Η' => 'I', 'Ή' => 'I', + 'Ἠ' => 'I', 'Ἡ' => 'I', 'Ἢ' => 'I', 'Ἣ' => 'I', 'Ἤ' => 'I', 'Ἥ' => 'I', + 'Ἦ' => 'I', 'Ἧ' => 'I', 'ᾘ' => 'I', 'ᾙ' => 'I', 'ᾚ' => 'I', 'ᾛ' => 'I', + 'ᾜ' => 'I', 'ᾝ' => 'I', 'ᾞ' => 'I', 'ᾟ' => 'I', 'Ὴ' => 'I', 'ῌ' => 'I', + 'Θ' => 'T', 'Ι' => 'I', 'Ί' => 'I', 'Ϊ' => 'I', 'Ἰ' => 'I', 'Ἱ' => 'I', + 'Ἲ' => 'I', 'Ἳ' => 'I', 'Ἴ' => 'I', 'Ἵ' => 'I', 'Ἶ' => 'I', 'Ἷ' => 'I', + 'Ῐ' => 'I', 'Ῑ' => 'I', 'Ὶ' => 'I', 'Κ' => 'K', 'Λ' => 'L', 'Μ' => 'M', + 'Ν' => 'N', 'Ξ' => 'K', 'Ο' => 'O', 'Ό' => 'O', 'Ὀ' => 'O', 'Ὁ' => 'O', + 'Ὂ' => 'O', 'Ὃ' => 'O', 'Ὄ' => 'O', 'Ὅ' => 'O', 'Ὸ' => 'O', 'Π' => 'P', + 'Ρ' => 'R', 'Ῥ' => 'R', 'Σ' => 'S', 'Τ' => 'T', 'Υ' => 'Y', 'Ύ' => 'Y', + 'Ϋ' => 'Y', 'Ὑ' => 'Y', 'Ὓ' => 'Y', 'Ὕ' => 'Y', 'Ὗ' => 'Y', 'Ῠ' => 'Y', + 'Ῡ' => 'Y', 'Ὺ' => 'Y', 'Φ' => 'F', 'Χ' => 'X', 'Ψ' => 'P', 'Ω' => 'O', + 'Ώ' => 'O', 'Ὠ' => 'O', 'Ὡ' => 'O', 'Ὢ' => 'O', 'Ὣ' => 'O', 'Ὤ' => 'O', + 'Ὥ' => 'O', 'Ὦ' => 'O', 'Ὧ' => 'O', 'ᾨ' => 'O', 'ᾩ' => 'O', 'ᾪ' => 'O', + 'ᾫ' => 'O', 'ᾬ' => 'O', 'ᾭ' => 'O', 'ᾮ' => 'O', 'ᾯ' => 'O', 'Ὼ' => 'O', + 'ῼ' => 'O', 'α' => 'a', 'ά' => 'a', 'ἀ' => 'a', 'ἁ' => 'a', 'ἂ' => 'a', + 'ἃ' => 'a', 'ἄ' => 'a', 'ἅ' => 'a', 'ἆ' => 'a', 'ἇ' => 'a', 'ᾀ' => 'a', + 'ᾁ' => 'a', 'ᾂ' => 'a', 'ᾃ' => 'a', 'ᾄ' => 'a', 'ᾅ' => 'a', 'ᾆ' => 'a', + 'ᾇ' => 'a', 'ὰ' => 'a', 'ᾰ' => 'a', 'ᾱ' => 'a', 'ᾲ' => 'a', 'ᾳ' => 'a', + 'ᾴ' => 'a', 'ᾶ' => 'a', 'ᾷ' => 'a', 'β' => 'b', 'γ' => 'g', 'δ' => 'd', + 'ε' => 'e', 'έ' => 'e', 'ἐ' => 'e', 'ἑ' => 'e', 'ἒ' => 'e', 'ἓ' => 'e', + 'ἔ' => 'e', 'ἕ' => 'e', 'ὲ' => 'e', 'ζ' => 'z', 'η' => 'i', 'ή' => 'i', + 'ἠ' => 'i', 'ἡ' => 'i', 'ἢ' => 'i', 'ἣ' => 'i', 'ἤ' => 'i', 'ἥ' => 'i', + 'ἦ' => 'i', 'ἧ' => 'i', 'ᾐ' => 'i', 'ᾑ' => 'i', 'ᾒ' => 'i', 'ᾓ' => 'i', + 'ᾔ' => 'i', 'ᾕ' => 'i', 'ᾖ' => 'i', 'ᾗ' => 'i', 'ὴ' => 'i', 'ῂ' => 'i', + 'ῃ' => 'i', 'ῄ' => 'i', 'ῆ' => 'i', 'ῇ' => 'i', 'θ' => 't', 'ι' => 'i', + 'ί' => 'i', 'ϊ' => 'i', 'ΐ' => 'i', 'ἰ' => 'i', 'ἱ' => 'i', 'ἲ' => 'i', + 'ἳ' => 'i', 'ἴ' => 'i', 'ἵ' => 'i', 'ἶ' => 'i', 'ἷ' => 'i', 'ὶ' => 'i', + 'ῐ' => 'i', 'ῑ' => 'i', 'ῒ' => 'i', 'ῖ' => 'i', 'ῗ' => 'i', 'κ' => 'k', + 'λ' => 'l', 'μ' => 'm', 'ν' => 'n', 'ξ' => 'k', 'ο' => 'o', 'ό' => 'o', + 'ὀ' => 'o', 'ὁ' => 'o', 'ὂ' => 'o', 'ὃ' => 'o', 'ὄ' => 'o', 'ὅ' => 'o', + 'ὸ' => 'o', 'π' => 'p', 'ρ' => 'r', 'ῤ' => 'r', 'ῥ' => 'r', 'σ' => 's', + 'ς' => 's', 'τ' => 't', 'υ' => 'y', 'ύ' => 'y', 'ϋ' => 'y', 'ΰ' => 'y', + 'ὐ' => 'y', 'ὑ' => 'y', 'ὒ' => 'y', 'ὓ' => 'y', 'ὔ' => 'y', 'ὕ' => 'y', + 'ὖ' => 'y', 'ὗ' => 'y', 'ὺ' => 'y', 'ῠ' => 'y', 'ῡ' => 'y', 'ῢ' => 'y', + 'ῦ' => 'y', 'ῧ' => 'y', 'φ' => 'f', 'χ' => 'x', 'ψ' => 'p', 'ω' => 'o', + 'ώ' => 'o', 'ὠ' => 'o', 'ὡ' => 'o', 'ὢ' => 'o', 'ὣ' => 'o', 'ὤ' => 'o', + 'ὥ' => 'o', 'ὦ' => 'o', 'ὧ' => 'o', 'ᾠ' => 'o', 'ᾡ' => 'o', 'ᾢ' => 'o', + 'ᾣ' => 'o', 'ᾤ' => 'o', 'ᾥ' => 'o', 'ᾦ' => 'o', 'ᾧ' => 'o', 'ὼ' => 'o', + 'ῲ' => 'o', 'ῳ' => 'o', 'ῴ' => 'o', 'ῶ' => 'o', 'ῷ' => 'o', 'А' => 'A', + 'Б' => 'B', 'В' => 'V', 'Г' => 'G', 'Д' => 'D', 'Е' => 'E', 'Ё' => 'E', + 'Ж' => 'Z', 'З' => 'Z', 'И' => 'I', 'Й' => 'I', 'К' => 'K', 'Л' => 'L', + 'М' => 'M', 'Н' => 'N', 'О' => 'O', 'П' => 'P', 'Р' => 'R', 'С' => 'S', + 'Т' => 'T', 'У' => 'U', 'Ф' => 'F', 'Х' => 'K', 'Ц' => 'T', 'Ч' => 'C', + 'Ш' => 'S', 'Щ' => 'S', 'Ы' => 'Y', 'Э' => 'E', 'Ю' => 'Y', 'Я' => 'Y', + 'а' => 'A', 'б' => 'B', 'в' => 'V', 'г' => 'G', 'д' => 'D', 'е' => 'E', + 'ё' => 'E', 'ж' => 'Z', 'з' => 'Z', 'и' => 'I', 'й' => 'I', 'к' => 'K', + 'л' => 'L', 'м' => 'M', 'н' => 'N', 'о' => 'O', 'п' => 'P', 'р' => 'R', + 'с' => 'S', 'т' => 'T', 'у' => 'U', 'ф' => 'F', 'х' => 'K', 'ц' => 'T', + 'ч' => 'C', 'ш' => 'S', 'щ' => 'S', 'ы' => 'Y', 'э' => 'E', 'ю' => 'Y', + 'я' => 'Y', 'ð' => 'd', 'Ð' => 'D', 'þ' => 't', 'Þ' => 'T', 'ა' => 'a', + 'ბ' => 'b', 'გ' => 'g', 'დ' => 'd', 'ე' => 'e', 'ვ' => 'v', 'ზ' => 'z', + 'თ' => 't', 'ი' => 'i', 'კ' => 'k', 'ლ' => 'l', 'მ' => 'm', 'ნ' => 'n', + 'ო' => 'o', 'პ' => 'p', 'ჟ' => 'z', 'რ' => 'r', 'ს' => 's', 'ტ' => 't', + 'უ' => 'u', 'ფ' => 'p', 'ქ' => 'k', 'ღ' => 'g', 'ყ' => 'q', 'შ' => 's', + 'ჩ' => 'c', 'ც' => 't', 'ძ' => 'd', 'წ' => 't', 'ჭ' => 'c', 'ხ' => 'k', + 'ჯ' => 'j', 'ჰ' => 'h', 'ţ' => 't', 'ʼ' => "'", '̧' => '', 'ḩ' => 'h', + '‘' => "'", '’' => "'", 'ừ' => 'u', '/' => '', 'ế' => 'e', 'ả' => 'a', + 'ị' => 'i', 'ậ' => 'a', 'ệ' => 'e', 'ỉ' => 'i', 'ồ' => 'o', 'ề' => 'e', + 'ơ' => 'o', 'ạ' => 'a', 'ẵ' => 'a', 'ư' => 'u', 'ằ' => 'a', 'ầ' => 'a', + 'ḑ' => 'd', 'Ḩ' => 'H', 'Ḑ' => 'D', 'ș' => 's', 'ț' => 't', 'ộ' => 'o', + 'ắ' => 'a', 'ş' => 's', "'" => '', 'ու' => 'u', 'ա' => 'a', 'բ' => 'b', + 'գ' => 'g', 'դ' => 'd', 'ե' => 'e', 'զ' => 'z', 'է' => 'e', 'ը' => 'y', + 'թ' => 't', 'ժ' => 'zh', 'ի' => 'i', 'լ' => 'l', 'խ' => 'kh', 'ծ' => 'ts', + 'կ' => 'k', 'հ' => 'h', 'ձ' => 'dz', 'ղ' => 'gh', 'ճ' => 'ch', 'մ' => 'm', + 'յ' => 'y', 'ն' => 'n', 'շ' => 'sh', 'ո' => 'o', 'չ' => 'ch', 'պ' => 'p', + 'ջ' => 'j', 'ռ' => 'r', 'ս' => 's', 'վ' => 'v', 'տ' => 't', 'ր' => 'r', + 'ց' => 'ts', 'փ' => 'p', 'ք' => 'q', 'և' => 'ev', 'օ' => 'o', 'ֆ' => 'f', + ]; + $arrayFrom = array_keys($transliterationTable); + $arrayTo = array_values($transliterationTable); + } + + return str_replace($arrayFrom, $arrayTo, $string); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/Lorem.php b/vendor/fakerphp/faker/src/Faker/Provider/Lorem.php new file mode 100644 index 0000000..2cfb70e --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/Lorem.php @@ -0,0 +1,228 @@ +generator->parse('{{bloodType}}{{bloodRh}}'); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/Miscellaneous.php b/vendor/fakerphp/faker/src/Faker/Provider/Miscellaneous.php new file mode 100644 index 0000000..354f67b --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/Miscellaneous.php @@ -0,0 +1,342 @@ + [ + '4539###########', + '4556###########', + '4916###########', + '4532###########', + '4929###########', + '40240071#######', + '4485###########', + '4716###########', + '4##############', + ], + 'Visa Retired' => [ + '4539########', + '4556########', + '4916########', + '4532########', + '4929########', + '40240071####', + '4485########', + '4716########', + '4###########', + ], + 'MasterCard' => [ + '2221###########', + '23#############', + '24#############', + '25#############', + '26#############', + '2720###########', + '51#############', + '52#############', + '53#############', + '54#############', + '55#############', + ], + 'American Express' => [ + '34############', + '37############', + ], + 'Discover Card' => [ + '6011###########', + ], + 'JCB' => [ + '3528###########', + '3589###########', + ], + ]; + + /** + * @var array list of IBAN formats, source: @see https://www.swift.com/standards/data-standards/iban + */ + protected static $ibanFormats = [ + 'AD' => [['n', 4], ['n', 4], ['c', 12]], + 'AE' => [['n', 3], ['n', 16]], + 'AL' => [['n', 8], ['c', 16]], + 'AT' => [['n', 5], ['n', 11]], + 'AZ' => [['a', 4], ['c', 20]], + 'BA' => [['n', 3], ['n', 3], ['n', 8], ['n', 2]], + 'BE' => [['n', 3], ['n', 7], ['n', 2]], + 'BG' => [['a', 4], ['n', 4], ['n', 2], ['c', 8]], + 'BH' => [['a', 4], ['c', 14]], + 'BR' => [['n', 8], ['n', 5], ['n', 10], ['a', 1], ['c', 1]], + 'CH' => [['n', 5], ['c', 12]], + 'CR' => [['n', 4], ['n', 14]], + 'CY' => [['n', 3], ['n', 5], ['c', 16]], + 'CZ' => [['n', 4], ['n', 6], ['n', 10]], + 'DE' => [['n', 8], ['n', 10]], + 'DK' => [['n', 4], ['n', 9], ['n', 1]], + 'DO' => [['c', 4], ['n', 20]], + 'EE' => [['n', 2], ['n', 2], ['n', 11], ['n', 1]], + 'EG' => [['n', 4], ['n', 4], ['n', 17]], + 'ES' => [['n', 4], ['n', 4], ['n', 1], ['n', 1], ['n', 10]], + 'FI' => [['n', 6], ['n', 7], ['n', 1]], + 'FR' => [['n', 5], ['n', 5], ['c', 11], ['n', 2]], + 'GB' => [['a', 4], ['n', 6], ['n', 8]], + 'GE' => [['a', 2], ['n', 16]], + 'GI' => [['a', 4], ['c', 15]], + 'GR' => [['n', 3], ['n', 4], ['c', 16]], + 'GT' => [['c', 4], ['c', 20]], + 'HR' => [['n', 7], ['n', 10]], + 'HU' => [['n', 3], ['n', 4], ['n', 1], ['n', 15], ['n', 1]], + 'IE' => [['a', 4], ['n', 6], ['n', 8]], + 'IL' => [['n', 3], ['n', 3], ['n', 13]], + 'IS' => [['n', 4], ['n', 2], ['n', 6], ['n', 10]], + 'IT' => [['a', 1], ['n', 5], ['n', 5], ['c', 12]], + 'KW' => [['a', 4], ['n', 22]], + 'KZ' => [['n', 3], ['c', 13]], + 'LB' => [['n', 4], ['c', 20]], + 'LI' => [['n', 5], ['c', 12]], + 'LT' => [['n', 5], ['n', 11]], + 'LU' => [['n', 3], ['c', 13]], + 'LV' => [['a', 4], ['c', 13]], + 'MC' => [['n', 5], ['n', 5], ['c', 11], ['n', 2]], + 'MD' => [['c', 2], ['c', 18]], + 'ME' => [['n', 3], ['n', 13], ['n', 2]], + 'MK' => [['n', 3], ['c', 10], ['n', 2]], + 'MR' => [['n', 5], ['n', 5], ['n', 11], ['n', 2]], + 'MT' => [['a', 4], ['n', 5], ['c', 18]], + 'MU' => [['a', 4], ['n', 2], ['n', 2], ['n', 12], ['n', 3], ['a', 3]], + 'NL' => [['a', 4], ['n', 10]], + 'NO' => [['n', 4], ['n', 6], ['n', 1]], + 'PK' => [['a', 4], ['c', 16]], + 'PL' => [['n', 8], ['n', 16]], + 'PS' => [['a', 4], ['c', 21]], + 'PT' => [['n', 4], ['n', 4], ['n', 11], ['n', 2]], + 'RO' => [['a', 4], ['c', 16]], + 'RS' => [['n', 3], ['n', 13], ['n', 2]], + 'SA' => [['n', 2], ['c', 18]], + 'SE' => [['n', 3], ['n', 16], ['n', 1]], + 'SI' => [['n', 5], ['n', 8], ['n', 2]], + 'SK' => [['n', 4], ['n', 6], ['n', 10]], + 'SM' => [['a', 1], ['n', 5], ['n', 5], ['c', 12]], + 'TN' => [['n', 2], ['n', 3], ['n', 13], ['n', 2]], + 'TR' => [['n', 5], ['n', 1], ['c', 16]], + 'VG' => [['a', 4], ['n', 16]], + ]; + + /** + * @return string Returns a credit card vendor name + * + * @example 'MasterCard' + */ + public static function creditCardType() + { + return static::randomElement(static::$cardVendors); + } + + /** + * Returns the String of a credit card number. + * + * @param string $type Supporting any of 'Visa', 'MasterCard', 'American Express', 'Discover' and 'JCB' + * @param bool $formatted Set to true if the output string should contain one separator every 4 digits + * @param string $separator Separator string for formatting card number. Defaults to dash (-). + * + * @return string + * + * @example '4485480221084675' + */ + public static function creditCardNumber($type = null, $formatted = false, $separator = '-') + { + if (null === $type) { + $type = static::creditCardType(); + } + $mask = static::randomElement(static::$cardParams[$type]); + + $number = static::numerify($mask); + $number .= Luhn::computeCheckDigit($number); + + if ($formatted) { + $p1 = substr($number, 0, 4); + $p2 = substr($number, 4, 4); + $p3 = substr($number, 8, 4); + $p4 = substr($number, 12); + $number = $p1 . $separator . $p2 . $separator . $p3 . $separator . $p4; + } + + return $number; + } + + /** + * @param bool $valid True (by default) to get a valid expiration date, false to get a maybe valid date + * + * @return \DateTime + * + * @example 04/13 + */ + public function creditCardExpirationDate($valid = true) + { + if ($valid) { + return $this->generator->dateTimeBetween('now', '36 months'); + } + + return $this->generator->dateTimeBetween('-36 months', '36 months'); + } + + /** + * @param bool $valid True (by default) to get a valid expiration date, false to get a maybe valid date + * @param string $expirationDateFormat + * + * @return string + * + * @example '04/13' + */ + public function creditCardExpirationDateString($valid = true, $expirationDateFormat = null) + { + return $this->creditCardExpirationDate($valid)->format(null === $expirationDateFormat ? static::$expirationDateFormat : $expirationDateFormat); + } + + /** + * @param bool $valid True (by default) to get a valid expiration date, false to get a maybe valid date + * + * @return array + */ + public function creditCardDetails($valid = true) + { + $type = static::creditCardType(); + + return [ + 'type' => $type, + 'number' => static::creditCardNumber($type), + 'name' => $this->generator->name(), + 'expirationDate' => $this->creditCardExpirationDateString($valid), + ]; + } + + /** + * International Bank Account Number (IBAN) + * + * @see http://en.wikipedia.org/wiki/International_Bank_Account_Number + * + * @param string $countryCode ISO 3166-1 alpha-2 country code + * @param string $prefix for generating bank account number of a specific bank + * @param int $length total length without country code and 2 check digits + * + * @return string + */ + public static function iban($countryCode = null, $prefix = '', $length = null) + { + $countryCode = null === $countryCode ? self::randomKey(self::$ibanFormats) : strtoupper($countryCode); + + $format = !isset(static::$ibanFormats[$countryCode]) ? null : static::$ibanFormats[$countryCode]; + + if ($length === null) { + if ($format === null) { + $length = 24; + } else { + $length = 0; + + foreach ($format as $part) { + [$class, $groupCount] = $part; + $length += $groupCount; + } + } + } + + if ($format === null) { + $format = [['n', $length]]; + } + + $expandedFormat = ''; + + foreach ($format as $item) { + [$class, $length] = $item; + $expandedFormat .= str_repeat($class, $length); + } + + $result = $prefix; + $expandedFormat = substr($expandedFormat, strlen($result)); + + foreach (str_split($expandedFormat) as $class) { + switch ($class) { + default: + case 'c': + $result .= Miscellaneous::boolean() ? static::randomDigit() : strtoupper(static::randomLetter()); + + break; + + case 'a': + $result .= strtoupper(static::randomLetter()); + + break; + + case 'n': + $result .= static::randomDigit(); + + break; + } + } + + $checksum = Iban::checksum($countryCode . '00' . $result); + + return $countryCode . $checksum . $result; + } + + /** + * Return the String of a SWIFT/BIC number + * + * @example 'RZTIAT22263' + * + * @see http://en.wikipedia.org/wiki/ISO_9362 + * + * @return string Swift/Bic number + */ + public static function swiftBicNumber() + { + return self::regexify('^([A-Z]){4}([A-Z]){2}([0-9A-Z]){2}([0-9A-Z]{3})?$'); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/Person.php b/vendor/fakerphp/faker/src/Faker/Provider/Person.php new file mode 100644 index 0000000..c11a72b --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/Person.php @@ -0,0 +1,147 @@ +generator->parse($format); + } + + /** + * @param string|null $gender 'male', 'female' or null for any + * + * @return string + * + * @example 'John' + */ + public function firstName($gender = null) + { + if ($gender === static::GENDER_MALE) { + return static::firstNameMale(); + } + + if ($gender === static::GENDER_FEMALE) { + return static::firstNameFemale(); + } + + return $this->generator->parse(static::randomElement(static::$firstNameFormat)); + } + + /** + * @return string + */ + public static function firstNameMale() + { + return static::randomElement(static::$firstNameMale); + } + + /** + * @return string + */ + public static function firstNameFemale() + { + return static::randomElement(static::$firstNameFemale); + } + + /** + * @example 'Doe' + * + * @return string + */ + public function lastName() + { + return static::randomElement(static::$lastName); + } + + /** + * @example 'Mrs.' + * + * @param string|null $gender 'male', 'female' or null for any + * + * @return string + */ + public function title($gender = null) + { + if ($gender === static::GENDER_MALE) { + return static::titleMale(); + } + + if ($gender === static::GENDER_FEMALE) { + return static::titleFemale(); + } + + return $this->generator->parse(static::randomElement(static::$titleFormat)); + } + + /** + * @example 'Mr.' + * + * @return string + */ + public static function titleMale() + { + return static::randomElement(static::$titleMale); + } + + /** + * @example 'Mrs.' + * + * @return string + */ + public static function titleFemale() + { + return static::randomElement(static::$titleFemale); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/PhoneNumber.php new file mode 100644 index 0000000..515ef57 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/PhoneNumber.php @@ -0,0 +1,270 @@ +generator->parse(static::randomElement(static::$formats))); + } + + /** + * @example +11134567890 + * + * @return string + */ + public function e164PhoneNumber() + { + return static::numerify($this->generator->parse(static::randomElement(static::$e164Formats))); + } + + /** + * International Mobile Equipment Identity (IMEI) + * + * @see http://en.wikipedia.org/wiki/International_Mobile_Station_Equipment_Identity + * @see http://imei-number.com/imei-validation-check/ + * + * @example '720084494799532' + * + * @return int $imei + */ + public function imei() + { + $imei = (string) static::numerify('##############'); + $imei .= Luhn::computeCheckDigit($imei); + + return $imei; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/Text.php b/vendor/fakerphp/faker/src/Faker/Provider/Text.php new file mode 100644 index 0000000..585d5b5 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/Text.php @@ -0,0 +1,202 @@ +realTextBetween((int) round($maxNbChars * 0.8), $maxNbChars, $indexSize); + } + + /** + * Generate a text string by the Markov chain algorithm. + * + * Depending on the $maxNbChars, returns a random valid looking text. The algorithm + * generates a weighted table with the specified number of words as the index and the + * possible following words as the value. + * + * @example 'Alice, swallowing down her flamingo, and began by taking the little golden key' + * + * @param int $minNbChars Minimum number of characters the text should contain (maximum: 8) + * @param int $maxNbChars Maximum number of characters the text should contain (minimum: 10) + * @param int $indexSize Determines how many words are considered for the generation of the next word. + * The minimum is 1, and it produces a higher level of randomness, although the + * generated text usually doesn't make sense. Higher index sizes (up to 5) + * produce more correct text, at the price of less randomness. + * + * @return string + */ + public function realTextBetween($minNbChars = 160, $maxNbChars = 200, $indexSize = 2) + { + if ($minNbChars < 1) { + throw new \InvalidArgumentException('minNbChars must be at least 1'); + } + + if ($maxNbChars < 10) { + throw new \InvalidArgumentException('maxNbChars must be at least 10'); + } + + if ($indexSize < 1) { + throw new \InvalidArgumentException('indexSize must be at least 1'); + } + + if ($indexSize > 5) { + throw new \InvalidArgumentException('indexSize must be at most 5'); + } + + if ($minNbChars >= $maxNbChars) { + throw new \InvalidArgumentException('minNbChars must be smaller than maxNbChars'); + } + + $words = $this->getConsecutiveWords($indexSize); + $iterations = 0; + + do { + ++$iterations; + + if ($iterations >= 100) { + throw new \OverflowException(sprintf('Maximum retries of %d reached without finding a valid real text', $iterations)); + } + + $result = $this->generateText($maxNbChars, $words); + } while (static::strlen($result) <= $minNbChars); + + return $result; + } + + /** + * @param int $maxNbChars + * @param array $words + * + * @return string + */ + protected function generateText($maxNbChars, $words) + { + $result = []; + $resultLength = 0; + // take a random starting point + $next = static::randomKey($words); + + while ($resultLength < $maxNbChars && isset($words[$next])) { + // fetch a random word to append + $word = static::randomElement($words[$next]); + + // calculate next index + $currentWords = static::explode($next); + $currentWords[] = $word; + array_shift($currentWords); + $next = static::implode($currentWords); + + // ensure text starts with an uppercase letter + if ($resultLength == 0 && !static::validStart($word)) { + continue; + } + + // append the element + $result[] = $word; + $resultLength += static::strlen($word) + static::$separatorLen; + } + + // remove the element that caused the text to overflow + array_pop($result); + + // build result + $result = static::implode($result); + + return static::appendEnd($result); + } + + protected function getConsecutiveWords($indexSize) + { + if (!isset($this->consecutiveWords[$indexSize])) { + $parts = $this->getExplodedText(); + $words = []; + $index = []; + + for ($i = 0; $i < $indexSize; ++$i) { + $index[] = array_shift($parts); + } + + for ($i = 0, $count = count($parts); $i < $count; ++$i) { + $stringIndex = static::implode($index); + + if (!isset($words[$stringIndex])) { + $words[$stringIndex] = []; + } + $word = $parts[$i]; + $words[$stringIndex][] = $word; + array_shift($index); + $index[] = $word; + } + // cache look up words for performance + $this->consecutiveWords[$indexSize] = $words; + } + + return $this->consecutiveWords[$indexSize]; + } + + protected function getExplodedText() + { + if ($this->explodedText === null) { + $this->explodedText = static::explode(preg_replace('/\s+/u', ' ', static::$baseText)); + } + + return $this->explodedText; + } + + protected static function explode($text) + { + return explode(static::$separator, $text); + } + + protected static function implode($words) + { + return implode(static::$separator, $words); + } + + protected static function strlen($text) + { + return function_exists('mb_strlen') ? mb_strlen($text, 'UTF-8') : strlen($text); + } + + protected static function validStart($word) + { + $isValid = true; + + if (static::$textStartsWithUppercase) { + $isValid = preg_match('/^\p{Lu}/u', $word); + } + + return $isValid; + } + + protected static function appendEnd($text) + { + return preg_replace("/([ ,-:;\x{2013}\x{2014}]+$)/us", '', $text) . '.'; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/UserAgent.php b/vendor/fakerphp/faker/src/Faker/Provider/UserAgent.php new file mode 100644 index 0000000..752df4d --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/UserAgent.php @@ -0,0 +1,219 @@ +> 8) | (($tLo & 0xff000000) >> 24); + $tMi = (($tMi & 0x00ff) << 8) | (($tMi & 0xff00) >> 8); + $tHi = (($tHi & 0x00ff) << 8) | (($tHi & 0xff00) >> 8); + } + + // apply version number + $tHi &= 0x0fff; + $tHi |= (3 << 12); + + // cast to string + return sprintf( + '%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x', + $tLo, + $tMi, + $tHi, + $csHi, + $csLo, + $byte[10], + $byte[11], + $byte[12], + $byte[13], + $byte[14], + $byte[15], + ); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/ar_EG/Address.php b/vendor/fakerphp/faker/src/Faker/Provider/ar_EG/Address.php new file mode 100644 index 0000000..87facaa --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/ar_EG/Address.php @@ -0,0 +1,217 @@ + '02', + 'الإسماعيلية' => '19', + 'أسوان' => '28', + 'أسيوط' => '25', + 'الأقصر' => '29', + 'البحر الأحمر' => '31', + 'البحيرة' => '18', + 'بني سويف' => '22', + 'بورسعيد' => '03', + 'جنوب سيناء' => '35', + 'القاهرة' => '01', + 'الدقهلية' => '12', + 'دمياط' => '11', + 'سوهاج' => '26', + 'السويس' => '04', + 'الشرقية' => '13', + 'شمال سيناء' => '34', + 'الغربية' => '16', + 'الفيوم' => '23', + 'القليوبية' => '14', + 'قنا' => '27', + 'كفر الشيخ' => '15', + 'مطروح' => '33', + 'المنوفية' => '17', + 'المنيا' => '24', + 'الوادي الجديد' => '32', + ]; + + protected static $buildingNumber = ['%####', '%###', '%#']; + + protected static $postcode = ['#####', '#####-####']; + + /** + * @see http://www.nationsonline.org/oneworld/countrynames_arabic.htm + */ + protected static $country = [ + 'الكاريبي', 'أمريكا الوسطى', 'أنتيجوا وبربودا', 'أنجولا', 'أنجويلا', 'أندورا', 'اندونيسيا', 'أورجواي', 'أوروبا', 'أوزبكستان', 'أوغندا', 'أوقيانوسيا', 'أوقيانوسيا النائية', 'أوكرانيا', 'ايران', 'أيرلندا', 'أيسلندا', 'ايطاليا', + 'بابوا غينيا الجديدة', 'باراجواي', 'باكستان', 'بالاو', 'بتسوانا', 'بتكايرن', 'بربادوس', 'برمودا', 'بروناي', 'بلجيكا', 'بلغاريا', 'بليز', 'بنجلاديش', 'بنما', 'بنين', 'بوتان', 'بورتوريكو', 'بوركينا فاسو', 'بوروندي', 'بولندا', 'بوليفيا', 'بولينيزيا', 'بولينيزيا الفرنسية', 'بيرو', + 'تانزانيا', 'تايلند', 'تايوان', 'تركمانستان', 'تركيا', 'ترينيداد وتوباغو', 'تشاد', 'توجو', 'توفالو', 'توكيلو', 'تونجا', 'تونس', 'تيمور الشرقية', + 'جامايكا', 'جبل طارق', 'جرينادا', 'جرينلاند', 'جزر الأنتيل الهولندية', 'جزر الترك وجايكوس', 'جزر القمر', 'جزر الكايمن', 'جزر المارشال', 'جزر الملديف', 'جزر الولايات المتحدة البعيدة الصغيرة', 'جزر أولان', 'جزر سليمان', 'جزر فارو', 'جزر فرجين الأمريكية', 'جزر فرجين البريطانية', 'جزر فوكلاند', 'جزر كوك', 'جزر كوكوس', 'جزر ماريانا الشمالية', 'جزر والس وفوتونا', 'جزيرة الكريسماس', 'جزيرة بوفيه', 'جزيرة مان', 'جزيرة نورفوك', 'جزيرة هيرد وماكدونالد', 'جمهورية افريقيا الوسطى', 'جمهورية التشيك', 'جمهورية الدومينيك', 'جمهورية الكونغو الديمقراطية', 'جمهورية جنوب افريقيا', 'جنوب آسيا', 'جنوب أوروبا', 'جنوب شرق آسيا', 'جنوب وسط آسيا', 'جواتيمالا', 'جوادلوب', 'جوام', 'جورجيا', 'جورجيا الجنوبية وجزر ساندويتش الجنوبية', 'جيبوتي', 'جيرسي', + 'دومينيكا', + 'رواندا', 'روسيا', 'روسيا البيضاء', 'رومانيا', 'روينيون', + 'زامبيا', 'زيمبابوي', + 'ساحل العاج', 'ساموا', 'ساموا الأمريكية', 'سانت بيير وميكولون', 'سانت فنسنت وغرنادين', 'سانت كيتس ونيفيس', 'سانت لوسيا', 'سانت مارتين', 'سانت هيلنا', 'سان مارينو', 'ساو تومي وبرينسيبي', 'سريلانكا', 'سفالبارد وجان مايان', 'سلوفاكيا', 'سلوفينيا', 'سنغافورة', 'سوازيلاند', 'سوريا', 'سورينام', 'سويسرا', 'سيراليون', 'سيشل', + 'شرق آسيا', 'شرق افريقيا', 'شرق أوروبا', 'شمال افريقيا', 'شمال أمريكا', 'شمال أوروبا', 'شيلي', + 'صربيا', 'صربيا والجبل الأسود', + 'طاجكستان', + 'عمان', + 'غامبيا', 'غانا', 'غرب آسيا', 'غرب افريقيا', 'غرب أوروبا', 'غويانا', 'غيانا', 'غينيا', 'غينيا الاستوائية', 'غينيا بيساو', + 'فانواتو', 'فرنسا', 'فلسطين', 'فنزويلا', 'فنلندا', 'فيتنام', 'فيجي', + 'قبرص', 'قرغيزستان', 'قطر', + 'كازاخستان', 'كاليدونيا الجديدة', 'كرواتيا', 'كمبوديا', 'كندا', 'كوبا', 'كوريا الجنوبية', 'كوريا الشمالية', 'كوستاريكا', 'كولومبيا', 'كومنولث الدول المستقلة', 'كيريباتي', 'كينيا', + 'لاتفيا', 'لاوس', 'لبنان', 'لوكسمبورج', 'ليبيا', 'ليبيريا', 'ليتوانيا', 'ليختنشتاين', 'ليسوتو', + 'مارتينيك', 'ماكاو الصينية', 'مالطا', 'مالي', 'ماليزيا', 'مايوت', 'مدغشقر', 'مصر', 'مقدونيا', 'ملاوي', 'منغوليا', 'موريتانيا', 'موريشيوس', 'موزمبيق', 'مولدافيا', 'موناكو', 'مونتسرات', 'ميانمار', 'ميكرونيزيا', 'ميلانيزيا', + 'ناميبيا', 'نورو', 'نيبال', 'نيجيريا', 'نيكاراجوا', 'نيوزيلاندا', 'نيوي', + 'هايتي', 'هندوراس', 'هولندا', 'هونج كونج الصينية', + 'وسط آسيا', 'وسط افريقيا', + ]; + + protected static $cityFormats = [ + '{{cityName}}', + ]; + + protected static $streetNameFormats = [ + '{{streetPrefix}} {{firstName}} {{lastName}}', + ]; + + protected static $streetAddressFormats = [ + '{{buildingNumber}} {{streetName}}', + '{{buildingNumber}} {{streetName}} {{secondaryAddress}}', + ]; + + protected static $addressFormats = [ + "{{streetAddress}}\n{{city}}", + ]; + + protected static $secondaryAddressFormats = ['شقة رقم. ##', 'عمارة رقم ##']; + + /** + * @example 'شرق' + */ + public static function cityPrefix() + { + return static::randomElement(static::$cityPrefix); + } + + /** + * @example 'المعادي' + */ + public static function cityName() + { + return static::randomElement(static::$cityName); + } + + /** + * @example 'شارع' + */ + public static function streetPrefix() + { + return static::randomElement(static::$streetPrefix); + } + + /** + * @example 'شقة رقم. 350' + */ + public static function secondaryAddress() + { + return static::numerify(static::randomElement(static::$secondaryAddressFormats)); + } + + /** + * @example 'الإسكندرية' + */ + public static function governorate() + { + return static::randomKey(static::$governorates); + } + + /** + * @example '01' + * + * @return string + */ + public static function governorateId() + { + return static::randomElement(static::$governorates); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/ar_EG/Color.php b/vendor/fakerphp/faker/src/Faker/Provider/ar_EG/Color.php new file mode 100644 index 0000000..c25426a --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/ar_EG/Color.php @@ -0,0 +1,65 @@ +generator->parse($format)); + } + + /** + * @example 'wewebit.jo' + */ + public function domainName() + { + return static::randomElement(static::$lastNameAscii) . '.' . $this->tld(); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/ar_EG/Payment.php b/vendor/fakerphp/faker/src/Faker/Provider/ar_EG/Payment.php new file mode 100644 index 0000000..1e2eaaf --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/ar_EG/Payment.php @@ -0,0 +1,16 @@ += 2000 ? 3 : 2; + $fullBirthDate = date('ymd', $randomBirthDateTimestamp); + $governorateId = Address::governorateId(); + $birthRegistrationSequence = mt_rand(1, 500); + + if ($gender === static::GENDER_MALE) { + $birthRegistrationSequence = $birthRegistrationSequence | 1; // Convert to the nearest odd number + } elseif ($gender === static::GENDER_FEMALE) { + $birthRegistrationSequence = $birthRegistrationSequence & ~1; // Convert to the nearest even number + } + + $birthRegistrationSequence = str_pad((string) $birthRegistrationSequence, 4, '0', STR_PAD_LEFT); + $randomCheckDigit = mt_rand(1, 9); + + return $centuryId . $fullBirthDate . $governorateId . $birthRegistrationSequence . $randomCheckDigit; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/ar_EG/Text.php b/vendor/fakerphp/faker/src/Faker/Provider/ar_EG/Text.php new file mode 100644 index 0000000..099c408 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/ar_EG/Text.php @@ -0,0 +1,31 @@ +generator->parse($format)); + } + + /** + * @example 'wewebit.jo' + */ + public function domainName() + { + return static::randomElement(static::$lastNameAscii) . '.' . $this->tld(); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/ar_JO/Person.php b/vendor/fakerphp/faker/src/Faker/Provider/ar_JO/Person.php new file mode 100644 index 0000000..27db4e5 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/ar_JO/Person.php @@ -0,0 +1,108 @@ +generator->parse($format)); + } + + /** + * @example 'wewebit.jo' + */ + public function domainName() + { + return static::randomElement(static::$lastNameAscii) . '.' . $this->tld(); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/ar_SA/Payment.php b/vendor/fakerphp/faker/src/Faker/Provider/ar_SA/Payment.php new file mode 100644 index 0000000..a09a281 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/ar_SA/Payment.php @@ -0,0 +1,22 @@ +generator->parse(static::randomElement(static::$lastNameFormat)); + } + + public static function lastNameMale() + { + return static::randomElement(static::$lastNameMale); + } + + public static function lastNameFemale() + { + return static::randomElement(static::$lastNameFemale); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/bg_BG/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/bg_BG/PhoneNumber.php new file mode 100644 index 0000000..22051df --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/bg_BG/PhoneNumber.php @@ -0,0 +1,20 @@ +generator->parse($format)); + } + + /** + * Generates valid czech IČO + * + * @see http://phpfashion.com/jak-overit-platne-ic-a-rodne-cislo + * + * @return string + */ + public function ico() + { + $ico = static::numerify('#######'); + $split = str_split($ico); + $prod = 0; + + foreach ([8, 7, 6, 5, 4, 3, 2] as $i => $p) { + $prod += $p * $split[$i]; + } + $mod = $prod % 11; + + if ($mod === 0 || $mod === 10) { + return "{$ico}1"; + } + + if ($mod === 1) { + return "{$ico}0"; + } + + return $ico . (11 - $mod); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/cs_CZ/DateTime.php b/vendor/fakerphp/faker/src/Faker/Provider/cs_CZ/DateTime.php new file mode 100644 index 0000000..e136e65 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/cs_CZ/DateTime.php @@ -0,0 +1,65 @@ +format('w')]; + } + + /** + * @param \DateTime|int|string $max maximum timestamp used as random end limit, default to "now" + * + * @return string + * + * @example '2' + */ + public static function dayOfMonth($max = 'now') + { + return static::dateTime($max)->format('j'); + } + + /** + * Full date with inflected month + * + * @return string + * + * @example '16. listopadu 2003' + */ + public function formattedDate() + { + $format = static::randomElement(static::$formattedDateFormat); + + return $this->generator->parse($format); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/cs_CZ/Internet.php b/vendor/fakerphp/faker/src/Faker/Provider/cs_CZ/Internet.php new file mode 100644 index 0000000..ce5b266 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/cs_CZ/Internet.php @@ -0,0 +1,9 @@ +generator->boolean() ? static::GENDER_MALE : static::GENDER_FEMALE; + } + + $startTimestamp = strtotime(sprintf('-%d year', $maxAge)); + $endTimestamp = strtotime(sprintf('-%d year', $minAge)); + $randTimestamp = self::numberBetween($startTimestamp, $endTimestamp); + + $year = (int) (date('Y', $randTimestamp)); + $month = (int) (date('n', $randTimestamp)); + $day = (int) (date('j', $randTimestamp)); + $suffix = self::numberBetween(0, 999); + + // women has +50 to month + if ($gender == static::GENDER_FEMALE) { + $month += 50; + } + + // from year 2004 everyone has +20 to month when birth numbers in one day are exhausted + if ($year >= 2004 && $this->generator->boolean(10)) { + $month += 20; + } + + $birthNumber = sprintf('%02d%02d%02d%03d', $year % 100, $month, $day, $suffix); + + // from year 1954 birth number includes CRC + if ($year >= 1954) { + $crc = intval($birthNumber, 10) % 11; + + if ($crc == 10) { + $crc = 0; + } + $birthNumber .= sprintf('%d', $crc); + } + + // add slash + if ($this->generator->boolean($slashProbability)) { + $birthNumber = substr($birthNumber, 0, 6) . '/' . substr($birthNumber, 6); + } + + return $birthNumber; + } + + public static function birthNumberMale() + { + return static::birthNumber(static::GENDER_MALE); + } + + public static function birthNumberFemale() + { + return static::birthNumber(static::GENDER_FEMALE); + } + + public function title($gender = null) + { + return static::titleMale(); + } + + /** + * replaced by specific unisex Czech title + */ + public static function titleMale() + { + return static::randomElement(static::$title); + } + + /** + * replaced by specific unisex Czech title + */ + public static function titleFemale() + { + return static::titleMale(); + } + + /** + * @param string|null $gender 'male', 'female' or null for any + * + * @example 'Albrecht' + */ + public function lastName($gender = null) + { + if ($gender === static::GENDER_MALE) { + return static::lastNameMale(); + } + + if ($gender === static::GENDER_FEMALE) { + return static::lastNameFemale(); + } + + return $this->generator->parse(static::randomElement(static::$lastNameFormat)); + } + + public static function lastNameMale() + { + return static::randomElement(static::$lastNameMale); + } + + public static function lastNameFemale() + { + return static::randomElement(static::$lastNameFemale); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/cs_CZ/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/cs_CZ/PhoneNumber.php new file mode 100644 index 0000000..a527a25 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/cs_CZ/PhoneNumber.php @@ -0,0 +1,14 @@ +format('dmy'), static::numerify('%###')); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/da_DK/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/da_DK/PhoneNumber.php new file mode 100644 index 0000000..6e8c28d --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/da_DK/PhoneNumber.php @@ -0,0 +1,18 @@ +format('dmy'); + + do { + $consecutiveNumber = (string) self::numberBetween(100, 999); + + $verificationNumber = ( + (int) $consecutiveNumber[0] * 3 + + (int) $consecutiveNumber[1] * 7 + + (int) $consecutiveNumber[2] * 9 + + (int) $birthDateString[0] * 5 + + (int) $birthDateString[1] * 8 + + (int) $birthDateString[2] * 4 + + (int) $birthDateString[3] * 2 + + (int) $birthDateString[4] * 1 + + (int) $birthDateString[5] * 6 + ) % 11; + } while ($verificationNumber == 10); + + return sprintf('%s%s%s', $consecutiveNumber, $verificationNumber, $birthDateString); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/de_AT/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/de_AT/PhoneNumber.php new file mode 100644 index 0000000..00fbe67 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/de_AT/PhoneNumber.php @@ -0,0 +1,23 @@ + 'Aargau'], + ['AI' => 'Appenzell Innerrhoden'], + ['AR' => 'Appenzell Ausserrhoden'], + ['BE' => 'Bern'], + ['BL' => 'Basel-Landschaft'], + ['BS' => 'Basel-Stadt'], + ['FR' => 'Freiburg'], + ['GE' => 'Genf'], + ['GL' => 'Glarus'], + ['GR' => 'Graubünden'], + ['JU' => 'Jura'], + ['LU' => 'Luzern'], + ['NE' => 'Neuenburg'], + ['NW' => 'Nidwalden'], + ['OW' => 'Obwalden'], + ['SG' => 'St. Gallen'], + ['SH' => 'Schaffhausen'], + ['SO' => 'Solothurn'], + ['SZ' => 'Schwyz'], + ['TG' => 'Thurgau'], + ['TI' => 'Tessin'], + ['UR' => 'Uri'], + ['VD' => 'Waadt'], + ['VS' => 'Wallis'], + ['ZG' => 'Zug'], + ['ZH' => 'Zürich'], + ]; + + protected static $country = [ + 'Afghanistan', 'Alandinseln', 'Albanien', 'Algerien', 'Amerikanisch-Ozeanien', 'Amerikanisch-Samoa', 'Amerikanische Jungferninseln', 'Andorra', 'Angola', 'Anguilla', 'Antarktis', 'Antigua und Barbuda', 'Argentinien', 'Armenien', 'Aruba', 'Aserbaidschan', 'Australien', 'Ägypten', 'Äquatorialguinea', 'Äthiopien', 'Äusseres Ozeanien', + 'Bahamas', 'Bahrain', 'Bangladesch', 'Barbados', 'Belarus', 'Belgien', 'Belize', 'Benin', 'Bermuda', 'Bhutan', 'Bolivien', 'Bosnien und Herzegowina', 'Botsuana', 'Bouvetinsel', 'Brasilien', 'Britische Jungferninseln', 'Britisches Territorium im Indischen Ozean', 'Brunei Darussalam', 'Bulgarien', 'Burkina Faso', 'Burundi', + 'Chile', 'China', 'Cookinseln', 'Costa Rica', 'Côte d’Ivoire', + 'Demokratische Republik Kongo', 'Demokratische Volksrepublik Korea', 'Deutschland', 'Dominica', 'Dominikanische Republik', 'Dschibuti', 'Dänemark', + 'Ecuador', 'El Salvador', 'Eritrea', 'Estland', 'Europäische Union', + 'Falklandinseln', 'Fidschi', 'Finnland', 'Frankreich', 'Französisch-Guayana', 'Französisch-Polynesien', 'Französische Süd- und Antarktisgebiete', 'Färöer', + 'Gabun', 'Gambia', 'Georgien', 'Ghana', 'Gibraltar', 'Grenada', 'Griechenland', 'Grönland', 'Guadeloupe', 'Guam', 'Guatemala', 'Guernsey', 'Guinea', 'Guinea-Bissau', 'Guyana', + 'Haiti', 'Heard- und McDonald-Inseln', 'Honduras', + 'Indien', 'Indonesien', 'Irak', 'Iran', 'Irland', 'Island', 'Isle of Man', 'Israel', 'Italien', + 'Jamaika', 'Japan', 'Jemen', 'Jersey', 'Jordanien', + 'Kaimaninseln', 'Kambodscha', 'Kamerun', 'Kanada', 'Kap Verde', 'Kasachstan', 'Katar', 'Kenia', 'Kirgisistan', 'Kiribati', 'Kokosinseln', 'Kolumbien', 'Komoren', 'Kongo', 'Kroatien', 'Kuba', 'Kuwait', + 'Laos', 'Lesotho', 'Lettland', 'Libanon', 'Liberia', 'Libyen', 'Liechtenstein', 'Litauen', 'Luxemburg', + 'Madagaskar', 'Malawi', 'Malaysia', 'Malediven', 'Mali', 'Malta', 'Marokko', 'Marshallinseln', 'Martinique', 'Mauretanien', 'Mauritius', 'Mayotte', 'Mazedonien', 'Mexiko', 'Mikronesien', 'Monaco', 'Mongolei', 'Montenegro', 'Montserrat', 'Mosambik', 'Myanmar', + 'Namibia', 'Nauru', 'Nepal', 'Neukaledonien', 'Neuseeland', 'Nicaragua', 'Niederlande', 'Niederländische Antillen', 'Niger', 'Nigeria', 'Niue', 'Norfolkinsel', 'Norwegen', 'Nördliche Marianen', + 'Oman', 'Osttimor', 'Österreich', + 'Pakistan', 'Palau', 'Palästinensische Gebiete', 'Panama', 'Papua-Neuguinea', 'Paraguay', 'Peru', 'Philippinen', 'Pitcairn', 'Polen', 'Portugal', 'Puerto Rico', + 'Republik Korea', 'Republik Moldau', 'Ruanda', 'Rumänien', 'Russische Föderation', 'Réunion', + 'Salomonen', 'Sambia', 'Samoa', 'San Marino', 'Saudi-Arabien', 'Schweden', 'Schweiz', 'Senegal', 'Serbien', 'Serbien und Montenegro', 'Seychellen', 'Sierra Leone', 'Simbabwe', 'Singapur', 'Slowakei', 'Slowenien', 'Somalia', 'Sonderverwaltungszone Hongkong', 'Sonderverwaltungszone Macao', 'Spanien', 'Sri Lanka', 'St. Barthélemy', 'St. Helena', 'St. Kitts und Nevis', 'St. Lucia', 'St. Martin', 'St. Pierre und Miquelon', 'St. Vincent und die Grenadinen', 'Sudan', 'Suriname', 'Svalbard und Jan Mayen', 'Swasiland', 'Syrien', 'São Tomé und Príncipe', 'Südafrika', 'Südgeorgien und die Südlichen Sandwichinseln', + 'Tadschikistan', 'Taiwan', 'Tansania', 'Thailand', 'Togo', 'Tokelau', 'Tonga', 'Trinidad und Tobago', 'Tschad', 'Tschechische Republik', 'Tunesien', 'Turkmenistan', 'Turks- und Caicosinseln', 'Tuvalu', 'Türkei', + 'Uganda', 'Ukraine', 'Unbekannte oder ungültige Region', 'Ungarn', 'Uruguay', 'Usbekistan', + 'Vanuatu', 'Vatikanstadt', 'Venezuela', 'Vereinigte Arabische Emirate', 'Vereinigte Staaten', 'Vereinigtes Königreich', 'Vietnam', + 'Wallis und Futuna', 'Weihnachtsinsel', 'Westsahara', + 'Zentralafrikanische Republik', 'Zypern', + ]; + + protected static $cityFormats = [ + '{{cityName}}', + ]; + + protected static $streetNameFormats = [ + '{{lastName}}{{streetSuffixShort}}', + '{{cityName}}{{streetSuffixShort}}', + '{{firstName}}-{{lastName}}-{{streetSuffixLong}}', + ]; + + protected static $streetAddressFormats = [ + '{{streetName}} {{buildingNumber}}', + ]; + protected static $addressFormats = [ + "{{streetAddress}}\n{{postcode}} {{city}}", + ]; + + /** + * Returns a random city name. + * + * @example Luzern + * + * @return string + */ + public function cityName() + { + return static::randomElement(static::$cityNames); + } + + /** + * Returns a random street suffix. + * + * @example str. + * + * @return string + */ + public function streetSuffixShort() + { + return static::randomElement(static::$streetSuffixShort); + } + + /** + * Returns a random street suffix. + * + * @example Strasse + * + * @return string + */ + public function streetSuffixLong() + { + return static::randomElement(static::$streetSuffixLong); + } + + /** + * Returns a canton + * + * @example array('BE' => 'Bern') + * + * @return array + */ + public static function canton() + { + return static::randomElement(static::$canton); + } + + /** + * Returns the abbreviation of a canton. + * + * @return string + */ + public static function cantonShort() + { + $canton = static::canton(); + + return key($canton); + } + + /** + * Returns the name of canton. + * + * @return string + */ + public static function cantonName() + { + $canton = static::canton(); + + return current($canton); + } + + public static function buildingNumber() + { + return static::regexify(self::numerify(static::randomElement(static::$buildingNumber))); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/de_CH/Company.php b/vendor/fakerphp/faker/src/Faker/Provider/de_CH/Company.php new file mode 100644 index 0000000..ead2781 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/de_CH/Company.php @@ -0,0 +1,15 @@ + + */ + protected static $areaCodeRegexes = [ + 2 => '(0[0-389]|0[4-6][1-68]|1[124]|1[0-9][0-9]|2[18]|2[0-9][1-9]|3[14]|3[0-35-9][0-9]|4[1]|4[02-8][0-9]|5[1]|5[02-9][0-9]|6[1]|6[02-9][0-9]|7[1]|7[2-7][0-9]|8[1]|8[02-7][0-9]|9[1]|9[02-9][0-9])', + 3 => '(0|3[15]|3[02-46-9][1-9]|3[02-46-9][02-9][0-9]|4[015]|4[2-4679][1-8]|4[2-4679][02-9][0-9]|5[15]|5[02-46-9][1-9]|5[02-46-9][02-9][0-9]|6[15]|6[02-46-9][1-9]|6[02-46-9][02-9][0-9]|7[15]|7[2-467][1-7]|7[2-467][02-689][0-9]|8[15]|8[2-46-8][013-9]|8[2-46-8][02-9][0-9]|9[15]|9[02-46-9][1-9]|9[02-46-9][02-9][0-9])', + 4 => '(0|1[02-9][0-9]|2[1]|2[02-9][0-9]|3[1]|3[02-9][0-9]|4[1]|4[0-9][0-9]|5[1]|5[02-6][0-9]|6[1]|6[02-8][0-9]|7[1]|7[02-79][0-9]|8[1]|8[02-9][0-9]|9[1]|9[02-7][0-9])', + 5 => '(0[2-8][0-9]|1[1]|1[02-9][0-9]|2[1]|2[02-9][1-9]|3[1]|3[02-8][0-9]|4[1]|4[02-9][1-9]|5[1]|5[02-9][0-9]|6[1]|6[02-9][0-9]|7[1]|7[02-7][1-9]|8[1]|8[02-8][0-9]|9[1]|9[0-7][1-9])', + 6 => '(0[02-9][0-9]|1[1]|1[02-9][0-9]|2[1]|2[02-9][0-9]|3[1]|3[02-9][0-9]|4[1]|4[0-8][0-9]|5[1]|5[02-9][0-9]|6[1]|6[2-9][0-9]|7[1]|7[02-8][1-9]|8[1]|8[02-9][1-9]|9)', + 7 => '(0[2-8][1-6]|1[1]|1[2-9][0-9]|2[1]|2[0-7][0-9]|3[1]|3[02-9][0-9]|4[1]|4[0-8][0-9]|5[1]|5[02-8][0-9]|6[1]|6[02-8][0-9]|7[1]|7[02-7][0-9]|8[1]|8[02-5][1-9]|9[1]|9[03-7][0-9])', + 8 => '(0[2-9][0-9]|1[1]|1[02-79][0-9]|2[1]|2[02-9][0-9]|3[1]|3[02-9][0-9]|4[1]|4[02-6][0-9]|5[1]|5[02-9][0-9]|6[1]|6[2-8][0-9]|7[1]|7[02-8][1-9]|8[1]|8[02-6][0-9]|9)', + 9 => '(0[6]|0[07-9][0-9]|1[1]|1[02-9][0-9]|2[1]|2[02-9][0-9]|3[1]|3[02-9][0-9]|4[1]|4[02-9][0-9]|5[1]|5[02-7][0-9]|6[1]|6[02-8][1-9]|7[1]|7[02-467][0-9]|8[1]|8[02-7][0-9]|9[1]|9[02-7][0-9])', + ]; + + /** + * @see https://en.wikipedia.org/wiki/National_conventions_for_writing_telephone_numbers#Germany + * @see https://www.itu.int/oth/T0202000051/en + * @see https://en.wikipedia.org/wiki/Telephone_numbers_in_Germany + */ + protected static $formats = [ + // International format + '+49 {{areaCode}} #######', + '+49 {{areaCode}} ### ####', + '+49 (0{{areaCode}}) #######', + '+49 (0{{areaCode}}) ### ####', + '+49{{areaCode}}#######', + '+49{{areaCode}}### ####', + + // Standard formats + '0{{areaCode}} ### ####', + '0{{areaCode}} #######', + '(0{{areaCode}}) ### ####', + '(0{{areaCode}}) #######', + ]; + + protected static $e164Formats = [ + '+49{{areaCode}}#######', + ]; + + /** + * @see https://en.wikipedia.org/wiki/Toll-free_telephone_number + */ + protected static $tollFreeAreaCodes = [ + 800, + ]; + + protected static $tollFreeFormats = [ + // Standard formats + '0{{tollFreeAreaCode}} ### ####', + '(0{{tollFreeAreaCode}}) ### ####', + '+49{{tollFreeAreaCode}} ### ####', + ]; + + public function tollFreeAreaCode() + { + return self::randomElement(static::$tollFreeAreaCodes); + } + + public function tollFreePhoneNumber() + { + $format = self::randomElement(static::$tollFreeFormats); + + return self::numerify($this->generator->parse($format)); + } + + protected static $mobileCodes = [ + 1511, 1512, 1514, 1515, 1516, 1517, + 1520, 1521, 1522, 1523, 1525, 1526, 1529, + 1570, 1573, 1575, 1577, 1578, 1579, + 1590, + ]; + + protected static $mobileFormats = [ + '+49{{mobileCode}}#######', + '+49 {{mobileCode}} ### ####', + '0{{mobileCode}}#######', + '0{{mobileCode}} ### ####', + '0 {{mobileCode}} ### ####', + ]; + + /** + * @see https://en.wikipedia.org/wiki/List_of_dialling_codes_in_Germany + * + * @return string + */ + public static function areaCode() + { + $firstDigit = self::numberBetween(2, 9); + + return $firstDigit . self::regexify(self::$areaCodeRegexes[$firstDigit]); + } + + /** + * Generate a code for a mobile number. + * + * @internal Used to generate mobile numbers. + * + * @return string + */ + public static function mobileCode() + { + return static::randomElement(static::$mobileCodes); + } + + /** + * Generate a mobile number. + * + * @example A mobile number: '015111234567' + * @example A mobile number with spaces: '01511 123 4567' + * @example A mobile number with international code prefix: '+4915111234567' + * @example A mobile number with international code prefix and spaces: '+49 1511 123 4567' + * + * @return string + */ + public function mobileNumber() + { + return ltrim(static::numerify($this->generator->parse( + static::randomElement(static::$mobileFormats), + ))); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/de_DE/Text.php b/vendor/fakerphp/faker/src/Faker/Provider/de_DE/Text.php new file mode 100644 index 0000000..55ed5a5 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/de_DE/Text.php @@ -0,0 +1,2038 @@ +generator->parse(static::randomElement(static::$lastNameFormat)); + } + + /** + * @example 'Θεοδωρόπουλος' + */ + public static function lastNameMale() + { + return static::randomElement(static::$lastNameMale); + } + + /** + * @example 'Κοκκίνου' + */ + public static function lastNameFemale() + { + return static::randomElement(static::$lastNameFemale); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/el_GR/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/el_GR/PhoneNumber.php new file mode 100644 index 0000000..5303248 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/el_GR/PhoneNumber.php @@ -0,0 +1,324 @@ +generator->parse( + static::randomElement(static::$fixedLineFormats), + ))); + } + + /** + * Generate a code for a mobile number. + * + * @internal Used to generate mobile numbers. + * + * @return string + */ + public static function mobileCode() + { + return static::randomElement(static::$mobileCodes); + } + + /** + * Generate a mobile number. + * + * @example A mobile number: '6901234567' + * @example A mobile number with spaces: '690 123 4567' + * @example A mobile number with international code prefix: '+306901234567' + * @example A mobile number with international code prefix and spaces: '+30 690 123 4567' + * + * @return string + */ + public function mobileNumber() + { + return ltrim(static::numerify($this->generator->parse( + static::randomElement(static::$mobileFormats), + ))); + } + + /** + * @deprecated Use PhoneNumber::mobileNumber() instead. + */ + public static function mobilePhoneNumber() + { + return static::numerify( + strtr(static::randomElement(static::$mobileFormats), [ + '{{internationalCodePrefix}}' => static::internationalCodePrefix(), + '{{mobileCode}}' => static::mobileCode(), + ]), + ); + } + + /** + * Generate a personal number. + * + * @example A personal number: '7012345678' + * @example A personal number with spaces: '70 1234 5678' + * @example A personal number with international code prefix: '+307012345678' + * @example A personal number with international code prefix and spaces: '+30 70 1234 5678' + * + * @return string + */ + public function personalNumber() + { + return ltrim(static::numerify($this->generator->parse( + static::randomElement(static::$personalFormats), + ))); + } + + /** + * Generate a toll-free number. + * + * @example A toll-free number: '8001234567' + * @example A toll-free number with spaces: '800 123 4567' + * @example A toll-free number with international code prefix: '+308001234567' + * @example A toll-free number with international code prefix and spaces: '+30 800 123 4567' + * + * @return string + */ + public static function tollFreeNumber() + { + return ltrim(static::numerify( + strtr(static::randomElement(static::$tollFreeFormats), [ + '{{internationalCodePrefix}}' => static::internationalCodePrefix(), + ]), + )); + } + + /** + * Generate a code for a shared-cost number. + * + * @internal Used to generate shared-cost numbers. + * + * @return string + */ + public static function sharedCostCode() + { + return static::randomElement(static::$sharedCostCodes); + } + + /** + * Generate a shared-cost number. + * + * @example A shared-cost number: '8011234567' + * @example A shared-cost number with spaces: '801 123 4567' + * @example A shared-cost number with international code prefix: '+308011234567' + * @example A shared-cost number with international code prefix and spaces: '+30 801 123 4567' + * + * @return string + */ + public function sharedCostNumber() + { + return ltrim(static::numerify($this->generator->parse( + static::randomElement(static::$sharedCostFormats), + ))); + } + + /** + * Generate a code for a premium-rate number. + * + * @internal Used to generate premium-rate numbers. + * + * @return string + */ + public static function premiumRateCode() + { + return static::randomElement(static::$premiumRateCodes); + } + + /** + * Generate a premium-rate number. + * + * @example A premium-rate number: '9011234567' + * @example A premium-rate number with spaces: '901 123 4567' + * @example A premium-rate number with international code prefix: '+309011234567' + * @example A premium-rate number with international code prefix and spaces: '+30 901 123 4567' + * + * @return string + */ + public function premiumRateNumber() + { + return ltrim(static::numerify($this->generator->parse( + static::randomElement(static::$premiumRateFormats), + ))); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/el_GR/Text.php b/vendor/fakerphp/faker/src/Faker/Provider/el_GR/Text.php new file mode 100644 index 0000000..f4be760 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/el_GR/Text.php @@ -0,0 +1,2582 @@ + 0) { + $sum -= 97; + } + $sum = $sum * -1; + + return str_pad((string) $sum, 2, '0', STR_PAD_LEFT); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/en_GB/Internet.php b/vendor/fakerphp/faker/src/Faker/Provider/en_GB/Internet.php new file mode 100644 index 0000000..ef5934a --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/en_GB/Internet.php @@ -0,0 +1,9 @@ +generator->parse(static::randomElement(static::$towns)); + } + + public function syllable() + { + return static::randomElement(static::$syllables); + } + + public function direction() + { + return static::randomElement(static::$directions); + } + + public function englishStreetName() + { + return static::randomElement(static::$englishStreetNames); + } + + public function villageSuffix() + { + return static::randomElement(static::$villageSuffixes); + } + + public function estateSuffix() + { + return static::randomElement(static::$estateSuffixes); + } + + public function village() + { + return $this->generator->parse(static::randomElement(static::$villageNameFormats)); + } + + public function estate() + { + return $this->generator->parse(static::randomElement(static::$estateNameFormats)); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/en_HK/Internet.php b/vendor/fakerphp/faker/src/Faker/Provider/en_HK/Internet.php new file mode 100644 index 0000000..2de48a5 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/en_HK/Internet.php @@ -0,0 +1,14 @@ +generator->parse(static::randomElement(static::$societyNameFormat)); + } + + /** + * @example Mumbai + */ + public function city() + { + return static::randomElement(static::$city); + } + + /** + * @example Vaishali Nagar + */ + public function locality() + { + return $this->generator->parse(static::randomElement(static::$localityFormats)); + } + + /** + * @example Kharadi + */ + public function localityName() + { + return $this->generator->parse(static::randomElement(static::$localityName)); + } + + /** + * @example Nagar + */ + public function areaSuffix() + { + return static::randomElement(static::$areaSuffix); + } + + /** + * @example 'Delhi' + */ + public static function state() + { + return static::randomElement(static::$state); + } + + /** + * @example 'DL' + */ + public static function stateAbbr() + { + return static::randomElement(static::$stateAbbr); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/en_IN/Internet.php b/vendor/fakerphp/faker/src/Faker/Provider/en_IN/Internet.php new file mode 100644 index 0000000..a543535 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/en_IN/Internet.php @@ -0,0 +1,9 @@ +format('y'); + $checksumArr = ['J', 'Z', 'I', 'H', 'G', 'F', 'E', 'D', 'C', 'B', 'A']; + } + + $length = count($weights); + + for ($i = strlen($result); $i < $length; ++$i) { + $result .= static::randomDigit(); + } + + $checksum = in_array($prefix, ['G', 'T'], true) ? 4 : 0; + + for ($i = 0; $i < $length; ++$i) { + $checksum += (int) $result[$i] * $weights[$i]; + } + + return $prefix . $result . $checksumArr[$checksum % 11]; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/en_SG/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/en_SG/PhoneNumber.php new file mode 100644 index 0000000..f5e3ca6 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/en_SG/PhoneNumber.php @@ -0,0 +1,105 @@ +generator->parse($format)); + } + + public function fixedLineNumber() + { + $format = static::randomElement(static::$fixedLineNumberFormats); + + return static::numerify($this->generator->parse($format)); + } + + public function voipNumber() + { + $format = static::randomElement(static::$voipNumber); + + return static::numerify($this->generator->parse($format)); + } + + public function internationalCodePrefix() + { + return static::randomElement(static::$internationalCodePrefix); + } + + public function zeroToEight() + { + return static::randomElement(static::$zeroToEight); + } + + public function oneToEight() + { + return static::randomElement(static::$oneToEight); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/en_UG/Address.php b/vendor/fakerphp/faker/src/Faker/Provider/en_UG/Address.php new file mode 100644 index 0000000..9024b8b --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/en_UG/Address.php @@ -0,0 +1,101 @@ + + */ + protected static $areaCodeRegexes = [ + 2 => '(0[1-35-9]|1[02-9]|2[03-589]|3[149]|4[08]|5[1-46]|6[0279]|7[0269]|8[13])', + 3 => '(0[1-57-9]|1[02-9]|2[0135]|3[0-24679]|4[167]|5[12]|6[014]|8[056])', + 4 => '(0[124-9]|1[02-579]|2[3-5]|3[0245]|4[0235]|58|6[39]|7[0589]|8[04])', + 5 => '(0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[19]|6[1-47]|7[013-5]|8[056])', + 6 => '(0[1-35-9]|1[024-9]|2[03689]|[34][016]|5[017]|6[0-279]|78|8[0-29])', + 7 => '(0[1-46-8]|1[2-9]|2[04-7]|3[1247]|4[037]|5[47]|6[02359]|7[02-59]|8[156])', + 8 => '(0[1-68]|1[02-8]|2[08]|3[0-28]|4[3578]|5[046-9]|6[02-5]|7[028])', + 9 => '(0[1346-9]|1[02-9]|2[0589]|3[0146-8]|4[0179]|5[12469]|7[0-389]|8[04-69])', + ]; + + /** + * @see https://en.wikipedia.org/wiki/National_conventions_for_writing_telephone_numbers#United_States.2C_Canada.2C_and_other_NANP_countries + */ + protected static $formats = [ + // International format + '+1-{{areaCode}}-{{exchangeCode}}-####', + '+1 ({{areaCode}}) {{exchangeCode}}-####', + '+1-{{areaCode}}-{{exchangeCode}}-####', + '+1.{{areaCode}}.{{exchangeCode}}.####', + '+1{{areaCode}}{{exchangeCode}}####', + + // Standard formats + '{{areaCode}}-{{exchangeCode}}-####', + '({{areaCode}}) {{exchangeCode}}-####', + '1-{{areaCode}}-{{exchangeCode}}-####', + '{{areaCode}}.{{exchangeCode}}.####', + + '{{areaCode}}-{{exchangeCode}}-####', + '({{areaCode}}) {{exchangeCode}}-####', + '1-{{areaCode}}-{{exchangeCode}}-####', + '{{areaCode}}.{{exchangeCode}}.####', + ]; + + protected static $formatsWithExtension = [ + '{{areaCode}}-{{exchangeCode}}-#### x###', + '({{areaCode}}) {{exchangeCode}}-#### x###', + '1-{{areaCode}}-{{exchangeCode}}-#### x###', + '{{areaCode}}.{{exchangeCode}}.#### x###', + + '{{areaCode}}-{{exchangeCode}}-#### x####', + '({{areaCode}}) {{exchangeCode}}-#### x####', + '1-{{areaCode}}-{{exchangeCode}}-#### x####', + '{{areaCode}}.{{exchangeCode}}.#### x####', + + '{{areaCode}}-{{exchangeCode}}-#### x#####', + '({{areaCode}}) {{exchangeCode}}-#### x#####', + '1-{{areaCode}}-{{exchangeCode}}-#### x#####', + '{{areaCode}}.{{exchangeCode}}.#### x#####', + ]; + + protected static $e164Formats = [ + '+1{{areaCode}}{{exchangeCode}}####', + ]; + + /** + * @see https://en.wikipedia.org/wiki/Toll-free_telephone_number#United_States + */ + protected static $tollFreeAreaCodes = [ + 800, 844, 855, 866, 877, 888, + ]; + protected static $tollFreeFormats = [ + // Standard formats + '{{tollFreeAreaCode}}-{{exchangeCode}}-####', + '({{tollFreeAreaCode}}) {{exchangeCode}}-####', + '1-{{tollFreeAreaCode}}-{{exchangeCode}}-####', + '{{tollFreeAreaCode}}.{{exchangeCode}}.####', + ]; + + public function tollFreeAreaCode() + { + return self::randomElement(static::$tollFreeAreaCodes); + } + + public function tollFreePhoneNumber() + { + $format = self::randomElement(static::$tollFreeFormats); + + return self::numerify($this->generator->parse($format)); + } + + /** + * @return string + * + * @example '555-123-546 x123' + */ + public function phoneNumberWithExtension() + { + return static::numerify($this->generator->parse(static::randomElement(static::$formatsWithExtension))); + } + + /** + * NPA-format area code + * + * @see https://en.wikipedia.org/wiki/North_American_Numbering_Plan#Numbering_system + * + * @return string + */ + public static function areaCode() + { + $firstDigit = self::numberBetween(2, 9); + + return $firstDigit . self::regexify(self::$areaCodeRegexes[$firstDigit]); + } + + /** + * NXX-format central office exchange code + * + * @see https://en.wikipedia.org/wiki/North_American_Numbering_Plan#Numbering_system + * + * @return string + */ + public static function exchangeCode() + { + $digits[] = self::numberBetween(2, 9); + $digits[] = self::randomDigit(); + + if ($digits[1] === 1) { + $digits[] = self::randomDigitNot(1); + } else { + $digits[] = self::randomDigit(); + } + + return implode('', $digits); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/en_US/Text.php b/vendor/fakerphp/faker/src/Faker/Provider/en_US/Text.php new file mode 100644 index 0000000..c15d89d --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/en_US/Text.php @@ -0,0 +1,3721 @@ +format('Y'), + static::randomNumber(6, true), + static::randomElement(static::$legalEntities), + ); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/en_ZA/Internet.php b/vendor/fakerphp/faker/src/Faker/Provider/en_ZA/Internet.php new file mode 100644 index 0000000..c222227 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/en_ZA/Internet.php @@ -0,0 +1,23 @@ +generator->dateTimeThisCentury(); + } + $birthDateString = $birthdate->format('ymd'); + + switch (strtolower($gender ?: '')) { + case static::GENDER_FEMALE: + $genderDigit = self::numberBetween(0, 4); + + break; + + case static::GENDER_MALE: + $genderDigit = self::numberBetween(5, 9); + + break; + + default: + $genderDigit = self::numberBetween(0, 9); + } + $sequenceDigits = str_pad(self::randomNumber(3), 3, 0, STR_PAD_BOTH); + $citizenDigit = ($citizen === true) ? '0' : '1'; + $raceDigit = self::numberBetween(8, 9); + + $partialIdNumber = $birthDateString . $genderDigit . $sequenceDigits . $citizenDigit . $raceDigit; + + return $partialIdNumber . Luhn::computeCheckDigit($partialIdNumber); + } + + /** + * @see https://en.wikipedia.org/wiki/Driving_licence_in_South_Africa + * + * @return string + */ + public function licenceCode() + { + return static::randomElement(static::$licenceCodes); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/en_ZA/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/en_ZA/PhoneNumber.php new file mode 100644 index 0000000..567631a --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/en_ZA/PhoneNumber.php @@ -0,0 +1,116 @@ +generator->parse($format)); + } + + public function tollFreeNumber() + { + $format = static::randomElement(static::$specialFormats); + + return self::numerify($this->generator->parse($format)); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/es_AR/Address.php b/vendor/fakerphp/faker/src/Faker/Provider/es_AR/Address.php new file mode 100644 index 0000000..457f8ca --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/es_AR/Address.php @@ -0,0 +1,68 @@ +numberBetween(10000, 100000000); + } + + return $id . $separator . $this->numberBetween(80000000, 100000000); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/es_VE/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/es_VE/PhoneNumber.php new file mode 100644 index 0000000..cfe6438 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/es_VE/PhoneNumber.php @@ -0,0 +1,29 @@ +generator->parse($format); + } + + /** + * @example 'کد پستی' + */ + public static function postcodePrefix() + { + return static::randomElement(static::$postcodePrefix); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/fa_IR/Company.php b/vendor/fakerphp/faker/src/Faker/Provider/fa_IR/Company.php new file mode 100644 index 0000000..15da3c5 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/fa_IR/Company.php @@ -0,0 +1,60 @@ +generator->parse($format)); + } + + /** + * @example 'ahmad.ir' + */ + public function domainName() + { + return static::randomElement(static::$lastNameAscii) . '.' . $this->tld(); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/fa_IR/Person.php b/vendor/fakerphp/faker/src/Faker/Provider/fa_IR/Person.php new file mode 100644 index 0000000..546e2a3 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/fa_IR/Person.php @@ -0,0 +1,210 @@ + 1; --$i) { + $sum += $subNationalCodeString[$count] * ($i); + ++$count; + } + + if (($sum % 11) < 2) { + return $sum % 11; + } + + return 11 - ($sum % 11); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/fa_IR/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/fa_IR/PhoneNumber.php new file mode 100644 index 0000000..a9606d0 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/fa_IR/PhoneNumber.php @@ -0,0 +1,76 @@ + 5) { + throw new \InvalidArgumentException('indexSize must be at most 5'); + } + + $words = $this->getConsecutiveWords($indexSize); + $result = []; + $resultLength = 0; + // take a random starting point + $next = static::randomKey($words); + + while ($resultLength < $maxNbChars && isset($words[$next])) { + // fetch a random word to append + $word = static::randomElement($words[$next]); + + // calculate next index + $currentWords = explode(' ', $next); + + $currentWords[] = $word; + array_shift($currentWords); + $next = implode(' ', $currentWords); + + if ($resultLength == 0 && !preg_match('/^[\x{0600}-\x{06FF}]/u', $word)) { + continue; + } + // append the element + $result[] = $word; + $resultLength += strlen($word) + 1; + } + + // remove the element that caused the text to overflow + array_pop($result); + + // build result + $result = implode(' ', $result); + + return $result . '.'; + } + + /** + * License: Creative Commons Attribution-ShareAlike License + * + * Title: مدیر مدرسه + * Author: جلال آل‌احمد + * Language: Persian + * + * @see http://fa.wikisource.org/wiki/%D9%85%D8%AF%DB%8C%D8%B1_%D9%85%D8%AF%D8%B1%D8%B3%D9%87 + * + * @var string + */ + protected static $baseText = <<<'EOT' +از در که وارد شدم سیگارم دستم بود. زورم آمد سلام کنم. همین طوری دنگم گرفته بود قد باشم. رئیس فرهنگ که اجازه‌ی نشستن داد، نگاهش لحظه‌ای روی دستم مکث کرد و بعد چیزی را که می‌نوشت، تمام کرد و می‌خواست متوجه من بشود که رونویس حکم را روی میزش گذاشته بودم. حرفی نزدیم. رونویس را با کاغذهای ضمیمه‌اش زیر و رو کرد و بعد غبغب انداخت و آرام و مثلاً خالی از عصبانیت گفت: + +- جا نداریم آقا. این که نمی‌شه! هر روز یه حکم می‌دند دست یکی می‌فرستنش سراغ من... دیروز به آقای مدیر کل... + +حوصله‌ی این اباطیل را نداشتم. حرفش را بریدم که: + +- ممکنه خواهش کنم زیر همین ورقه مرقوم بفرمایید؟ + +و سیگارم را توی زیرسیگاری براق روی میزش تکاندم. روی میز، پاک و مرتب بود. درست مثل اتاق همان مهمان‌خانه‌ی تازه‌عروس‌ها. هر چیز به جای خود و نه یک ذره گرد. فقط خاکستر سیگار من زیادی بود. مثل تفی در صورت تازه تراشیده‌ای.... قلم را برداشت و زیر حکم چیزی نوشت و امضا کرد و من از در آمده بودم بیرون. خلاص. تحمل این یکی را نداشتم. با اداهایش. پیدا بود که تازه رئیس شده. زورکی غبغب می‌انداخت و حرفش را آهسته توی چشم آدم می‌زد. انگار برای شنیدنش گوش لازم نیست. صد و پنجاه تومان در کارگزینی کل مایه گذاشته بودم تا این حکم را به امضا رسانده بودم. توصیه هم برده بودم و تازه دو ماه هم دویده بودم. مو، لای درزش نمی‌رفت. می‌دانستم که چه او بپذیرد، چه نپذیرد، کار تمام است. خودش هم می‌دانست. حتماً هم دستگیرش شد که با این نک و نالی که می‌کرد، خودش را کنف کرده. ولی کاری بود و شده بود. در کارگزینی کل، سفارش کرده بودند که برای خالی نبودن عریضه رونویس را به رؤیت رئیس فرهنگ هم برسانم تازه این طور شد. و گر نه بالی حکم کارگزینی کل چه کسی می‌توانست حرفی بزند؟ یک وزارت خانه بود و یک کارگزینی! شوخی که نبود. ته دلم قرص‌تر از این‌ها بود که محتاج به این استدلال‌ها باشم. اما به نظرم همه‌ی این تقصیرها از این سیگار لعنتی بود که به خیال خودم خواسته بودم خرجش را از محل اضافه حقوق شغل جدیدم در بیاورم. البته از معلمی، هم اُقم نشسته بود. ده سال «الف.ب.» درس دادن و قیافه‌های بهت‌زده‌ی بچه‌های مردم برای مزخرف‌ترین چرندی که می‌گویی... و استغناء با غین و استقراء با قاف و خراسانی و هندی و قدیمی‌ترین شعر دری و صنعت ارسال مثل و ردالعجز... و از این مزخرفات! دیدم دارم خر می‌شوم. گفتم مدیر بشوم. مدیر دبستان! دیگر نه درس خواهم داد و نه مجبور خواهم بود برای فرار از اتلاف وقت، در امتحان تجدیدی به هر احمق بی‌شعوری هفت بدهم تا ایام آخر تابستانم را که لذیذترین تکه‌ی تعطیلات است، نجات داده باشم. این بود که راه افتادم. رفتم و از اهلش پرسیدم. از یک کار چاق کن. دستم را توی دست کارگزینی گذاشت و قول و قرار و طرفین خوش و خرم و یک روز هم نشانی مدرسه را دستم دادند که بروم وارسی، که باب میلم هست یا نه. + +و رفتم. مدرسه دو طبقه بود و نوساز بود و در دامنه‌ی کوه تنها افتاده بود و آفتاب‌رو بود. یک فرهنگ‌دوست خرپول، عمارتش را وسط زمین خودش ساخته بود و بیست و پنج سال هم در اختیار فرهنگ گذاشته بود که مدرسه‌اش کنند و رفت و آمد بشود و جاده‌ها کوبیده بشود و این قدر ازین بشودها بشود، تا دل ننه باباها بسوزد و برای این‌که راه بچه‌هاشان را کوتاه بکنند، بیایند همان اطراف مدرسه را بخرند و خانه بسازند و زمین یارو از متری یک عباسی بشود صد تومان. یارو اسمش را هم روی دیوار مدرسه کاشی‌کاری کرده بود. هنوز در و همسایه پیدا نکرده بودند که حرف‌شان بشود و لنگ و پاچه‌ی سعدی و باباطاهر را بکشند میان و یک ورق دیگر از تاریخ‌الشعرا را بکوبند روی نبش دیوار کوچه‌شان. تابلوی مدرسه هم حسابی و بزرگ و خوانا. از صد متری داد می‌زد که توانا بود هر.... هر چه دلتان بخواهد! با شیر و خورشیدش که آن بالا سر، سه پا ایستاده بود و زورکی تعادل خودش را حفظ می‌کرد و خورشید خانم روی کولش با ابروهای پیوسته و قمچیلی که به دست داشت و تا سه تیر پرتاب، اطراف مدرسه بیابان بود. درندشت و بی آب و آبادانی و آن ته رو به شمال، ردیف کاج‌های درهم فرو رفته‌ای که از سر دیوار گلی یک باغ پیدا بود روی آسمان لکه‌ی دراز و تیره‌ای زده بود. حتماً تا بیست و پنج سال دیگر همه‌ی این اطراف پر می‌شد و بوق ماشین و ونگ ونگ بچه‌ها و فریاد لبویی و زنگ روزنامه‌فروشی و عربده‌ی گل به سر دارم خیار! نان یارو توی روغن بود. + +- راستی شاید متری ده دوازده شاهی بیشتر نخریده باشد؟ شاید هم زمین‌ها را همین جوری به ثبت داده باشد؟ هان؟ + +- احمق به توچه؟!... + +بله این فکرها را همان روزی کردم که ناشناس به مدرسه سر زدم و آخر سر هم به این نتیجه رسیدم که مردم حق دارند جایی بخوابند که آب زیرشان نرود. + +- تو اگر مردی، عرضه داشته باش مدیر همین مدرسه هم بشو. + +و رفته بودم و دنبال کار را گرفته بودم تا رسیده بودم به این‌جا. همان روز وارسی فهمیده بودم که مدیر قبلی مدرسه زندانی است. لابد کله‌اش بوی قرمه‌سبزی می‌داده و باز لابد حالا دارد کفاره‌ی گناهانی را می‌دهد که یا خودش نکرده یا آهنگری در بلخ کرده. جزو پر قیچی‌های رئیس فرهنگ هم کسی نبود که با مدیرشان، اضافه حقوقی نصیبش بشود و ناچار سر و دستی برای این کار بشکند. خارج از مرکز هم نداشت. این معلومات را توی کارگزینی به دست آورده بودم. هنوز «گه خوردم نامه‌نویسی» هم مد نشده بود که بگویم یارو به این زودی‌ها از سولدونی در خواهد آمد. فکر نمی‌کردم که دیگری هم برای این وسط بیابان دلش لک زده باشد با زمستان سختش و با رفت و آمد دشوارش. + +این بود که خیالم راحت بود. از همه‌ی این‌ها گذشته کارگزینی کل موافقت کرده بود! دست است که پیش از بلند شدن بوی اسکناس، آن جا هم دو سه تا عیب شرعی و عرفی گرفته بودند و مثلاً گفته بودن لابد کاسه‌ای زیر نیم کاسه است که فلانی یعنی من، با ده سال سابقه‌ی تدریس، می‌خواهد مدیر دبستان بشود! غرض‌شان این بود که لابد خل شدم که از شغل مهم و محترم دبیری دست می‌شویم. ماهی صد و پنجاه تومان حق مقام در آن روزها پولی نبود که بتوانم نادیده بگیرم. و تازه اگر ندیده می‌گرفتم چه؟ باز باید بر می‌گشتم به این کلاس‌ها و این جور حماقت‌ها. این بود که پیش رئیس فرهنگ، صاف برگشتم به کارگزینی کل، سراغ آن که بفهمی نفهمی، دلال کارم بود. و رونویس حکم را گذاشتم و گفتم که چه طور شد و آمدم بیرون. + +دو روز بعد رفتم سراغش. معلوم شد که حدسم درست بوده است و رئیس فرهنگ گفته بوده: «من از این لیسانسه‌های پر افاده نمی‌خواهم که سیگار به دست توی هر اتاقی سر می‌کنند.» + +و یارو برایش گفته بود که اصلاً وابدا..! فلانی همچین و همچون است و مثقالی هفت صنار با دیگران فرق دارد و این هندوانه‌ها و خیال من راحت باشد و پنج‌شنبه یک هفته‌ی دیگر خودم بروم پهلوی او... و این کار را کردم. این بار رئیس فرهنگ جلوی پایم بلند شد که: «ای آقا... چرا اول نفرمودید؟!...» و از کارمندهایش گله کرد و به قول خودش، مرا «در جریان موقعیت محل» گذاشت و بعد با ماشین خودش مرا به مدرسه رساند و گفت زنگ را زودتر از موعد زدند و در حضور معلم‌ها و ناظم، نطق غرایی در خصائل مدیر جدید – که من باشم – کرد و بعد هم مرا گذاشت و رفت با یک مدرسه‌ی شش کلاسه‌ی «نوبنیاد» و یک ناظم و هفت تا معلم و دویست و سی و پنج تا شاگرد. دیگر حسابی مدیر مدرسه شده بودم! + +ناظم، جوان رشیدی بود که بلند حرف می‌زد و به راحتی امر و نهی می‌کرد و بیا و برویی داشت و با شاگردهای درشت، روی هم ریخته بود که خودشان ترتیب کارها را می‌دادند و پیدا بود که به سر خر احتیاجی ندارد و بی‌مدیر هم می‌تواند گلیم مدرسه را از آب بکشد. معلم کلاس چهار خیلی گنده بود. دو تای یک آدم حسابی. توی دفتر، اولین چیزی که به چشم می‌آمد. از آن‌هایی که اگر توی کوچه ببینی، خیال می‌کنی مدیر کل است. لفظ قلم حرف می‌زد و شاید به همین دلیل بود که وقتی رئیس فرهنگ رفت و تشریفات را با خودش برد، از طرف همکارانش تبریک ورود گفت و اشاره کرد به اینکه «ان‌شاءالله زیر سایه‌ی سرکار، سال دیگر کلاس‌های دبیرستان را هم خواهیم داشت.» پیدا بود که این هیکل کم‌کم دارد از سر دبستان زیادی می‌کند! وقتی حرف می‌زد همه‌اش درین فکر بودم که با نان آقا معلمی چه طور می‌شد چنین هیکلی به هم زد و چنین سر و تیپی داشت؟ و راستش تصمیم گرفتم که از فردا صبح به صبح ریشم را بتراشم و یخه‌ام تمیز باشد و اتوی شلوارم تیز. + +معلم کلاس اول باریکه‌ای بود، سیاه سوخته. با ته ریشی و سر ماشین کرده‌ای و یخه‌ی بسته. بی‌کراوات. شبیه میرزابنویس‌های دم پست‌خانه. حتی نوکر باب می‌نمود. و من آن روز نتوانستم بفهمم وقتی حرف می‌زند کجا را نگاه می‌کند. با هر جیغ کوتاهی که می‌زد هرهر می‌خندید. با این قضیه نمی‌شد کاری کرد. معلم کلاس سه، یک جوان ترکه‌ای بود؛ بلند و با صورت استخوانی و ریش از ته تراشیده و یخه‌ی بلند آهاردار. مثل فرفره می‌جنبید. چشم‌هایش برق عجیبی می‌زد که فقط از هوش نبود، چیزی از ناسلامتی در برق چشم‌هایش بود که مرا واداشت از ناظم بپرسم مبادا مسلول باشد. البته مسلول نبود، تنها بود و در دانشگاه درس می‌خواند. کلاس‌های پنجم و ششم را دو نفر با هم اداره می‌کردند. یکی فارسی و شرعیات و تاریخ، جغرافی و کاردستی و این جور سرگرمی‌ها را می‌گفت، که جوانکی بود بریانتین زده، با شلوار پاچه تنگ و پوشت و کراوات زرد و پهنی که نعش یک لنگر بزرگ آن را روی سینه‌اش نگه داشته بود و دائماً دستش حمایل موهای سرش بود و دم به دم توی شیشه‌ها نگاه می‌کرد. و آن دیگری که حساب و مرابحه و چیزهای دیگر می‌گفت، جوانی بود موقر و سنگین مازندرانی به نظر می‌آمد و به خودش اطمینان داشت. غیر از این‌ها، یک معلم ورزش هم داشتیم که دو هفته بعد دیدمش و اصفهانی بود و از آن قاچاق‌ها. + +رئیس فرهنگ که رفت، گرم و نرم از همه‌شان حال و احوال پرسیدم. بعد به همه سیگار تعارف کردم. سراپا همکاری و همدردی بود. از کار و بار هر کدامشان پرسیدم. فقط همان معلم کلاس سه، دانشگاه می‌رفت. آن که لنگر به سینه انداخته بود، شب‌ها انگلیسی می‌خواند که برود آمریکا. چای و بساطی در کار نبود و ربع ساعت‌های تفریح، فقط توی دفتر جمع می‌شدند و دوباره از نو. و این نمی‌شد. باید همه‌ی سنن را رعایت کرد. دست کردم و یک پنج تومانی روی میز گذاشتم و قرار شد قبل و منقلی تهیه کنند و خودشان چای را راه بیندازند. + +بعد از زنگ قرار شد من سر صف نطقی بکنم. ناظم قضیه را در دو سه کلمه برای بچه‌ها گفت که من رسیدم و همه دست زدند. چیزی نداشتم برایشان بگویم. فقط یادم است اشاره‌ای به این کردم که مدیر خیلی دلش می‌خواست یکی از شما را به جای فرزند داشته باشد و حالا نمی‌داند با این همه فرزند چه بکند؟! که بی‌صدا خندیدند و در میان صف‌های عقب یکی پکی زد به خنده. واهمه برم داشت که «نه بابا. کار ساده‌ای هم نیست!» قبلاً فکر کرده بودم که می‌روم و فارغ از دردسر اداره‌ی کلاس، در اتاق را روی خودم می‌بندم و کار خودم را می‌کنم. اما حالا می‌دیدم به این سادگی‌ها هم نیست. اگر فردا یکی‌شان زد سر اون یکی را شکست، اگر یکی زیر ماشین رفت؛ اگر یکی از ایوان افتاد؛ چه خاکی به سرم خواهم ریخت؟ + +حالا من مانده بودم و ناظم که چیزی از لای در آهسته خزید تو. کسی بود؛ فراش مدرسه با قیافه‌ای دهاتی و ریش نتراشیده و قدی کوتاه و گشاد گشاد راه می‌رفت و دست‌هایش را دور از بدن نگه می‌داشت. آمد و همان کنار در ایستاد. صاف توی چشمم نگاه می‌کرد. حال او را هم پرسیدم. هر چه بود او هم می‌توانست یک گوشه‌ی این بار را بگیرد. در یک دقیقه همه‌ی درد دل‌هایش را کرد و التماس دعاهایش که تمام شد، فرستادمش برایم چای درست کند و بیاورد. بعد از آن من به ناظم پرداختم. سال پیش، از دانشسرای مقدماتی در آمده بود. یک سال گرمسار و کرج کار کرده بود و امسال آمده بود این‌جا. پدرش دو تا زن داشته. از اولی دو تا پسر که هر دو تا چاقوکش از آب در آمده‌اند و از دومی فقط او مانده بود که درس‌خوان شده و سرشناس و نان مادرش را می‌دهد که مریض است و از پدر سال‌هاست که خبری نیست و... یک اتاق گرفته‌اند به پنجاه تومان و صد و پنجاه تومان حقوق به جایی نمی‌رسد و تازه زور که بزند سه سال دیگر می‌تواند از حق فنی نظامت مدرسه استفاده کند + +... بعد بلند شدیم که به کلاس‌ها سرکشی کنیم. بعد با ناظم به تک تک کلاس‌ها سر زدیم در این میان من به یاد دوران دبستان خودم افتادم. در کلاس ششم را باز کردیم «... ت بی پدرو مادر» جوانک بریانتین زده خورد توی صورت‌مان. یکی از بچه‌ها صورتش مثل چغندر قرمز بود. لابد بزک فحش هنوز باقی بود. قرائت فارسی داشتند. معلم دستهایش توی جیبش بود و سینه‌اش را پیش داده بود و زبان به شکایت باز کرد: + +- آقای مدیر! اصلاً دوستی سرشون نمی‌شه. تو سَری می‌خوان. ملاحظه کنید بنده با چه صمیمیتی... + +حرفش را در تشدید «ایت» بریدم که: + +- صحیح می‌فرمایید. این بار به من ببخشید. + +و از در آمدیم بیرون. بعد از آن به اطاقی که در آینده مال من بود سر زدیم. بهتر از این نمی‌شد. بی سر و صدا، آفتاب‌رو، دور افتاده. + +وسط حیاط، یک حوض بزرگ بود و کم‌عمق. تنها قسمت ساختمان بود که رعایت حال بچه‌های قد و نیم قد در آن شده بود. دور حیاط دیوار بلندی بود درست مثل دیوار چین. سد مرتفعی در مقابل فرار احتمالی فرهنگ و ته حیاط مستراح و اتاق فراش بغلش و انبار زغال و بعد هم یک کلاس. به مستراح هم سر کشیدیم. همه بی در و سقف و تیغه‌ای میان آن‌ها. نگاهی به ناظم کردم که پا به پایم می‌آمد. گفت: + +- دردسر عجیبی شده آقا. تا حالا صد تا کاغذ به ادارفردا صبح رفتم مدرسه. بچه‌ها با صف‌هاشان به طرف کلاس‌ها می‌رفتند و ناظم چوب به دست توی ایوان ایستاده بود و توی دفتر دو تا از معلم‌ها بودند. معلوم شد کار هر روزه‌شان است. ناظم را هم فرستادم سر یک کلاس دیگر و خودم آمدم دم در مدرسه به قدم زدن؛ فکر کردم از هر طرف که بیایند مرا این ته، دم در مدرسه خواهند دید و تمام طول راه در این خجالت خواهند ماند و دیگر دیر نخواهند آمد. یک سیاهی از ته جاده‌ی جنوبی پیداشد. جوانک بریانتین زده بود. مسلماً او هم مرا می‌دید، ولی آهسته‌تر از آن می‌آمد که یک معلم تأخیر کرده جلوی مدیرش می‌آمد. جلوتر که آمد حتی شنیدم که سوت می‌زد. اما بی‌انصاف چنان سلانه سلانه می‌آمد که دیدم هیچ جای گذشت نیست. اصلاً محل سگ به من نمی‌گذاشت. داشتم از کوره در می‌رفتم که یک مرتبه احساس کردم تغییری در رفتار خود داد و تند کرد. + +به خیر گذشت و گرنه خدا عالم است چه اتفاقی می‌افتاد. سلام که کرد مثل این که می‌خواست چیزی بگوید که پیش دستی کردم: + +- بفرمایید آقا. بفرمایید، بچه‌ها منتظرند. + +واقعاً به خیر گذشت. شاید اتوبوسش دیر کرده. شاید راه‌بندان بوده؛ جاده قرق بوده و باز یک گردن‌کلفتی از اقصای عالم می‌آمده که ازین سفره‌ی مرتضی علی بی‌نصیب نماند. به هر صورت در دل بخشیدمش. چه خوب شد که بد و بی‌راهی نگفتی! که از دور علم افراشته‌ی هیکل معلم کلاس چهارم نمایان شد. از همان ته مرا دیده بود. تقریباً می‌دوید. تحمل این یکی را نداشتم. «بدکاری می‌کنی. اول بسم‌الله و مته به خشخاش!» رفتم و توی دفتر نشستم و خودم را به کاری مشغول کردم که هن هن کنان رسید. چنان عرق از پیشانی‌اش می‌ریخت که راستی خجالت کشیدم. یک لیوان آب از کوه به دستش دادم و مسخ‌شده‌ی خنده‌اش را با آب به خوردش دادم و بلند که شد برود، گفتم: + +- عوضش دو کیلو لاغر شدید. + +برگشت نگاهی کرد و خنده‌ای و رفت. ناگهان ناظم از در وارد شد و از را ه نرسیده گفت: + +- دیدید آقا! این جوری می‌آند مدرسه. اون قرتی که عین خیالش هم نبود آقا! اما این یکی... + +از او پرسیدم: + +- انگار هنوز دو تا از کلاس‌ها ولند؟ + +- بله آقا. کلاس سه ورزش دارند. گفتم بنشینند دیکته بنویسند آقا. معلم حساب پنج و شش هم که نیومده آقا. + +در همین حین یکی از عکس‌های بزرگ دخمه‌های هخامنشی را که به دیوار کوبیده بود پس زد و: + +- نگاه کنید آقا... + +روی گچ دیوار با مداد قرمز و نه چندان درشت، به عجله و ناشیانه علامت داس کشیده بودند. همچنین دنبال کرد: + +- از آثار دوره‌ی اوناست آقا. کارشون همین چیزها بود. روزنومه بفروشند. تبلیغات کنند و داس چکش بکشند آقا. رئیس‌شون رو که گرفتند چه جونی کندم آقا تا حالی‌شون کنم که دست ور دارند آقا. و از روی میز پرید پایین. + +- گفتم مگه باز هم هستند؟ + +- آره آقا، پس چی! یکی همین آقازاده که هنوز نیومده آقا. هر روز نیم ساعت تأخیر داره آقا. یکی هم مثل کلاس سه. + +- خوب چرا تا حالا پاکش نکردی؟ + +- به! آخه آدم درد دلشو واسه‌ی کی بگه؟ آخه آقا در میان تو روی آدم می‌گند جاسوس، مأمور! باهاش حرفم شده آقا. کتک و کتک‌کاری! + +و بعد یک سخنرانی که چه طور مدرسه را خراب کرده‌اند و اعتماد اهل محله را چه طور از بین برده‌اند که نه انجمنی، نه کمکی به بی‌بضاعت‌ها؛ و از این حرف ها. + +بعد از سخنرانی آقای ناظم دستمالم را دادم که آن عکس‌ها را پاک کند و بعد هم راه افتادم که بروم سراغ اتاق خودم. در اتاقم را که باز کردم، داشتم دماغم با بوی خاک نم کشیده‌اش اخت می‌کرد که آخرین معلم هم آمد. آمدم توی ایوان و با صدای بلند، جوری که در تمام مدرسه بشنوند، ناظم را صدا زدم و گفتم با قلم قرمز برای آقا یک ساعت تأخیر بگذارند.ه‌ی ساختمان نوشتیم آقا. می‌گند نمی‌شه پول دولت رو تو ملک دیگرون خرج کرد. + +- گفتم راست می‌گند. + +دیگه کافی بود. آمدیم بیرون. همان توی حیاط تا نفسی تازه کنیم وضع مالی و بودجه و ازین حرف‌های مدرسه را پرسیدم. هر اتاق ماهی پانزده ریال حق نظافت داشت. لوازم‌التحریر و دفترها را هم اداره‌ی فرهنگ می‌داد. ماهی بیست و پنج تومان هم برای آب خوردن داشتند که هنوز وصول نشده بود. برای نصب هر بخاری سالی سه تومان. ماهی سی تومان هم تنخواه‌گردان مدرسه بود که مثل پول آب سوخت شده بود و حالا هم ماه دوم سال بود. اواخر آبان. حالیش کردم که حوصله‌ی این کارها را ندارم و غرضم را از مدیر شدن برایش خلاصه کردم و گفتم حاضرم همه‌ی اختیارات را به او بدهم. «اصلاً انگار که هنوز مدیر نیامده.» مهر مدرسه هم پهلوی خودش باشد. البته او را هنوز نمی‌شناختم. شنیده بودم که مدیرها قبلاً ناظم خودشان را انتخاب می‌کنند، اما من نه کسی را سراغ داشتم و نه حوصله‌اش را. حکم خودم را هم به زور گرفته بودم. سنگ‌هامان را وا کندیم و به دفتر رفتیم و چایی را که فراش از بساط خانه‌اش درست کرده بود، خوردیم تا زنگ را زدند و باز هم زدند و من نگاهی به پرونده‌های شاگردها کردم که هر کدام عبارت بود از دو برگ کاغذ. از همین دو سه برگ کاغذ دانستم که اولیای بچه‌ها اغلب زارع و باغبان و اویارند و قبل از این‌که زنگ آخر را بزنند و مدرسه تعطیل بشود بیرون آمدم. برای روز اول خیلی زیاد بود. + +فردا صبح رفتم مدرسه. بچه‌ها با صف‌هاشان به طرف کلاس‌ها می‌رفتند و ناظم چوب به دست توی ایوان ایستاده بود و توی دفتر دو تا از معلم‌ها بودند. معلوم شد کار هر روزه‌شان است. ناظم را هم فرستادم سر یک کلاس دیگر و خودم آمدم دم در مدرسه به قدم زدن؛ فکر کردم از هر طرف که بیایند مرا این ته، دم در مدرسه خواهند دید و تمام طول راه در این خجالت خواهند ماند و دیگر دیر نخواهند آمد. یک سیاهی از ته جاده‌ی جنوبی پیداشد. جوانک بریانتین زده بود. مسلماً او هم مرا می‌دید، ولی آهسته‌تر از آن می‌آمد که یک معلم تأخیر کرده جلوی مدیرش می‌آمد. جلوتر که آمد حتی شنیدم که سوت می‌زد. اما بی‌انصاف چنان سلانه سلانه می‌آمد که دیدم هیچ جای گذشت نیست. اصلاً محل سگ به من نمی‌گذاشت. داشتم از کوره در می‌رفتم که یک مرتبه احساس کردم تغییری در رفتار خود داد و تند کرد. + +به خیر گذشت و گرنه خدا عالم است چه اتفاقی می‌افتاد. سلام که کرد مثل این که می‌خواست چیزی بگوید که پیش دستی کردم: + +- بفرمایید آقا. بفرمایید، بچه‌ها منتظرند. + +واقعاً به خیر گذشت. شاید اتوبوسش دیر کرده. شاید راه‌بندان بوده؛ جاده قرق بوده و باز یک گردن‌کلفتی از اقصای عالم می‌آمده که ازین سفره‌ی مرتضی علی بی‌نصیب نماند. به هر صورت در دل بخشیدمش. چه خوب شد که بد و بی‌راهی نگفتی! که از دور علم افراشته‌ی هیکل معلم کلاس چهارم نمایان شد. از همان ته مرا دیده بود. تقریباً می‌دوید. تحمل این یکی را نداشتم. «بدکاری می‌کنی. اول بسم‌الله و مته به خشخاش!» رفتم و توی دفتر نشستم و خودم را به کاری مشغول کردم که هن هن کنان رسید. چنان عرق از پیشانی‌اش می‌ریخت که راستی خجالت کشیدم. یک لیوان آب از کوه به دستش دادم و مسخ‌شده‌ی خنده‌اش را با آب به خوردش دادم و بلند که شد برود، گفتم: + +- عوضش دو کیلو لاغر شدید. + +برگشت نگاهی کرد و خنده‌ای و رفت. ناگهان ناظم از در وارد شد و از را ه نرسیده گفت: + +- دیدید آقا! این جوری می‌آند مدرسه. اون قرتی که عین خیالش هم نبود آقا! اما این یکی... + +از او پرسیدم: + +- انگار هنوز دو تا از کلاس‌ها ولند؟ + +- بله آقا. کلاس سه ورزش دارند. گفتم بنشینند دیکته بنویسند آقا. معلم حساب پنج و شش هم که نیومده آقا. + +در همین حین یکی از عکس‌های بزرگ دخمه‌های هخامنشی را که به دیوار کوبیده بود پس زد و: + +- نگاه کنید آقا... + +روی گچ دیوار با مداد قرمز و نه چندان درشت، به عجله و ناشیانه علامت داس کشیده بودند. همچنین دنبال کرد: + +- از آثار دوره‌ی اوناست آقا. کارشون همین چیزها بود. روزنومه بفروشند. تبلیغات کنند و داس چکش بکشند آقا. رئیس‌شون رو که گرفتند چه جونی کندم آقا تا حالی‌شون کنم که دست ور دارند آقا. و از روی میز پرید پایین. + +- گفتم مگه باز هم هستند؟ + +- آره آقا، پس چی! یکی همین آقازاده که هنوز نیومده آقا. هر روز نیم ساعت تأخیر داره آقا. یکی هم مثل کلاس سه. + +- خوب چرا تا حالا پاکش نکردی؟ + +- به! آخه آدم درد دلشو واسه‌ی کی بگه؟ آخه آقا در میان تو روی آدم می‌گند جاسوس، مأمور! باهاش حرفم شده آقا. کتک و کتک‌کاری! + +و بعد یک سخنرانی که چه طور مدرسه را خراب کرده‌اند و اعتماد اهل محله را چه طور از بین برده‌اند که نه انجمنی، نه کمکی به بی‌بضاعت‌ها؛ و از این حرف ها. + +بعد از سخنرانی آقای ناظم دستمالم را دادم که آن عکس‌ها را پاک کند و بعد هم راه افتادم که بروم سراغ اتاق خودم. در اتاقم را که باز کردم، داشتم دماغم با بوی خاک نم کشیده‌اش اخت می‌کرد که آخرین معلم هم آمد. آمدم توی ایوان و با صدای بلند، جوری که در تمام مدرسه بشنوند، ناظم را صدا زدم و گفتم با قلم قرمز برای آقا یک ساعت تأخیر بگذارند. + +روز سوم باز اول وقت مدرسه بودم. هنوز از پشت دیوار نپیچیده بودم که صدای سوز و بریز بچه‌ها به پیشبازم آمد. تند کردم. پنج تا از بچه‌ها توی ایوان به خودشان می‌پیچیدند و ناظم ترکه‌ای به دست داشت و به نوبت به کف دست‌شان می‌زد. بچه‌ها التماس می‌کردند؛ گریه می‌کردند؛ اما دستشان را هم دراز می‌کردند. نزدیک بود داد بزنم یا با لگد بزنم و ناظم را پرت کنم آن طرف. پشتش به من بود و من را نمی‌دید. ناگهان زمزمه‌ای توی صف‌ها افتاد که یک مرتبه مرا به صرافت انداخت که در مقام مدیریت مدرسه، به سختی می‌شود ناظم را کتک زد. این بود که خشمم را فرو خوردم و آرام از پله‌ها رفتم بالا. ناظم، تازه متوجه من شده بود در همین حین دخالتم را کردم و خواهش کردم این بار همه‌شان را به من ببخشند. + +نمی‌دانم چه کار خطایی از آنها سر زده بود که ناظم را تا این حد عصبانی کرده بود. بچه‌ها سکسکه‌کنان رفتند توی صف‌ها و بعد زنگ را زدند و صف‌ها رفتند به کلاس‌ها و دنبالشان هم معلم‌ها که همه سر وقت حاضر بودند. نگاهی به ناظم انداختم که تازه حالش سر جا آمده بود و گفتم در آن حالی که داشت، ممکن بود گردن یک کدامشان را بشکند. که مرتبه براق شد: + +- اگه یک روز جلوشونو نگیرید سوارتون می‌شند آقا. نمی‌دونید چه قاطرهای چموشی شده‌اند آقا. + +مثل بچه مدرسه‌ای‌ها آقا آقا می‌کرد. موضوع را برگرداندم و احوال مادرش را پرسیدم. خنده، صورتش را از هم باز کرد و صدا زد فراش برایش آب بیاورد. یادم هست آن روز نیم ساعتی برای آقای ناظم صحبت کردم. پیرانه. و او جوان بود و زود می‌شد رامش کرد. بعد ازش خواستم که ترکه‌ها را بشکند و آن وقت من رفتم سراغ اتاق خودم. + +در همان هفته‌ی اول به کارها وارد شدم. فردای زمستان و نه تا بخاری زغال سنگی و روزی چهار بار آب آوردن و آب و جاروی اتاق‌ها با یک فراش جور در نمی‌آید. یک فراش دیگر از اداره ی فرهنگ خواستم که هر روز منتظر ورودش بودیم. بعد از ظهرها را نمی‌رفتم. روزهای اول با دست و دل لرزان، ولی سه چهار روزه جرأت پیدا کردم. احساس می‌کردم که مدرسه زیاد هم محض خاطر من نمی‌گردد. کلاس اول هم یکسره بود و به خاطر بچه‌های جغله دلهره‌ای نداشتم. در بیابان‌های اطراف مدرسه هم ماشینی آمد و رفت نداشت و گرچه پست و بلند بود اما به هر صورت از حیاط مدرسه که بزرگ‌تر بود. معلم ها هم، هر بعد از ظهری دو تاشان به نوبت می‌رفتند یک جوری باهم کنار آمده بودند. و ترسی هم از این نبود که بچه‌ها از علم و فرهنگ ثقل سرد بکنند. یک روز هم بازرس آمد و نیم ساعتی پیزر لای پالان هم گذاشتیم و چای و احترامات متقابل! و در دفتر بازرسی تصدیق کرد که مدرسه «با وجود عدم وسایل» بسیار خوب اداره می‌شود. + +بچه‌ها مدام در مدرسه زمین می‌خوردند، بازی می‌کردند، زمین می‌خوردند. مثل اینکه تاتوله خورده بودند. ساده‌ترین شکل بازی‌هایشان در ربع ساعت‌های تفریح، دعوا بود. فکر می‌کردم علت این همه زمین خوردن شاید این باشد که بیش‌ترشان کفش حسابی ندارند. آن‌ها هم که داشتند، بچه‌ننه بودند و بلد نبودند بدوند و حتی راه بروند. این بود که روزی دو سه بار، دست و پایی خراش بر می‌داشت. پرونده‌ی برق و تلفن مدرسه را از بایگانی بسیار محقر مدرسه بیرون کشیده بودم و خوانده بودم. اگر یک خرده می‌دویدی تا دو سه سال دیگر هم برق مدرسه درست می‌شد و هم تلفنش. دوباره سری به اداره ساختمان زدم و موضوع را تازه کردم و به رفقایی که دورادور در اداره‌ی برق و تلفن داشتم، یکی دو بار رو انداختم که اول خیال می‌کردند کار خودم را می‌خواهم به اسم مدرسه راه بیندازم و ناچار رها کردم. این قدر بود که ادای وظیفه‌ای می‌کرد. مدرسه آب نداشت. نه آب خوراکی و نه آب جاری. با هرزاب بهاره، آب انبار زیر حوض را می‌انباشتند که تلمبه‌ای سرش بود و حوض را با همان پر می‌کردند و خود بچه‌ها. اما برای آب خوردن دو تا منبع صد لیتری داشتیم از آهن سفید که مثل امامزاده‌ای یا سقاخانه‌ای دو قلو، روی چهار پایه کنار حیاط بود و روزی دو بار پر و خالی می‌شد. این آب را از همان باغی می‌آوردیم که ردیف کاج‌هایش روی آسمان، لکه‌ی دراز سیاه انداخته بود. البته فراش می‌آورد. با یک سطل بزرگ و یک آب‌پاش که سوراخ بود و تا به مدرسه می‌رسید، نصف شده بود. هر دو را از جیب خودم دادم تعمیر کردند. + +یک روز هم مالک مدرسه آمد. پیرمردی موقر و سنگین که خیال می‌کرد برای سرکشی به خانه‌ی مستأجرنشینش آمده. از در وارد نشده فریادش بلند شد و فحش را کشید به فراش و به فرهنگ که چرا بچه‌ها دیوار مدرسه را با زغال سیاه کرده‌اند واز همین توپ و تشرش شناختمش. کلی با او صحبت کردیم البته او دو برابر سن من را داشت. برایش چای هم آوردیم و با معلم‌ها آشنا شد و قول‌ها داد و رفت. کنه‌ای بود. درست یک پیرمرد. یک ساعت و نیم درست نشست. ماهی یک بار هم این برنامه را داشتند که بایست پیه‌اش را به تن می‌مالیدم. + +اما معلم‌ها. هر کدام یک ابلاغ بیست و چهار ساعته در دست داشتند، ولی در برنامه به هر کدام‌شان بیست ساعت درس بیشتر نرسیده بود. کم کم قرار شد که یک معلم از فرهنگ بخواهیم و به هر کدام‌شان هجده ساعت درس بدهیم، به شرط آن‌که هیچ بعد از ظهری مدرسه تعطیل نباشد. حتی آن که دانشگاه می‌رفت می‌توانست با هفته‌ای هجده ساعت درس بسازد. و دشوارترین کار همین بود که با کدخدامنشی حل شد و من یک معلم دیگر از فرهنگ خواستم. + +اواخر هفته‌ی دوم، فراش جدید آمد. مرد پنجاه ساله‌ای باریک و زبر و زرنگ که شب‌کلاه می‌گذاشت و لباس آبی می‌پوشید و تسبیح می‌گرداند و از هر کاری سر رشته داشت. آب خوردن را نوبتی می‌آوردند. مدرسه تر و تمیز شد و رونقی گرفت. فراش جدید سرش توی حساب بود. هر دو مستخدم با هم تمام بخاری‌ها را راه انداختند و یک کارگر هم برای کمک به آن‌ها آمد. فراش قدیمی را چهار روز پشت سر هم، سر ظهر می‌فرستادیم اداره‌ی فرهنگ و هر آن منتظر زغال بودیم. هنوز یک هفته از آمدن فراش جدید نگذشته بود که صدای همه‌ی معلم‌ها در آمده بود. نه به هیچ کدامشان سلام می‌کرد و نه به دنبال خرده فرمایش‌هایشان می‌رفت. درست است که به من سلام می‌کرد، اما معلم‌ها هم، لابد هر کدام در حدود من صاحب فضایل و عنوان و معلومات بودند که از یک فراش مدرسه توقع سلام داشته باشند. اما انگار نه انگار. + +بدتر از همه این که سر خر معلم‌ها بود. من که از همان اول، خرجم را سوا کرده بودم و آن‌ها را آزاد گذاشته بودم که در مواقع بیکاری در دفتر را روی خودشان ببندند و هر چه می‌خواهند بگویند و هر کاری می‌خواهند بکنند. اما او در فاصله‌ی ساعات درس، همچه که معلم‌ها می‌آمدند، می‌آمد توی دفتر و همین طوری گوشه‌ی اتاق می‌ایستاد و معلم‌ها کلافه می‌شدند. نه می‌توانستند شلکلک‌های معلمی‌شان را در حضور او کنار بگذارند و نه جرأت می‌کردند به او چیزی بگویند. بدزبان بود و از عهده‌ی همه‌شان بر می‌آمد. یکی دوبار دنبال نخود سیاه فرستاده بودندش. اما زرنگ بود و فوری کار را انجام می‌داد و بر می‌گشت. حسابی موی دماغ شده بود. ده سال تجربه این حداقل را به من آموخته بود که اگر معلم‌ها در ربع ساعت‌های تفریح نتوانند بخندند، سر کلاس، بچه‌های مردم را کتک خواهند زد. این بود که دخالت کردم. یک روز فراش جدید را صدا زدم. اول حال و احوالپرسی و بعد چند سال سابقه دارد و چند تا بچه و چه قدر می‌گیرد... که قضیه حل شد. سی صد و خرده‌ای حقوق می‌گرفت. با بیست و پنج سال سابقه. کار از همین جا خراب بود. پیدا بود که معلم‌ها حق دارند او را غریبه بدانند. نه دیپلمی، نه کاغذپاره‌ای، هر چه باشد یک فراش که بیشتر نبود! و تازه قلدر هم بود و حق هم داشت. اول به اشاره و کنایه و بعد با صراحت بهش فهماندم که گر چه معلم جماعت اجر دنیایی ندارد، اما از او که آدم متدین و فهمیده‌ای است بعید است و از این حرف‌ها... که یک مرتبه پرید توی حرفم که: + +- ای آقا! چه می‌فرمایید؟ شما نه خودتون این کاره‌اید و نه اینارو می‌شناسید. امروز می‌خواند سیگار براشون بخرم، فردا می‌فرستنم سراغ عرق. من این‌ها رو می‌شناسم. + +راست می‌گفت. زودتر از همه، او دندان‌های مرا شمرده بود. فهمیده بود که در مدرسه هیچ‌کاره‌ام. می‌خواستم کوتاه بیایم، ولی مدیر مدرسه بودن و در مقابل یک فراش پررو ساکت ماندن!... که خر خر کامیون زغال به دادم رسید. ترمز که کرد و صدا خوابید گفتم: + +- این حرف‌ها قباحت داره. معلم جماعت کجا پولش به عرق می‌رسه؟ حالا بدو زغال آورده‌اند. + +و همین طور که داشت بیرون می‌رفت، افزودم: + +- دو روز دیگه که محتاجت شدند و ازت قرض خواستند با هم رفیق می‌شید. + +و آمدم توی ایوان. در بزرگ آهنی مدرسه را باز کرده بودند و کامیون آمده بود تو و داشتند بارش را جلوی انبار ته حیاط خالی می‌کردند و راننده، کاغذی به دست ناظم داد که نگاهی به آن انداخت و مرا نشان داد که در ایوان بالا ایستاده بودم و فرستادش بالا. کاغذش را با سلام به دستم داد. بیجک زغال بود. رسید رسمی اداره‌ی فرهنگ بود در سه نسخه و روی آن ورقه‌ی ماشین شده‌ی «باسکول» که می‌گفت کامیون و محتویاتش جمعاً دوازده خروار است. اما رسیدهای رسمی اداری فرهنگ ساکت بودند. جای مقدار زغالی که تحویل مدرسه داده شده بود، در هر سه نسخه خالی بود. پیدا بود که تحویل گیرنده باید پرشان کند. همین کار را کردم. اوراق را بردم توی اتاق و با خودنویسم عدد را روی هر سه ورق نوشتم و امضا کردم و به دست راننده دادم که راه افتاد و از همان بالا به ناظم گفتم: + +- اگر مهر هم بایست زد، خودت بزن بابا. + +و رفتم سراغ کارم که ناگهان در باز شد و ناظم آمد تو؛ بیجک زغال دستش بود و: + +- مگه نفهمیدین آقا؟ مخصوصاً جاش رو خالی گذاشته بودند آقا... + +نفهمیده بودم. اما اگر هم فهمیده بودم، فرقی نمی‌کرد و به هر صورت از چنین کودنی نا به هنگام از جا در رفتم و به شدت گفتم: + +- خوب؟ + +- هیچ چی آقا.... رسم‌شون همینه آقا. اگه باهاشون کنار نیایید کارمونو لنگ می‌گذارند آقا... + +که از جا در رفتم. به چنین صراحتی مرا که مدیر مدرسه بودم در معامله شرکت می‌داد. و فریاد زدم: + +- عجب! حالا سرکار برای من تکلیف هم معین می‌کنید؟... خاک بر سر این فرهنگ با مدیرش که من باشم! برو ورقه رو بده دست‌شون، گورشون رو گم کنند. پدر سوخته‌ها... + +چنان فریاد زده بودم که هیچ کس در مدرسه انتظار نداشت. مدیر سر به زیر و پا به راهی بودم که از همه خواهش می‌کردم و حالا ناظم مدرسه، داشت به من یاد می‌داد که به جای نه خروار زغال مثلا هجده خروار تحویل بگیرم و بعد با اداره‌ی فرهنگ کنار بیایم. هی هی!.... تا ظهر هیچ کاری نتوانستم بکنم، جز این‌که چند بار متن استعفانامه‌ام را بنویسم و پاره کنم... قدم اول را این جور جلوی پای آدم می‌گذارند. + +بارندگی که شروع شد دستور دادم بخاری‌ها را از هفت صبح بسوزانند. بچه‌ها همیشه زود می‌آمدند. حتی روزهای بارانی. مثل این‌که اول آفتاب از خانه بیرون‌شان می‌کنند. یا ناهارنخورده. خیلی سعی کردم یک روز زودتر از بچه‌ها مدرسه باشم. اما عاقبت نشد که مدرسه را خالی از نفسِ به علم‌آلوده‌ی بچه‌ها استنشاق کنم. از راه که می‌رسیدند دور بخاری جمع می‌شدند و گیوه‌هاشان را خشک می‌کردند. و خیلی زود فهمیدم که ظهر در مدرسه ماندن هم مسأله کفش بود. هر که داشت نمی‌ماند.این قاعده در مورد معلم‌ها هم صدق می‌کرد اقلاً یک پول واکس جلو بودند. وقتی که باران می‌بارید تمام کوهپایه و بدتر از آن تمام حیاط مدرسه گل می‌شد. بازی و دویدن متوقف شده بود. مدرسه سوت و کور بود. این جا هم مسأله کفش بود. چشم اغلبشان هم قرمز بود. پیدا بود باز آن روز صبح یک فصل گریه کرده‌اند و در خانه‌شان علم صراطی بوده است. + +مدرسه داشت تخته می‌شد. عده‌ی غایب‌های صبح ده برابر شده بود و ساعت اول هیچ معلمی نمی‌توانست درس بدهد. دست‌های ورم‌کرده و سرمازده کار نمی‌کرد. حتی معلم کلاس اولمان هم می‌دانست که فرهنگ و معلومات مدارس ما صرفاً تابع تمرین است. مشق و تمرین. ده بار بیست بار. دست یخ‌کرده بیل و رنده را هم نمی‌تواند به کار بگیرد که خیلی هم زمخت‌اند و دست پر کن. این بود که به فکر افتادیم. فراش جدید واردتر از همه‌ی ما بود. یک روز در اتاق دفتر، شورامانندی داشتیم که البته او هم بود. خودش را کم‌کم تحمیل کرده بود. گفت حاضر است یکی از دُم‌کلفت‌های همسایه‌ی مدرسه را وادارد که شن برایمان بفرستد به شرط آن که ما هم برویم و از انجمن محلی برای بچه‌ها کفش و لباس بخواهیم. قرار شد خودش قضیه را دنبال کند که هفته‌ی آینده جلسه‌شان کجاست و حتی بخواهد که دعوت‌مانندی از ما بکنند. دو روز بعد سه تا کامیون شن آمد. دوتایش را توی حیاط مدرسه، خالی کردیم و سومی را دم در مدرسه، و خود بچه‌ها نیم ساعته پهنش کردند. با پا و بیل و هر چه که به دست می‌رسید. + +عصر همان روز ما را به انجمن دعوت کردند. خود من و ناظم باید می‌رفتیم. معلم کلاس چهارم را هم با خودمان بردیم. خانه‌ای که محل جلسه‌ی آن شب انجمن بود، درست مثل مدرسه، دور افتاده و تنها بود. قالی‌ها و کناره‌ها را به فرهنگ می‌آلودیم و می‌رفتیم. مثل این‌که سه تا سه تا روی هم انداخته بودند. اولی که کثیف شد دومی. به بالا که رسیدیم یک حاجی آقا در حال نماز خواندن بود. و صاحب‌خانه با لهجه‌ی غلیظ یزدی به استقبال‌مان آمد. همراهانم را معرفی کردم و لابد خودش فهمید مدیر کیست. برای ما چای آوردند. سیگارم را چاق کردم و با صاحب‌خانه از قالی‌هایش حرف زدیم. ناظم به بچه‌هایی می‌ماند که در مجلس بزرگترها خوابشان می‌گیرد و دل‌شان هم نمی‌خواست دست به سر شوند. سر اعضای انجمن باز شده بود. حاجی آقا صندوقدار بود. من و ناظم عین دو طفلان مسلم بودیم و معلم کلاس چهارم عین خولی وسطمان نشسته. اغلب اعضای انجمن به زبان محلی صحبت می‌کردند و رفتار ناشی داشتند. حتی یک کدامشان نمی‌دانستند که دست و پاهای خود را چه جور ضبط و ربط کنند. بلند بلند حرف می‌زدند. درست مثل این‌که وزارتخانه‌ی دواب سه تا حیوان تازه برای باغ وحش محله‌شان وارد کرده. جلسه که رسمی شد، صاحبخانه معرفی‌مان کرد و شروع کردند. مدام از خودشان صحبت می‌کردند از این‌که دزد دیشب فلان جا را گرفته و باید درخواست پاسبان شبانه کنیم و... + +همین طور یک ساعت حرف زدند و به مهام امور رسیدگی کردند و من و معلم کلاس چهارم سیگار کشیدیم. انگار نه انگار که ما هم بودیم. نوکرشان که آمد استکان‌ها را جمع کند، چیزی روی جلد اشنو نوشتم و برای صاحبخانه فرستادم که یک مرتبه به صرافت ما افتاد و اجازه خواست و: + +- آقایان عرضی دارند. بهتر است کارهای خودمان را بگذاریم برای بعد. + +مثلاً می‌خواست بفهماند که نباید همه‌ی حرف‌ها را در حضور ما زده باشند. و اجازه دادند معلم کلاس چهار شروع کرد به نطق و او هم شروع کرد که هر چه باشد ما زیر سایه‌ی آقایانیم و خوش‌آیند نیست که بچه‌هایی باشند که نه لباس داشته باشند و نه کفش درست و حسابی و از این حرف‌ها و مدام حرف می‌زد. ناظم هم از چُرت در آمد چیزهایی را که از حفظ کرده بود گفت و التماس دعا و کار را خراب کرد.تشری به ناظم زدم که گدابازی را بگذارد کنار و حالی‌شان کردم که صحبت از تقاضا نیست و گدایی. بلکه مدرسه دور افتاده است و مستراح بی در و پیکر و از این اباطیل... چه خوب شد که عصبانی نشدم. و قرار شد که پنج نفرشان فردا عصر بیایند که مدرسه را وارسی کنند و تشکر و اظهار خوشحالی و در آمدیم. + +در تاریکی بیابان هفت تا سواری پشت در خانه ردیف بودند و راننده‌ها توی یکی از آن‌ها جمع شده بودند و اسرار ارباب‌هاشان را به هم می‌گفتند. در این حین من مدام به خودم می‌گفتم من چرا رفتم؟ به من چه؟ مگر من در بی کفش و کلاهی‌شان مقصر بودم؟ می‌بینی احمق؟ مدیر مدرسه هم که باشی باید شخصیت و غرورت را لای زرورق بپیچی و طاق کلاهت بگذاری که اقلاً نپوسد. حتی اگر بخواهی یک معلم کوفتی باشی، نه چرا دور می‌زنی؟ حتی اگر یک فراش ماهی نود تومانی باشی، باید تا خرخره توی لجن فرو بروی.در همین حین که من در فکر بودم ناظم گفت: + +- دیدید آقا چه طور باهامون رفتار کردند؟ با یکی از قالی‌هاشون آقا تمام مدرسه رو می‌خرید. + +گفتم: + +- تا سر و کارت با الف.ب است به‌پا قیاس نکنی. خودخوری می‌آره. + +و معلم کلاس چهار گفت: + +- اگه فحشمون هم می‌دادند من باز هم راضی بودم، باید واقع‌بین بود. خدا کنه پشیمون نشند. + +بعد هم مدتی درد دل کردیم و تا اتوبوس برسد و سوار بشیم، معلوم شد که معلم کلاس چهار با زنش متارکه کرده و مادر ناظم را سرطانی تشخیص دادند. و بعد هم شب بخیر... + +دو روز تمام مدرسه نرفتم. خجالت می‌کشیدم توی صورت یک کدام‌شان نگاه کنم. و در همین دو روز حاجی آقا با دو نفر آمده بودند، مدرسه را وارسی و صورت‌برداری و ناظم می‌گفت که حتی بچه‌هایی هم که کفش و کلاهی داشتند پاره و پوره آمده بودند. و برای بچه‌ها کفش و لباس خریدند. روزهای بعد احساس کردم زن‌هایی که سر راهم لب جوی آب ظرف می‌شستند، سلام می‌کنند و یک بار هم دعای خیر یکی‌شان را از عقب سر شنیدم.اما چنان از خودم بدم آمده بود که رغبتم نمی‌شد به کفش و لباس‌هاشان نگاه کنم. قربان همان گیوه‌های پاره! بله، نان گدایی فرهنگ را نو نوار کرده بود. + +تازه از دردسرهای اول کار مدرسه فارغ شده بودم که شنیدم که یک روز صبح، یکی از اولیای اطفال آمد. بعد از سلام و احوالپرسی دست کرد توی جیبش و شش تا عکس در آورد، گذاشت روی میزم. شش تا عکس زن . و هر کدام به یک حالت. یعنی چه؟ نگاه تندی به او کردم. آدم مرتبی بود. اداری مانند. کسر شأن خودم می‌دانستم که این گوشه‌ی از زندگی را طبق دستور عکاس‌باشی فلان خانه‌ی بندری ببینم. اما حالا یک مرد اتو کشیده‌ی مرتب آمده بود و شش تا از همین عکس‌ها را روی میزم پهن کرده بود و به انتظار آن که وقاحت عکس‌ها چشم‌هایم را پر کند داشت سیگار چاق می‌کرد. + +حسابی غافلگیر شده بودم... حتماً تا هر شش تای عکس‌ها را ببینم، بیش از یک دقیقه طول کشید. همه از یک نفر بود. به این فکر گریختم که الان هزار ها یا میلیون ها نسخه‌ی آن، توی جیب چه جور آدم‌هایی است و در کجاها و چه قدر خوب بود که همه‌ی این آدم‌ها را می‌شناختم یا می‌دیدم. بیش ازین نمی‌شد گریخت. یارو به تمام وزنه وقاحتش، جلوی رویم نشسته بود. سیگاری آتش زدم و چشم به او دوختم. کلافه بود و پیدا بود برای کتک‌کاری هم آماده باشد. سرخ شده بود و داشت در دود سیگارش تکیه‌گاهی برای جسارتی که می‌خواست به خرج بدهد می‌جست. عکس‌ها را با یک ورقه از اباطیلی که همان روز سیاه کرده بودم، پوشاندم و بعد با لحنی که دعوا را با آن شروع می‌کنند؛ پرسیدم: + +- خوب، غرض؟ + +و صدایم توی اتاق پیچید. حرکتی از روی بیچارگی به خودش داد و همه‌ی جسارت‌ها را با دستش توی جیبش کرد و آرام‌تر از آن چیزی که با خودش تو آورده بود، گفت: + +- چه عرض کنم؟... از معلم کلاس پنج تون بپرسید. + +که راحت شدم و او شروع کرد به این که «این چه فرهنگی است؟ خراب بشود. پس بچه‌های مردم با چه اطمینانی به مدرسه بیایند؟ + +و از این حرف‌ها... + +خلاصه این آقا معلم کاردستی کلاس پنجم، این عکس‌ها را داده به پسر آقا تا آن‌ها را روی تخته سه لایی بچسباند و دورش را سمباده بکشد و بیاورد. به هر صورت معلم کلاس پنج بی‌گدار به آب زده. و حالا من چه بکنم؟ به او چه جوابی بدهم؟ بگویم معلم را اخراج می‌کنم؟ که نه می‌توانم و نه لزومی دارد. او چه بکند؟ حتماً در این شهر کسی را ندارد که به این عکس‌ها دلخوش کرده. ولی آخر چرا این جور؟ یعنی این قدر احمق است که حتی شاگردهایش را نمی‌شناسد؟... پاشدم ناظم را صدا بزنم که خودش آمده بود بالا، توی ایوان منتظر ایستاده بود. من آخرین کسی بودم که از هر اتفاقی در مدرسه خبردار می‌شدم. حضور این ولی طفل گیجم کرده بود که چنین عکس‌هایی را از توی جیب پسرش، و لابد به همین وقاحتی که آن‌ها را روی میز من ریخت، در آورده بوده. وقتی فهمید هر دو در مانده‌ایم سوار بر اسب شد که اله می‌کنم و بله می‌کنم، در مدرسه را می‌بندم، و از این جفنگیات.... + +حتماً نمی‌دانست که اگر در هر مدرسه بسته بشود، در یک اداره بسته شده است. اما من تا او بود نمی‌توانستم فکرم را جمع کنم. می‌خواست پسرش را بخواهیم تا شهادت بدهد و چه جانی کندیم تا حالیش کنیم که پسرش هر چه خفت کشیده، بس است و وعده‌ها دادیم که معلمش را دم خورشید کباب کنیم و از نان خوردن بیندازیم. یعنی اول ناظم شروع کرد که از دست او دل پری داشت و من هم دنبالش را گرفتم. برای دک کردن او چاره‌ای جز این نبود. و بعد رفت، ما دو نفری ماندیم با شش تا عکس زن . حواسم که جمع شد به ناظم سپردم صدایش را در نیاورد و یک هفته‌ی تمام مطلب را با عکس‌ها، توی کشوی میزم قفل کردم و بعد پسرک را صدا زدم. نه عزیزدُردانه می‌نمود و نه هیچ جور دیگر. داد می‌زد که از خانواده‌ی عیال‌واری است. کم‌خونی و فقر. دیدم معلمش زیاد هم بد تشخیص نداده. یعنی زیاد بی‌گدار به آب نزده. گفتم: + +- خواهر برادر هم داری؟ + +- آ... آ...آقا داریم آقا. + +- چند تا؟ + +- آ... آقا چهار تا آقا. + +- عکس‌ها رو خودت به بابات نشون دادی؟ + +- نه به خدا آقا... به خدا قسم... + +- پس چه طور شد؟ + +و دیدم از ترس دارد قالب تهی می‌کند. گرچه چوب‌های ناظم شکسته بود، اما ترس او از من که مدیر باشم و از ناظم و از مدرسه و از تنبیه سالم مانده بود. + +- نترس بابا. کاریت نداریم. تقصیر آقا معلمه که عکس‌ها رو داده... تو کار بدی نکردی بابا جان. فهمیدی؟ اما می‌خواهم ببینم چه طور شد که عکس‌ها دست بابات افتاد. + +- آ.. آ... آخه آقا... آخه... + +می‌دانستم که باید کمکش کنم تا به حرف بیاید. + +گفتم: + +- می‌دونی بابا؟ عکس‌هام چیز بدی نبود. تو خودت فهمیدی چی بود؟ + +- آخه آقا...نه آقا.... خواهرم آقا... خواهرم می‌گفت... + +- خواهرت؟ از تو کوچک‌تره؟ + +- نه آقا. بزرگ‌تره. می‌گفتش که آقا... می‌گفتش که آقا... هیچ چی سر عکس‌ها دعوامون شد. + +دیگر تمام بود. عکس‌ها را به خواهرش نشان داده بود که لای دفترچه پر بوده از عکس آرتیست‌ها. به او پز داده بوده. اما حاضر نبوده، حتی یکی از آن‌ها را به خواهرش بدهد. آدم مورد اعتماد معلم باشد و چنین خبطی بکند؟ و تازه جواب معلم را چه بدهد؟ ناچار خواهر او را لو داده بوده. بعد از او معلم را احضار کردم. علت احضار را می‌دانست. و داد می‌زد که چیزی ندارد بگوید. پس از یک هفته مهلت، هنوز از وقاحتی که من پیدا کرده بودم، تا از آدم خلع سلاح‌شده‌ای مثل او، دست بر ندارم، در تعجب بود. به او سیگار تعارف کردم و این قصه را برایش تعریف کردم که در اوایل تأسیس وزارت معارف، یک روز به وزیر خبر می‌دهند که فلان معلم با فلان بچه روابطی دارد. وزیر فوراً او را می‌خواهد و حال و احوال او را می‌پرسد و این‌که چرا تا به حال زن نگرفته و ناچار تقصیر گردن بی‌پولی می‌افتد و دستور که فلان قدر به او کمک کنند تا عروسی راه بیندازد و خود او هم دعوت بشود و قضیه به همین سادگی تمام می‌شود. و بعد گفتم که خیلی جوان‌ها هستند که نمی‌توانند زن بگیرند و وزرای فرهنگ هم این روزها گرفتار مصاحبه‌های روزنامه‌ای و رادیویی هستند. اما در نجیب‌خانه‌ها که باز است و ازین مزخرفات... و هم‌دردی و نگذاشتم یک کلمه حرف بزند. بعد هم عکس را که توی پاکت گذاشته بودم، به دستش دادم و وقاحت را با این جمله به حد اعلا رساندم که: + +- اگر به تخته نچسبونید، ضررشون کم‌تره. + +تا حقوقم به لیست اداره‌ی فرهنگ برسه، سه ماه طول کشید. فرهنگی‌های گداگشنه و خزانه‌ی خالی و دست‌های از پا درازتر! اما خوبیش این بود که در مدرسه‌ی ما فراش جدیدمان پولدار بود و به همه‌شان قرض داد. کم کم بانک مدرسه شده بود. از سیصد و خرده‌ای تومان که می‌گرفت، پنجاه تومان را هم خرج نمی‌کرد. نه سیگار می‌کشید و نه اهل سینما بود و نه برج دیگری داشت. از این گذشته، باغبان یکی از دم‌کلفت‌های همان اطراف بود و باغی و دستگاهی و سور و ساتی و لابد آشپزخانه‌ی مرتبی. خیلی زود معلم‌ها فهمیدند که یک فراش پولدار خیلی بیش‌تر به درد می‌خورد تا یک مدیر بی‌بو و خاصیت. + +این از معلم‌ها. حقوق مرا هم هنوز از مرکز می‌دادند. با حقوق ماه بعد هم اسم مرا هم به لیست اداره منتقل کردند. درین مدت خودم برای خودم ورقه انجام کار می‌نوشتم و امضا می‌کردم و می‌رفتم از مدرسه‌ای که قبلاً در آن درس می‌دادم، حقوقم را می‌گرفتم. سر و صدای حقوق که بلند می‌شد معلم‌ها مرتب می‌شدند و کلاس ماهی سه چهار روز کاملاً دایر بود. تا ورقه‌ی انجام کار به دستشان بدهم. غیر از همان یک بار - در اوایل کار- که برای معلم حساب پنج و شش قرمز توی دفتر گذاشتیم، دیگر با مداد قرمز کاری نداشتیم و خیال همه‌شان راحت بود. وقتی برای گرفتن حقوقم به اداره رفتم، چنان شلوغی بود که به خودم گفتم کاش اصلاً حقوقم را منتقل نکرده بودم. نه می‌توانستم سر صف بایستم و نه می‌توانستم از حقوقم بگذرم. تازه مگر مواجب‌بگیر دولت چیزی جز یک انبان گشاده‌ی پای صندوق است؟..... و اگر هم می‌ماندی با آن شلوغی باید تا دو بعداز ظهر سر پا بایستی. همه‌ی جیره‌خوارهای اداره بو برده بودند که مدیرم. و لابد آن‌قدر ساده لوح بودند که فکر کنند روزی گذارشان به مدرسه‌ی ما بیفتد. دنبال سفته‌ها می‌گشتند، به حسابدار قبلی فحش می‌دادند، التماس می‌کردند که این ماه را ندیده بگیرید و همه‌ی حق و حساب‌دان شده بودند و یکی که زودتر از نوبت پولش را می‌گرفت صدای همه در می‌آمد. در لیست مدرسه، بزرگ‌ترین رقم مال من بود. درست مثل بزرگ‌ترین گناه در نامه‌ی عمل. دو برابر فراش جدیدمان حقوق می‌گرفتم. از دیدن رقم‌های مردنی حقوق دیگران چنان خجالت کشیدم که انگار مال آن‌ها را دزدیده‌ام. و تازه خلوت که شد و ده پانزده تا امضا که کردم، صندوق‌دار چشمش به من افتاد و با یک معذرت، شش صد تومان پول دزدی را گذاشت کف دستم... مرده شور! + +هنوز برف اول نباریده بود که یک روز عصر، معلم کلاس چهار رفت زیر ماشین. زیر یک سواری. مثل همه‌ی عصرها من مدرسه نبودم. دم غروب بود که فراش قدیمی مدرسه دم در خونه‌مون، خبرش را آورد. که دویدم به طرف لباسم و تا حاضر بشوم، می‌شنیدم که دارد قضیه را برای زنم تعریف می‌کند. ماشین برای یکی از آمریکایی‌ها بوده. باقیش را از خانه که در آمدیم برایم تعریف کرد. گویا یارو خودش پشت فرمون بوده و بعد هم هول شده و در رفته. بچه‌ها خبر را به مدرسه برگردانده‌اند و تا فراش و زنش برسند، جمعیت و پاسبان‌ها سوارش کرده بودند و فرستاده بوده‌اند مریض‌خانه. به اتوبوس که رسیدم، دیدم لاک پشت است. فراش را مرخص کردم و پریدم توی تاکسی. اول رفتم سراغ پاسگاه جدید کلانتری. تعاریف تکه و پاره‌ای از پرونده مطلع بود. اما پرونده تصریحی نداشت که راننده که بوده. اما هیچ کس نمی‌دانست عاقبت چه بلایی بر سر معلم کلاس چهار ما آمده است. کشیک پاسگاه همین قدر مطلع بود که درین جور موارد «طبق جریان اداری» اول می‌روند سرکلانتری، بعد دایره‌ی تصادفات و بعد بیمارستان. اگر آشنا در نمی‌آمدیم، کشیک پاسگاه مسلماً نمی‌گذاشت به پرونده نگاه چپ بکنم. احساس کردم میان اهل محل کم‌کم دارم سرشناس می‌شوم. و از این احساس خنده‌ام گرفت. + +ساعت ۸ دم در بیمارستان بودم، اگر سالم هم بود حتماً یه چیزیش شده بود. همان طور که من یه چیزیم می‌شد. روی در بیمارستان نوشته شده بود: «از ساعت ۷ به بعد ورود ممنوع». در زدم. از پشت در کسی همین آیه را صادر کرد. دیدم فایده ندارد و باید از یک چیزی کمک بگیرم. از قدرتی، از مقامی، از هیکلی، از یک چیزی. صدایم را کلفت کردم و گفتم:« من...» می‌خواستم بگویم من مدیر مدرسه‌ام. ولی فوراً پشیمان شدم. یارو لابد می‌گفت مدیر مدرسه کدام سگی است؟ این بود با کمی مکث و طمطراق فراوان جمله‌ام را این طور تمام کردم: + +- ...بازرس وزارت فرهنگم. + +که کلون صدایی کرد و لای در باز شد. یارو با چشم‌هایش سلام کرد. رفتم تو و با همان صدا پرسیدم: + +- این معلمه مدرسه که تصادف کرده... + +تا آخرش را خواند. یکی را صدا زد و دنبالم فرستاد که طبقه‌ی فلان، اتاق فلان. از حیاط به راهرو و باز به حیاط دیگر که نصفش را برف پوشانده بود و من چنان می‌دویدم که یارو از عقب سرم هن هن می‌کرد. طبقه‌ی اول و دوم و چهارم. چهار تا پله یکی. راهرو تاریک بود و پر از بوهای مخصوص بود. هن هن کنان دری را نشان داد که هل دادم و رفتم تو. بو تندتر بود و تاریکی بیشتر. تالاری بود پر از تخت و جیرجیر کفش و خرخر یک نفر. دور یک تخت چهار نفر ایستاده بودند. حتماً خودش بود. پای تخت که رسیدم، احساس کردم همه‌ی آنچه از خشونت و تظاهر و ابهت به کمک خواسته بودم آب شد و بر سر و صورتم راه افتاد. و این معلم کلاس چهارم مدرسه‌ام بود. سنگین و با شکم بر آمده دراز کشیده بود. خیلی کوتاه‌تر از زمانی که سر پا بود به نظرم آمد. صورت و سینه‌اش از روپوش چرک‌مُرد بیرون بود. صورتش را که شسته بودند کبود کبود بود، درست به رنگ جای سیلی روی صورت بچه‌ها. مرا که دید، لبخند و چه لبخندی! شاید می‌خواست بگوید مدرسه‌ای که مدیرش عصرها سر کار نباشد، باید همین جورها هم باشد. خنده توی صورت او همین طور لرزید و لرزید تا یخ زد. + +«آخر چرا تصادف کردی؟...» + +مثل این که سوال را ازو کردم. اما وقتی که دیدم نمی‌تواند حرف بزند و به جای هر جوابی همان خنده‌ی یخ‌بسته را روی صورت دارد، خودم را به عنوان او دم چک گرفتم. «آخه چرا؟ چرا این هیکل مدیر کلی را با خودت این قد این ور و آن ور می‌بری تا بزنندت؟ تا زیرت کنند؟ مگر نمی‌دانستی که معلم حق ندارد این قدر خوش‌هیکل باشد؟ آخر چرا تصادف کردی؟» به چنان عتاب و خطابی این‌ها را می‌گفتم که هیچ مطمئن نیستم بلند بلند به خودش نگفته باشم. و یک مرتبه به کله‌ام زد که «مبادا خودت چشمش زده باشی؟» و بعد: «احمق خاک بر سر! بعد از سی و چند سال عمر، تازه خرافاتی شدی!» و چنان از خودم بیزاریم گرفت که می‌خواستم به یکی فحش بدهم، کسی را بزنم. که چشمم به دکتر کشیک افتاد. + +- مرده شور این مملکتو ببره. ساعت چهار تا حالا از تن این مرد خون می‌ره. حیفتون نیومد؟... + +دستی روی شانه‌ام نشست و فریادم را خواباند. برگشتم پدرش بود. او هم می‌خندید. دو نفر دیگر هم با او بودند. همه دهاتی‌وار؛ همه خوش قد و قواره. حظ کردم! آن دو تا پسرهایش بودند یا برادرزاده‌هایش یا کسان دیگرش. تازه داشت گل از گلم می‌شکفت که شنیدم: + +- آقا کی باشند؟ + +این راهم دکتر کشیک گفت که من باز سوار شدم: + +- مرا می‌گید آقا؟ من هیشکی. یک آقا مدیر کوفتی. این هم معلمم. + +که یک مرتبه عقل هی زد و «پسر خفه شو» و خفه شدم. بغض توی گلویم بود. دلم می‌خواست یک کلمه دیگر بگوید. یک کنایه بزند... نسبت به مهارت هیچ دکتری تا کنون نتوانسته‌ام قسم بخورم. دستش را دراز کرد که به اکراه فشار دادم و بعد شیشه‌ی بزرگی را نشانم داد که وارونه بالای تخت آویزان بود و خرفهمم کرد که این جوری غذا به او می‌رسانند و عکس هم گرفته‌اند و تا فردا صبح اگر زخم‌ها چرک نکند، جا خواهند انداخت و گچ خواهند کرد. که یکی دیگر از راه رسید. گوشی به دست و سفید پوش و معطر. با حرکاتی مثل آرتیست سینما. سلامم کرد. صدایش در ته ذهنم چیزی را مختصر تکانی داد. اما احتیاجی به کنجکاوی نبود. یکی از شاگردهای نمی‌دانم چند سال پیشم بود. خودش خودش را معرفی کرد. آقای دکتر...! عجب روزگاری! هر تکه از وجودت را با مزخرفی از انبان مزخرفاتت، مثل ذره‌ای روزی در خاکی ریخته‌ای که حالا سبز کرده. چشم داری احمق. این تویی که روی تخت دراز کشیده‌ای. ده سال آزگار از پلکان ساعات و دقایق عمرت هر لحظه یکی بالا رفته و تو فقط خستگی این بار را هنوز در تن داری. این جوجه‌فکلی و جوجه‌های دیگر که نمی‌شناسی‌شان، همه از تخمی سر در آورده‌اند که روزی حصار جوانی تو بوده و حالا شکسته و خالی مانده. دستش را گرفتم و کشیدمش کناری و در گوشش هر چه بد و بی‌راه می‌دانستم، به او و همکارش و شغلش دادم. مثلاً می‌خواستم سفارش معلم کلاس چهار مدرسه‌ام را کرده باشم. بعد هم سری برای پدر تکان دادم و گریختم. از در که بیرون آمدم، حیاط بود و هوای بارانی. از در بزرگ که بیرون آمدم به این فکر می‌کردم که «اصلا به تو چه؟ اصلاً چرا آمدی؟ می‌خواستی کنجکاوی‌ات را سیرکنی؟» و دست آخر به این نتیجه رسیدم که «طعمه‌ای برای میزنشین‌های شهربانی و دادگستری به دست آمده و تو نه می‌توانی این طعمه را از دستشان بیرون بیاوری و نه هیچ کار دیگری می‌توانی بکنی...» + +و داشتم سوار تاکسی می‌شدم تا برگردم خانه که یک دفعه به صرافت افتادم که اقلاً چرا نپرسیدی چه بلایی به سرش آمده؟» خواستم عقب‌گرد کنم، اما هیکل کبود معلم کلاس چهارم روی تخت بود و دیدم نمی‌توانم. خجالت می‌کشیدم و یا می‌ترسیدم. آن شب تا ساعت دو بیدار بودم و فردا یک گزارش مفصل به امضای مدیر مدرسه و شهادت همه‌ی معلم‌ها برای اداره‌ی فرهنگ و کلانتری محل و بعد هم دوندگی در اداره‌ی بیمه و قرار بر این که روزی نه تومان بودجه برای خرج بیمارستان او بدهند و عصر پس از مدتی رفتم مدرسه و کلاس‌ها را تعطیل کردم و معلم‌ها و بچه‌های ششم را فرستادم عیادتش و دسته گل و ازین بازی‌ها... و یک ساعتی در مدرسه تنها ماندم و فارغ از همه چیز برای خودم خیال بافتم.... و فردا صبح پدرش آمد سلام و احوالپرسی و گفت یک دست و یک پایش شکسته و کمی خونریزی داخل مغز و از طرف یارو آمریکاییه آمده‌اند عیادتش و وعده و وعید که وقتی خوب شد، در اصل چهار استخدامش کنند و با زبان بی‌زبانی حالیم کرد که گزارش را بیخود داده‌ام و حالا هم داده‌ام، دنبالش نکنم و رضایت طرفین و کاسه‌ی از آش داغ‌تر و از این حرف‌ها... خاک بر سر مملکت. + +اوایل امر توجهی به بچه‌ها نداشتم. خیال می‌کردم اختلاف سِنی میان‌مان آن قدر هست که کاری به کار همدیگر نداشته باشیم. همیشه سرم به کار خودم بود. در دفتر را می‌بستم و در گرمای بخاری دولت قلم صد تا یک غاز می‌زدم. اما این کار مرتب سه چهار هفته بیش‌تر دوام نکرد. خسته شدم. ناچار به مدرسه بیشتر می‌رسیدم. یاد روزهای قدیمی با دوستان قدیمی به خیر چه آدم‌های پاک و بی‌آلایشی بودند، چه شخصیت‌های بی‌نام و نشانی و هر کدام با چه زبانی و با چه ادا و اطوارهای مخصوص به خودشان و این جوان‌های چلفته‌ای. چه مقلدهای بی‌دردسری برای فرهنگی‌مابی! نه خبری از دیروزشان داشتند و نه از املاک تازه‌ای که با هفتاد واسطه به دست‌شان داده بودند، چیزی سرشان می‌شد. بدتر از همه بی‌دست و پایی‌شان بود. آرام و مرتب درست مثل واگن شاه عبدالعظیم می‌آمدند و می‌رفتند. فقط بلد بودند روزی ده دقیقه دیرتر بیایند و همین. و از این هم بدتر تنگ‌نظری‌شان بود. + +سه بار شاهد دعواهایی بودم که سر یک گلدان میخک یا شمعدانی بود. بچه‌باغبان‌ها زیاد بودند و هر کدام‌شان حداقل ماهی یک گلدان میخک یا شمعدانی می‌آوردند که در آن برف و سرما نعمتی بود. اول تصمیم گرفتم، مدرسه را با آن‌ها زینت دهم. ولی چه فایده؟ نه کسی آب‌شان می‌داد و نه مواظبتی. و باز بدتر از همه‌ی این‌ها، بی‌شخصیتی معلم‌ها بود که درمانده‌ام کرده بود. دو کلمه نمی‌توانستند حرف بزنند. عجب هیچ‌کاره‌هایی بودند! احساس کردم که روز به روز در کلاس‌ها معلم‌ها به جای دانش‌آموزان جاافتاده‌تر می‌شوند. در نتیجه گفتم بیش‌تر متوجه بچه‌ها باشم. + +آن‌ها که تنها با ناظم سر و کار داشتند و مثل این بود که به من فقط یک سلام نیمه‌جویده بدهکارند. با این همه نومیدکننده نبودند. توی کوچه مواظب‌شان بودم. می‌خواستم حرف و سخن‌ها و درد دل‌ها و افکارشان را از یک فحش نیمه‌کاره یا از یک ادای نیمه‌تمام حدس بزنم، که سلام‌نکرده در می‌رفتند. خیلی کم تنها به مدرسه می‌آمدند. پیدا بود که سر راه همدیگر می‌ایستند یا در خانه‌ی یکدیگر می‌روند. سه چهار نفرشان هم با اسکورت می‌آمدند. از بیست سی نفری که ناهار می‌ماندند، فقط دو نفرشان چلو خورش می‌آوردند؛ فراش اولی مدرسه برایم خبر می‌آورد. بقیه گوشت‌کوبیده، پنیر گردوئی، دم پختکی و از این جور چیزها. دو نفرشان هم بودند که نان سنگک خالی می‌آوردند. برادر بودند. پنجم و سوم. صبح که می‌آمدند، جیب‌هاشان باد کرده بود. سنگک را نصف می‌کردند و توی جیب‌هاشان می‌تپاندند و ظهر می‌شد، مثل آن‌هایی که ناهارشان را در خانه می‌خورند، می‌رفتند بیرون. من فقط بیرون رفتن‌شان را می‌دیدم. اما حتی همین‌ها هر کدام روزی، یکی دو قران از فراش مدرسه خرت و خورت می‌خریدند. از همان فراش قدیمی مدرسه که ماهی پنج تومان سرایداریش را وصول کرده بودم. هر روز که وارد اتاقم می‌شدم پشت سر من می‌آمد بارانی‌ام را بر می‌داشت و شروع می‌کرد به گزارش دادن، که دیروز باز دو نفر از معلم‌ها سر یک گلدان دعوا کرده‌اند یا مأمور فرماندار نظامی آمده یا دفتردار عوض شده و از این اباطیل... پیدا بود که فراش جدید هم در مطالبی که او می‌گفت، سهمی دارد. + +یک روز در حین گزارش دادن، اشاره‌ای کرد به این مطلب که دیروز عصر یکی از بچه‌های کلاس چهار دو تا کله قند به او فروخته است. درست مثل اینکه سر کلاف را به دستم داده باشد پرسیدم: + +- چند؟ + +- دو تومنش دادم آقا. + +- زحمت کشیدی. نگفتی از کجا آورده؟ + +- من که ضامن بهشت و جهنمش نبودم آقا. + +بعد پرسیدم: + +- چرا به آقای ناظم خبر ندادی؟ + +می‌دانستم که هم او و هم فراش جدید، ناظم را هووی خودشان می‌دانند و خیلی چیزهاشان از او مخفی بود. این بود که میان من و ناظم خاصه‌خرجی می‌کردند. در جوابم همین طور مردد مانده بود که در باز شد و فراش جدید آمد تو. که: + +- اگه خبرش می‌کرد آقا بایست سهمش رو می‌داد... + +اخمم را درهم کشیدم و گفتم: + +- تو باز رفتی تو کوک مردم! اونم این جوری سر نزده که نمی‌آیند تو اتاق کسی، پیرمرد! + +و بعد اسم پسرک را ازشان پرسیدم و حالی‌شان کردم که چندان مهم نیست و فرستادمشان برایم چای بیاورند. بعد کارم را زودتر تمام کردم و رفتم به اتاق دفتر احوالی از مادر ناظم پرسیدم و به هوای ورق زدن پرونده‌ها فهمیدم که پسرک شاگرد دوساله است و پدرش تاجر بازار. بعد برگشتم به اتاقم. یادداشتی برای پدر نوشتم که پس فردا صبح، بیاید مدرسه و دادم دست فراش جدید که خودش برساند و رسیدش را بیاورد. + +و پس فردا صبح یارو آمد. باید مدیر مدرسه بود تا دانست که اولیای اطفال چه راحت تن به کوچک‌ترین خرده‌فرمایش‌های مدرسه می‌دهند. حتم دارم که اگر از اجرای ثبت هم دنبال‌شان بفرستی به این زودی‌ها آفتابی نشوند. چهل و پنج ساله مردی بود با یخه‌ی بسته بی‌کراوات و پالتویی که بیش‌تر به قبا می‌ماند. و خجالتی می‌نمود. هنوز ننشسته، پرسیدم: + +- شما دو تا زن دارید آقا؟ + +درباره‌ی پسرش برای خودم پیش‌گویی‌هایی کرده بودم و گفتم این طوری به او رودست می‌زنم. پیدا بود که از سؤالم زیاد یکه نخورده است. گفتم برایش چای آوردند و سیگاری تعارفش کردم که ناشیانه دود کرد از ترس این که مبادا جلویم در بیاید که - به شما چه مربوط است و از این اعتراض‌ها - امانش ندادم و سؤالم را این جور دنبال کردم: + +- البته می‌بخشید. چون لابد به همین علت بچه شما دو سال در یک کلاس مانده. + +شروع کرده بودم برایش یک میتینگ بدهم که پرید وسط حرفم: + +- به سر شما قسم، روزی چهار زار پول تو جیبی داره آقا. پدرسوخته‌ی نمک به حروم...! + +حالیش کردم که علت، پول تو جیبی نیست و خواستم که عصبانی نشود و قول گرفتم که اصلاً به روی پسرش هم نیاورد و آن وقت میتینگم را برایش دادم که لابد پسر در خانه مهر و محبتی نمی‌بیند و غیب‌گویی‌های دیگر... تا عاقبت یارو خجالتش ریخت و سرِ درد دلش باز شد که عفریته زن اولش همچه بوده و همچون بوده و پسرش هم به خودش برده و کی طلاقش داده و از زن دومش چند تا بچه دارد و این نره‌خر حالا باید برای خودش نان‌آور شده باشد و زنش حق دارد که با دو تا بچه‌ی خرده‌پا به او نرسد... من هم کلی برایش صحبت کردم. چایی دومش را هم سر کشید و قول‌هایش را که داد و رفت، من به این فکر افتادم که «نکند علمای تعلیم و تربیت هم، همین جورها تخم دوزرده می‌کنند!» + +یک روز صبح که رسیدم، ناظم هنوز نیامده بود. از این اتفاق‌ها کم می‌افتاد. ده دقیقه‌ای از زنگ می‌گذشت و معلم‌ها در دفتر سرگرم اختلاط بودند. خودم هم وقتی معلم بودم به این مرض دچار بودم. اما وقتی مدیر شدم تازه فهمیدم که معلم‌ها چه لذتی می‌برند. حق هم داشتند. آدم وقتی مجبور باشد شکلکی را به صورت بگذارد که نه دیگران از آن می‌خندند و نه خود آدم لذتی می‌برد، پیداست که رفع تکلیف می‌کند. زنگ را گفتم زدند و بچه‌ها سر کلاس رفتند. دو تا از کلاس‌ها بی‌معلم بود. یکی از ششمی‌ها را فرستادم سر کلاس سوم که برای‌شان دیکته بگوید و خودم رفتم سر کلاس چهار. مدیر هم که باشی، باز باید تمرین کنی که مبادا فوت و فن معلمی از یادت برود. در حال صحبت با بچه‌ها بودم که فراش خبر آورد که خانمی توی دفتر منتظرم است. خیال کردم لابد همان زنکه‌ی بیکاره‌ای است که هفته‌ای یک بار به هوای سرکشی، به وضع درس و مشق بچه‌اش سری می‌زند. زن سفیدرویی بود با چشم‌های درشت محزون و موی بور. بیست و پنج ساله هم نمی‌نمود. اما بچه‌اش کلاس سوم بود. روز اول که دیدمش لباس نارنجی به تن داشت و تن بزک کرده بود. از زیارت من خیلی خوشحال شد و از مراتب فضل و ادبم خبر داشت. + +خیلی ساده آمده بود تا با دو تا مرد حرفی زده باشد. آن طور که ناظم خبر می‌داد، یک سالی طلاق گرفته بود و روی هم رفته آمد و رفتنش به مدرسه باعث دردسر بود. وسط بیابان و مدرسه‌ای پر از معلم‌های عزب و بی‌دست و پا و یک زن زیبا... ناچار جور در نمی‌آمد. این بود که دفعات بعد دست به سرش می‌کردم، اما از رو نمی‌رفت. سراغ ناظم و اتاق دفتر را می‌گرفت و صبر می‌کرد تا زنگ را بزنند و معلم‌ها جمع بشوند و لابد حرف و سخنی و خنده‌ای و بعد از معلم کلاس سوم سراغ کار و بار و بچه‌اش را می‌گرفت و زنگ بعد را که می‌زدند، خداحافظی می‌کرد و می‌رفت. آزاری نداشت. با چشم‌هایش نفس معلم‌ها را می‌برید. و حالا باز هم همان زن بود و آمده بود و من تا از پلکان پایین بروم در ذهنم جملات زننده‌ای ردیف می‌کردم، تا پایش را از مدرسه ببرد که در را باز کردم و سلام... + +عجب! او نبود. دخترک یکی دو ساله‌ای بود با دهان گشاد و موهای زبرش را به زحمت عقب سرش گلوله کرده بود و بفهمی نفهمی دستی توی صورتش برده بود. روی هم رفته زشت نبود. اما داد می‌زد که معلم است. گفتم که مدیر مدرسه‌ام و حکمش را داد دستم که دانشسرا دیده بود و تازه استخدام شده بود. برایمان معلم فرستاده بودند. خواستم بگویم «مگر رئیس فرهنگ نمی‌داند که این جا بیش از حد مرد است» ولی دیدم لزومی ندارد و فکر کردم این هم خودش تنوعی است. + +به هر صورت زنی بود و می‌توانست محیط خشن مدرسه را که به طرز ناشیانه‌ای پسرانه بود، لطافتی بدهد و خوش‌آمد گفتم و چای آوردند که نخورد و بردمش کلاس‌های سوم و چهارم را نشانش دادم که هر کدام را مایل است، قبول کند و صحبت از هجده ساعت درس که در انتظار او بود و برگشتیم به دفتر .پرسید غیر از او هم، معلم زن داریم. گفتم: + +- متأسفانه راه مدرسه‌ی ما را برای پاشنه‌ی کفش خانم‌ها نساخته‌اند. + +که خندید و احساس کردم زورکی می‌خندد. بعد کمی این دست و آن دست کرد و عاقبت: + +- آخه من شنیده بودم شما با معلماتون خیلی خوب تا می‌کنید. + +صدای جذابی داشت. فکر کردم حیف که این صدا را پای تخته سیاه خراب خواهد کرد. و گفتم: + +- اما نه این قدر که مدرسه تعطیل بشود خانم! و لابد به عرض‌تون رسیده که همکارهای شما، خودشون نشسته‌اند و تصمیم گرفته‌اند که هجده ساعت درس بدهند. بنده هیچ‌کاره‌ام. + +- اختیار دارید. + +و نفهمیدم با این «اختیار دارید» چه می‌خواست بگوید. اما پیدا بود که بحث سر ساعات درس نیست. آناً تصمیم گرفتم، امتحانی بکنم: + +- این را هم اطلاع داشته باشید که فقط دو تا از معلم‌های ما متأهل‌اند. + +که قرمز شد و برای این که کار دیگری نکرده باشد، برخاست و حکمش را از روی میز برداشت. پا به پا می‌شد که دیدم باید به دادش برسم. ساعت را از او پرسیدم. وقت زنگ بود. فراش را صدا کردم که زنگ را بزند و بعد به او گفتم، بهتر است مشورت دیگری هم با رئیس فرهنگ بکند و ما به هر صورت خوشحال خواهیم شد که افتخار همکاری با خانمی مثل ایشان را داشته باشیم و خداحافظ شما. از در دفتر که بیرون رفت، صدای زنگ برخاست و معلم‌ها انگار موشان را آتش زده‌اند، به عجله رسیدند و هر کدام از پشت سر، آن قدر او را پاییدند تا از در بزرگ آهنی مدرسه بیرون رفت. + +فردا صبح معلوم شد که ناظم، دنبال کار مادرش بوده است که قرار بود بستری شود، تا جای سرطان گرفته را یک دوره برق بگذارند. کل کار بیمارستان را من به کمک دوستانم انجام دادم و موقع آن رسیده بود که مادرش برود بیمارستان اما وحشتش گرفته بود و حاضر نبود به بیمارستان برود. و ناظم می‌خواست رسماً دخالت کنم و با هم برویم خانه‌شان و با زبان چرب و نرمی که به قول ناظم داشتم مادرش را راضی کنم. چاره‌ای نبود. مدرسه را به معلم‌ها سپردیم و راه افتادیم. بالاخره به خانه‌ی آن‌ها رسیدیم. خانه‌ای بسیار کوچک و اجاره‌ای. مادر با چشم‌های گود نشسته و انگار زغال به صورت مالیده! سیاه نبود اما رنگش چنان تیره بود که وحشتم گرفت. اصلاً صورت نبود. زخم سیاه شده‌ای بود که انگار از جای چشم‌ها و دهان سر باز کرده است. کلی با مادرش صحبت کردم. از پسرش و کلی دروغ و دونگ، و چادرش را روی چارقدش انداختیم و علی... و خلاصه در بیمارستان بستری شدند. + +فردا که به مدرسه آمدم، ناظم سرحال بود و پیدا بود که از شر چیزی خلاص شده است و خبر داد که معلم کلاس سه را گرفته‌اند. یک ماه و خرده‌ای می‌شد که مخفی بود و ما ورقه‌ی انجام کارش را به جانشین غیر رسمی‌اش داده بودیم و حقوقش لنگ نشده بود و تا خبر رسمی بشنود و در روزنامه‌ای بیابد و قضیه به اداره‌ی فرهنگ و لیست حقوق بکشد، باز هم می‌دادیم. اما خبر که رسمی شد، جانشین واجد شرایط هم نمی‌توانست بفرستد و باید طبق مقررات رفتار می‌کردیم و بدیش همین بود. کم کم احساس کردم که مدرسه خلوت شده است و کلاس‌ها اغلب اوقات بی‌کارند. جانشین معلم کلاس چهار هنوز سر و صورتی به کارش نداده بود و حالا یک کلاس دیگر هم بی‌معلم شد. این بود که باز هم به سراغ رئیس فرهنگ رفتم. معلوم شد آن دخترک ترسیده و «نرسیده متلک پیچش کرده‌اید» رئیس فرهنگ این طور می‌گفت. و ترجیح داده بود همان زیر نظر خودش دفترداری کند. و بعد قول و قرار و فردا و پس فردا و عاقبت چهار روز دوندگی تا دو تا معلم گرفتم. یکی جوانکی رشتی که گذاشتیمش کلاس چهار و دیگری باز یکی ازین آقاپسرهای بریانتین‌زده که هر روز کراوات عوض می‌کرد، با نقش‌ها و طرح‌های عجیب. عجب فرهنگ را با قرتی‌ها در آمیخته بودند! باداباد. او را هم گذاشتیم سر کلاس سه. اواخر بهمن، یک روز ناظم آمد اتاقم که بودجه‌ی مدرسه را زنده کرده است. گفتم: + +- مبارکه، چه قدر گرفتی؟ + +- هنوز هیچ چی آقا. قراره فردا سر ظهر بیاند این جا آقا و همین جا قالش رو بکنند. + +و فردا اصلاً مدرسه نرفتم. حتماً می‌خواست من هم باشم و در بده بستان ماهی پانزده قران، حق نظافت هر اتاق نظارت کنم و از مدیریتم مایه بگذارم تا تنخواه‌گردان مدرسه و حق آب و دیگر پول‌های عقب‌افتاده وصول بشود... فردا سه نفری آمده بودند مدرسه. ناهار هم به خرج ناظم خورده بودند. و قرار دیگری برای یک سور حسابی گذاشته بودند و رفته بودند و ناظم با زبان بی‌زبانی حالیم کرد که این بار حتماً باید باشم و آن طور که می‌گفت، جای شکرش باقی بود که مراعات کرده بودند و حق بوقی نخواسته بودند. اولین باری بود که چنین اهمیتی پیدا می‌کردم. این هم یک مزیت دیگر مدیری مدرسه بود! سی صد تومان از بودجه‌ی دولت بسته به این بود که به فلان مجلس بروی یا نروی. تا سه روز دیگر موعد سور بود، اصلاً یادم نیست چه کردم. اما همه‌اش در این فکر بودم که بروم یا نروم؟ یک بار دیگر استعفانامه‌ام را توی جیبم گذاشتم و بی این که صدایش را در بیاورم، روز سور هم نرفتم. + +بعد دیدم این طور که نمی‌شود. گفتم بروم قضایا را برای رئیس فرهنگ بگویم. و رفتم. سلام و احوالپرسی نشستم. اما چه بگویم؟ بگویم چون نمی‌خواستم در خوردن سور شرکت کنم، استعفا می‌دهم؟... دیدم چیزی ندارم که بگویم. و از این گذشته خفت‌آور نبود که به خاطر سیصد تومان جا بزنم و استعفا بدهم؟ و «خداحافظ؛ فقط آمده بودم سلام عرض کنم.» و از این دروغ‌ها و استعفانامه‌ام را توی جوی آب انداختم. اما ناظم؛ یک هفته‌ای مثل سگ بود. عصبانی، پر سر و صدا و شارت و شورت! حتی نرفتم احوال مادرش را بپرسم. یک هفته‌ی تمام می‌رفتم و در اتاقم را می‌بستم و سوراخ‌های گوشم را می‌گرفتم و تا اِز و چِزّ بچه‌ها بخوابد، از این سر تا آن سر اتاق را می‌کوبیدم. ده روز تمام، قلب من و بچه‌ها با هم و به یک اندازه از ترس و وحشت تپید. تا عاقبت پول‌ها وصول شد. منتها به جای سیصد و خرده‌ای، فقط صد و پنجاه تومان. علت هم این بود که در تنظیم صورت حساب‌ها اشتباهاتی رخ داده بود که ناچار اصلاحش کرده بودند! + +غیر از آن زنی که هفته‌ای یک بار به مدرسه سری می‌زد، از اولیای اطفال دو سه نفر دیگر هم بودند که مرتب بودند. یکی همان پاسبانی که با کمربند، پاهای پسرش را بست و فلک کرد. یکی هم کارمند پست و تلگرافی بود که ده روزی یک بار می‌آمد و پدر همان بچه‌ی شیطان. و یک استاد نجار که پسرش کلاس اول بود و خودش سواد داشت و به آن می‌بالید و کارآمد می‌نمود. یک مقنی هم بود درشت استخوان و بلندقد که بچه‌اش کلاس سوم بود و هفته‌ای یک بار می‌آمد و همان توی حیاط، ده پانزده دقیقه‌ای با فراش‌ها اختلاط می‌کرد و بی سر و صدا می‌رفت. نه کاری داشت، نه چیزی از آدم می‌خواست و همان طور که آمده بود چند دقیقه‌ای را با فراش صحبت می‌کرد و بعد می رفت. فقط یک روز نمی‌دانم چرا رفته بود بالای دیوار مدرسه. البته اول فکر کردم مأمور اداره برق است ولی بعد متوجه شدم که همان مرد مقنی است. بچه‌ها جیغ و فریاد می‌کردند و من همه‌اش درین فکر بودم که چه طور به سر دیوار رفته است؟ ماحصل داد و فریادش این بود که چرا اسم پسر او را برای گرفتن کفش و لباس به انجمن ندادیم. وقتی به او رسیدم نگاهی به او انداختم و بعد تشری به ناظم و معلم ها زدم که ولش کردند و بچه‌ها رفتند سر کلاس و بعد بی این که نگاهی به او بکنم، گفتم: + +- خسته نباشی اوستا. + +و همان طور که به طرف دفتر می‌رفتم رو به ناظم و معلم‌ها افزودم: + +- لابد جواب درست و حسابی نشنیده که رفته سر دیوار. + +که پشت سرم گرپ صدایی آمد و از در دفتر که رفتم تو، او و ناظم با هم وارد شدند. گفتم نشست. و به جای این‌که حرفی بزند به گریه افتاد. هرگز گمان نمی‌کردم از چنان قد و قامتی صدای گریه در بیاید. این بود که از اتاق بیرون آمدم و فراش را صدا زدم که آب برایش بیاورد و حالش که جا آمد، بیاوردش پهلوی من. اما دیگر از او خبری نشد که نشد. نه آن روز و نه هیچ روز دیگر. آن روز چند دقیقه‌ای بعد از شیشه‌ی اتاق خودم دیدمش که دمش را لای پایش گذاشته بود از در مدرسه بیرون می‌رفت و فراش جدید آمد که بله می‌گفتند از پسرش پنج تومان خواسته بودند تا اسمش را برای کفش و لباس به انجمن بدهند. پیدا بود باز توی کوک ناظم رفته است. مرخصش کردم و ناظم را خواستم. معلوم شد می‌خواسته ناظم را بزند. همین جوری و بی‌مقدمه. + +اواخر بهمن بود که یکی از روزهای برفی با یکی دیگر از اولیای اطفال آشنا شدم. یارو مرد بسیار کوتاهی بود؛ فرنگ مآب و بزک کرده و اتو کشیده که ننشسته از تحصیلاتش و از سفرهای فرنگش حرف زد. می‌خواست پسرش را آن وقت سال از مدرسه‌ی دیگر به آن جا بیاورد. پسرش از آن بچه‌هایی بود که شیر و مربای صبحانه‌اش را با قربان صدقه توی حلقشان می‌تپانند. کلاس دوم بود و ثلث اول دو تا تجدید آورده بود. می‌گفت در باغ ییلاقی‌اش که نزدیک مدرسه است، باغبانی دارند که پسرش شاگرد ماست و درس‌خوان است و پیدا است که بچه‌ها زیر سایه شما خوب پیشرفت می‌کنند. و از این پیزرها. و حال به خاطر همین بچه، توی این برف و سرما، آمده‌اند ساکن باغ ییلاقی شده‌اند. بلند شدم ناظم را صدا کردم و دست او و بچه‌اش را توی دست ناظم گذاشتم و خداحافظ شما... و نیم ساعت بعد ناظم برگشت که یارو خانه‌ی شهرش را به یک دبیرستان اجاره داده، به ماهی سه هزار و دویست تومان، و التماس دعا داشته، یعنی معلم سرخانه می‌خواسته و حتی بدش نمی‌آمده است که خود مدیر زحمت بکشند و ازین گنده‌گوزی‌ها... احساس کردم که ناظم دهانش آب افتاده است. و من به ناظم حالی کردم خودش برود بهتر است و فقط کاری بکند که نه صدای معلم‌ها در بیاید و نه آخر سال، برای یک معدل ده احتیاجی به من بمیرم و تو بمیری پیدا کند. همان روز عصر ناظم رفته بود و قرار و مدار برای هر روز عصر یک ساعت به ماهی صد و پنجاه تومان. + +دیگر دنیا به کام ناظم بود. حال مادرش هم بهتر بود و از بیمارستان مرخصش کرده بودند و به فکر زن گرفتن افتاده بود. و هر روز هم برای یک نفر نقشه می‌کشید حتی برای من هم. یک روز در آمد که چرا ما خودمان «انجمن خانه و مدرسه» نداشته باشیم؟ نشسته بود و حسابش را کرده بود دیده بود که پنجاه شصت نفری از اولیای مدرسه دستشان به دهان‌شان می‌رسد و از آن هم که به پسرش درس خصوصی می‌داد قول مساعد گرفته بود. حالیش کردم که مواظب حرف و سخن اداره‌ای باشد و هر کار دلش می‌خواهد بکند. کاغذ دعوت را هم برایش نوشتم با آب و تاب و خودش برای اداره‌ی فرهنگ، داد ماشین کردند و به وسیله‌ی خود بچه‌ها فرستاد. و جلسه با حضور بیست و چند نفری از اولیای بچه‌ها رسمی شد. خوبیش این بود که پاسبان کشیک پاسگاه هم آمده بود و دم در برای همه، پاشنه‌هایش را به هم می‌کوبید و معلم‌ها گوش تا گوش نشسته بودند و مجلس ابهتی داشت و ناظم، چای و شیرینی تهیه کرده بود و چراغ زنبوری کرایه کرده بود و باران هم گذاشت پشتش و سالون برای اولین بار در عمرش به نوایی رسید. + +یک سرهنگ بود که رئیسش کردیم و آن زن را که هفته‌ای یک بار می‌آمد نایب رئیس. آن که ناظم به پسرش درس خصوصی می‌داد نیامده بود. اما پاکت سربسته‌ای به اسم مدیر فرستاده بود که فی‌المجلس بازش کردیم. عذرخواهی از این‌که نتوانسته بود بیاید و وجه ناقابلی جوف پاکت. صد و پنجاه تومان. و پول را روی میز صندوق‌دار گذاشتیم که ضبط و ربط کند. نائب رئیس بزک کرده و معطر شیرینی تعارف می‌کرد و معلم‌ها با هر بار که شیرینی بر می‌داشتند، یک بار تا بناگوش سرخ می‌شدند و فراش‌ها دست به دست چای می‌آوردند. + +در فکر بودم که یک مرتبه احساس کردم، سیصد چهارصد تومان پول نقد، روی میز است و هشت صد تومان هم تعهد کرده بودند. پیرزن صندوقدار که کیف پولش را همراهش نیاورده بود ناچار حضار تصویب کردند که پول‌ها فعلاً پیش ناظم باشد. و صورت مجلس مرتب شد و امضاها ردیف پای آن و فردا فهمیدم که ناظم همان شب روی خشت نشسته بوده و به معلم‌ها سور داده بوده است. اولین کاری که کردم رونوشت مجلس آن شب را برای اداره‌ی فرهنگ فرستادم. و بعد همان استاد نجار را صدا کردم و دستور دادم برای مستراح‌ها دو روزه در بسازد که ناظم خیلی به سختی پولش را داد. و بعد در کوچه‌ی مدرسه درخت کاشتیم. تور والیبال را تعویض و تعدادی توپ در اختیار بچه‌ها گذاشتیم برای تمرین در بعد از ظهرها و آمادگی برای مسابقه با دیگر مدارس و در همین حین سر و کله‌ی بازرس تربیت بدنی هم پیدا شد و هر روز سرکشی و بیا و برو. تا یک روز که به مدرسه رسیدم شنیدم که از سالون سر و صدا می‌آید. صدای هالتر بود. ناظم سر خود رفته بود و سرخود دویست سیصد تومان داده بود و هالتر خریده بود و بچه‌های لاغر زیر بار آن گردن خود را خرد می‌کردند. من در این میان حرفی نزدم. می‌توانستم حرفی بزنم؟ من چیکاره بودم؟ اصلاً به من چه ربطی داشت؟ هر کار که دلشان می‌خواهد بکنند. مهم این بود که سالون مدرسه رونقی گرفته بود. ناظم هم راضی بود و معلم‌ها هم. چون نه خبر از حسادتی بود و نه حرف و سخنی پیش آمد. فقط می‌بایست به ناظم سفارش می کردم که فکر فراش‌ها هم باشد. + +کم کم خودمان را برای امتحان‌های ثلث دوم آماده می‌کردیم. این بود که اوایل اسفند، یک روز معلم‌ها را صدا زدم و در شورا مانندی که کردیم بی‌مقدمه برایشان داستان یکی از همکاران سابقم را گفتم که هر وقت بیست می‌داد تا دو روز تب داشت. البته معلم‌ها خندیدند. ناچار تشویق شدم و داستان آخوندی را گفتم که در بچگی معلم شرعیاتمان بود و زیر عبایش نمره می‌داد و دستش چنان می‌لرزید که عبا تکان می‌خورد و درست ده دقیقه طول می‌کشید. و تازه چند؟ بهترین شاگردها دوازده. و البته باز هم خندیدند. که این بار کلافه‌ام کرد. و بعد حالیشان کردم که بد نیست در طرح سؤال‌ها مشورت کنیم و از این حرف‌ها... + +و از شنبه‌ی بعد، امتحانات شروع شد. درست از نیمه‌ی دوم اسفند. سؤال‌ها را سه نفری می‌دیدیم. خودم با معلم هر کلاس و ناظم. در سالون میزها را چیده بودیم البته از وقتی هالتردار شده بود خیلی زیباتر شده بود. در سالون کاردستی‌های بچه‌ها در همه جا به چشم می‌خورد. هر کسی هر چیزی را به عنوان کاردستی درست کرده بودند و آورده بودند. که برای این کاردستی‌ها چه پول‌ها که خرج نشده بود و چه دست‌ها که نبریده بود و چه دعواها که نشده بود و چه عرق‌ها که ریخته نشده بود. پیش از هر امتحان که می‌شد، خودم یک میتینگ برای بچه‌ها می‌دادم که ترس از معلم و امتحان بی‌جا است و باید اعتماد به نفس داشت و ازین مزخرفات....ولی مگر حرف به گوش کسی می‌رفت؟ از در که وارد می‌شدند، چنان هجومی می‌بردند که نگو! به جاهای دور از نظر. یک بار چنان بود که احساس کردم مثل این‌که از ترس، لذت می‌برند. اگر معلم نبودی یا مدیر، به راحتی می‌توانستی حدس بزنی که کی‌ها با هم قرار و مداری دارند و کدام یک پهلو دست کدام یک خواهد نشست. یکی دو بار کوشیدم بالای دست یکی‌شان بایستم و ببینم چه می‌نویسد. ولی چنان مضطرب می‌شدند و دستشان به لرزه می‌افتاد که از نوشتن باز می‌ماندند. می‌دیدم که این مردان آینده، درین کلاس‌ها و امتحان‌ها آن قدر خواهند ترسید که وقتی دیپلمه بشوند یا لیسانسه، اصلاً آدم نوع جدیدی خواهند شد. آدمی انباشته از وحشت، انبانی از ترس و دلهره. به این ترتیب یک روز بیشتر دوام نیاوردم. چون دیدم نمی‌توانم قلب بچگانه‌ای داشته باشم تا با آن ترس و وحشت بچه‌ها را درک کنم و هم‌دردی نشان بدهم.این جور بود که می‌دیدم که معلم مدرسه هم نمی‌توانم باشم. + +دو روز قبل از عید کارنامه‌ها آماده بود و منتظر امضای مدیر. دویست و سی و شش تا امضا اقلاً تا ظهر طول می‌کشید. پیش از آن هم تا می‌توانستم از امضای دفترهای حضور و غیاب می‌گریختم. خیلی از جیره‌خورهای دولت در ادارات دیگر یا در میان همکارانم دیده بودم که در مواقع بیکاری تمرین امضا می‌کنند. پیش از آن نمی‌توانستم بفهمم چه طور از مدیری یک مدرسه یا کارمندی ساده یک اداره می‌شود به وزارت رسید. یا اصلاً آرزویش را داشت. نیم‌قراضه امضای آماده و هر کدام معرف یک شخصیت، بعد نیم‌ذرع زبان چرب و نرم که با آن، مار را از سوراخ بیرون بکشی، یا همه جا را بلیسی و یک دست هم قیافه. نه یک جور. دوازده جور. + +در این فکرها بودم که ناگهان در میان کارنامه‌ها چشمم به یک اسم آشنا افتاد. به اسم پسران جناب سرهنگ که رئیس انجمن بود. رفتم توی نخ نمراتش. همه متوسط بود و جای ایرادی نبود. و یک مرتبه به صرافت افتادم که از اول سال تا به حال بچه‌های مدرسه را فقط به اعتبار وضع مالی پدرشان قضاوت کرده‌ام. درست مثل این پسر سرهنگ که به اعتبار کیابیای پدرش درس نمی‌خواند. دیدم هر کدام که پدرشان فقیرتر است به نظر من باهوش‌تر می‌آمده‌اند. البته ناظم با این حرف‌ها کاری نداشت. مر قانونی را عمل می‌کرد. از یکی چشم می‌پوشید به دیگری سخت می‌گرفت. + +اما من مثل این که قضاوتم را درباره‌ی بچه‌ها از پیش کرده باشم و چه خوب بود که نمره‌ها در اختیار من نبود و آن یکی هم «انظباط» مال آخر سال بود. مسخره‌ترین کارها آن است که کسی به اصلاح وضعی دست بزند، اما در قلمروی که تا سر دماغش بیشتر نیست. و تازه مدرسه‌ی من، این قلمروی فعالیت من، تا سر دماغم هم نبود. به همان توی ذهنم ختم می‌شد. وضعی را که دیگران ترتیب داده بودند. به این ترتیب بعد از پنج شش ماه، می‌فهمیدم که حسابم یک حساب عقلایی نبوده است. احساساتی بوده است. ضعف‌های احساساتی مرا خشونت‌های عملی ناظم جبران می‌کرد و این بود که جمعاً نمی‌توانستم ازو بگذرم. مرد عمل بود. کار را می‌برید و پیش می‌رفت. در زندگی و در هر کاری، هر قدمی بر می‌داشت، برایش هدف بود. و چشم از وجوه دیگر قضیه می‌پوشید. این بود که برش داشت. و من نمی‌توانستم. چرا که اصلاً مدیر نبودم. خلاص... + +و کارنامه‌ی پسر سرهنگ را که زیر دستم عرق کرده بود، به دقت و احتیاج خشک کردم و امضایی زیر آن گذاشتم به قدری بد خط و مسخره بود که به یاد امضای فراش جدیدمان افتادم. حتماً جناب سرهنگ کلافه می‌شد که چرا چنین آدم بی‌سوادی را با این خط و ربط امضا مدیر مدرسه کرده‌اند. آخر یک جناب سرهنگ هم می‌داند که امضای آدم معرف شخصیت آدم است. + +اواخر تعطیلات نوروز رفتم به ملاقات معلم ترکه‌ای کلاس سوم. ناظم که با او میانه‌ی خوشی نداشت. ناچار با معلم حساب کلاس پنج و شش قرار و مداری گذاشته بودم که مختصری علاقه‌ای هم به آن حرف و سخن‌ها داشت. هم به وسیله‌ی او بود که می‌دانستم نشانی‌اش کجا است و توی کدام زندان است. در راه قبل از هر چیز خبر داد که رئیس فرهنگ عوض شده و این طور که شایع است یکی از هم دوره‌ای‌های من، جایش آمده. گفتم: + +- عجب! چرا؟ مگه رئیس قبلی چپش کم بود؟ + +- چه عرض کنم. می‌گند پا تو کفش یکی از نماینده‌ها کرده. شما خبر ندارید؟ + +- چه طور؟ از کجا خبر داشته باشم؟ + +- هیچ چی... می گند دو تا از کارچاق‌کن‌های انتخاباتی یارو از صندوق فرهنگ حقوق می‌گرفته‌اند؛ شب عیدی رئیس فرهنگ حقوق‌شون رو زده. + +- عجب! پس اونم می‌خواسته اصلاحات کنه! بیچاره. + +و بعد از این حرف زدیم که الحمدالله مدرسه مرتب است و آرام و معلم‌ها همکاری می‌کنند و ناظم بیش از اندازه همه‌کاره شده است. و من فهمیدم که باز لابد مشتری خصوصی تازه‌ای پیدا شده است که سر و صدای همه همکارها بلند شده. دم در زندان شلوغ بود. کلاه مخملی‌ها، عم‌قزی گل‌بته‌ها، خاله خانباجی‌ها و... اسم نوشتیم و نوبت گرفتیم و به جای پاها، دست‌هامان زیر بار کوچکی که داشتیم، خسته شد و خواب رفت تا نوبتمان شد. از این اتاق به آن اتاق و عاقبت نرده‌های آهنی و پشت آن معلم کلاس سه و... عجب چاق شده بود!درست مثل یک آدم حسابی شده بود. خوشحال شدیم و احوالپرسی و تشکر؛ و دیگر چه بگویم؟ بگویم چرا خودت را به دردسر انداختی؟ پیدا بود از مدرسه و کلاس به او خوش‌تر می‌گذرد. ایمانی بود و او آن را داشت و خوشبخت بود و دردسری نمی‌دید و زندان حداقل برایش کلاس درس بود. عاقبت پرسیدم: + +- پرونده‌ای هم برات درست کردند یا هنوز بلاتکلیفی؟ + +- امتحانمو دادم آقا مدیر، بد از آب در نیومد. + +- یعنی چه؟ + +- یعنی بی‌تکلیف نیستم. چون اسمم تو لیست جیره‌ی زندون رفته. خیالم راحته. چون سختی‌هاش گذشته. + +دیگر چه بگویم. دیدم چیزی ندارم خداحافظی کردم و او را با معلم حساب تنها گذاشتم و آمدم بیرون و تا مدت ملاقات تمام بشود، دم در زندان قدم زدم و به زندانی فکر کردم که برای خودم ساخته بودم. یعنی آن خرپول فرهنگ‌دوست ساخته بود. و من به میل و رغبت خودم را در آن زندانی کرده بودم. این یکی را به ضرب دگنک این جا آورده بودند. ناچار حق داشت که خیالش راحت باشد. اما من به میل و رغبت رفته بودم و چه بکنم؟ ناظم چه طور؟ راستی اگر رئیس فرهنگ از هم دوره‌ای‌های خودم باشد؛ چه طور است بروم و ازو بخواهم که ناظم را جای من بگذارد، یا همین معلم حساب را؟... که معلم حساب در آمد و راه افتادیم. با او هم دیگر حرفی نداشتم. سر پیچ خداحافظ شما و تاکسی گرفتم و یک سر به اداره‌ی فرهنگ زدم. گرچه دهم عید بود، اما هنوز رفت و آمد سال نو تمام نشده بود. برو و بیا و شیرینی و چای دو جانبه. رفتم تو. سلام و تبریک و همین تعارفات را پراندم. + +بله خودش بود. یکی از پخمه‌های کلاس. که آخر سال سوم کشتیارش شدم دو بیت شعر را حفظ کند، نتوانست که نتوانست. و حالا او رئیس بود و من آقا مدیر. راستی حیف از من، که حتی وزیر چنین رئیس فرهنگ‌هایی باشم! میز همان طور پاک بود و رفته. اما زیرسیگاری انباشته از خاکستر و ته سیگار. بلند شد و چلپ و چولوپ روبوسی کردیم و پهلوی خودش جا باز کرد و گوش تا گوش جیره‌خورهای فرهنگ تبریکات صمیمانه و بدگویی از ماسبق و هندوانه و پیزرها! و دو نفر که قد و قواره‌شان به درد گود زورخانه می‌خورد یا پای صندوق انتخابات شیرینی به مردم می‌دادند. نزدیک بود شیرینی را توی ظرفش بیندازم که دیدم بسیار احمقانه است. سیگارم که تمام شد قضیه‌ی رئیس فرهنگ قبلی و آن دو نفر را در گوشی ازش پرسیدم، حرفی نزد. فقط نگاهی می‌کرد که شبیه التماس بود و من فرصت جستم تا وضع معلم کلاس سوم را برایش روشن کنم و از او بخواهم تا آن جا که می‌تواند جلوی حقوقش را نگیرد. و از در که آمدم بیرون، تازه یادم آمد که برای کار دیگری پیش رئیس فرهنگ بودم. + +باز دیروز افتضاحی به پا شد. معقول یک ماهه‌ی فروردین راحت بودیم. اول اردیبهشت ماه جلالی و کوس رسوایی سر دیوار مدرسه. نزدیک آخر وقت یک جفت پدر و مادر، بچه‌شان در میان، وارد اتاق شدند. یکی بر افروخته و دیگری رنگ و رو باخته و بچه‌شان عیناً مثل این عروسک‌های کوکی. سلام و علیک و نشستند. خدایا دیگر چه اتفاقی افتاده است؟ + +- چه خبر شده که با خانوم سرافرازمون کردید؟ + +مرد اشاره‌ای به زنش کرد که بلند شد و دست بچه را گرفت و رفت بیرون و من ماندم و پدر. اما حرف نمی‌زد. به خودش فرصت می‌داد تا عصبانیتش بپزد. سیگارم را در آوردم و تعارفش کردم. مثل این که مگس مزاحمی را از روی دماغش بپراند، سیگار را رد کرد و من که سیگارم را آتش می‌زدم، فکر کردم لابد دردی دارد که چنین دست و پا بسته و چنین متکی به خانواده به مدرسه آمده. باز پرسیدم: + +- خوب، حالا چه فرمایش داشتید؟ + +که یک مرتبه ترکید: + +- اگه من مدیر مدرسه بودم و هم‌چه اتفاقی می‌افتاد، شیکم خودمو پاره می‌کردم. خجالت بکش مرد! برو استعفا بده. تا اهل محل نریختن تیکه تیکه‌ات کنند، دو تا گوشتو وردار و دررو. بچه‌های مردم می‌آن این جا درس بخونن و حسن اخلاق. نمی‌آن که... + +- این مزخرفات کدومه آقا! حرف حساب سرکار چیه؟ + +و حرکتی کردم که او را از در بیندازم بیرون. اما آخر باید می‌فهمیدم چه مرگش است. «ولی آخر با من چه کار دارد؟» + +- آبروی من رفته. آبروی صد ساله‌ی خونواده‌ام رفته. اگه در مدرسه‌ی تو رو تخته نکنم، تخم بابام نیستم. آخه من دیگه با این بچه چی کار کنم؟ تو این مدرسه ناموس مردم در خطره. کلانتری فهمیده؛ پزشک قانونی فهمیده؛ یک پرونده درست شده پنجاه ورق؛ تازه می‌گی حرف حسابم چیه؟ حرف حسابم اینه که صندلی و این مقام از سر تو زیاده. حرف حسابم اینه که می‌دم محاکمه‌ات کنند و از نون خوردن بندازنت... + +او می‌گفت و من گوش می‌کردم و مثل دو تا سگ هار به جان هم افتاده بودیم که در باز شد و ناظم آمد تو. به دادم رسید. در همان حال که من و پدر بچه در حال دعوا بودیم زن و بچه همان آقا رفته بودند و قضایا را برای ناظم تعریف کرده بودند و او فرستاده بوده فاعل را از کلاس کشیده بودند بیرون... و گفت چه طور است زنگ بزنیم و جلوی بچه‌ها ادبش کنیم و کردیم. یعنی این بار خود من رفتم میدان. پسرک نره‌خری بود از پنجمی‌ها با لباس مرتب و صورت سرخ و سفید و سالکی به گونه. جلوی روی بچه‌ها کشیدمش زیر مشت و لگد و بعد سه تا از ترکه‌ها را که فراش جدید فوری از باغ همسایه آورده بود، به سر و صورتش خرد کردم. چنان وحشی شده بودم که اگر ترکه‌ها نمی‌رسید، پسرک را کشته بودم. این هم بود که ناظم به دادش رسید و وساطت کرد و لاشه‌اش را توی دفتر بردند و بچه‌ها را مرخص کردند و من به اتاقم برگشتم و با حالی زار روی صندلی افتادم، نه از پدر خبری بود و نه از مادر و نه از عروسک‌های کوکی‌شان که ناموسش دست کاری شده بود. و تازه احساس کردم که این کتک‌کاری را باید به او می‌زدم. خیس عرق بودم و دهانم تلخ بود. تمام فحش‌هایی که می‌بایست به آن مردکه‌ی دبنگ می‌دادم و نداده بودم، در دهانم رسوب کرده بود و مثل دم مار تلخ شده بود. اصلاً چرا زدمش؟ چرا نگذاشتم مثل همیشه ناظم میدان‌داری کند که هم کارکشته‌تر بود و هم خونسردتر. لابد پسرک با دخترعمه‌اش هم نمی‌تواند بازی کند. لابد توی خانواده‌شان، دخترها سر ده دوازده سالگی باید از پسرهای هم سن رو بگیرند. نکند عیبی کرده باشد؟ و یک مرتبه به صرافت افتادم که بروم ببینم چه بلایی به سرش آورده‌ام. بلند شدم و یکی از فراش‌ها را صدا کردم که فهمیدم روانه‌اش کرده‌اند. آبی آورد که روی دستم می‌ریخت و صورتم را می‌شستم و می‌کوشیدم که لرزش دست‌هایم را نبیند. و در گوشم آهسته گفت که پسر مدیر شرکت اتوبوسرانی است و بدجوری کتک خورده و آن‌ها خیلی سعی کرده‌اند که تر و تمیزش کنند... + +احمق مثلا داشت توی دل مرا خالی می‌کرد. نمی‌دانست که من اول تصمیم را گرفتم، بعد مثل سگ هار شدم. و تازه می‌فهمیدم کسی را زده‌ام که لیاقتش را داشته. حتماً از این اتفاق‌ها جای دیگر هم می‌افتد. آدم بردارد پایین تنه بچه‌ی خودش را، یا به قول خودش ناموسش را بگذارد سر گذر که کلانتر محل و پزشک معاینه کنند! تا پرونده درست کنند؟ با این پدرو مادرها بچه‌ها حق دارند که قرتی و دزد و دروغگو از آب در بیایند. این مدرسه‌ها را اول برای پدر و مادرها باز کنند... + +با این افکار به خانه رسیدم. زنم در را که باز کرد؛ چشم‌هایش گرد شد. همیشه وقتی می‌ترسد این طور می‌شود. برای اینکه خیال نکند آدم کشته‌ام، زود قضایا را برایش گفتم. و دیدم که در ماند. یعنی ساکت ماند. آب سرد، عرق بیدمشک، سیگار پشت سیگار فایده نداشت، لقمه از گلویم پایین نمی‌رفت و دست‌ها هنوز می‌لرزید. هر کدام به اندازه‌ی یک ماه فعالیت کرده بودند. با سیگار چهارم شروع کردم: + +- می‌دانی زن؟ بابای یارو پول‌داره. مسلماً کار به دادگستری و این جور خنس‌ها می‌کشه. مدیریت که الفاتحه. اما خیلی دلم می‌خواد قضیه به دادگاه برسه. یک سال آزگار رو دل کشیده‌ام و دیگه خسته شده‌ام. دلم می‌خواد یکی بپرسه چرا بچه‌ی مردم رو این طوری زدی، چرا تنبیه بدنی کردی! آخه یک مدیر مدرسه هم حرف‌هایی داره که باید یک جایی بزنه... + +که بلند شد و رفت سراغ تلفن. دو سه تا از دوستانم را که در دادگستری کاره‌ای بودند، گرفت و خودم قضیه را برایشان گفتم که مواظب باشند. فردا پسرک فاعل به مدرسه نیامده بود. و ناظم برایم گفت که قضیه ازین قرار بوده است که دوتایی به هوای دیدن مجموعه تمبرهای فاعل با هم به خانه‌ای می‌روند و قضایا همان جا اتفاق می‌افتد و داد و هوار و دخالت پدر و مادرهای طرفین و خط و نشان و شبانه کلانتری؛ و تمام اهل محل خبر دارند. او هم نظرش این بود که کار به دادگستری خواهد کشید. + +و من یک هفته‌ی تمام به انتظار اخطاریه‌ی دادگستری صبح و عصر به مدرسه رفتم و مثل بخت‌النصر پشت پنجره ایستادم. اما در تمام این مدت نه از فاعل خبری شد، نه از مفعول و نه از پدر و مادر ناموس‌پرست و نه از مدیر شرکت اتوبوسرانی. انگار نه انگار که اتفاقی افتاده. بچه‌ها می‌آمدند و می‌رفتند؛ برای آب خوردن عجله می‌کردند؛ به جای بازی کتک‌کاری می‌کردند و همه چیز مثل قبل بود. فقط من ماندم و یک دنیا حرف و انتظار. تا عاقبت رسید.... احضاریه‌ای با تعیین وقت قبلی برای دو روز بعد، در فلان شعبه و پیش فلان بازپرس دادگستری. آخر کسی پیدا شده بود که به حرفم گوش کند. + +تا دو روز بعد که موعد احضار بود، اصلاً از خانه در نیامدم. نشستم و ماحصل حرف‌هایم را روی کاغذ آوردم. حرف‌هایی که با همه‌ی چرندی هر وزیر فرهنگی می‌توانست با آن یک برنامه‌ی هفت ساله برای کارش بریزد. و سر ساعت معین رفتم دادگستری. اتاق معین و بازپرس معین. در را باز کردم و سلام، و تا آمدم خودم را معرفی کنم و احضاریه را در بیاورم، یارو پیش‌دستی کرد و صندلی آورد و چای سفارش داد و «احتیاجی به این حرف‌ها نیست و قضیه‌ی کوچک بود و حل شد و راضی به زحمت شما نبودیم...» + +که عرق سرد بر بدن من نشست. چایی‌ام را که خوردم، روی همان کاغذ نشان‌دار دادگستری استعفانامه‌ام را نوشتم و به نام هم‌کلاسی پخمه‌ام که تازه رئیس شده بود، دم در پست کردم. +EOT; +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/fi_FI/Address.php b/vendor/fakerphp/faker/src/Faker/Provider/fi_FI/Address.php new file mode 100644 index 0000000..d72951b --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/fi_FI/Address.php @@ -0,0 +1,85 @@ +format('dmy'); + + switch ((int) ($birthdate->format('Y') / 100)) { + case 18: + $centurySign = '+'; + + break; + + case 19: + $centurySign = '-'; + + break; + + case 20: + $centurySign = 'A'; + + break; + + default: + throw new \InvalidArgumentException('Year must be between 1800 and 2099 inclusive.'); + } + + $randomDigits = self::numberBetween(0, 89); + + if ($gender && $gender == static::GENDER_MALE) { + if ($randomDigits === 0) { + $randomDigits .= static::randomElement([3, 5, 7, 9]); + } else { + $randomDigits .= static::randomElement([1, 3, 5, 7, 9]); + } + } elseif ($gender && $gender == static::GENDER_FEMALE) { + if ($randomDigits === 0) { + $randomDigits .= static::randomElement([2, 4, 6, 8]); + } else { + $randomDigits .= static::randomElement([0, 2, 4, 6, 8]); + } + } else { + if ($randomDigits === 0) { + $randomDigits .= self::numberBetween(2, 9); + } else { + $randomDigits .= (string) static::numerify('#'); + } + } + $randomDigits = str_pad($randomDigits, 3, '0', STR_PAD_LEFT); + + $checksum = $checksumCharacters[(int) ($datePart . $randomDigits) % strlen($checksumCharacters)]; + + return $datePart . $centurySign . $randomDigits . $checksum; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/fi_FI/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/fi_FI/PhoneNumber.php new file mode 100644 index 0000000..db06ce2 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/fi_FI/PhoneNumber.php @@ -0,0 +1,101 @@ + 'Argovie'], + ['AI' => 'Appenzell Rhodes-Intérieures'], + ['AR' => 'Appenzell Rhodes-Extérieures'], + ['BE' => 'Berne'], + ['BL' => 'Bâle-Campagne'], + ['BS' => 'Bâle-Ville'], + ['FR' => 'Fribourg'], + ['GE' => 'Genève'], + ['GL' => 'Glaris'], + ['GR' => 'Grisons'], + ['JU' => 'Jura'], + ['LU' => 'Lucerne'], + ['NE' => 'Neuchâtel'], + ['NW' => 'Nidwald'], + ['OW' => 'Obwald'], + ['SG' => 'Saint-Gall'], + ['SH' => 'Schaffhouse'], + ['SO' => 'Soleure'], + ['SZ' => 'Schwytz'], + ['TG' => 'Thurgovie'], + ['TI' => 'Tessin'], + ['UR' => 'Uri'], + ['VD' => 'Vaud'], + ['VS' => 'Valais'], + ['ZG' => 'Zoug'], + ['ZH' => 'Zurich'], + ]; + + protected static $cityFormats = [ + '{{cityName}}', + ]; + + protected static $streetNameFormats = [ + '{{streetPrefix}} {{lastName}}', + '{{streetPrefix}} de {{cityName}}', + '{{streetPrefix}} de {{lastName}}', + ]; + + protected static $streetAddressFormats = [ + '{{streetName}} {{buildingNumber}}', + ]; + protected static $addressFormats = [ + "{{streetAddress}}\n{{postcode}} {{city}}", + ]; + + /** + * Returns a random street prefix + * + * @example Rue + * + * @return string + */ + public static function streetPrefix() + { + return static::randomElement(static::$streetPrefix); + } + + /** + * Returns a random city name. + * + * @example Luzern + * + * @return string + */ + public function cityName() + { + return static::randomElement(static::$cityNames); + } + + /** + * Returns a canton + * + * @example array('BE' => 'Bern') + * + * @return array + */ + public static function canton() + { + return static::randomElement(static::$canton); + } + + /** + * Returns the abbreviation of a canton. + * + * @return string + */ + public static function cantonShort() + { + $canton = static::canton(); + + return key($canton); + } + + /** + * Returns the name of canton. + * + * @return string + */ + public static function cantonName() + { + $canton = static::canton(); + + return current($canton); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/fr_CH/Color.php b/vendor/fakerphp/faker/src/Faker/Provider/fr_CH/Color.php new file mode 100644 index 0000000..6deb9f8 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/fr_CH/Color.php @@ -0,0 +1,7 @@ + 'Ain'], ['02' => 'Aisne'], ['03' => 'Allier'], ['04' => 'Alpes-de-Haute-Provence'], ['05' => 'Hautes-Alpes'], + ['06' => 'Alpes-Maritimes'], ['07' => 'Ardèche'], ['08' => 'Ardennes'], ['09' => 'Ariège'], ['10' => 'Aube'], + ['11' => 'Aude'], ['12' => 'Aveyron'], ['13' => 'Bouches-du-Rhône'], ['14' => 'Calvados'], ['15' => 'Cantal'], + ['16' => 'Charente'], ['17' => 'Charente-Maritime'], ['18' => 'Cher'], ['19' => 'Corrèze'], ['2A' => 'Corse-du-Sud'], + ['2B' => 'Haute-Corse'], ['21' => "Côte-d'Or"], ['22' => "Côtes-d'Armor"], ['23' => 'Creuse'], ['24' => 'Dordogne'], + ['25' => 'Doubs'], ['26' => 'Drôme'], ['27' => 'Eure'], ['28' => 'Eure-et-Loir'], ['29' => 'Finistère'], ['30' => 'Gard'], + ['31' => 'Haute-Garonne'], ['32' => 'Gers'], ['33' => 'Gironde'], ['34' => 'Hérault'], ['35' => 'Ille-et-Vilaine'], + ['36' => 'Indre'], ['37' => 'Indre-et-Loire'], ['38' => 'Isère'], ['39' => 'Jura'], ['40' => 'Landes'], ['41' => 'Loir-et-Cher'], + ['42' => 'Loire'], ['43' => 'Haute-Loire'], ['44' => 'Loire-Atlantique'], ['45' => 'Loiret'], ['46' => 'Lot'], + ['47' => 'Lot-et-Garonne'], ['48' => 'Lozère'], ['49' => 'Maine-et-Loire'], ['50' => 'Manche'], ['51' => 'Marne'], + ['52' => 'Haute-Marne'], ['53' => 'Mayenne'], ['54' => 'Meurthe-et-Moselle'], ['55' => 'Meuse'], ['56' => 'Morbihan'], + ['57' => 'Moselle'], ['58' => 'Nièvre'], ['59' => 'Nord'], ['60' => 'Oise'], ['61' => 'Orne'], ['62' => 'Pas-de-Calais'], + ['63' => 'Puy-de-Dôme'], ['64' => 'Pyrénées-Atlantiques'], ['65' => 'Hautes-Pyrénées'], ['66' => 'Pyrénées-Orientales'], + ['67' => 'Bas-Rhin'], ['68' => 'Haut-Rhin'], ['69' => 'Rhône'], ['70' => 'Haute-Saône'], ['71' => 'Saône-et-Loire'], + ['72' => 'Sarthe'], ['73' => 'Savoie'], ['74' => 'Haute-Savoie'], ['75' => 'Paris'], ['76' => 'Seine-Maritime'], + ['77' => 'Seine-et-Marne'], ['78' => 'Yvelines'], ['79' => 'Deux-Sèvres'], ['80' => 'Somme'], ['81' => 'Tarn'], + ['82' => 'Tarn-et-Garonne'], ['83' => 'Var'], ['84' => 'Vaucluse'], ['85' => 'Vendée'], ['86' => 'Vienne'], + ['87' => 'Haute-Vienne'], ['88' => 'Vosges'], ['89' => 'Yonne'], ['90' => 'Territoire de Belfort'], ['91' => 'Essonne'], + ['92' => 'Hauts-de-Seine'], ['93' => 'Seine-Saint-Denis'], ['94' => 'Val-de-Marne'], ['95' => "Val-d'Oise"], + ['971' => 'Guadeloupe'], ['972' => 'Martinique'], ['973' => 'Guyane'], ['974' => 'La Réunion'], ['976' => 'Mayotte'], + ]; + + protected static $secondaryAddressFormats = ['Apt. ###', 'Suite ###', 'Étage ###', 'Bât. ###', 'Chambre ###']; + + /** + * @example 'Appt. 350' + */ + public static function secondaryAddress() + { + return static::numerify(static::randomElement(static::$secondaryAddressFormats)); + } + + /** + * @example 'rue' + */ + public static function streetPrefix() + { + return static::randomElement(static::$streetPrefix); + } + + /** + * Randomly returns a french region. + * + * @example 'Guadeloupe' + * + * @return string + */ + public static function region() + { + return static::randomElement(static::$regions); + } + + /** + * Randomly returns a french department ('departmentNumber' => 'departmentName'). + * + * @example array('2B' => 'Haute-Corse') + * + * @return array + */ + public static function department() + { + return static::randomElement(static::$departments); + } + + /** + * Randomly returns a french department name. + * + * @example 'Ardèche' + * + * @return string + */ + public static function departmentName() + { + $randomDepartmentName = array_values(static::department()); + + return $randomDepartmentName[0]; + } + + /** + * Randomly returns a french department number. + * + * @example '59' + * + * @return string + */ + public static function departmentNumber() + { + $randomDepartmentNumber = array_keys(static::department()); + + return $randomDepartmentNumber[0]; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/fr_FR/Color.php b/vendor/fakerphp/faker/src/Faker/Provider/fr_FR/Color.php new file mode 100644 index 0000000..a0048ac --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/fr_FR/Color.php @@ -0,0 +1,40 @@ +generator->parse($format)); + + if ($this->isCatchPhraseValid($catchPhrase)) { + break; + } + } while (true); + + return $catchPhrase; + } + + /** + * Generates a siret number (14 digits) that passes the Luhn check. + * + * @see http://fr.wikipedia.org/wiki/Syst%C3%A8me_d'identification_du_r%C3%A9pertoire_des_%C3%A9tablissements + * + * @return string + */ + public function siret($formatted = true) + { + $siret = self::siren(false); + $nicFormat = static::randomElement(static::$siretNicFormats); + $siret .= $this->numerify($nicFormat); + $siret .= Luhn::computeCheckDigit($siret); + + if ($formatted) { + $siret = substr($siret, 0, 3) . ' ' . substr($siret, 3, 3) . ' ' . substr($siret, 6, 3) . ' ' . substr($siret, 9, 5); + } + + return $siret; + } + + /** + * Generates a siren number (9 digits) that passes the Luhn check. + * + * @see http://fr.wikipedia.org/wiki/Syst%C3%A8me_d%27identification_du_r%C3%A9pertoire_des_entreprises + * + * @return string + */ + public static function siren($formatted = true) + { + $siren = self::numerify('%#######'); + $siren .= Luhn::computeCheckDigit($siren); + + if ($formatted) { + $siren = substr($siren, 0, 3) . ' ' . substr($siren, 3, 3) . ' ' . substr($siren, 6, 3); + } + + return $siren; + } + + /** + * @var array An array containing string which should not appear twice in a catch phrase. + */ + protected static $wordsWhichShouldNotAppearTwice = ['sécurité', 'simpl']; + + /** + * Validates a french catch phrase. + * + * @param string $catchPhrase The catch phrase to validate. + * + * @return bool (true if valid, false otherwise) + */ + protected static function isCatchPhraseValid($catchPhrase) + { + foreach (static::$wordsWhichShouldNotAppearTwice as $word) { + // Fastest way to check if a piece of word does not appear twice. + $beginPos = strpos($catchPhrase, $word); + $endPos = strrpos($catchPhrase, $word); + + if ($beginPos !== false && $beginPos != $endPos) { + return false; + } + } + + return true; + } + + /** + * @see http://www.pole-emploi.fr/candidat/le-code-rome-et-les-fiches-metiers-@/article.jspz?id=60702 + * + * @note Randomly took 300 from this list + */ + protected static $jobTitleFormat = [ + 'Agent d\'accueil', + 'Agent d\'enquêtes', + 'Agent d\'entreposage', + 'Agent de curage', + 'Agro-économiste', + 'Aide couvreur', + 'Aide à domicile', + 'Aide-déménageur', + 'Ambassadeur', + 'Analyste télématique', + 'Animateur d\'écomusée', + 'Animateur web', + 'Appareilleur-gazier', + 'Archéologue', + 'Armurier d\'art', + 'Armurier spectacle', + 'Artificier spectacle', + 'Artiste dramatique', + 'Aspigiculteur', + 'Assistant de justice', + 'Assistant des ventes', + 'Assistant logistique', + 'Assistant styliste', + 'Assurance', + 'Auteur-adaptateur', + 'Billettiste voyages', + 'Brigadier', + 'Bruiteur', + 'Bâtonnier d\'art', + 'Bûcheron', + 'Cameraman', + 'Capitaine de pêche', + 'Carrier', + 'Caviste', + 'Chansonnier', + 'Chanteur', + 'Chargé de recherche', + 'Chasseur-bagagiste', + 'Chef de fabrication', + 'Chef de scierie', + 'Chef des ventes', + 'Chef du personnel', + 'Chef géographe', + 'Chef monteur son', + 'Chef porion', + 'Chiropraticien', + 'Choréologue', + 'Chromiste', + 'Cintrier-machiniste', + 'Clerc hors rang', + 'Coach sportif', + 'Coffreur béton armé', + 'Coffreur-ferrailleur', + 'Commandant de police', + 'Commandant marine', + 'Commis de coupe', + 'Comptable unique', + 'Conception et études', + 'Conducteur de jumbo', + 'Conseiller culinaire', + 'Conseiller funéraire', + 'Conseiller relooking', + 'Consultant ergonome', + 'Contrebassiste', + 'Convoyeur garde', + 'Copiste offset', + 'Corniste', + 'Costumier-habilleur', + 'Coutelier d\'art', + 'Cueilleur de cerises', + 'Céramiste concepteur', + 'Danse', + 'Danseur', + 'Data manager', + 'Dee-jay', + 'Designer produit', + 'Diététicien conseil', + 'Diététique', + 'Doreur sur métaux', + 'Décorateur-costumier', + 'Défloqueur d\'amiante', + 'Dégustateur', + 'Délégué vétérinaire', + 'Délégué à la tutelle', + 'Désamianteur', + 'Détective', + 'Développeur web', + 'Ecotoxicologue', + 'Elagueur-botteur', + 'Elagueur-grimpeur', + 'Elastiqueur', + 'Eleveur d\'insectes', + 'Eleveur de chats', + 'Eleveur de volailles', + 'Embouteilleur', + 'Employé d\'accueil', + 'Employé d\'étage', + 'Employé de snack-bar', + 'Endivier', + 'Endocrinologue', + 'Epithésiste', + 'Essayeur-retoucheur', + 'Etainier', + 'Etancheur', + 'Etancheur-bardeur', + 'Etiqueteur', + 'Expert back-office', + 'Exploitant de tennis', + 'Extraction', + 'Facteur', + 'Facteur de clavecins', + 'Facteur de secteur', + 'Fantaisiste', + 'Façadier-bardeur', + 'Façadier-ravaleur', + 'Feutier', + 'Finance', + 'Flaconneur', + 'Foreur pétrole', + 'Formateur d\'italien', + 'Fossoyeur', + 'Fraiseur', + 'Fraiseur mouliste', + 'Frigoriste maritime', + 'Fromager', + 'Galeriste', + 'Gardien de résidence', + 'Garçon de chenil', + 'Garçon de hall', + 'Gendarme mobile', + 'Guitariste', + 'Gynécologue', + 'Géodésien', + 'Géologue prospecteur', + 'Géomètre', + 'Géomètre du cadastre', + 'Gérant d\'hôtel', + 'Gérant de tutelle', + 'Gériatre', + 'Hydrothérapie', + 'Hématologue', + 'Hôte de caisse', + 'Ingénieur bâtiment', + 'Ingénieur du son', + 'Ingénieur géologue', + 'Ingénieur géomètre', + 'Ingénieur halieute', + 'Ingénieur logistique', + 'Instituteur', + 'Jointeur de placage', + 'Juge des enfants', + 'Juriste financier', + 'Kiwiculteur', + 'Lexicographe', + 'Liftier', + 'Litigeur transport', + 'Logistique', + 'Logopède', + 'Magicien', + 'Manager d\'artiste', + 'Mannequin détail', + 'Maquilleur spectacle', + 'Marbrier-poseur', + 'Marin grande pêche', + 'Matelassier', + 'Maçon', + 'Maçon-fumiste', + 'Maçonnerie', + 'Maître de ballet', + 'Maïeuticien', + 'Menuisier', + 'Miroitier', + 'Modéliste industriel', + 'Moellonneur', + 'Moniteur de sport', + 'Monteur audiovisuel', + 'Monteur de fermettes', + 'Monteur de palettes', + 'Monteur en siège', + 'Monteur prototypiste', + 'Monteur-frigoriste', + 'Monteur-truquiste', + 'Mouleur sable', + 'Mouliste drapeur', + 'Mécanicien-armurier', + 'Médecin du sport', + 'Médecin scolaire', + 'Médiateur judiciaire', + 'Médiathécaire', + 'Net surfeur surfeuse', + 'Oenologue', + 'Opérateur de plateau', + 'Opérateur du son', + 'Opérateur géomètre', + 'Opérateur piquage', + 'Opérateur vidéo', + 'Ouvrier d\'abattoir', + 'Ouvrier serriste', + 'Ouvrier sidérurgiste', + 'Palefrenier', + 'Paléontologue', + 'Pareur en abattoir', + 'Parfumeur', + 'Parqueteur', + 'Percepteur', + 'Photographe d\'art', + 'Pilote automobile', + 'Pilote de soutireuse', + 'Pilote fluvial', + 'Piqueur en ganterie', + 'Pisteur secouriste', + 'Pizzaïolo', + 'Plaquiste enduiseur', + 'Plasticien', + 'Plisseur', + 'Poissonnier-traiteur', + 'Pontonnier', + 'Porion', + 'Porteur de hottes', + 'Porteur de journaux', + 'Portier', + 'Poseur de granit', + 'Posticheur spectacle', + 'Potier', + 'Praticien dentaire', + 'Praticiens médicaux', + 'Premier clerc', + 'Preneur de son', + 'Primeuriste', + 'Professeur d\'italien', + 'Projeteur béton armé', + 'Promotion des ventes', + 'Présentateur radio', + 'Pyrotechnicien', + 'Pédicure pour bovin', + 'Pédologue', + 'Pédopsychiatre', + 'Quincaillier', + 'Radio chargeur', + 'Ramasseur d\'asperges', + 'Ramasseur d\'endives', + 'Ravaleur-ragréeur', + 'Recherche', + 'Recuiseur', + 'Relieur-doreur', + 'Responsable de salle', + 'Responsable télécoms', + 'Revenue Manager', + 'Rippeur spectacle', + 'Rogneur', + 'Récupérateur', + 'Rédacteur des débats', + 'Régleur funéraire', + 'Régleur sur tour', + 'Sapeur-pompier', + 'Scannériste', + 'Scripte télévision', + 'Sculpteur sur verre', + 'Scénariste', + 'Second de cuisine', + 'Secrétaire juridique', + 'Semencier', + 'Sertisseur', + 'Services funéraires', + 'Solier-moquettiste', + 'Sommelier', + 'Sophrologue', + 'Staffeur', + 'Story boarder', + 'Stratifieur', + 'Stucateur', + 'Styliste graphiste', + 'Surjeteur-raseur', + 'Séismologue', + 'Technicien agricole', + 'Technicien bovin', + 'Technicien géomètre', + 'Technicien plateau', + 'Technicien énergie', + 'Terminologue', + 'Testeur informatique', + 'Toiliste', + 'Topographe', + 'Toréro', + 'Traducteur d\'édition', + 'Traffic manager', + 'Trieur de métaux', + 'Turbinier', + 'Téléconseiller', + 'Tôlier-traceur', + 'Vendeur carreau', + 'Vendeur en lingerie', + 'Vendeur en meubles', + 'Vendeur en épicerie', + 'Verrier d\'art', + 'Verrier à la calotte', + 'Verrier à la main', + 'Verrier à main levée', + 'Vidéo-jockey', + 'Vitrier', + ]; +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/fr_FR/Internet.php b/vendor/fakerphp/faker/src/Faker/Provider/fr_FR/Internet.php new file mode 100644 index 0000000..679919d --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/fr_FR/Internet.php @@ -0,0 +1,9 @@ +numberBetween(1, 2); + } + + $nir .= + // Year of birth (aa) + $this->numerify('##') . + // Mont of birth (mm) + sprintf('%02d', $this->numberBetween(1, 12)); + + // Department + $department = key(Address::department()); + $nir .= $department; + + // Town number, depends on department length + if (strlen($department) === 2) { + $nir .= $this->numerify('###'); + } elseif (strlen($department) === 3) { + $nir .= $this->numerify('##'); + } + + // Born number (depending of town and month of birth) + $nir .= $this->numerify('###'); + + /** + * The key for a given NIR is `97 - 97 % NIR` + * NIR has to be an integer, so we have to do a little replacment + * for departments 2A and 2B + */ + if ($department === '2A') { + $nirInteger = str_replace('2A', '19', $nir); + } elseif ($department === '2B') { + $nirInteger = str_replace('2B', '18', $nir); + } else { + $nirInteger = $nir; + } + $nir .= sprintf('%02d', 97 - $nirInteger % 97); + + // Format is x xx xx xx xxx xxx xx + if ($formatted) { + $nir = substr($nir, 0, 1) . ' ' . substr($nir, 1, 2) . ' ' . substr($nir, 3, 2) . ' ' . substr($nir, 5, 2) . ' ' . substr($nir, 7, 3) . ' ' . substr($nir, 10, 3) . ' ' . substr($nir, 13, 2); + } + + return $nir; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/fr_FR/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/fr_FR/PhoneNumber.php new file mode 100644 index 0000000..22f518d --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/fr_FR/PhoneNumber.php @@ -0,0 +1,168 @@ +phoneNumber06WithSeparator(); + + return str_replace(' ', '', $phoneNumber); + } + + /** + * Only 0601 to 0638, 0640 to 0689, 0695 and 0698 to 0699 are acceptable prefixes with 06 + * + * @see https://www.arcep.fr/la-regulation/grands-dossiers-thematiques-transverses/la-numerotation.html#c8961 + * @see https://www.itu.int/itu-t/nnp/#/numbering-plans?country=France%C2%A0&code=33 + */ + public function phoneNumber06WithSeparator() + { + $regex = '([0-24-8]\d|3[0-8]|9[589])( \d{2}){3}'; + + return static::regexify($regex); + } + + public function phoneNumber07() + { + $phoneNumber = $this->phoneNumber07WithSeparator(); + + return str_replace(' ', '', $phoneNumber); + } + + /** + * Only 0730 to 0789 are acceptable prefixes with 07 + * + * @see https://www.arcep.fr/la-regulation/grands-dossiers-thematiques-transverses/la-numerotation.html#c8961 + * @see https://www.itu.int/itu-t/nnp/#/numbering-plans?country=France%C2%A0&code=33 + */ + public function phoneNumber07WithSeparator() + { + $regex = '([3-8]\d)( \d{2}){3}'; + + return static::regexify($regex); + } + + public function phoneNumber08() + { + $phoneNumber = $this->phoneNumber08WithSeparator(); + + return str_replace(' ', '', $phoneNumber); + } + + /** + * Valid formats for 08: + * + * 0# ## ## ## + * 1# ## ## ## + * 2# ## ## ## + * 91 ## ## ## + * 92 ## ## ## + * 93 ## ## ## + * 97 ## ## ## + * 98 ## ## ## + * 99 ## ## ## + * + * Formats 089(4|6)## ## ## are valid, but will be + * attributed when other 089 resource ranges are exhausted. + * + * @see https://www.arcep.fr/index.php?id=8146#c9625 + * @see https://issuetracker.google.com/u/1/issues/73269839 + */ + public function phoneNumber08WithSeparator() + { + $regex = '([012]\d|(9[1-357-9])( \d{2}){3}'; + + return static::regexify($regex); + } + + /** + * @example '0601020304' + */ + public function mobileNumber() + { + $format = static::randomElement(static::$mobileFormats); + + return static::numerify($this->generator->parse($format)); + } + + /** + * @example '0891951357' + */ + public function serviceNumber() + { + $format = static::randomElement(static::$serviceFormats); + + return static::numerify($this->generator->parse($format)); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/fr_FR/Text.php b/vendor/fakerphp/faker/src/Faker/Provider/fr_FR/Text.php new file mode 100644 index 0000000..bcd3167 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/fr_FR/Text.php @@ -0,0 +1,15532 @@ + static::latitude(46.262740, 47.564721), + 'longitude' => static::longitude(17.077949, 20.604560), + ]; + } + + protected static $streetSuffix = [ + 'árok', 'átjáró', 'dűlősor', 'dűlőút', 'erdősor', 'fasor', 'forduló', 'gát', 'határsor', 'határút', 'híd', 'játszótér', 'kert', 'körönd', 'körtér', 'körút', 'köz', 'lakótelep', 'lejáró', 'lejtő', 'lépcső', 'liget', 'mélyút', 'orom', 'országút', 'ösvény', 'park', 'part', 'pincesor', 'rakpart', 'sétány', 'sétaút', 'sor', 'sugárút', 'tér', 'tere', 'turistaút', 'udvar', 'út', 'útja', 'utca', 'üdülőpart', + ]; + protected static $postcode = ['####']; + protected static $state = [ + 'Budapest', 'Bács-Kiskun', 'Baranya', 'Békés', 'Borsod-Abaúj-Zemplén', 'Csongrád', 'Fejér', 'Győr-Moson-Sopron', 'Hajdú-Bihar', 'Heves', 'Jász-Nagykun-Szolnok', 'Komárom-Esztergom', 'Nógrád', 'Pest', 'Somogy', 'Szabolcs-Szatmár-Bereg', 'Tolna', 'Vas', 'Veszprém', 'Zala', + ]; + protected static $country = [ + 'Afganisztán', 'Albánia', 'Algéria', 'Amerikai Egyesült Államok', 'Andorra', 'Angola', 'Antigua és Barbuda', 'Argentína', 'Ausztria', 'Ausztrália', 'Azerbajdzsán', + 'Bahama-szigetek', 'Bahrein', 'Banglades', 'Barbados', 'Belgium', 'Belize', 'Benin', 'Bhután', 'Bolívia', 'Bosznia-Hercegovina', 'Botswana', 'Brazília', 'Brunei', 'Bulgária', 'Burkina Faso', 'Burma', 'Burundi', + 'Chile', 'Ciprus', 'Costa Rica', 'Csehország', 'Csád', + 'Dominikai Köztársaság', 'Dominikai Közösség', 'Dzsibuti', 'Dánia', 'Dél-Afrika', 'Dél-Korea', 'Dél-Szudán', + 'Ecuador', 'Egyenlítői-Guinea', 'Egyesült Arab Emírségek', 'Egyesült Királyság', 'Egyiptom', 'Elefántcsontpart', 'Eritrea', 'Etiópia', + 'Fehéroroszország', 'Fidzsi-szigetek', 'Finnország', 'Franciaország', 'Fülöp-szigetek', + 'Gabon', 'Gambia', 'Ghána', 'Grenada', 'Grúzia', 'Guatemala', 'Guinea', 'Guyana', 'Görögország', + 'Haiti', 'Hollandia', 'Horvátország', + 'India', 'Indonézia', 'Irak', 'Irán', 'Izland', 'Izrael', + 'Japán', 'Jemen', 'Jordánia', + 'Kambodzsa', 'Kamerun', 'Kanada', 'Katar', 'Kazahsztán', 'Kelet-Timor', 'Kenya', 'Kirgizisztán', 'Kiribati', 'Kolumbia', 'Kongói Demokratikus Köztársaság', 'Kongói Köztársaság', 'Kuba', 'Kuvait', 'Kína', 'Közép-Afrika', + 'Laosz', 'Lengyelország', 'Lesotho', 'Lettország', 'Libanon', 'Libéria', 'Liechtenstein', 'Litvánia', 'Luxemburg', 'Líbia', + 'Macedónia', 'Madagaszkár', 'Magyarország', 'Malawi', 'Maldív-szigetek', 'Mali', 'Malájzia', 'Marokkó', 'Marshall-szigetek', 'Mauritánia', 'Mexikó', 'Mikronézia', 'Moldova', 'Monaco', 'Mongólia', 'Montenegró', 'Mozambik', 'Málta', + 'Namíbia', 'Nauru', 'Nepál', 'Nicaragua', 'Niger', 'Nigéria', 'Norvégia', 'Németország', + 'Olaszország', 'Omán', 'Oroszország', + 'Pakisztán', 'Palau', 'Panama', 'Paraguay', 'Peru', 'Portugália', 'Pápua Új-Guinea', + 'Románia', 'Ruanda', + 'Saint Kitts és Nevis', 'Saint Vincent', 'Salamon-szigetek', 'Salvador', 'San Marino', 'Seychelle-szigetek', 'Spanyolország', 'Srí Lanka', 'Suriname', 'Svájc', 'Svédország', 'Szamoa', 'Szaúd-Arábia', 'Szenegál', 'Szerbia', 'Szingapúr', 'Szlovákia', 'Szlovénia', 'Szomália', 'Szudán', 'Szváziföld', 'Szíria', 'São Tomé és Príncipe', + 'Tadzsikisztán', 'Tanzánia', 'Thaiföld', 'Togo', 'Tonga', 'Trinidad és Tobago', 'Tunézia', 'Tuvalu', 'Törökország', 'Türkmenisztán', + 'Uganda', 'Ukrajna', 'Uruguay', + 'Vanuatu', 'Venezuela', 'Vietnám', + 'Zambia', 'Zimbabwe', 'Zöld-foki-szigetek', + 'Észak-Korea', 'Észtország', 'Írország', 'Örményország', 'Új-Zéland', 'Üzbegisztán', + ]; + + /** + * Source: https://hu.wikipedia.org/wiki/Magyarorsz%C3%A1g_v%C3%A1rosainak_list%C3%A1ja + */ + protected static $capitals = ['Budapest']; + protected static $bigCities = [ + 'Békéscsaba', 'Debrecen', 'Dunaújváros', 'Eger', 'Érd', 'Győr', 'Hódmezővásárhely', 'Kaposvár', 'Kecskemét', 'Miskolc', 'Nagykanizsa', 'Nyíregyháza', 'Pécs', 'Salgótarján', 'Sopron', 'Szeged', 'Székesfehérvár', 'Szekszárd', 'Szolnok', 'Szombathely', 'Tatabánya', 'Veszprém', 'Zalaegerszeg', + ]; + protected static $smallerCities = [ + 'Ajka', 'Aszód', 'Bácsalmás', + 'Baja', 'Baktalórántháza', 'Balassagyarmat', 'Balatonalmádi', 'Balatonfüred', 'Balmazújváros', 'Barcs', 'Bátonyterenye', 'Békés', 'Bélapátfalva', 'Berettyóújfalu', 'Bicske', 'Bóly', 'Bonyhád', 'Budakeszi', + 'Cegléd', 'Celldömölk', 'Cigánd', 'Csenger', 'Csongrád', 'Csorna', 'Csurgó', + 'Dabas', 'Derecske', 'Devecser', 'Dombóvár', 'Dunakeszi', + 'Edelény', 'Encs', 'Enying', 'Esztergom', + 'Fehérgyarmat', 'Fonyód', 'Füzesabony', + 'Gárdony', 'Gödöllő', 'Gönc', 'Gyál', 'Gyomaendrőd', 'Gyöngyös', 'Gyula', + 'Hajdúböszörmény', 'Hajdúhadház', 'Hajdúnánás', 'Hajdúszoboszló', 'Hatvan', 'Heves', + 'Ibrány', + 'Jánoshalma', 'Jászapáti', 'Jászberény', + 'Kalocsa', 'Kapuvár', 'Karcag', 'Kazincbarcika', 'Kemecse', 'Keszthely', 'Kisbér', 'Kiskőrös', 'Kiskunfélegyháza', 'Kiskunhalas', 'Kiskunmajsa', 'Kistelek', 'Kisvárda', 'Komárom', 'Komló', 'Körmend', 'Kőszeg', 'Kunhegyes', 'Kunszentmárton', 'Kunszentmiklós', + 'Lenti', 'Letenye', + 'Makó', 'Marcali', 'Martonvásár', 'Mátészalka', 'Mezőcsát', 'Mezőkovácsháza', 'Mezőkövesd', 'Mezőtúr', 'Mohács', 'Monor', 'Mór', 'Mórahalom', 'Mosonmagyaróvár', + 'Nagyatád', 'Nagykálló', 'Nagykáta', 'Nagykőrös', 'Nyíradony', 'Nyírbátor', + 'Orosháza', 'Oroszlány', 'Ózd', + 'Paks', 'Pannonhalma', 'Pápa', 'Pásztó', 'Pécsvárad', 'Pétervására', 'Pilisvörösvár', 'Polgárdi', 'Püspökladány', 'Putnok', + 'Ráckeve', 'Rétság', + 'Sárbogárd', 'Sarkad', 'Sárospatak', 'Sárvár', 'Sásd', 'Sátoraljaújhely', 'Sellye', 'Siklós', 'Siófok', 'Sümeg', 'Szarvas', 'Szécsény', 'Szeghalom', 'Szentendre', 'Szentes', 'Szentgotthárd', 'Szentlőrinc', 'Szerencs', 'Szigetszentmiklós', 'Szigetvár', 'Szikszó', 'Szob', + 'Tab', 'Tamási', 'Tapolca', 'Tata', 'Tét', 'Tiszafüred', 'Tiszakécske', 'Tiszaújváros', 'Tiszavasvári', 'Tokaj', 'Tolna', 'Törökszentmiklós', + 'Vác', 'Várpalota', 'Vásárosnamény', 'Vasvár', 'Vecsés', + 'Záhony', 'Zalaszentgrót', 'Zirc', + ]; +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/hu_HU/Company.php b/vendor/fakerphp/faker/src/Faker/Provider/hu_HU/Company.php new file mode 100644 index 0000000..7593199 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/hu_HU/Company.php @@ -0,0 +1,13 @@ +generator->parse($format); + } + + public static function country() + { + return static::randomElement(static::$country); + } + + public static function postcode() + { + return static::toUpper(static::bothify(static::randomElement(static::$postcode))); + } + + public static function regionSuffix() + { + return static::randomElement(static::$regionSuffix); + } + + public static function region() + { + return static::randomElement(static::$region); + } + + public static function cityPrefix() + { + return static::randomElement(static::$cityPrefix); + } + + public function city() + { + return static::randomElement(static::$city); + } + + public function streetPrefix() + { + return static::randomElement(static::$streetPrefix); + } + + public static function street() + { + return static::randomElement(static::$street); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/hy_AM/Color.php b/vendor/fakerphp/faker/src/Faker/Provider/hy_AM/Color.php new file mode 100644 index 0000000..ebdda0d --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/hy_AM/Color.php @@ -0,0 +1,12 @@ +generator->parse(static::randomElement(static::$formats))); + } + + public function code() + { + return static::randomElement(static::$codes); + } + + public function numberFormat() + { + return static::randomElement(static::$numberFormats); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/id_ID/Address.php b/vendor/fakerphp/faker/src/Faker/Provider/id_ID/Address.php new file mode 100644 index 0000000..28dd845 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/id_ID/Address.php @@ -0,0 +1,319 @@ +generator->parse($format); + } + + public static function street() + { + return static::randomElement(static::$street); + } + + public static function buildingNumber() + { + return (string) self::numberBetween(1, 999); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/id_ID/Color.php b/vendor/fakerphp/faker/src/Faker/Provider/id_ID/Color.php new file mode 100644 index 0000000..14995b6 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/id_ID/Color.php @@ -0,0 +1,40 @@ +generator->parse($lastNameRandomElement); + } + + /** + * Return last name for male + * + * @return string last name + */ + public static function lastNameMale() + { + return static::randomElement(static::$lastNameMale); + } + + /** + * Return last name for female + * + * @return string last name + */ + public static function lastNameFemale() + { + return static::randomElement(static::$lastNameFemale); + } + + /** + * For academic title + * + * @return string suffix + */ + public static function suffix() + { + return static::randomElement(static::$suffix); + } + + /** + * Generates Nomor Induk Kependudukan (NIK) + * + * @see https://en.wikipedia.org/wiki/National_identification_number#Indonesia + * + * @param string|null $gender + * @param \DateTime|null $birthDate + * + * @return string + */ + public function nik($gender = null, $birthDate = null) + { + // generate first numbers (region data) + $nik = $this->birthPlaceCode(); + $nik .= $this->generator->numerify('##'); + + if (!$birthDate) { + $birthDate = $this->generator->dateTimeBetween(); + } + + if (!$gender) { + $gender = $this->generator->randomElement([self::GENDER_MALE, self::GENDER_FEMALE]); + } + + // if gender is female, add 40 to days + if ($gender == self::GENDER_FEMALE) { + $nik .= $birthDate->format('d') + 40; + } else { + $nik .= $birthDate->format('d'); + } + + $nik .= $birthDate->format('my'); + + // add last random digits + $nik .= $this->generator->numerify('####'); + + return $nik; + } + + /** + * Generates birth place code for NIK + * + * @see https://id.wikipedia.org/wiki/Nomor_Induk_Kependudukan + * @see http://informasipedia.com/wilayah-indonesia/daftar-kabupaten-kota-di-indonesia/ + */ + protected function birthPlaceCode() + { + return static::randomElement(static::$birthPlaceCode); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/id_ID/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/id_ID/PhoneNumber.php new file mode 100644 index 0000000..c0bfaf5 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/id_ID/PhoneNumber.php @@ -0,0 +1,55 @@ + Icelandic names for women. + */ + protected static $firstNameFemale = ['Aagot', 'Abela', 'Abigael', 'Ada', 'Adda', 'Addý', 'Adela', 'Adelía', 'Adríana', 'Aðalbjörg', 'Aðalbjört', 'Aðalborg', 'Aðaldís', 'Aðalfríður', 'Aðalheiður', 'Aðalrós', 'Aðalsteina', 'Aðalsteinunn', 'Aðalveig', 'Agata', 'Agatha', 'Agða', 'Agla', 'Agnea', 'Agnes', 'Agneta', 'Alanta', 'Alba', 'Alberta', 'Albína', 'Alda', 'Aldís', 'Aldný', 'Aleta', 'Aletta', 'Alexa', 'Alexandra', 'Alexandría', 'Alexis', 'Alexía', 'Alfa', 'Alfífa', 'Alice', 'Alida', 'Alída', 'Alína', 'Alís', 'Alísa', 'Alla', 'Allý', 'Alma', 'Alrún', 'Alva', 'Alvilda', 'Amadea', 'Amal', 'Amalía', 'Amanda', 'Amelía', 'Amilía', 'Amíra', 'Amy', 'Amý', 'Analía', 'Anastasía', 'Andra', 'Andrá', 'Andrea', 'Anetta', 'Angela', 'Angelíka', 'Anika', 'Anita', 'Aníka', 'Anína', 'Aníta', 'Anja', 'Ann', 'Anna', 'Annabella', 'Annalísa', 'Anne', 'Annelí', 'Annetta', 'Anney', 'Annika', 'Annía', 'Anný', 'Antonía', 'Apríl', 'Ardís', 'Arey', 'Arinbjörg', 'Aris', 'Arisa', 'Aría', 'Aríanna', 'Aríella', 'Arín', 'Arína', 'Arís', 'Armenía', 'Arna', 'Arnbjörg', 'Arnborg', 'Arndís', 'Arney', 'Arnfinna', 'Arnfríður', 'Arngerður', 'Arngunnur', 'Arnheiður', 'Arnhildur', 'Arnika', 'Arnkatla', 'Arnlaug', 'Arnleif', 'Arnlín', 'Arnljót', 'Arnóra', 'Arnrós', 'Arnrún', 'Arnþóra', 'Arnþrúður', 'Asírí', 'Askja', 'Assa', 'Astrid', 'Atalía', 'Atena', 'Athena', 'Atla', 'Atlanta', 'Auðbjörg', 'Auðbjört', 'Auðdís', 'Auðlín', 'Auðna', 'Auðný', 'Auðrún', 'Auður', 'Aurora', 'Axelía', 'Axelma', 'Aþena', 'Ágústa', 'Ágústína', 'Álfdís', 'Álfey', 'Álfgerður', 'Álfheiður', 'Álfhildur', 'Álfrós', 'Álfrún', 'Álfsól', 'Árbjörg', 'Árbjört', 'Árdís', 'Árelía', 'Árlaug', 'Ármey', 'Árna', 'Árndís', 'Árney', 'Árnheiður', 'Árnína', 'Árný', 'Áróra', 'Ársól', 'Ársæl', 'Árún', 'Árveig', 'Árvök', 'Árþóra', 'Ása', 'Ásbjörg', 'Ásborg', 'Ásdís', 'Ásfríður', 'Ásgerður', 'Áshildur', 'Áskatla', 'Ásla', 'Áslaug', 'Ásleif', 'Ásný', 'Ásrós', 'Ásrún', 'Ást', 'Ásta', 'Ástbjörg', 'Ástbjört', 'Ástdís', 'Ástfríður', 'Ástgerður', 'Ástheiður', 'Ásthildur', 'Ástríður', 'Ástrós', 'Ástrún', 'Ástveig', 'Ástþóra', 'Ástþrúður', 'Ásvör', 'Baldey', 'Baldrún', 'Baldvina', 'Barbara', 'Barbára', 'Bassí', 'Bára', 'Bebba', 'Begga', 'Belinda', 'Bella', 'Benedikta', 'Bengta', 'Benidikta', 'Benía', 'Beníta', 'Benna', 'Benney', 'Benný', 'Benta', 'Bentey', 'Bentína', 'Bera', 'Bergdís', 'Bergey', 'Bergfríður', 'Bergheiður', 'Berghildur', 'Berglaug', 'Berglind', 'Berglín', 'Bergljót', 'Bergmannía', 'Bergný', 'Bergrán', 'Bergrín', 'Bergrós', 'Bergrún', 'Bergþóra', 'Berit', 'Bernódía', 'Berta', 'Bertha', 'Bessí', 'Bestla', 'Beta', 'Betanía', 'Betsý', 'Bettý', 'Bil', 'Birgit', 'Birgitta', 'Birna', 'Birta', 'Birtna', 'Bíbí', 'Bína', 'Bjargdís', 'Bjargey', 'Bjargheiður', 'Bjarghildur', 'Bjarglind', 'Bjarkey', 'Bjarklind', 'Bjarma', 'Bjarndís', 'Bjarney', 'Bjarnfríður', 'Bjarngerður', 'Bjarnheiður', 'Bjarnhildur', 'Bjarnlaug', 'Bjarnrún', 'Bjarnveig', 'Bjarný', 'Bjarnþóra', 'Bjarnþrúður', 'Bjartey', 'Bjartmey', 'Björg', 'Björgey', 'Björgheiður', 'Björghildur', 'Björk', 'Björney', 'Björnfríður', 'Björt', 'Bláey', 'Blíða', 'Blín', 'Blómey', 'Blædís', 'Blær', 'Bobba', 'Boga', 'Bogdís', 'Bogey', 'Bogga', 'Boghildur', 'Borg', 'Borgdís', 'Borghildur', 'Borgný', 'Borgrún', 'Borgþóra', 'Botnía', 'Bóel', 'Bót', 'Bóthildur', 'Braga', 'Braghildur', 'Branddís', 'Brá', 'Brák', 'Brigitta', 'Brimdís', 'Brimhildur', 'Brimrún', 'Brit', 'Britt', 'Britta', 'Bríana', 'Bríanna', 'Bríet', 'Bryndís', 'Brynfríður', 'Bryngerður', 'Brynheiður', 'Brynhildur', 'Brynja', 'Brynný', 'Burkney', 'Bylgja', 'Camilla', 'Carla', 'Carmen', 'Cecilia', 'Cecilía', 'Charlotta', 'Charlotte', 'Christina', 'Christine', 'Clara', 'Daðey', 'Daðína', 'Dagbjörg', 'Dagbjört', 'Dagfríður', 'Daggrós', 'Dagheiður', 'Dagmar', 'Dagmey', 'Dagný', 'Dagrún', 'Daldís', 'Daley', 'Dalía', 'Dalla', 'Dallilja', 'Dalrós', 'Dana', 'Daney', 'Danfríður', 'Danheiður', 'Danhildur', 'Danía', 'Daníela', 'Daníella', 'Dara', 'Debora', 'Debóra', 'Dendý', 'Didda', 'Dilja', 'Diljá', 'Dimmblá', 'Dimmey', 'Día', 'Díana', 'Díanna', 'Díma', 'Dís', 'Dísa', 'Dísella', 'Donna', 'Doris', 'Dorothea', 'Dóa', 'Dómhildur', 'Dóra', 'Dórey', 'Dóris', 'Dórothea', 'Dórótea', 'Dóróthea', 'Drauma', 'Draumey', 'Drífa', 'Droplaug', 'Drótt', 'Dröfn', 'Dúa', 'Dúfa', 'Dúna', 'Dýrborg', 'Dýrfinna', 'Dýrleif', 'Dýrley', 'Dýrunn', 'Dæja', 'Dögg', 'Dögun', 'Ebba', 'Ebonney', 'Edda', 'Edel', 'Edil', 'Edit', 'Edith', 'Eðna', 'Efemía', 'Egedía', 'Eggrún', 'Egla', 'Eiðný', 'Eiðunn', 'Eik', 'Einbjörg', 'Eindís', 'Einey', 'Einfríður', 'Einhildur', 'Einína', 'Einrún', 'Eir', 'Eirdís', 'Eirfinna', 'Eiríka', 'Eirný', 'Eirún', 'Elba', 'Eldbjörg', 'Eldey', 'Eldlilja', 'Eldrún', 'Eleina', 'Elektra', 'Elena', 'Elenborg', 'Elfa', 'Elfur', 'Elina', 'Elinborg', 'Elisabeth', 'Elía', 'Elíana', 'Elín', 'Elína', 'Elíná', 'Elínbet', 'Elínbjörg', 'Elínbjört', 'Elínborg', 'Elíndís', 'Elíngunnur', 'Elínheiður', 'Elínrós', 'Elírós', 'Elísa', 'Elísabet', 'Elísabeth', 'Elka', 'Ella', 'Ellen', 'Elley', 'Ellisif', 'Ellín', 'Elly', 'Ellý', 'Elma', 'Elna', 'Elsa', 'Elsabet', 'Elsie', 'Elsí', 'Elsý', 'Elva', 'Elvi', 'Elvíra', 'Elvý', 'Embla', 'Emelía', 'Emelíana', 'Emelína', 'Emeralda', 'Emilía', 'Emilíana', 'Emilíanna', 'Emilý', 'Emma', 'Emmý', 'Emý', 'Enea', 'Eneka', 'Engilbjört', 'Engilráð', 'Engilrós', 'Engla', 'Enika', 'Enja', 'Enóla', 'Eres', 'Erika', 'Erin', 'Erla', 'Erlen', 'Erlín', 'Erna', 'Esja', 'Esmeralda', 'Ester', 'Esther', 'Estiva', 'Ethel', 'Etna', 'Eufemía', 'Eva', 'Evelyn', 'Evey', 'Evfemía', 'Evgenía', 'Evíta', 'Evlalía', 'Ey', 'Eybjörg', 'Eybjört', 'Eydís', 'Eyfríður', 'Eygerður', 'Eygló', 'Eyhildur', 'Eyja', 'Eyjalín', 'Eyleif', 'Eylín', 'Eyrós', 'Eyrún', 'Eyveig', 'Eyvör', 'Eyþóra', 'Eyþrúður', 'Fanndís', 'Fanney', 'Fannlaug', 'Fanny', 'Fanný', 'Febrún', 'Fema', 'Filipía', 'Filippa', 'Filippía', 'Finna', 'Finnbjörg', 'Finnbjörk', 'Finnboga', 'Finnborg', 'Finndís', 'Finney', 'Finnfríður', 'Finnlaug', 'Finnrós', 'Fía', 'Fídes', 'Fífa', 'Fjalldís', 'Fjóla', 'Flóra', 'Folda', 'Fransiska', 'Franziska', 'Frán', 'Fregn', 'Freydís', 'Freygerður', 'Freyja', 'Freylaug', 'Freyleif', 'Friðbjörg', 'Friðbjört', 'Friðborg', 'Friðdís', 'Friðdóra', 'Friðey', 'Friðfinna', 'Friðgerður', 'Friðjóna', 'Friðlaug', 'Friðleif', 'Friðlín', 'Friðmey', 'Friðný', 'Friðrika', 'Friðrikka', 'Friðrós', 'Friðrún', 'Friðsemd', 'Friðveig', 'Friðþóra', 'Frigg', 'Fríða', 'Fríður', 'Frostrós', 'Fróðný', 'Fura', 'Fönn', 'Gabríela', 'Gabríella', 'Gauja', 'Gauthildur', 'Gefjun', 'Gefn', 'Geira', 'Geirbjörg', 'Geirdís', 'Geirfinna', 'Geirfríður', 'Geirhildur', 'Geirlaug', 'Geirlöð', 'Geirný', 'Geirríður', 'Geirrún', 'Geirþrúður', 'Georgía', 'Gerða', 'Gerður', 'Gestheiður', 'Gestný', 'Gestrún', 'Gillý', 'Gilslaug', 'Gissunn', 'Gía', 'Gígja', 'Gísela', 'Gísla', 'Gísley', 'Gíslína', 'Gíslný', 'Gíslrún', 'Gíslunn', 'Gíta', 'Gjaflaug', 'Gloría', 'Gló', 'Glóa', 'Glóbjört', 'Glódís', 'Glóð', 'Glóey', 'Gná', 'Góa', 'Gógó', 'Grein', 'Gret', 'Greta', 'Grélöð', 'Grét', 'Gréta', 'Gríma', 'Grímey', 'Grímheiður', 'Grímhildur', 'Gróa', 'Guðbjörg', 'Guðbjört', 'Guðborg', 'Guðdís', 'Guðfinna', 'Guðfríður', 'Guðjóna', 'Guðlaug', 'Guðleif', 'Guðlín', 'Guðmey', 'Guðmunda', 'Guðmundína', 'Guðný', 'Guðríður', 'Guðrún', 'Guðsteina', 'Guðveig', 'Gullbrá', 'Gullveig', 'Gullý', 'Gumma', 'Gunnbjörg', 'Gunnbjört', 'Gunnborg', 'Gunndís', 'Gunndóra', 'Gunnella', 'Gunnfinna', 'Gunnfríður', 'Gunnharða', 'Gunnheiður', 'Gunnhildur', 'Gunnjóna', 'Gunnlaug', 'Gunnleif', 'Gunnlöð', 'Gunnrún', 'Gunnur', 'Gunnveig', 'Gunnvör', 'Gunný', 'Gunnþóra', 'Gunnþórunn', 'Gurrý', 'Gúa', 'Gyða', 'Gyðja', 'Gyðríður', 'Gytta', 'Gæfa', 'Gæflaug', 'Hadda', 'Haddý', 'Hafbjörg', 'Hafborg', 'Hafdís', 'Hafey', 'Hafliða', 'Haflína', 'Hafný', 'Hafrós', 'Hafrún', 'Hafsteina', 'Hafþóra', 'Halla', 'Hallbera', 'Hallbjörg', 'Hallborg', 'Halldís', 'Halldóra', 'Halley', 'Hallfríður', 'Hallgerður', 'Hallgunnur', 'Hallkatla', 'Hallný', 'Hallrún', 'Hallveig', 'Hallvör', 'Hanna', 'Hanney', 'Hansa', 'Hansína', 'Harpa', 'Hauður', 'Hákonía', 'Heba', 'Hedda', 'Hedí', 'Heiða', 'Heiðbjörg', 'Heiðbjörk', 'Heiðbjört', 'Heiðbrá', 'Heiðdís', 'Heiðlaug', 'Heiðlóa', 'Heiðný', 'Heiðrós', 'Heiðrún', 'Heiður', 'Heiðveig', 'Hekla', 'Helen', 'Helena', 'Helga', 'Hella', 'Helma', 'Hendrikka', 'Henný', 'Henrietta', 'Henrika', 'Henríetta', 'Hera', 'Herbjörg', 'Herbjört', 'Herborg', 'Herdís', 'Herfríður', 'Hergerður', 'Herlaug', 'Hermína', 'Hersilía', 'Herta', 'Hertha', 'Hervör', 'Herþrúður', 'Hilda', 'Hildegard', 'Hildibjörg', 'Hildigerður', 'Hildigunnur', 'Hildiríður', 'Hildisif', 'Hildur', 'Hilma', 'Himinbjörg', 'Hind', 'Hinrika', 'Hinrikka', 'Hjalta', 'Hjaltey', 'Hjálmdís', 'Hjálmey', 'Hjálmfríður', 'Hjálmgerður', 'Hjálmrós', 'Hjálmrún', 'Hjálmveig', 'Hjördís', 'Hjörfríður', 'Hjörleif', 'Hjörný', 'Hjörtfríður', 'Hlaðgerður', 'Hlédís', 'Hlíf', 'Hlín', 'Hlökk', 'Hólmbjörg', 'Hólmdís', 'Hólmfríður', 'Hrafna', 'Hrafnborg', 'Hrafndís', 'Hrafney', 'Hrafngerður', 'Hrafnheiður', 'Hrafnhildur', 'Hrafnkatla', 'Hrafnlaug', 'Hrafntinna', 'Hraundís', 'Hrefna', 'Hreindís', 'Hróðný', 'Hrólfdís', 'Hrund', 'Hrönn', 'Hugbjörg', 'Hugbjört', 'Hugborg', 'Hugdís', 'Hugljúf', 'Hugrún', 'Huld', 'Hulda', 'Huldís', 'Huldrún', 'Húnbjörg', 'Húndís', 'Húngerður', 'Hvönn', 'Hödd', 'Högna', 'Hörn', 'Ida', 'Idda', 'Iða', 'Iðunn', 'Ilmur', 'Immý', 'Ina', 'Inda', 'India', 'Indiana', 'Indía', 'Indíana', 'Indíra', 'Indra', 'Inga', 'Ingdís', 'Ingeborg', 'Inger', 'Ingey', 'Ingheiður', 'Inghildur', 'Ingibjörg', 'Ingibjört', 'Ingiborg', 'Ingifinna', 'Ingifríður', 'Ingigerður', 'Ingilaug', 'Ingileif', 'Ingilín', 'Ingimaría', 'Ingimunda', 'Ingiríður', 'Ingirós', 'Ingisól', 'Ingiveig', 'Ingrid', 'Ingrún', 'Ingunn', 'Ingveldur', 'Inna', 'Irena', 'Irene', 'Irja', 'Irma', 'Irmý', 'Irpa', 'Isabel', 'Isabella', 'Ída', 'Íma', 'Ína', 'Ír', 'Íren', 'Írena', 'Íris', 'Írunn', 'Ísabel', 'Ísabella', 'Ísadóra', 'Ísafold', 'Ísalind', 'Ísbjörg', 'Ísdís', 'Ísey', 'Ísfold', 'Ísgerður', 'Íshildur', 'Ísis', 'Íslaug', 'Ísleif', 'Ísmey', 'Ísold', 'Ísól', 'Ísrún', 'Íssól', 'Ísveig', 'Íunn', 'Íva', 'Jakobína', 'Jana', 'Jane', 'Janetta', 'Jannika', 'Jara', 'Jarún', 'Jarþrúður', 'Jasmín', 'Járnbrá', 'Járngerður', 'Jenetta', 'Jenna', 'Jenný', 'Jensína', 'Jessý', 'Jovina', 'Jóa', 'Jóanna', 'Jódís', 'Jófríður', 'Jóhanna', 'Jólín', 'Jóna', 'Jónanna', 'Jónasína', 'Jónbjörg', 'Jónbjört', 'Jóndís', 'Jóndóra', 'Jóney', 'Jónfríður', 'Jóngerð', 'Jónheiður', 'Jónhildur', 'Jóninna', 'Jónída', 'Jónína', 'Jónný', 'Jóný', 'Jóra', 'Jóríður', 'Jórlaug', 'Jórunn', 'Jósebína', 'Jósefín', 'Jósefína', 'Judith', 'Júdea', 'Júdit', 'Júlía', 'Júlíana', 'Júlíanna', 'Júlíetta', 'Júlírós', 'Júnía', 'Júníana', 'Jökla', 'Jökulrós', 'Jörgína', 'Kaðlín', 'Kaja', 'Kalla', 'Kamilla', 'Kamí', 'Kamma', 'Kapitola', 'Kapítóla', 'Kara', 'Karen', 'Karin', 'Karitas', 'Karí', 'Karín', 'Karína', 'Karítas', 'Karla', 'Karlinna', 'Karlína', 'Karlotta', 'Karolína', 'Karó', 'Karólín', 'Karólína', 'Kassandra', 'Kata', 'Katarína', 'Katerína', 'Katharina', 'Kathinka', 'Katinka', 'Katla', 'Katrín', 'Katrína', 'Katý', 'Kára', 'Kellý', 'Kendra', 'Ketilbjörg', 'Ketilfríður', 'Ketilríður', 'Kiddý', 'Kira', 'Kirsten', 'Kirstín', 'Kittý', 'Kjalvör', 'Klara', 'Kládía', 'Klementína', 'Kleópatra', 'Kolbjörg', 'Kolbrá', 'Kolbrún', 'Koldís', 'Kolfinna', 'Kolfreyja', 'Kolgríma', 'Kolka', 'Konkordía', 'Konný', 'Korka', 'Kormlöð', 'Kornelía', 'Kókó', 'Krista', 'Kristbjörg', 'Kristborg', 'Kristel', 'Kristensa', 'Kristey', 'Kristfríður', 'Kristgerður', 'Kristin', 'Kristine', 'Kristíana', 'Kristíanna', 'Kristín', 'Kristína', 'Kristjana', 'Kristjóna', 'Kristlaug', 'Kristlind', 'Kristlín', 'Kristný', 'Kristólína', 'Kristrós', 'Kristrún', 'Kristveig', 'Kristvina', 'Kristþóra', 'Kría', 'Kæja', 'Laila', 'Laíla', 'Lana', 'Lara', 'Laufey', 'Laufheiður', 'Laufhildur', 'Lauga', 'Laugey', 'Laugheiður', 'Lára', 'Lárensína', 'Láretta', 'Lárey', 'Lea', 'Leikný', 'Leila', 'Lena', 'Leonóra', 'Leóna', 'Leónóra', 'Lilja', 'Liljá', 'Liljurós', 'Lill', 'Lilla', 'Lillian', 'Lillý', 'Lily', 'Lilý', 'Lind', 'Linda', 'Linddís', 'Lingný', 'Lisbeth', 'Listalín', 'Liv', 'Líba', 'Líf', 'Lífdís', 'Lín', 'Lína', 'Línbjörg', 'Líndís', 'Líneik', 'Líney', 'Línhildur', 'Lísa', 'Lísabet', 'Lísandra', 'Lísbet', 'Lísebet', 'Lív', 'Ljósbjörg', 'Ljósbrá', 'Ljótunn', 'Lofn', 'Loftveig', 'Logey', 'Lokbrá', 'Lotta', 'Louisa', 'Lousie', 'Lovísa', 'Lóa', 'Lóreley', 'Lukka', 'Lúcía', 'Lúðvíka', 'Lúísa', 'Lúna', 'Lúsinda', 'Lúsía', 'Lúvísa', 'Lydia', 'Lydía', 'Lyngheiður', 'Lýdía', 'Læla', 'Maddý', 'Magda', 'Magdalena', 'Magðalena', 'Magga', 'Maggey', 'Maggý', 'Magna', 'Magndís', 'Magnea', 'Magnes', 'Magney', 'Magnfríður', 'Magnheiður', 'Magnhildur', 'Magnúsína', 'Magný', 'Magnþóra', 'Maía', 'Maídís', 'Maísól', 'Maj', 'Maja', 'Malen', 'Malena', 'Malía', 'Malín', 'Malla', 'Manda', 'Manúela', 'Mara', 'Mardís', 'Marela', 'Marella', 'Maren', 'Marey', 'Marfríður', 'Margit', 'Margot', 'Margret', 'Margrét', 'Margrjet', 'Margunnur', 'Marheiður', 'Maria', 'Marie', 'Marikó', 'Marinella', 'Marit', 'Marí', 'María', 'Maríam', 'Marían', 'Maríana', 'Maríanna', 'Marín', 'Marína', 'Marínella', 'Maríon', 'Marísa', 'Marísól', 'Marít', 'Maríuerla', 'Marja', 'Markrún', 'Marlaug', 'Marlena', 'Marlín', 'Marlís', 'Marólína', 'Marsa', 'Marselía', 'Marselína', 'Marsibil', 'Marsilía', 'Marsý', 'Marta', 'Martha', 'Martína', 'Mary', 'Marý', 'Matta', 'Mattea', 'Matthea', 'Matthilda', 'Matthildur', 'Matthía', 'Mattíana', 'Mattína', 'Mattý', 'Maxima', 'Mábil', 'Málfríður', 'Málhildur', 'Málmfríður', 'Mánadís', 'Máney', 'Mára', 'Meda', 'Mekkin', 'Mekkín', 'Melinda', 'Melissa', 'Melkorka', 'Melrós', 'Messíana', 'Metta', 'Mey', 'Mikaela', 'Mikaelína', 'Mikkalína', 'Milda', 'Mildríður', 'Milla', 'Millý', 'Minerva', 'Minna', 'Minney', 'Minný', 'Miriam', 'Mirja', 'Mirjam', 'Mirra', 'Mist', 'Mía', 'Mínerva', 'Míra', 'Míranda', 'Mítra', 'Mjaðveig', 'Mjalldís', 'Mjallhvít', 'Mjöll', 'Mona', 'Monika', 'Módís', 'Móeiður', 'Móey', 'Móheiður', 'Móna', 'Mónika', 'Móníka', 'Munda', 'Mundheiður', 'Mundhildur', 'Mundína', 'Myrra', 'Mýr', 'Mýra', 'Mýrún', 'Mörk', 'Nadia', 'Nadía', 'Nadja', 'Nana', 'Nanna', 'Nanný', 'Nansý', 'Naomí', 'Naómí', 'Natalie', 'Natalía', 'Náttsól', 'Nella', 'Nellý', 'Nenna', 'Nicole', 'Niðbjörg', 'Nikíta', 'Nikoletta', 'Nikólína', 'Ninja', 'Ninna', 'Nína', 'Níní', 'Njála', 'Njóla', 'Norma', 'Nóa', 'Nóra', 'Nótt', 'Nýbjörg', 'Odda', 'Oddbjörg', 'Oddfreyja', 'Oddfríður', 'Oddgerður', 'Oddhildur', 'Oddlaug', 'Oddleif', 'Oddný', 'Oddrún', 'Oddveig', 'Oddvör', 'Oktavía', 'Októvía', 'Olga', 'Ollý', 'Ora', 'Orka', 'Ormheiður', 'Ormhildur', 'Otkatla', 'Otta', 'Óda', 'Ófelía', 'Óla', 'Ólafía', 'Ólafína', 'Ólavía', 'Ólivía', 'Ólína', 'Ólöf', 'Ósa', 'Ósk', 'Ótta', 'Pamela', 'París', 'Patricia', 'Patrisía', 'Pála', 'Páldís', 'Páley', 'Pálfríður', 'Pálhanna', 'Pálheiður', 'Pálhildur', 'Pálín', 'Pálína', 'Pálmey', 'Pálmfríður', 'Pálrún', 'Perla', 'Peta', 'Petra', 'Petrea', 'Petrína', 'Petronella', 'Petrónella', 'Petrós', 'Petrún', 'Petrúnella', 'Pétrína', 'Pétrún', 'Pía', 'Polly', 'Pollý', 'Pría', 'Rafney', 'Rafnhildur', 'Ragna', 'Ragnbjörg', 'Ragney', 'Ragnfríður', 'Ragnheiður', 'Ragnhildur', 'Rakel', 'Ramóna', 'Randalín', 'Randíður', 'Randý', 'Ranka', 'Rannva', 'Rannveig', 'Ráðhildur', 'Rán', 'Rebekka', 'Reginbjörg', 'Regína', 'Rein', 'Renata', 'Reyn', 'Reyndís', 'Reynheiður', 'Reynhildur', 'Rikka', 'Ripley', 'Rita', 'Ríkey', 'Rín', 'Ríta', 'Ronja', 'Rorí', 'Roxanna', 'Róberta', 'Róbjörg', 'Rós', 'Rósa', 'Rósalind', 'Rósanna', 'Rósbjörg', 'Rósborg', 'Róselía', 'Rósey', 'Rósfríður', 'Róshildur', 'Rósinkara', 'Rósinkransa', 'Róska', 'Róslaug', 'Róslind', 'Róslinda', 'Róslín', 'Rósmary', 'Rósmarý', 'Rósmunda', 'Rósný', 'Runný', 'Rut', 'Ruth', 'Rúbý', 'Rún', 'Rúna', 'Rúndís', 'Rúnhildur', 'Rúrí', 'Röfn', 'Rögn', 'Röskva', 'Sabína', 'Sabrína', 'Saga', 'Salbjörg', 'Saldís', 'Salgerður', 'Salín', 'Salína', 'Salka', 'Salma', 'Salný', 'Salome', 'Salóme', 'Salvör', 'Sandra', 'Sanna', 'Santía', 'Sara', 'Sarína', 'Sefanía', 'Selja', 'Selka', 'Selma', 'Senía', 'Septíma', 'Sera', 'Serena', 'Seselía', 'Sesilía', 'Sesselía', 'Sesselja', 'Sessilía', 'Sif', 'Sigdís', 'Sigdóra', 'Sigfríð', 'Sigfríður', 'Sigga', 'Siggerður', 'Sigmunda', 'Signa', 'Signhildur', 'Signý', 'Sigríður', 'Sigrún', 'Sigurást', 'Sigurásta', 'Sigurbára', 'Sigurbirna', 'Sigurbjörg', 'Sigurbjört', 'Sigurborg', 'Sigurdís', 'Sigurdóra', 'Sigurdríf', 'Sigurdrífa', 'Sigurða', 'Sigurey', 'Sigurfinna', 'Sigurfljóð', 'Sigurgeira', 'Sigurhanna', 'Sigurhelga', 'Sigurhildur', 'Sigurjóna', 'Sigurlaug', 'Sigurleif', 'Sigurlilja', 'Sigurlinn', 'Sigurlín', 'Sigurlína', 'Sigurmunda', 'Sigurnanna', 'Sigurósk', 'Sigurrós', 'Sigursteina', 'Sigurunn', 'Sigurveig', 'Sigurvina', 'Sigurþóra', 'Sigyn', 'Sigþóra', 'Sigþrúður', 'Silfa', 'Silfá', 'Silfrún', 'Silja', 'Silka', 'Silla', 'Silva', 'Silvana', 'Silvía', 'Sirra', 'Sirrý', 'Siv', 'Sía', 'Símonía', 'Sísí', 'Síta', 'Sjöfn', 'Skarpheiður', 'Skugga', 'Skuld', 'Skúla', 'Skúlína', 'Snjáfríður', 'Snjáka', 'Snjófríður', 'Snjólaug', 'Snorra', 'Snót', 'Snæbjörg', 'Snæbjört', 'Snæborg', 'Snæbrá', 'Snædís', 'Snæfríður', 'Snælaug', 'Snærós', 'Snærún', 'Soffía', 'Sofie', 'Sofía', 'Solveig', 'Sonja', 'Sonný', 'Sophia', 'Sophie', 'Sól', 'Sóla', 'Sólbjörg', 'Sólbjört', 'Sólborg', 'Sólbrá', 'Sólbrún', 'Sóldís', 'Sóldögg', 'Sóley', 'Sólfríður', 'Sólgerður', 'Sólhildur', 'Sólín', 'Sólkatla', 'Sóllilja', 'Sólný', 'Sólrós', 'Sólrún', 'Sólveig', 'Sólvör', 'Sónata', 'Stefana', 'Stefanía', 'Stefánný', 'Steina', 'Steinbjörg', 'Steinborg', 'Steindís', 'Steindóra', 'Steiney', 'Steinfríður', 'Steingerður', 'Steinhildur', 'Steinlaug', 'Steinrós', 'Steinrún', 'Steinunn', 'Steinvör', 'Steinþóra', 'Stella', 'Stígheiður', 'Stígrún', 'Stína', 'Stjarna', 'Styrgerður', 'Sumarlína', 'Sumarrós', 'Sunna', 'Sunnefa', 'Sunneva', 'Sunniva', 'Sunníva', 'Susan', 'Súla', 'Súsan', 'Súsanna', 'Svafa', 'Svala', 'Svalrún', 'Svana', 'Svanbjörg', 'Svanbjört', 'Svanborg', 'Svandís', 'Svaney', 'Svanfríður', 'Svanheiður', 'Svanhildur', 'Svanhvít', 'Svanlaug', 'Svanrós', 'Svanþrúður', 'Svava', 'Svea', 'Sveina', 'Sveinbjörg', 'Sveinborg', 'Sveindís', 'Sveiney', 'Sveinfríður', 'Sveingerður', 'Sveinhildur', 'Sveinlaug', 'Sveinrós', 'Sveinrún', 'Sveinsína', 'Sveinveig', 'Sylgja', 'Sylva', 'Sylvía', 'Sæbjörg', 'Sæbjört', 'Sæborg', 'Sædís', 'Sæfinna', 'Sæfríður', 'Sæhildur', 'Sælaug', 'Sæmunda', 'Sæný', 'Særós', 'Særún', 'Sæsól', 'Sæunn', 'Sævör', 'Sölva', 'Sölvey', 'Sölvína', 'Tala', 'Talía', 'Tamar', 'Tamara', 'Tanía', 'Tanja', 'Tanya', 'Tanya', 'Tara', 'Tea', 'Teitný', 'Tekla', 'Telma', 'Tera', 'Teresa', 'Teresía', 'Thea', 'Thelma', 'Theodóra', 'Theódóra', 'Theresa', 'Tindra', 'Tinna', 'Tirsa', 'Tía', 'Tíbrá', 'Tína', 'Todda', 'Torbjörg', 'Torfey', 'Torfheiður', 'Torfhildur', 'Tóbý', 'Tóka', 'Tóta', 'Tristana', 'Trú', 'Tryggva', 'Tryggvína', 'Týra', 'Ugla', 'Una', 'Undína', 'Unna', 'Unnbjörg', 'Unndís', 'Unnur', 'Urður', 'Úa', 'Úlfa', 'Úlfdís', 'Úlfey', 'Úlfheiður', 'Úlfhildur', 'Úlfrún', 'Úlla', 'Úna', 'Úndína', 'Úranía', 'Úrsúla', 'Vagna', 'Vagnbjörg', 'Vagnfríður', 'Vaka', 'Vala', 'Valbjörg', 'Valbjörk', 'Valbjört', 'Valborg', 'Valdheiður', 'Valdís', 'Valentína', 'Valería', 'Valey', 'Valfríður', 'Valgerða', 'Valgerður', 'Valhildur', 'Valka', 'Vallý', 'Valný', 'Valrós', 'Valrún', 'Valva', 'Valý', 'Valþrúður', 'Vanda', 'Vár', 'Veig', 'Veiga', 'Venus', 'Vera', 'Veronika', 'Verónika', 'Veróníka', 'Vetrarrós', 'Vébjörg', 'Védís', 'Végerður', 'Vélaug', 'Véný', 'Vibeka', 'Victoría', 'Viðja', 'Vigdís', 'Vigný', 'Viktoria', 'Viktoría', 'Vilborg', 'Vildís', 'Vilfríður', 'Vilgerður', 'Vilhelmína', 'Villa', 'Villimey', 'Vilma', 'Vilný', 'Vinbjörg', 'Vinný', 'Vinsý', 'Virginía', 'Víbekka', 'Víf', 'Vígdögg', 'Víggunnur', 'Víóla', 'Víóletta', 'Vísa', 'Von', 'Von', 'Voney', 'Vordís', 'Ylfa', 'Ylfur', 'Ylja', 'Ylva', 'Ynja', 'Yrja', 'Yrsa', 'Ýja', 'Ýma', 'Ýr', 'Ýrr', 'Þalía', 'Þeba', 'Þeódís', 'Þeódóra', 'Þjóðbjörg', 'Þjóðhildur', 'Þoka', 'Þorbjörg', 'Þorfinna', 'Þorgerður', 'Þorgríma', 'Þorkatla', 'Þorlaug', 'Þorleif', 'Þorsteina', 'Þorstína', 'Þóra', 'Þóranna', 'Þórarna', 'Þórbjörg', 'Þórdís', 'Þórða', 'Þórelfa', 'Þórelfur', 'Þórey', 'Þórfríður', 'Þórgunna', 'Þórgunnur', 'Þórhalla', 'Þórhanna', 'Þórheiður', 'Þórhildur', 'Þórkatla', 'Þórlaug', 'Þórleif', 'Þórný', 'Þórodda', 'Þórsteina', 'Þórsteinunn', 'Þórstína', 'Þórunn', 'Þórveig', 'Þórvör', 'Þrá', 'Þrúða', 'Þrúður', 'Þula', 'Þura', 'Þurí', 'Þuríður', 'Þurý', 'Þúfa', 'Þyri', 'Þyrí', 'Þöll', 'Ægileif', 'Æsa', 'Æsgerður', 'Ögmunda', 'Ögn', 'Ölrún', 'Ölveig', 'Örbrún', 'Örk', 'Ösp']; + + /** + * @var array Icelandic names for men. + */ + protected static $firstNameMale = ['Aage', 'Abel', 'Abraham', 'Adam', 'Addi', 'Adel', 'Adíel', 'Adólf', 'Adrían', 'Adríel', 'Aðalberg', 'Aðalbergur', 'Aðalbert', 'Aðalbjörn', 'Aðalborgar', 'Aðalgeir', 'Aðalmundur', 'Aðalráður', 'Aðalsteinn', 'Aðólf', 'Agnar', 'Agni', 'Albert', 'Aldar', 'Alex', 'Alexander', 'Alexíus', 'Alfons', 'Alfred', 'Alfreð', 'Ali', 'Allan', 'Alli', 'Almar', 'Alrekur', 'Alvar', 'Alvin', 'Amír', 'Amos', 'Anders', 'Andreas', 'André', 'Andrés', 'Andri', 'Anes', 'Anfinn', 'Angantýr', 'Angi', 'Annar', 'Annarr', 'Annas', 'Annel', 'Annes', 'Anthony', 'Anton', 'Antoníus', 'Aran', 'Arent', 'Ares', 'Ari', 'Arilíus', 'Arinbjörn', 'Aríel', 'Aríus', 'Arnald', 'Arnaldur', 'Arnar', 'Arnberg', 'Arnbergur', 'Arnbjörn', 'Arndór', 'Arnes', 'Arnfinnur', 'Arnfreyr', 'Arngeir', 'Arngils', 'Arngrímur', 'Arnkell', 'Arnlaugur', 'Arnleifur', 'Arnljótur', 'Arnmóður', 'Arnmundur', 'Arnoddur', 'Arnold', 'Arnór', 'Arnsteinn', 'Arnúlfur', 'Arnviður', 'Arnþór', 'Aron', 'Arthur', 'Arthúr', 'Artúr', 'Asael', 'Askur', 'Aspar', 'Atlas', 'Atli', 'Auðbergur', 'Auðbert', 'Auðbjörn', 'Auðgeir', 'Auðkell', 'Auðmundur', 'Auðólfur', 'Auðun', 'Auðunn', 'Austar', 'Austmann', 'Austmar', 'Austri', 'Axel', 'Ágúst', 'Áki', 'Álfar', 'Álfgeir', 'Álfgrímur', 'Álfur', 'Álfþór', 'Ámundi', 'Árbjartur', 'Árbjörn', 'Árelíus', 'Árgeir', 'Árgils', 'Ármann', 'Árni', 'Ársæll', 'Ás', 'Ásberg', 'Ásbergur', 'Ásbjörn', 'Ásgautur', 'Ásgeir', 'Ásgils', 'Ásgrímur', 'Ási', 'Áskell', 'Áslaugur', 'Áslákur', 'Ásmar', 'Ásmundur', 'Ásólfur', 'Ásröður', 'Ástbjörn', 'Ástgeir', 'Ástmar', 'Ástmundur', 'Ástráður', 'Ástríkur', 'Ástvald', 'Ástvaldur', 'Ástvar', 'Ástvin', 'Ástþór', 'Ásvaldur', 'Ásvarður', 'Ásþór', 'Baldur', 'Baldvin', 'Baldwin', 'Baltasar', 'Bambi', 'Barði', 'Barri', 'Bassi', 'Bastían', 'Baugur', 'Bárður', 'Beinir', 'Beinteinn', 'Beitir', 'Bekan', 'Benedikt', 'Benidikt', 'Benjamín', 'Benoný', 'Benóní', 'Benóný', 'Bent', 'Berent', 'Berg', 'Bergfinnur', 'Berghreinn', 'Bergjón', 'Bergmann', 'Bergmar', 'Bergmundur', 'Bergsteinn', 'Bergsveinn', 'Bergur', 'Bergvin', 'Bergþór', 'Bernhard', 'Bernharð', 'Bernharður', 'Berni', 'Bernódus', 'Bersi', 'Bertel', 'Bertram', 'Bessi', 'Betúel', 'Bill', 'Birgir', 'Birkir', 'Birnir', 'Birtingur', 'Birtir', 'Bjargar', 'Bjargmundur', 'Bjargþór', 'Bjarkan', 'Bjarkar', 'Bjarki', 'Bjarmar', 'Bjarmi', 'Bjarnar', 'Bjarnfinnur', 'Bjarnfreður', 'Bjarnharður', 'Bjarnhéðinn', 'Bjarni', 'Bjarnlaugur', 'Bjarnleifur', 'Bjarnólfur', 'Bjarnsteinn', 'Bjarnþór', 'Bjartmann', 'Bjartmar', 'Bjartur', 'Bjartþór', 'Bjólan', 'Bjólfur', 'Björgmundur', 'Björgólfur', 'Björgúlfur', 'Björgvin', 'Björn', 'Björnólfur', 'Blængur', 'Blær', 'Blævar', 'Boði', 'Bogi', 'Bolli', 'Borgar', 'Borgúlfur', 'Borgþór', 'Bóas', 'Bói', 'Bótólfur', 'Bragi', 'Brandur', 'Breki', 'Bresi', 'Brestir', 'Brimar', 'Brimi', 'Brimir', 'Brími', 'Brjánn', 'Broddi', 'Bruno', 'Bryngeir', 'Brynjar', 'Brynjólfur', 'Brynjúlfur', 'Brynleifur', 'Brynsteinn', 'Bryntýr', 'Brynþór', 'Burkni', 'Búi', 'Búri', 'Bæring', 'Bæringur', 'Bæron', 'Böðvar', 'Börkur', 'Carl', 'Cecil', 'Christian', 'Christopher', 'Cýrus', 'Daði', 'Dagbjartur', 'Dagfari', 'Dagfinnur', 'Daggeir', 'Dagmann', 'Dagnýr', 'Dagur', 'Dagþór', 'Dalbert', 'Dalli', 'Dalmann', 'Dalmar', 'Dalvin', 'Damjan', 'Dan', 'Danelíus', 'Daniel', 'Danival', 'Daníel', 'Daníval', 'Dante', 'Daríus', 'Darri', 'Davíð', 'Demus', 'Deníel', 'Dennis', 'Diðrik', 'Díómedes', 'Dofri', 'Dolli', 'Dominik', 'Dómald', 'Dómaldi', 'Dómaldur', 'Dónald', 'Dónaldur', 'Dór', 'Dóri', 'Dósóþeus', 'Draupnir', 'Dreki', 'Drengur', 'Dufgus', 'Dufþakur', 'Dugfús', 'Dúi', 'Dúnn', 'Dvalinn', 'Dýri', 'Dýrmundur', 'Ebbi', 'Ebeneser', 'Ebenezer', 'Eberg', 'Edgar', 'Edilon', 'Edílon', 'Edvard', 'Edvin', 'Edward', 'Eðvald', 'Eðvar', 'Eðvarð', 'Efraím', 'Eggert', 'Eggþór', 'Egill', 'Eiðar', 'Eiður', 'Eikar', 'Eilífur', 'Einar', 'Einir', 'Einvarður', 'Einþór', 'Eiríkur', 'Eivin', 'Elberg', 'Elbert', 'Eldar', 'Eldgrímur', 'Eldjárn', 'Eldmar', 'Eldon', 'Eldór', 'Eldur', 'Elentínus', 'Elfar', 'Elfráður', 'Elimar', 'Elinór', 'Elis', 'Elí', 'Elías', 'Elíeser', 'Elímar', 'Elínbergur', 'Elínmundur', 'Elínór', 'Elís', 'Ellert', 'Elli', 'Elliði', 'Ellís', 'Elmar', 'Elvar', 'Elvin', 'Elvis', 'Emanúel', 'Embrek', 'Emerald', 'Emil', 'Emmanúel', 'Engilbert', 'Engilbjartur', 'Engiljón', 'Engill', 'Enok', 'Eric', 'Erik', 'Erlar', 'Erlendur', 'Erling', 'Erlingur', 'Ernestó', 'Ernir', 'Ernst', 'Eron', 'Erpur', 'Esekíel', 'Esjar', 'Esra', 'Estefan', 'Evald', 'Evan', 'Evert', 'Eyberg', 'Eyjólfur', 'Eylaugur', 'Eyleifur', 'Eymar', 'Eymundur', 'Eyríkur', 'Eysteinn', 'Eyvar', 'Eyvindur', 'Eyþór', 'Fabrisíus', 'Falgeir', 'Falur', 'Fannar', 'Fannberg', 'Fanngeir', 'Fáfnir', 'Fálki', 'Felix', 'Fengur', 'Fenrir', 'Ferdinand', 'Ferdínand', 'Fertram', 'Feykir', 'Filip', 'Filippus', 'Finn', 'Finnbjörn', 'Finnbogi', 'Finngeir', 'Finnjón', 'Finnlaugur', 'Finnur', 'Finnvarður', 'Fífill', 'Fjalar', 'Fjarki', 'Fjólar', 'Fjólmundur', 'Fjölnir', 'Fjölvar', 'Fjörnir', 'Flemming', 'Flosi', 'Flóki', 'Flórent', 'Flóvent', 'Forni', 'Fossmar', 'Fólki', 'Francis', 'Frank', 'Franklín', 'Frans', 'Franz', 'Fránn', 'Frár', 'Freybjörn', 'Freygarður', 'Freymar', 'Freymóður', 'Freymundur', 'Freyr', 'Freysteinn', 'Freyviður', 'Freyþór', 'Friðberg', 'Friðbergur', 'Friðbert', 'Friðbjörn', 'Friðfinnur', 'Friðgeir', 'Friðjón', 'Friðlaugur', 'Friðleifur', 'Friðmann', 'Friðmar', 'Friðmundur', 'Friðrik', 'Friðsteinn', 'Friður', 'Friðvin', 'Friðþjófur', 'Friðþór', 'Friedrich', 'Fritz', 'Frímann', 'Frosti', 'Fróði', 'Fróðmar', 'Funi', 'Fúsi', 'Fylkir', 'Gabriel', 'Gabríel', 'Gael', 'Galdur', 'Gamalíel', 'Garðar', 'Garibaldi', 'Garpur', 'Garri', 'Gaui', 'Gaukur', 'Gauti', 'Gautrekur', 'Gautur', 'Gautviður', 'Geir', 'Geirarður', 'Geirfinnur', 'Geirharður', 'Geirhjörtur', 'Geirhvatur', 'Geiri', 'Geirlaugur', 'Geirleifur', 'Geirmundur', 'Geirólfur', 'Geirröður', 'Geirtryggur', 'Geirvaldur', 'Geirþjófur', 'Geisli', 'Gellir', 'Georg', 'Gerald', 'Gerðar', 'Geri', 'Gestur', 'Gilbert', 'Gilmar', 'Gils', 'Gissur', 'Gizur', 'Gídeon', 'Gígjar', 'Gísli', 'Gjúki', 'Glói', 'Glúmur', 'Gneisti', 'Gnúpur', 'Gnýr', 'Goði', 'Goðmundur', 'Gottskálk', 'Gottsveinn', 'Gói', 'Grani', 'Grankell', 'Gregor', 'Greipur', 'Greppur', 'Gretar', 'Grettir', 'Grétar', 'Grímar', 'Grímkell', 'Grímlaugur', 'Grímnir', 'Grímólfur', 'Grímur', 'Grímúlfur', 'Guðberg', 'Guðbergur', 'Guðbjarni', 'Guðbjartur', 'Guðbjörn', 'Guðbrandur', 'Guðfinnur', 'Guðfreður', 'Guðgeir', 'Guðjón', 'Guðlaugur', 'Guðleifur', 'Guðleikur', 'Guðmann', 'Guðmar', 'Guðmon', 'Guðmundur', 'Guðni', 'Guðráður', 'Guðröður', 'Guðsteinn', 'Guðvarður', 'Guðveigur', 'Guðvin', 'Guðþór', 'Gumi', 'Gunnar', 'Gunnberg', 'Gunnbjörn', 'Gunndór', 'Gunngeir', 'Gunnhallur', 'Gunnlaugur', 'Gunnleifur', 'Gunnólfur', 'Gunnóli', 'Gunnröður', 'Gunnsteinn', 'Gunnvaldur', 'Gunnþór', 'Gustav', 'Gutti', 'Guttormur', 'Gústaf', 'Gústav', 'Gylfi', 'Gyrðir', 'Gýgjar', 'Gýmir', 'Haddi', 'Haddur', 'Hafberg', 'Hafgrímur', 'Hafliði', 'Hafnar', 'Hafni', 'Hafsteinn', 'Hafþór', 'Hagalín', 'Hagbarður', 'Hagbert', 'Haki', 'Hallberg', 'Hallbjörn', 'Halldór', 'Hallfreður', 'Hallgarður', 'Hallgeir', 'Hallgils', 'Hallgrímur', 'Hallkell', 'Hallmann', 'Hallmar', 'Hallmundur', 'Hallsteinn', 'Hallur', 'Hallvarður', 'Hallþór', 'Hamar', 'Hannes', 'Hannibal', 'Hans', 'Harald', 'Haraldur', 'Harri', 'Harry', 'Harrý', 'Hartmann', 'Hartvig', 'Hauksteinn', 'Haukur', 'Haukvaldur', 'Hákon', 'Háleygur', 'Hálfdan', 'Hálfdán', 'Hámundur', 'Hárekur', 'Hárlaugur', 'Hásteinn', 'Hávar', 'Hávarður', 'Hávarr', 'Hávarr', 'Heiðar', 'Heiðarr', 'Heiðberg', 'Heiðbert', 'Heiðlindur', 'Heiðmann', 'Heiðmar', 'Heiðmundur', 'Heiðrekur', 'Heikir', 'Heilmóður', 'Heimir', 'Heinrekur', 'Heisi', 'Hektor', 'Helgi', 'Helmút', 'Hemmert', 'Hendrik', 'Henning', 'Henrik', 'Henry', 'Henrý', 'Herbert', 'Herbjörn', 'Herfinnur', 'Hergeir', 'Hergill', 'Hergils', 'Herjólfur', 'Herlaugur', 'Herleifur', 'Herluf', 'Hermann', 'Hermóður', 'Hermundur', 'Hersir', 'Hersteinn', 'Hersveinn', 'Hervar', 'Hervarður', 'Hervin', 'Héðinn', 'Hilaríus', 'Hilbert', 'Hildar', 'Hildibergur', 'Hildibrandur', 'Hildigeir', 'Hildiglúmur', 'Hildimar', 'Hildimundur', 'Hildingur', 'Hildir', 'Hildiþór', 'Hilmar', 'Hilmir', 'Himri', 'Hinrik', 'Híram', 'Hjallkár', 'Hjalti', 'Hjarnar', 'Hjálmar', 'Hjálmgeir', 'Hjálmtýr', 'Hjálmur', 'Hjálmþór', 'Hjörleifur', 'Hjörtur', 'Hjörtþór', 'Hjörvar', 'Hleiðar', 'Hlégestur', 'Hlér', 'Hlini', 'Hlíðar', 'Hlíðberg', 'Hlífar', 'Hljómur', 'Hlynur', 'Hlöðmundur', 'Hlöður', 'Hlöðvarður', 'Hlöðver', 'Hnefill', 'Hnikar', 'Hnikarr', 'Holgeir', 'Holger', 'Holti', 'Hólm', 'Hólmar', 'Hólmbert', 'Hólmfastur', 'Hólmgeir', 'Hólmgrímur', 'Hólmkell', 'Hólmsteinn', 'Hólmþór', 'Hóseas', 'Hrafn', 'Hrafnar', 'Hrafnbergur', 'Hrafnkell', 'Hrafntýr', 'Hrannar', 'Hrappur', 'Hraunar', 'Hreggviður', 'Hreiðar', 'Hreiðmar', 'Hreimur', 'Hreinn', 'Hringur', 'Hrímnir', 'Hrollaugur', 'Hrolleifur', 'Hróaldur', 'Hróar', 'Hróbjartur', 'Hróðgeir', 'Hróðmar', 'Hróðólfur', 'Hróðvar', 'Hrói', 'Hrólfur', 'Hrómundur', 'Hrútur', 'Hrærekur', 'Hugberg', 'Hugi', 'Huginn', 'Hugleikur', 'Hugo', 'Hugó', 'Huldar', 'Huxley', 'Húbert', 'Húgó', 'Húmi', 'Húnbogi', 'Húni', 'Húnn', 'Húnröður', 'Hvannar', 'Hyltir', 'Hylur', 'Hængur', 'Hænir', 'Höður', 'Högni', 'Hörður', 'Höskuldur', 'Illugi', 'Immanúel', 'Indriði', 'Ingberg', 'Ingi', 'Ingiberg', 'Ingibergur', 'Ingibert', 'Ingibjartur', 'Ingibjörn', 'Ingileifur', 'Ingimagn', 'Ingimar', 'Ingimundur', 'Ingivaldur', 'Ingiþór', 'Ingjaldur', 'Ingmar', 'Ingólfur', 'Ingvaldur', 'Ingvar', 'Ingvi', 'Ingþór', 'Ismael', 'Issi', 'Ían', 'Ígor', 'Ími', 'Ísak', 'Ísar', 'Ísarr', 'Ísbjörn', 'Íseldur', 'Ísgeir', 'Ísidór', 'Ísleifur', 'Ísmael', 'Ísmar', 'Ísólfur', 'Ísrael', 'Ívan', 'Ívar', 'Jack', 'Jafet', 'Jaki', 'Jakob', 'Jakop', 'Jamil', 'Jan', 'Janus', 'Jarl', 'Jason', 'Járngrímur', 'Játgeir', 'Játmundur', 'Játvarður', 'Jenni', 'Jens', 'Jeremías', 'Jes', 'Jesper', 'Jochum', 'Johan', 'John', 'Joshua', 'Jóakim', 'Jóann', 'Jóel', 'Jóhann', 'Jóhannes', 'Jói', 'Jómar', 'Jómundur', 'Jón', 'Jónar', 'Jónas', 'Jónatan', 'Jónbjörn', 'Jóndór', 'Jóngeir', 'Jónmundur', 'Jónsteinn', 'Jónþór', 'Jósafat', 'Jósavin', 'Jósef', 'Jósep', 'Jósteinn', 'Jósúa', 'Jóvin', 'Julian', 'Júlí', 'Júlían', 'Júlíus', 'Júní', 'Júníus', 'Júrek', 'Jökull', 'Jörfi', 'Jörgen', 'Jörmundur', 'Jörri', 'Jörundur', 'Jörvar', 'Jörvi', 'Kaj', 'Kakali', 'Kaktus', 'Kaldi', 'Kaleb', 'Kali', 'Kalman', 'Kalmann', 'Kalmar', 'Kaprasíus', 'Karel', 'Karim', 'Karkur', 'Karl', 'Karles', 'Karli', 'Karvel', 'Kaspar', 'Kasper', 'Kastíel', 'Katarínus', 'Kató', 'Kár', 'Kári', 'Keran', 'Ketilbjörn', 'Ketill', 'Kilían', 'Kiljan', 'Kjalar', 'Kjallakur', 'Kjaran', 'Kjartan', 'Kjarval', 'Kjárr', 'Kjói', 'Klemens', 'Klemenz', 'Klængur', 'Knútur', 'Knörr', 'Koðrán', 'Koggi', 'Kolbeinn', 'Kolbjörn', 'Kolfinnur', 'Kolgrímur', 'Kolmar', 'Kolskeggur', 'Kolur', 'Kolviður', 'Konráð', 'Konstantínus', 'Kormákur', 'Kornelíus', 'Kort', 'Kópur', 'Kraki', 'Kris', 'Kristall', 'Kristberg', 'Kristbergur', 'Kristbjörn', 'Kristdór', 'Kristens', 'Krister', 'Kristfinnur', 'Kristgeir', 'Kristian', 'Kristinn', 'Kristján', 'Kristjón', 'Kristlaugur', 'Kristleifur', 'Kristmann', 'Kristmar', 'Kristmundur', 'Kristofer', 'Kristófer', 'Kristvaldur', 'Kristvarður', 'Kristvin', 'Kristþór', 'Krummi', 'Kveldúlfur', 'Lambert', 'Lars', 'Laufar', 'Laugi', 'Lauritz', 'Lár', 'Lárent', 'Lárentíus', 'Lárus', 'Leiðólfur', 'Leif', 'Leifur', 'Leiknir', 'Leo', 'Leon', 'Leonard', 'Leonhard', 'Leó', 'Leópold', 'Leví', 'Lér', 'Liljar', 'Lindar', 'Lindberg', 'Línberg', 'Líni', 'Ljósálfur', 'Ljótur', 'Ljúfur', 'Loðmundur', 'Loftur', 'Logi', 'Loki', 'Lórens', 'Lórenz', 'Ludvig', 'Lundi', 'Lúðvíg', 'Lúðvík', 'Lúkas', 'Lúter', 'Lúther', 'Lyngar', 'Lýður', 'Lýtingur', 'Maggi', 'Magngeir', 'Magni', 'Magnús', 'Magnþór', 'Makan', 'Manfred', 'Manfreð', 'Manúel', 'Mar', 'Marbjörn', 'Marel', 'Margeir', 'Margrímur', 'Mari', 'Marijón', 'Marinó', 'Marías', 'Marínó', 'Marís', 'Maríus', 'Marjón', 'Markó', 'Markús', 'Markþór', 'Maron', 'Marri', 'Mars', 'Marsellíus', 'Marteinn', 'Marten', 'Marthen', 'Martin', 'Marvin', 'Mathías', 'Matthías', 'Matti', 'Mattías', 'Max', 'Maximus', 'Máni', 'Már', 'Márus', 'Mekkinó', 'Melkíor', 'Melkólmur', 'Melrakki', 'Mensalder', 'Merkúr', 'Methúsalem', 'Metúsalem', 'Meyvant', 'Michael', 'Mikael', 'Mikjáll', 'Mikkael', 'Mikkel', 'Mildinberg', 'Mías', 'Mímir', 'Míó', 'Mír', 'Mjöllnir', 'Mjölnir', 'Moli', 'Morgan', 'Moritz', 'Mosi', 'Móði', 'Móri', 'Mórits', 'Móses', 'Muggur', 'Muni', 'Muninn', 'Múli', 'Myrkvi', 'Mýrkjartan', 'Mörður', 'Narfi', 'Natan', 'Natanael', 'Nataníel', 'Náttmörður', 'Náttúlfur', 'Neisti', 'Nenni', 'Neptúnus', 'Nicolas', 'Nikanor', 'Nikolai', 'Nikolas', 'Nikulás', 'Nils', 'Níels', 'Níls', 'Njáll', 'Njörður', 'Nonni', 'Norbert', 'Norðmann', 'Normann', 'Nóam', 'Nóel', 'Nói', 'Nóni', 'Nóri', 'Nóvember', 'Númi', 'Nývarð', 'Nökkvi', 'Oddbergur', 'Oddbjörn', 'Oddfreyr', 'Oddgeir', 'Oddi', 'Oddkell', 'Oddleifur', 'Oddmar', 'Oddsteinn', 'Oddur', 'Oddvar', 'Oddþór', 'Oktavíus', 'Októ', 'Októvíus', 'Olaf', 'Olav', 'Olgeir', 'Oliver', 'Olivert', 'Orfeus', 'Ormar', 'Ormur', 'Orri', 'Orvar', 'Otkell', 'Otri', 'Otti', 'Ottó', 'Otur', 'Óðinn', 'Ófeigur', 'Ólafur', 'Óli', 'Óliver', 'Ólíver', 'Ómar', 'Ómi', 'Óskar', 'Ósvald', 'Ósvaldur', 'Ósvífur', 'Óttar', 'Óttarr', 'Parmes', 'Patrek', 'Patrekur', 'Patrick', 'Patrik', 'Páll', 'Pálmar', 'Pálmi', 'Pedró', 'Per', 'Peter', 'Pétur', 'Pjetur', 'Príor', 'Rafael', 'Rafn', 'Rafnar', 'Rafnkell', 'Ragnar', 'Ragúel', 'Randver', 'Rannver', 'Rasmus', 'Ráðgeir', 'Ráðvarður', 'Refur', 'Reginbaldur', 'Reginn', 'Reidar', 'Reifnir', 'Reimar', 'Reinar', 'Reinhart', 'Reinhold', 'Reynald', 'Reynar', 'Reynir', 'Reyr', 'Richard', 'Rikharð', 'Rikharður', 'Ríkarður', 'Ríkharð', 'Ríkharður', 'Ríó', 'Robert', 'Rolf', 'Ronald', 'Róbert', 'Rólant', 'Róman', 'Rómeó', 'Rósant', 'Rósar', 'Rósberg', 'Rósenberg', 'Rósi', 'Rósinberg', 'Rósinkar', 'Rósinkrans', 'Rósmann', 'Rósmundur', 'Rudolf', 'Runi', 'Runólfur', 'Rúbar', 'Rúben', 'Rúdólf', 'Rúnar', 'Rúrik', 'Rútur', 'Röðull', 'Rögnvald', 'Rögnvaldur', 'Rögnvar', 'Rökkvi', 'Safír', 'Sakarías', 'Salmann', 'Salmar', 'Salómon', 'Salvar', 'Samson', 'Samúel', 'Sandel', 'Sandri', 'Sandur', 'Saxi', 'Sebastian', 'Sebastían', 'Seifur', 'Seimur', 'Sesar', 'Sesil', 'Sigbergur', 'Sigbert', 'Sigbjartur', 'Sigbjörn', 'Sigdór', 'Sigfastur', 'Sigfinnur', 'Sigfreður', 'Sigfús', 'Siggeir', 'Sighvatur', 'Sigjón', 'Siglaugur', 'Sigmann', 'Sigmar', 'Sigmundur', 'Signar', 'Sigri', 'Sigríkur', 'Sigsteinn', 'Sigtryggur', 'Sigtýr', 'Sigur', 'Sigurbaldur', 'Sigurberg', 'Sigurbergur', 'Sigurbjarni', 'Sigurbjartur', 'Sigurbjörn', 'Sigurbrandur', 'Sigurdór', 'Sigurður', 'Sigurfinnur', 'Sigurgeir', 'Sigurgestur', 'Sigurgísli', 'Sigurgrímur', 'Sigurhans', 'Sigurhjörtur', 'Sigurjón', 'Sigurkarl', 'Sigurlaugur', 'Sigurlás', 'Sigurleifur', 'Sigurliði', 'Sigurlinni', 'Sigurmann', 'Sigurmar', 'Sigurmon', 'Sigurmundur', 'Sigurnýas', 'Sigurnýjas', 'Siguroddur', 'Siguróli', 'Sigurpáll', 'Sigursteinn', 'Sigursveinn', 'Sigurvaldi', 'Sigurvin', 'Sigurþór', 'Sigvaldi', 'Sigvarður', 'Sigþór', 'Silli', 'Sindri', 'Símon', 'Sírnir', 'Sírus', 'Sívar', 'Sjafnar', 'Skafti', 'Skapti', 'Skarphéðinn', 'Skefill', 'Skeggi', 'Skíði', 'Skírnir', 'Skjöldur', 'Skorri', 'Skuggi', 'Skúli', 'Skúta', 'Skær', 'Skæringur', 'Smári', 'Smiður', 'Smyrill', 'Snjóki', 'Snjólaugur', 'Snjólfur', 'Snorri', 'Snæbjartur', 'Snæbjörn', 'Snæhólm', 'Snælaugur', 'Snær', 'Snæringur', 'Snævar', 'Snævarr', 'Snæþór', 'Soffanías', 'Sophanías', 'Sophus', 'Sófónías', 'Sófus', 'Sókrates', 'Sólberg', 'Sólbergur', 'Sólbjartur', 'Sólbjörn', 'Sólimann', 'Sólmar', 'Sólmundur', 'Sólon', 'Sólver', 'Sólvin', 'Spartakus', 'Sporði', 'Spói', 'Stanley', 'Stapi', 'Starkaður', 'Starri', 'Stefan', 'Stefán', 'Stefnir', 'Steinar', 'Steinarr', 'Steinberg', 'Steinbergur', 'Steinbjörn', 'Steindór', 'Steinfinnur', 'Steingrímur', 'Steini', 'Steinkell', 'Steinmann', 'Steinmar', 'Steinmóður', 'Steinn', 'Steinólfur', 'Steinröður', 'Steinvarður', 'Steinþór', 'Stirnir', 'Stígur', 'Stormur', 'Stórólfur', 'Sturla', 'Sturlaugur', 'Sturri', 'Styr', 'Styrbjörn', 'Styrkár', 'Styrmir', 'Styrr', 'Sumarliði', 'Svafar', 'Svali', 'Svan', 'Svanberg', 'Svanbergur', 'Svanbjörn', 'Svangeir', 'Svanhólm', 'Svani', 'Svanlaugur', 'Svanmundur', 'Svanur', 'Svanþór', 'Svavar', 'Sváfnir', 'Sveinar', 'Sveinberg', 'Sveinbjartur', 'Sveinbjörn', 'Sveinjón', 'Sveinlaugur', 'Sveinmar', 'Sveinn', 'Sveinungi', 'Sveinþór', 'Svend', 'Sverre', 'Sverrir', 'Svölnir', 'Svörfuður', 'Sýrus', 'Sæberg', 'Sæbergur', 'Sæbjörn', 'Sæi', 'Sælaugur', 'Sæmann', 'Sæmundur', 'Sær', 'Sævald', 'Sævaldur', 'Sævar', 'Sævarr', 'Sævin', 'Sæþór', 'Sölmundur', 'Sölvar', 'Sölvi', 'Sören', 'Sörli', 'Tandri', 'Tarfur', 'Teitur', 'Theodór', 'Theódór', 'Thomas', 'Thor', 'Thorberg', 'Thór', 'Tindar', 'Tindri', 'Tindur', 'Tinni', 'Tími', 'Tímon', 'Tímoteus', 'Tímóteus', 'Tístran', 'Tjaldur', 'Tjörfi', 'Tjörvi', 'Tobías', 'Tolli', 'Tonni', 'Torfi', 'Tóbías', 'Tói', 'Tóki', 'Tómas', 'Tór', 'Trausti', 'Tristan', 'Trostan', 'Trúmann', 'Tryggvi', 'Tumas', 'Tumi', 'Tyrfingur', 'Týr', 'Ubbi', 'Uggi', 'Ulrich', 'Uni', 'Unnar', 'Unnbjörn', 'Unndór', 'Unnsteinn', 'Unnþór', 'Urðar', 'Uxi', 'Úddi', 'Úlfar', 'Úlfgeir', 'Úlfhéðinn', 'Úlfkell', 'Úlfljótur', 'Úlftýr', 'Úlfur', 'Úlrik', 'Úranus', 'Vagn', 'Vakur', 'Valberg', 'Valbergur', 'Valbjörn', 'Valbrandur', 'Valdemar', 'Valdi', 'Valdimar', 'Valdór', 'Valentín', 'Valentínus', 'Valgarð', 'Valgarður', 'Valgeir', 'Valíant', 'Vallaður', 'Valmar', 'Valmundur', 'Valsteinn', 'Valter', 'Valtýr', 'Valur', 'Valves', 'Valþór', 'Varmar', 'Vatnar', 'Váli', 'Vápni', 'Veigar', 'Veigur', 'Ver', 'Vermundur', 'Vernharð', 'Vernharður', 'Vestar', 'Vestmar', 'Veturliði', 'Vébjörn', 'Végeir', 'Vékell', 'Vélaugur', 'Vémundur', 'Vésteinn', 'Victor', 'Viðar', 'Vigfús', 'Viggó', 'Vignir', 'Vigri', 'Vigtýr', 'Vigur', 'Vikar', 'Viktor', 'Vilberg', 'Vilbergur', 'Vilbert', 'Vilbjörn', 'Vilbogi', 'Vilbrandur', 'Vilgeir', 'Vilhelm', 'Vilhjálmur', 'Vili', 'Viljar', 'Vilji', 'Villi', 'Vilmar', 'Vilmundur', 'Vincent', 'Vinjar', 'Virgill', 'Víðar', 'Víðir', 'Vífill', 'Víglundur', 'Vígmar', 'Vígmundur', 'Vígsteinn', 'Vígþór', 'Víkingur', 'Vopni', 'Vorm', 'Vöggur', 'Völundur', 'Vörður', 'Vöttur', 'Walter', 'Werner', 'Wilhelm', 'Willard', 'William', 'Willum', 'Ylur', 'Ymir', 'Yngvar', 'Yngvi', 'Yrkill', 'Ýmir', 'Ýrar', 'Zakaría', 'Zakarías', 'Zophanías', 'Zophonías', 'Zóphanías', 'Zóphonías', 'Þangbrandur', 'Þengill', 'Þeyr', 'Þiðrandi', 'Þiðrik', 'Þinur', 'Þjálfi', 'Þjóðann', 'Þjóðbjörn', 'Þjóðgeir', 'Þjóðleifur', 'Þjóðmar', 'Þjóðólfur', 'Þjóðrekur', 'Þjóðvarður', 'Þjóstar', 'Þjóstólfur', 'Þorberg', 'Þorbergur', 'Þorbjörn', 'Þorbrandur', 'Þorfinnur', 'Þorgarður', 'Þorgautur', 'Þorgeir', 'Þorgestur', 'Þorgils', 'Þorgísl', 'Þorgnýr', 'Þorgrímur', 'Þorkell', 'Þorlaugur', 'Þorlákur', 'Þorleifur', 'Þorleikur', 'Þormar', 'Þormóður', 'Þormundur', 'Þorri', 'Þorsteinn', 'Þorvaldur', 'Þorvar', 'Þorvarður', 'Þór', 'Þórar', 'Þórarinn', 'Þórbergur', 'Þórbjörn', 'Þórður', 'Þórgnýr', 'Þórgrímur', 'Þórhaddur', 'Þórhalli', 'Þórhallur', 'Þórir', 'Þórlaugur', 'Þórleifur', 'Þórlindur', 'Þórmar', 'Þórmundur', 'Þóroddur', 'Þórormur', 'Þórólfur', 'Þórsteinn', 'Þórörn', 'Þrastar', 'Þráinn', 'Þrándur', 'Þróttur', 'Þrúðmar', 'Þrymur', 'Þröstur', 'Þyrnir', 'Ægir', 'Æsir', 'Ævar', 'Ævarr', 'Ögmundur', 'Ögri', 'Ölnir', 'Ölver', 'Ölvir', 'Öndólfur', 'Önundur', 'Örlaugur', 'Örlygur', 'Örn', 'Örnólfur', 'Örvar', 'Össur', 'Öxar']; + + /** + * @var array Icelandic middle names. + */ + protected static $middleName = [ + 'Aðaldal', 'Aldan', 'Arnberg', 'Arnfjörð', 'Austan', 'Austdal', 'Austfjörð', 'Áss', 'Bakkdal', 'Bakkmann', 'Bald', 'Ben', 'Bergholt', 'Bergland', 'Bíldsfells', 'Bjarg', 'Bjarndal', 'Bjarnfjörð', 'Bláfeld', 'Blómkvist', 'Borgdal', 'Brekkmann', 'Brim', 'Brúnsteð', 'Dalhoff', 'Dan', 'Diljan', 'Ektavon', 'Eldberg', 'Elísberg', 'Elvan', 'Espólín', 'Eyhlíð', 'Eyvík', 'Falk', 'Finndal', 'Fossberg', 'Freydal', 'Friðhólm', 'Giljan', 'Gilsfjörð', 'Gnarr', 'Gnurr', 'Grendal', 'Grindvík', 'Gull', 'Haffjörð', 'Hafnes', 'Hafnfjörð', 'Har', 'Heimdal', 'Heimsberg', 'Helgfell', 'Herberg', 'Hildiberg', 'Hjaltdal', 'Hlíðkvist', 'Hnappdal', 'Hnífsdal', 'Hofland', 'Hofteig', 'Hornfjörð', 'Hólmberg', 'Hrafnan', 'Hrafndal', 'Hraunberg', 'Hreinberg', 'Hreindal', 'Hrútfjörð', 'Hvammdal', 'Hvítfeld', 'Höfðdal', 'Hörðdal', 'Íshólm', 'Júl', 'Kjarrval', 'Knaran', 'Knarran', 'Krossdal', 'Laufkvist', 'Laufland', 'Laugdal', 'Laxfoss', 'Liljan', 'Linddal', 'Línberg', 'Ljós', 'Loðmfjörð', 'Lyngberg', 'Magdal', 'Magg', 'Matt', 'Miðdal', 'Miðvík', 'Mjófjörð', 'Móberg', 'Mýrmann', 'Nesmann', 'Norðland', 'Núpdal', 'Ólfjörð', 'Ósland', 'Ósmann', 'Reginbald', 'Reykfell', 'Reykfjörð', 'Reynholt', 'Salberg', 'Sandhólm', 'Seljan', 'Sigurhólm', 'Skagalín', 'Skíðdal', 'Snæberg', 'Snædahl', 'Sólan', 'Stardal', 'Stein', 'Steinbekk', 'Steinberg', 'Storm', 'Straumberg', 'Svanhild', 'Svarfdal', 'Sædal', 'Val', 'Valagils', 'Vald', 'Varmdal', 'Vatnsfjörð', 'Vattar', 'Vattnes', 'Viðfjörð', 'Vídalín', 'Víking', 'Vopnfjörð', 'Yngling', 'Þor', 'Önfjörð', 'Örbekk', 'Öxdal', 'Öxndal', + ]; + + /** + * Randomly return an Icelandic middle name. + * + * @return string + */ + public static function middleName() + { + return static::randomElement(static::$middleName); + } + + /** + * Generate prepared last name for further processing. + * + * @return string + */ + public function lastName() + { + $name = static::firstNameMale(); + + if (substr($name, -2) === 'ur') { + $name = substr($name, 0, strlen($name) - 2); + } + + if (substr($name, -1) !== 's') { + $name .= 's'; + } + + return $name; + } + + /** + * Randomly return an Icelandic last name for a woman. + * + * @return string + */ + public function lastNameMale() + { + return $this->lastName() . 'son'; + } + + /** + * Randomly return an Icelandic last name for a man. + * + * @return string + */ + public function lastNameFemale() + { + return $this->lastName() . 'dóttir'; + } + + /** + * Return a random Icelandic Kennitala (Social Security number). + * + * @see http://en.wikipedia.org/wiki/Kennitala + * + * @return string + */ + public static function ssn() + { + // random birth date + $birthdate = DateTime::dateTimeThisCentury(); + + // last four buffer + $lastFour = null; + + // security variable reference + $ref = '32765432'; + + // valid flag + $valid = false; + + while (!$valid) { + // make two random numbers + $rand = static::randomDigit() . static::randomDigit(); + + // 8 char string with birth date and two random numbers + $tmp = $birthdate->format('dmy') . $rand; + + // loop through temp string + for ($i = 7, $sum = 0; $i >= 0; --$i) { + // calculate security variable + $sum += ($tmp[$i] * $ref[$i]); + } + + // subtract 11 if not 11 + $chk = ($sum % 11 === 0) ? 0 : (11 - ($sum % 11)); + + if ($chk < 10) { + $lastFour = $rand . $chk . substr($birthdate->format('Y'), 1, 1); + + $valid = true; + } + } + + return sprintf('%s-%s', $birthdate->format('dmy'), $lastFour); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/is_IS/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/is_IS/PhoneNumber.php new file mode 100644 index 0000000..7118666 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/is_IS/PhoneNumber.php @@ -0,0 +1,17 @@ + 'Argovia'], + ['AI' => 'Appenzello Interno'], + ['AR' => 'Appenzello Esterno'], + ['BE' => 'Berna'], + ['BL' => 'Basilea Campagna'], + ['BS' => 'Basilea Città'], + ['FR' => 'Friburgo'], + ['GE' => 'Ginevra'], + ['GL' => 'Glarona'], + ['GR' => 'Grigioni'], + ['JU' => 'Giura'], + ['LU' => 'Lucerna'], + ['NE' => 'Neuchâtel'], + ['NW' => 'Nidvaldo'], + ['OW' => 'Obvaldo'], + ['SG' => 'San Gallo'], + ['SH' => 'Sciaffusa'], + ['SO' => 'Soletta'], + ['SZ' => 'Svitto'], + ['TG' => 'Turgovia'], + ['TI' => 'Ticino'], + ['UR' => 'Uri'], + ['VD' => 'Vaud'], + ['VS' => 'Vallese'], + ['ZG' => 'Zugo'], + ['ZH' => 'Zurigo'], + ]; + + protected static $cityFormats = [ + '{{cityName}}', + ]; + + protected static $streetNameFormats = [ + '{{streetSuffix}} {{firstName}}', + '{{streetSuffix}} {{lastName}}', + ]; + + protected static $streetAddressFormats = [ + '{{streetName}} {{buildingNumber}}', + ]; + protected static $addressFormats = [ + "{{streetAddress}}\n{{postcode}} {{city}}", + ]; + + /** + * Returns a random street prefix + * + * @example Via + * + * @return string + */ + public static function streetPrefix() + { + return static::randomElement(static::$streetPrefix); + } + + /** + * Returns a random city name. + * + * @example Luzern + * + * @return string + */ + public function cityName() + { + return static::randomElement(static::$cityNames); + } + + /** + * Returns a canton + * + * @example array('BE' => 'Bern') + * + * @return array + */ + public static function canton() + { + return static::randomElement(static::$canton); + } + + /** + * Returns the abbreviation of a canton. + * + * @return string + */ + public static function cantonShort() + { + $canton = static::canton(); + + return key($canton); + } + + /** + * Returns the name of canton. + * + * @return string + */ + public static function cantonName() + { + $canton = static::canton(); + + return current($canton); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/it_CH/Company.php b/vendor/fakerphp/faker/src/Faker/Provider/it_CH/Company.php new file mode 100644 index 0000000..bb5f946 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/it_CH/Company.php @@ -0,0 +1,15 @@ +generator->parse($format); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/ja_JP/Company.php b/vendor/fakerphp/faker/src/Faker/Provider/ja_JP/Company.php new file mode 100644 index 0000000..0e4b88d --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/ja_JP/Company.php @@ -0,0 +1,17 @@ +generator->parse($format)); + } + + /** + * @example 'yamada.jp' + */ + public function domainName() + { + return static::randomElement(static::$lastNameAscii) . '.' . $this->tld(); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/ja_JP/Person.php b/vendor/fakerphp/faker/src/Faker/Provider/ja_JP/Person.php new file mode 100644 index 0000000..399e559 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/ja_JP/Person.php @@ -0,0 +1,147 @@ +generator->parse($format); + } + + /** + * @param string|null $gender 'male', 'female' or null for any + * + * @return string + * + * @example 'アキラ' + */ + public function firstKanaName($gender = null) + { + if ($gender === static::GENDER_MALE) { + return static::firstKanaNameMale(); + } + + if ($gender === static::GENDER_FEMALE) { + return static::firstKanaNameFemale(); + } + + return $this->generator->parse(static::randomElement(static::$firstKanaNameFormat)); + } + + /** + * @example 'アキラ' + */ + public static function firstKanaNameMale() + { + return static::randomElement(static::$firstKanaNameMale); + } + + /** + * @example 'アケミ' + */ + public static function firstKanaNameFemale() + { + return static::randomElement(static::$firstKanaNameFemale); + } + + /** + * @example 'アオタ' + */ + public static function lastKanaName() + { + return static::randomElement(static::$lastKanaName); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/ja_JP/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/ja_JP/PhoneNumber.php new file mode 100644 index 0000000..1e0595e --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/ja_JP/PhoneNumber.php @@ -0,0 +1,19 @@ +generator->parse($format); + } + + public static function companyPrefix() + { + return static::randomElement(static::$companyPrefixes); + } + + public static function companyNameElement() + { + return static::randomElement(static::$companyElements); + } + + public static function companyNameSuffix() + { + return static::randomElement(static::$companyNameSuffixes); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/ka_GE/DateTime.php b/vendor/fakerphp/faker/src/Faker/Provider/ka_GE/DateTime.php new file mode 100644 index 0000000..375c32a --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/ka_GE/DateTime.php @@ -0,0 +1,43 @@ + 'კვირა', + 'Monday' => 'ორშაბათი', + 'Tuesday' => 'სამშაბათი', + 'Wednesday' => 'ოთხშაბათი', + 'Thursday' => 'ხუთშაბათი', + 'Friday' => 'პარასკევი', + 'Saturday' => 'შაბათი', + ]; + $week = static::dateTime($max)->format('l'); + + return $map[$week] ?? $week; + } + + public static function monthName($max = 'now') + { + $map = [ + 'January' => 'იანვარი', + 'February' => 'თებერვალი', + 'March' => 'მარტი', + 'April' => 'აპრილი', + 'May' => 'მაისი', + 'June' => 'ივნისი', + 'July' => 'ივლისი', + 'August' => 'აგვისტო', + 'September' => 'სექტემბერი', + 'October' => 'ოქტომბერი', + 'November' => 'ნოემბერი', + 'December' => 'დეკემბერი', + ]; + $month = static::dateTime($max)->format('F'); + + return $map[$month] ?? $month; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/ka_GE/Internet.php b/vendor/fakerphp/faker/src/Faker/Provider/ka_GE/Internet.php new file mode 100644 index 0000000..d07e41c --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/ka_GE/Internet.php @@ -0,0 +1,15 @@ +generator->parse($format); + } + + public static function companyPrefix() + { + return static::randomElement(static::$companyPrefixes); + } + + public static function companyNameElement() + { + return static::randomElement(static::$companyElements); + } + + public static function companyNameSuffix() + { + return static::randomElement(static::$companyNameSuffixes); + } + + /** + * National Business Identification Numbers + * + * @see http://egov.kz/wps/portal/Content?contentPath=%2Fegovcontent%2Fbus_business%2Ffor_businessmen%2Farticle%2Fbusiness_identification_number&lang=en + * + * @return string 12 digits, like 150140000019 + */ + public static function businessIdentificationNumber(?\DateTime $registrationDate = null) + { + if (!$registrationDate) { + $registrationDate = \Faker\Provider\DateTime::dateTimeThisYear(); + } + + $dateAsString = $registrationDate->format('ym'); + $legalEntityType = (string) self::numberBetween(4, 6); + $legalEntityAdditionalType = (string) self::numberBetween(0, 3); + $randomDigits = (string) static::numerify('######'); + + return $dateAsString . $legalEntityType . $legalEntityAdditionalType . $randomDigits; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/kk_KZ/Internet.php b/vendor/fakerphp/faker/src/Faker/Provider/kk_KZ/Internet.php new file mode 100644 index 0000000..0328da0 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/kk_KZ/Internet.php @@ -0,0 +1,9 @@ + [ + self::CENTURY_19TH => self::MALE_CENTURY_19TH, + self::CENTURY_20TH => self::MALE_CENTURY_20TH, + self::CENTURY_21ST => self::MALE_CENTURY_21ST, + ], + self::GENDER_FEMALE => [ + self::CENTURY_19TH => self::FEMALE_CENTURY_19TH, + self::CENTURY_20TH => self::FEMALE_CENTURY_20TH, + self::CENTURY_21ST => self::FEMALE_CENTURY_21ST, + ], + ]; + + /** + * @see https://ru.wikipedia.org/wiki/%D0%9A%D0%B0%D0%B7%D0%B0%D1%85%D1%81%D0%BA%D0%B0%D1%8F_%D1%84%D0%B0%D0%BC%D0%B8%D0%BB%D0%B8%D1%8F + * + * @var array + */ + protected static $maleNameFormats = [ + '{{lastName}}ұлы {{firstNameMale}}', + ]; + + /** + * @see https://ru.wikipedia.org/wiki/%D0%9A%D0%B0%D0%B7%D0%B0%D1%85%D1%81%D0%BA%D0%B0%D1%8F_%D1%84%D0%B0%D0%BC%D0%B8%D0%BB%D0%B8%D1%8F + * + * @var array + */ + protected static $femaleNameFormats = [ + '{{lastName}}қызы {{firstNameFemale}}', + ]; + + /** + * @see http://koshpendi.kz/index.php/nomad/imena/ + * + * @var array + */ + protected static $firstNameMale = [ + 'Аылғазы', + 'Әбдіқадыр', + 'Бабағожа', + 'Ғайса', + 'Дәмен', + 'Егізбек', + 'Жазылбек', + 'Зұлпықар', + 'Игісін', + 'Кәдіржан', + 'Қадырқан', + 'Латиф', + 'Мағаз', + 'Нармағамбет', + 'Оңалбай', + 'Өндіріс', + 'Пердебек', + 'Рақат', + 'Сағындық', + 'Танабай', + 'Уайыс', + 'Ұйықбай', + 'Үрімбай', + 'Файзрахман', + 'Хангелді', + 'Шаттық', + 'Ыстамбақы', + 'Ібни', + ]; + + /** + * @see http://koshpendi.kz/index.php/nomad/imena/ + * + * @var array + */ + protected static $firstNameFemale = [ + 'Асылтас', + 'Әужа', + 'Бүлдіршін', + 'Гүлшаш', + 'Ғафура', + 'Ділдә', + 'Еркежан', + 'Жібек', + 'Зылиқа', + 'Ирада', + 'Күнсұлу', + 'Қырмызы', + 'Ләтипа', + 'Мүштәри', + 'Нұршара', + 'Орынша', + 'Өрзия', + 'Перизат', + 'Рухия', + 'Сындыбала', + 'Тұрсынай', + 'Уәсима', + 'Ұрқия', + 'Үрия', + 'Фируза', + 'Хафиза', + 'Шырынгүл', + 'Ырысты', + 'Іңкәр', + ]; + + /** + * @see http://koshpendi.kz/index.php/nomad/imena/ + * @see https://ru.wikipedia.org/wiki/%D0%9A%D0%B0%D0%B7%D0%B0%D1%85%D1%81%D0%BA%D0%B0%D1%8F_%D1%84%D0%B0%D0%BC%D0%B8%D0%BB%D0%B8%D1%8F + * + * @var array + */ + protected static $lastName = [ + 'Адырбай', + 'Әжібай', + 'Байбөрі', + 'Ғизат', + 'Ділдабек', + 'Ешмұхамбет', + 'Жігер', + 'Зікірия', + 'Иса', + 'Кунту', + 'Қыдыр', + 'Лұқпан', + 'Мышырбай', + 'Нысынбай', + 'Ошақбай', + 'Өтетілеу', + 'Пірәлі', + 'Рүстем', + 'Сырмұхамбет', + 'Тілеміс', + 'Уәлі', + 'Ұлықбек', + 'Үстем', + 'Фахир', + 'Хұсайын', + 'Шілдебай', + 'Ыстамбақы', + 'Ісмет', + ]; + + /** + * Note! When calculating individual identification number + * 2000-01-01 - 2000-12-31 counts as 21th century + * 1900-01-01 - 1900-12-31 counts as 20th century + * + * @param int $year + * + * @return int + */ + private static function getCenturyByYear($year) + { + if (($year >= 2100) || ($year < 1800)) { + throw new \InvalidArgumentException('Unexpected century'); + } + + if ($year >= 2000) { + return self::CENTURY_21ST; + } + + if ($year >= 1900) { + return self::CENTURY_20TH; + } + + return self::CENTURY_19TH; + } + + /** + * National Individual Identification Numbers + * + * @see http://egov.kz/wps/portal/Content?contentPath=%2Fegovcontent%2Fcitizen_migration%2Fpassport_id_card%2Farticle%2Fiin_info&lang=en + * @see https://ru.wikipedia.org/wiki/%D0%98%D0%BD%D0%B4%D0%B8%D0%B2%D0%B8%D0%B4%D1%83%D0%B0%D0%BB%D1%8C%D0%BD%D1%8B%D0%B9_%D0%B8%D0%B4%D0%B5%D0%BD%D1%82%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%86%D0%B8%D0%BE%D0%BD%D0%BD%D1%8B%D0%B9_%D0%BD%D0%BE%D0%BC%D0%B5%D1%80 + * + * @param int $gender + * + * @return string 12 digits, like 780322300455 + */ + public static function individualIdentificationNumber(?\DateTime $birthDate = null, $gender = self::GENDER_MALE) + { + if (!$birthDate) { + $birthDate = DateTime::dateTimeBetween(); + } + + do { + $population = self::numberBetween(1000, 2000); + $century = self::getCenturyByYear((int) $birthDate->format('Y')); + + $iin = $birthDate->format('ymd'); + $iin .= (string) self::$genderCenturyMap[$gender][$century]; + $iin .= (string) $population; + $checksum = self::checkSum($iin); + } while ($checksum === 10); + + return $iin . (string) $checksum; + } + + /** + * @param string $iinValue + * + * @return int + */ + public static function checkSum($iinValue) + { + $controlDigit = self::getControlDigit($iinValue, self::$firstSequenceBitWeights); + + if ($controlDigit === 10) { + return self::getControlDigit($iinValue, self::$secondSequenceBitWeights); + } + + return $controlDigit; + } + + /** + * @param string $iinValue + * @param array $sequence + * + * @return int + */ + protected static function getControlDigit($iinValue, $sequence) + { + $sum = 0; + + for ($i = 0; $i <= 10; ++$i) { + $sum += (int) $iinValue[$i] * $sequence[$i]; + } + + return $sum % 11; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/kk_KZ/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/kk_KZ/PhoneNumber.php new file mode 100644 index 0000000..c5d6440 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/kk_KZ/PhoneNumber.php @@ -0,0 +1,16 @@ +generator->parse($format)); + } + + /** + * @example 'kim.kr' + */ + public function domainName() + { + return static::randomElement(static::$lastNameAscii) . '.' . $this->tld(); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/ko_KR/Person.php b/vendor/fakerphp/faker/src/Faker/Provider/ko_KR/Person.php new file mode 100644 index 0000000..71f6175 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/ko_KR/Person.php @@ -0,0 +1,54 @@ +generator->parse($format)); + } + + public function cellPhoneNumber() + { + $format = self::randomElement(array_slice(static::$formats, 6, 1)); + + return self::numerify($this->generator->parse($format)); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/ko_KR/Text.php b/vendor/fakerphp/faker/src/Faker/Provider/ko_KR/Text.php new file mode 100644 index 0000000..8182f89 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/ko_KR/Text.php @@ -0,0 +1,1725 @@ +에 나오는 요귀의 불빛 모양으로 푸르무레 하게 허공을 비추오. 동경의 불바다는 내 마음을 더욱 음침하게 하였소. +이 때에 뒤에서, +"모시모시(여보세요)." +하는 소리가 들렸소. 그것은 흰 저고리를 입은 호텔 보이였소. +"왜?" +하고 나는 고개만 돌렸소. +"손님이 오셨습니다." +"손님?" +하고 나는 보이에게로 한 걸음 가까이 갔소. 나를 찾을 손님이 어디 있나 하고 나는 놀란 것이오. +"따님께서 오셨습니다. 방으로 모셨습니다." +하고 보이는 들어가 버리고 말았소. +"따님?" +하고 나는 더욱 놀랐소. 순임이가 서울서 나를 따라왔나? 그것은 안 될 말이오. 순임이가 내 뒤를 따라 떠났더라도 아무리 빨리 와도 내일이 아니면 못 왔을 것이오. 그러면 누군가. 정임인가. 정임이가 병원에서 뛰어온 것인가. +나는 두근거리는 가슴을 억지로 진정하면서 내 방문을 열었소. +그것은 정임이었소. 정임은 내가 쓰다가 둔 편지를 보고 있다가 벌떡 일어나 내게 달려들어 안겨 버렸소. 나는 얼빠진 듯이 정임이가 하라는 대로 내버려두었소. 그 편지는 부치려고 쓴 것도 아닌데 그 편지를 정임이가 본 것이 안되었다고 생각하였소. +형! 나를 책망하시오. 심히 부끄러운 말이지마는 나는 정임을 힘껏 껴안아 주고 싶었소. 나는 몇 번이나 정임의 등을 굽어 보면서 내 팔에 힘을 넣으려고 하였소. 정임은 심히 귀여웠소. 정임이가 그처럼 나를 사모하는 것이 심히 기뻤소. 나는 감정이 재우쳐서 눈이 안 보이고 정신이 몽롱하여짐을 깨달았소. 나는 아프고 쓰린 듯한 기쁨을 깨달았소. 영어로 엑스터시라든지, 한문으로 무아의 경지란 이런 것이 아닌가 하였소. 나는 사십 평생에 이러한 경험을 처음 한 것이오. +형! 형이 아시다시피 나는 내 아내 이외에 젊은 여성에게 이렇게 안겨 본 일이 없소. 물론 안아 본 일도 없소. +그러나 형! 나는 나를 눌렀소. 내 타오르는 애욕을 차디찬 이지의 입김으로 불어서 끄려고 애를 썼소. +"글쎄 웬일이냐. 앓는 것이 이 밤중에 비를 맞고 왜 나온단 말이냐. 철없는 것 같으니." +하고 나는 아버지의 위엄으로 정임의 두 어깨를 붙들어 암체어에 앉혔소. 그리고 나도 테이블을 하나 세워 두고 맞은편에 앉았소. +정임은 부끄러운 듯이 두 손으로 낯을 가리우고 제 무릎에 엎드려 울기를 시작하오. +정임은 누런 갈색의 외투를 입었소. 무엇을 타고 왔는지 모르지마는 구두에는 꽤 많이 물이 묻고 모자에는 빗방울 얼룩이 보이오. +"네가 이러다가 다시 병이 더치면 어찌한단 말이냐. 아이가 왜 그렇게 철이 없니?" +하고 나는 더욱 냉정한 어조로 책망하고 데스크 위에 놓인 내 편지 초를 집어 박박 찢어 버렸소. 종이 찢는 소리에 정임은 잠깐 고개를 들어서 처음에는 내 손을 보고 다음에는 내 얼굴을 보았소. 그러나 나는 모르는 체하고 도로 교의에 돌아와 앉아서 가만히 눈을 감았소. 그리고 도무지 흥분되지 아니한 모양을 꾸몄소. +형! 어떻게나 힘드는 일이오? 참으면 참을수록 내 이빨이 마주 부딪고, 얼굴의 근육은 씰룩거리고 손은 불끈불끈 쥐어지오. +"정말 내일 가세요?" +하고 아마 오 분 동안이나 침묵을 지키다가 정임이가 고개를 들고 물었소. +"그럼, 가야지." +하고 나는 빙그레 웃어 보였소. +"저도 데리고 가세요!" +하는 정임의 말은 마치 서릿발이 날리는 칼날과 같았소. 나는 깜짝 놀라서 정임을 바라보았소. 그의 눈은 빛나고 입은 꼭 다물고 얼굴의 근육은 팽팽하게 켕겼소. 정임의 얼굴에는 찬바람이 도는 무서운 기운이 있었소. +나는 즉각적으로 죽기를 결심한 여자의 모양이라고 생각하였소. 열정으로 불덩어리가 되었던 정임은 내가 보이는 냉랭한 태도로 말미암아 갑자기 얼어 버린 것 같았소. +"어디를?" +하고 나는 정임의 `저도 데리고 가세요.' 하는 담대한 말에 놀라면서 물었소. +"어디든지, 아버지 가시는 데면 어디든지 저를 데리고 가세요. 저는 아버지를 떠나서는 혼자서는 못 살 것을 지나간 반 달 동안에 잘 알았습니다. 아까 아버지 오셨다 가신 뒤에 생각해 보니깐 암만해도 아버지는 다시 저에게 와 보시지 아니하고 가실 것만 같애요. 그리고 저로 해서 아버지께서는 무슨 큰 타격을 당하신 것만 같으셔요. 처음 뵈올 적에 벌써 가슴이 뜨끔했습니다. 그리고 여행을 떠나신다는 말씀을 듣고는 반드시 무슨 큰일이 나셨느니라고만 생각했습니다. 그리고 저어, 저로 해서 그러신 것만 같고, 저를 버리시고 혼자 가시려는 것만 같고, 그래서 달려왔더니 여기 써 놓으신 편지를 보고 그 편지에 다른 말씀은 어찌 됐든지, 네 일기를 보았다 하신 말씀을 보고는 다 알았습니다. 저와 한 방에 있는 애가 암만해도 어머니 스파인가봐요. 제가 입원하기 전에도 제 눈치를 슬슬 보고 또 책상 서랍도 뒤지는 눈치가 보이길래 일기책은 늘 쇠 잠그는 서랍에 넣어 두었는데 아마 제가 정신 없이 앓고 누웠는 동안에 제 핸드백에서 쇳대를 훔쳐 갔던가봐요. 그래서는 그 일기책을 꺼내서 서울로 보냈나봐요. 그걸루 해서 아버지께서는 불명예스러운 누명을 쓰시고 학교일도 내놓으시게 되고 집도 떠나시게 되셨나봐요. 다시는 집에 안 돌아오실 양으로 결심을 하셨나봐요. 아까 병원에서도 하시는 말씀이 모두 유언하시는 것만 같아서 퍽 의심을 가졌었는데 지금 그 쓰시던 편지를 보고는 다 알았습니다. 그렇지만 그렇지만." +하고 웅변으로 내려 말하던 정임은 갑자기 복받치는 열정을 이기지 못하는 듯이, 한 번 한숨을 지우고, +"그렇지만 저는 아버지를 따라가요. 절루 해서 아버지께서는 집도 잃으시고 명예도 잃으시고 사업도 잃으시고 인생의 모든 것을 다 잃으셨으니 저는 아버지를 따라가요. 어디를 가시든지 저는 어린 딸로 아버지를 따라다니다가 아버지께서 먼저 돌아가시면 저도 따라 죽어서 아버지 발 밑에 묻힐 테야요. 제가 먼저 죽거든 제가 병이 있으니깐 물론 제가 먼저 죽지요. 죽어도 좋습니다. 병원에서 앓다가 혼자 죽는 건 싫어요. 아버지 곁에서 죽으면 아버지께서, 오 내 딸 정임아 하시고 귀해 주시고 불쌍히 여겨 주시겠지요. 그리고 제 몸을 어디든지 땅에 묻으시고 `사랑하는 내 딸 정임의 무덤'이라고 패라도 손수 쓰셔서 세워 주시지 않겠습니까." +하고 정임은 비쭉비쭉하다가 그만 무릎 위에 엎더져 울고 마오. +나는 다만 죽은 사람 모양으로 반쯤 눈을 감고 앉아 있었소. 가슴 속에는 정임의 곁에서 지지 않는 열정을 품으면서도 정임의 말대로 정임을 데리고 아무도 모르는 곳으로 가 버리고 싶으면서도 나는 이 열정의 불길을 내 입김으로 꺼 버리지 아니하면 아니 되는 것이었소. +"아아, 제가 왜 났어요? 왜 하나님께서 저를 세상에 보내셨어요? 아버지의 일생을 파멸시키려 난 것이지요? 제가 지금 죽어 버려서 아버지의 명예를 회복할 수 있다면 저는 죽어 버릴 터이야요. 기쁘게 죽어 버리겠습니다. 제가 여덟 살부터 오늘날까지 받은 은혜를 제 목숨 하나로 갚을 수가 있다면 저는 지금으로 죽어 버리겠습니다. 그렇지만 그렇지만……. +그렇지만 그렇지만 저는 다만 얼마라도 다만 하루라도 아버지 곁에서 살고 싶어요 다만 하루만이라도, 아버지! 제가 왜 이렇습니까, 네? 제가 어려서 이렇습니까. 미친 년이 되어서 이렇습니까. 아버지께서는 아실 테니 말씀해 주세요. 하루만이라도 아버지를 모시고 아버지 곁에서 살았으면 죽어도 한이 없겠습니다. 제 생각이 잘못이야요? 제 생각이 죄야요? 왜 죄입니까? 아버지, 저를 버리시고 혼자 가시지 마세요, 네? `정임아, 너를 데리고 가마.' 하고 약속해 주세요, 네." +정임은 아주 담대하게 제가 하고자 하는 말을 다 하오. 그 얌전한, 수삽한정임의 속에 어디 그러한 용기가 있었던가, 참 이상한 일이오. 나는 귀여운 어린 계집애 정임의 속에 엉큼한 여자가 들어앉은 것을 발견하였소. 그가 몇 가지 재료(내가 여행을 떠난다는 것과 제 일기를 보았다는 것)를 종합하여 나와 저와의 새에, 또 그 때문에 어떠한 일이 일어난 것을 추측하는 그 상상력도 놀랍거니와 그렇게 내 앞에서는 별로 입도 벌리지 아니하던 그가 이처럼 담대하게 제 속에 있는 말을 거리낌없이 다 해 버리는 용기를 아니 놀랄 수 없었소. 내가, 사내요 어른인 내가 도리어 정임에게 리드를 받고 놀림을 받음을 깨달았소. +그러나 정임을 위해서든지, 중년 남자의 위신을 위해서든지 나는 의지력으로, 도덕력으로, 정임을 누르고 훈계하지 아니하면 아니 되겠다고 생각하였소. +"정임아." +하고 나는 비로소 입을 열어서 불렀소. 내 어성은 장중하였소. 나는 할 수 있는 위엄을 다하여 `정임아.' 하고 부른 것이오. +"정임아, 네 속은 다 알았다. 네 마음 네 뜻은 그만하면 다 알았다. 네가 나를 그처럼 생각해 주는 것을 고맙게 생각한다. 기쁘게도 생각한다. 그러나 정임아." +하고 나는 일층 태도와 소리를 엄숙하게 하여, +"네가 청하는 말은 절대로 들을 수 없는 말이다. 내가 너를 친딸같이 사랑하기 때문에 나는 너를 데리고 가지 못하는 것이다. 나는 세상에서 죽고 조선에서 죽더라도 너는 죽어서 아니 된다. 차마 너까지는 죽이고 싶지 아니하단 말이다. 내가 어디 가서 없어져 버리면 세상은 네게 씌운 누명이 애매한 줄을 알게 될 것이 아니냐. 그리되면 너는 조선의 좋은 일꾼이 되어서 일도 많이 하고 또 사랑하는 남편을 맞아서 행복된 생활도 할 수 있을 것이 아니냐. 그것이 내가 네게 바라는 것이다. 내가 어디 가 있든지, 내가 살아 있는 동안 나는 네가 잘되는 것만, 행복되게 사는 것만 바라보고 혼자 기뻐할 것이 아니냐. +네가 다 옳게 알았다. 나는 네 말대로 조선을 영원히 떠나기로 하였다. 그렇지마는 나는 이렇게 된 것을 조금도 슬퍼하지 아니한다. 너를 위해서 내가 무슨 희생을 한다고 하면 내게는 그것이 큰 기쁨이다. 그뿐 아니라, 나는 인제는 세상이 싫어졌다. 더 살기가 싫어졌다. 내가 십여 년 동안 전생명을 바쳐서 교육한 학생들에게까지 배척을 받을 때에는 나는 지금까지 살아온 것을 생각만 하여도 진저리가 난다. 그렇지마는 나는 이것이 다 내가 부족한 때문인 줄을 잘 안다. 나는 조선을 원망한다든가, 내 동포를 원망한다든가, 그럴 생각은 없다. 원망을 한다면 나 자신의 부족을 원망할 뿐이다. 내가 원체 교육을 한다든지 남의 지도자가 된다든지 할 자격이 없음을 원망한다면 원망할까, 내가 어떻게 조선이나 조선 사람을 원망하느냐. 그러니까 인제 내게 남은 일은 나를 조선에서 없애 버리는 것이다. 감히 십여 년 간 교육가라고 자처해 오던 거짓되고 외람된 생활을 끊어 버리는 것이다. 남편 노릇도 못 하고 아버지 노릇도 못 하는 사람이 남의 스승은 어떻게 되고 지도자는 어떻게 되느냐. 하니까 나는 이제 세상을 떠나 버리는 것이 조금도 슬프지 아니하고 도리어 몸이 가뜬하고 유쾌해지는 것 같다. +오직 하나 마음에 걸리는 것은 내 선배요 사랑하는 동지이던 남 선생의 유일한 혈육이던 네게다가 누명을 씌우고 가는 것이다." +"그게 어디 아버지 잘못입니까?" +하고 정임은 입술을 깨물었소. +"모두 제가 철이 없어서 저 때문에……." +하고 정임은 몸을 떨고 울었소. +"아니! 그렇게 생각하지 마라. 내가 지금 세상을 버릴 때에 무슨 기쁨이 한 가지 남는 것이 있다고 하면 너 하나가, 이 세상에서 오직 너 하나가 나를 따라 주는 것이다. 아마 너도 나를 잘못 알고 따라 주는 것이겠지마는 세상이 다 나를 버리고, 처자까지도 다 나를 버릴 때에 오직 너 하나가 나를 소중히 알아 주니 어찌 고맙지 않겠느냐. 그러니까 정임아 너는 몸을 조심하여서 건강을 회복하여서 오래 잘 살고, 그리고 나를 생각해 다오." +하고 나도 울었소. +형! 내가 정임에게 이런 말을 한 것이 잘못이지요. 그러나 나는 그 때에 이런 말을 아니 할 수 없었소. 왜 그런고 하니, 그것이 내 진정이니까. 나도 학교 선생으로, 교장으로, 또 주제넘게 지사로의 일생을 보내노라고 마치 오직 얼음 같은 의지력만 가진 사람 모양으로 사십 평생을 살아 왔지마는 내 속에도 열정은 있었던 것이오. 다만 그 열정을 누르고 죽이고 있었을 뿐이오. 물론 나는 아마 일생에 이 열정의 고삐를 놓아 줄 날이 없겠지요. 만일 내가 이 열정의 고삐를 놓아서 자유로 달리게 한다고 하면 나는 이 경우에 정임을 안고, 내 열정으로 정임을 태워 버렸을는지도 모르오. 그러나 나는 정임이가 열정으로 탈수록 나는 내 열정의 고삐를 두 손으로 꽉 붙들고 이를 악물고 매달릴 결심을 한 것이오. +열한 시! +"정임아. 인제 병원으로 가거라." +하고 나는 엄연하게 명령하였소. +"내일 저를 보시고 떠나시지요?" +하고 정임은 눈물을 씻고 물었소. +"그럼, J조교수도 만나고 너도 보고 떠나지." +하고 나는 거짓말을 하였소. 이 경우에 내가 거짓말쟁이라는 큰 죄인이 되는 것이 정임에게 대하여 정임을 위하여 가장 옳은 일이라고 생각한 까닭이오. +정임은, 무서운 직각력과 상상력을 가진 정임은 내 말의 진실성을 의심하는 듯이 나를 뚫어지게 바라보았소. 나는 차마 정임의 시선을 마주 보지 못하여 외면하여 버렸소. +정임은 수건으로 눈물을 씻고 체경 앞에 가서 화장을 고치고 그리고, +"저는 가요." +하고 내 앞에 허리를 굽혀서 작별 인사를 하였소. +"오, 가 자거라." +하고 나는 극히 범연하게 대답하였소. 나는 자리옷을 입었기 때문에 현관까지 작별할 수도 없어서 보이를 불러 자동차를 하나 준비하라고 명하고 내 방에서 작별할 생각을 하였소. +"내일 병원에 오세요?" +하고 정임은 고개를 숙이고 낙루하였소. +"오, 가마." +하고 나는 또 거짓말을 하였소. 세상을 버리기로 결심한 사람의 거짓말은 하나님께서도 용서하시겠지요. 설사 내가 거짓말을 한 죄로 지옥에 간다 하더라도 이 경우에 정임을 위하여 거짓말을 아니 할 수가 없지 않소? 내가 거짓말을 아니 하면 정임은 아니 갈 것이 분명하였소. +"전 가요." +하고 정임은 또 한 번 절을 하였으나 소리를 내어서 울었소. +"울지 마라! 몸 상한다." +하고 나는 정임에게 대한 최후의 친절을 정임의 곁에 한 걸음 가까이 가서 어깨를 또닥또닥하여 주고, 외투를 입혀 주었소. +"안녕히 주무세요." +하고 정임은 문을 열고 나가 버렸소. +정임의 걸어가는 소리가 차차 멀어졌소. +나는 얼빠진 사람 모양으로 그 자리에 우두커니 서 있었소. +창에 부딪히는 빗발 소리가 들리고 자동차 소리가 먼 나라에서 오는 것같이 들리오. 이것이 정임이가 타고 가는 자동차 소리인가. 나는 정임을 따라가서 붙들어 오고 싶었소. 내 몸과 마음은 정임을 따라서 허공에 떠가는 것 같았소. +아아 이렇게 나는 정임을 곁에 두고 싶을까. 이렇게 내가 정임의 곁에 있고 싶을까. 그러하건마는 나는 정임을 떼어 버리고 가지 아니하면 아니 된다! 그것은 애끓는 일이다. 기막히는 일이다! 그러나 내 도덕적 책임은 엄정하게 그렇게 명령하지 않느냐. 나는 이 도덕적 책임의 명령 그것은 더위가 없는 명령이다 을 털끝만치라도 휘어서는 아니 된다. +그러나 정임이가 호텔 현관까지 자동차를 타기 전에 한 번만 더 바라보는 것도 못 할 일일까. 한 번만, 잠깐만 더 바라보는 것도 못 할 일일까. 잠깐만 일 분만 아니 일 초만 한 시그마라는 극히 짧은 동안만 바라보는 것도 못 할 일일까. 아니, 정임을 한 시그마 동안만 더 보고 싶다 나는 이렇게 생각하고 벌떡 일어나서 도어의 핸들에 손을 대었소. +`안 된다! 옳잖다!' +하고 나는 내 소파에 돌아와서 털썩 몸을 던졌소. +`최후의 순간이 아니냐. 최후의 순간에 용감히 이겨야 할 것이 아니냐. 아서라! 아서라!' +하고 나는 혼자 주먹을 불끈불끈 쥐었소. +이 때에 짜박짜박 하고 걸어오는 소리가 들리오. 내 가슴은 쌍방망이로 두들기는 것같이 뛰었소. +`설마 정임일까.' +하면서도 나는 숨을 죽이고 귀를 기울였소. +그 발자국 소리는 분명 내 문 밖에 와서 그쳤소. 그리고는 소리가 없었소. +`내 귀의 환각인가.' +하고 나는 한숨을 내쉬었소. +그러나 다음 순간 또 두어 번 문을 두드리는 소리가 들렸소. +"이에스." +하고 나는 대답하고 문을 바라보았소. +문이 열렸소. +들어오는 이는 정임이었소. +"웬일이냐." +하고 나는 엄숙한 태도를 지었소. 그것으로 일 초의 일천분지 일이라도 다시 한 번 보고 싶던 정임을 보고 기쁨을 카무플라주한 것이오. +정임은 서슴지 않고 내 뒤에 와서 내 교의에 몸을 기대며, +"암만해도 오늘이 마지막인 것만 같아서, 다시 뵈올 기약은 없는 것만 같아서 가다가 도로 왔습니다. 한 번만 더 뵙고 갈 양으로요. 그래 도로 와서도 들어올까 말까 하고 주저주저하다가 이것이 마지막인데 하고 용기를 내어서 들어왔습니다. 내일 저를 보시고 가신다는 것이 부러 하신 말씀만 같고, 마지막 뵈옵고, 뵈온대도 그래도 한 번 더 뵈옵기만 해도……." +하고 정임의 말은 끝을 아물지 못하였소. 그는 내 등 뒤에 서 있기 때문에 그가 어떠한 표정을 하고 있는지는 볼 수가 없었소. 나는 다만 아버지의 위엄으로 정면을 바라보고 있었을 뿐이오. +`정임아, 나도 네가 보고 싶었다. 네 뒤를 따라가고 싶었다. 내 몸과 마음은 네 뒤를 따라서 허공으로 날았다. 나는 너를 한 초라도 한 초의 천분지 일 동안이라도 한 번 더 보고 싶었다. 정임아, 내 진정은 너를 언제든지 내 곁에 두고 싶다. 정임아, 지금 내 생명이 가진 것은 오직 너뿐이다.' +이런 말이라도 하고 싶었소. 그러나 이런 말을 하여서는 아니 되오! 만일 내가 이런 말을 하여 준다면 정임이가 기뻐하겠지요. 그러나 나는 정임이에게 이런 기쁨을 주어서는 아니 되오! +나는 어디까지든지 아버지의 위엄, 아버지의 냉정함을 아니 지켜서는 아니 되오. +그렇지마는 내 가슴에 타오르는 이름지을 수 없는 열정의 불길은 내 이성과 의지력을 태워 버리려 하오. 나는 눈이 아뜩아뜩함을 깨닫소. 나는 내 생명의 불길이 깜박깜박함을 깨닫소. +그렇지마는! 아아 그렇지마는 나는 이 도덕적 책임의 무상 명령의 발령자인 쓴 잔을 마시지 아니하여서는 아니 되는 것이오. +`산! 바위!' +나는 정신을 가다듬어서 이것을 염하였소. +그러나 열정의 파도가 치는 곳에 산은 움직이지 아니하오? 바위는 흔들리지 아니하오? 태산과 반석이 그 흰 불길에 타서 재가 되지는 아니하오? 인생의 모든 힘 가운데 열정보다 더 폭력적인 것이 어디 있소? 아마도 우주의 모든 힘 가운데 사람의 열정과 같이 폭력적, 불가항력적인 것은 없으리라. 뇌성, 벽력, 글쎄 그것에나 비길까. 차라리 천체와 천체가 수학적으로 계산할 수 없는 비상한 속력을 가지고 마주 달려들어서 우리의 귀로 들을 수 없는 큰 소리와 우리가 굳다고 일컫는 금강석이라도 증기를 만들고야 말 만한 열을 발하는 충돌의 순간에나 비길까. 형. 사람이라는 존재가 우주의 모든 존재 중에 가장 비상한 존재인 것 모양으로 사람의 열정의 힘은 우주의 모든 신비한 힘 가운데 가장 신비한 힘이 아니겠소? 대체 우주의 모든 힘은 그것이 아무리 큰 힘이라고 하더라도 저 자신을 깨뜨리는 것은 없소. 그렇지마는 사람이라는 존재의 열정은 능히 제 생명을 깨뜨려 가루를 만들고 제 생명을 살라서 소지를 올리지 아니하오? 여보, 대체 이에서 더 폭력이요, 신비적인 것이 어디 있단 말이오. +이 때 내 상태, 어깨 뒤에서 열정으로 타고 섰는 정임을 느끼는 내 상태는 바야흐로 대폭발, 대충돌을 기다리는 아슬아슬한 때가 아니었소. 만일 조금만이라도 내가 내 열정의 고삐에 늦춤을 준다고 하면 무서운 대폭발이 일어났을 것이오. +"정임아!" +하고 나는 충분히 마음을 진정해 가지고 고개를 옆으로 돌려 정임의 얼굴을 찾았소. +"네에." +하고 정임은 입을 약간 내 귀 가까이로 가져와서 그 씨근거리는 소리가 분명히 내 귀에 들리고 그 후끈후끈하는 뜨거운 입김이 내 목과 뺨에 감각되었소. +억지로 진정하였던 내 가슴은 다시 설레기를 시작하였소. 그 불규칙한 숨소리와 뜨거운 입김 때문이었을까. +"시간 늦는다. 어서 가거라. 이 아버지는 언제까지든지 너를 사랑하는 딸 로 소중히 소중히 가슴에 품고 있으마. 또 후일에 다시 만날 때도 있을지 아느냐. 설사 다시 만날 때가 없다기로니 그것이 무엇이 그리 대수냐. 나이 많은 사람은 먼저 죽고 젊은 사람은 오래 살아서 인생의 일을 많이 하는 것이 순서가 아니냐. 너는 몸이 아직 약하니 마음을 잘 안정해서 어서 건강을 회복하여라. 그리고 굳세게 굳세게, 힘있게 힘있게 살아 다오. 조선은 사람을 구한다. 나 같은 사람은 인제 조선서 더 일할 자격을 잃어버린 사람이지마는 네야 어떠냐. 설사 누가 무슨 말을 해서 학교에서 학비를 아니 준다거든 내가 네게 준 재산을 가지고 네 마음대로 공부를 하려무나. 네가 그렇게 해 주어야 나를 위하는 것이다. 자 인제 가거라. 네 앞길이 양양하지 아니하냐. 자 인제 가거라. 나는 내일 아침 동경을 떠날란다. 자 어서." +하고 나는 화평하게 웃는 낯으로 일어섰소. +정임은 울먹울먹하고 고개를 숙이오. +밖에서는 바람이 점점 강해져서 소리를 하고 유리창을 흔드오. +"그럼, 전 가요." +하고 정임은 고개를 들었소. +"그래. 어서 가거라. 벌써 열한시 반이다. 병원 문은 아니 닫니!" +정임은 대답이 없소. +"어서!" +하고 나는 보이를 불러 자동차를 하나 준비하라고 일렀소. +"갈랍니다." +하고 정임은 고개를 숙여서 내게 인사를 하고 문을 향하여 한 걸음 걷다가 잠깐 주저하더니, 다시 돌아서서, +"저를 한 번만 안아 주셔요. 아버지가 어린 딸을 안듯이 한 번만 안아 주셔요." +하고 내 앞으로 가까이 와 서오. +나는 팔을 벌려 주었소. 정임은 내 가슴을 향하고 몸을 던졌소. 그리고 제 이뺨 저뺨을 내 가슴에 대고 비볐소. 나는 두 팔을 정임의 어깨 위에 가벼이 놓았소. +이러한 지 몇 분이 지났소. 아마 일 분도 다 못 되었는지 모르오. +정임은 내 가슴에서 고개를 들어 나를 뚫어지게 우러러보더니, 다시 내 가슴에 낯을 대더니 아마 내 심장이 무섭게 뛰는 소리를 정임은 들었을 것이오 정임은 다시 고개를 들고, +"어디를 가시든지 편지나 주셔요." +하고 굵은 눈물을 떨구고는 내게서 물러서서 또 한 번 절하고, +"안녕히 가셔요. 만주든지 아령이든지 조선 사람 많이 사는 곳에 가셔서 일하고 사셔요. 돌아가실 생각은 마셔요. 제가, 아버지 말씀대로 혼자 떨어져 있으니 아버지도 제 말씀대로 돌아가실 생각은 마셔요, 네, 그렇다고 대답하셔요!" +하고는 또 한 번 내 가슴에 몸을 기대오. +죽기를 결심한 나는 `오냐, 그러마.' 하는 대답을 할 수는 없었소. 그래서, +"오, 내 살도록 힘쓰마." +하는 약속을 주어서 정임을 돌려보냈소. +정임의 발자국 소리가 안 들리게 된 때에 나는 빠른 걸음으로 옥상 정원으로 나갔소. 비가 막 뿌리오. +나는 정임이가 타고 나가는 자동차라도 볼 양으로 호텔 현관 앞이 보이는 꼭대기로 올라갔소. 현관을 떠난 자동차 하나가 전찻길로 나서서는 북을 향하고 달아나서 순식간에 그 꽁무니에 달린 붉은 불조차 스러져 버리고 말았소. +나는 미친 사람 모양으로, +"정임아, 정임아!" +하고 수없이 불렀소. 나는 사 층이나 되는 이 꼭대기에서 뛰어내려서 정임이가 타고 간 자동차의 뒤를 따르고 싶었소. +"아아 영원한 인생의 이별!" +나는 그 옥상에 얼마나 오래 섰던지를 모르오. 내 머리와 낯과 배스로브에서는 물이 흐르오. 방에 들어오니 정임이가 끼치고 간 향기와 추억만 남았소. +나는 방 안 구석구석에 정임의 모양이 보이는 것을 깨달았소. 특별히 정임이가 고개를 숙이고 서 있던 내 교의 뒤에는 분명히 갈색 외투를 입은 정임의 모양이 완연하오. +"정임아!" +하고 나는 그 곳으로 따라가오. 그러나 가면 거기는 정임은 없소. +나는 교의에 앉소. 그러면 정임의 씨근씨근하는 숨소리와 더운 입김이 분명 내 오른편에 감각이 되오. 아아 무서운 환각이여! +나는 자리에 눕소. 그리고 정임의 환각을 피하려고 불을 끄오. 그러면 정임이가 내게 안기던 자리쯤에 환하게 정임의 모양이 나타나오. +나는 불을 켜오. 또 불을 끄오. +날이 밝자 나는 비가 갠 것을 다행으로 비행장에 달려가서 비행기를 얻어 탔소. +나는 다시 조선의 하늘을 통과하기가 싫어서 북강에서 비행기에서 내려서 문사에 와서 대련으로 가는 배를 탔소. +나는 대련에서 내려서 하룻밤을 여관에서 자고는 곧 장춘 가는 급행을 탔소. 물론 아무에게도 엽서 한 장 한 일 없었소. 그것은 인연을 끊은 세상에 대하여 연연한 마음을 가지는 것을 부끄럽게 생각한 까닭이오. +차가 옛날에는 우리 조상네가 살고 문화를 짓던 옛 터전인 만주의 벌판을 달릴 때에는 감회도 없지 아니하였소. 그러나 나는 지금 그런 한가한 감상을 쓸 겨를이 없소. +내가 믿고 가는 곳은 하얼빈에 있는 어떤 친구요. 그는 R라는 사람으로서 경술년에 A씨 등의 망명객을 따라 나갔다가 아라사에서 무관 학교를 졸업하고 아라사 사관으로서 구주 대전에도 출정을 하였다가, 혁명 후에도 이내 적위군에 머물러서 지금까지 소비에트 장교로 있는 사람이오. 지금은 육군 소장이라던가. +나는 하얼빈에 그 사람을 찾아가는 것이오. 그 사람을 찾아야 아라사에 들어갈 여행권을 얻을 것이요, 여행권을 얻어야 내가 평소에 이상하게도 그리워하던 바이칼 호를 볼 것이오. +하얼빈에 내린 것은 해가 뉘엿뉘엿 넘어가는 석양이었소. +나는 안중근이 이등박문(伊藤博文:이토 히로부미)을 쏜 곳이 어딘가 하고 벌판과 같이 넓은 플랫폼에 내렸소. 과연 국제 도시라 서양 사람, 중국 사람, 일본 사람이 각기 제 말로 지껄이오. 아아 조선 사람도 있을 것이오마는 다들 양복을 입거나 청복을 입거나 하고 또 사람이 많은 곳에서는 말도 잘 하지 아니하여 아무쪼록 조선 사람인 것을 표시하지 아니하는 판이라 그 골격과 표정을 살피기 전에는 어느 것이 조선 사람인지 알 길이 없소. 아마 허름하게 차리고 기운 없이, 비창한 빛을 띠고 사람의 눈을 슬슬 피하는 저 순하게 생긴 사람들이 조선 사람이겠지요. 언제나 한 번 가는 곳마다 동양이든지, 서양이든지, +`나는 조선 사람이오!' +하고 뽐내고 다닐 날이 있을까 하면 눈물이 나오. 더구나, 하얼빈과 같은 각색 인종이 모여서 생존 경쟁을 하는 마당에 서서 이런 비감이 간절하오. 아아 이 불쌍한 유랑의 무리 중에 나도 하나를 더 보태는가 하면 눈물을 씻지 아니할 수 없었소. +나는 역에서 나와서 어떤 아라사 병정 하나를 붙들고 R의 아라사 이름을 불렀소. 그리고 아느냐고 영어로 물었소. +그 병정은 내 말을 잘못 알아들었는지, 또는 R를 모르는지 무엇이라고 아라사말로 지껄이는 모양이나 나는 물론 그것을 알아들을 수가 없었소. 그러나 나는 그 병정의 표정에서 내게 호의를 가진 것을 짐작하고 한 번 더 분명히, +"요십 알렉산드로비치 리가이." +라고 불러 보았소. +그 병정은 빙그레 웃고 고개를 흔드오. 이 두 외국 사람의 이상한 교섭에 흥미를 가지고 여러 아라사 병정과 동양 사람들이 십여 인이나 우리 주위에 모여드오. +그 병정이 나를 바라보고 또 한 번 그 이름을 불러 보라는 모양 같기로 나는 이번에는 R의 아라사 이름에 `제너럴'이라는 말을 붙여 불러 보았소. +그랬더니 어떤 다른 병정이 뛰어들며, +"게네라우 리가이!" +하고 안다는 표정을 하오. `게네라우'라는 것이 아마 아라사말로 장군이란 말인가 하였소. +"예스. 예스." +하고 나는 기쁘게 대답하였소. 그리고는 아라사 병정들끼리 무에라고 지껄이더니, 그 중에 한 병정이 나서면서 고개를 끄덕끄덕하고, 제가 마차 하나를 불러서 나를 태우고 저도 타고 어디로 달려가오. +그 아라사 병정은 친절히 알지도 못하는 말로 이것저것을 가리키면서 설명을 하더니 내가 못 알아듣는 줄을 생각하고 내 어깨를 툭 치고 웃소. 어린애와 같이 순한 사람들이구나 하고 나는 고맙다는 표로 고개만 끄덕끄덕하였소. +어디로 어떻게 가는지 서양 시가로 달려가다가 어떤 큰 저택 앞에 이르러서 마차를 그 현관 앞으로 들이몰았소. +현관에서는 종졸이 나왔소. 내가 명함을 들여보냈더니 부관인 듯한 아라사 장교가 나와서 나를 으리으리한 응접실로 인도하였소. 얼마 있노라니 중년이 넘은 어떤 대장이 나오는데 군복에 칼끈만 늘였소. +"이게 누구요." +하고 그 대장은 달려들어서 나를 껴안았소. 이십오 년 만에 만나는 우리는 서로 알아본 것이오. +이윽고 나는 그의 부인과 자녀들도 만났소. 그들은 다 아라사 사람이오. +저녁이 끝난 뒤에 나는 R의 부인과 딸의 음악과 그림 구경과 기타의 관대를 받고 단둘이 이야기할 기회를 얻었소. 경술년 당시 이야기도 나오고, A씨의 이야기도 나오고, R의 신세 타령도 나오고, 내 이십오 년 간의 생활 이야기도 나오고, 소비에트 혁명 이야기도 나오고, 하얼빈 이야기도 나오고, 우리네가 어려서 서로 사귀던 회구담도 나오고 이야기가 그칠 바를 몰랐소. "조선은 그립지 않은가." +하는 내 말에 쾌활하던 R는 고개를 숙이고 추연한 빛을 보였소. +나는 R의 추연한 태도를 아마 고국을 그리워하는 것으로만 여겼소. 그래서 나는 그리 침음하는 것을 보고, +"얼마나 고국이 그립겠나. 나는 고국을 떠난 지가 일 주일도 안 되건마는 못 견디게 그리운데." +하고 동정하는 말을 하였소. +했더니, 이 말 보시오. 그는 침음을 깨뜨리고 고개를 번쩍 들며, +"아니! 나는 고국이 조금도 그립지 아니하이. 내가 지금 생각한 것은 자네 말을 듣고 고국이 그리운가 그리워할 것이 있는가를 생각해 본 것일세. 그랬더니 아무리 생각하여도 나는 고국이 그립다는 생각을 가질 수가 없어. 그야 어려서 자라날 때에 보던 강산이라든지 내 기억에 남은 아는 사람들이라든지, 보고 싶다 하는 생각도 없지 아니하지마는 그것이 고국이 그리운 것이라고 할 수가 있을까. 그 밖에는 나는 아무리 생각하여도 고국이 그리운 것을 찾을 길이 없네. 나도 지금 자네를 보고 또 자네 말을 듣고 오래 잊어버렸던 고국을 좀 그립게, 그립다 하게 생각하려고 해 보았지마는 도무지 나는 고국이 그립다는 생각이 나지 않네." +이 말에 나는 깜짝 놀랐소. 몸서리치게 무서웠소. 나는 해외에 오래 표랑하는 사람은 으레 고국을 그리워할 것으로 믿고 있었소. 그런데 이 사람이, 일찍은 고국을 사랑하여 목숨까지도 바치려던 이 사람이 도무지 이처럼 고국을 잊어버린다는 것은 놀라운 정도를 지나서 괘씸하기 그지없었소. 나도 비록 조선을 떠난다고, 영원히 버린다고 나서기는 했지마는 나로는 죽기 전에는 아니 비록 죽더라도 잊어버리지 못할 고국을 잊어버린 R의 심사가 난측하고 원망스러웠소. +"고국이 그립지가 않아?" +하고 R에게 묻는 내 어성에는 격분한 빛이 있었소. +"이상하게 생각하시겠지. 하지만 고국에 무슨 그리울 것이 있단 말인가. 그 빈대 끓는 오막살이가 그립단 말인가. 나무 한 개 없는 산이 그립단 말인가. 물보다도 모래가 많은 다 늙어빠진 개천이 그립단 말인가. 그 무기력하고 가난한, 시기 많고 싸우고 하는 그 백성을 그리워한단 말인가. 그렇지 아니하면 무슨 그리워할 음악이 있단 말인가, 미술이 있단 말인가, 문학이 있단 말인가, 사상이 있단 말인가, 사모할 만한 인물이 있단 말인가! 날더러 고국의 무엇을 그리워하란 말인가. 나는 조국이 없는 사람일세. 내가 소비에트 군인으로 있으니 소비에트가 내 조국이겠지. 그러나 진심으로 내 조국이라는 생각은 나지 아니하네." +하고 저녁 먹을 때에 약간 붉었던 R의 얼굴은 이상한 흥분으로 더욱 붉어지오.유 정유 정 +R는 먹던 담배를 화나는 듯이 재떨이에 집어던지며, +"내가 하얼빈에 온 지가 인제 겨우 삼사 년밖에 안 되지마는 조선 사람 때문에 나는 견딜 수가 없어. 와서 달라는 것도 달라는 것이지마는 조선 사람이 또 어찌하였느니 또 어찌하였느니 하는 불명예한 말을 들을 때에는 나는 금시에 죽어 버리고 싶단 말일세. 내게 가장 불쾌한 것이 있다고 하면 그것은 고국이라는 기억과 조선 사람의 존잴세. 내가 만일 어느 나라의 독재자가 된다고 하면 나는 첫째로 조선인 입국 금지를 단행하려네. 만일 조선이라는 것을 잊어버릴 약이 있다고 하면 나는 생명과 바꾸어서라도 사 먹고 싶어." +하고 R는 약간 흥분된 어조를 늦추어서, +"나도 모스크바에 있다가 처음 원동에 나왔을 적에는 길을 다녀도 혹시 동포가 눈에 뜨이지나 아니하나 하고 찾았네. 그래서 어디서든지 동포를 만나면 반가이 손을 잡았지. 했지만 점점 그들은 오직 귀찮은 존재에 지나지 못하다는 것을 알았단 말일세. 인제는 조선 사람이라고만 하면 만나기가 무섭고 끔찍끔찍하고 진저리가 나는 걸 어떡허나. 자네 명함이 들어온 때에도 조선 사람인가 하고 가슴이 뜨끔했네." +하고 R는 웃지도 아니하오. 그의 얼굴에는, 군인다운 기운찬 얼굴에는 증오와 분노의 빛이 넘쳤소. +"나도 자네 집에 환영받는 나그네는 아닐세그려." +하고 나는 이 견디기 어려운 불쾌하고 무서운 공기를 완화하기 위하여 농담삼아 한 마디를 던지고 웃었소. +나는 R의 말이 과격함에 놀랐지마는, 또 생각하면 R가 한 말 가운데는 들을 만한 이유도 없지 아니하오. 그것을 생각할 때에 나는 R를 괘씸하게 생각하기 전에 내가 버린다는 조선을 위하여서 가슴이 아팠소. 그렇지만 이제 나 따위가 가슴을 아파한대야 무슨 소용이 있소. 조선에 남아 계신 형이나 R의 말을 참고삼아 쓰시기 바라오. 어쨌으나 나는 R에게서 목적한 여행권을 얻었소. R에게는 다만, +`나는 피곤한 몸을 좀 정양하고 싶다. 나는 내가 평소에 즐겨하는 바이칼 호반에서 눈과 얼음의 한겨울을 지내고 싶다.' +는 것을 여행의 이유로 삼았소. +R는 나의 초췌한 모양을 짐작하고 내 핑계를 그럴듯하게 아는 모양이었소. 그리고 나더러, `이왕 정양하려거든 카프카 지방으로 가거라. 거기는 기후 풍경도 좋고 또 요양원의 설비도 있다.'는 것을 말하였소. 나도 톨스토이의 소설에서, 기타의 여행기 등속에서 이 지방에 관한 말을 못 들은 것이 아니나 지금 내 처지에는 그런 따뜻하고 경치 좋은 지방을 가릴 여유도 없고 또 그러한 지방보다도 눈과 얼음과 바람의 시베리아의 겨울이 합당한 듯하였소. +그러나 나는 R의 호의를 굳이 사양할 필요도 없어서 그가 써 주는 대로 소개장을 다 받아 넣었소. 그는 나를 처남 매부 간이라고 소개해 주었소. +나는 모스크바 가는 다음 급행을 기다리는 사흘 동안 R의 집의 손이 되어서 R부처의 친절한 대우를 받았소. +그 후에는 나는 R와 조선에 관한 토론을 한 일은 없지마는 R가 이름지어 말을 할 때에는 조선을 잊었노라, 그리워할 것이 없노라, 하지마는 무의식적으로 말을 할 때에는 조선을 못 잊고 또 조선을 여러 점으로 그리워하는 양을 보았소. 나는 그것으로써 만족하게 여겼소. +나는 금요일 오후 세시 모스크바 가는 급행으로 하얼빈을 떠났소. 역두에는 R와 R의 가족이 나와서 꽃과 과일과 여러 가지 선물로 나를 전송하였소. R와 R의 가족은 나를 정말 형제의 예로 대우하여 차가 떠나려 할 때에 포옹과 키스로 작별하여 주었소. +이 날은 퍽 따뜻하고 일기가 좋은 날이었소. 하늘에 구름 한 점, 땅에 바람 한 점 없이 마치 늦은 봄날과 같이 따뜻한 날이었소. +차는 떠났소. 판다는 둥 안 판다는 둥 말썽 많은 동중로(지금은 북만 철로라고 하오.)의 국제 열차에 몸을 의탁한 것이오. +송화강(松花江:쑹화 강)의 철교를 건너오. 아아 그리도 낯익은 송화강! 송화강이 왜 낯이 익소. 이 송화강은 불함산(장백산)에 근원을 발하여 광막한 북만주의 사람도 없는 벌판을 혼자 소리도 없이 흘러가는 것이 내 신세와 같소. 이 북만주의 벌판을 만든 자가 송화강이지마는 나는 그만한 힘이 없는 것이 부끄러울 뿐이오. 이 광막한 북만의 벌판을 내 손으로 개척하여서 조선 사람의 낙원을 만들자 하고 뽐내어 볼까. 그것은 형이 하시오. 내 어린것이 자라거든 그놈에게나 그러한 생각을 넣어 주시오. +동양의 국제적 괴물인 하얼빈 시가도 까맣게 안개에서 스러져 버리고 말았소. 그러나 그 시가를 싼 까만 기운이 국제적 풍운을 포장한 것이라고 할까요. +가도가도 벌판. 서리맞은 마른 풀바다. 실개천 하나도 없는 메마른 사막. 어디를 보아도 산 하나 없으니 하늘과 땅이 착 달라붙은 듯한 천지. 구름 한 점 없건만도 그 큰 태양 가지고도 미처 다 비추지 못하여 지평선 호를 그린 지평선 위에는 항상 황혼이 떠도는 듯한 세계. 이 속으로 내가 몸을 담은 열차는 서쪽으로 서쪽으로 해가 가는 걸음을 따라서 달리고 있소. 열차가 달리는 바퀴 소리도 반향할 곳이 없어 힘없는 한숨같이 스러지고 마오. +기쁨 가진 사람이 지루해서 못 견딜 이 풍경은 나같이 수심 가진 사람에게는 가장 공상의 말을 달리기에 합당한 곳이오. +이 곳에도 산도 있고 냇물도 있고 삼림도 있고 꽃도 피고 날짐승, 길짐승이 날고 기던 때도 있었겠지요. 그러던 것이 몇만 년 지나는 동안에 산은 낮아지고 골은 높아져서 마침내 이 꼴이 된 것인가 하오. 만일 큰 힘이 있어 이 광야를 파낸다 하면 물 흐르고 고기 놀던 강과, 울고 웃던 생물이 살던 자취가 있을 것이오. 아아 이 모든 기억을 꽉 품고 죽은 듯이 잠잠한 광야에! +내가 탄 차가 F역에 도착하였을 때에는 북만주 광야의 석양의 아름다움은 그 극도에 달한 것 같았소. 둥긋한 지평선 위에 거의 걸린 커다란 해! 아마 그 신비하고 장엄함이 내 경험으로는 이 곳에서밖에는 볼 수 없는 것이라고생각하오. 이글이글 이글이글 그러면서도 둥글다는 체모를 변치 아니하는 그 지는 해! +게다가 먼 지평선으로부터 기어드는 황혼은 인제는 대지를 거의 다 덮어 버려서 마른 풀로 된 지면은 가뭇가뭇한 빛을 띠고 사막의 가는 모래를 머금은 지는 해의 광선을 반사하여서 대기는 짙은 자줏빛을 바탕으로 한 가지각색의 명암을 가진, 오색이 영롱한, 도무지 내가 일찍 경험해 보지 못한 색채의 세계를 이루었소. 아 좋다! +그 속에 수은같이 빛나는, 수없는 작고 큰 호수들의 빛! 그 속으로 날아오는 수없고 이름 모를 새들의 떼도 이 세상의 것이라고는 생각하지 아니하오. +나는 거의 무의식적으로 차에서 뛰어내렸소. 거의 떠날 시간이 다 되어서 짐의 일부분은 미처 가지지도 못하고 뛰어내렸소. 반쯤 미친 것이오. +정거장 앞 조그마한 아라사 사람의 여관에다가 짐을 맡겨 버리고 나는 단장을 끌고 철도 선로를 뛰어 건너서 호수의 수은빛 나는 곳을 찾아서 지향 없이 걸었소. +한 호수를 가서 보면 또 저 편 호수가 더 아름다워 보이오. 원컨대 저 지는 해가 다 지기 전에 이 광야에 있는 호수를 다 돌아보고 싶소. +내가 호숫 가에 섰을 때에 그 거울같이 잔잔한 호수면에 비치는 내 그림자의 외로움이여, 그러나 아름다움이여! 그 호수는 영원한 우주의 신비를 품고 하늘이 오면 하늘을, 새가 오면 새를, 구름이 오면 구름을, 그리고 내가 오면 나를 비추지 아니하오. 나는 호수가 되고 싶소. 그러나 형! 나는 이 호수면에서 얼마나 정임의 얼굴을 찾았겠소. 그것은 물리학적으로 불가능한 일이겠지요. 동경의 병실에 누워 있는 정임의 모양이 몽고 사막의 호수면에 비칠 리야 있겠소. 없겠지마는 나는 호수마다 정임의 그림자를 찾았소. 그러나 보이는 것은 외로운 내 그림자뿐이오. +`가자. 끝없는 사막으로 한없이 가자. 가다가 내 기운이 진하는 자리에 나는 내 손으로 모래를 파고 그 속에 내 몸을 묻고 죽어 버리자. 살아서 다시 볼 수 없는 정임의 「이데아」를 안고 이 깨끗한 광야에서 죽어 버리 자.' +하고 나는 지는 해를 향하고 한정 없이 걸었소. 사막이 받았던 따뜻한 기운은 아직도 다 식지는 아니하였소. 사막에는 바람 한 점도 없소. 소리 하나도 없소. 발자국 밑에서 우는 마른 풀과 모래의 바스락거리는 소리가 들릴 뿐이오. +나는 허리를 지평선에 걸었소. 그 신비한 광선은 내 가슴으로부터 위에만을 비추고 있소. +문득 나는 해를 따라가는 별 두 개를 보았소. 하나는 앞을 서고 하나는 뒤를 섰소. 앞의 별은 좀 크고 뒤의 별은 좀 작소. 이런 별들은 산 많은 나라 다시 말하면 서쪽 지평선을 보기 어려운 나라에서만 생장한 나로서는 보지 못하던 별이오. 나는 그 별의 이름을 모르오. `두 별'이오. +해가 지평선에서 뚝 떨어지자 대기의 자줏빛은 남빛으로 변하였소. 오직 해가 금시 들어간 자리에만 주홍빛의 여광이 있을 뿐이오. 내 눈앞에서는 남빛 안개가 피어오르는 듯하였소. 앞에 보이는 호수만이 유난히 빛나오. 또 한 떼의 이름 모를 새들이 수면을 스치며 날 저문 것을 놀라는 듯이 어지러이 날아 지나가오. 그들은 소리도 아니 하오. 날개치는 소리도 아니 들리오. 그것들은 사막의 황혼의 허깨비인 것 같소. +나는 자꾸 걷소. 해를 따르던 나는 두 별을 따라서 자꾸 걷소. +별들은 진 해를 따라서 바삐 걷는 것도 같고, 헤매는 나를 어떤 나라로 끄는 것도 같소. +아니 두 별 중에 앞선 별이 한 번 반짝하고는 최후로 한 번 반짝하고는 지평선 밑에 숨어 버리고 마오. 뒤에 남은 외별의 외로움이여! 나는 울고 싶었소. 그러나 나는 하나만 남은 작은 별 외로운 작은 별을 따라서 더 빨리 걸음을 걸었소. 그 한 별마저 넘어가 버리면 나는 어찌하오. +내가 웬일이오. 나는 시인도 아니요, 예술가도 아니오. 나는 정으로 행동한 일은 없다고 믿는 사람이오. 그러나 형! 이 때에 미친 것이 아니요, 내 가슴에는 무엇인지 모를 것을 따를 요샛말로 이른바 동경으로 찼소. +`아아 저 작은 별!' +그것도 지평선에 닿았소. +`아아 저 작은 별. 저것마저 넘어가면 나는 어찌하나.' +인제는 어둡소. 광야의 황혼은 명색뿐이요, 순식간이요, 해지자 신비하다고 할 만한 극히 짧은 동안에 아름다운 황혼을 조금 보이고는 곧 칠과 같은 암흑이오. 호수의 물만이 어디서 은빛을 받았는지 뿌옇게 나만이 유일한 존재다, 나만이 유일한 빛이다 하는 듯이 인제는 수은빛이 아니라 남빛을 발하고 있을 뿐이오. +나는 그 중 빛을 많이 받은, 그 중 환해 보이는 호수면을 찾아 두리번거리며, 그러나 빠른 걸음으로 헤매었소. 그러나 내가 좀더 맑은 호수면을 찾는 동안에 이 광야의 어둠은 더욱더욱 짙어지오. +나는 어떤 조그마한 호숫 가에 펄썩 앉았소. 내 앞에는 짙은 남빛의 수면에 조그마한 거울만한 밝은 데가 있소. 마치 내 눈에서 무슨 빛이 나와서, 아마 정임을 그리워하는 빛이 나와서 그 수면에 반사하는 듯이. 나는 허겁지겁 그 빤한 수면을 들여다보았소. 혹시나 정임의 모양이 거기 나타나지나 아니할까 하고. 세상에는 그러한 기적도 있지 아니한가 하고. +물에는 정임의 얼굴이 어른거리는 것 같았소. 이따금 정임의 눈도 어른거리고 코도 번뜻거리고 입도 번뜻거리는 것 같소. 그러나 수면은 점점 어두워 가서 그 환영조차 더욱 희미해지오. +나는 호수면에 빤하던 한 조각조차 캄캄해지는 것을 보고 숨이 막힐 듯함을 깨달으면서 고개를 들었소. +고개를 들려고 할 때에, 형이여, 이상한 일도 다 있소. 그 수면에 정임의 모양이, 얼굴만 아니라, 그 몸 온통이 그 어깨, 가슴, 팔, 다리까지도, 그 눈과 입까지도, 그 얼굴의 흰 것과 입술이 불그레한 것까지도, 마치 환한 대낮에 실물을 대한 모양으로 소상하게 나타났소. +"정임이!" +하고 나는 소리를 지르며 물로 뛰어들려 하였소. 그러나 형, 그 순간에 정임의 모양은 사라져 버리고 말았소. +나는 이 어둠 속에 어디 정임이가 나를 따라온 것같이 생각했소. 혹시나 정임이가 죽어서 그 몸은 동경의 대학 병원에 벗어 내어던지고 혼이 빠져 나와서 물에 비치었던 것이 아닐까, 나는 가슴이 울렁거림을 진정치 못하면서 호숫 가에서 벌떡 일어나서 어둠 속에 정임을 만져보려는 듯이, 어두워서 눈에 보지는 못하더라도 자꾸 헤매노라면 몸에 부딪히기라도 할 것 같아서 함부로 헤매었소. 그리고는 눈앞에 번뜻거리는 정임의 환영을 팔을 벌려서 안고 소리를 내어서 불렀소. +"정임이, 정임이." +하고 나는 수없이 정임을 부르면서 헤매었소. +그러나 형, 이것도 죄지요. 이것도 하나님께서 금하시는 일이지요. 그러길래 광야에 아주 어둠이 덮이고 새까만 하늘에 별이 총총하게 나고는 영 정임의 헛그림자조차 아니 보이지요. 나는 죄를 피해서 정임을 떠나서 멀리 온 것이니 정임의 헛그림자를 따라다니는 것도 옳지 않지요. +그렇지만 내가 이렇게 혼자서 정임을 생각만 하는 것이야 무슨 죄 될 것이 있을까요. 내가 정임을 만 리나 떠나서 이렇게 헛그림자나 그리며 그리워하는 것이야 무슨 죄가 될까요. 설사 죄가 되기로서니 낸들 이것까지야 어찌하오. 내가 내 혼을 죽여 버리기 전에야 내 힘으로 어찌하오. 설사 죄가 되어서 내가 지옥의 꺼지지 않는 유황불 속에서 영원한 형벌을 받게 되기로서니 그것을 어찌하오. 형, 이것, 이것도 말아야 옳은가요. 정임의 헛그림자까지도 끊어 버려야 옳은가요. +이 때요. 바로 이 때요. 내 앞 수십 보나 될까(캄캄한 밤이라 먼지 가까운지 분명히 알 수 없지마는) 하는 곳에 난데없는 등불 하나가 나서오. 나는 깜짝 놀라서 우뚝 섰소. 이 무인지경, 이 밤중에 갑자기 보이는 등불 그것은 마치 이 세상 같지 아니하였소. +저 등불이 어떤 등불일까, 그 등불이 몇 걸음 가까이 오니, 그 등불 뒤에 사람의 다리가 보이오. +"누구요?" +하는 것은 귀에 익은 조선말이오. 어떻게 이 몽고의 광야에서 조선말을 들을까 하고 나는 등불을 처음 볼 때보다 더욱 놀랐소. +"나는 지나가던 사람이오." +하고 나도 등불을 향하여 마주 걸어갔소. +그 사람은 등불을 들어서 내 얼굴을 비추어 보더니, +"당신 조선 사람이오?" +하고 묻소. +"네, 나는 조선 사람이오. 당신도 음성을 들으니 조선 사람인데, 어떻게 이런 광야에, 아닌 밤중에, 여기 계시단 말이오." +하고 나는 놀라는 표정 그대로 대답하였소. +"나는 이 근방에 사는 사람이니까 여기 오는 것도 있을 일이지마는 당신이야말로 이 아닌 밤중에." +하고 육혈포를 집어넣고, 손을 내밀어서 내게 악수를 구하오. +나는 반갑게 그의 손을 잡았소. 그러나 나는 `죽을 지경에 어떻게 오셨단 말이오.' 하고, 그가 내가 무슨 악의를 가진 흉한이 아닌 줄을 알고 손에 빼어들었던 육혈포로 시기를 잠깐이라도 노린 것을 불쾌하게 생각하였던 것이오. +그도 내 이름도 묻지 아니하고 또 나도 그의 이름을 묻지 아니하고 나는 그에게 끌려서 그가 인도하는 곳으로 갔소. 그 곳이란 것은 아까 등불이 처음 나타나던 곳인 듯한데, 거기서 또 한 번 놀란 것은 어떤 부인이 있는 것이오. 남자는 아라사식 양복을 입었으나 부인은 중국 옷 비슷한 옷을 입었소. 남자는 나를 끌어서 그 부인에게 인사하게 하고, +"이는 내 아내요." +하고 또 그 아내라는 부인에게는, +"이 이는 조선 양반이오. 성함이 뉘시죠?" +하고 그는 나를 바라보오. 나는, +"최석입니다." +하고 바로 대답하였소. +"최석 씨?" +하고 그 남자는 소개하던 것도 잊어버리고 내 얼굴을 들여다보오. +"네, 최석입니다." +"아 ●●학교 교장으로 계신 최석 씨." +하고 그 남자는 더욱 놀라오. +"네, 어떻게 내 이름을 아세요?" +하고 나도 그가 혹시 아는 사람이나 아닌가 하고 등불 빛에 얼굴을 들여다 보았으나 도무지 그 얼굴이 본 기억이 없소. +"최 선생을 내가 압니다. 남 선생한테 말씀을 많이 들었지요. 그런데 남 선생도 돌아가신 지가 벌써 몇 핸가." +하고 감개무량한 듯이 그 아내를 돌아보오. +"십오 년이지요." +하고 곁에 섰던 부인이 말하오. +"벌써 십오 년인가." +하고 그 남자는 나를 보고, +"정임이 잘 자랍니까? 벌써 이십이 넘었지." +하고 또 부인을 돌아보오. +"스물세 살이지." +하고 부인이 확실치 아니한 듯이 대답하오. +"네, 스물세 살입니다. 지금 동경에 있습니다. 병이 나서 입원한 것을 보고 왔는데." +하고 나는 번개같이 정임의 병실과 정임의 호텔 장면 등을 생각하고 가슴이 설렘을 깨달았소. 의외인 곳에서 의외인 사람들을 만나서 정임의 말을 하게 된 것을 기뻐하였소. +"무슨 병입니까. 정임이가 본래 몸이 약해서." +하고 부인이 직접 내게 묻소. +"네. 몸이 좀 약합니다. 병이 좀 나은 것을 보고 떠났습니다마는 염려가 됩니다." +하고 나는 무의식중에 고개를 동경이 있는 방향으로 돌렸소. 마치 고개를 동으로 돌리면 정임이가 보이기나 할 것같이. +"자, 우리 집으로 갑시다." +하고 나는 아직 그의 성명도 모르는 남자는, 그의 아내를 재촉하더니, +"우리가 조선 동포를 만난 것이 십여 년 만이오. 그런데 최 선생, 이것을 좀 보시고 가시지요." +하고 그는 빙그레 웃으면서 나를 서너 걸음 끌고 가오. 거기는 조그마한 무덤이 있고 그 앞에는 석 자 높이나 되는 목패를 세웠는데 그 목패에는 `두 별 무덤'이라는 넉 자를 썼소. +내가 이상한 눈으로 그 무덤과 목패를 보고 있는 것을 보고 그는, +"이게 무슨 무덤인지 아십니까?" +하고 유쾌하게 묻소. +"두 별 무덤이라니 무슨 뜻인가요?" +하고 나도 그의 유쾌한 표정에 전염이 되어서 웃고 물었소. +"이것은 우리 둘의 무덤이외다." +하고 그는 아내의 어깨를 치며 유쾌하게 웃었소. 부인은 부끄러운 듯이 웃고 고개를 숙이오. +도무지 모두 꿈 같고 환영 같소. +"자 갑시다. 자세한 말은 우리 집에 가서 합시다." +하고 서너 걸음 어떤 방향으로 걸어가니 거기는 말을 세 필이나 맨 마차가 있소. 몽고 사람들이 가족을 싣고 수초를 따라 돌아다니는 그러한 마차요. 삿자리로 홍예형의 지붕을 만들고 그 속에 들어가 앉게 되었소. 그의 부인과 나와는 이 지붕 속에 들어앉고 그는 손수 어자대에 앉아서 입으로 쮸쮸쮸쮸 하고 말을 모오. 등불도 꺼 버리고 캄캄한 속으로 달리오. +"불이 있으면 군대에서 의심을 하지요. 도적놈이 엿보지요. 게다가 불이 있으면 도리어 앞이 안 보인단 말요. 쯧쯧쯧쯧!" +하는 소리가 들리오. +대체 이 사람은 무슨 사람인가. 또 이 부인은 무슨 사람인가 하고 나는 어두운 속에서 혼자 생각하였소. 다만 잠시 본 인상으로 보아서 그들은 행복된 부부인 것 같았소. 그들이 무엇 하러 이 아닌 밤중에 광야에 나왔던가. 또 그 이상야릇한 두 별 무덤이란 무엇인가. +나는 불현듯 집을 생각하였소. 내 아내와 어린것들을 생각하였소. 가정과 사회에서 쫓겨난 내가 아니오. 쫓겨난 자의 생각은 언제나 슬픔뿐이었소. +나는 내 아내를 원망치 아니하오. 그는 결코 악한 여자가 아니오. 다만 보통 여자요. 그는 질투 때문에 이성의 힘을 잃은 것이오. 여자가 질투 때문에 이성을 잃는 것이 천직이 아닐까요. 그가 나를 사랑하길래 나를 위해서 질투를 가지는 것이 아니오. +설사 질투가 그로 하여금 칼을 들어 내 가슴을 찌르게 하였다 하더라도 나는 감사한 생각을 가지고 눈을 감을 것이오. 사랑하는 자는 질투한다고 하오. 질투를 누르는 것도 아름다운 일이지마는 질투에 타는 것도 아름다운 일이 아닐까요. +덜크럭덜크럭 하고 차바퀴가 철로길을 넘어가는 소리가 나더니 이윽고 마차는 섰소. +앞에 빨갛게 불이 비치오. +"자 이게 우리 집이오." +하고 그가 마차에서 뛰어내리는 양이 보이오. 내려 보니까 달이 올라오오. 굉장히 큰 달이, 붉은 달이 지평선으로서 넘석하고 올라오오. +달빛에 비추인 바를 보면 네모나게 담 담이라기보다는 성을 둘러쌓은 달 뜨는 곳으로 열린 대문을 들어서서 넓은 마당에 내린 것을 발견하였소. +"아버지!" +"엄마!" +하고 아이들이 뛰어나오오. 말만큼이나 큰 개가 네 놈이나 꼬리를 치고 나오오. 그놈들이 주인집 마차 소리를 알아듣고 짖지 아니한 모양이오. +큰 아이는 계집애로 여남은 살, 작은 아이는 사내로 육칠 세, 모두 중국 옷을 입었소. +우리는 방으로 들어갔소. 방은 아라사식 절반, 중국식 절반으로 세간이 놓여 있고 벽에는 조선 지도와 단군의 초상이 걸려 있소. +그들 부처는 지도와 단군 초상 앞에 허리를 굽혀 배례하오. 나도 무의식적으로 그대로 하였소. +그는 차를 마시며 이렇게 말하오. +"우리는 자식들을 이 흥안령 가까운 무변 광야에서 기르는 것으로 낙을 삼고 있지요. 조선 사람들은 하도 마음이 작아서 걱정이니 이런 호호탕탕한 넓은 벌판에서 길러나면 마음이 좀 커질까 하지요. 또 흥안령 밑에서 지나 중원을 통일한 제왕이 많이 났으니 혹시나 그 정기가 남아 있을까 하지요. 우리 부처의 자손이 몇 대를 두고 퍼지는 동안에는 행여나 마음 큰 인물이 하나 둘 날는지 알겠어요, 하하하하." +하고 그는 제 말을 제가 비웃는 듯이 한바탕 웃고 나서, +"그러나 이건 내 진정이외다. 우리도 이렇게 고국을 떠나 있지마는 그래도 고국 소식이 궁금해서 신문 하나는 늘 보지요. 하지만 어디 시원한 소식이 있어요. 그저 조리복소니가 되어가는 것이 아니면 조그마한 생각을 가지고, 눈곱만한 야심을 가지고, 서 푼어치 안 되는 이상을 가지고 찧고 까불고 싸우고 하는 것밖에 안 보이니 이거 어디 살 수가 있나. 그래서 나는 마음 큰 자손을 낳아서 길러 볼까 하고 이를테면 새 민족을 하나 만들어 볼까 하고, 둘째 단군, 둘째 아브라함이나 하나 낳아 볼까 하고 하하하하앗하." +하고 유쾌하게, 그러나 비통하게 웃소. +나는 저녁을 굶어서 배가 고프고, 밤길을 걸어서 몸이 곤한 것도 잊고 그의 말을 들었소. +부인이 김이 무럭무럭 나는 호떡을 큰 뚝배기에 담고 김치를 작은 뚝배기에 담고, 또 돼지고기 삶은 것을 한 접시 담아다가 탁자 위에 놓소. +건넌방이라고 할 만한 방에서 젖먹이 우는 소리가 들리오. 부인은 삼십이나 되었을까, 남편은 서른댓 되었을 듯한 키가 훨쩍 크고 눈과 코가 크고 손도 큰 건장한 대장부요, 음성이 부드러운 것이 체격에 어울리지 아니하나 그것이 아마 그의 정신 생활이 높은 표겠지요. +"신문에서 최 선생이 학교를 고만두시게 되었다는 말도 보았지요. 그러나 나는 그것이 다 최 선생에게 대한 중상인 줄을 짐작하였고, 또 오늘 이렇게 만나 보니까 더구나 그것이 다 중상인 줄을 알지요." +하고 그는 확신 있는 어조로 말하오. +"고맙습니다." +나는 이렇게밖에 대답할 말이 없었소. +"아, 머, 고맙다고 하실 것도 없지요." +하고 그는 머리를 뒤로 젖히고 한참이나 생각을 하더니 우선 껄껄 한바탕 웃고 나서, +"내가 최 선생이 당하신 경우와 꼭 같은 경우를 당하였거든요. 이를테면 과부 설움은 동무 과부가 안다는 것이지요." +하고 그는 자기의 내력을 말하기 시작하오. +"내 집은 본래 서울입니다. 내가 어렸을 적에 내 선친께서 시국에 대해서 불평을 품고 당신 삼 형제의 가족을 끌고 재산을 모두 팔아 가지고 간도에를 건너오셨지요. 간도에 맨 먼저 ●●학교를 세운 이가 내 선친이지요." +여기까지 하는 말을 듣고 나는 그가 누구인지를 알았소. 그는 R씨라고 간도 개척자요, 간도에 조선인 문화를 세운 이로 유명한 이의 아들인 것이 분명하오. 나는 그의 이름이 누구인지도 물어 볼 것 없이 알았소. +"아 그러십니까. 네, 그러세요." +하고 나는 감탄하였소. +"네, 내 선친을 혹 아실는지요. 선친의 말씀이 노 그러신단 말씀야요. 조선 사람은 속이 좁아서 못쓴다고 <정감록>에도 그런 말이 있다고 조선은 산이 많고 들이 좁아서 사람의 마음이 작아서 큰일하기가 어렵고, 큰사람이 나기가 어렵다고. 웬만치 큰사람이 나면 서로 시기해서 큰일할 새가 없이 한다고 그렇게 <정감록>에도 있다더군요. 그래서 선친께서 자손에게나 희망을 붙이고 간도로 오신 모양이지요. 거기서 자라났다는 것이 내 꼴입니다마는, 아하하. +내가 자라서 아버지께서 세우신 K여학교의 교사로 있을 때 일입니다. 지금 내 아내는 그 때 학생으로 있었구. 그러자 내 아버지께서 재산이 다 없어져서 학교를 독담하실 수가 없고, 또 얼마 아니해서 아버지께서 돌아가시고 보니 학교에는 세력 다툼이 생겨서 아버지의 후계자로 추정되는 나를 배척하게 되었단 말씀이오. 거기서 나를 배척하는 자료를 삼은 것이 나와 지금 내 아내가 된 학생의 관계란 것인데 이것은 전연 무근지설인 것은 말할 것도 없소. 나도 총각이요, 그는 처녀니까 혼인을 하자면 못 할 것도 없지마는 그것이 사제 관계라면 중대 문제거든. 그래서 나는 단연히 사직을 하고 내가 사직한 것은 제 죄를 승인한 것이라 하여서 그 학생 지금 내 아내도 출교 처분을 당한 것이오. 그러고 보니, 그 여자의 아버지 내 장인이지요 그 여자의 아버지는 나를 죽일 놈같이 원망을 하고 그 딸을 죽일 년이라고 감금을 하고 어쨌으나 조그마한 간도 사회에서 큰 파문을 일으켰단 말이오. +이 문제를 더 크게 만든 것은 지금 내 아내인, 그 딸의 자백이오. 무어라고 했는고 하니, 나는 그 사람을 사랑하오, 그 사람한테가 아니면 시집을 안 가오, 하고 뻗댔단 말요. +나는 이 여자가 이렇게 나를 생각하는가 할 때 의분심이 나서 나는 어떻게 해서든지 이 여자와 혼인하리라고 결심을 하였소. 나는 마침내 정식으로 K장로라는 내 장인에게 청혼을 하였으나 단박에 거절을 당하고 말았지요. K장로는 그 딸을 간도에 두는 것이 옳지 않다고 해서 서울로 보내기로 하였단 말을 들었소. 그래서 나는 최후의 결심으로 그 여자 지금 내 아내 된 사람을 데리고 간도에서 도망하였소. 하하하하. 밤중에 단둘이서. +지금 같으면야 사제간에 결혼을 하기로 그리 큰 문제가 될 것이 없지마는 그 때에 어디 그랬나요. 사제간에 혼인이란 것은 부녀간에 혼인한다는 것과 같이 생각하였지요. 더구나 그 때 간도 사회에는 청교도적 사상과 열렬한 애국심이 있어서 도덕 표준이 여간 높지 아니하였지요. 그런 시대니까 내가 내 제자인 여학생을 데리고 달아난다는 것은 살인 강도를 하는 이상으로 무서운 일이었지요. 지금도 나는 그렇게 생각합니다마는. +그래서 우리 두 사람은 우리 두 사람이라는 것보다도 내 생각에는 어찌하였으나 나를 위해서 제 목숨을 버리려는 그에게 사실 나도 마음 속으로는 그를 사랑하였지요. 다만 사제간이니까 영원히 달할 수는 없는 사랑이라고 단념하였을 뿐이지요. 그러니까 비록 부처 생활은 못 하더라도 내가 그의 사랑을 안다는 것과 나도 그를 이만큼 사랑한다는 것만을 보여 주자는 것이지요. +때는 마침 가을이지마는, 몸에 지닌 돈도 얼마 없고 천신만고로 길림까지를 나와 가지고는 배를 타고 송화강을 내려서 하얼빈에 가 가지고 거 기서 간신히 치타까지의 여비와 여행권을 얻어 가지고 차를 타고 떠나지 않았어요. 그것이 바로 십여 년 전 오늘이란 말이오." +이 때에 부인이 옥수수로 만든 국수와 감자 삶은 것을 가지고 들어오오. +나는 R의 말을 듣던 끝이라 유심히 부인을 바라보았소. 그는 중키나 되는 둥근 얼굴이 혈색이 좋고 통통하여 미인이라기보다는 씩씩한 여자요. 그런 중에 조선 여자만이 가지는 아담하고 점잖은 맛이 있소. +"앉으시지요. 지금 두 분께서 처음 사랑하시던 말씀을 듣고 있습니다." +하고 나는 부인에게 교의를 권하였소. +"아이, 그런 말씀은 왜 하시오." +하고 부인은 갑자기 십 년이나 어려지는 모양으로 수삽한 빛을 보이고 고개를 숙이고 달아나오. +"그래서요. 그래 오늘이 기념일이외다그려." +하고 나도 웃었소. +"그렇지요. 우리는 해마다 오늘이 오면 우리 무덤에 성묘를 가서 하룻밤을 새우지요. 오늘은 손님이 오셔서 중간에 돌아왔지만, 하하하하." +하고 그는 유쾌하게 웃소. +"성묘라니?" +하고 나는 물었소. +"아까 보신 두 별 무덤 말이오. 그것이 우리 내외의 무덤이지요. 하하하하." +"…………." +나는 영문을 모르고 가만히 앉았소. +"내 이야기를 들으시지요. 그래 둘이서 차를 타고 오지 않았겠어요. 물론 여전히 선생님과 제자지요. 그렇지만 워낙 여러 날 단둘이서 같이 고생을 하고 여행을 했으니 사랑의 불길이 탈 것이야 물론 아니겠어요. 다만 사제라는 굳은 의리가 그것을 겉에 나오지 못하도록 누른 것이지요. ……그런데 꼭 오늘같이 좋은 날인데 여기는 대개 일기가 일정합니다. 좀체로 비가 오는 일도 없고 흐리는 날도 없지요. 헌데 F역에를 오니까 참 석양 경치가 좋단 말이오. 그 때에 불현듯, 에라 여기서 내려서 이 석양 속에 저 호숫 가에 둘이서 헤매다가 깨끗이 사제의 몸으로 이 깨끗한 광야에 묻혀 버리자 하는 생각이 나겠지요. 그래 그 때 말을 내 아내 그 때에는 아직 아내가 아니지요 내 아내에게 그런 말을 하였더니 참 좋다고 박장을 하고 내 어깨에 매달리는구려. 그래서 우리 둘은 차가 거의 떠날 임박해서 차에서 뛰어내렸지요." +하고 그는 그때 광경을 눈앞에 그리는 모양으로 말을 끊고 우두커니 허공을 바라보오. 그러나 그의 입 언저리에는 유쾌한 회고에서 나오는 웃음이었소. +"이야기 다 끝났어요?" +하고 부인이 크바스라는 청량 음료를 들고 들어오오. +"아니오. 이제부터가 정통이니 당신도 거기 앉으시오. 지금 차에서 내린 데까지 왔는데 당신도 앉아서 한 파트를 맡으시오." +하고 R는 부인의 손을 잡아서 자리에 앉히오. 부인도 웃으면서 앉소. +"최 선생 처지가 꼭 나와 같단 말요. 정임의 처지가 당신과 같고." +하고 그는 말을 계속하오. +"그래 차에서 내려서 나는 이 양반하고 물을 찾아 헤매었지요. 아따, 석양이 어떻게 좋은지 이 양반은 박장을 하고 노래를 부르고 우리 둘은 마치 유쾌하게 산보하는 사람 같았지요." +"참 좋았어요. 그 때에는 참 좋았어요. 그 석양에 비친 광야와 호수라는 건 어떻게 좋은지 그 수은 같은 물 속에 텀벙 뛰어들고 싶었어요. 그 후엔 해마다 보아도 그만 못해." +하고 부인이 참견을 하오. +아이들은 다 자는 모양이오. +"그래 지향없이 헤매는데 해는 뉘엿뉘엿 넘어가구, 어스름은 기어들고 그 때 마침 하늘에는 별 둘이 나타났단 말이야. 그것을 이 여학생이 먼저 보고서 갑자기 추연해지면서 선생님 저 별 보셔요, 앞선 큰 별은 선생님이 구 따라가는 작은 별은 저야요, 하겠지요. 그 말이, 또 그 태도가 어떻게 가련한지. 그래서 나는 하늘을 바라보니깐 과연 별 두 개가 지는 해를 따르는 듯이 따라간다 말요. 말을 듣고 보니 과연 우리 신세와도 같지 않아요? +그리고는 이 사람이 또 이럽니다그려 `선생님, 앞선 큰 별은 아무리 따라도 저 작은 별은 영원히 따라잡지 못하겠지요. 영원히 영원히 따라가다가 따라가다가 못 해서 마침내는 저 작은 별은 죽어서 검은 재가 되고 말겠지요? 저 작은 별이 제 신세와 어쩌면 그리 같을까.' 하고 한탄을 하겠지요. 그 때에 한탄을 하고 눈물을 흘리고 섰는 어린 처녀의 석양빛에 비췬 모양을 상상해 보세요, 하하하하. 그 때에는 당신도 미인이었소. 하하하하." +하고 내외가 유쾌하게 웃는 것을 보니 나는 더욱 적막하여짐을 깨달았소. 어쩌면 그 석양, 그 두 별이 이들에게와 내게 꼭 같은 인상을 주었을까 하니 참으로 이상하다 하였소. +"그래 인제." +하고 R는 다시 이야기를 계속하오. +"그래 인제 둘이서 그야말로 감개무량하게 두 별을 바라보며 걸었지요. 그러다가 해가 넘어가고 앞선 큰 별이 넘어가고 그리고는 혼자서 깜빡깜빡하고 가던 작은 별이 넘어가니 우리는 그만 땅에 주저앉았소. 거기가 어딘고 하니 그 두 별 무덤이 있는 곳이지요. `선생님 저를 여기다가 파묻어 주시고 가셔요. 선생님 손수 저를 여기다가 묻어 놓고 가 주셔요.' 하고 이 사람이 조르지요." +하는 것을 부인은, +"내가 언제." +하고 남편을 흘겨보오. +"그럼 무에라고 했소? 어디 본인이 한 번 옮겨 보오." +하고 R가 말을 끊소. +"간도를 떠난 지가 한 달이 되도록 단둘이 다녀도 요만큼도 귀해 주는 점이 안 뵈니 그럼 파묻어 달라고 안 해요?" +하고 부인은 웃소. +"흥흥." +하고 R는 부인의 말에 웃고 나서, +"그 자리에 묻어 달란 말을 들으니까, 어떻게 측은한지, 그럼 나도 함께 묻히자고 그랬지요. 나는 그 때에 참말 그 자리에 함께 묻히고 싶었어요. 그래서 나는 손으로 곧 구덩이를 팠지요. 떡가루 같은 모래판이니까 파기는 힘이 아니 들겠지요. 이이도 물끄러미 내가 땅을 파는 것을 보고 섰더니만 자기도 파기를 시작하겠지요." +하고 내외가 다 웃소. +"그래 순식간에……." +하고 R는 이야기를 계속하오. +"순식간에 둘이 드러누울 만한 구덩이를 아마 두 자 깊이나 되게, 네모나게 파 놓고는 내가 들어가 누워 보고 그러고는 또 파고 하여 아주 편안한 구덩이를 파고 나서는 나는 아주 세상을 하직할 셈으로 사방을 둘러보 고 사방이래야 컴컴한 어둠밖에 없지만 사방을 둘러보고, 이를테면 세상과 작별을 하고 드러누웠지요. 지금 이렇게 회고담을 할 때에는 우습기도 하지마는 그 때에는 참으로 종교적이라 할 만한 엄숙이었소. 그때 우리 둘의 처지는 앞도 절벽, 뒤도 절벽이어서 죽는 길밖에 없었지요. 또 그뿐 아니라 인생의 가장 깨끗하고 가장 사랑의 맑은 정이 타고 가장 기쁘고도 슬프고도 이를테면 모든 감정이 절정에 달하고, 그러한 순간에 목숨을 끊어 버리는 것이 가장 좋은 일이요, 가장 마땅한 일같이 생각하였지요. 광야에 아름다운 황혼이 순간에 스러지는 모양으로 우리 두 생명의 아름다움도 순간에 스러지자는 우리는 철학자도 시인도 아니지마는 우리들의 환경이 우리 둘에게 그러한 생각을 넣어 준 것이지요. +그래서 내가 가만히 드러누워 있는 것을 저이가 물끄러미 보고 있더니 자기도 내 곁에 들어와 눕겠지요. 그런 뒤에는 황혼에 남은 빛도 다 스러지고 아주 캄캄한 암흑 세계가 되어 버렸지요. 하늘에 어떻게 그렇게 별이 많은지. 가만히 하늘을 바라보노라면 참 별이 많아요. 우주란 참 커요. 그런데 이 끝없이 큰 우주에 한없이 많은 별들이 다 제자리를 지키고 제 길을 지켜서 서로 부딪지도 아니하고 끝없이 긴 시간에 질서를 유지하고 있는 것을 보면 우주에는 어떤 주재하는 뜻, 섭리하는 뜻이 있다 하는 생각이 나겠지요. 나도 예수교인의 가정에서 자라났지마는 이 때처럼 하나님이라 할까 이름은 무엇이라고 하든지 간에 우주의 섭리자의 존재를 강렬하게 의식한 일은 없었지요. +그렇지만 `사람의 마음에 비기면 저까짓 별들이 다 무엇이오?' 하고 그때 겨우 열여덟 살밖에 안 된 이이가 내 귀에 입을 대고 말할 때에는 나도 참으로 놀랐습니다. 나이는 나보다 오륙 년 상관밖에 안 되지마는 이십 세 내외에 오륙 년 상관이 적은 것인가요? 게다가 나는 선생이요 자기는 학생이니까 어린애로만 알았던 것이 그런 말을 하니 놀랍지 않아요? 어째서 사람의 마음이 하늘보다도 더 이상할까 하고 내가 물으니까, 그 대답이 `나는 무엇이라고 설명할 수가 없지마는 내 마음 속에 일어나는 것이 하늘이나 땅에 일어나는 모든 것보다도 더 아름답고 더 알 수 없고 더 뜨겁고 그런 것 같아요.' 그러겠지요. 생명이란 모든 아름다운 것 중에 가장 아름다운 것이라는 것을 나는 깨달았어요. 그 말에, `그렇다 하면 이 아름답고 신비한 생명을 내는 우주는 더 아름다운 것이 아니오?' 하고 내가 반문하니까, 당신(부인을 향하여) 말이, `전 모르겠어요, 어쨌으나 전 행복합니다. 저는 이 행복을 깨뜨리고 싶지 않습니다. 놓쳐 버리고 싶지 않습니다. 이 행복 선생님 곁에 있는 이 행복을 꽉 안고 죽고 싶어요.' 그러지 않았소?" +"누가 그랬어요? 아이 난 다 잊어버렸어요." +하고 부인은 차를 따르오. R는 인제는 하하하 하는 웃음조차 잊어버리고, 부인에게 농담을 붙이는 것조차 잊어버리고, 그야말로 종교적 엄숙 그대로말을 이어, +"`자 저는 약을 먹어요.' 하고 손을 입으로 가져가는 동작이 감행되겠지요. 약이란 것은 하얼빈에서 준비한 아편이지요. 하얼빈서 치타까지 가는 동안에 흥안령이나 어느 삼림지대나 어디서나 죽을 자리를 찾자고 준비한 것이니까. 나는 입 근처로 가는 그의 손을 붙들었어요. 붙들면서 나는 `잠깐만 기다리오. 오늘 밤 안으로 그 약을 먹으면 고만이 아니오? 이 행복된 순간을 잠깐이라도 늘립시다. 달 올라올 때까지만.' 나는 이렇게 말했지요. `선생님도 행복되셔요? 선생님은 불행이시지. 저 때문에 불행이시지. 저만 이곳에 묻어 주시구는 선생님은 세상에 돌아가 사셔요, 오래오래 사셔요, 일 많이 하고 사셔요.' 하고 울지 않겠어요. 나는 그 때에 내 아내가 하던 말을 한 마디도 잊지 아니합니다. 그 말을 듣던 때의 내 인상은 아마 일생 두고 잊히지 아니하겠지요. +나는 자백합니다. 그 순간에 나는 처음으로 내 아내를 안고 키스를 하였지요. 내 속에 눌리고 눌리고 쌓이고 하였던 열정이 그만 일시에 폭발되었던 것이오. 아아 이것이 최초의 것이요, 동시에 최후의 것이로구나 할 때에 내 눈에서는 끓는 듯한 눈물이 흘렀소이다. 두 사람의 심장이 뛰는 소리, 두 사람의 풀무 불길 같은 숨소리. +이윽고 달이 떠올라 왔습니다. 가이없는 벌판이니까 달이 뜨니까 갑자기 천지가 환해지고 우리 둘이 손으로 파서 쌓아 놓은 흙무더기가 이 산 없는 세상에 산이나 되는 것같이 조그마한 검은 그림자를 지고 있겠지요. `자 우리 달빛을 띠고 좀 돌아다닐까.' 하고 나는 아내를 안아 일으켰지요. 내 팔에 안겨서 고개를 뒤로 젖힌 내 아내의 얼굴이 달빛에 비친 양을 나는 잘 기억합니다. 실신한 듯한, 만족한 듯한, 그리고도 절망한 듯한 그 표정을 무엇으로 그릴지 모릅니다. 그림도 그릴 줄 모르고 조각도 할 줄 모르고 글도 쓸 줄 모르는 내가 그것을 어떻게 그립니까. 그저 가슴 속에 품고 이렇게 오늘의 내 아내를 바라볼 뿐이지요. +나는 내 아내를 팔에 걸고 네, 걸었다고 하는 것이 가장 합당하지 요 이렇게 팔에다 걸고 달빛을 받은 황량한 벌판, 아무리 하여도 환하게 밝아지지는 아니하는 벌판을 헤매었습니다. 이따금 내 아내가, `어서 죽고 싶어요, 전 죽고만 싶어요.' 하는 말에는 대답도 아니 하고. 죽고 싶다는 그 말은 물론 진정일 것이지요. 아무리 맑은 일기라 하더라도 오후가 되면 흐려지는 법이니까 오래 살아가는 동안에 늘 한 모양으로 이 순간같이 깨끗하고 뜨거운 기분으로 갈 수는 없지 않아요? 불쾌한 일도 생기고, 보기 흉한 일도 생길는지 모르거든. 그러니까 이 완전한 깨끗과 완전한 사랑과 완전한 행복 속에 죽어 버리자는 뜻을 나는 잘 알지요. 더구나 우리들이 살아 남는대야 앞길이 기구하지 평탄할 리는 없지 아니해요? 그래서 나는 `죽지, 우리 이 달밤에 실컷 돌아다니다가, 더 돌아다니기가 싫거든 그 구덩에 돌아가서 약을 먹읍시다.' 이렇게 말하고 우리 둘은 헤맸지요. 낮에 보면 어디까지나 평평한 벌판인 것만 같지마는 달밤에 보면 이 사막에도 아직 채 스러지지 아니한 산의 형적이 남아 있어서 군데군데 거뭇거뭇한 그림자가 있겠지요. 그 그림자 속에는 걸어 들어가면 어떤 데는 우리 허리만큼 그림자에 가리우고 어떤 데는 우리 둘을 다 가리워 버리는 데도 있단 말야요. 죽음의 그림자라는 생각이 나면 그래도 몸에 소름이 끼쳐요. +차차 달이 높아지고 추위가 심해져서 바람결이 지나갈 때에는 눈에서 눈물이 날 지경이지요. 원체 대기 중에 수분이 적으니까 서리도 많지 않지마는, 그래도 대기 중에 있는 수분은 다 얼어 버려서 얼음가루가 되었는 게지요. 공중에는 반짝반짝하는 수정가루 같은 것이 보입니다. 낮에는 땀이 흐르리만큼 덥던 사막도 밤이 되면 이렇게 기온이 내려가지요. 춥다고 생각은 하면서도 춥다는 말은 아니 하고 우리는 어떤 때에는 달을 따라서, 어떤 때에는 달을 등지고, 어떤 때에는 호수에 비친 달을 굽어보고, 이 모양으로 한없이 말도 없이 돌아다녔지요. 이 세상 생명의 마지막 순간을 힘껏 의식하려는 듯이. +마침내 `나는 더 못 걸어요.' 하고 이이가 내 어깨에 매달려 버리고 말았지요." +하고 R가 부인을 돌아보니 부인은 편물하던 손을 쉬고, +"다리가 아픈 줄은 모르겠는데 다리가 이리 뉘구 저리 뉘구 해서 걸음을 걸을 수가 없었어요. 춥기는 하구." +하고 소리를 내어서 웃소. +"그럴 만도 하지." +하고 R는 긴장한 표정을 약간 풀고 앉은 자세를 잠깐 고치며, +"그 후에 그 날 밤 돌아다닌 곳을 더듬어 보니까, 자세히는 알 수 없지마는 삼십 리는 더 되는 것 같거든. 다리가 아프지 아니할 리가 있나." +하고 차를 한 모금 마시고 나서 말을 계속하오. +"그래서 나는 내 외투를 벗어서, 이이(부인)를 싸서 어린애 안듯이 안고 걸었지요. 외투로 쌌으니 자기도 춥지 않구, 나는 또 무거운 짐을 안았으니 땀이 날 지경이구, 그뿐 아니라 내가 제게 주는 최후의 서비스라 하니 기쁘고, 말하자면 일거 삼득이지요. 하하하하. 지난 일이니 웃지마는 그 때 사정을 생각해 보세요, 어떠했겠나." +하고 R는 약간 처참한 빛을 띠면서, +"그러니 그 구덩이를 어디 찾을 수가 있나. 얼마를 찾아 돌아다니다가 아무 데서나 죽을 생각도 해 보았지마는 몸뚱이를 그냥 벌판에 내놓고 죽고 싶지는 아니하고 또 그 구덩이가 우리 두 사람에게 특별한 의미가 있는 것 같아서 기어코 그것을 찾아 내고야 말았지요. 그 때는 벌써 새벽이 가까웠던 모양이오. 열 시나 넘어서 뜬 하현달이 낮이 기울었으니 그렇지 않겠어요. 그 구덩이에 와서 우리는 한 번 더 하늘과 달과 별과, 그리고 마음 속에 떠오른 사람들과 하직하고 약 먹을 준비를 했지요. +약을 검은 고약과 같은 아편을 맛이 쓰다는 아편을 물도 없이 먹으려 들었지요. +우리 둘은 아까 모양으로 가지런히 누워서 하늘을 바라보았는데 달이 밝으니까 보이던 별들 중에 숨은 별이 많고 또 별들의 위치 우리에게 낯익은 북두칠성 자리도 변했을 것 아니야요. 이상한 생각이 나요. 우리가 벌판으로 헤매는 동안에 천지가 모두 변한 것 같아요. 사실 변하였지요. 그 변한 것이 우스워서 나는 껄껄 웃었지요. 워낙 내가 웃음이 좀 헤프지만 이 때처럼 헤프게 실컷 웃어 본 일은 없습니다. +왜 웃느냐고 아내가 좀 성을 낸 듯이 묻기로, `천지와 인생이 변하는 것이 우스워서 웃었소.' 그랬지요. 그랬더니, `천지와 인생은 변할는지 몰라도 내 마음은 안 변해요!' 하고 소리를 지르겠지요. 퍽 분개했던 모양이야." +하고 R는 그 아내를 보오. +"그럼 분개 안 해요? 남은 죽을 결심을 하고 발발 떨구 있는데 곁에서 껄껄거리고 웃으니, 어째 분하지가 않아요. 나는 분해서 달아나려고 했어요." +하고 부인은 아직도 분함이 남은 것같이 말하오. +"그래 달아나지 않았소?" +하고 R는 부인이 벌떡 일어나서 비틀거리고 달아나는 흉내를 팔과 다리로 내고 나서, +"이래서 죽는 시간이 지체가 되었지요. 그래서 내가 빌고 달래고 해서 가까스로 안정을 시키고 나니 손에 쥐었던 아편이 땀에 푹 젖었겠지요. 내가 웃은 것은 죽기 전 한 번 천지와 인생을 웃어 버린 것인데 그렇게 야단이니…… 하하하하." +R는 식은 차를 한 모금 더 마시며, +"참 목도 마르기도 하더니. 입에는 침 한 방울 없고. 그러나 못물을 먹을 생각도 없고. 나중에는 말을 하려고 해도 혀가 안 돌아가겠지요. +이러는 동안에 달빛이 희미해지길래 웬일인가 하고 고개를 번쩍 들었더니 해가 떠오릅니다그려. 어떻게 붉고 둥글고 씩씩한지. `저 해 보오.' 하고 나는 기계적으로 벌떡 일어나서 구덩이에서 뛰어나왔지요." +하고 빙그레 웃소. R의 빙그레 웃는 양이 참 좋았소. +"내가 뛰어나오는 것을 보고 이이도 뿌시시 일어났지요. 그 해! 그 해의 새 빛을 받는 하늘과 땅의 빛! 나는 그것을 형용할 말을 가지지 못합니다. 다만 힘껏 소리치고 싶고 기운껏 달음박질치고 싶은 생각이 날 뿐이어요. +`우리 삽시다, 죽지 말고 삽시다, 살아서 새 세상을 하나 만들어 봅시다.' 이렇게 말하였지요. 하니까 이이가 처음에는 깜짝 놀라는 것 같아요. 그러나 마침내 아내도 죽을 뜻을 변하였지요. 그래서 남 선생을 청하여다가 그 말씀을 여쭈었더니 남 선생께서 고개를 끄덕끄덕하시고 우리 둘의 혼인 주례를 하셨지요. 그 후 십여 년에 우리는 밭 갈고 아이 기르고 이런 생활을 하고 있는데 언제나 여기 새 민족이 생기고 누가 새 단군이 될는지요. 하하하하, 아하하하. 피곤하시겠습니다. 이야기가 너무 길어서." +하고 R는 말을 끊소. +나는 R부처가 만류하는 것도 다 뿌리치고 여관으로 돌아왔소. R와 함께 달빛 속, 개 짖는 소리 속을 지나서 아라사 사람의 조그마한 여관으로 돌아왔소. 여관 주인도 R를 아는 모양이어서 반갑게 인사하고 또 내게 대한 부탁도 하는 모양인가 보오. +R는 내 방에 올라와서 내일 하루 지날 일도 이야기하고 또 남 선생과 정임에게 관한 이야기도 하였으나, 나는 그가 무슨 이야기를 하는지 잘 들을 만한 마음의 여유도 없어서 마음 없는 대답을 할 뿐이었소. +R가 돌아간 뒤에 나는 옷도 벗지 아니하고 침대에 드러누웠소. 페치카를 때기는 한 모양이나 방이 써늘하기 그지없소. +`그 두 별 무덤이 정말 R와 그 여학생과 두 사람이 영원히 달치 못할 꿈을 안은 채로 깨끗하게 죽어서 묻힌 무덤이었으면 얼마나 좋을까. 만일 그렇다 하면 내일 한 번 더 가서 보토라도 하고 오련마는.' +하고 나는 R부처의 생활에 대하여 일종의 불만과 환멸을 느꼈소. +그리고 내가 정임을 여기나 시베리아나 어떤 곳으로 불러다가 만일 R와 같은 흉내를 낸다 하면, 하고 생각해 보고는 나는 진저리를 쳤소. 나는 내머리 속에 다시 그러한 생각이 한 조각이라도 들어올 것을 두려워하였소. +급행을 기다리자면 또 사흘을 기다리지 아니하면 아니 되기로 나는 이튿날 새벽에 떠나는 구간차를 타고 F역을 떠나 버렸소. R에게는 고맙다는 편지 한 장만을 써 놓고. 나는 R를 더 보기를 원치 아니하였소. 그것은 반드시 R를 죄인으로 보아서 그런 것은 아니오마는 그저 나는 다시 R를 대면하기를 원치 아니한 것이오. +나는 차가 R의 집 앞을 지날 때에도 R의 집에 대하여서는 외면하였소. +이 모양으로 나는 흥안령을 넘고, 하일라르의 솔밭을 지나서 마침내 이 곳에 온 것이오. +형! 나는 인제는 이 편지를 끝내오. 더 쓸 말도 없거니와 인제는 이것을 쓰기도 싫증이 났소. +이 편지를 쓰기 시작할 때에는 바이칼에 물결이 흉용하더니 이 편지를 끝내는 지금에는 가의 가까운 물에는 얼음이 얼었소. 그리고 저 멀리 푸른 물이 늠실늠실 하얗게 눈 덮인 산 빛과 어울리게 되었소. +사흘이나 이어서 오던 눈이 밤새에 개고 오늘 아침에는 칼날 같은 바람이 눈을 날리고 있소. +나는 이 얼음 위로 걸어서 저 푸른 물 있는 곳까지 가고 싶은 유혹을 금할 수 없소. 더구나 이 편지도 다 쓰고 나니, 인제는 내가 이 세상에서 할 마지막 일까지 다 한 것 같소. +내가 이 앞에 어디로 가서 어찌 될는지는 나도 모르지마는 희미한 소원을 말하면 눈 덮인 시베리아의 인적 없는 삼림 지대로 한정 없이 헤매다가 기운 진하는 곳에서 이 목숨을 마치고 싶소. +최석 군은 `끝'이라는 글자를 썼다가 지워 버리고 딴 종이에다가 이런 말을 썼다 +다 쓰고 나니 이런 편지도 다 부질없는 일이오. 내가 이런 말을 한대야 세상이 믿어 줄 리도 없지 않소. 말이란 소용 없는 것이오. 내가 아무리 내 아내에게 말을 했어도 아니 믿었거든 내 아내도 내 말을 아니 믿었거든 하물며 세상이 내 말을 믿을 리가 있소. 믿지 아니할 뿐 아니라 내 말 중에서 자기네 목적에 필요한 부분만은 믿고, 또 자기네 목적에 필요한 부분은 마음대로 고치고 뒤집고 보태고 할 것이니까, 나는 이 편지를 쓴 것이 한 무익하고 어리석은 일인 줄을 깨달았소. +형이야 이 편지를 아니 보기로니 나를 안 믿겠소? 그 중에는 혹 형이 지금까지 모르던 자료도 없지 아니하니, 형만 혼자 보시고 형만 혼자 내 사정을 알아 주시면 다행이겠소. 세상에 한 믿는 친구를 가지는 것이 저마다 하는 일이겠소? +나는 이 쓸데없는 편지를 몇 번이나 불살라 버리려고 하였으나 그래도 거기도 일종의 애착심이 생기고 미련이 생기는구려. 형 한 분이라도 보여 드리고 싶은 마음이 생기는구려. 내가 S형무소에 입감해 있을 적에 형무소 벽에 죄수가 손톱으로 성명을 새긴 것을 보았소. 뒤에 물었더니 그것은 흔히 사형수가 하는 짓이라고. 사형수가 교수대에 끌려 나가기 바로 전에 흔히 손톱으로 담벼락이나 마룻바닥에 제 이름을 새기는 일이 있다고 하는 말을 들었소. 내가 형에게 쓰는 이 편지도 그 심리와 비슷한 것일까요? +형! 나는 보통 사람보다는, 정보다는 지로, 상식보다는 이론으로, 이해보다는 의리로 살아 왔다고 자신하오. 이를테면 논리학적으로 윤리학적으로 살아온 것이라고 할까. 나는 엄격한 교사요, 교장이었소. 내게는 의지력과 이지력밖에 없는 것 같았소. 그러한 생활을 수십 년 해 오지 아니하였소? 나는 이 앞에 몇십 년을 더 살더라도 내 이 성격이나 생활 태도에는 변함이 없으리라고 자신하였소. 불혹지년이 지났으니 그렇게 생각하였을 것이 아니오? +그런데 형! 참 이상한 일이 있소. 그것은 내가 지금까지 처해 있던 환경을벗어나서 호호 탕탕하게 넓은 세계에 알몸을 내어던짐을 당하니 내 마음 속에는 무서운 여러 가지 변화가 일어나는구려. 나는 이 말도 형에게 아니 하려고 생각하였소. 노여워하지 마시오, 내게까지도 숨기느냐고. 그런 것이 아니오, 형은커녕 나 자신에게까지도 숨기려고 하였던 것이오. 혹시 그런 기다리지 아니 하였던 원, 그런 생각이 내 마음의 하늘에 일어나리라고 상상도 아니하였던, 그런 생각이 일어날 때에는 나는 스스로 놀라고 스스로 슬퍼하였소. 그래서 스스로 숨기기로 하였소. +그 숨긴다는 것이 무엇이냐 하면 그것은 열정이요, 정의 불길이요, 정의 광풍이요, 정의 물결이오. 만일 내 의식이 세계를 평화로운 풀 있고, 꽃 있고, 나무 있는 벌판이라고 하면 거기 난데없는 미친 짐승들이 불을 뿜고 소리를 지르고 싸우고, 영각을 하고 날쳐서, 이 동산의 평화의 화초를 다 짓밟아 버리고 마는 그러한 모양과 같소. +형! 그 이상야릇한 짐승들이 여태껏, 사십 년 간을 어느 구석에 숨어 있었소? 그러다가 인제 뛰어나와 각각 제 권리를 주장하오? +지금 내 가슴 속은 끓소. 내 몸은 바짝 여위었소. 그것은 생리학적으로나 심리학적으로나 타는 것이요, 연소하는 것이오. 그래서 다만 내 몸의 지방만이 타는 것이 아니라, 골수까지 타고, 몸이 탈 뿐이 아니라 생명 그 물건이 타고 있는 것이오. 그러면 어찌할까. +지위, 명성, 습관, 시대 사조 등등으로 일생에 눌리고 눌렸던 내 자아의 일부분이 혁명을 일으킨 것이오? 한 번도 자유로 권세를 부려 보지 못한 본능과 감정들이 내 생명이 끝나기 전에 한 번 날뛰어 보려는 것이오. 이것이 선이오? 악이오? +그들은 내가 지금까지 옳다고 여기고 신성하다고 여기던 모든 권위를 모조리 둘러엎으려고 드오. 그러나 형! 나는 도저히 이 혁명을 용인할 수가 없소. 나는 죽기까지 버티기로 결정을 하였소. 내 속에서 두 세력이 싸우다가 싸우다가 승부가 결정이 못 된다면 나는 승부의 결정을 기다리지 아니하고 살기를 그만두려오. +나는 눈 덮인 삼림 속으로 들어가려오. 나는 V라는 대삼림 지대가 어디인 줄도 알고 거기를 가려면 어느 정거장에서 내릴 것도 다 알아 놓았소. +만일 단순히 죽는다 하면 구태여 멀리 찾아갈 필요도 없지마는 그래도 나 혼자로는 내 사상과 감정의 청산을 하고 싶소. 살 수 있는 날까지 세상을 떠난 곳에서 살다가 완전한 해결을 얻는 날 나는 혹은 승리의, 혹은 패배의 종막을 닫칠 것이오. 만일 해결이 안 되면 안 되는 대로 그치면 그만이지요. +나는 이 붓을 놓기 전에 어젯밤에 꾼 꿈 이야기 하나는 하려오. 꿈이 하도 수상해서 마치 내 전도에 대한 신의 계시와도 같기로 하는 말이오. 그 꿈은 이러하였소. +내가 꽁이깨(꼬이까라는 아라사말로 침대라는 말이 조선 동포의 입으로 변한 말이오.) 짐을 지고 삽을 메고 눈이 덮인 삼림 속을 혼자 걸었소. 이 꽁이깨 짐이란 것은 금점꾼들이 그 여행 중에 소용품, 마른 빵, 소금, 내복 등속을 침대 매트리스에 넣어서 지고 다니는 것이오. 이 짐하고 삽 한 개, 도끼 한 개, 그것이 시베리아로 금을 찾아 헤매는 조선 동포들의 행색이오. 내가 이르쿠츠크에서 이러한 동포를 만났던 것이 꿈으로 되어 나온 모양이오. +나는 꿈에는 세상을 다 잊어버린, 아주 깨끗하고 침착한 사람으로 이 꽁이깨 짐을 지고 삽을 메고 밤인지 낮인지 알 수 없으나 땅은 눈빛으로 희고, 하늘은 구름빛으로 회색인 삼림 지대를 허덕허덕 걸었소. 길도 없는 데를, 인적도 없는 데를. +꿈에도 내 몸은 퍽 피곤해서 쉴 자리를 찾는 마음이었소. +나는 마침내 어떤 언덕 밑 한 군데를 골랐소. 그리고 상시에 이야기에서 들은 대로 삽으로 내가 누울 자리만한 눈을 치고, 그리고는 도끼로 곁에 선 나무 몇 개를 찍어 누이고 거기다가 불을 놓고 그 불김에 녹은 땅을 두어 자나 파내고 그 속에 드러누웠소. 훈훈한 것이 아주 편안하였소. +하늘에는 별이 반짝거렸소. F역에서 보던 바와 같이 큰 별 작은 별도 보이고 평시에 보지 못하던 붉은 별, 푸른 별 들도 보였소. 나는 이 이상한 하늘, 이상한 별들이 있는 하늘을 보고 드러누워 있노라니까 문득 어디서 발자국 소리가 들렸소. 퉁퉁퉁퉁 우루루루…… 나는 벌떡 일어나려 하였으나 몸이 천 근이나 되어서 움직일 수가 없었소. 가까스로 고개를 조금 들고 보니 뿔이 길다랗고 눈이 불같이 붉은 사슴의 떼가 무엇에 놀랐는지 껑충껑충 뛰어 지나가오. 이것은 아마 크로포트킨의 <상호 부조론> 속에 말한 시베리아의 사슴의 떼가 꿈이 되어 나온 모양이오. +그러더니 그 사슴의 떼가 다 지나간 뒤에, 그 사슴의 떼가 오던 방향으로서 정임이가 걸어오는 것이 아니라 스르륵 하고 미끄러져 오오. 마치 인형을 밀어 주는 것같이. +"정임아!" +하고 나는 소리를 치고 몸을 일으키려 하였소. +정임의 모양은 나를 잠깐 보고는 미끄러지는 듯이 흘러가 버리오. +나는 정임아, 정임아를 부르고 팔다리를 부둥거렸소. 그러다가 마침내 내 몸이 번쩍 일으켜짐을 깨달았소. 나는 정임의 뒤를 따랐소. +나는 눈 위로 삼림 속으로 정임의 그림자를 따랐소. 보일 듯 안 보일 듯, 잡힐 듯 안 잡힐 듯, 나는 무거운 다리를 끌고 정임을 따랐소. +정임은 이 추운 날이언만 눈과 같이 흰 옷을 입었소. 그 옷은 옛날 로마 여인의 옷과 같이 바람결에 펄렁거렸소. +"오지 마세요. 저를 따라오지 못하십니다." +하고 정임은 눈보라 속에 가리워 버리고 말았소. 암만 불러도 대답이 없고 눈보라가 다 지나간 뒤에도 붉은 별, 푸른 별과 뿔 긴 사슴의 떼뿐이오. 정임은 보이지 아니하였소. 나는 미칠 듯이 정임을 찾고 부르다가 잠을 깨었소. +꿈은 이것뿐이오. 꿈을 깨어서 창 밖을 바라보니 얼음과 눈에 덮인 바이칼호 위에는 새벽의 겨울 달이 비치어 있었소. 저 멀리 검푸르게 보이는 것이 채 얼어붙지 아니한 물이겠지요. 오늘 밤에 바람이 없고 기온이 내리면 그것마저 얼어붙을는지 모르지요. 벌써 살얼음이 잡혔는지도 모르지요. 아아, 그 속은 얼마나 깊을까. 나는 바이칼의 물 속이 관심이 되어서 못 견디겠소. +형! 나는 자백하지 아니할 수 없소. 이 꿈은 내 마음의 어떤 부분을 설명한 것이라고. 그러나 형! 나는 이것을 부정하려오. 굳세게 부정하려오. 나는 이 꿈을 부정하려오. 억지로라도 부정하려오. 나는 결코 내 속에 일어난 혁명을 용인하지 아니하려오. 나는 그것을 혁명으로 인정하지 아니하려오. 아니오! 아니오! 그것은 반란이오! 내 인격의 통일에 대한 반란이오. 단연코 무단적으로 진정하지 아니하면 아니 될 반란이오. 보시오! 나는 굳게 서서 한 걸음도 뒤로 물러서지 아니할 것이오. 만일에 형이 광야에 구르는 내 시체나 해골을 본다든지, 또는 무슨 인연으로 내 무덤을 발견하는 날이 있다고 하면 그 때에 형은 내가 이 모든 반란을 진정한 개선의 군주로 죽은 것을 알아 주시오. +인제 바이칼에 겨울의 석양이 비치었소. 눈을 인 나지막한 산들이 지는 햇빛에 자줏빛을 발하고 있소. 극히 깨끗하고 싸늘한 광경이오. 아디유! +이 편지를 우편에 부치고는 나는 최후의 방랑의 길을 떠나오. 찾을 수도 없고, 편지 받을 수도 없는 곳으로. +부디 평안히 계시오. 일 많이 하시오. 부인께 문안 드리오. 내 가족과 정임의 일 맡기오. 아디유! +이것으로 최석 군의 편지는 끝났다. +나는 이 편지를 받고 울었다. 이것이 일 편의 소설이라 하더라도 슬픈 일이어든, 하물며 내가 가장 믿고 사랑하는 친구의 일임에야. +이 편지를 받고 나는 곧 최석 군의 집을 찾았다. 주인을 잃은 이 집에서는아이들이 마당에서 떠들고 있었다. +"삼청동 아자씨 오셨수. 어머니, 삼청동 아자씨." +하고 최석 군의 작은딸이 나를 보고 뛰어들어갔다. +최석의 부인이 나와 나를 맞았다. +부인은 머리도 빗지 아니하고, 얼굴에는 조금도 화장을 아니하고, 매무시도 흘러내릴 지경으로 정돈되지 못하였다. 일 주일이나 못 만난 동안에 부인의 모양은 더욱 초췌하였다. +"노석헌테서 무슨 기별이나 있습니까." +하고 나는 무슨 말로 말을 시작할지 몰라서 이런 말을 하였다. +"아니오. 왜 그이가 집에 편지하나요?" +하고 부인은 성난 빛을 보이며, +"집을 떠난 지가 근 사십 일이 되건만 엽서 한 장 있나요. 집안 식구가 다 죽기로 눈이나 깜짝할 인가요. 그저 정임이헌테만 미쳐서 죽을지 살지를 모르지요." +하고 울먹울먹한다. +"잘못 아십니다. 부인께서 노석의 마음을 잘못 아십니다. 그런 것이 아닙니다." +하고 나는 확신 있는 듯이 말을 시작하였다. +"노석의 생각을 부인께서 오해하신 줄은 벌써부터 알았지마는 오늘 노석의 편지를 받아보고 더욱 분명히 알았습니다." +하고 나는 부인의 표정의 변화를 엿보았다. +"편지가 왔어요?" +하고 부인은 놀라면서, +"지금 어디 있어요? 일본 있지요?" +하고 질투의 불길을 눈으로 토하였다. +"일본이 아닙니다. 노석은 지금 아라사에 있습니다." +"아라사요?" +하고 부인은 놀라는 빛을 보이더니, +"그럼 정임이를 데리고 아주 아라사로 가케오치를 하였군요." +하고 히스테리컬한 웃음을 보이고는 몸을 한 번 떨었다. +부인은 남편과 정임의 관계를 말할 때마다 이렇게 경련적인 웃음을 웃고 몸을 떠는 것이 버릇이었다. +"아닙니다. 노석은 혼자 가 있습니다. 그렇게 오해를 마세요." +하고 나는 보에 싼 최석의 편지를 내어서 부인의 앞으로 밀어 놓으며, +"이것을 보시면 다 아실 줄 압니다. 어쨌으나 노석은 결코 정임이를 데리고 간 것이 아니요, 도리어 정임이를 멀리 떠나서 간 것입니다. 그러나 그보다도 중대 문제가 있습니다. 노석은 이 편지를 보면 죽을 결심을 한 모양입니다." +하고 부인의 주의를 질투로부터 그 남편에게 대한 동정에 끌어 보려 하였다. +"흥. 왜요? 시체 정사를 하나요? 좋겠습니다. 머리가 허연 것이 딸자식 같은 계집애허구 정사를 한다면 그 꼴 좋겠습니다. 죽으라지요. 죽으래요. 죽는 것이 낫지요. 그리구 살아서 무엇 해요?" +내 뜻은 틀려 버렸다. 부인의 표정과 말에서는 더욱더욱 독한 질투의 안개와 싸늘한 얼음가루가 날았다. +나는 부인의 이 태도에 반감을 느꼈다. 아무리 질투의 감정이 강하다 하기로, 사람의 생명이 제 남편의 생명이 위태함에도 불구하고 오직 제 질투의 감정에만 충실하려 하는 그 태도가 불쾌하였다. 그래서 나는, +"나는 그만큼 말씀해 드렸으니 더 할 말씀은 없습니다. 아무려나 좀더 냉정하게 생각해 보세요. 그리고 이것을 읽어 보세요." +하고 일어나서 집으로 돌아와 버리고 말았다. +도무지 불쾌하기 그지없는 날이다. 최석의 태도까지도 불쾌하다. 달아나긴 왜 달아나? 죽기는 왜 죽어? 못난 것! 기운 없는 것! 하고 나는 최석이가 곁에 섰기나 한 것처럼 눈을 흘기고 중얼거렸다. +최석의 말대로 최석의 부인은 악한 사람이 아니요, 그저 보통인 여성일는지 모른다. 그렇다 하면 여자의 마음이란 너무도 질투의 종이 아닐까. 설사 남편 되는 최석의 사랑이 아내로부터 정임에게로 옮아 갔다고 하더라도 그것을 질투로 회복하려는 것은 어리석은 일이다. 이미 사랑이 떠난 남편을 네 마음대로 가거라 하고 자발적으로 내어버릴 것이지마는 그것을 못 할 사정이 있다고 하면 모르는 체하고 내버려 둘 것이 아닌가. 그래도 이것은 우리네 남자의 이론이요, 여자로는 이런 경우에 질투라는 반응밖에 없도록 생긴 것일까 나는 이런 생각을 하고 있었다. +시계가 아홉시를 친다. +남대문 밖 정거장을 떠나는 열차의 기적 소리가 들린다. +나는 만주를 생각하고, 시베리아를 생각하고 최석을 생각하였다. 마음으로는 정임을 사랑하면서 그 사랑을 발표할 수 없어서 시베리아의 눈 덮인 삼림 속으로 방황하는 최석의 모양이 최석의 꿈 이야기에 있는 대로 눈앞에 선하게 떠나온다. +`사랑은 목숨을 빼앗는다.' +하고 나는 사랑일래 일어나는 인생의 비극을 생각하였다. 그러나 최석의 경우는 보통 있는 공식과는 달라서 사랑을 죽이기 위해서 제 목숨을 죽이는 것이었다. 그렇다 하더라도, +`사랑은 목숨을 빼앗는다.' +는 데에는 다름이 없다. +나는 불쾌도 하고 몸도 으스스하여 얼른 자리에 누웠다. 며느리가 들어온 뒤부터 사랑 생활을 하는 지가 벌써 오 년이나 되었다. 우리 부처란 인제는 한 역사적 존재요, 윤리적 관계에 불과하였다. 오래 사귄 친구와 같은 익숙함이 있고, 집에 없지 못할 사람이라는 필요감도 있지마는 젊은 부처가 가지는 듯한 그런 정은 벌써 없는 지 오래였다. 아내도 나를 대하면 본체만체, 나도 아내를 대하면 본체만체, 무슨 필요가 있어서 말을 붙이더라도 아무쪼록 듣기 싫기를 원하는 듯이 톡톡 내던졌다. 아내도 근래에 와서는 옷도 아무렇게나, 머리도 아무렇게나, 어디 출입할 때밖에는 도무지 화장을 아니 하였다. +그러나 그렇다고 우리 부처의 새가 좋지 못한 것도 아니었다. 서로 소중히 여기는 마음도 있었다. 아내가 안에 있다고 생각하면 마음이 든든하고 또 아내의 말에 의하건대 내가 사랑에 있거니 하면 마음이 든든하다고 한다. +우리 부처의 관계는 이러한 관계다. +나는 한 방에서 혼자 잠을 자는 것이 습관이 되어서 누가 곁에 있으면 잠이 잘 들지 아니하였다. 혹시 어린것들이 매를 얻어맞고 사랑으로 피난을 와서 울다가 내 자리에서 잠이 들면 귀엽기는 귀여워도 잠자리는 편안치 아니하였다. 나는 책을 보고 글을 쓰고 공상을 하고 있으면 족하였다. 내게는 아무 애욕적 요구도 없었다. 이것은 내 정력이 쇠모한 까닭인지 모른다. +그러나 최석의 편지를 본 그 날 밤에는 도무지 잠이 잘 들지 아니하였다. 최석의 편지가 최석의 고민이 내 졸던 의식에 무슨 자극을 준 듯하였다. 적막한 듯하였다. 허전한 듯하였다. 무엇인지 모르나 그리운 것이 있는 것 같았다. +"어, 이거 안되었군." +하고 나는 벌떡 일어나 담배를 피워 물었다. +"나으리 주무셔 곕시오?" +하고 아범이 전보를 가지고 왔다. +"명조 경성 착 남정임" +이라는 것이었다. +"정임이가 와?" +하고 나는 전보를 다시 읽었다. +최석의 그 편지를 보면 최석 부인에게는 어떤 반응이 일어나고 정임에게는 어떤 반응이 일어날까, 하고 생각하면 자못 마음이 편하지 못하였다. +이튿날 아침에 나는 부산서 오는 차를 맞으려고 정거장에를 나갔다. +차는 제 시간에 들어왔다. 남정임은 슈트케이스 하나를 들고 차에서 내렸다. 검은 외투에 검은 모자를 쓴 그의 얼굴은 더욱 해쓱해 보였다. +"선생님!" +하고 정임은 나를 보고 손에 들었던 짐을 땅바닥에 내려놓고, 내 앞으로 왔다. +"풍랑이나 없었나?" +하고 나는 내 손에 잡힌 정임의 손이 싸늘한 것을 근심하였다. +"네. 아주 잔잔했습니다. 저같이 약한 사람도 밖에 나와서 바다 경치를 구경하였습니다." +하고 정임은 사교적인 웃음을 웃었다. 그러나 그의 눈에는 눈물이 있는 것 같았다. +"최 선생님 어디 계신지 아세요?" +하고 정임은 나를 따라 서면서 물었다. +"나도 지금까지 몰랐는데 어제 편지를 하나 받았지." +하는 것이 내 대답이었다. +"네? 편지 받으셨어요? 어디 계십니까?" +하고 정임은 걸음을 멈추었다. +"나도 몰라." +하고 나도 정임과 같이 걸음을 멈추고, +"그 편지를 쓴 곳도 알고 부친 곳도 알지마는 지금 어디로 갔는지 그것은 모르지. 찾을 생각도 말고 편지할 생각도 말라고 했으니까." +하고 사실대로 대답하였다. +"어디야요? 그 편지 부치신 곳이 어디야요? 저 이 차로 따라갈 테야요." +하고 정임은 조급하였다. +"갈 때에는 가더라도 이 차에야 갈 수가 있나." +하고 나는 겨우 정임을 끌고 들어왔다. +정임을 집으로 데리고 와서 대강 말을 하고, 이튿날 새벽 차로 떠난다는 것을, +"가만 있어. 어떻게 계획을 세워 가지고 해야지." +하여 가까스로 붙들어 놓았다. +아침을 먹고 나서 최석 집에를 가 보려고 할 즈음에 순임이가 와서 마루 끝에 선 채로, +"선생님, 어머니가 잠깐만 오십시사구요." +하였다. +"정임이가 왔다." +하고 내가 그러니까, +"정임이가요?" +하고 순임은 깜짝 놀라면서, +"정임이는 아버지 계신 데를 알아요?" +하고 물었다. +"정임이도 모른단다. 너 아버지는 시베리아에 계시고 정임이는 동경 있다가 왔는데 알 리가 있니?" +하고 나는 순임의 생각을 깨뜨리려 하였다. 순임은, +"정임이가 어디 있어요?" +하고 방들 있는 곳을 둘러보며, +"언제 왔어요?" +하고는 그제야 정임에게 대한 반가운 정이 발하는 듯이, +"정임아!" +하고 불러 본다. +"언니요? 여기 있수." +하고 정임이가 머릿방 문을 열고 옷을 갈아입던 채로 고개를 내어민다. +순임은 구두를 차내버리듯이 벗어 놓고 정임의 방으로 뛰어들어간다. +나는 최석의 집에를 가느라고 외투를 입고 모자를 쓰고 정임의 방문을 열어 보았다. 두 처녀는 울고 있었다. +"정임이도 가지. 아주머니 뵈러 안 가?" +하고 나는 정임을 재촉하였다. +"선생님 먼저 가 계셔요." +하고 순임이가 눈물을 씻고 일어나면서, +"이따가 제가 정임이허구 갑니다." +하고 내게 눈을 끔쩍거려 보였다. 갑자기 정임이가 가면 어머니와 정임이와 사이에 어떠한 파란이 일어나지나 아니할까 하고 순임이가 염려하는 것이었다. 순임도 인제는 노성하여졌다고 나는 생각하였다. +"선생님 이 편지가 다 참말일까요?" +하고 나를 보는 길로 최석 부인이 물었다. 최석 부인은 히스테리를 일으킨 사람 모양으로 머리와 손을 떨었다. +나는 참말이냐 하는 것이 무엇을 가리키는 말인지 분명하지 아니하여서, +"노석이 거짓말할 사람입니까?" +하고 대체론으로 대답하였다. +"앉으십쇼. 앉으시란 말씀도 안 하고." +하고 부인은 침착한 모양을 보이려고 빙그레 웃었으나, 그것은 실패였다. +"그게 참말일까요? 정임이가 아기를 뗀 것이 아니라, 폐가 나빠서 피를 토하고 입원하였다는 것이?" +하고 부인은 중대하다는 표정을 가지고 묻는다. +"그럼 그것이 참말이 아니구요. 아직도 그런 의심을 가지고 계십니까. 정임이와 한 방에 있는 학생이 모함한 것이라고 안 그랬어요? 그게 말이 됩니까." +하고 언성을 높여서 대답하였다. +"그럼 왜 정임이가 호텔에서 왜 아버지한테 한 번 안아 달라고 그래요? 그 편지에 쓴 대로 한 번 안아만 보았을까요?" +이것은 부인의 둘째 물음이었다. +"나는 그뿐이라고 믿습니다. 그것이 도리어 깨끗하다는 표라고 믿습니다. 안 그렇습니까?" +하고 나는 딱하다는 표정을 하였다. +"글쎄요." +하고 부인은 한참이나 생각하고 있다가, +"정말 애 아버지가 혼자 달아났을까요? 정임이를 데리고 가케오치한 것이 아닐까요? 꼭 그랬을 것만 같은데." +하고 부인은 괴로운 표정을 감추려는 듯이 고개를 숙인다. +나는 남편에게 대한 아내의 의심이 어떻게 깊은가에 아니 놀랄 수가 없어서, +"허." +하고 한 마디 웃고, +"그렇게 수십 년 동안 부부 생활을 하시고도 그렇게 노석의 인격을 몰라 주십니까. 나는 부인께서 하시는 말씀이 부러 하시는 농담으로밖에 아니 들립니다. 정임이가 지금 서울 있습니다." +하고 또 한 번 웃었다. 정말 기막힌 웃음이었다. +"정임이가 서울 있어요?" +하고 부인은 펄쩍 뛰면서, +"어디 있다가 언제 왔습니까? 그게 정말입니까?" +하고 의아한 빛을 보인다. 꼭 최석이하고 함께 달아났을 정임이가 서울에 있을 리가 없는 것이었다. +"동경서 오늘 아침에 왔습니다. 지금 우리 집에서 순임이허구 이야기를 하고 있으니까 조금 있으면 뵈오러 올 것입니다." +하고 나는 정임이가 분명히 서울 있는 것을 일일이 증거를 들어서 증명하였다. 그리고 우스운 것을 속으로 참았다. 그러나 다음 순간에는 이 병들고 늙은 아내의 질투와 의심으로 괴로워서 덜덜덜덜 떨고 앉았는 것을 가엾게 생각하였다. +정임이가 지금 서울에 있는 것이 더 의심할 여지가 없는 사실임이 판명되매, 부인은 도리어 낙망하는 듯하였다. 그가 제 마음대로 그려 놓고 믿고 하던 모든 철학의 계통이 무너진 것이었다. +한참이나 흩어진 정신을 못 수습하는 듯이 앉아 있더니 아주 기운 없는 어조로, +"선생님 애 아버지가 정말 죽을까요? 정말 영영 집에를 안 돌아올까요?" +하고 묻는다. 그 눈에는 벌써 눈물이 어리었다. +"글쎄요. 내 생각 같아서는 다시는 집에 돌아오지 아니할 것 같습니다. 또 그만치 망신을 했으니, 이제 무슨 낯으로 돌아옵니까. 내라도 다시 집에 돌아올 생각은 아니 내겠습니다." +하고 나는 의식적으로 악의를 가지고 부인의 가슴에 칼을 하나 박았다. +그 칼은 분명히 부인의 가슴에 아프게 박힌 모양이었다. +"선생님. 어떡하면 좋습니까. 애 아버지가 죽지 않게 해 주세요. 그렇지 않아도 순임이년이 제가 걔 아버지를 달아나게나 한 것처럼 원망을 하는데요. 그러다가 정녕 죽으면 어떻게 합니까. 제일 딴 자식들의 원망을 들을까봐 겁이 납니다. 선생님, 어떻게 애 아버지를 붙들어다 주세요." +하고 마침내 참을 수 없이 울었다. 말은 비록 자식들의 원망이 두렵다고 하지마는 질투의 감정이 스러질 때에 그에게는 남편에게 대한 아내의 애정이 막혔던 물과 같이 터져 나온 것이라고 나는 해석하였다. +"글쎄, 어디 있는 줄 알고 찾습니까. 노석의 성미에 한번 아니 한다고 했으면 다시 편지할 리는 만무하다고 믿습니다." +하여 나는 부인의 가슴에 둘째 칼날을 박았다. +나는 비록 최석의 부인이 청하지 아니하더라도 최석을 찾으러 떠나지 아니하면 아니 될 의무를 진다. 산 최석을 못 찾더라도 최석의 시체라도, 무덤이라도, 죽은 자리라도, 마지막 있던 곳이라도 찾아보지 아니하면 아니 될 의무를 깨닫는다. +그러나 시국이 변하여 그 때에는 아라사에 가는 것은 여간 곤란한 일이 아니었다. 그 때에는 북만의 풍운이 급박하여 만주리를 통과하기는 사실상 불가능에 가까웠다. 마점산(馬占山) 일파의 군대가 흥안령, 하일라르 등지에 웅거하여 언제 대충돌이 폭발될는지 모르던 때였다. 이 때문에 시베리아에 들어가기는 거의 절망 상태라고 하겠고, 또 관헌도 아라사에 들어가는 여행권을 잘 교부할 것 같지 아니하였다. +부인은 울고, 나는 이런 생각 저런 생각 하고 있는 동안에 문 밖에는 순임이, 정임이가 들어오는 소리가 들렸다. +"아이, 정임이냐." +하고 부인은 반갑게 허리 굽혀 인사하는 정임의 어깨에 손을 대고, +"자 앉아라. 그래 인제 병이 좀 나으냐…… 수척했구나. 더 노성해지구 반 년도 못 되었는데." +하고 정임에게 대하여 애정을 표하는 것을 보고 나는 의외지마는 다행으로 생각하였다. 나는 정임이가 오면 보기 싫은 한 신을 연출하지 않나 하고 근심하였던 것이다. +"희 잘 자라요?" +하고 정임은 한참이나 있다가 비로소 입을 열었다. +"응, 잘 있단다. 컸나 가 보아라." +하고 부인은 더욱 반가운 표정을 보인다. +"어느 방이야?" +하고 정임은 선물 보퉁이를 들고 순임과 함께 나가 버린다. 여자인 정임은 희와 순임과 부인과 또 순임의 다른 동생에게 선물 사 오는 것을 잊어버리지 아니하였다. +정임과 순임은 한 이삼 분 있다가 돌아왔다. 밖에서 희가 무엇이라고 지절대는 소리가 들린다. 아마 정임이가 사다 준 선물을 받고 좋아하는 모양이다. +정임은 들고 온 보퉁이에서 여자용 배스로브 하나를 내어서 부인에게주며, +"맞으실까?" +하였다. +"아이 그건 무어라고 사 왔니?" +하고 부인은 좋아라고 입어 보고, 이리 보고 저리 보고 하면서, +"난 이런 거 처음 입어 본다." +하고 자꾸 끈을 동여맨다. +"정임이가 난 파자마를 사다 주었어." +하고 순임은 따로 쌌던 굵은 줄 있는 융 파자마를 내어서 경매장 사람 모양으로 흔들어 보이며, +"어머니 그 배스로브 나 주우. 어머닌 늙은이가 그건 입어서 무엇 하우?" +하고 부인이 입은 배스로브를 벗겨서 제가 입고 두 호주머니에 손을 넣고 어기죽어기죽하고 서양 부인네 흉내를 낸다. +"저런 말괄량이가 너도 정임이처럼 좀 얌전해 보아라." +하고 부인은 순임을 향하여 눈을 흘긴다. +이 모양으로 부인과 정임과의 대면은 가장 원만하게 되었다. +그러나 부인은 정임에게 최석의 편지를 보이기를 원치 아니하였다. 편지가 왔다는 말조차 입 밖에 내지 아니하였다. 그러나 순임이가 정임에게 대하여 표하는 애정은 여간 깊지 아니하였다. 그 둘은 하루 종일 같이 있었다. 정임은 그 날 저녁에 나를 보고, +"순임이헌테 최 선생님 편지 사연은 다 들었어요. 순임이가 그 편지를 훔쳐다가 얼른얼른 몇 군데 읽어도 보았습니다. 순임이가 저를 퍽 동정하면서 절더러 최 선생을 따라가 보라고 그래요. 혼자 가기가 어려우면 자기허구 같이 가자고. 가서 최 선생을 데리고 오자고. 어머니가 못 가게 하거든 몰래 둘이 도망해 가자고. 그래서 그러자고 그랬습니다. 안됐지요. 선생님?" +하고 저희끼리 작정은 다 해 놓고는 슬쩍 내 의향을 물었다. +"젊은 여자 단둘이서 먼 여행을 어떻게 한단 말이냐? 게다가 지금 북만주 형세가 대단히 위급한 모양인데. 또 정임이는 그 건강 가지고 어디를 가, 이 추운 겨울에?" +하고 나는 이런 말이 다 쓸데없는 말인 줄 알면서도 어른으로서 한 마디 안 할 수 없어서 하였다. 정임은 더 제 뜻을 주장하지도 아니하였다. +그 날 저녁에 정임은 순임의 집에서 잤는지 집에 오지를 아니하였다. +나는 이 일을 어찌하면 좋은가, 이 두 여자의 행동을 어찌하면 좋은가 하고 혼자 끙끙 생각하고 있었다. +이튿날 나는 궁금해서 최석의 집에를 갔더니 부인이, +"우리 순임이 댁에 갔어요?" +하고 의외의 질문을 하였다. +"아니오." +하고 나는 놀랐다. +"그럼, 이것들이 어딜 갔어요? 난 정임이허구 댁에서 잔 줄만 알았는데." +하고 부인은 무슨 불길한 것이나 본 듯이 몸을 떤다. 히스테리가 일어난 것이었다. +나는 입맛을 다시었다. 분명히 이 두 여자가 시베리아를 향하고 떠났구나 하였다. +그 날은 소식이 없이 지났다. 그 이튿날도 소식이 없이 지났다. +최석 부인은 딸까지 잃어버리고 미친 듯이 울고 애통하다가 머리를 싸매고 누워 버리고 말았다. +정임이와 순임이가 없어진 지 사흘 만에 아침 우편에 편지 한 장을 받았다. 그 봉투는 봉천 야마도 호텔 것이었다. 그 속에는 편지 두 장이 들어 있었다. 한 장은 , +선생님! 저는 아버지를 위하여, 정임을 위하여 정임과 같이 집을 떠났습니다. +어머님께서 슬퍼하실 줄은 알지마는 저희들이 다행히 아버지를 찾아서 모시고 오면 어머니께서도 기뻐하실 것을 믿습니다. 저희들이 가지 아니하고는 아버지는 살아서 돌아오실 것 같지 아니합니다. 아버지를 이처럼 불행하시게 한 죄는 절반은 어머니께 있고, 절반은 제게 있습니다. 저는 아버지 일을 생각하면 가슴이 미어지고 이가 갈립니다. 저는 아무리 해서라도 아버지를 찾아내어야겠습니다. +저는 정임을 무한히 동정합니다. 저는 어려서 정임을 미워하고 아버지를 미워하였지마는 지금은 아버지의 마음과 정임의 마음을 알아볼 만치 자랐습니다. +선생님! 저희들은 둘이 손을 잡고 어디를 가서든지 아버지를 찾아내겠습니다. 하나님의 사자가 낮에는 구름이 되고 밤에는 별이 되어서 반드시 저희들의 앞길을 인도할 줄 믿습니다. +선생님, 저희 어린것들의 뜻을 불쌍히 여기셔서 돈 천 원만 전보로 보내 주시기를 바랍니다. +만일 만주리로 가는 길이 끊어지면 몽고로 자동차로라도 가려고 합니다. 아버지 편지에 적힌 F역의 R씨를 찾고, 그리고 바이칼 호반의 바이칼리스코에를 찾아, 이 모양으로 찾으면 반드시 아버지를 찾아 내고야 말 것을 믿습니다. +선생님, 돈 천 원만 봉천 야마도 호텔 최순임 이름으로 부쳐 주세요. 그리고 어머니헌테는 아직 말씀 말아 주세요. +선생님. 이렇게 걱정하시게 해서 미안합니다. 용서하세요. +순임 상서 +이렇게 써 있다. 또 한 장에는, +선생님! 저는 마침내 돌아오지 못할 길을 떠나나이다. 어디든지 최 선생님을 뵈옵는 곳에서 이 몸을 묻어 버리려 하나이다. 지금 또 몸에 열이 나는 모양이요, 혈담도 보이오나 최 선생을 뵈올 때까지는 아무리 하여서라도 이 목숨을 부지하려 하오며, 최 선생을 뵈옵고 제가 진 은혜를 감사하는 한 말씀만 사뢰면 고대 죽사와도 여한이 없을까 하나이다. +순임 언니가 제게 주시는 사랑과 동정은 오직 눈물과 감격밖에 더 표할 말씀이 없나이다. 순임 언니가 저를 보호하여 주니 마음이 든든하여이다……. +이라고 하였다. +편지를 보아야 별로 놀랄 것은 없었다. 다만 말괄량이로만 알았던 순임의 속에 어느새에 그러한 감정이 발달하였나 하는 것을 놀랄 뿐이었다. +그러나 걱정은 이것이다. 순임이나 정임이나 다 내가 감독해야 할 처지에 있거늘 그들이 만리 긴 여행을 떠난다고 하니 감독자인 내 태도를 어떻게 할까 하는 것이다. +나는 편지를 받는 길로 우선 돈 천 원을 은행에 가서 찾아다 놓았다. +암만해도 내가 서울에 가만히 앉아서 두 아이에게 돈만 부쳐 주는 것이 인정에 어그러지는 것 같아서 나는 여러 가지로 주선을 하여서 여행의 양해를 얻어 가지고 봉천을 향하여 떠났다. +내가 봉천에 도착한 것은 밤 열시가 지나서였다. 순임과 정임은 자리옷 바람으로 내 방으로 달려와서 반가워하였다. 그들이 반가워하는 양은 실로 눈물이 흐를 만하였다. +"아이구 선생님!" +"아이구 어쩌면!" +하는 것이 그들의 내게 대한 인사의 전부였다. +"정임이 어떠오?" +하고 나는 순임의 편지에 정임이가 열이 있단 말을 생각하였다. +"무어요. 괜찮습니다." +하고 정임은 웃었다. +전등빛에 보이는 정임의 얼굴은 그야말로 대리석으로 깎은 듯하였다. 여위고 핏기가 없는 것이 더욱 정임의 용모에 엄숙한 맛을 주었다. +"돈 가져오셨어요?" +하고 순임이가 어리광 절반으로 묻다가 내가 웃고 대답이 없음을 보고, +"우리를 붙들러 오셨어요?" +하고 성내는 양을 보인다. +"그래 둘이서들 간다니 어떻게 간단 말인가. 시베리아가 어떤 곳에 붙었는지 알지도 못하면서." +하고 나는 두 사람이 그리 슬퍼하지 아니하는 순간을 보는 것이 다행하여서 농담삼아 물었다. +"왜 몰라요? 시베리아가 저기 아니야요?" +하고 순임이가 산해관 쪽을 가리키며, +"우리도 지리에서 배워서 다 알아요. 어저께 하루 종일 지도를 사다 놓고 연구를 하였답니다. 봉천서 신경, 신경서 하얼빈, 하얼빈에서 만주리, 만주리에서 이르쿠츠크, 보세요, 잘 알지 않습니까. 또 만일 중동 철도가 불통이면 어떻게 가는고 하니 여기서 산해관을 가고, 산해관서 북경을 가지요. 그리고는 북경서 장가구를 가지 않습니까. 장가구서 자동차를 타고 몽고를 통과해서 가거든요. 잘 알지 않습니까." +하고 정임의 허리를 안으며, +"그렇지이?" +하고 자신 있는 듯이 웃는다. +"또 몽고로도 못 가게 되어서 구라파를 돌게 되면?" +하고 나는 교사가 생도에게 묻는 모양으로 물었다. +"네, 저 인도양으로 해서 지중해로 해서 프랑스로 해서 그렇게 가지요." +"허, 잘 아는구나." +하고 나는 웃었다. +"그렇게만 알아요? 또 해삼위로 해서 가는 길도 알아요. 저희를 어린애로 아시네." +"잘못했소." +"하하." +"후후." +사실 그들은 벌써 어린애들은 아니었다. 순임도 벌써 그 아버지의 말할 수 없는 사정에 동정할 나이가 되었다. 순임이가 기어다닌 것은 본 나로는 이것도 이상하게 보였다. 나는 벌써 나이 많았구나 하는 생각이 나지 아니할 수 없었다. +나는 잠 안 드는 하룻밤을 지내면서 옆방에서 정임이가 기침을 짓는 소리를 들었다. 그 소리는 내 가슴을 아프게 하였다. +이튿날 나는 두 사람에게 돈 천 원을 주어서 신경 가는 급행차를 태워 주었다. 대륙의 이 건조하고 추운 기후에 정임의 병든 폐가 견디어 날까 하고 마음이 놓이지 아니하였다. 그러나 나는 그들을 가라고 권할 수는 있어도 가지 말라고 붙들 수는 없었다. 다만 제 아버지, 제 애인을 죽기 전에 만날 수 있기만 빌 뿐이었다. +나는 두 아이를 북쪽으로 떠나 보내고 혼자 여관에 들어와서 도무지 정신을 진정하지 못하여 술을 먹고 잊으려 하였다. 그러다가 그 날 밤차로 서울로 돌아왔다. +이튿날 아침에 나는 최석 부인을 찾아서 순임과 정임이가 시베리아로 갔단 말을 전하였다. +그 때에 최 부인은 거의 아무 정신이 없는 듯하였다. 아무 말도 하지 아니하고 울고만 있었다. +얼마 있다가 부인은, +"그것들이 저희들끼리 가서 괜찮을까요?" +하는 한 마디를 할 뿐이었다. +며칠 후에 순임에게서 편지가 왔다. 그것은 하얼빈에서 부친 것이었다. +하얼빈을 오늘 떠납니다. 하얼빈에 와서 아버지 친구 되시는 R소장을 만나뵈옵고 아버지 일을 물어 보았습니다. 그리고 저희 둘이서 찾아 떠났다는 말씀을 하였더니 R소장이 대단히 동정하여서 여행권도 준비해 주시기로 저희는 아버지를 찾아서 오늘 오후 모스크바 가는 급행으로 떠납니다. 가다가 F역에 내리기는 어려울 듯합니다. 정임의 건강이 대단히 좋지 못합니다. 일기가 갑자기 추워지는 관계인지 정임의 신열이 오후면 삼십팔 도를 넘고 기침도 대단합니다. 저는 염려가 되어서 정임더러 하얼빈에서 입원하여 조리를 하라고 권하였지마는 도무지 듣지를 아니합니다. 어디까지든지 가는 대로 가다가 더 못 가게 되면 그 곳에서 죽는다고 합니다. +저는 그 동안 며칠 정임과 같이 있는 중에 정임이가 어떻게 아름답고 높고 굳세게 깨끗한 여자인 것을 발견하였습니다. 저는 지금까지 정임을 몰라본 것을 부끄럽게 생각합니다. 그리고 또 제 아버지께서 어떻게 갸륵한 어른이신 것을 인제야 깨달았습니다. 자식 된 저까지도 아버지와 정임과의 관계를 의심하였습니다. 의심하는 것보다는 세상에서 말하는 대로 믿고 있었습니다. 그러나 정임을 만나 보고 정임의 말을 듣고 아버지께서 선생님께 드린 편지가 모두 참인 것을 깨달았습니다. 아버지께서는 친구의 의지 없는 딸인 정임을 당신의 친혈육인 저와 꼭 같이 사랑하려고 하신 것이었습니다. 그것이 얼마나 갸륵한 일입니까. 그런데 제 어머니와 저는 그 갸륵하신 정신을 몰라보고 오해하였습니다. 어머니는 질투하시고 저는 시기하였습니다. 이것이 얼마나 아버지를 그렇게 갸륵하신 아버지를 몰라뵈온 것입니다. 이것이 얼마나 부끄럽고 원통한 일입니까. +선생님께서도 여러 번 아버지의 인격이 높다는 것을 저희 모녀에게 설명해 주셨습니다마는 마음이 막힌 저는 선생님의 말씀도 믿지 아니하였습니다. +선생님, 정임은 참으로 아버지를 사랑합니다. 정임에게는 이 세상에 아버지밖에는 사랑하는 아무것도 없이, 그렇게 외●으로, 그렇게 열렬하게 아버지를 사모하고 사랑합니다. 저는 잘 압니다. 정임이가 처음에는 아버지로 사랑하였던 것을, 그러나 어느 새에 정임의 아버지에게 대한 사랑이 무엇인지 모를 사랑으로 변한 것을, 그것이 연애냐 하고 물으면 정임은 아니라고 할 것입니다. 정임의 그 대답은 결코 거짓이 아닙니다. 정임은 숙성하지마는 아직도 극히 순결합니다. 정임은 부모를 잃은 후에 아버지밖에 사랑한 사람이 없습니다. 또 아버지에게밖에 사랑받던 일도 없습니다. 그러니깐 정임은 아버지를 그저 사랑합니다 전적으로 사랑합니다. 선생님, 정임의 사랑에는 아버지에 대한 자식의 사랑, 오라비에 대한 누이의 사랑, 사내 친구에 대한 여자 친구의 사랑, 애인에 대한 애인의 사랑, 이 밖에 존경하고 숭배하는 선생에 대한 제자의 사랑까지, 사랑의 모든 종류가 포함되어 있는 것을 저는 발견하였습니다. +선생님, 정임의 정상은 차마 볼 수가 없습니다. 아버지의 안부를 근심하는 양은 제 몇십 배나 되는지 모르게 간절합니다. 정임은 저 때문에 아버지가 불행하게 되셨다고 해서 차마 볼 수 없게 애통하고 있습니다. 진정을 말씀하오면 저는 지금 아버지보다도 어머니보다도 정임에게 가장 동정이 끌립니다. 선생님, 저는 아버지를 찾아가는 것이 아니라 정임을 돕기 위하여 간호하기 위하여 가는 것 같습니다. +선생님, 저는 아직 사랑이란 것이 무엇인지를 모릅니다. 그러나 정임을 보고 사랑이란 것이 어떻게 신비하고 열렬하고 놀라운 것인가를 안 것 같습니다. +순임의 편지는 계속된다. +선생님, 하얼빈에 오는 길에 송화강 굽이를 볼 때에는 정임이가 어떻게나 울었는지, 그것은 차마 볼 수가 없었습니다. 아버지께서 송화강을 보시고 감상이 깊으셨더란 것을 생각한 것입니다. 무인지경으로, 허옇게 눈이 덮인 벌판으로 흘러가는 송화강 굽이, 그것은 슬픈 풍경입니다. 아버지께서 여기를 지나실 때에는 마른 풀만 있는 광야였을 것이니 그 때에는 더욱 황량하였을 것이라고 정임은 말하고 웁니다. +정임은 제가 아버지를 아는 것보다 아버지를 잘 아는 것 같습니다. 평소에 아버지와는 그리 접촉이 없건마는 정임은 아버지의 의지력, 아버지의 숨은 열정, 아버지의 성미까지 잘 압니다. 저는 정임의 말을 듣고야 비로소 참 그래, 하는 감탄을 발한 일이 여러 번 있습니다. +정임의 말을 듣고야 비로소 아버지가 남보다 뛰어나신 인물인 것을 깨달았습니다. 아버지는 정의감이 굳세고 겉으로는 싸늘하도록 이지적이지마는 속에는 불 같은 열정이 있으시고, 아버지는 쇠 같은 의지력과 칼날 같은 판단력이 있어서 언제나 주저하심이 없고 또 흔들리심이 없다는 것, 아버지께서는 모든 것을 용서하고 모든 것을 호의로 해석하여서 누구를 미워하거나 원망하심이 없는 등, 정임은 아버지의 마음의 목록과 설명서를 따로 외우는 것처럼 아버지의 성격을 설명합니다. 듣고 보아서 비로소 아버지의 딸인 저는 내 아버지가 어떤 아버지인가를 알았습니다. +선생님, 이해가 사랑을 낳는단 말씀이 있지마는 저는 정임을 보아서 사랑이 이해를 낳는 것이 아닌가 합니다. +어쩌면 어머니와 저는 평생을 아버지를 모시고 있으면서도 아버지를 몰랐습니까. 이성이 무디고 양심이 흐려서 그랬습니까. 정임은 진실로 존경할 여자입니다. 제가 남자라 하더라도 정임을 아니 사랑하고는 못 견디겠습니다. +아버지는 분명 정임을 사랑하신 것입니다. 처음에는 친구의 딸로, 다음에는 친딸과 같이, 또 다음에는 무엇인지 모르게 뜨거운 사랑이 생겼으리라고 믿습니다. 그것을 아버지는 죽인 것입니다. 그것을 죽이려고 이 달할 수 없는 사랑을 죽이려고 시베리아로 달아나신 것입니다. 인제야 아버지께서 선생님께 하신 편지의 뜻이 알아진 것 같습니다. 백설이 덮인 시베리아의 삼림 속으로 혼자 헤매며 정임에게로 향하는 사랑을 죽이려고 무진 애를 쓰시는 그 심정이 알아지는 것 같습니다. +선생님 이것이 얼마나 비참한 일입니까. 저는 정임의 짐에 지니고 온 일기를 보다가 이러한 구절을 발견하였습니다. +선생님. 저는 세인트 오거스틴의 <참회록>을 절반이나 다 보고 나도 잠이 들지 아니합니다. 잠이 들기 전에 제가 항상 즐겨하는 아베마리아의 노래를 유성기로 듣고 나서 오늘 일기를 쓰려고 하니 슬픈 소리만 나옵니다. +사랑하는 어른이여. 저는 멀리서 당신을 존경하고 신뢰하는 마음에서만 살아야 할 것을 잘 압니다. 여기에서 영원한 정지를 하지 아니하면 아니 됩니다. 비록 제 생명이 괴로움으로 끊어지고 제 혼이 피어 보지 못하고 스러져 버리더라도 저는 이 멀리서 바라보는 존경과 신뢰의 심경에서 한 발자국이라도 옮기지 않아야 할 것을 잘 압니다. 나를 위하여 놓여진 생의 궤도는 나의 생명을 부인하는 억지의 길입니다. 제가 몇 년 전 기숙사 베드에서 이런 밤에 내다보면 즐겁고 아름답던 내 생의 꿈은 다 깨어졌습니다. +제 영혼의 한 조각이 먼 세상 알지 못할 세계로 떠다니고 있습니다. 잃어버린 마음 조각 어찌하다가 제가 이렇게 되었는지 모릅니다. +피어 오르는 생명의 광채를 스스로 사형에 처하지 아니하면 아니 될 때 어찌 슬픔이 없겠습니까. 이것은 현실로 사람의 생명을 죽이는 것보다 더 무서운 죄가 아니오리까. 나의 세계에서 처음이요 마지막으로 발견한 빛을 어둠 속에 소멸해 버리라는 이 일이 얼마나 떨리는 직무오리까. 이 허깨비의 형의 사람이 살기 위하여 내 손으로 칼을 들어 내 영혼의 환희를 쳐야 옳습니까. 저는 하나님을 원망합니다. +이렇게 씌어 있습니다. 선생님 이것이 얼마나 피 흐르는 고백입니까. +선생님, 저는 정임의 이 고백을 보고 무조건으로 정임의 사랑을 시인합니다. 선생님, 제 목숨을 바쳐서 하는 일에 누가 시비를 하겠습니까. 더구나 그 동기에 티끌만큼도 불순한 것이 없음에야 무조건으로 시인하지 아니하고 어찌합니까. +바라기는 정임의 병이 크게 되지 아니하고 아버지께서 무사히 계셔서 속히 만나뵙게 되는 것입니다마는 앞길이 망망하여 가슴이 두근거림을 금치 못합니다. 게다가 오늘은 함박눈이 퍼부어서 천지가 온통 회색으로 한 빛이 되었으니 더욱 전도가 막막합니다. 그러나 선생님 저는 앓는 정임을 데리고 용감하게 시베리아 길을 떠납니다. +한 일 주일 후에 또 편지 한 장이 왔다. 그것도 순임의 편지여서 이러한 말이 있었다. +……오늘 새벽에 흥안령을 지났습니다. 플랫폼의 한란계는 영하 이십삼 도를 가리켰습니다. 사람들의 얼굴은 솜털에 성에가 슬어서 남녀 노소 할 것 없이 하얗게 분을 바른 것 같습니다. 유리에 비친 내 얼굴도 그와 같이 흰 것을 보고 놀랐습니다. 숨을 들이쉴 때에는 코털이 얼어서 숨이 끊기고 바람결이 지나가면 눈물이 얼어서 눈썹이 마주 붙습니다. 사람들은 털과 가죽에 싸여서 곰같이 보입니다. +또 이런 말도 있었다. +아라사 계집애들이 우유병들을 품에 품고 서서 손님이 사기를 기다리고 있습니다. 저도 두 병을 사서 정임이와 나누어 먹었습니다. 우유는 따뜻합니다. 그것을 식히지 아니할 양으로 품에 품고 섰던 것입니다. +또 이러한 구절도 있었다. +정거장에 닿을 때마다 저희들은 밖을 내다봅니다. 행여나 아버지가 거기 계시지나 아니할까 하고요. 차가 어길 때에는 더구나 마음이 조입니다. 아버지가 그 차를 타고 지나가시지나 아니하는가 하고요. 그리고는 정임은 웁니다. 꼭 뵈올 어른을 놓쳐나 버린 듯이. +그리고는 이 주일 동안이나 소식이 없다가 편지 한 장이 왔다. 그것은 정임의 글씨였다. +선생님, 저는 지금 최 선생께서 계시던 바이칼 호반의 그 집에 와서 홀로 누웠습니다. 순임은 주인 노파와 함께 F역으로 최 선생을 찾아서 오늘 아침에 떠나고 병든 저만 혼자 누워서 얼음에 싸인 바이칼 호의 눈보라치는 바람 소리를 듣고 있습니다. 열은 삼십팔 도로부터 구 도 사이를 오르내리고 기침은 나고 몸의 괴로움을 견딜 수 없습니다. 그러하오나 선생님, 저는 하나님을 불러서 축원합니다. 이 실낱 같은 생명이 다 타 버리기 전에 최 선생의 낯을 다만 일 초 동안이라도 보여지이라고. 그러하오나 선생님, 이 축원이 이루어지겠습니까. +저는 한사코 F역까지 가려 하였사오나 순임 형이 울고 막사오며 또 주인 노파가 본래 미국 사람과 살던 사람으로 영어를 알아서 순임 형의 도움이 되겠기로 저는 이 곳에 누워 있습니다. 순임 형은 기어코 아버지를 찾아 모시고 오마고 약속하였사오나 이 넓은 시베리아에서 어디 가서 찾겠습니까. +선생님, 저는 죽음을 봅니다. 죽음이 바로 제 앞에 와서 선 것을 봅니다. 그의 손은 제 여윈 손을 잡으려고 들먹거림을 봅니다. +선생님, 죽은 뒤에도 의식이 남습니까. 만일 의식이 남는다 하면 죽은 뒤에도 이 아픔과 괴로움을 계속하지 아니하면 아니 됩니까. 죽은 뒤에는 오직 영원한 어둠과 잊어버림이 있습니까. 죽은 뒤에는 혹시나 생전에 먹었던 마음을 자유로 펼 도리가 있습니까. 이 세상에서 그립고 사모하던 이를 죽은 뒤에는 자유로 만나 보고 언제나 마음껏 같이할 수가 있습니까. 그런 일도 있습니까. 이런 일을 바라는 것도 죄가 됩니까. +정임의 편지는 더욱 절망적인 어조로 찬다. +저는 처음 병이 났을 때에는 죽는 것이 싫고 무서웠습니다. 그러나 지금은 죽는 것이 조금도 무섭지 아니합니다. 다만 차마 죽지 못하는 것이 한. +하고는 `다만 차마' 이하를 박박 지워 버렸다. 그리고는 새로 시작하여 나와내 가족에게 대한 문안을 하고는 끝을 막았다. +나는 이 편지를 받고 울었다. 무슨 큰 비극이 가까운 것을 예상하게 하였다. +그 후 한 십여 일이나 지나서 전보가 왔다. 그것은 영문으로 씌었는데, +"아버지 병이 급하다. 나로는 어쩔 수 없다. 돈 가지고 곧 오기를 바란다." +하고 그 끝에 B호텔이라고 주소를 적었다. 전보 발신국이 이르쿠츠크인 것을 보니 B호텔이라 함은 이르쿠츠크인 것이 분명하였다. +나는 최석 부인에게 최석이가 아직 살아 있다는 것을 전하고 곧 여행권 수속을 하였다. 절망으로 알았던 여행권은 사정이 사정인만큼 곧 발부되었다. +나는 비행기로 여의도를 떠났다. 백설에 개개한 땅을, 남빛으로 푸른 바다를 굽어보는 동안에 대련을 들러 거기서 다른 비행기를 갈아타고 봉천, 신경, 하얼빈을 거쳐, 치치하얼에 들렀다가 만주리로 급행하였다. +웅대한 대륙의 설경도 나에게 아무러한 인상도 주지 못하였다. 다만 푸른 하늘과 희고 평평한 땅과의 사이로 한량 없이 허공을 날아간다는 생각밖에 없었다. 그것은 사랑하는 두 친구가 목숨이 경각에 달린 것을 생각할 때에 마음에 아무 여유도 없는 까닭이었다. +만주리에서도 비행기를 타려 하였으나 소비에트 관헌이 허락을 아니 하여 열차로 갈 수밖에 없었다. +초조한 몇 밤을 지나고 이르쿠츠크에 내린 것이 오전 두시. 나는 B호텔로 이스보스치카라는 마차를 몰았다. 죽음과 같이 고요하게 눈 속에 자는 시간에는 여기저기 전등이 반짝거릴 뿐, 이따금 밤의 시가를 경계하는 병정들의 눈이 무섭게 빛나는 것이 보였다. +B호텔에서 미스 초이(최 양)를 찾았으나 순임은 없고 어떤 서양 노파가 나와서, +"유 미스터 Y?" +하고 의심스러운 눈으로 나를 보았다. +그렇다는 내 대답을 듣고는 노파는 반갑게 손을 내밀어서 내 손을 잡았다. +나는 넉넉하지 못한 영어로 그 노파에게서 최석이가 아직 살았다는 말과 정임의 소식은 들은 지 오래라는 말과 최석과 순임은 여기서 삼십 마일이나 떨어진 F역에서도 썰매로 더 가는 삼림 속에 있다는 말을 들었다. +나는 그 밤을 여기서 지내고 이튿날 아침에 떠나는 완행차로 그 노파와 함께 이르쿠츠크를 떠났다. +이 날도 천지는 오직 눈뿐이었다. 차는 가끔 삼림 중으로 가는 모양이나 모두 회색빛에 가리워서 분명히 보이지를 아니하였다. +F역이라는 것은 삼림 속에 있는 조그마한 정거장으로 집이라고는 정거장 집밖에 없었다. 역부 두엇이 털옷에 하얗게 눈을 뒤쓰고 졸리는 듯이 오락가락할 뿐이었다. +우리는 썰매 하나를 얻어 타고 어디가 길인지 분명치도 아니한 눈 속으로 말을 몰았다. +바람은 없는 듯하지마는 그래도 눈발을 한편으로 비끼는 모양이어서 아름드리 나무들의 한쪽은 하얗게 눈으로 쌓이고 한쪽은 검은 빛이 더욱 돋보였다. 백 척은 넘을 듯한 꼿꼿한 침엽수(전나무 따윈가)들이 어디까지든지, 하늘에서 곧 내려박은 못 모양으로, 수없이 서 있는 사이로 우리 썰매는 간다. 땅에 덮인 눈은 새로 피워 놓은 솜같이 희지마는 하늘에서 내리는 눈은 구름빛과 공기빛과 어울려서 밥 잦힐 때에 굴뚝에서 나오는 연기와 같이 연회색이다. +바람도 불지 아니하고 새도 날지 아니하건마는 나무 높은 가지에 쌓인 눈이 이따금 덩치로 떨어져서는 고요한 수풀 속에 작은 동요를 일으킨다. +우리 썰매가 가는 길이 자연스러운 복잡한 커브를 도는 것을 보면 필시 얼음 언 개천 위로 달리는 모양이었다. +한 시간이나 달린 뒤에 우리 썰매는 늦은 경사지를 올랐다. 말을 어거하는 아라사 사람은 쭈쭈쭈쭈, 후르르 하고 주문을 외우듯이 입으로 말을 재촉하고 고삐를 이리 들고 저리 들어 말에게 방향을 가리킬 뿐이요, 채찍은 보이기만하고 한 번도 쓰지 아니하였다. 그와 말과는 완전히 뜻과 정이 맞는 동지인 듯하였다. +처음에는 몰랐으나 차차 추워짐을 깨달았다. 발과 무르팍이 시렸다. +"얼마나 머오?" +하고 나는 오래간만에 입을 열어서 노파에게 물었다. 노파는 털수건으로 머리를 싸매고 깊숙한 눈만 남겨 가지고 실신한 사람 모양으로 허공만 바라보고 있다가, 내가 묻는 말에 비로소 잠이나 깬 듯이, +"멀지 않소. 인젠 한 십오 마일." +하고는 나를 바라보았다. 그 눈은 아마 웃는 모양이었다. +그 얼굴, 그 눈, 그 음성이 모두 이 노파가 인생 풍파의 슬픈 일 괴로운 일에 부대끼고 지친 것을 표하였다. 그리고 죽는 날까지 살아간다 하는 듯하였다. +경사지를 올라서서 보니 그것은 한 산등성이였다. 방향은 알 수 없으나 우리가 가는 방향에는 더 높은 등성이가 있는 모양이나 다른 곳은 다 이보다 낮은 것 같아서 하얀 눈바다가 끝없이 보이는 듯하였다. 그 눈보라는 들쑹날쑹이 있는 것을 보면 삼림의 꼭대기인 것이 분명하였다. 더구나 여기저기 뾰족뾰족 눈송이 붙을 수 없는 마른 나뭇가지가 거뭇거뭇 보이는 것을 보아서 그러하였다. 만일 눈이 걷혀 주었으면 얼마나 안계가 넓으랴, 최석 군이 고민하는 가슴을 안고 이리로 헤매었구나 하면서 나는 목을 둘러서 사방을 바라보았다. +우리는 그 등성이를 내려갔다. 말이 미처 발을 땅에 놓을 수가 없는 정도로 빨리 내려갔다. 여기는 산불이 났던 자리인 듯하여 거뭇거뭇 불탄 자국 있는 마른 나무들이 드문드문 서 있었다. 그 나무들은 찍어 가는 사람도 없으매 저절로 썩어서 없어지기를 기다릴 수밖에 없었다. 그들은 나서 아주 썩어 버리기까지 천 년 이상은 걸린다고 하니 또한 장한 일이다. +이 대삼림에 불이 붙는다 하면 그것은 장관일 것이다. 달밤에 높은 곳에서 이 경치를 내려다본다 하면 그도 장관일 것이요, 여름에 한창 기운을 펼 때도 장관일 것이다. 나는 오뉴월경에 시베리아를 여행하는 이들이 끝없는 꽃바다를 보았다는 기록을 생각하였다. +"저기요!" +하는 노파의 말에 나는 생각의 줄을 끊었다. 저기라고 가리키는 곳을 보니 거기는 집이라고 생각되는 물건이 나무 사이로 보였다. 창이 있으니 분명 집이었다. +우리 이스보스치카가 가까이 오는 것을 보았는지, 그 집 같은 물건의 문 같은 것이 열리며 검은 외투 입은 여자 하나가 팔을 허우적거리며 뛰어나온다. 아마 소리도 치는 모양이겠지마는 그 소리는 아니 들렸다. 나는 그것이 순임인 줄을 얼른 알았다. 또 순임이밖에 될 사람도 없었다. +순임은 한참 달음박질로 오다가 눈이 깊어서 걸음을 걷기가 힘이 드는지 멈칫 섰다. 그의 검은 외투는 어느덧 흰 점으로 얼려져 가지고 어깨는 희게 되는 것이 보였다. +순임의 갸름한 얼굴이 보였다. +"선생님!" +하고 순임도 나를 알아보고는 또 팔을 허우적거리며 소리를 질렀다. +나도 반가워서 모자를 벗어 둘렀다. +"아이 선생님!" +하고 순임은 내가 썰매에서 일어서기도 전에 내게 와서 매달리며 울었다. +"아버지 어떠시냐?" +하고 나는 순임의 등을 두드렸다. 나는 다리가 마비가 되어서 곧 일어설 수가 없었다. +"아버지 어떠시냐?" +하고 나는 한 번 더 물었다. +순임은 벌떡 일어나 두 주먹으로 흐르는 눈물을 쳐내 버리며, +"대단하셔요." +하고도 울음을 금치 못하였다. +노파는 벌써 썰매에서 내려서 기운 없는 걸음으로 비틀비틀 걷기를 시작하였다. +나는 순임을 따라서 언덕을 오르며, +"그래 무슨 병환이시냐?" +하고 물었다. +"몰라요. 신열이 대단하셔요." +"정신은 차리시든?" +"처음 제가 여기 왔을 적에는 그렇지 않더니 요새에는 가끔 혼수 상태에 빠지시는 모양이야요." +이만한 지식을 가지고 나는 최석이가 누워 있는 집 앞에 다다랐다. +이 집은 통나무를 댓 개 우물 정자로 가로놓고 지붕은 무엇으로 했는지 모르나 눈이 덮이고, 문 하나 창 하나를 내었는데 문은 나무껍질인 모양이나 창은 젖빛 나는 유리창인 줄 알았더니 뒤에 알아본즉 그것은 유리가 아니요, 양목을 바르고 물을 뿜어서 얼려 놓은 것이었다. 그리고 통나무와 통나무 틈바구니에는 쇠털과 같은 마른 풀을 꼭꼭 박아서 바람을 막았다. +문을 열고 들어서니 부엌에 들어서는 모양으로 쑥 빠졌는데 화끈화끈하는 것이 한증과 같다. 그렇지 않아도 침침한 날에 언 눈으로 광선 부족한 방에 들어오니, 캄캄 절벽이어서 아무것도 보이지 아니하였다. +순임이가 앞서서 양초에 불을 켠다. 촛불 빛은 방 한편 쪽 침대라고 할 만한 높은 곳에 담요를 덮고 누운 최석의 시체와 같은 흰 얼굴을 비춘다. +"아버지, 아버지 샌전 아저씨 오셨어요." +하고 순임은 최석의 귀에 입을 대고 가만히 불렀다. +그러나 대답이 없었다. +나는 최석의 이마를 만져 보았다. 축축하게 땀이 흘렀다. 그러나 그리 더운 줄은 몰랐다. +방 안의 공기는 숨이 막힐 듯하였다. 그 난방 장치는 삼굿의 원리를 이용한 것이었다. 돌멩이로 아궁이를 쌓고 그 위에 큰 돌멩이들을 많이 쌓고 거기다가 불을 때어서 달게 한 뒤에 거기 눈을 부어 뜨거운 증기를 발하는 것이었다. +이 건축법은 조선 동포들이 시베리아로 금광을 찾아다니면서 하는 법이란 말을 들었으나 최석이가 누구에게서 배워 가지고 어떤 모양으로 지었는지는 최석의 말을 듣기 전에는 알 수 없는 일이다. +나는 내 힘이 미치는 데까지 최석의 병 치료에 대한 손을 쓰고 어떻게 해서든지 이르쿠츠크의 병원으로 최석을 데려다가 입원시킬 도리를 궁리하였다. 그러나 냉정하게 생각하면 최석은 살아날 가망이 없는 것만 같았다. +내가 간 지 사흘 만에 최석은 처음으로 정신을 차려서 눈을 뜨고 나를 알아보았다. +그는 반가운 표정을 하고 빙그레 웃기까지 하였다. +"다 일없나?" +이런 말도 알아들을 수가 있었다. +그러나 심히 기운이 없는 모양이기로 나는 많이 말을 하지 아니하였다. +최석은 한참이나 눈을 감고 있더니, +"정임이 소식 들었나?" +하였다. +"괜찮대요." +하고 곁에서 순임이가 말하였다. +그리고는 또 혼몽하는 듯하였다. +그 날 또 한 번 최석은 정신을 차리고 순임더러는 저리로 가라는 뜻을 표하고 나더러 귀를 가까이 대라는 뜻을 보이기로 그대로 하였더니, +"내 가방 속에 일기가 있으니 그걸 자네만 보고는 불살라 버려. 내가 죽은 뒤에라도 그것이 세상 사람의 눈에 들면 안 되지. 순임이가 볼까 걱정이 되지마는 내가 몸을 꼼짝할 수가 있나." +하는 뜻을 말하였다. +"그러지." +하고 나는 고개를 끄덕여 보였다. +그러고 난 뒤에 나는 최석이가 시킨 대로 가방을 열고 책들을 뒤져서 그 일기책이라는 공책을 꺼내었다. +"순임이 너 이거 보았니?" +하고 나는 곁에서 내가 책 찾는 것을 보고 섰던 순임에게 물었다. +"아니오. 그게 무어여요?" +하고 순임은 내 손에 든 책을 빼앗으려는 듯이 손을 내밀었다. +나는 순임의 손이 닿지 않도록 책을 한편으로 비키며, +"이것이 네 아버지 일기인 모양인데 너는 보이지 말고 나만 보라고 하셨다. 네 아버지가 네가 이것을 보았을까 해서 염려를 하시는데 안 보았으면 다행이다." +하고 나는 그 책을 들고 밖으로 나왔다. +날이 밝다. 해는 중천에 있다. 중천이래야 저 남쪽 지평선 가까운 데다. 밤이 열여덟 시간, 낮이 대여섯 시간밖에 안 되는 북쪽 나라다. 멀건 햇빛이다. +나는 볕이 잘 드는 곳을 골라서 나무에 몸을 기대고 최석의 일기를 읽기 시작하였다. 읽은 중에서 몇 구절을 골라 볼까. +"집이 다 되었다. 이 집은 내가 생전 살고 그 속에서 이 세상을 마칠 집이다. 마음이 기쁘다. 시끄러운 세상은 여기서 멀지 아니하냐. 내가 여기 홀로 있기로 누가 찾을 사람도 없을 것이다. 내가 여기서 죽기로 누가 슬퍼해 줄 사람도 없을 것이다. 때로 곰이나 찾아올까. 지나가던 사슴이나 들여다볼까. +이것이 내 소원이 아니냐. 세상의 시끄러움을 떠나는 것이 내 소원이 아니냐. 이 속에서 나는 나를 이기기를 공부하자." +첫날은 이런 평범한 소리를 썼다. +그 이튿날에는. +"어떻게나 나는 약한 사람인고. 제 마음을 제가 지배하지 못하는 사람인고. 밤새도록 나는 정임을 생각하였다. 어두운 허공을 향하여 정임을 불렀다. 정임이가 나를 찾아서 동경을 떠나서 이리로 오지나 아니하나 하고 생각하였다. 어떻게나 부끄러운 일인고? 어떻게나 가증한 일인고? +나는 아내를 생각하려 하였다. 아이들을 생각하려 하였다. 아내와 아이들을 생각함으로 정임의 생각을 이기려 하였다. +최석아, 너는 남편이 아니냐. 아버지가 아니냐. 정임은 네 딸이 아니냐. 이런 생각을 하였다. +그래도 정임의 일류전은 아내와 아이들의 생각을 밀치고 달려오는 절대 위력을 가진 듯하였다. +아, 나는 어떻게나 파렴치한 사람인고. 나이 사십이 넘어 오십을 바라보는 놈이 아니냐. 사십에 불혹이라고 아니 하느냐. 교육가로 깨끗한 교인으로 일생을 살아 왔다고 자처하는 내가 아니냐 하고 나는 내 입으로 내 손가락을 물어서 두 군데나 피를 내었다." +최석의 둘째 날 일기는 계속된다. +"내 손가락에서 피가 날 때에 나는 유쾌하였다. 나는 승첩의 기쁨을 깨달았다. +그러나 아아 그러나 그 빨간, 참회의 핏방울 속에서도 애욕의 불길이 일지 아니하는가. 나는 마침내 제도할 수 없는 인생인가." +이 집에 든 지 둘째날에 벌써 이러한 비관적 말을 하였다. +또 며칠을 지난 뒤 일기에, +"나는 동경으로 돌아가고 싶다. 정임의 곁으로 가고 싶다. 시베리아의광야의 유혹도 아무 힘이 없다. 어젯밤은 삼림의 좋은 달을 보았으나 그 달을 아름답게 보려 하였으나 아무리 하여도 아름답게 보이지를 아니하였다. +하늘이나 달이나 삼림이나 모두 무의미한 존재다. 이처럼 무의미한 존재를 나는 경험한 일이 없다. 그것은 다만 기쁨을 자아내지 아니할 뿐더러 슬픔도 자아내지 못하였다. 그것은 잿더미였다. 아무도 듣는 이 없는 데서 내 진정을 말하라면 그것은 이 천지에 내게 의미 있는 것은 정임이밖에 없다는 것이다. +나는 정임의 곁에 있고 싶다. 정임을 내 곁에 두고 싶다. 왜? 그것은 나도 모른다. +만일 이 움 속에라도 정임이가 있다 하면 얼마나 이것이 즐거운 곳이 될까. +그러나 이것은 불가능한 일이다. 이 일이 있어서는 아니 된다. 나는 이 생각을 죽여야 한다. 다시 거두를 못 하도록 목숨을 끊어 버려야 한다. +이것을 나는 원한다. 원하지마는 내게는 그 힘이 없는 모양이다. +나는 종교를 생각하여 본다. 철학을 생각하여 본다. 인류를 생각하여 본다. 나라를 생각하여 본다. 이것을 가지고 내 애욕과 바꾸려고 애써 본다. 그렇지마는 내게 그러한 힘이 없다. 나는 완전히 헬플리스함을 깨닫는다. +아아 나는 어찌할꼬? +나는 못생긴 사람이다. 그까짓 것을 못 이겨? 그까짓 것을 못 이겨? +나는 예수의 광야에서의 유혹을 생각한다. 천하를 주마 하는 유혹을 생각한다. 나는 싯다르타 태자가 왕궁을 버리고 나온 것을 생각하고, 또 스토아 철학자의 의지력을 생각하였다. +그러나 나는 그러한 생각으로도 이 생각을 이길 수가 없는 것 같다. +나는 혁명가를 생각하였다. 모든 것 사랑도 목숨도 다 헌신짝같이 집어던지고 피 흐르는 마당으로 뛰어나가는 용사를 생각하였다. 나는 이끝없는 삼림 속으로 혁명의 용사 모양으로 달음박질치다가 기운이 진한 곳에서 죽어 버리는 것이 소원이었다. 그러나 거기까지도 이 생각은 따르지 아니할까. +나는 지금 곧 죽어 버릴까. 나는 육혈포를 손에 들어 보았다. 이 방아쇠를 한 번만 튕기면 내 생명은 없어지는 것이 아닌가. 그리 되면 모든 이 마음의 움직임은 소멸되는 것이 아닌가. 이것으로 만사가 해결되는 것이 아닌가. +아 하나님이시여, 힘을 주시옵소서. 천하를 이기는 힘보다도 나 자신을 이기는 힘을 주시옵소서. 이 죄인으로 하여금 하나님의 눈에 의롭고 깨끗한 사람으로 이 일생을 마치게 하여 주시옵소서, 이렇게 나는 기도를 한다. +그러나 하나님께서는 나를 버리셨다. 하나님께서는 내게 힘을 주시지 아니하시었다. 나를 이 비참한 자리에서 썩어져 죽게 하시었다." +최석은 어떤 날 일기에 또 이런 것도 썼다. 그것은 예전 내게 보낸 편지에 있던 꿈 이야기를 연상시키는 것이었다. 그것은 이러하다. +"오늘 밤은 달이 좋다. 시베리아의 겨울 해는 참 못생긴 사람과도 같이 기운이 없지마는 하얀 땅, 검푸른 하늘에 저쪽 지평선을 향하고 흘러가는 반달은 참으로 맑음 그것이었다. +나는 평생 처음 시 비슷한 것을 지었다. +임과 이별하던 날 밤에는 남쪽 나라에 바람비가 쳤네 +임 타신 자동차의 뒷불이 빨간 뒷불이 빗발에 찢겼네 +임 떠나 혼자 헤매는 시베리아의 오늘 밤에는 +지려는 쪽달이 눈 덮인 삼림에 걸렸구나 +아아 저 쪽달이여 +억지로 반을 갈겨진 것도 같아라 +아아 저 쪽달이여 +잃어진 짝을 찾아 +차디찬 허공 속을 영원히 헤매는 것도 같구나 +나도 저 달과 같이 잃어버린 반쪽을 찾아 무궁한 시간과 공간에서 헤매는 것만 같다. +에익. 내가 왜 이리 약한가. 어찌하여 크나큰 많은 일을 돌아보지 못하고 요만한 애욕의 포로가 되는가. +그러나 나는 차마 그 달을 버리고 들어올 수가 없었다. 내가 왜 이렇게 센티멘털하게 되었는고. 내 쇠 같은 의지력이 어디로 갔는고. 내 누를 수 없는 자존심이 어디로 갔는고. 나는 마치 유모의 손에 달린 젖먹이와도 같다. 내 일신은 도시 애욕 덩어리로 화해 버린 것 같다. +이른바 사랑 사랑이란 말은 종교적 의미인 것 이외에도 입에 담기도 싫어하던 말이다 이런 것은 내 의지력과 자존심을 녹여 버렸는가. 또 이 부자연한 고독의 생활이 나를 이렇게 내 인격을 이렇게 파괴하였는가. +그렇지 아니하면 내 자존심이라는 것이나, 의지력이라는 것이나, 인격이라는 것이 모두 세상의 습관과 사조에 휩쓸리던 것인가. 남들이 그러니까 남들이 옳다니까 남들이 무서우니까 이 애욕의 무덤에 회를 발랐던 것인가. 그러다가 고독과 반성의 기회를 얻으매 모든 회칠과 가면을 떼어 버리고 빨가벗은 애욕의 뭉텅이가 나온 것인가. +그렇다 하면, 이것이 참된 나인가. 이것이 하나님께서 지어 주신 대로의 나인가. 가슴에 타오르는 애욕의 불길 이 불길이 곧 내 영혼의 불길인가. +어쩌면 그 모든 높은 이상들 인류에 대한, 민족에 대한, 도덕에 대한, 신앙에 대한 그 높은 이상들이 이렇게도 만만하게 마치 바람에 불리는 재 모양으로 자취도 없이 흩어져 버리고 말까. 그리고 그 뒤에는 평소에그렇게도 미워하고 천히 여기던 애욕의 검은 흙만 남고 말까. +아아 저 눈 덮인 땅이여, 차고 맑은 달이여, 허공이여! 나는 너희들을 부러워하노라. +불교도들의 해탈이라는 것이 이러한 애욕이 불붙는 지옥에서 눈과 같이 싸늘하고 허공과 같이 빈 곳으로 들어감을 이름인가. +석가의 팔 년 간 설산 고행이 이 애욕의 뿌리를 끊으려 함이라 하고 예수의 사십 일 광야의 고행과 겟세마네의 고민도 이 애욕의 뿌리 때문이었던가. +그러나 그것을 이기어 낸 사람이 천지 개벽 이래에 몇몇이나 되었는고? 나 같은 것이 그 중에 한 사람 되기를 바랄 수가 있을까. +나 같아서는 마침내 이 애욕의 불길에 다 타서 재가 되어 버릴 것만 같다. 아아 어떻게나 힘있고 무서운 불길인고." +이러한 고민의 자백도 있었다. +또 어떤 날 일기에는 최석은 이런 말을 썼다. +"나는 단연히 동경으로 돌아가기를 결심하였다." +그리고는 그 이튿날은, +"나는 단연히 동경으로 돌아가리란 결심을 한 것을 굳세게 취소한다. 나는 이러한 결심을 하는 나 자신을 굳세게 부인한다." +또 이런 말도 있다. +"나는 정임을 시베리아로 부르련다." +또 그 다음에는, +"아아 나는 하루바삐 죽어야 한다. 이 목숨을 연장하였다가는 무슨 일을 저지를는지 모른다. 나는 깨끗하게 나를 이기는 도덕적 인격으로 이 일생을 마쳐야 한다. 이 밖에 내 사업이 무엇이냐." +또 어떤 곳에는, +"아아 무서운 하룻밤이었다. 나는 지난 하룻밤을 누를 수 없는 애욕의 불길에 탔다. 나는 내 주먹으로 내 가슴을 두드리고 머리를 벽에 부딪쳤다. 나는 주먹으로 담벽을 두드려 손등이 터져서 피가 흘렀다. 나는 내 머리카락을 쥐어뜯었다. 나는 수없이 발을 굴렀다. 나는 이 무서운 유혹을 이기려고 내 몸을 아프게 하였다. 나는 견디다 못하여 문을 박차고 뛰어나갔다. 밖에는 달이 있고 눈이 있었다. 그러나 눈은 핏빛이요, 달은 찌그러진 것 같았다. 나는 눈 속으로 달음박질쳤다. 달을 따라서 엎드러지며 자빠지며 달음질쳤다. 나는 소리를 질렀다. 나는 미친 사람 같았다." +그러고는 어디까지 갔다가 어느 때에 어떠한 심경의 변화를 얻어 가지고 돌아왔다는 말은 쓰이지 아니하였으나 최석의 병의 원인을 설명하는 것 같았다. +"열이 나고 기침이 난다. 가슴이 아프다. 이것이 폐렴이 되어서 혼자 깨끗하게 이 생명을 마치게 하여 주소서 하고 빈다. 나는 오늘부터 먹고 마시기를 그치련다." +이러한 말을 썼다. 그러고는, +"정임, 정임, 정임, 정임." +하고 정임의 이름을 수없이 쓴 것도 있고, 어떤 데는, +"Overcome, Overcome." +하고 영어로 쓴 것도 있었다. +그리고 마지막에, +"나는 죽음과 대면하였다. 사흘째 굶고 앓은 오늘에 나는 극히 맑고 침착한 정신으로 죽음과 대면하였다. 죽음은 검은 옷을 입었으나 그 얼굴에는 자비의 표정이 있었다. 죽음은 곧 검은 옷을 입은 구원의 손이었다. 죽음은 아름다운 그림자였다. 죽음은 반가운 애인이요, 결코 무서운 원수가 아니었다. 나는 죽음의 손을 잡노라. 감사하는 마음으로 죽음의 품에 안기노라. 아멘." +이것을 쓴 뒤에는 다시는 일기가 없었다. 이것으로 최석이가 그 동안 지난 일을 적어도 심리적 변화만은 대강 추측할 수가 있었다. +다행히 최석의 병은 점점 돌리는 듯하였다. 열도 내리고 식은땀도 덜 흘렸다. 안 먹는다고 고집하던 음식도 먹기를 시작하였다. +정임에게로 갔던 노파에게서는 정임도 열이 내리고 일어나 앉을 만하다는 편지가 왔다. +나는 노파의 편지를 최석에게 읽어 주었다. 최석은 그 편지를 듣고 매우 흥분하는 모양이었으나 곧 안심하는 빛을 보였다. +나는 최석의 병이 돌리는 것을 보고 정임을 찾아볼 양으로 떠나려 하였으나 순임이가 듣지 아니하였다. 혼자서 앓는 아버지를 맡아 가지고 있을 수는 없다는 것이었다. 그래서 노파가 오기를 기다리기로 하였다. +나는 최석이가 먹을 음식도 살 겸 우편국에도 들를 겸 시가까지 가기로 하고 이 곳 온 지 일 주일이나 지나서 처음으로 산에서 나왔다. +나는 이르쿠츠크에 가서 최석을 위하여 약품과 먹을 것을 사고 또 순임을 위해서도 먹을 것과 의복과 또 하모니카와 손풍금도 사 가지고 정거장에 나와서 돌아올 차를 기다리고 있었다. +나는 순후해 보이는 아라사 사람들이 정거장에서 오락가락하는 것을 보고 속으로는 최석이가 병이 좀 나은 것을 다행으로 생각하고, 또 최석과 정임의 장래가 어찌 될까 하는 것도 생각하면서 뷔페(식당)에서 뜨거운 차이(차)를 마시고 있었다. +이 때에 밖을 바라보고 있던 내 눈은 문득 이상한 것을 보았다. 그것은 그 노파가 이리로 향하고 걸어오는 것인데 그 노파와 팔을 걸은 젊은 여자가 있는 것이다. 머리를 검은 수건으로 싸매고 입과 코를 가리웠으니 분명히 알 수 없으나 혹은 정임이나 아닌가 할 수밖에 없었다. 정임이가 몸만 기동하게 되면 최석을 보러 올 것은 정임의 열정적인 성격으로 보아서 당연한 일이기 때문이었다. +나는 반쯤 먹던 차를 놓고 뷔페 밖으로 뛰어나갔다. +"오 미시즈 체스터필드?" +하고 나는 노파 앞에 손을 내어밀었다. 노파는 체스터필드라는 미국 남편의 성을 따라서 부르는 것을 기억하였다. +"선생님!" +하는 것은 정임이었다. 그 소리만은 변치 아니하였다. 나는 검은 장갑을 낀 정임의 손을 잡았다. 나는 여러 말 아니하고 노파와 정임을 뷔페로 끌고 들어왔다. +늙은 뷔페 보이는 번쩍번쩍하는 사모바르에서 차 두 잔을 따라다가 노파와 정임의 앞에 놓았다. +노파는 어린애에게 하는 모양으로 정임의 수건을 벗겨 주었다. 그 속에서는 해쓱하게 여윈 정임의 얼굴이 나왔다. 두 볼에 불그레하게 홍훈이 도는 것도 병 때문인가. +"어때? 신열은 없나?" +하고 나는 정임에게 물었다. +"괜찮아요." +하고 정임은 웃으며, +"최 선생님께서는 어떠세요?" +하고 묻는다. +"좀 나으신 모양이야. 그래서 나는 오늘 정임을 좀 보러 가려고 했는데 이 체스터필드 부인께서 아니 오시면 순임이가 혼자 있을 수가 없다고 해서, 그래 이렇게 최 선생 자실 것을 사 가지고 가는 길이야." +하고 말을 하면서도 나는 정임의 눈과 입과 목에서 그의 병과 마음을 알아보려고 애를 썼다. +중병을 앓은 깐 해서는 한 달 전 남대문서 볼 때보다 얼마 더 초췌한 것 같지는 아니하였다. +"네에." +하고 정임은 고개를 숙였다. 그의 안경알에는 이슬이 맺혔다. +"선생님 댁은 다 안녕하셔요?" +"응, 내가 떠날 때에는 괜찮았어." +"최 선생님 댁도?" +"응." +"선생님 퍽은 애를 쓰셨어요." +하고 정임은 울음인지 웃음인지 모를 웃음을 웃는다. +말을 모르는 노파는 우리가 하는 말을 눈치나 채려는 듯이 멀거니 보고 있다가 서투른 영어로, +"아직 미스 남은 신열이 있답니다. 그래도 가 본다고, 죽어도 가 본다고 내 말을 안 듣고 따라왔지요." +하고 정임에게 애정 있는 눈흘김을 주며, +"유 노티 차일드(말썽꾼이)." +하고 입을 씰룩하며 정임을 안경 위로 본다. +"니체워, 마뚜슈까(괜찮아요, 어머니)." +하고 정임은 노파를 보고 웃었다. 정임의 서양 사람에게 대한 행동은 서양식으로 째었다고 생각하였다. +정임은 도리어 유쾌한 빛을 보였다. 다만 그의 붉은빛 띤 눈과 마른 입술이 그의 몸에 열이 있음을 보였다. 나는 그의 손끝과 발끝이 싸늘하게 얼었을 것을 상상하였다. +마침 이 날은 날이 온화하였다. 엷은 햇빛도 오늘은 두꺼워진 듯하였다. +우리 세 사람은 F역에서 내려서 썰매 하나를 얻어 타고 산으로 향하였다. 산도 아니지마는 산 있는 나라에서 살던 우리는 최석이가 사는 곳을 산이라고 부르는 습관을 지었다. 삼림이 있으니 산같이 생각된 까닭이었다. +노파가 오른편 끝에 앉고, 가운데다가 정임을 앉히고 왼편 끝에 내가 앉았다. +쩟쩟쩟 하는 소리에 말은 달리기 시작하였다. 한 필은 키 큰 말이요, 한 필은 키가 작은 말인데 키 큰 말은 아마 늙은 군마 퇴물인가 싶게 허우대는 좋으나 몸이 여위고 털에는 윤이 없었다. 조금만 올라가는 길이 되어도 고개를 숙이고 애를 썼다. 작은 말은 까불어서 가끔 채찍으로 얻어맞았다. +"아이 삼림이 좋아요." +하고 정임은 정말 기쁜 듯이 나를 돌아보았다. +"좋아?" +하고 나는 멋없이 대꾸하고 나서, 후회되는 듯이, +"밤낮 삼림 속에서만 사니까 지루한데." +하는 말을 붙였다. +"저는 저 눈 있는 삼림 속으로 한정 없이 가고 싶어요. 그러나 저는 인제 기운이 없으니깐 웬걸 그래 보겠어요?" +하고 한숨을 쉬었다. +"왜 그런 소릴 해. 인제 나을걸." +하고 나는 정임의 눈을 들여다보았다. 마치 슬픈 눈물 방울이나 찾으려는 듯이. +"제가 지금도 열이 삼십팔 도가 넘습니다. 정신이 흐릿해지는 것을 보니까 아마 더 올라가나 봐요. 그래도 괜찮아요. 오늘 하루야 못 살라고요. 오늘 하루만 살면 괜찮아요. 최 선생님만 한 번 뵙고 죽으면 괜찮아요." +"왜 그런 소릴 해?" +하고 나는 책망하는 듯이 언성을 높였다. +정임은 기침을 시작하였다. 한바탕 기침을 하고는 기운이 진한 듯이 노파에게 기대며 조선말로, +"추워요." +하였다. 이 여행이 어떻게 정임의 병에 좋지 못할 것은 의사가 아닌 나로도 짐작할 수가 있었다. 그러나 나로는 더 어찌할 수가 없었다. +나는 외투를 벗어서 정임에게 입혀 주고 노파는 정임을 안아서 몸이 덜 흔들리도록 또 춥지 않도록 하였다. +나는 정임의 모양을 애처로워서 차마 볼 수가 없었다. 그러나 이것은 하나님밖에는 어찌할 도리가 없는 일이었다. +얼마를 지나서 정임은 갑자기 고개를 들고 일어나며, +"인제 몸이 좀 녹았습니다. 선생님 추우시겠어요. 이 외투 입으셔요." +하고 그의 입만 웃는 웃음을 웃었다. +"난 춥지 않아. 어서 입고 있어." +하고 나는 정임이가 외투를 벗는 것을 막았다. 정임은 더 고집하려고도 아니하고, +"선생님 시베리아의 삼림은 참 좋아요. 눈 덮인 것이 더 좋은 것 같아요. 저는 이 인적 없고 자유로운 삼림 속으로 헤매어 보고 싶어요." +하고 아까 하던 것과 같은 말을 또 하였다. +"며칠 잘 정양하여서, 날이나 따뜻하거든 한 번 산보나 해 보지." +하고 나는 정임의 말 뜻이 다른 데 있는 줄을 알면서도 부러 평범하게 대답하였다. +정임은 대답이 없었다. +"여기서도 아직 멀어요?" +하고 정임은 몸이 흔들리는 것을 심히 괴로워하는 모양으로 두 손을 자리에 짚어 몸을 버티면서 말하였다. +"고대야, 최 선생이 반가워할 터이지. 오죽이나 반갑겠나." +하고 나는 정임을 위로하는 뜻으로 말하였다. +"아이 참 미안해요. 제가 죄인이야요. 저 때문에 애매한 누명을 쓰시고 저렇게 사업도 버리시고 병환까지 나시니 저는 어떡허면 이 죄를 씻습니까?" +하고 눈물 고인 눈으로 정임은 나를 쳐다보았다. +나는 정임과 최석을 이 자유로운 시베리아의 삼림 속에 단둘이 살게 하고 싶었다. 그러나 최석은 살아나가겠지마는 정임이가 살아날 수가 있을까, 하고 나는 정임의 어깨를 바라보았다. 그의 목숨은 실낱 같은 것 같았다. 바람받이에 놓인 등잔불과만 같은 것 같았다. 이 목숨이 끊어지기 전에 사랑하는 이의 얼굴을 한 번 대하겠다는 것밖에 아무 소원이 없는 정임은 참으로 가엾어서 가슴이 미어지는 것 같았다. +"염려 말어. 무슨 걱정이야? 최 선생도 병이 돌리고 정임도 인제 얼마 정양하면 나을 것 아닌가. 아무 염려 말아요." +하고 나는 더욱 최석과 정임과 두 사람의 사랑을 달하게 할 결심을 하였다. 하나님께서 계시다면 이 가엾은 간절한 두 사람의 마음을 가슴 미어지게 아니 생각할 리가 없다고 생각하였다. 우주의 모든 일 중에 정임의 정경보다 더 슬프고 불쌍한 정경이 또 있을까 하였다. 차디찬 눈으로 덮인 시베리아의 광야에 병든 정임의 사랑으로 타는 불똥과 같이 날아가는 이 정경은 인생이 가질 수 있는 최대한 비극인 것 같았다. +정임은 지쳐서 고개를 숙이고 있다가도 가끔 고개를 들어서는 기운 나는 양을 보이려고, 유쾌한 양을 보이려고 애를 썼다. +"저 나무 보셔요. 오백 년은 살았겠지요?" +이런 말도 하였다. 그러나 그것은 다 억지로 지어서 하는 것이었다. 그러다가는 또 기운이 지쳐서는 고개를 숙이고, 혹은 노파의 어깨에 혹은 내 어깨에 쓰러졌다. +마침내 우리가 향하고 가는 움집이 보였다. +"정임이, 저기야." +하고 나는 움집을 가리켰다. +"네에?" +하고 정임은 내 손가락 가는 곳을 보고 다음에는 내 얼굴을 보았다. 잘 보이지 않는 모양이다. +"저기 저것 말야. 저기 저 고작 큰 전나무 두 개가 있지 않아? 그 사이로 보이는 저, 저거 말야. 옳지 옳지, 순임이 지금 나오지 않아?" +하였다. +순임이가 무엇을 가지러 나오는지 문을 열고 나와서는 밥 짓느라고 지어 놓은 이를테면 부엌에를 들어갔다가 나오는 길에 이 쪽을 바라보다가 우리를 발견하였는지 몇 걸음 빨리 오다가는 서서 보고 오다가는 서서 보더니 내가 모자를 내두르는 것을 보고야 우리 일행인 것을 확실히 알고 달음박질을 쳐서 나온다. +우리 썰매를 만나자, +"정임이야? 어쩌면 이 추운데." +하고 순임은 정임을 안고 그 안경으로 정임의 눈을 들여다본다. +"어쩌면 앓으면서 이렇게 와?" +하고 순임은 노파와 나를 책망하는 듯이 돌아보았다. +"아버지 어떠시냐?" +하고 나는 짐을 들고 앞서서 오면서 뒤따르는 순임에게 물었다. +"아버지요?" +하고 순임은 어른에게 대한 경의를 표하노라고 내 곁에 와서 걸으며, +"아버지께서 오늘은 말씀을 많이 하셨어요. 순임이가 고생하는구나 고맙다, 이런 말씀도 하시고, 지금 같아서는 일어날 것도 같은데 기운이 없어서, 이런 말씀도 하시고, 또 선생님이 이르쿠츠크에를 들어가셨으니 무엇을 사 오실 듯싶으냐, 알아맞혀 보아라, 이런 농담도 하시고, 정임이가 어떤가 한 번 보았으면, 이런 말씀도 하시겠지요. 또 순임아, 내가 죽더라도 정임을 네 친동생으로 알아서 부디 잘 사랑해 주어라, 정임은 불쌍한 애다, 참 정임은 불쌍해! 이런 말씀도 하시겠지요. 그렇게 여러 가지 말씀을 많이 하시더니, 순임아 내가 죽거든 선생님을 아버지로 알고 그 지도를 받아라, 그러시길래 제가 아버지 안 돌아가셔요! 그랬더니 아버지께서 웃으시면서, 죽지 말까, 하시고는 어째 가슴이 좀 거북한가, 하시더니 잠이 드셨어요. 한 시간이나 되었을까, 온." +집 앞에 거의 다 가서는 순임은 정임의 팔을 꼈던 것을 놓고 빨리 집으로 뛰어들어갔다. +치마폭을 펄럭거리고 뛰는 양에는 어렸을 적 말괄량이 순임의 모습이 남아 있어서 나는 혼자 웃었다. 순임은 정임이가 왔다는 기쁜 소식을 한 시각이라도 빨리 아버지께 전하고 싶었던 것이다. +"아버지, 주무시우? 정임이가 왔어요. 정임이가 왔습니다." +하고 부르는 소리가 밖에서도 들렸다. +나도 방에 들어서고, 정임도 뒤따라 들어서고, 노파는 부엌으로 물건을 두러 들어갔다. +방은 절벽같이 어두웠다. +"순임아, 불을 좀 켜려무나." +하고 최석의 얼굴을 찾느라고 눈을 크게 뜨고 고개를 숙이며, +"자나? 정임이가 왔네." +하고 불렀다. +정임도 곁에 와서 선다. +최석은 대답이 없었다. +순임이가 촛불을 켜자 최석의 얼굴이 환하게 보였다. +"여보게, 여봐. 자나?" +하고 나는 무서운 예감을 가지면서 최석의 어깨를 흔들었다. +그것이 무엇인지 모르지마는 최석은 시체라 하는 것을 나는 내 손을 통해서 깨달았다. +나는 깜짝 놀라서 이불을 벗기고 최석의 팔을 잡아 맥을 짚어 보았다. 거기는 맥이 없었다. +나는 최석의 자리옷 가슴을 헤치고 귀를 가슴에 대었다. 그 살은 얼음과 같이 차고 그 가슴은 고요하였다. 심장은 뛰기를 그친 것이었다. +나는 최석의 가슴에서 귀를 떼고 일어서면서, +"네 아버지는 돌아가셨다. 네 손으로 눈이나 감겨 드려라." +하였다. 내 눈에서는 눈물이 흘렀다. +"선생님!" +하고 정임은 전연히 절제할 힘을 잃어버린 듯이 최석의 가슴에 엎어졌다. 그러고는 소리를 내어 울었다. 순임은, +"아버지, 아버지!" +하고 최석의 베개 곁에 이마를 대고 울었다. +아라사 노파도 울었다. +방 안에는 오직 울음 소리뿐이요, 말이 없었다. 최석은 벌써 이 슬픈 광경도 몰라보는 사람이었다. +최석이가 자기의 싸움을 이기고 죽었는지, 또는 끝까지 지다가 죽었는지 그것은 영원한 비밀이어서 알 도리가 없었다. 그러나 이것만은 확실하다 그의 의식이 마지막으로 끝나는 순간에 그의 의식기에 떠오르던 오직 하나가 정임이었으리라는 것만은. +지금 정임이가 그의 가슴에 엎어져 울지마는, 정임의 뜨거운 눈물이 그의 가슴을 적시건마는 최석의 가슴은 뛸 줄을 모른다. 이것이 죽음이란 것이다. +뒤에 경찰의가 와서 검사한 결과에 의하면, 최석은 폐렴으로 앓던 결과로 심장마비를 일으킨 것이라고 하였다. +나는 최석의 장례를 끝내고 순임과 정임을 데리고 오려 하였으나 정임은 듣지 아니하고 노파와 같이 바이칼 촌으로 가 버렸다. +그런 뒤로는 정임에게서는 일체 음신이 없다. 때때로 노파에게서 편지가 오는데 정임은 최석이가 있던 방에 가만히 있다고만 하였다. +서투른 영어가 뜻을 충분히 발표하지 못하는 것이었다. +나는 정임에게 안심하고 병을 치료하라는 편지도 하고 돈이 필요하거든 청구하라는 편지도 하나 영 답장이 없다. +만일 정임이가 죽었다는 기별이 오면 나는 한 번 더 시베리아에 가서 둘을 가지런히 묻고 `두 별 무덤'이라는 비를 세워 줄 생각이다. 그러나 나는 정임이가 조선으로 오기를 바란다. +여러분은 최석과 정임에게 대한 이 기록을 믿고 그 두 사람에게 대한 오해를 풀라. +EOT; +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/lt_LT/Address.php b/vendor/fakerphp/faker/src/Faker/Provider/lt_LT/Address.php new file mode 100644 index 0000000..f8967ff --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/lt_LT/Address.php @@ -0,0 +1,209 @@ +generator->parse($format); + } + + public static function country() + { + return static::randomElement(static::$country); + } + + public static function postcode() + { + return static::toUpper(static::bothify(static::randomElement(static::$postcode))); + } + + public static function regionSuffix() + { + return static::randomElement(static::$regionSuffix); + } + + public static function region() + { + return static::randomElement(static::$region); + } + + public static function citySuffix() + { + return static::randomElement(static::$citySuffix); + } + + public function city() + { + return static::randomElement(static::$city); + } + + public static function streetSuffix() + { + return static::randomElement(static::$streetSuffix); + } + + public static function street() + { + return static::randomElement(static::$street); + } + + /** + * Lithuania municipality + * + * @see https://en.wikipedia.org/wiki/Municipality + * + * @return string + */ + public function municipality() + { + return static::randomElement(static::$municipality); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/lt_LT/Company.php b/vendor/fakerphp/faker/src/Faker/Provider/lt_LT/Company.php new file mode 100644 index 0000000..89370b3 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/lt_LT/Company.php @@ -0,0 +1,15 @@ +generator->parse(static::randomElement(static::$lastNameFormat)); + } + + /** + * Return male last name + * + * @return string + * + * @example 'Vasiliauskas' + */ + public function lastNameMale() + { + return static::randomElement(static::$lastNameMale); + } + + /** + * Return female last name + * + * @return string + * + * @example 'Žukauskaitė' + */ + public function lastNameFemale() + { + return static::randomElement(static::$lastNameFemale); + } + + /** + * Return driver license number + * + * @return string + * + * @example 12345678 + */ + public function driverLicence() + { + return $this->bothify('########'); + } + + /** + * Return passport number + * + * @return string + * + * @example 12345678 + */ + public function passportNumber() + { + return $this->bothify('########'); + } + + /** + * National Personal Identity number (asmens kodas) + * + * @see https://en.wikipedia.org/wiki/National_identification_number#Lithuania + * @see https://lt.wikipedia.org/wiki/Asmens_kodas + * + * @param string $gender [male|female] + * @param string $randomNumber three integers + * + * @return string on format XXXXXXXXXXX + */ + public function personalIdentityNumber($gender = 'male', ?\DateTime $birthdate = null, $randomNumber = '') + { + if (!$birthdate) { + $birthdate = \Faker\Provider\DateTime::dateTimeThisCentury(); + } + + $genderNumber = ($gender == 'male') ? 1 : 0; + $firstNumber = (int) floor($birthdate->format('Y') / 100) * 2 - 34 - $genderNumber; + + $datePart = $birthdate->format('ymd'); + $randomDigits = (string) (!$randomNumber || strlen($randomNumber) < 3) ? static::numerify('###') : substr($randomNumber, 0, 3); + $partOfPerosnalCode = $firstNumber . $datePart . $randomDigits; + + $sum = self::calculateSum($partOfPerosnalCode, 1); + $liekana = $sum % 11; + + if ($liekana !== 10) { + $lastNumber = $liekana; + + return $firstNumber . $datePart . $randomDigits . $lastNumber; + } + + $sum = self::calculateSum($partOfPerosnalCode, 2); + $liekana = $sum % 11; + + $lastNumber = ($liekana !== 10) ? $liekana : 0; + + return $firstNumber . $datePart . $randomDigits . $lastNumber; + } + + /** + * Calculate the sum of personal code + * + * @see https://en.wikipedia.org/wiki/National_identification_number#Lithuania + * @see https://lt.wikipedia.org/wiki/Asmens_kodas + * + * @param string $numbers + * @param int $time [1|2] + * + * @return int + */ + private static function calculateSum($numbers, $time = 1) + { + if ($time == 1) { + $multipliers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 1]; + } else { + $multipliers = [3, 4, 5, 6, 7, 8, 9, 1, 2, 3]; + } + + $sum = 0; + + for ($i = 1; $i <= 10; ++$i) { + $sum += ((int) $numbers[$i - 1]) * $multipliers[$i - 1]; + } + + return (int) $sum; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/lt_LT/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/lt_LT/PhoneNumber.php new file mode 100644 index 0000000..05e32d3 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/lt_LT/PhoneNumber.php @@ -0,0 +1,17 @@ +generator->parse($format); + } + + public static function country() + { + return static::randomElement(static::$country); + } + + public static function postcode() + { + return static::toUpper(static::bothify(static::randomElement(static::$postcode))); + } + + public static function regionSuffix() + { + return static::randomElement(static::$regionSuffix); + } + + public static function region() + { + return static::randomElement(static::$region); + } + + public static function cityPrefix() + { + return static::randomElement(static::$cityPrefix); + } + + public function city() + { + return static::randomElement(static::$city); + } + + public static function streetPrefix() + { + return static::randomElement(static::$streetPrefix); + } + + public static function street() + { + return static::randomElement(static::$street); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/lv_LV/Color.php b/vendor/fakerphp/faker/src/Faker/Provider/lv_LV/Color.php new file mode 100644 index 0000000..04c895f --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/lv_LV/Color.php @@ -0,0 +1,19 @@ +format('Y'); + + if ($year >= 2000 && $year <= 2099) { + $century = 2; + } elseif ($year >= 1900 && $year <= 1999) { + $century = 1; + } else { + $century = 0; + } + + $datePart = $birthdate->format('dmy'); + $serialNumber = static::numerify('###'); + + $partialNumberSplit = str_split($datePart . $century . $serialNumber); + + $idDigitValidator = [1, 6, 3, 7, 9, 10, 5, 8, 4, 2]; + $total = 0; + + foreach ($partialNumberSplit as $key => $digit) { + if (isset($idDigitValidator[$key])) { + $total += $idDigitValidator[$key] * (int) $digit; + } + } + + $checksumDigit = (1101 - $total) % 11 % 10; + + return $datePart . '-' . $century . $serialNumber . $checksumDigit; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/lv_LV/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/lv_LV/PhoneNumber.php new file mode 100644 index 0000000..2cfdcb5 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/lv_LV/PhoneNumber.php @@ -0,0 +1,15 @@ + static::latitude(42.43, 42.45), + 'longitude' => static::longitude(19.16, 19.27), + ]; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/me_ME/Company.php b/vendor/fakerphp/faker/src/Faker/Provider/me_ME/Company.php new file mode 100644 index 0000000..2483c20 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/me_ME/Company.php @@ -0,0 +1,49 @@ +generator->parse(static::$idNumberFormat)); + } + + /** + * @return string + * + * @example 'Ф' + */ + public function alphabet() + { + return static::randomElement(static::$alphabet); + } + + /** + * @return string + * + * @example 'Э' + */ + public function namePrefix() + { + return static::randomElement(static::$namePrefix); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/mn_MN/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/mn_MN/PhoneNumber.php new file mode 100644 index 0000000..b6706f3 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/mn_MN/PhoneNumber.php @@ -0,0 +1,13 @@ + Townships + * @see https://en.wikipedia.org/wiki/Template:Johor > Townships + * @see https://en.wikipedia.org/wiki/Template:Kedah > Townships + * @see https://en.wikipedia.org/wiki/Template:Kelantan > Townships + * @see https://en.wikipedia.org/wiki/Template:Melaka > Townships + * @see https://en.wikipedia.org/wiki/Template:Negeri_Sembilan > Townships + * @see https://en.wikipedia.org/wiki/Template:Perak > Townships + * @see https://en.wikipedia.org/wiki/Template:Penang > Townships + * @see https://en.wikipedia.org/wiki/Template:Selangor > Townships + * @see https://en.wikipedia.org/wiki/Template:Terengganu > Townships + */ + protected static $townshipPrefix = [ + 'Alam', 'Apartment', 'Ara', + 'Bandar', 'Bandar', 'Bandar', 'Bandar', 'Bandar', 'Bandar', + 'Bandar Bukit', 'Bandar Seri', 'Bandar Sri', 'Bandar Baru', 'Batu', 'Bukit', + 'Desa', 'Damansara', + 'Kampung', 'Kampung Baru', 'Kampung Baru', 'Kondominium', 'Kota', + 'Laman', 'Lembah', + 'Medan', + 'Pandan', 'Pangsapuri', 'Petaling', 'Puncak', + 'Seri', 'Sri', + 'Taman', 'Taman', 'Taman', 'Taman', 'Taman', 'Taman', + 'Taman Desa', + ]; + protected static $townshipSuffix = [ + 'Aman', 'Amanjaya', 'Anggerik', 'Angkasa', 'Antarabangsa', 'Awan', + 'Bahagia', 'Bangsar', 'Baru', 'Belakong', 'Bendahara', 'Bestari', 'Bintang', 'Brickfields', + 'Casa', 'Changkat', 'Country Heights', + 'Damansara', 'Damai', 'Dato Harun', 'Delima', 'Duta', + 'Flora', + 'Gembira', 'Genting', + 'Harmoni', 'Hartamas', + 'Impian', 'Indah', 'Intan', + 'Jasa', 'Jaya', + 'Keramat', 'Kerinchi', 'Kiara', 'Kinrara', 'Kuchai', + 'Laksamana', + 'Mahkota', 'Maluri', 'Manggis', 'Maxwell', 'Medan', 'Melawati', 'Menjalara', 'Meru', 'Mulia', 'Mutiara', + 'Pahlawan', 'Perdana', 'Pertama', 'Permai', 'Pelangi', 'Petaling', 'Pinang', 'Puchong', 'Puteri', 'Putra', + 'Rahman', 'Rahmat', 'Raya', 'Razak', 'Ria', + 'Saujana', 'Segambut', 'Selamat', 'Selatan', 'Semarak', 'Sentosa', 'Seputeh', 'Setapak', 'Setia Jaya', 'Sinar', 'Sungai Besi', 'Sungai Buaya', 'Sungai Long', 'Suria', + 'Tasik Puteri', 'Tengah', 'Timur', 'Tinggi', 'Tropika', 'Tun Hussein Onn', 'Tun Perak', 'Tunku', + 'Ulu', 'Utama', 'Utara', + 'Wangi', + ]; + + /** + * @see https://en.wikipedia.org/wiki/Template:Greater_Kuala_Lumpur + * @see https://en.wikipedia.org/wiki/Template:Johor + * @see https://en.wikipedia.org/wiki/Template:Kedah + * @see https://en.wikipedia.org/wiki/Template:Kelantan + * @see https://en.wikipedia.org/wiki/Template:Labuan + * @see https://en.wikipedia.org/wiki/Template:Melaka + * @see https://en.wikipedia.org/wiki/Template:Negeri_Sembilan + * @see https://en.wikipedia.org/wiki/Template:Pahang + * @see https://en.wikipedia.org/wiki/Template:Perak + * @see https://en.wikipedia.org/wiki/Template:Perlis + * @see https://en.wikipedia.org/wiki/Template:Penang + * @see https://en.wikipedia.org/wiki/Template:Sabah + * @see https://en.wikipedia.org/wiki/Template:Sarawak + * @see https://en.wikipedia.org/wiki/Template:Selangor + * @see https://en.wikipedia.org/wiki/Template:Terengganu + */ + protected static $towns = [ + 'johor' => [ + 'Ayer Hitam', + 'Batu Pahat', 'Bukit Gambir', 'Bukit Kepong', 'Bukit Naning', + 'Desaru', + 'Endau', + 'Gelang Patah', 'Gemas Baharu', + 'Iskandar Puteri', + 'Jementah', 'Johor Lama', 'Johor Bahru', + 'Kempas', 'Kluang', 'Kota Iskandar', 'Kota Tinggi', 'Kukup', 'Kulai', + 'Labis ', 'Larkin', 'Layang-Layang', + 'Mersing', 'Muar', + 'Pagoh', 'Paloh', 'Parit Jawa', 'Pasir Gudang', 'Pekan Nanas', 'Permas Jaya', 'Pontian Kechil', + 'Renggam', + 'Segamat', 'Senai', 'Simpang Renggam', 'Skudai', 'Sri Gading', + 'Tangkak', 'Tebrau', + 'Ulu Tiram', + 'Yong Peng', + ], + 'kedah' => [ + 'Alor Setar', + 'Baling', 'Bukit Kayu Hitam', + 'Changlun', + 'Durian Burung', + 'Gurun', + 'Jitra', + 'Kepala Batas', 'Kuah', 'Kuala Kedah', 'Kuala Ketil', 'Kulim', + 'Langgar', 'Lunas', + 'Merbok', + 'Padang Serai', 'Pendang', + 'Serdang', 'Sintok', 'Sungai Petani', + 'Tawar, Baling', + 'Yan', + ], + 'kelantan' => [ + 'Bachok', 'Bunut Payong', + 'Dabong', + 'Gua Musang', + 'Jeli', + 'Ketereh', 'Kota Bharu', 'Kuala Krai', + 'Lojing', + 'Machang', + 'Pasir Mas', 'Pasir Puteh', + 'Rantau Panjang', + 'Salor', + 'Tok Bali', + 'Wakaf Bharu', 'Wakaf Che Yeh', + ], + 'kl' => [ + 'Ampang', + 'Bandar Tasik Selatan', 'Bandar Tun Razak', 'Bangsar', 'Batu', 'Brickfields', 'Bukit Bintang', 'Bukit Jalil', 'Bukit Tunku', + 'Cheras', 'Chow Kit', + 'Damansara Town Centre', 'Dang Wangi', 'Desa Petaling', 'Desa Tun Hussein Onn', + 'Jinjang', + 'Kampung Baru', 'Kampung Kasipillay', 'Kampung Pandan', 'Kampung Sungai Penchala', 'Kepong', 'KLCC', 'Kuchai Lama', + 'Lake Gardens', 'Lembah Pantai', + 'Medan Tuanku', 'Mid Valley City', 'Mont Kiara', + 'Pantai Dalam', 'Pudu', + 'Salak South', 'Segambut', 'Semarak', 'Sentul', 'Setapak', 'Setiawangsa', 'Seputeh', 'Sri Hartamas', 'Sri Petaling', 'Sungai Besi', + 'Taman Desa', 'Taman Melawati', 'Taman OUG', 'Taman Tun Dr Ismail', 'Taman U-Thant', 'Taman Wahyu', 'Titiwangsa', 'Tun Razak Exchange', + 'Wangsa Maju', + ], + 'labuan' => [ + 'Batu Manikar', + 'Kiamsam', + 'Layang-Layang', + 'Rancha-Rancha', + ], + 'melaka' => [ + 'Alor Gajah', + 'Bandaraya Melaka', 'Batu Berendam', 'Bukit Beruang', 'Bukit Katil', + 'Cheng', + 'Durian Tunggal', + 'Hang Tuah Jaya', + 'Jasin', + 'Klebang', + 'Lubuk China', + 'Masjid Tanah', + 'Naning', + 'Pekan Asahan', + 'Ramuan China', + 'Simpang Ampat', + 'Tanjung Bidara', 'Telok Mas', + 'Umbai', + ], + 'nsembilan' => [ + 'Ayer Kuning', 'Ampangan', + 'Bahau', 'Batang Benar', + 'Chembong', + 'Dangi', + 'Gemas', + 'Juasseh', + 'Kuala Pilah', + 'Labu', 'Lenggeng', 'Linggi', + 'Mantin', + 'Nilai', + 'Pajam', 'Pedas', 'Pengkalan Kempas', 'Port Dickson', + 'Rantau', 'Rompin', + 'Senawang', 'Seremban', 'Sungai Gadut', + 'Tampin', 'Tiroi', + ], + 'pahang' => [ + 'Bandar Tun Razak', 'Bentong', 'Brinchang', 'Bukit Fraser', 'Bukit Tinggi', + 'Chendor', + 'Gambang', 'Genting Highlands', 'Genting Sempah', + 'Jerantut', + 'Karak', 'Kemayan', 'Kota Shahbandar', 'Kuala Lipis', 'Kuala Pahang', 'Kuala Rompin', 'Kuantan', + 'Lanchang', 'Lubuk Paku', + 'Maran', 'Mengkuang', 'Mentakab', + 'Nenasi', + 'Panching', + 'Pekan', 'Penor', + 'Raub', + 'Sebertak', 'Sungai Lembing', + 'Tanah Rata', 'Tanjung Sepat', 'Tasik Chini', 'Temerloh', 'Teriang', 'Tringkap', + ], + 'penang' => [ + 'Air Itam', + 'Balik Pulau', 'Batu Ferringhi', 'Batu Kawan', 'Bayan Lepas', 'Bukit Mertajam', 'Butterworth', + 'Gelugor', 'George Town', + 'Jelutong', + 'Kepala Batas', + 'Nibong Tebal', + 'Permatang Pauh', 'Pulau Tikus', + 'Simpang Ampat', + 'Tanjung Bungah', 'Tanjung Tokong', + ], + 'perak' => [ + 'Ayer Tawar', + 'Bagan Serai', 'Batu Gajah', 'Behrang', 'Bidor', 'Bukit Gantang', 'Bukit Merah', + 'Changkat Jering', 'Chemor', 'Chenderiang', + 'Damar Laut', + 'Gerik', 'Gopeng', 'Gua Tempurung', + 'Hutan Melintang', + 'Ipoh', + 'Jelapang', + 'Kamunting', 'Kampar', 'Kuala Kangsar', + 'Lekir', 'Lenggong', 'Lumut', + 'Malim Nawar', 'Manong', 'Menglembu', + 'Pantai Remis', 'Parit', 'Parit Buntar', 'Pasir Salak', 'Proton City', + 'Simpang Pulai', 'Sitiawan', 'Slim River', 'Sungai Siput', 'Sungkai', + 'Taiping', 'Tambun', 'Tanjung Malim', 'Tanjung Rambutan', 'Tapah', 'Teluk Intan', + 'Ulu Bernam', + ], + 'perlis' => [ + 'Arau', + 'Beseri', + 'Chuping', + 'Kaki Bukit', 'Kangar', 'Kuala Perlis', + 'Mata Ayer', + 'Padang Besar', + 'Sanglang', 'Simpang Empat', + 'Wang Kelian', + ], + 'putrajaya' => [ + 'Precinct 1', 'Precinct 4', 'Precinct 5', + 'Precinct 6', 'Precinct 8', 'Precinct 10', + 'Precinct 11', 'Precinct 12', 'Precinct 13', + 'Precinct 16', 'Precinct 18', 'Precinct 19', + ], + 'sabah' => [ + 'Beaufort', 'Bingkor', + 'Donggongon', + 'Inanam', + 'Kinabatangan', 'Kota Belud', 'Kota Kinabalu', 'Kuala Penyu', 'Kimanis', 'Kundasang', + 'Lahad Datu', 'Likas', 'Lok Kawi', + 'Manggatal', + 'Nabawan', + 'Papar', 'Pitas', + 'Ranau', + 'Sandakan', 'Sapulut', 'Semporna', 'Sepanggar', + 'Tambunan', 'Tanjung Aru', 'Tawau', 'Tenom', 'Tuaran', + 'Weston', + ], + 'sarawak' => [ + 'Asajaya', + 'Ba\'kelalan', 'Bario', 'Batu Kawa', 'Batu Niah', 'Betong', 'Bintulu', + 'Dalat', 'Daro', + 'Engkilili', + 'Julau', + 'Kapit', 'Kota Samarahan', 'Kuching', + 'Lawas', 'Limbang', 'Lubok Antu', + 'Marudi', 'Matu', 'Miri', + 'Oya', + 'Pakan', + 'Sadong Jaya', 'Sematan', 'Sibu', 'Siburan', 'Song', 'Sri Aman', 'Sungai Tujoh', + 'Tanjung Kidurong', 'Tanjung Manis', 'Tatau', + ], + 'selangor' => [ + 'Ampang', 'Assam Jawa', + 'Balakong', 'Bandar Baru Bangi', 'Bandar Baru Selayang', 'Bandar Sunway', 'Bangi', 'Banting', 'Batang Kali', 'Batu Caves', 'Bestari Jaya', 'Bukit Lanjan', + 'Cheras', 'Cyberjaya', + 'Damansara', 'Dengkil', + 'Ijok', + 'Jenjarom', + 'Kajang', 'Kelana Jaya', 'Klang', 'Kuala Kubu Bharu', 'Kuala Selangor', 'Kuang', + 'Lagong', + 'Morib', + 'Pandamaran', 'Paya Jaras', 'Petaling Jaya', 'Port Klang', 'Puchong', + 'Rasa', 'Rawang', + 'Salak Tinggi', 'Sekinchan', 'Selayang', 'Semenyih', 'Sepang', 'Serendah', 'Seri Kembangan', 'Shah Alam', 'Subang', 'Subang Jaya', 'Sungai Buloh', + 'Tanjung Karang', 'Tanjung Sepat', + 'Ulu Klang', 'Ulu Yam', + ], + 'terengganu' => [ + 'Ajil', + 'Bandar Ketengah Jaya', 'Bandar Permaisuri', 'Bukit Besi', 'Bukit Payong', + 'Chukai', + 'Jerteh', + 'Kampung Raja', 'Kerteh', 'Kijal', 'Kuala Besut', 'Kuala Berang', 'Kuala Dungun', 'Kuala Terengganu', + 'Marang', 'Merchang', + 'Pasir Raja', + 'Rantau Abang', + 'Teluk Kalung', + 'Wakaf Tapai', + ], + ]; + + /** + * @see https://en.wikipedia.org/wiki/States_and_federal_territories_of_Malaysia + */ + protected static $states = [ + 'johor' => [ + 'Johor Darul Ta\'zim', + 'Johor', + ], + 'kedah' => [ + 'Kedah Darul Aman', + 'Kedah', + ], + 'kelantan' => [ + 'Kelantan Darul Naim', + 'Kelantan', + ], + 'kl' => [ + 'KL', + 'Kuala Lumpur', + 'WP Kuala Lumpur', + ], + 'labuan' => [ + 'Labuan', + ], + 'melaka' => [ + 'Malacca', + 'Melaka', + ], + 'nsembilan' => [ + 'Negeri Sembilan Darul Khusus', + 'Negeri Sembilan', + ], + 'pahang' => [ + 'Pahang Darul Makmur', + 'Pahang', + ], + 'penang' => [ + 'Penang', + 'Pulau Pinang', + ], + 'perak' => [ + 'Perak Darul Ridzuan', + 'Perak', + ], + 'perlis' => [ + 'Perlis Indera Kayangan', + 'Perlis', + ], + 'putrajaya' => [ + 'Putrajaya', + ], + 'sabah' => [ + 'Sabah', + ], + 'sarawak' => [ + 'Sarawak', + ], + 'selangor' => [ + 'Selangor Darul Ehsan', + 'Selangor', + ], + 'terengganu' => [ + 'Terengganu Darul Iman', + 'Terengganu', + ], + ]; + + /** + * @see https://ms.wikipedia.org/wiki/Senarai_negara_berdaulat + */ + protected static $country = [ + 'Abkhazia', 'Afghanistan', 'Afrika Selatan', 'Republik Afrika Tengah', 'Akrotiri dan Dhekelia', 'Albania', 'Algeria', 'Amerika Syarikat', 'Andorra', 'Angola', 'Antigua dan Barbuda', 'Arab Saudi', 'Argentina', 'Armenia', 'Australia', 'Austria', 'Azerbaijan', + 'Bahamas', 'Bahrain', 'Bangladesh', 'Barbados', 'Belanda', 'Belarus', 'Belgium', 'Belize', 'Benin', 'Bhutan', 'Bolivia', 'Bonaire', 'Bosnia dan Herzegovina', 'Botswana', 'Brazil', 'Brunei Darussalam', 'Bulgaria', 'Burkina Faso', 'Burundi', + 'Cameroon', 'Chad', 'Chile', 'Republik Rakyat China', 'Republik China di Taiwan', 'Colombia', 'Comoros', 'Republik Demokratik Congo', 'Republik Congo', 'Kepulauan Cook', 'Costa Rica', 'Côte d\'Ivoire (Ivory Coast)', 'Croatia', 'Cuba', 'Curaçao', 'Cyprus', 'Republik Turki Cyprus Utara', 'Republik Czech', + 'Denmark', 'Djibouti', 'Dominika', 'Republik Dominika', + 'Ecuador', 'El Salvador', 'Emiriah Arab Bersatu', 'Eritrea', 'Estonia', + 'Kepulauan Faroe', 'Fiji', 'Filipina', 'Finland', + 'Gabon', 'Gambia', 'Georgia', 'Ghana', 'Grenada', 'Greece (Yunani)', 'Guatemala', 'Guinea', 'Guinea-Bissau', 'Guinea Khatulistiwa', 'Guiana Perancis', 'Guyana', + 'Habsyah (Etiopia)', 'Haiti', 'Honduras', 'Hungary', + 'Iceland', 'India', 'Indonesia', 'Iran', 'Iraq', 'Ireland', 'Israel', 'Itali', + 'Jamaika', 'Jepun', 'Jerman', 'Jordan', + 'Kanada', 'Kazakhstan', 'Kemboja', 'Kenya', 'Kiribati', 'Korea Selatan', 'Korea Utara', 'Kosovo', 'Kuwait', 'Kyrgyzstan', + 'Laos', 'Latvia', 'Lesotho', 'Liberia', 'Libya', 'Liechtenstein', 'Lithuania', 'Lubnan', 'Luxembourg', + 'Macedonia', 'Madagaskar', 'Maghribi', 'Malawi', 'Malaysia', 'Maldives', 'Mali', 'Malta', 'Kepulauan Marshall', 'Mauritania', 'Mauritius', 'Mesir', 'Mexico', 'Persekutuan Micronesia', 'Moldova', 'Monaco', 'Montenegro', 'Mongolia', 'Mozambique', 'Myanmar', + 'Namibia', 'Nauru', 'Nepal', 'New Zealand', 'Nicaragua', 'Niger', 'Nigeria', 'Niue', 'Norway', + 'Oman', 'Ossetia Selatan', + 'Pakistan', 'Palau', 'Palestin', 'Panama', 'Papua New Guinea', 'Paraguay', 'Perancis', 'Peru', 'Poland', 'Portugal', + 'Qatar', + 'Romania', 'Russia', 'Rwanda', + 'Sahara Barat', 'Saint Kitts dan Nevis', 'Saint Lucia', 'Saint Vincent dan Grenadines', 'Samoa', 'San Marino', 'São Tomé dan Príncipe', 'Scotland', 'Senegal', 'Sepanyol', 'Serbia', 'Seychelles', 'Sierra Leone', 'Singapura', 'Slovakia', 'Slovenia', 'Kepulauan Solomon', 'Somalia', 'Somaliland', 'Sri Lanka', 'Sudan', 'Sudan Selatan', 'Suriname', 'Swaziland', 'Sweden', 'Switzerland', 'Syria', + 'Tajikistan', 'Tanjung Verde', 'Tanzania', 'Thailand', 'Timor Leste', 'Togo', 'Tonga', 'Transnistria', 'Trinidad dan Tobago', 'Tunisia', 'Turki', 'Turkmenistan', 'Tuvalu', + 'Uganda', 'Ukraine', 'United Kingdom', 'Uruguay', 'Uzbekistan', + 'Vanuatu', 'Kota Vatican', 'Venezuela', 'Vietnam', + 'Yaman', + 'Zambia', 'Zimbabwe', + ]; + + /** + * Return a building prefix + * + * @example 'No.' + * + * @return string + */ + public static function buildingPrefix() + { + return static::randomElement(static::$buildingPrefix); + } + + /** + * Return a building number + * + * @example '123' + * + * @return string + */ + public static function buildingNumber() + { + return static::toUpper(static::lexify(static::numerify(static::randomElement(static::$buildingNumber)))); + } + + /** + * Return a street prefix + * + * @example 'Jalan' + */ + public function streetPrefix() + { + $format = static::randomElement(static::$streetPrefix); + + return $this->generator->parse($format); + } + + /** + * Return a complete streename + * + * @example 'Jalan Utama 7' + * + * @return string + */ + public function streetName() + { + $format = static::toUpper(static::lexify(static::numerify(static::randomElement(static::$streetNameFormats)))); + + return $this->generator->parse($format); + } + + /** + * Return a randown township + * + * @example Taman Bahagia + * + * @return string + */ + public function township() + { + $format = static::toUpper(static::lexify(static::numerify(static::randomElement(static::$townshipFormats)))); + + return $this->generator->parse($format); + } + + /** + * Return a township prefix abbreviation + * + * @example 'USJ' + * + * @return string + */ + public function townshipPrefixAbbr() + { + return static::randomElement(static::$townshipPrefixAbbr); + } + + /** + * Return a township prefix + * + * @example 'Taman' + * + * @return string + */ + public function townshipPrefix() + { + return static::randomElement(static::$townshipPrefix); + } + + /** + * Return a township suffix + * + * @example 'Bahagia' + */ + public function townshipSuffix() + { + return static::randomElement(static::$townshipSuffix); + } + + /** + * Return a postcode based on state + * + * @example '55100' + * + * @see https://en.wikipedia.org/wiki/Postal_codes_in_Malaysia#States + * + * @param string|null $state 'state' or null + * + * @return string + */ + public static function postcode($state = null) + { + $format = [ + 'perlis' => [ // (01000 - 02800) + '0' . self::numberBetween(1000, 2800), + ], + 'kedah' => [ // (05000 - 09810) + '0' . self::numberBetween(5000, 9810), + ], + 'penang' => [ // (10000 - 14400) + self::numberBetween(10000, 14400), + ], + 'kelantan' => [ // (15000 - 18500) + self::numberBetween(15000, 18500), + ], + 'terengganu' => [ // (20000 - 24300) + self::numberBetween(20000, 24300), + ], + 'pahang' => [ // (25000 - 28800 | 39000 - 39200 | 49000, 69000) + self::numberBetween(25000, 28800), + self::numberBetween(39000, 39200), + self::numberBetween(49000, 69000), + ], + 'perak' => [ // (30000 - 36810) + self::numberBetween(30000, 36810), + ], + 'selangor' => [ // (40000 - 48300 | 63000 - 68100) + self::numberBetween(40000, 48300), + self::numberBetween(63000, 68100), + ], + 'kl' => [ // (50000 - 60000) + self::numberBetween(50000, 60000), + ], + 'putrajaya' => [ // (62000 - 62988) + self::numberBetween(62000, 62988), + ], + 'nsembilan' => [ // (70000 - 73509) + self::numberBetween(70000, 73509), + ], + 'melaka' => [ // (75000 - 78309) + self::numberBetween(75000, 78309), + ], + 'johor' => [ // (79000 - 86900) + self::numberBetween(79000, 86900), + ], + 'labuan' => [ // (87000 - 87033) + self::numberBetween(87000, 87033), + ], + 'sabah' => [ // (88000 - 91309) + self::numberBetween(88000, 91309), + ], + 'sarawak' => [ // (93000 - 98859) + self::numberBetween(93000, 98859), + ], + ]; + + $postcode = null === $state ? static::randomElement($format) : $format[$state]; + + return (string) static::randomElement($postcode); + } + + /** + * Return the complete town address with matching postcode and state + * + * @example 55100 Bukit Bintang, Kuala Lumpur + * + * @return string + */ + public function townState() + { + $state = static::randomElement(array_keys(static::$states)); + $postcode = static::postcode($state); + $town = static::randomElement(static::$towns[$state]); + $state = static::randomElement(static::$states[$state]); + + return $postcode . ' ' . $town . ', ' . $state; + } + + /** + * Return a random city (town) + * + * @example 'Ampang' + * + * @return string + */ + public function city() + { + $state = static::randomElement(array_keys(static::$towns)); + + return static::randomElement(static::$towns[$state]); + } + + /** + * Return a random state + * + * @example 'Johor' + * + * @return string + */ + public function state() + { + $state = static::randomElement(array_keys(static::$states)); + + return static::randomElement(static::$states[$state]); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/ms_MY/Company.php b/vendor/fakerphp/faker/src/Faker/Provider/ms_MY/Company.php new file mode 100644 index 0000000..4dc8b2c --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/ms_MY/Company.php @@ -0,0 +1,105 @@ +generator->parse($formats); + } + + /** + * Return Peninsular prefix alphabet + * + * @example 'W' + * + * @return string + */ + public static function peninsularPrefix() + { + return static::randomElement(static::$peninsularPrefix); + } + + /** + * Return Sarawak state prefix alphabet + * + * @example 'QA' + * + * @return string + */ + public static function sarawakPrefix() + { + return static::randomElement(static::$sarawakPrefix); + } + + /** + * Return Sabah state prefix alphabet + * + * @example 'SA' + * + * @return string + */ + public static function sabahPrefix() + { + return static::randomElement(static::$sabahPrefix); + } + + /** + * Return specialty licence plate prefix + * + * @example 'G1M' + * + * @return string + */ + public static function specialPrefix() + { + return static::randomElement(static::$specialPrefix); + } + + /** + * Return a valid license plate alphabet + * + * @example 'A' + * + * @return string + */ + public static function validAlphabet() + { + return static::randomElement(static::$validAlphabets); + } + + /** + * Return a valid number sequence between 1 and 9999 + * + * @example '1234' + * + * @return int + */ + public static function numberSequence() + { + return self::numberBetween(1, 9999); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/ms_MY/Payment.php b/vendor/fakerphp/faker/src/Faker/Provider/ms_MY/Payment.php new file mode 100644 index 0000000..b64c2bb --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/ms_MY/Payment.php @@ -0,0 +1,244 @@ +generator->parse($formats); + } + + /** + * Return a Malaysian Bank account number + * + * @example '1234567890123456' + * + * @return string + */ + public function bankAccountNumber() + { + $formats = static::randomElement(static::$bankAccountNumberFormats); + + return static::numerify($formats); + } + + /** + * Return a Malaysian Local Bank + * + * @example 'Public Bank' + * + * @return string + */ + public static function localBank() + { + return static::randomElement(static::$localBanks); + } + + /** + * Return a Malaysian Foreign Bank + * + * @example 'Citibank Berhad' + * + * @return string + */ + public static function foreignBank() + { + return static::randomElement(static::$foreignBanks); + } + + /** + * Return a Malaysian Government Bank + * + * @example 'Bank Simpanan Nasional' + * + * @return string + */ + public static function governmentBank() + { + return static::randomElement(static::$governmentBanks); + } + + /** + * Return a Malaysian insurance company + * + * @example 'AIA Malaysia' + * + * @return string + */ + public static function insurance() + { + return static::randomElement(static::$insuranceCompanies); + } + + /** + * Return a Malaysian Bank SWIFT Code + * + * @example 'MBBEMYKLXXX' + * + * @return string + */ + public static function swiftCode() + { + return static::toUpper(static::lexify(static::randomElement(static::$swiftCodes))); + } + + /** + * Return the Malaysian currency symbol + * + * @example 'RM' + * + * @return string + */ + public static function currencySymbol() + { + return static::randomElement(static::$currencySymbol); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/ms_MY/Person.php b/vendor/fakerphp/faker/src/Faker/Provider/ms_MY/Person.php new file mode 100644 index 0000000..d685715 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/ms_MY/Person.php @@ -0,0 +1,812 @@ +generator->parse(static::randomElement($formats)); + } + + /** + * Return a Malaysian I.C. No. + * + * @example '890123-45-6789' + * + * @see https://en.wikipedia.org/wiki/Malaysian_identity_card#Structure_of_the_National_Registration_Identity_Card_Number_(NRIC) + * + * @param string|null $gender 'male', 'female' or null for any + * @param bool|string|null $hyphen true, false, or any separator characters + * + * @return string + */ + public static function myKadNumber($gender = null, $hyphen = false) + { + // year of birth + $yy = self::numberBetween(0, 99); + + // month of birth + $mm = DateTime::month(); + + // day of birth + $dd = DateTime::dayOfMonth(); + + // place of birth (1-59 except 17-20) + while (in_array($pb = self::numberBetween(1, 59), [17, 18, 19, 20], false)) { + } + + // random number + $nnn = self::numberBetween(0, 999); + + // gender digit. Odd = MALE, Even = FEMALE + $g = self::numberBetween(0, 9); + + //Credit: https://gist.github.com/mauris/3629548 + if ($gender === static::GENDER_MALE) { + $g = $g | 1; + } elseif ($gender === static::GENDER_FEMALE) { + $g = $g & ~1; + } + + // formatting with hyphen + if ($hyphen === true) { + $hyphen = '-'; + } elseif ($hyphen === false) { + $hyphen = ''; + } + + return sprintf('%02d%02d%02d%s%02d%s%03d%01d', $yy, $mm, $dd, $hyphen, $pb, $hyphen, $nnn, $g); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/ms_MY/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/ms_MY/PhoneNumber.php new file mode 100644 index 0000000..7cce02f --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/ms_MY/PhoneNumber.php @@ -0,0 +1,217 @@ +generator->parse($format)); + } + + return static::numerify($this->generator->parse($format)); + } + + /** + * Return prefix digits for 011 numbers + * + * @example '10' + * + * @return string + */ + public static function zeroOneOnePrefix() + { + return static::numerify(static::randomElement(static::$zeroOneOnePrefix)); + } + + /** + * Return prefix digits for 014 numbers + * + * @example '2' + * + * @return string + */ + public static function zeroOneFourPrefix() + { + return static::numerify(static::randomElement(static::$zeroOneFourPrefix)); + } + + /** + * Return prefix digits for 015 numbers + * + * @example '1' + * + * @return string + */ + public static function zeroOneFivePrefix() + { + return static::numerify(static::randomElement(static::$zeroOneFivePrefix)); + } + + /** + * Return a Malaysian Fixed Line Phone Number. + * + * @example '+603-4567-8912' + * + * @param bool $countryCodePrefix true, false + * @param bool $formatting true, false + * + * @return string + */ + public function fixedLineNumber($countryCodePrefix = true, $formatting = true) + { + if ($formatting) { + $format = static::randomElement(static::$fixedLineNumberFormatsWithFormatting); + } else { + $format = static::randomElement(static::$fixedLineNumberFormats); + } + + if ($countryCodePrefix) { + return static::countryCodePrefix($formatting) . static::numerify($this->generator->parse($format)); + } + + return static::numerify($this->generator->parse($format)); + } + + /** + * Return a Malaysian VoIP Phone Number. + * + * @example '+6015-678-9234' + * + * @param bool $countryCodePrefix true, false + * @param bool $formatting true, false + * + * @return string + */ + public function voipNumber($countryCodePrefix = true, $formatting = true) + { + if ($formatting) { + $format = static::randomElement(static::$voipNumberWithFormatting); + } else { + $format = static::randomElement(static::$voipNumber); + } + + if ($countryCodePrefix) { + return static::countryCodePrefix($formatting) . static::numerify($this->generator->parse($format)); + } + + return static::numerify($this->generator->parse($format)); + } + + /** + * Return a Malaysian Country Code Prefix. + * + * @example '+6' + * + * @param bool $formatting true, false + * + * @return string + */ + public static function countryCodePrefix($formatting = true) + { + if ($formatting) { + return static::randomElement(static::$plusSymbol) . static::randomElement(static::$countryCodePrefix); + } + + return static::randomElement(static::$countryCodePrefix); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/nb_NO/Address.php b/vendor/fakerphp/faker/src/Faker/Provider/nb_NO/Address.php new file mode 100644 index 0000000..cbc39d7 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/nb_NO/Address.php @@ -0,0 +1,197 @@ +format('dmy'); + + /** + * @todo These number should be random based on birth year + * + * @see http://no.wikipedia.org/wiki/F%C3%B8dselsnummer + */ + $randomDigits = (string) static::numerify('##'); + + switch ($gender) { + case static::GENDER_MALE: + $genderDigit = static::randomElement([1, 3, 5, 7, 9]); + + break; + + case static::GENDER_FEMALE: + $genderDigit = static::randomElement([0, 2, 4, 6, 8]); + + break; + + default: + $genderDigit = (string) static::numerify('#'); + } + + $digits = $datePart . $randomDigits . $genderDigit; + + /** + * @todo Calculate modulo 11 of $digits + * + * @see http://no.wikipedia.org/wiki/F%C3%B8dselsnummer + */ + $checksum = (string) static::numerify('##'); + + return $digits . $checksum; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/nb_NO/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/nb_NO/PhoneNumber.php new file mode 100644 index 0000000..4767db4 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/nb_NO/PhoneNumber.php @@ -0,0 +1,41 @@ +generator->parse($format)); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/ne_NP/Address.php b/vendor/fakerphp/faker/src/Faker/Provider/ne_NP/Address.php new file mode 100644 index 0000000..59b31de --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/ne_NP/Address.php @@ -0,0 +1,131 @@ +format('ymd')); + $help = $date->format('Y') >= 2000 ? 2 : null; + + $check = (int) ($help . $dob . $middle); + $rest = sprintf('%02d', 97 - ($check % 97)); + + return $dob . $middle . $rest; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/nl_BE/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/nl_BE/PhoneNumber.php new file mode 100644 index 0000000..9e4a391 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/nl_BE/PhoneNumber.php @@ -0,0 +1,20 @@ +generator->lastName(); + + break; + } + + if (Miscellaneous::boolean()) { + return $companyName . ' ' . static::randomElement(static::$companySuffix); + } + + return $companyName; + } + + /** + * Belasting Toegevoegde Waarde (BTW) = VAT + * + * @example 'NL123456789B01' + * + * @see https://www.belastingdienst.nl/wps/wcm/connect/bldcontentnl/belastingdienst/zakelijk/btw/administratie_bijhouden/btw_nummers_controleren/uw_btw_nummer + * + * @return string VAT Number + */ + public static function vat() + { + return sprintf('%s%d%s%d', 'NL', self::randomNumber(9, true), 'B', self::randomNumber(2, true)); + } + + /** + * Alias dutch vat number format + * + * @return string + */ + public static function btw() + { + return self::vat(); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/nl_NL/Internet.php b/vendor/fakerphp/faker/src/Faker/Provider/nl_NL/Internet.php new file mode 100644 index 0000000..bf30e79 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/nl_NL/Internet.php @@ -0,0 +1,9 @@ + 9) { + if ($nr[1] > 0) { + $nr[0] = 8; + --$nr[1]; + } else { + $nr[0] = 1; + ++$nr[1]; + } + } + + return implode('', array_reverse($nr)); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/nl_NL/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/nl_NL/PhoneNumber.php new file mode 100644 index 0000000..5d4163a --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/nl_NL/PhoneNumber.php @@ -0,0 +1,39 @@ + ['D', 'V'], + 'kujawsko-pomorskie' => ['C'], + 'lubelskie' => ['L'], + 'lubuskie' => ['F'], + 'łódzkie' => ['E'], + 'małopolskie' => ['K', 'J'], + 'mazowieckie' => ['W', 'A'], + 'opolskie' => ['O'], + 'podkarpackie' => ['R', 'Y'], + 'podlaskie' => ['B'], + 'pomorskie' => ['G', 'X'], + 'śląskie' => ['S', 'I'], + 'świętokrzyskie' => ['T'], + 'warmińsko-mazurskie' => ['N'], + 'wielkopolskie' => ['P', 'M'], + 'zachodniopomorskie' => ['Z'], + ]; + + /** + * @var array list of special vehicle registration number prefixes. + */ + protected static $specials = [ + 'army' => ['U'], + 'services' => ['H'], + ]; + + /** + * @var array list of Polish counties and respective vehicle registration number prefixes. + */ + protected static $counties = [ + 'dolnośląskie' => [ + 'Jelenia Góra' => ['J'], + 'Legnica' => ['L'], + 'Wałbrzych' => ['B'], + 'Wrocław' => ['W', 'X'], + 'bolesławiecki' => ['BL'], + 'dzierżoniowski' => ['DZ'], + 'głogowski' => ['GL'], + 'górowski' => ['GR'], + 'jaworski' => ['JA'], + 'jeleniogórski' => ['JE'], + 'kamiennogórski' => ['KA'], + 'kłodzki' => ['KL'], + 'legnicki' => ['LE'], + 'lubański' => ['LB'], + 'lubiński' => ['LU'], + 'lwówecki' => ['LW'], + 'milicki' => ['MI'], + 'oleśnicki' => ['OL'], + 'oławski' => ['OA'], + 'polkowicki' => ['PL'], + 'strzeliński' => ['ST'], + 'średzki' => ['SR'], + 'świdnicki' => ['SW'], + 'trzebnicki' => ['TR'], + 'wałbrzyski' => ['BA'], + 'wołowski' => ['WL'], + 'wrocławski' => ['WR'], + 'ząbkowicki' => ['ZA'], + 'zgorzelecki' => ['ZG'], + 'złotoryjski' => ['ZL'], + ], + 'kujawsko-pomorskie' => [ + 'Bydgoszcz' => ['B'], + 'Grudziądz' => ['G'], + 'Toruń' => ['T'], + 'Włocławek' => ['W'], + 'aleksandrowski' => ['AL'], + 'brodnicki' => ['BR'], + 'bydgoski' => ['BY'], + 'chełmiński' => ['CH'], + 'golubsko-dobrzyński' => ['GD'], + 'grudziądzki' => ['GR'], + 'inowrocławski' => ['IN'], + 'lipnowski' => ['LI'], + 'mogileński' => ['MG'], + 'nakielski' => ['NA'], + 'radziejowski' => ['RA'], + 'rypiński' => ['RY'], + 'sępoleński' => ['SE'], + 'świecki' => ['SW'], + 'toruński' => ['TR'], + 'tucholski' => ['TU'], + 'wąbrzeski' => ['WA'], + 'włocławski' => ['WL'], + 'żniński' => ['ZN'], + ], + 'lubelskie' => [ + 'Biała Podlaska' => ['B'], + 'Chełm' => ['C'], + 'Lublin' => ['U'], + 'Zamość' => ['Z'], + 'bialski' => ['BI'], + 'biłgorajski' => ['BL'], + 'chełmski' => ['CH'], + 'hrubieszowski' => ['HR'], + 'janowski' => ['JA'], + 'krasnostawski' => ['KS'], + 'kraśnicki' => ['KR'], + 'lubartowski' => ['LB'], + 'lubelski' => ['UB'], + 'łęczyński' => ['LE'], + 'łukowski' => ['LU'], + 'opolski' => ['OP'], + 'parczewski' => ['PA'], + 'puławski' => ['PU'], + 'radzyński' => ['RA'], + 'rycki' => ['RY'], + 'świdnicki' => ['SW'], + 'tomaszowski' => ['TM'], + 'włodawski' => ['WL'], + 'zamojski' => ['ZA'], + ], + 'lubuskie' => [ + 'Gorzów Wielkopolski' => ['G'], + 'Zielona Góra' => ['Z'], + 'gorzowski' => ['GW'], + 'krośnieński' => ['KR'], + 'międzyrzecki' => ['MI'], + 'nowosolski' => ['NW'], + 'słubicki' => ['SL'], + 'strzelecko-drezdenecki' => ['SD'], + 'sulęciński' => ['SU'], + 'świebodziński' => ['SW'], + 'wschowski' => ['WS'], + 'zielonogórski' => ['ZI'], + 'żagański' => ['ZG'], + 'żarski' => ['ZA'], + ], + 'łódzkie' => [ + 'Łódź' => ['L', 'D'], + 'Piotrków Trybunalski' => ['P'], + 'Skierniewice' => ['S'], + 'brzeziński' => ['BR'], + 'bełchatowski' => ['BE'], + 'kutnowski' => ['KU'], + 'łaski' => ['LA'], + 'łęczycki' => ['LE'], + 'łowicki' => ['LC'], + 'łódzki wschodni' => ['LW'], + 'opoczyński' => ['OP'], + 'pabianicki' => ['PA'], + 'pajęczański' => ['PJ'], + 'piotrkowski' => ['PI'], + 'poddębicki' => ['PD'], + 'radomszczański' => ['RA'], + 'rawski' => ['RW'], + 'sieradzki' => ['SI'], + 'skierniewicki' => ['SK'], + 'tomaszowski' => ['TM'], + 'wieluński' => ['WI'], + 'wieruszowski' => ['WE'], + 'zduńskowolski' => ['ZD'], + 'zgierski' => ['ZG'], + ], + 'małopolskie' => [ + 'Kraków' => ['R', 'K'], + 'Nowy Sącz' => ['N'], + 'Tarnów' => ['T'], + 'bocheński' => ['BA', 'BC'], + 'brzeski' => ['BR'], + 'chrzanowski' => ['CH'], + 'dąbrowski' => ['DA'], + 'gorlicki' => ['GR'], + 'krakowski' => ['RA', 'RK'], + 'limanowski' => ['LI'], + 'miechowski' => ['MI'], + 'myślenicki' => ['MY'], + 'nowosądecki' => ['NS'], + 'nowotarski' => ['NT'], + 'olkuski' => ['OL'], + 'oświęcimski' => ['OS'], + 'proszowicki' => ['PR'], + 'suski' => ['SU'], + 'tarnowski' => ['TA'], + 'tatrzański' => ['TT'], + 'wadowicki' => ['WA'], + 'wielicki' => ['WI'], + ], + 'mazowieckie' => [ + 'Ostrołęka' => ['O'], + 'Płock' => ['P'], + 'Radom' => ['R'], + 'Siedlce' => ['S'], + 'białobrzeski' => ['BR'], + 'ciechanowski' => ['CI'], + 'garwoliński' => ['G'], + 'gostyniński' => ['GS'], + 'grodziski' => ['GM'], + 'grójecki' => ['GR'], + 'kozienicki' => ['KZ'], + 'legionowski' => ['L'], + 'lipski' => ['LI'], + 'łosicki' => ['LS'], + 'makowski' => ['MA'], + 'miński' => ['M'], + 'mławski' => ['ML'], + 'nowodworski' => ['ND'], + 'ostrołęcki' => ['OS'], + 'ostrowski' => ['OR'], + 'otwocki' => ['OT'], + 'piaseczyński' => ['PA', 'PI', 'PW', 'PX'], + 'płocki' => ['PL'], + 'płoński' => ['PN'], + 'pruszkowski' => ['PP', 'PR', 'PS'], + 'przasnyski' => ['PZ'], + 'przysuski' => ['PY'], + 'pułtuski' => ['PU'], + 'radomski' => ['RA'], + 'siedlecki' => ['SI'], + 'sierpecki' => ['SE'], + 'sochaczewski' => ['SC'], + 'sokołowski' => ['SK'], + 'szydłowiecki' => ['SZ'], + 'warszawski' => ['A', 'B', 'D', 'E', 'F', 'H', 'I', 'J', 'K', 'N', 'T', 'U', 'W', 'X', 'Y'], + 'warszawski zachodni' => ['Z'], + 'węgrowski' => ['WE'], + 'wołomiński' => ['WL', 'V'], + 'wyszkowski' => ['WY'], + 'zwoleński' => ['ZW'], + 'żuromiński' => ['ZU'], + 'żyrardowski' => ['ZY'], + ], + 'opolskie' => [ + 'Opole' => ['P'], + 'brzeski' => ['B'], + 'głubczycki' => ['GL'], + 'kędzierzyńsko-kozielski' => ['K'], + 'kluczborski' => ['KL'], + 'krapkowicki' => ['KR'], + 'namysłowski' => ['NA'], + 'nyski' => ['NY'], + 'oleski' => ['OL'], + 'opolski' => ['PO'], + 'prudnicki' => ['PR'], + 'strzelecki' => ['ST'], + ], + 'podkarpackie' => [ + 'Krosno' => ['K'], + 'Przemyśl' => ['P'], + 'Rzeszów' => ['Z'], + 'Tarnobrzeg' => ['T'], + 'bieszczadzki' => ['BI'], + 'brzozowski' => ['BR'], + 'dębicki' => ['DE'], + 'jarosławski' => ['JA'], + 'jasielski' => ['JS'], + 'kolbuszowski' => ['KL'], + 'krośnieński' => ['KR'], + 'leski' => ['LS'], + 'leżajski' => ['LE'], + 'lubaczowski' => ['LU'], + 'łańcucki' => ['LA'], + 'mielecki' => ['MI'], + 'niżański' => ['NI'], + 'przemyski' => ['PR'], + 'przeworski' => ['PZ'], + 'ropczycko-sędziszowski' => ['RS'], + 'rzeszowski' => ['ZE', 'ZR', 'ZZ'], + 'sanocki' => ['SA'], + 'stalowowolski' => ['ST'], + 'strzyżowski' => ['SR'], + 'tarnobrzeski' => ['TA'], + ], + 'podlaskie' => [ + 'Białystok' => ['I'], + 'Łomża' => ['L'], + 'Suwałki' => ['S'], + 'augustowski' => ['AU'], + 'białostocki' => ['IA', 'IB'], + 'bielski' => ['BI'], + 'grajewski' => ['GR'], + 'hajnowski' => ['HA'], + 'kolneński' => ['KL'], + 'łomżyński' => ['LM'], + 'moniecki' => ['MN'], + 'sejneński' => ['SE'], + 'siemiatycki' => ['SI'], + 'sokólski' => ['SK'], + 'suwalski' => ['SU'], + 'wysokomazowiecki' => ['WM'], + 'zambrowski' => ['ZA'], + ], + 'pomorskie' => [ + 'Gdańsk' => ['D'], + 'Gdynia' => ['A'], + 'Słupsk' => ['S'], + 'Sopot' => ['SP'], + 'bytowski' => ['BY'], + 'chojnicki' => ['CH'], + 'człuchowski' => ['CZ'], + 'gdański' => ['DA'], + 'kartuski' => ['KA', 'KY', 'KZ'], + 'kościerski' => ['KS'], + 'kwidzyński' => ['KW'], + 'lęborski' => ['LE'], + 'malborski' => ['MB'], + 'nowodworski' => ['ND'], + 'pucki' => ['PU'], + 'słupski' => ['SL'], + 'starogardzki' => ['ST'], + 'sztumski' => ['SZ'], + 'tczewski' => ['TC'], + 'wejherowski' => ['WE', 'WO'], + ], + 'śląskie' => [ + 'Bielsko-Biała' => ['B'], + 'Bytom' => ['Y'], + 'Chorzów' => ['H'], + 'Częstochowa' => ['C'], + 'Dąbrowa Górnicza' => ['D'], + 'Gliwice' => ['G'], + 'Jastrzębie-Zdrój' => ['JZ'], + 'Jaworzno' => ['J'], + 'Katowice' => ['K'], + 'Mysłowice' => ['M'], + 'Piekary Śląskie' => ['PI'], + 'Ruda Śląska,' => ['L', 'RS'], + 'Rybnik' => ['R'], + 'Siemianowice Śląskie' => ['I'], + 'Sosnowiec' => ['O'], + 'Świętochłowice' => ['W'], + 'Tychy' => ['T'], + 'Zabrze' => ['Z'], + 'Żory' => ['ZO'], + 'będziński' => ['BE', 'BN', 'E'], + 'bielski' => ['BI'], + 'cieszyński' => ['CI', 'CN'], + 'częstochowski' => ['CZ'], + 'gliwicki' => ['GL'], + 'kłobucki' => ['KL'], + 'lubliniecki' => ['LU'], + 'mikołowski' => ['MI'], + 'myszkowski' => ['MY'], + 'pszczyński' => ['PS'], + 'raciborski' => ['RC'], + 'rybnicki' => ['RB'], + 'tarnogórski' => ['TA'], + 'bieruńsko - lędziński' => ['BL'], + 'wodzisławski' => ['WD', 'WZ'], + 'zawierciański' => ['ZA'], + 'żywiecki' => ['ZY'], + ], + 'świętokrzyskie' => [ + 'Kielce' => ['K'], + 'buski' => ['BU'], + 'jędrzejowski' => ['JE'], + 'kazimierski' => ['KA'], + 'kielecki' => ['KI'], + 'konecki' => ['KN'], + 'opatowski' => ['OP'], + 'ostrowiecki' => ['OS'], + 'pińczowski' => ['PI'], + 'sandomierski' => ['SA'], + 'skarżyski' => ['SK'], + 'starachowicki' => ['ST'], + 'staszowski' => ['SZ'], + 'włoszczowski' => ['LW'], + ], + 'warmińsko-mazurskie' => [ + 'Elbląg' => ['E'], + 'Olsztyn' => ['O'], + 'bartoszycki' => ['BA'], + 'braniewski' => ['BR'], + 'działdowski' => ['DZ'], + 'elbląski' => ['EB'], + 'ełcki' => ['EL'], + 'giżycki' => ['GI'], + 'iławski' => ['IL'], + 'kętrzyński' => ['KE'], + 'lidzbarski' => ['LI'], + 'mrągowski' => ['MR'], + 'nidzicki' => ['NI'], + 'nowomiejski' => ['NM'], + 'olecki' => ['OE'], + 'gołdapski' => ['GO'], + 'olsztyński' => ['OL'], + 'ostródzki' => ['OS'], + 'piski' => ['PI'], + 'szczycieński' => ['SZ'], + 'węgorzewski' => ['WE'], + ], + 'wielkopolskie' => [ + 'Kalisz' => ['A', 'K'], + 'Konin' => ['KO', 'N'], + 'Leszno' => ['L'], + 'Poznań' => ['O', 'Y'], + 'chodzieski' => ['CH'], + 'czarnkowsko-trzcianecki' => ['CT'], + 'gnieźnieński' => ['GN'], + 'gostyński' => ['GS'], + 'grodziski' => ['GO'], + 'jarociński' => ['JA'], + 'kaliski' => ['KA'], + 'kępiński' => ['KE'], + 'kolski' => ['KL'], + 'koniński' => ['KN'], + 'kościański' => ['KS'], + 'krotoszyński' => ['KR'], + 'leszczyński' => ['LE'], + 'międzychodzki' => ['MI'], + 'nowotomyski' => ['NT'], + 'obornicki' => ['OB'], + 'ostrowski' => ['OS'], + 'ostrzeszowski' => ['OT'], + 'pilski' => ['P'], + 'pleszewski' => ['PL'], + 'poznański' => ['OZ', 'Z'], + 'rawicki' => ['RA'], + 'słupecki' => ['SL'], + 'szamotulski' => ['SZ'], + 'średzki' => ['SR'], + 'śremski' => ['SE'], + 'turecki' => ['TU'], + 'wągrowiecki' => ['WA'], + 'wolsztyński' => ['WL'], + 'wrzesiński' => ['WR'], + 'złotowski' => ['ZL'], + ], + 'zachodniopomorskie' => [ + 'Koszalin' => ['K'], + 'Szczecin' => ['S', 'Z'], + 'Świnoujście' => ['SW'], + 'białogardzki' => ['BI'], + 'choszczeński' => ['CH'], + 'drawski' => ['DR'], + 'goleniowski' => ['GL'], + 'gryficki' => ['GY'], + 'gryfiński' => ['GR'], + 'kamieński' => ['KA'], + 'kołobrzeski' => ['KL'], + 'koszaliński' => ['KO'], + 'łobeski' => ['LO'], + 'myśliborski' => ['MY'], + 'policki' => ['PL'], + 'pyrzycki' => ['PY'], + 'sławieński' => ['SL'], + 'stargardzki' => ['ST'], + 'szczecinecki' => ['SZ'], + 'świdwiński' => ['SD'], + 'wałecki' => ['WA'], + ], + 'army' => [ + 'Siły Zbrojne Rzeczypospolitej Polskiej' => ['A', 'B', 'C', 'D', 'E', 'G', 'I', 'J', 'K', 'L'], + ], + 'services' => [ + 'Centralne Biuro Antykorupcyjne' => ['A'], + 'Służba Ochrony Państwa' => ['BA', 'BB', 'BE', 'BF', 'BG'], + 'Służba Celno-Skarbowa' => ['CA', 'CB', 'CC', 'CD', 'CE', 'CF', 'CG', 'CH', 'CJ', 'CK', 'CL', 'CM', 'CN', 'CO', 'CP', 'CR'], + 'Agencja Bezpieczeństwa Wewnętrznego' => ['K'], + 'Agencja Wywiadu' => ['K'], + 'Służba Kontrwywiadu Wojskowego' => ['M'], + 'Służba Wywiadu Wojskowego' => ['M'], + 'Policja' => ['PA', 'PB', 'PC', 'PD', 'PE', 'PF', 'PG', 'PH', 'PJ', 'PK', 'PL', 'PL', 'PL', 'PL', 'PL', 'PM', 'PN', 'PP', 'PS', 'PT', 'PU', 'PW', 'PZ'], + 'Straż Graniczna' => ['WA', 'WK'], + ], + ]; + + /** + * @var array list of regex expressions matching Polish license plate suffixess when county code is 1 character long. + */ + protected static $plateSuffixesGroup1 = [ + '\d{5}', + '\d{4}[A-PR-Z]', + '\d{3}[A-PR-Z]{2}', + '[1-9][A-PR-Z]\d{3}', + '[1-9][A-PR-Z]{2}\d{2}', + ]; + + /** + * @var array list of regex expressions matching Polish license plate suffixess when county code is 2 characters long. + */ + protected static $plateSuffixesGroup2 = [ + '[A-PR-Z]\d{3}', + '\d{2}[A-PR-Z]{2}', + '[1-9][A-PR-Z]\d{2}', + '\d{2}[A-PR-Z][1-9]', + '[1-9][A-PR-Z]{2}[1-9]', + '[A-PR-Z]{2}\d{2}', + '\d{5}', + '\d{4}[A-PR-Z]', + '\d{3}[A-PR-Z]{2}', + '[A-PR-Z]\d{2}[A-PR-Z]', + '[A-PR-Z][1-9][A-PR-Z]{2}', + ]; + + /** + * Generates random license plate. + * + * @param bool $special whether special license plates should be included + * @param array|null $voivodeships list of voivodeships license plate should be generated from + * @param array|null $counties list of counties license plate should be generated from + */ + public static function licensePlate( + bool $special = false, + ?array $voivodeships = null, + ?array $counties = null + ): string { + $voivodeshipsAvailable = static::$voivodeships + ($special ? static::$specials : []); + $voivodeshipSelected = static::selectRandomArea($voivodeshipsAvailable, $voivodeships); + $voivodeshipCode = static::randomElement($voivodeshipsAvailable[$voivodeshipSelected]); + + $countiesAvailable = static::$counties[$voivodeshipSelected]; + $countySelected = self::selectRandomArea($countiesAvailable, $counties); + + $countyCode = static::randomElement(static::$counties[$voivodeshipSelected][$countySelected]); + + $suffix = static::regexify(static::randomElement(strlen($countyCode) === 1 ? static::$plateSuffixesGroup1 : static::$plateSuffixesGroup2)); + + return "{$voivodeshipCode}{$countyCode} {$suffix}"; + } + + /** + * Selects random area from the list of available and requested. + * + * @return string + */ + protected static function selectRandomArea(array $available, ?array $requested) + { + $requested = array_intersect(array_keys($available), $requested ?? []); + + if (empty($requested)) { + $requested = array_keys($available); + } + + return static::randomElement($requested); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/pl_PL/Payment.php b/vendor/fakerphp/faker/src/Faker/Provider/pl_PL/Payment.php new file mode 100644 index 0000000..f2a6030 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/pl_PL/Payment.php @@ -0,0 +1,120 @@ + 'Narodowy Bank Polski', + '102' => 'Powszechna Kasa Oszczędności Bank Polski Spółka Akcyjna', + '103' => 'Bank Handlowy w Warszawie Spółka Akcyjna', + '105' => 'ING Bank Śląski Spółka Akcyjna', + '106' => 'Bank BPH Spółka Akcyjna', + '109' => 'Santander Bank Polska Spółka Akcyjna', + '113' => 'Bank Gospodarstwa Krajowego', + '114' => 'mBank Spółka Akcyjna', + '116' => 'Bank Millennium Spółka Akcyjna', + '122' => 'Bank Handlowo-Kredytowy Spółka Akcyjna w Katowicach w likwidacji', + '124' => 'Bank Polska Kasa Opieki Spółka Akcyjna', + '132' => 'Bank Pocztowy Spółka Akcyjna', + '154' => 'Bank Ochrony Środowiska Spółka Akcyjna', + '158' => 'Mercedes-Benz Bank Polska Spółka Akcyjna', + '161' => 'SGB-Bank Spółka Akcyjna', + '168' => 'PLUS BANK Spółka Akcyjna', + '184' => 'Société Générale Spółka Akcyjna Oddział w Polsce', + '187' => 'Nest Bank Spółka Akcyjna', + '189' => 'Pekao Bank Hipoteczny Spółka Akcyjna', + '191' => 'Deutsche Bank Polska Spółka Akcyjna', + '193' => 'BANK POLSKIEJ SPÓŁDZIELCZOŚCI SPÓŁKA AKCYJNA', + '194' => 'Credit Agricole Bank Polska Spółka Akcyjna', + '195' => 'Idea Bank Spółka Akcyjna', + '203' => 'BNP Paribas Bank Polska Spółka Akcyjna', + '212' => 'Santander Consumer Bank Spółka Akcyjna', + '215' => 'mBank Hipoteczny Spółka Akcyjna', + '216' => 'Toyota Bank Polska Spółka Akcyjna', + '219' => 'DNB Bank Polska Spółka Akcyjna', + '224' => 'Banque PSA Finance Spółka Akcyjna Oddział w Polsce', + '225' => 'Svenska Handelsbanken AB Spółka Akcyjna Oddział w Polsce', + '235' => 'BNP Paribas S.A. Oddział w Polsce ', + '236' => 'Danske Bank A/S Spółka Akcyjna Oddział w Polsce', + '237' => 'Skandinaviska Enskilda Banken AB (Spółka Akcyjna) - Oddział w Polsce', + '239' => 'CAIXABANK, S.A. (SPÓŁKA AKCYJNA) ODDZIAŁ W POLSCE', + '241' => 'Elavon Financial Services Designated Activity Company (Spółka z O.O. o Wyznaczonym Przedmiocie Działalności) Oddział w Polsce', + '243' => 'BNP Paribas Securities Services Spółka Komandytowo - Akcyjna Oddział w Polsce', + '247' => 'HAITONG BANK, S.A. Spółka Akcyjna Oddział w Polsce', + '248' => 'Getin Noble Bank Spółka Akcyjna', + '249' => 'Alior Bank Spółka Akcyjna', + '251' => 'Aareal Bank Aktiengesellschaft (Spółka Akcyjna) - Oddział w Polsce', + '254' => 'Citibank Europe plc (Publiczna Spółka Akcyjna) Oddział w Polsce', + '255' => 'Ikano Bank AB (publ) Spółka Akcyjna Oddział w Polsce', + '256' => 'Nordea Bank Abp Spółka Akcyjna Oddział w Polsce', + '258' => 'J.P. Morgan Europe Limited Spółka z ograniczoną odpowiedzialnością Oddział w Polsce', + '260' => 'Bank of China (Luxembourg) S.A. Spółka Akcyjna Oddział w Polsce', + '262' => 'Industrial and Commercial Bank of China (Europe) S.A. (Spółka Akcyjna) Oddział w Polsce', + '264' => 'RCI Banque Spółka Akcyjna Oddział w Polsce', + '265' => 'EUROCLEAR Bank SA/NV (Spółka Akcyjna) - Oddział w Polsce', + '266' => 'Intesa Sanpaolo S.p.A. Spółka Akcyjna Oddział w Polsce', + '267' => 'Western Union International Bank GmbH, Sp. z o.o. Oddział w Polsce', + '269' => 'PKO Bank Hipoteczny Spółka Akcyjna', + '270' => 'TF BANK AB (Spółka z ograniczoną odpowiedzialnością) Oddział w Polsce', + '271' => 'FCE Bank Spółka Akcyjna Oddział w Polsce', + '272' => 'AS Inbank Spółka Akcyjna - Oddział w Polsce', + '273' => 'China Construction Bank (Europe) S.A. (Spółka Akcyjna) Oddział w Polsce', + '274' => 'MUFG Bank (Europe) N.V. S.A. Oddział w Polsce', + '275' => 'John Deere Bank S.A. Spółka Akcyjna Oddział w Polsce ', + '277' => 'Volkswagen Bank GmbH Spółka z ograniczoną odpowiedzialnością Oddział w Polsce', + '278' => 'ING Bank Hipoteczny Spółka Akcyjna', + '279' => 'Raiffeisen Bank International AG (Spółka Akcyjna) Oddział w Polsce', + '280' => 'HSBC France (Spółka Akcyjna) Oddział w Polsce', + '281' => 'Goldman Sachs Bank Europe SE Spółka Europejska Oddział w Polsce', + '283' => 'J.P. Morgan AG (Spółka Akcyjna) Oddział w Polsce', + '284' => 'UBS Europe SE (Spółka Europejska) Oddział w Polsce', + '285' => 'Banca Farmafactoring S.p.A. Spółka Akcyjna Oddział w Polsce', + '286' => 'FCA Bank S.p.A. Spółka Akcyjna Oddział w Polsce', + '287' => 'Bank Nowy BFG Spółka Akcyjna', + '288' => 'ALLFUNDS BANK S.A.U. (SPÓŁKA AKCYJNA) ODDZIAŁ W POLSCE', + ]; + + /** + * @example 'Euro Bank SA' + */ + public static function bank() + { + return static::randomElement(static::$banks); + } + + /** + * International Bank Account Number (IBAN) + * + * @see http://en.wikipedia.org/wiki/International_Bank_Account_Number + * + * @param string $prefix for generating bank account number of a specific bank + * @param string $countryCode ISO 3166-1 alpha-2 country code + * @param int $length total length without country code and 2 check digits + * + * @return string + */ + public static function bankAccountNumber($prefix = '', $countryCode = 'PL', $length = null) + { + return static::iban($countryCode, $prefix, $length); + } + + protected static function addBankCodeChecksum($iban, $countryCode = 'PL') + { + if ($countryCode != 'PL' || strlen($iban) <= 8) { + return $iban; + } + $checksum = 0; + $weights = [7, 1, 3, 9, 7, 1, 3]; + + for ($i = 0; $i < 7; ++$i) { + $checksum += $weights[$i] * (int) $iban[$i]; + } + $checksum = $checksum % 10; + + return substr($iban, 0, 7) . $checksum . substr($iban, 8); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/pl_PL/Person.php b/vendor/fakerphp/faker/src/Faker/Provider/pl_PL/Person.php new file mode 100644 index 0000000..6d7312d --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/pl_PL/Person.php @@ -0,0 +1,243 @@ +generator->parse(static::randomElement(static::$lastNameFormat)); + } + + public static function lastNameMale() + { + return static::randomElement(static::$lastNameMale); + } + + public static function lastNameFemale() + { + return static::randomElement(static::$lastNameFemale); + } + + public function title($gender = null) + { + return static::randomElement(static::$title); + } + + /** + * replaced by specific unisex Polish title + */ + public static function titleMale() + { + return static::randomElement(static::$title); + } + + /** + * replaced by specific unisex Polish title + */ + public static function titleFemale() + { + return static::randomElement(static::$title); + } + + /** + * PESEL - Universal Electronic System for Registration of the Population + * + * @see http://en.wikipedia.org/wiki/PESEL + * + * @param DateTime $birthdate + * @param string $sex M for male or F for female + * + * @return string 11 digit number, like 44051401358 + */ + public static function pesel($birthdate = null, $sex = null) + { + if ($birthdate === null) { + $birthdate = \Faker\Provider\DateTime::dateTimeThisCentury(); + } + + $weights = [1, 3, 7, 9, 1, 3, 7, 9, 1, 3]; + $length = count($weights); + + $fullYear = (int) $birthdate->format('Y'); + $year = (int) $birthdate->format('y'); + $month = $birthdate->format('m') + (((int) ($fullYear / 100) - 14) % 5) * 20; + $day = $birthdate->format('d'); + + $result = [(int) ($year / 10), $year % 10, (int) ($month / 10), $month % 10, (int) ($day / 10), $day % 10]; + + for ($i = 6; $i < $length; ++$i) { + $result[$i] = static::randomDigit(); + } + + $result[$length - 1] |= 1; + + if ($sex == 'F') { + $result[$length - 1] -= 1; + } + + $checksum = 0; + + for ($i = 0; $i < $length; ++$i) { + $checksum += $weights[$i] * $result[$i]; + } + $checksum = (10 - ($checksum % 10)) % 10; + $result[] = $checksum; + + return implode('', $result); + } + + /** + * National Identity Card number + * + * @see http://en.wikipedia.org/wiki/Polish_National_Identity_Card + * + * @return string 3 letters and 6 digits, like ABA300000 + */ + public static function personalIdentityNumber() + { + $range = str_split('ABCDEFGHIJKLMNPRSTUVWXYZ'); + $low = ['A', static::randomElement($range), static::randomElement($range)]; + $high = [static::randomDigit(), static::randomDigit(), static::randomDigit(), static::randomDigit(), static::randomDigit()]; + $weights = [7, 3, 1, 7, 3, 1, 7, 3]; + $checksum = 0; + + for ($i = 0, $size = count($low); $i < $size; ++$i) { + $checksum += $weights[$i] * (ord($low[$i]) - 55); + } + + for ($i = 0, $size = count($high); $i < $size; ++$i) { + $checksum += $weights[$i + 3] * $high[$i]; + } + $checksum %= 10; + + return implode('', $low) . $checksum . implode('', $high); + } + + /** + * Taxpayer Identification Number (NIP in Polish) + * + * @see http://en.wikipedia.org/wiki/PESEL#Other_identifiers + * @see http://pl.wikipedia.org/wiki/NIP + * + * @return string 10 digit number + */ + public static function taxpayerIdentificationNumber() + { + $weights = [6, 5, 7, 2, 3, 4, 5, 6, 7]; + $result = []; + + do { + $result = [ + static::randomDigitNotNull(), static::randomDigitNotNull(), static::randomDigitNotNull(), + static::randomDigit(), static::randomDigit(), static::randomDigit(), + static::randomDigit(), static::randomDigit(), static::randomDigit(), + ]; + $checksum = 0; + + for ($i = 0, $size = count($result); $i < $size; ++$i) { + $checksum += $weights[$i] * $result[$i]; + } + $checksum %= 11; + } while ($checksum == 10); + $result[] = $checksum; + + return implode('', $result); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/pl_PL/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/pl_PL/PhoneNumber.php new file mode 100644 index 0000000..d421539 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/pl_PL/PhoneNumber.php @@ -0,0 +1,18 @@ + + + Prof. Hart will answer or forward your message. + + We would prefer to send you information by email. + + + **The Legal Small Print** + + + (Three Pages) + + ***START**THE SMALL PRINT!**FOR PUBLIC DOMAIN EBOOKS**START*** + Why is this "Small Print!" statement here? You know: lawyers. + They tell us you might sue us if there is something wrong with + your copy of this eBook, even if you got it for free from + someone other than us, and even if what's wrong is not our + fault. So, among other things, this "Small Print!" statement + disclaims most of our liability to you. It also tells you how + you may distribute copies of this eBook if you want to. + + *BEFORE!* YOU USE OR READ THIS EBOOK + By using or reading any part of this PROJECT GUTENBERG-tm + eBook, you indicate that you understand, agree to and accept + this "Small Print!" statement. If you do not, you can receive + a refund of the money (if any) you paid for this eBook by + sending a request within 30 days of receiving it to the person + you got it from. If you received this eBook on a physical + medium (such as a disk), you must return it with your request. + + ABOUT PROJECT GUTENBERG-TM EBOOKS + This PROJECT GUTENBERG-tm eBook, like most PROJECT GUTENBERG-tm eBooks, + is a "public domain" work distributed by Professor Michael S. Hart + through the Project Gutenberg Association (the "Project"). + Among other things, this means that no one owns a United States copyright + on or for this work, so the Project (and you!) can copy and + distribute it in the United States without permission and + without paying copyright royalties. Special rules, set forth + below, apply if you wish to copy and distribute this eBook + under the "PROJECT GUTENBERG" trademark. + + Please do not use the "PROJECT GUTENBERG" trademark to market + any commercial products without permission. + + To create these eBooks, the Project expends considerable + efforts to identify, transcribe and proofread public domain + works. Despite these efforts, the Project's eBooks and any + medium they may be on may contain "Defects". Among other + things, Defects may take the form of incomplete, inaccurate or + corrupt data, transcription errors, a copyright or other + intellectual property infringement, a defective or damaged + disk or other eBook medium, a computer virus, or computer + codes that damage or cannot be read by your equipment. + + LIMITED WARRANTY; DISCLAIMER OF DAMAGES + But for the "Right of Replacement or Refund" described below, + [1] Michael Hart and the Foundation (and any other party you may + receive this eBook from as a PROJECT GUTENBERG-tm eBook) disclaims + all liability to you for damages, costs and expenses, including + legal fees, and [2] YOU HAVE NO REMEDIES FOR NEGLIGENCE OR + UNDER STRICT LIABILITY, OR FOR BREACH OF WARRANTY OR CONTRACT, + INCLUDING BUT NOT LIMITED TO INDIRECT, CONSEQUENTIAL, PUNITIVE + OR INCIDENTAL DAMAGES, EVEN IF YOU GIVE NOTICE OF THE + POSSIBILITY OF SUCH DAMAGES. + + If you discover a Defect in this eBook within 90 days of + receiving it, you can receive a refund of the money (if any) + you paid for it by sending an explanatory note within that + time to the person you received it from. If you received it + on a physical medium, you must return it with your note, and + such person may choose to alternatively give you a replacement + copy. If you received it electronically, such person may + choose to alternatively give you a second opportunity to + receive it electronically. + + THIS EBOOK IS OTHERWISE PROVIDED TO YOU "AS-IS". NO OTHER + WARRANTIES OF ANY KIND, EXPRESS OR IMPLIED, ARE MADE TO YOU AS + TO THE EBOOK OR ANY MEDIUM IT MAY BE ON, INCLUDING BUT NOT + LIMITED TO WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A + PARTICULAR PURPOSE. + + Some states do not allow disclaimers of implied warranties or + the exclusion or limitation of consequential damages, so the + above disclaimers and exclusions may not apply to you, and you + may have other legal rights. + + INDEMNITY + You will indemnify and hold Michael Hart, the Foundation, + and its trustees and agents, and any volunteers associated + with the production and distribution of Project Gutenberg-tm + texts harmless, from all liability, cost and expense, including + legal fees, that arise directly or indirectly from any of the + following that you do or cause: [1] distribution of this eBook, + [2] alteration, modification, or addition to the eBook, + or [3] any Defect. + + DISTRIBUTION UNDER "PROJECT GUTENBERG-tm" + You may distribute copies of this eBook electronically, or by + disk, book or any other medium if you either delete this + "Small Print!" and all other references to Project Gutenberg, + or: + + [1] Only give exact copies of it. Among other things, this + requires that you do not remove, alter or modify the + eBook or this "small print!" statement. You may however, + if you wish, distribute this eBook in machine readable + binary, compressed, mark-up, or proprietary form, + including any form resulting from conversion by word + processing or hypertext software, but only so long as + *EITHER*: + + [*] The eBook, when displayed, is clearly readable, and + does *not* contain characters other than those + intended by the author of the work, although tilde + (~), asterisk (*) and underline (_) characters may + be used to convey punctuation intended by the + author, and additional characters may be used to + indicate hypertext links; OR + + [*] The eBook may be readily converted by the reader at + no expense into plain ASCII, EBCDIC or equivalent + form by the program that displays the eBook (as is + the case, for instance, with most word processors); + OR + + [*] You provide, or agree to also provide on request at + no additional cost, fee or expense, a copy of the + eBook in its original plain ASCII form (or in EBCDIC + or other equivalent proprietary form). + + [2] Honor the eBook refund and replacement provisions of this + "Small Print!" statement. + + [3] Pay a trademark license fee to the Foundation of 20% of the + gross profits you derive calculated using the method you + already use to calculate your applicable taxes. If you + don't derive profits, no royalty is due. Royalties are + payable to "Project Gutenberg Literary Archive Foundation" + the 60 days following each date you prepare (or were + legally required to prepare) your annual (or equivalent + periodic) tax return. Please contact us beforehand to + let us know your plans and to work out the details. + + WHAT IF YOU *WANT* TO SEND MONEY EVEN IF YOU DON'T HAVE TO? + Project Gutenberg is dedicated to increasing the number of + public domain and licensed works that can be freely distributed + in machine readable form. + + The Project gratefully accepts contributions of money, time, + public domain materials, or royalty free copyright licenses. + Money should be paid to the: + "Project Gutenberg Literary Archive Foundation." + + If you are interested in contributing scanning equipment or + software or other items, please contact Michael Hart at: + hart@pobox.com + + [Portions of this eBook's header and trailer may be reprinted only + when distributed free of all fees. Copyright (C) 2001, 2002 by + Michael S. Hart. Project Gutenberg is a TradeMark and may not be + used in any sales of Project Gutenberg eBooks or other materials be + they hardware or software or any other related product without + express permission.] + + *END THE SMALL PRINT! FOR PUBLIC DOMAIN EBOOKS*Ver.02/11/02*END* + + */ +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/pt_BR/Address.php b/vendor/fakerphp/faker/src/Faker/Provider/pt_BR/Address.php new file mode 100644 index 0000000..10bdd57 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/pt_BR/Address.php @@ -0,0 +1,154 @@ +generator->numerify('########0001'); + $n .= check_digit($n); + $n .= check_digit($n); + + return $formatted ? vsprintf('%d%d.%d%d%d.%d%d%d/%d%d%d%d-%d%d', str_split($n)) : $n; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/pt_BR/Internet.php b/vendor/fakerphp/faker/src/Faker/Provider/pt_BR/Internet.php new file mode 100644 index 0000000..fc68ae6 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/pt_BR/Internet.php @@ -0,0 +1,9 @@ + [ + '4##############', + ], + 'MasterCard' => [ + '5##############', + ], + 'American Express' => [ + '34############', + '37############', + ], + 'Discover Card' => [ + '6011###########', + '622############', + '64#############', + '65#############', + ], + 'Diners' => [ + '301############', + '301##########', + '305############', + '305##########', + '36#############', + '36###########', + '38#############', + '38###########', + ], + 'Elo' => [ + '636368#########', + '438935#########', + '504175#########', + '451416#########', + '636297#########', + '5067###########', + '4576###########', + '4011###########', + ], + 'Hipercard' => [ + '38#############', + '60#############', + ], + 'Aura' => [ + '50#############', + ], + ]; + + /** + * International Bank Account Number (IBAN) + * + * @see http://en.wikipedia.org/wiki/International_Bank_Account_Number + * + * @param string $prefix for generating bank account number of a specific bank + * @param string $countryCode ISO 3166-1 alpha-2 country code + * @param int $length total length without country code and 2 check digits + * + * @return string + */ + public static function bankAccountNumber($prefix = '', $countryCode = 'BR', $length = null) + { + return static::iban($countryCode, $prefix, $length); + } + + /** + * @see list of Brazilians banks (2018-02-15), source: https://pt.wikipedia.org/wiki/Lista_de_bancos_do_Brasil + */ + protected static $banks = [ + 'BADESUL Desenvolvimento S.A. – Agência de Fomento/RS', + 'Banco Central do Brasil', + 'Banco da Amazônia', + 'Banco de Brasília', + 'Banco de Desenvolvimento de Minas Gerais', + 'Banco de Desenvolvimento do Espírito Santo', + 'Banco de Desenvolvimento do Paraná', + 'Banco do Brasil', + 'Banco do Estado de Sergipe Banese Estadual', + 'Banco do Estado do Espírito Santo Banestes', + 'Banco do Estado do Pará', + 'Banco do Estado do Rio Grande do Sul', + 'Banco do Nordeste do Brasil', + 'Banco Nacional de Desenvolvimento Econômico e Social', + 'Banco Regional de Desenvolvimento do Extremo Sul', + 'Caixa Econômica Federal', + 'Banco ABN Amro S.A.', + 'Banco Alfa', + 'Banco Banif', + 'Banco BBM', + 'Banco BMG', + 'Banco Bonsucesso', + 'Banco BTG Pactual', + 'Banco Cacique', + 'Banco Caixa Geral - Brasil', + 'Banco Citibank', + 'Banco Credibel', + 'Banco Credit Suisse', + 'Góis Monteiro & Co', + 'Banco Fator', + 'Banco Fibra', + 'Agibank', + 'Banco Guanabara', + 'Banco Industrial do Brasil', + 'Banco Industrial e Comercial', + 'Banco Indusval', + 'Banco Inter', + 'Banco Itaú BBA', + 'Banco ItaúBank', + 'Banco Itaucred Financiamentos', + 'Banco Mercantil do Brasil', + 'Banco Modal Modal', + 'Banco Morada', + 'Banco Pan', + 'Banco Paulista', + 'Banco Pine', + 'Banco Renner', + 'Banco Ribeirão Preto', + 'Banco Safra', + 'Banco Santander', + 'Banco Sofisa', + 'Banco Topázio', + 'Banco Votorantim', + 'Bradesco Bradesco', + 'Itaú Unibanco', + 'Banco Original', + 'Banco Neon', + 'Nu Pagamentos S.A', + 'XP Investimentos Corretora de Câmbio Títulos e Valores Mobiliários S.A', + ]; + + /** + * @example 'Banco Neon' + */ + public static function bank() + { + return static::randomElement(static::$banks); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/pt_BR/Person.php b/vendor/fakerphp/faker/src/Faker/Provider/pt_BR/Person.php new file mode 100644 index 0000000..6331e7b --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/pt_BR/Person.php @@ -0,0 +1,159 @@ +generator->numerify('#########'); + $n .= check_digit($n); + $n .= check_digit($n); + + return $formatted ? vsprintf('%d%d%d.%d%d%d.%d%d%d-%d%d', str_split($n)) : $n; + } + + /** + * A random RG number, following Sao Paulo state's rules. + * + * @see http://pt.wikipedia.org/wiki/C%C3%A9dula_de_identidade + * + * @param bool $formatted If the number should have dots/dashes or not. + * + * @return string + */ + public function rg($formatted = true) + { + $n = $this->generator->numerify('########'); + $n .= check_digit($n); + + return $formatted ? vsprintf('%d%d.%d%d%d.%d%d%d-%s', str_split($n)) : $n; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/pt_BR/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/pt_BR/PhoneNumber.php new file mode 100644 index 0000000..6601658 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/pt_BR/PhoneNumber.php @@ -0,0 +1,150 @@ + '']); + } + + return $number; + } + + /** + * Generates an 9-digit landline number without formatting characters. + * + * @param bool $formatted [def: true] If it should return a formatted number or not. + * + * @return string + */ + public static function landline($formatted = true) + { + $number = static::numerify(static::randomElement(static::$landlineFormats)); + + if (!$formatted) { + $number = strtr($number, ['-' => '']); + } + + return $number; + } + + /** + * Randomizes between cellphone and landline numbers. + * + * @param bool $formatted [def: true] If it should return a formatted number or not. + */ + public static function phone($formatted = true) + { + $options = static::randomElement([ + ['cellphone', false], + ['cellphone', true], + ['landline', null], + ]); + + return call_user_func([static::class, $options[0]], $formatted, $options[1]); + } + + /** + * Generates a complete phone number. + * + * @param string $type [def: landline] One of "landline" or "cellphone". Defaults to "landline" on invalid values. + * @param bool $formatted [def: true] If the number should be formatted or not. + * + * @return string + */ + protected static function anyPhoneNumber($type, $formatted = true) + { + $area = static::areaCode(); + $number = ($type == 'cellphone') ? + static::cellphone($formatted) : + static::landline($formatted); + + return $formatted ? "($area) $number" : $area . $number; + } + + /** + * Concatenates {@link areaCode} and {@link cellphone} into a national cellphone number. + * + * @param bool $formatted [def: true] If it should return a formatted number or not. + * + * @return string + */ + public static function cellphoneNumber($formatted = true) + { + return static::anyPhoneNumber('cellphone', $formatted); + } + + /** + * Concatenates {@link areaCode} and {@link landline} into a national landline number. + * + * @param bool $formatted [def: true] If it should return a formatted number or not. + * + * @return string + */ + public static function landlineNumber($formatted = true) + { + return static::anyPhoneNumber('landline', $formatted); + } + + /** + * Randomizes between complete cellphone and landline numbers. + */ + public function phoneNumber() + { + $method = static::randomElement(['cellphoneNumber', 'landlineNumber']); + + return call_user_func([static::class, $method], true); + } + + /** + * Randomizes between complete cellphone and landline numbers, cleared from formatting symbols. + */ + public static function phoneNumberCleared() + { + $method = static::randomElement(['cellphoneNumber', 'landlineNumber']); + + return call_user_func([static::class, $method], false); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/pt_BR/Text.php b/vendor/fakerphp/faker/src/Faker/Provider/pt_BR/Text.php new file mode 100644 index 0000000..ce60728 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/pt_BR/Text.php @@ -0,0 +1,3427 @@ += 12; + $verifier = 0; + + for ($i = 1; $i <= $length; ++$i) { + if (!$second_algorithm) { + $multiplier = $i + 1; + } else { + $multiplier = ($i >= 9) ? $i - 7 : $i + 1; + } + $verifier += $numbers[$length - $i] * $multiplier; + } + + $verifier = 11 - ($verifier % 11); + + if ($verifier >= 10) { + $verifier = 0; + } + + return $verifier; +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/pt_PT/Address.php b/vendor/fakerphp/faker/src/Faker/Provider/pt_PT/Address.php new file mode 100644 index 0000000..0d3f850 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/pt_PT/Address.php @@ -0,0 +1,130 @@ + 0; --$i) { + $numbers[$i] = substr($number, $i - 1, 1); + $partial[$i] = $numbers[$i] * $factor; + $sum += $partial[$i]; + + if ($factor == $base) { + $factor = 1; + } + ++$factor; + } + $res = $sum % 11; + + if ($res == 0 || $res == 1) { + $digit = 0; + } else { + $digit = 11 - $res; + } + + return $digit; + } + + /** + * @see http://nomesportugueses.blogspot.pt/2012/01/lista-dos-cem-nomes-mais-usados-em.html + */ + protected static $firstNameMale = [ + 'Rodrigo', 'João', 'Martim', 'Afonso', 'Tomás', 'Gonçalo', 'Francisco', 'Tiago', + 'Diogo', 'Guilherme', 'Pedro', 'Miguel', 'Rafael', 'Gabriel', 'Santiago', 'Dinis', + 'David', 'Duarte', 'José', 'Simão', 'Daniel', 'Lucas', 'Gustavo', 'André', 'Denis', + 'Salvador', 'António', 'Vasco', 'Henrique', 'Lourenço', 'Manuel', 'Eduardo', 'Bernardo', + 'Leandro', 'Luís', 'Diego', 'Leonardo', 'Alexandre', 'Rúben', 'Mateus', 'Ricardo', + 'Vicente', 'Filipe', 'Bruno', 'Nuno', 'Carlos', 'Rui', 'Hugo', 'Samuel', 'Álvaro', + 'Matias', 'Fábio', 'Ivo', 'Paulo', 'Jorge', 'Xavier', 'Marco', 'Isaac', 'Raúl', 'Benjamim', + 'Renato', 'Artur', 'Mário', 'Frederico', 'Cristiano', 'Ivan', 'Sérgio', 'Micael', + 'Vítor', 'Edgar', 'Kevin', 'Joaquim', 'Igor', 'Ângelo', 'Enzo', 'Valentim', 'Flávio', + 'Joel', 'Fernando', 'Sebastião', 'Tomé', 'César', 'Cláudio', 'Nelson', 'Lisandro', 'Jaime', + 'Gil', 'Mauro', 'Sandro', 'Hélder', 'Matheus', 'William', 'Gaspar', 'Márcio', + 'Martinho', 'Emanuel', 'Marcos', 'Telmo', 'Davi', 'Wilson', + ]; + + protected static $firstNameFemale = [ + 'Maria', 'Leonor', 'Matilde', 'Mariana', 'Ana', 'Beatriz', 'Inês', 'Lara', 'Carolina', 'Margarida', + 'Joana', 'Sofia', 'Diana', 'Francisca', 'Laura', 'Sara', 'Madalena', 'Rita', 'Mafalda', 'Catarina', + 'Luana', 'Marta', 'Íris', 'Alice', 'Bianca', 'Constança', 'Gabriela', 'Eva', 'Clara', 'Bruna', 'Daniela', + 'Iara', 'Filipa', 'Vitória', 'Ariana', 'Letícia', 'Bárbara', 'Camila', 'Rafaela', 'Carlota', 'Yara', + 'Núria', 'Raquel', 'Ema', 'Helena', 'Benedita', 'Érica', 'Isabel', 'Nicole', 'Lia', 'Alícia', 'Mara', + 'Jéssica', 'Soraia', 'Júlia', 'Luna', 'Victória', 'Luísa', 'Teresa', 'Miriam', 'Adriana', 'Melissa', + 'Andreia', 'Juliana', 'Alexandra', 'Yasmin', 'Tatiana', 'Leticia', 'Luciana', 'Eduarda', 'Cláudia', + 'Débora', 'Fabiana', 'Renata', 'Kyara', 'Kelly', 'Irina', 'Mélanie', 'Nádia', 'Cristiana', 'Liliana', + 'Patrícia', 'Vera', 'Doriana', 'Ângela', 'Mia', 'Erica', 'Mónica', 'Isabela', 'Salomé', 'Cátia', + 'Verónica', 'Violeta', 'Lorena', 'Érika', 'Vanessa', 'Iris', 'Anna', 'Viviane', 'Rebeca', 'Neuza', + ]; + + protected static $lastName = [ + 'Abreu', 'Almeida', 'Alves', 'Amaral', 'Amorim', 'Andrade', 'Anjos', 'Antunes', 'Araújo', 'Assunção', + 'Azevedo', 'Baptista', 'Barbosa', 'Barros', 'Batista', 'Borges', 'Branco', 'Brito', 'Campos', 'Cardoso', + 'Carneiro', 'Carvalho', 'Castro', 'Coelho', 'Correia', 'Costa', 'Cruz', 'Cunha', 'Domingues', 'Esteves', + 'Faria', 'Fernandes', 'Ferreira', 'Figueiredo', 'Fonseca', 'Freitas', 'Garcia', 'Gaspar', 'Gomes', + 'Gonçalves', 'Guerreiro', 'Henriques', 'Jesus', 'Leal', 'Leite', 'Lima', 'Lopes', 'Loureiro', 'Lourenço', + 'Macedo', 'Machado', 'Magalhães', 'Maia', 'Marques', 'Martins', 'Matias', 'Matos', 'Melo', 'Mendes', + 'Miranda', 'Monteiro', 'Morais', 'Moreira', 'Mota', 'Moura', 'Nascimento', 'Neto', 'Neves', 'Nogueira', + 'Nunes', 'Oliveira', 'Pacheco', 'Paiva', 'Pereira', 'Pinheiro', 'Pinho', 'Pinto', 'Pires', 'Ramos', + 'Reis', 'Ribeiro', 'Rocha', 'Rodrigues', 'Santos', 'Silva', 'Simões', 'Soares', 'Sousa', + 'Sá', 'Tavares', 'Teixeira', 'Torres', 'Valente', 'Vaz', 'Vicente', 'Vieira', + ]; +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/pt_PT/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/pt_PT/PhoneNumber.php new file mode 100644 index 0000000..948ba94 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/pt_PT/PhoneNumber.php @@ -0,0 +1,50 @@ + '01', 'AR' => '02', 'AG' => '03', 'B' => '40', 'BC' => '04', 'BH' => '05', + 'BN' => '06', 'BT' => '07', 'BV' => '08', 'BR' => '09', 'BZ' => '10', 'CS' => '11', + 'CL' => '51', 'CJ' => '12', 'CT' => '13', 'CV' => '14', 'DB' => '15', 'DJ' => '16', + 'GL' => '17', 'GR' => '52', 'GJ' => '18', 'HR' => '19', 'HD' => '20', 'IL' => '21', + 'IS' => '22', 'IF' => '23', 'MM' => '24', 'MH' => '25', 'MS' => '26', 'NT' => '27', + 'OT' => '28', 'PH' => '29', 'SM' => '30', 'SJ' => '31', 'SB' => '32', 'SV' => '33', + 'TR' => '34', 'TM' => '35', 'TL' => '36', 'VS' => '37', 'VL' => '38', 'VN' => '39', + + 'B1' => '41', 'B2' => '42', 'B3' => '43', 'B4' => '44', 'B5' => '45', 'B6' => '46', + ]; + + /** + * Personal Numerical Code (CNP) + * + * @see http://ro.wikipedia.org/wiki/Cod_numeric_personal + * + * @example 1111111111118 + * + * @param string|null $gender Person::GENDER_MALE or Person::GENDER_FEMALE + * @param string|null $dateOfBirth (1800-2099) 'Y-m-d', 'Y-m', 'Y' I.E. '1981-06-16', '2085-03', '1900' + * @param string|null $county county code where the CNP was issued + * @param bool|null $isResident flag if the person resides in Romania + * + * @return string 13 digits CNP code + */ + public function cnp($gender = null, $dateOfBirth = null, $county = null, $isResident = true) + { + $genders = [Person::GENDER_MALE, Person::GENDER_FEMALE]; + + if (empty($gender)) { + $gender = static::randomElement($genders); + } elseif (!in_array($gender, $genders, false)) { + throw new \InvalidArgumentException("Gender must be '{Person::GENDER_MALE}' or '{Person::GENDER_FEMALE}'"); + } + + $date = $this->getDateOfBirth($dateOfBirth); + + if (null === $county) { + $countyCode = static::randomElement(array_values(static::$cnpCountyCodes)); + } elseif (!array_key_exists($county, static::$cnpCountyCodes)) { + throw new \InvalidArgumentException("Invalid county code '{$county}' received"); + } else { + $countyCode = static::$cnpCountyCodes[$county]; + } + + $cnp = (string) $this->getGenderDigit($date, $gender, $isResident) + . $date->format('ymd') + . $countyCode + . static::numerify('##%') + ; + + $checksum = $this->getChecksumDigit($cnp); + + return $cnp . $checksum; + } + + /** + * @param string|null $dateOfBirth + * + * @return \DateTime + */ + protected function getDateOfBirth($dateOfBirth) + { + if (empty($dateOfBirth)) { + $dateOfBirthParts = [self::numberBetween(1800, 2099)]; + } else { + $dateOfBirthParts = explode('-', $dateOfBirth); + } + $baseDate = \Faker\Provider\DateTime::dateTimeBetween("first day of January {$dateOfBirthParts[0]}", "last day of December {$dateOfBirthParts[0]}"); + + switch (count($dateOfBirthParts)) { + case 1: + $dateOfBirthParts[] = $baseDate->format('m'); + //don't break, we need the day also + // no break + case 2: + $dateOfBirthParts[] = $baseDate->format('d'); + //don't break, next line will + // no break + case 3: + break; + + default: + throw new \InvalidArgumentException("Invalid date of birth - must be null or in the 'Y-m-d', 'Y-m', 'Y' format"); + } + + if ($dateOfBirthParts[0] < 1800 || $dateOfBirthParts[0] > 2099) { + throw new \InvalidArgumentException("Invalid date of birth - year must be between 1800 and 2099, '{$dateOfBirthParts[0]}' received"); + } + + $dateOfBirthFinal = implode('-', $dateOfBirthParts); + $date = \DateTime::createFromFormat('Y-m-d', $dateOfBirthFinal); + + //a full (invalid) date might have been supplied, check if it converts + if ($date->format('Y-m-d') !== $dateOfBirthFinal) { + throw new \InvalidArgumentException("Invalid date of birth - '{$date->format('Y-m-d')}' generated based on '{$dateOfBirth}' received"); + } + + return $date; + } + + /** + * https://ro.wikipedia.org/wiki/Cod_numeric_personal#S + * + * @param bool $isResident + * @param string $gender + * + * @return int + */ + protected static function getGenderDigit(\DateTime $dateOfBirth, $gender, $isResident) + { + if (!$isResident) { + return 9; + } + + if ($dateOfBirth->format('Y') < 1900) { + if ($gender == Person::GENDER_MALE) { + return 3; + } + + return 4; + } + + if ($dateOfBirth->format('Y') < 2000) { + if ($gender == Person::GENDER_MALE) { + return 1; + } + + return 2; + } + + if ($gender == Person::GENDER_MALE) { + return 5; + } + + return 6; + } + + /** + * Calculates a checksum for the Personal Numerical Code (CNP). + * + * @param string $value 12 digit CNP + * + * @return int checksum digit + */ + protected function getChecksumDigit($value) + { + $checkNumber = 279146358279; + + $checksum = 0; + + foreach (range(0, 11) as $digit) { + $checksum += (int) substr($value, $digit, 1) * (int) substr($checkNumber, $digit, 1); + } + $checksum = $checksum % 11; + + return $checksum == 10 ? 1 : $checksum; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/ro_RO/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/ro_RO/PhoneNumber.php new file mode 100644 index 0000000..01c5859 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/ro_RO/PhoneNumber.php @@ -0,0 +1,62 @@ + [ + '021#######', // Bucharest + '023#######', + '024#######', + '025#######', + '026#######', + '027#######', // non-geographic + '031#######', // Bucharest + '033#######', + '034#######', + '035#######', + '036#######', + '037#######', // non-geographic + ], + 'mobile' => [ + '07########', + ], + ]; + + protected static $specialFormats = [ + 'toll-free' => [ + '0800######', + '0801######', // shared-cost numbers + '0802######', // personal numbering + '0806######', // virtual cards + '0807######', // pre-paid cards + '0870######', // internet dial-up + ], + 'premium-rate' => [ + '0900######', + '0903######', // financial information + '0906######', // adult entertainment + ], + ]; + + /** + * @see http://en.wikipedia.org/wiki/Telephone_numbers_in_Romania#Last_years + */ + public function phoneNumber() + { + $type = static::randomElement(array_keys(static::$normalFormats)); + + return static::numerify(static::randomElement(static::$normalFormats[$type])); + } + + public static function tollFreePhoneNumber() + { + return static::numerify(static::randomElement(static::$specialFormats['toll-free'])); + } + + public static function premiumRatePhoneNumber() + { + return static::numerify(static::randomElement(static::$specialFormats['premium-rate'])); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/ro_RO/Text.php b/vendor/fakerphp/faker/src/Faker/Provider/ro_RO/Text.php new file mode 100644 index 0000000..1e40597 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/ro_RO/Text.php @@ -0,0 +1,155 @@ +generator->parse($format); + } + + public static function country() + { + return static::randomElement(static::$country); + } + + public static function postcode() + { + return static::toUpper(static::bothify(static::randomElement(static::$postcode))); + } + + public static function regionSuffix() + { + return static::randomElement(static::$regionSuffix); + } + + public static function region() + { + return static::randomElement(static::$region); + } + + public static function cityPrefix() + { + return static::randomElement(static::$cityPrefix); + } + + public function city() + { + return static::randomElement(static::$city); + } + + public static function streetPrefix() + { + return static::randomElement(static::$streetPrefix); + } + + public static function street() + { + return static::randomElement(static::$street); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/ru_RU/Color.php b/vendor/fakerphp/faker/src/Faker/Provider/ru_RU/Color.php new file mode 100644 index 0000000..d31d120 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/ru_RU/Color.php @@ -0,0 +1,23 @@ +generator->parse($format); + } + + public static function companyPrefix() + { + return static::randomElement(static::$companyPrefixes); + } + + public static function companyNameElement() + { + return static::randomElement(static::$companyElements); + } + + public static function companyNameSuffix() + { + return static::randomElement(static::$companyNameSuffixes); + } + + /** + * Generates a Russian Taxpayer Personal Identification Number + * + * @param string $area_code + * + * @return string + * + * @deprecated use {@link \Faker\Provider\ru_RU\Company::inn10()} instead + * @see \Faker\Provider\ru_RU\Company::inn10() + */ + public static function inn($area_code = '') + { + return self::inn10($area_code); + } + + /** + * Generates a Russian Taxpayer Personal Identification Number + * + * @param string $area_code + * + * @return string + */ + public static function inn10($area_code = '') + { + if ($area_code === '' || (int) $area_code === 0) { + //Simple generation code for areas in Russian without check for valid + $area_code = self::numberBetween(1, 91); + } else { + $area_code = (int) $area_code; + } + $area_code = str_pad($area_code, 2, '0', STR_PAD_LEFT); + $inn_base = $area_code . static::numerify('#######'); + + return $inn_base . self::inn10Checksum($inn_base); + } + + public static function kpp($inn = '') + { + if ($inn === '' || strlen($inn) < 4) { + $inn = self::inn10(); + } + + return substr($inn, 0, 4) . '01001'; + } + + /** + * Generates INN Checksum + * + * @see https://ru.wikipedia.org/wiki/%D0%98%D0%B4%D0%B5%D0%BD%D1%82%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%86%D0%B8%D0%BE%D0%BD%D0%BD%D1%8B%D0%B9_%D0%BD%D0%BE%D0%BC%D0%B5%D1%80_%D0%BD%D0%B0%D0%BB%D0%BE%D0%B3%D0%BE%D0%BF%D0%BB%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%89%D0%B8%D0%BA%D0%B0 + * + * @param string $inn + * + * @return string Checksum (one digit) + */ + public static function inn10Checksum($inn) + { + $multipliers = [2, 4, 10, 3, 5, 9, 4, 6, 8]; + $sum = 0; + + for ($i = 0; $i < 9; ++$i) { + $sum += (int) $inn[$i] * $multipliers[$i]; + } + + return (string) (($sum % 11) % 10); + } + + /** + * Checks whether an INN has a valid checksum + * + * @param string $inn + * + * @return bool + */ + public static function inn10IsValid($inn) + { + return strlen($inn) === 10 && self::inn10Checksum($inn) === $inn[9]; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/ru_RU/Internet.php b/vendor/fakerphp/faker/src/Faker/Provider/ru_RU/Internet.php new file mode 100644 index 0000000..195ef5f --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/ru_RU/Internet.php @@ -0,0 +1,9 @@ +.*<' | \ + * sed -r 's/—//' | sed -r 's/[\<\>]//g' | sed -r "s/(^|$)/'/g" | sed -r 's/$/,/' | sed -r 's/\&(laquo|raquo);/"/g' | \ + * sed -r 's/\s+/ /g'" + */ + protected static $banks = [ + 'Новый Промышленный Банк', + 'Новый Символ', + 'Нокссбанк', + 'Ноосфера', + 'Нордеа Банк', + 'Нота-Банк', + 'НС Банк', + 'НСТ-Банк', + 'Нэклис-Банк', + 'Образование', + 'Объединенный Банк Промышленных Инвестиций', + 'Объединенный Банк Республики', + 'Объединенный Капитал', + 'Объединенный Кредитный Банк', + 'Объединенный Кредитный Банк Московский филиал', + 'Объединенный Национальный Банк', + 'Объединенный Резервный Банк', + 'Океан Банк', + 'ОЛМА-Банк', + 'Онего', + 'Оней Банк', + 'ОПМ-Банк', + 'Оргбанк', + 'Оренбург', + 'ОТП Банк', + 'ОФК Банк', + 'Охабанк', + 'Первобанк', + 'Первомайский', + 'Первоуральскбанк', + 'Первый Дортрансбанк', + 'Первый Инвестиционный банк', + 'Первый Клиентский Банк', + 'Первый Чешско-Российский Банк', + 'Пересвет', + 'Пермь', + 'Петербургский Социальный Коммерческий Банк', + 'Петрокоммерц', + 'ПИР Банк', + 'Платина', + 'Плато-Банк', + 'Плюс Банк', + 'Пойдем!', + 'Почтобанк', + 'Прайм Финанс', + 'Преодоление', + 'Приморье', + 'Примсоцбанк', + 'Примтеркомбанк', + 'Прио-Внешторгбанк', + 'Приобье', + 'Приполярный', + 'Приско Капитал Банк', + 'Пробизнесбанк', + 'Проинвестбанк', + 'Прокоммерцбанк', + 'Проминвестбанк', + 'Промрегионбанк', + 'Промсвязьбанк', + 'Промсвязьинвестбанк', + 'Промсельхозбанк', + 'Промтрансбанк', + 'Промышленно-Финансовое Сотрудничество', + 'Промэнергобанк', + 'Профессионал Банк', + 'Профит Банк', + 'Прохладный', + 'Пульс Столицы', + 'Радиотехбанк', + 'Развитие', + 'Развитие-Столица', + 'Райффайзенбанк', + 'Расчетно-Кредитный Банк', + 'Расчетный Дом', + 'РБА', + 'Региональный Банк Развития', + 'Региональный Банк Сбережений', + 'Региональный Коммерческий Банк', + 'Региональный Кредит', + 'Регионфинансбанк', + 'Регнум', + 'Резерв', + 'Ренессанс', + 'Ренессанс Кредит', + 'Рента-Банк', + 'РЕСО Кредит', + 'Республиканский Кредитный Альянс', + 'Ресурс-Траст', + 'Риабанк', + 'Риал-Кредит', + 'Ринвестбанк', + 'Ринвестбанк Московский офис', + 'РИТ-Банк', + 'РН Банк', + 'Росавтобанк', + 'Росбанк', + 'Росбизнесбанк', + 'Росгосстрах Банк', + 'Росдорбанк', + 'РосЕвроБанк', + 'РосинтерБанк', + 'Роспромбанк', + 'Россельхозбанк', + 'Российская Финансовая Корпорация', + 'Российский Капитал', + 'Российский Кредит', + 'Российский Национальный Коммерческий Банк', + 'Россита-Банк', + 'Россия', + 'Рост Банк', + 'Ростфинанс', + 'Росэксимбанк', + 'Росэнергобанк', + 'Роял Кредит Банк', + 'РСКБ', + 'РТС-Банк', + 'РУБанк', + 'Рублев', + 'Руна-Банк', + 'Рунэтбанк', + 'Рускобанк', + 'Руснарбанк', + 'Русский Банк Сбережений', + 'Русский Ипотечный Банк', + 'Русский Международный Банк', + 'Русский Национальный Банк', + 'Русский Стандарт', + 'Русский Торговый Банк', + 'Русский Трастовый Банк', + 'Русский Финансовый Альянс', + 'Русский Элитарный Банк', + 'Русславбанк', + 'Руссобанк', + 'Русстройбанк', + 'Русфинанс Банк', + 'Русь', + 'РусьРегионБанк', + 'Русьуниверсалбанк', + 'РусЮгбанк', + 'РФИ Банк', + 'Саммит Банк', + 'Санкт-Петербургский Банк Инвестиций', + 'Саратов', + 'Саровбизнесбанк', + 'Сбербанк России', + 'Связной Банк', + 'Связь-Банк', + 'СДМ-Банк', + 'Севастопольский Морской банк', + 'Северный Кредит', + 'Северный Народный Банк', + 'Северо-Восточный Альянс', + 'Северо-Западный 1 Альянс Банк', + 'Северстройбанк', + 'Севзапинвестпромбанк', + 'Сельмашбанк', + 'Сервис-Резерв', + 'Сетелем Банк', + 'СИАБ', + 'Сибирский Банк Реконструкции и Развития', + 'Сибнефтебанк', + 'Сибсоцбанк', + 'Сибэс', + 'Сибэс Московский офис', + 'Синергия', + 'Синко-Банк', + 'Система', + 'Сити Инвест Банк', + 'Ситибанк', + 'СКА-Банк', + 'СКБ-Банк', + 'Славия', + 'Славянбанк', + 'Славянский Кредит', + 'Смартбанк', + 'СМБ-Банк', + 'Смолевич', + 'СМП Банк', + 'Снежинский', + 'Собинбанк', + 'Соверен Банк', + 'Советский', + 'Совкомбанк', + 'Современные Стандарты Бизнеса', + 'Содружество', + 'Соколовский', + 'Солид Банк', + 'Солидарность (Москва)', + 'Солидарность (Самара)', + 'Социнвестбанк', + 'Социнвестбанк Московский филиал', + 'Социум-Банк', + 'Союз', + 'Союзный', + 'Спецстройбанк', + 'Спиритбанк', + 'Спурт Банк', + 'Спутник', + 'Ставропольпромстройбанк', + 'Сталь Банк', + 'Стандарт-Кредит', + 'Стар Альянс', + 'СтарБанк', + 'Старооскольский Агропромбанк', + 'Старый Кремль', + 'Стелла-Банк', + 'Столичный Кредит', + 'Стратегия', + 'Строительно-Коммерческий Банк', + 'Стройлесбанк', + 'Сумитомо Мицуи', + 'Сургутнефтегазбанк', + 'СЭБ Банк', + 'Таатта', + 'Таврический', + 'Таганрогбанк', + 'Тагилбанк', + 'Тайдон', + 'Тайм Банк', + 'Тальменка-Банк', + 'Тальменка-Банк Московский филиал', + 'Тамбовкредитпромбанк', + 'Татагропромбанк', + 'Татсоцбанк', + 'Татфондбанк', + 'Таурус Банк', + 'ТверьУниверсалБанк', + 'Тексбанк', + 'Темпбанк', + 'Тендер-Банк', + 'Терра', + 'Тетраполис', + 'Тимер Банк', + 'Тинькофф Банк', + 'Тихоокеанский Внешторгбанк', + 'Тойота Банк', + 'Тольяттихимбанк', + 'Томскпромстройбанк', + 'Торгово-Промышленный Банк Китая', + 'Торговый Городской Банк', + 'Торжокуниверсалбанк', + 'Транскапиталбанк', + 'Транснациональный Банк', + 'Транспортный', + 'Трансстройбанк', + 'Траст Капитал Банк', + 'Тройка-Д Банк', + 'Тульский Промышленник', + 'Тульский Промышленник Московский офис', + 'Тульский Расчетный Центр', + 'Турбобанк', + 'Тусар', + 'ТЭМБР-Банк', + 'ТЭСТ', + 'Углеметбанк', + 'Уздан', + 'Унифин', + 'Унифондбанк', + 'Уралкапиталбанк', + 'Уралприватбанк', + 'Уралпромбанк', + 'Уралсиб', + 'Уралтрансбанк', + 'Уралфинанс', + 'Уральский Банк Реконструкции и Развития', + 'Уральский Межрегиональный Банк', + 'Уральский Финансовый Дом', + 'Ури Банк', + 'Уссури', + 'ФДБ', + 'ФИА-Банк', + 'Финам Банк', + 'Финанс Бизнес Банк', + 'Финансово-Промышленный Капитал', + 'Финансовый Капитал', + 'Финансовый Стандарт', + 'Финарс Банк', + 'Финпромбанк (ФПБ Банк)', + 'Финтрастбанк', + 'ФК Открытие (бывш. НОМОС-Банк)', + 'Флора-Москва', + 'Фольксваген Банк Рус', + 'Фондсервисбанк', + 'Фора-Банк', + 'Форбанк', + 'Форус Банк', + 'Форштадт', + 'Фьючер', + 'Хакасский Муниципальный Банк', + 'Ханты-Мансийский банк Открытие', + 'Химик', + 'Хлынов', + 'Хованский', + 'Холдинвестбанк', + 'Холмск', + 'Хоум Кредит Банк', + 'Центр-инвест', + 'Центрально-Азиатский', + 'Центрально-Европейский Банк', + 'Центркомбанк', + 'ЦентроКредит', + 'Церих', + 'Чайна Констракшн', + 'Чайнасельхозбанк', + 'Челиндбанк', + 'Челябинвестбанк', + 'Черноморский банк развития и реконструкции', + 'Чувашкредитпромбанк', + 'Эйч-Эс-Би-Си Банк (HSBC)', + 'Эко-Инвест', + 'Экономбанк', + 'Экономикс-Банк', + 'Экси-Банк', + 'Эксперт Банк', + 'Экспобанк', + 'Экспресс-Волга', + 'Экспресс-Кредит', + 'Эл Банк', + 'Элита', + 'Эльбин', + 'Энергобанк', + 'Энергомашбанк', + 'Энерготрансбанк', + 'Эно', + 'Энтузиастбанк', + 'Эргобанк', + 'Ю Би Эс Банк', + 'ЮГ-Инвестбанк', + 'Югра', + 'Южный Региональный Банк', + 'ЮМК', + 'Юниаструм Банк', + 'ЮниКредит Банк', + 'Юнистрим', + 'Япы Креди Банк Москва', + 'ЯР-Банк', + 'Яринтербанк', + 'Ярославич', + 'K2 Банк', + 'АББ', + 'Абсолют Банк', + 'Авангард', + 'Аверс', + 'Автоградбанк', + 'АвтоКредитБанк', + 'Автоторгбанк', + 'Агроинкомбанк', + 'Агропромкредит', + 'Агророс', + 'Агросоюз', + 'Адамон Банк', + 'Адамон Банк Московский филиал', + 'Аделантбанк', + 'Адмиралтейский', + 'Азиатско-Тихоокеанский Банк', + 'Азимут', + 'Азия Банк', + 'Азия-Инвест Банк', + 'Ай-Си-Ай-Си-Ай Банк (ICICI)', + 'Айви Банк', + 'АйМаниБанк', + 'Ак Барс', + 'Акибанк', + 'Аккобанк', + 'Акрополь', + 'Аксонбанк', + 'Актив Банк', + 'АктивКапитал Банк', + 'АктивКапитал Банк Московский филиал', + 'АктивКапитал Банк Санкт-Петербургский филиал', + 'Акцент', + 'Акцепт', + 'Акция', + 'Алданзолотобанк', + 'Александровский', + 'Алеф-Банк', + 'Алжан', + 'Алмазэргиэнбанк', + 'АлтайБизнес-Банк', + 'Алтайкапиталбанк', + 'Алтынбанк', + 'Альба Альянс', + 'Альта-Банк', + 'Альтернатива', + 'Альфа-Банк', + 'АМБ Банк', + 'Америкэн Экспресс Банк', + 'Анелик РУ', + 'Анкор Банк', + 'Анталбанк', + 'Апабанк', + 'Аресбанк', + 'Арзамас', + 'Арксбанк', + 'Арсенал', + 'Аспект', + 'Ассоциация', + 'БайкалБанк', + 'БайкалИнвестБанк', + 'Байкалкредобанк', + 'Балаково-Банк', + 'Балтийский Банк', + 'Балтика', + 'Балтинвестбанк', + 'Банк "Акцент" Московский филиал', + 'Банк "МБА-Москва"', + 'Банк "Санкт-Петербург"', + 'Банк АВБ', + 'Банк БКФ', + 'Банк БФА', + 'Банк БЦК-Москва', + 'Банк Город', + 'Банк Жилищного Финансирования', + 'Банк Инноваций и Развития', + 'Банк Интеза', + 'Банк ИТБ', + 'Банк Казани', + 'Банк Китая (Элос)', + 'Банк Кредит Свисс', + 'Банк МБФИ', + 'Банк Москвы', + 'Банк на Красных Воротах', + 'Банк Оранжевый (бывш. Промсервисбанк)', + 'Банк оф Токио-Мицубиси', + 'Банк Премьер Кредит', + 'Банк ПСА Финанс Рус', + 'Банк Развития Технологий', + 'Банк Расчетов и Сбережений', + 'Банк Раунд', + 'Банк РСИ', + 'Банк Сберегательно-кредитного сервиса', + 'Банк СГБ', + 'Банк Торгового Финансирования', + 'Банк Финсервис', + 'Банк Экономический Союз', + 'Банкирский Дом', + 'Банкхаус Эрбе', + 'Башкомснаббанк', + 'Башпромбанк', + 'ББР Банк', + 'Белгородсоцбанк', + 'Бенифит-Банк', + 'Берейт', + 'Бест Эффортс Банк', + 'Бизнес для Бизнеса', + 'Бинбанк', + 'БИНБАНК кредитные карты', + 'Бинбанк Мурманск', + 'БКС Инвестиционный Банк', + 'БМВ Банк', + 'БНП Париба Банк', + 'Богородский', + 'Богородский Муниципальный Банк', + 'Братский АНКБ', + 'БСТ-Банк', + 'Булгар Банк', + 'Бум-Банк', + 'Бумеранг', + 'БФГ-Кредит', + 'БыстроБанк', + 'Вакобанк', + 'Вега-Банк', + 'Век', + 'Великие Луки Банк', + 'Венец', + 'Верхневолжский', + 'Верхневолжский Крымский филиал', + 'Верхневолжский Московский филиал', + 'Верхневолжский Невский филиал', + 'Верхневолжский Таврический филиал', + 'Верхневолжский Ярославский филиал', + 'Веста', + 'Вестинтербанк', + 'Взаимодействие', + 'Викинг', + 'Витабанк', + 'Витязь', + 'Вкабанк', + 'Владбизнесбанк', + 'Владпромбанк', + 'Внешпромбанк', + 'Внешфинбанк', + 'Внешэкономбанк', + 'Военно-Промышленный Банк', + 'Возрождение', + 'Вокбанк', + 'Вологдабанк', + 'Вологжанин', + 'Воронеж', + 'Восточно-Европейский Трастовый Банк', + 'Восточный Экспресс Банк', + 'ВостСибтранскомбанк', + 'ВРБ Москва', + 'Всероссийский Банк Развития Регионов', + 'ВТБ', + 'ВТБ 24', + 'ВУЗ-Банк', + 'Выборг-Банк', + 'Выборг-Банк Московский филиал', + 'Вэлтон Банк', + 'Вятич', + 'Вятка-Банк', + 'Гагаринский', + 'Газбанк', + 'Газнефтьбанк', + 'Газпромбанк', + 'Газстройбанк', + 'Газтрансбанк', + 'Газэнергобанк', + 'Ганзакомбанк', + 'Гарант-Инвест', + 'Гаранти Банк Москва', + 'Геленджик-Банк', + 'Генбанк', + 'Геобанк', + 'Гефест', + 'Глобус', + 'Глобэкс', + 'Голдман Сакс Банк', + 'Горбанк', + 'ГПБ-Ипотека', + 'Гранд Инвест Банк', + 'Гринкомбанк', + 'Гринфилдбанк', + 'Грис-Банк', + 'Гута-Банк', + 'Далена', + 'Далетбанк', + 'Далта-Банк', + 'Дальневосточный Банк', + 'Данске Банк', + 'Девон-Кредит', + 'ДельтаКредит', + 'Денизбанк Москва', + 'Держава', + 'Дж. П. Морган Банк', + 'Джаст Банк', + 'Джей энд Ти Банк', + 'Дил-Банк', + 'Динамичные Системы', + 'Дойче Банк', + 'Долинск', + 'Дом-Банк', + 'Дон-Тексбанк', + 'Донкомбанк', + 'Донхлеббанк', + 'Дорис Банк', + 'Дружба', + 'ЕАТП Банк', + 'Евразийский Банк', + 'Евроазиатский Инвестиционный Банк', + 'ЕвроАксис Банк', + 'Евроальянс', + 'Еврокапитал-Альянс', + 'Еврокоммерц', + 'Еврокредит', + 'Евромет', + 'Европейский Стандарт', + 'Европлан Банк', + 'ЕвроситиБанк', + 'Еврофинанс Моснарбанк', + 'Единственный', + 'Единый Строительный Банк', + 'Екатеринбург', + 'Екатерининский', + 'Енисей', + 'Енисейский Объединенный Банк', + 'Ермак', + 'Живаго-Банк', + 'Жилкредит', + 'Жилстройбанк', + 'Запсибкомбанк', + 'Заречье', + 'Заубер Банк', + 'Земкомбанк', + 'Земский Банк', + 'Зенит', + 'Зенит Сочи', + 'Зернобанк', + 'Зираат Банк', + 'Златкомбанк', + 'И.Д.Е.А. Банк', + 'Иваново', + 'Идеалбанк', + 'Ижкомбанк', + 'ИК Банк', + 'Икано Банк', + 'Инбанк', + 'Инвест-Экобанк', + 'Инвестиционный Банк Кубани', + 'Инвестиционный Республиканский Банк', + 'Инвестиционный Союз', + 'Инвесткапиталбанк', + 'Инвестсоцбанк', + 'Инвестторгбанк', + 'ИНГ Банк', + 'Индустриальный Сберегательный Банк', + 'Инкаробанк', + 'Интерактивный Банк', + 'Интеркоммерц Банк', + 'Интеркоопбанк', + 'Интеркредит', + 'Интернациональный Торговый Банк', + 'Интерпрогрессбанк', + 'Интерпромбанк', + 'Интехбанк', + 'Информпрогресс', + 'Ипозембанк', + 'ИпоТек Банк', + 'Иронбанк', + 'ИРС', + 'Итуруп', + 'Ишбанк', + 'Йошкар-Ола', + 'Калуга', + 'Камский Горизонт', + 'Камский Коммерческий Банк', + 'Камчаткомагропромбанк', + 'Канский', + 'Капитал', + 'Капиталбанк', + 'Кедр', + 'Кемсоцинбанк', + 'Кетовский Коммерческий Банк', + 'Киви Банк', + 'Классик Эконом Банк', + 'Клиентский', + 'Кольцо Урала', + 'Коммерцбанк (Евразия)', + 'Коммерческий Банк Развития', + 'Коммерческий Индо Банк', + 'Консервативный Коммерческий Банк', + 'Констанс-Банк', + 'Континенталь', + 'Конфидэнс Банк', + 'Кор', + 'Кореа Эксчендж Банк Рус', + 'Королевский Банк Шотландии', + 'Космос', + 'Костромаселькомбанк', + 'Кошелев-Банк', + 'Крайинвестбанк', + 'Кранбанк', + 'Креди Агриколь КИБ', + 'Кредит Европа Банк', + 'Кредит Урал Банк', + 'Кредит Экспресс', + 'Кредит-Москва', + 'Кредитинвест', + 'Кредо Финанс', + 'Кредпромбанк', + 'Кремлевский', + 'Крокус-Банк', + 'Крона-Банк', + 'Кросна-Банк', + 'Кроссинвестбанк', + 'Крыловский', + 'КС Банк', + 'Кубанский Универсальный Банк', + 'Кубань Кредит', + 'Кубаньторгбанк', + 'Кузбассхимбанк', + 'Кузнецкбизнесбанк', + 'Кузнецкий', + 'Кузнецкий Мост', + 'Курган', + 'Курскпромбанк', + 'Лада-Кредит', + 'Лайтбанк', + 'Ланта-Банк', + 'Левобережный', + 'Легион', + 'Леноблбанк', + 'Лесбанк', + 'Лето Банк', + 'Липецккомбанк', + 'Логос', + 'Локо-Банк', + 'Лэнд-Банк', + 'М2М Прайвет Банк', + 'Майкопбанк', + 'Майский', + 'МАК-Банк', + 'Максима', + 'Максимум', + 'МАСТ-Банк', + 'Мастер-Капитал', + 'МВС Банк', + 'МДМ Банк', + 'Мегаполис', + 'Международный Акционерный Банк', + 'Международный Банк Развития', + 'Международный Банк Санкт-Петербурга (МБСП)', + 'Международный Коммерческий Банк', + 'Международный Расчетный Банк', + 'Международный Строительный Банк', + 'Международный Финансовый Клуб', + 'Межотраслевая Банковская Корпорация', + 'Межрегиональный Банк Реконструкции', + 'Межрегиональный Клиринговый Банк', + 'Межрегиональный Почтовый Банк', + 'Межрегиональный промышленно-строительный банк', + 'Межрегионбанк', + 'Межтопэнергобанк', + 'Межтрастбанк', + 'Мерседес-Бенц Банк Рус', + 'Металлинвестбанк', + 'Металлург', + 'Меткомбанк (Каменск-Уральский)', + 'Меткомбанк (Череповец)', + 'Метробанк', + 'Метрополь', + 'Мидзухо Банк', + 'Мико-Банк', + 'Милбанк', + 'Миллениум Банк', + 'Мир Бизнес Банк', + 'Мираф-Банк', + 'Мираф-Банк Московский филиал', + 'Миръ', + 'Михайловский ПЖСБ', + 'Морган Стэнли Банк', + 'Морской Банк', + 'Мосводоканалбанк', + 'Москва', + 'Москва-Сити', + 'Московский Вексельный Банк', + 'Московский Индустриальный Банк', + 'Московский Коммерческий Банк', + 'Московский Кредитный Банк', + 'Московский Национальный Инвестиционный Банк', + 'Московский Нефтехимический Банк', + 'Московский Областной Банк', + 'Московско-Парижский Банк', + 'Московское Ипотечное Агентство', + 'Москоммерцбанк', + 'Мосстройэкономбанк (М Банк)', + 'Мострансбанк', + 'Мосуралбанк', + 'МС Банк Рус', + 'МСП Банк', + 'МТИ-Банк', + 'МТС Банк', + 'Муниципальный Камчатпрофитбанк', + 'Мурманский Социальный Коммерческий Банк', + 'МФБанк', + 'Н-Банк', + 'Нальчик', + 'Наратбанк', + 'Народный Банк', + 'Народный Банк Республики Тыва', + 'Народный Доверительный Банк', + 'Народный Земельно-Промышленный Банк', + 'Народный Инвестиционный Банк', + 'Натиксис Банк', + 'Нацинвестпромбанк', + 'Национальная Факторинговая Компания', + 'Национальный Банк "Траст"', + 'Национальный Банк Взаимного Кредита', + 'Национальный Банк Сбережений', + 'Национальный Залоговый Банк', + 'Национальный Клиринговый Банк', + 'Национальный Клиринговый Центр', + 'Национальный Корпоративный Банк', + 'Национальный Резервный Банк', + 'Национальный Стандарт', + 'Наш Дом', + 'НБД-Банк', + 'НБК-Банк', + 'Невастройинвест', + 'Невский Банк', + 'Нейва', + 'Нерюнгрибанк', + 'Нефтепромбанк', + 'Нефтяной Альянс', + 'Нижневолжский Коммерческий Банк', + 'Нико-Банк', + 'НК Банк', + 'НоваховКапиталБанк', + 'Новация', + 'Новикомбанк', + 'Новобанк', + 'Новое Время', + 'Новокиб', + 'Новопокровский', + 'Новый Век', + 'Новый Кредитный Союз', + 'Новый Московский Банк', + ]; + + /** + * @example 'Новый Московский Банк' + */ + public static function bank() + { + return static::randomElement(static::$banks); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/ru_RU/Person.php b/vendor/fakerphp/faker/src/Faker/Provider/ru_RU/Person.php new file mode 100644 index 0000000..b0e17d4 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/ru_RU/Person.php @@ -0,0 +1,188 @@ +middleNameMale(); + } + + if ($gender === static::GENDER_FEMALE) { + return $this->middleNameFemale(); + } + + return $this->middleName(static::randomElement([ + static::GENDER_MALE, + static::GENDER_FEMALE, + ])); + } + + /** + * Return last name for the specified gender. + * + * @param string|null $gender A gender of the last name should be generated + * for. If the argument is skipped a random gender will be used. + * + * @return string Last name + */ + public function lastName($gender = null) + { + if (static::GENDER_FEMALE === $gender) { + return $this->lastNameFemale(); + } + + if (static::GENDER_MALE === $gender) { + return $this->lastNameMale(); + } + + return static::randomElement(static::$lastName) . static::randomElement(static::$lastNameSuffix); + } + + public function lastNameMale(): string + { + return static::randomElement(static::$lastName); + } + + public function lastNameFemale(): string + { + return static::randomElement(static::$lastName) . 'а'; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/ru_RU/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/ru_RU/PhoneNumber.php new file mode 100644 index 0000000..06f6337 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/ru_RU/PhoneNumber.php @@ -0,0 +1,14 @@ +generator->parse(static::randomElement(static::$lastNameFormat)); + } + + public static function lastNameMale() + { + return static::randomElement(static::$lastNameMale); + } + + public static function lastNameFemale() + { + return static::randomElement(static::$lastNameFemale); + } + + /** + * @example 'PhD' + */ + public static function suffix() + { + return static::randomElement(static::$suffix); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/sk_SK/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/sk_SK/PhoneNumber.php new file mode 100644 index 0000000..bd195e4 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/sk_SK/PhoneNumber.php @@ -0,0 +1,15 @@ +format('ymd'); + $randomDigits = $this->getBirthNumber($gender); + + $checksum = Luhn::computeCheckDigit($datePart . $randomDigits); + + return $datePart . '-' . $randomDigits . $checksum; + } + + /** + * @param string $gender Person::GENDER_MALE || Person::GENDER_FEMALE + * + * @return string of three digits + */ + protected function getBirthNumber($gender = null) + { + if ($gender && $gender === static::GENDER_MALE) { + return (string) static::numerify('##') . static::randomElement([1, 3, 5, 7, 9]); + } + + $zeroCheck = static function ($callback) { + do { + $randomDigits = $callback(); + } while ($randomDigits === '000'); + + return $randomDigits; + }; + + if ($gender && $gender === static::GENDER_FEMALE) { + return $zeroCheck(static function () { + return (string) static::numerify('##') . static::randomElement([0, 2, 4, 6, 8]); + }); + } + + return $zeroCheck(static function () { + return (string) static::numerify('###'); + }); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/sv_SE/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/sv_SE/PhoneNumber.php new file mode 100644 index 0000000..2d5c588 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/sv_SE/PhoneNumber.php @@ -0,0 +1,64 @@ + Swedish mobile number formats + */ + protected static array $mobileFormats = [ + '+467########', + '+46(0)7########', + '+46 (0)7## ## ## ##', + '+46 (0)7## ### ###', + '07## ## ## ##', + '07## ### ###', + '07##-## ## ##', + '07##-### ###', + '07# ### ## ##', + '07#-### ## ##', + '07#-#######', + ]; + + public function mobileNumber(): string + { + $format = static::randomElement(static::$mobileFormats); + + return self::numerify($this->generator->parse($format)); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/th_TH/Address.php b/vendor/fakerphp/faker/src/Faker/Provider/th_TH/Address.php new file mode 100644 index 0000000..4918281 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/th_TH/Address.php @@ -0,0 +1,141 @@ +format('a') === 'am' ? 'öö' : 'ös'; + } + + public static function dayOfWeek($max = 'now') + { + $map = [ + 'Sunday' => 'Pazar', + 'Monday' => 'Pazartesi', + 'Tuesday' => 'Salı', + 'Wednesday' => 'Çarşamba', + 'Thursday' => 'Perşembe', + 'Friday' => 'Cuma', + 'Saturday' => 'Cumartesi', + ]; + $week = static::dateTime($max)->format('l'); + + return $map[$week] ?? $week; + } + + public static function monthName($max = 'now') + { + $map = [ + 'January' => 'Ocak', + 'February' => 'Şubat', + 'March' => 'Mart', + 'April' => 'Nisan', + 'May' => 'Mayıs', + 'June' => 'Haziran', + 'July' => 'Temmuz', + 'August' => 'Ağustos', + 'September' => 'Eylül', + 'October' => 'Ekim', + 'November' => 'Kasım', + 'December' => 'Aralık', + ]; + $month = static::dateTime($max)->format('F'); + + return $map[$month] ?? $month; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/tr_TR/Internet.php b/vendor/fakerphp/faker/src/Faker/Provider/tr_TR/Internet.php new file mode 100644 index 0000000..9d82111 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/tr_TR/Internet.php @@ -0,0 +1,9 @@ + $digit) { + if ($index % 2 === 0) { + $evenSum += $digit; + } else { + $oddSum += $digit; + } + } + + $tenthDigit = (7 * $evenSum - $oddSum) % 10; + $eleventhDigit = ($evenSum + $oddSum + $tenthDigit) % 10; + + return $tenthDigit . $eleventhDigit; + } + + /** + * Checks whether a TCNo has a valid checksum + * + * @param string $tcNo + * + * @return bool + */ + public static function tcNoIsValid($tcNo) + { + return self::tcNoChecksum(substr($tcNo, 0, -2)) === substr($tcNo, -2, 2); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/tr_TR/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/tr_TR/PhoneNumber.php new file mode 100644 index 0000000..3103c77 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/tr_TR/PhoneNumber.php @@ -0,0 +1,186 @@ +generator->parse($format); + } + + public static function streetPrefix() + { + return static::randomElement(static::$streetPrefix); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/uk_UA/Color.php b/vendor/fakerphp/faker/src/Faker/Provider/uk_UA/Color.php new file mode 100644 index 0000000..502161c --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/uk_UA/Color.php @@ -0,0 +1,23 @@ +generator->parse($format); + } + + public static function companyPrefix() + { + return static::randomElement(static::$companyPrefix); + } + + public static function companyName() + { + return static::randomElement(static::$companyName); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/uk_UA/Internet.php b/vendor/fakerphp/faker/src/Faker/Provider/uk_UA/Internet.php new file mode 100644 index 0000000..6119354 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/uk_UA/Internet.php @@ -0,0 +1,9 @@ +middleNameMale(); + } + + if ($gender === static::GENDER_FEMALE) { + return $this->middleNameFemale(); + } + + return $this->middleName(static::randomElement([ + static::GENDER_MALE, + static::GENDER_FEMALE, + ])); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/uk_UA/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/uk_UA/PhoneNumber.php new file mode 100644 index 0000000..15b443f --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/uk_UA/PhoneNumber.php @@ -0,0 +1,72 @@ +generator->parse($format)); + } + + public function hamletPrefix() + { + return static::randomElement(static::$hamletPrefix); + } + + public function wardName() + { + $format = static::randomElement(static::$wardNameFormats); + + return static::bothify($this->generator->parse($format)); + } + + public function wardPrefix() + { + return static::randomElement(static::$wardPrefix); + } + + public function districtName() + { + $format = static::randomElement(static::$districtNameFormats); + + return static::bothify($this->generator->parse($format)); + } + + public function districtPrefix() + { + return static::randomElement(static::$districtPrefix); + } + + /** + * @example 'Hà Nội' + */ + public function city() + { + return static::randomElement(static::$city); + } + + /** + * @example 'Bắc Giang' + */ + public static function province() + { + return static::randomElement(static::$province); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/vi_VN/Color.php b/vendor/fakerphp/faker/src/Faker/Provider/vi_VN/Color.php new file mode 100644 index 0000000..df78855 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/vi_VN/Color.php @@ -0,0 +1,36 @@ +generator->parse(static::randomElement(static::$middleNameFormat)); + } + + public static function middleNameMale() + { + return static::randomElement(static::$middleNameMale); + } + + public static function middleNameFemale() + { + return static::randomElement(static::$middleNameFemale); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/vi_VN/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/vi_VN/PhoneNumber.php new file mode 100644 index 0000000..a6f47f1 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/vi_VN/PhoneNumber.php @@ -0,0 +1,61 @@ + [ + '0[a] ### ####', + '(0[a]) ### ####', + '0[a]-###-####', + '(0[a])###-####', + '84-[a]-###-####', + '(84)([a])###-####', + '+84-[a]-###-####', + ], + '8' => [ + '0[a] #### ####', + '(0[a]) #### ####', + '0[a]-####-####', + '(0[a])####-####', + '84-[a]-####-####', + '(84)([a])####-####', + '+84-[a]-####-####', + ], + ]; + + public function phoneNumber() + { + $areaCode = static::randomElement(static::$areaCodes); + $areaCodeLength = strlen($areaCode); + $digits = 7; + + if ($areaCodeLength < 2) { + $digits = 8; + } + + return static::numerify(str_replace('[a]', $areaCode, static::randomElement(static::$formats[$digits]))); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/zh_CN/Address.php b/vendor/fakerphp/faker/src/Faker/Provider/zh_CN/Address.php new file mode 100644 index 0000000..00b9eb7 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/zh_CN/Address.php @@ -0,0 +1,148 @@ +city() . static::area(); + } + + public static function postcode() + { + $prefix = str_pad(self::numberBetween(1, 85), 2, 0, STR_PAD_LEFT); + $suffix = '00'; + + return $prefix . self::numberBetween(10, 88) . $suffix; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/zh_CN/Color.php b/vendor/fakerphp/faker/src/Faker/Provider/zh_CN/Color.php new file mode 100644 index 0000000..254fd07 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/zh_CN/Color.php @@ -0,0 +1,66 @@ +format('a') === 'am' ? '上午' : '下午'; + } + + public static function dayOfWeek($max = 'now') + { + $map = [ + 'Sunday' => '星期日', + 'Monday' => '星期一', + 'Tuesday' => '星期二', + 'Wednesday' => '星期三', + 'Thursday' => '星期四', + 'Friday' => '星期五', + 'Saturday' => '星期六', + ]; + $week = static::dateTime($max)->format('l'); + + return $map[$week] ?? $week; + } + + public static function monthName($max = 'now') + { + $map = [ + 'January' => '一月', + 'February' => '二月', + 'March' => '三月', + 'April' => '四月', + 'May' => '五月', + 'June' => '六月', + 'July' => '七月', + 'August' => '八月', + 'September' => '九月', + 'October' => '十月', + 'November' => '十一月', + 'December' => '十二月', + ]; + $month = static::dateTime($max)->format('F'); + + return $map[$month] ?? $month; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/zh_CN/Internet.php b/vendor/fakerphp/faker/src/Faker/Provider/zh_CN/Internet.php new file mode 100644 index 0000000..e1a8796 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/zh_CN/Internet.php @@ -0,0 +1,24 @@ + [ + '板橋區', '三重區', '中和區', '永和區', + '新莊區', '新店區', '樹林區', '鶯歌區', + '三峽區', '淡水區', '汐止區', '瑞芳區', + '土城區', '蘆洲區', '五股區', '泰山區', + '林口區', '深坑區', '石碇區', '坪林區', + '三芝區', '石門區', '八里區', '平溪區', + '雙溪區', '貢寮區', '金山區', '萬里區', + '烏來區', + ], + '宜蘭縣' => [ + '宜蘭市', '羅東鎮', '蘇澳鎮', '頭城鎮', '礁溪鄉', + '壯圍鄉', '員山鄉', '冬山鄉', '五結鄉', '三星鄉', + '大同鄉', '南澳鄉', + ], + '桃園市' => [ + '桃園區', '中壢區', '大溪區', '楊梅區', '蘆竹區', + '大園區', '龜山區', '八德區', '龍潭區', '平鎮區', + '新屋區', '觀音區', '復興區', + ], + '新竹縣' => [ + '竹北市', '竹東鎮', '新埔鎮', '關西鎮', '湖口鄉', + '新豐鄉', '芎林鄉', '橫山鄉', '北埔鄉', '寶山鄉', + '峨眉鄉', '尖石鄉', '五峰鄉', + ], + '苗栗縣' => [ + '苗栗市', '苑裡鎮', '通霄鎮', '竹南鎮', '頭份鎮', + '後龍鎮', '卓蘭鎮', '大湖鄉', '公館鄉', '銅鑼鄉', + '南庄鄉', '頭屋鄉', '三義鄉', '西湖鄉', '造橋鄉', + '三灣鄉', '獅潭鄉', '泰安鄉', + ], + '臺中市' => [ + '豐原區', '東勢區', '大甲區', '清水區', '沙鹿區', + '梧棲區', '后里區', '神岡區', '潭子區', '大雅區', + '新社區', '石岡區', '外埔區', '大安區', '烏日區', + '大肚區', '龍井區', '霧峰區', '太平區', '大里區', + '和平區', '中區', '東區', '南區', '西區', '北區', + '西屯區', '南屯區', '北屯區', + ], + '彰化縣' => [ + '彰化市', '鹿港鎮', '和美鎮', '線西鄉', '伸港鄉', + '福興鄉', '秀水鄉', '花壇鄉', '芬園鄉', '員林鎮', + '溪湖鎮', '田中鎮', '大村鄉', '埔鹽鄉', '埔心鄉', + '永靖鄉', '社頭鄉', '二水鄉', '北斗鎮', '二林鎮', + '田尾鄉', '埤頭鄉', '芳苑鄉', '大城鄉', '竹塘鄉', + '溪州鄉', + ], + '南投縣' => [ + '南投市', '埔里鎮', '草屯鎮', '竹山鎮', '集集鎮', + '名間鄉', '鹿谷鄉', '中寮鄉', '魚池鄉', '國姓鄉', + '水里鄉', '信義鄉', '仁愛鄉', + ], + '雲林縣' => [ + '斗六市', '斗南鎮', '虎尾鎮', '西螺鎮', '土庫鎮', + '北港鎮', '古坑鄉', '大埤鄉', '莿桐鄉', '林內鄉', + '二崙鄉', '崙背鄉', '麥寮鄉', '東勢鄉', '褒忠鄉', + '臺西鄉', '元長鄉', '四湖鄉', '口湖鄉', '水林鄉', + ], + '嘉義縣' => [ + '太保市', '朴子市', '布袋鎮', '大林鎮', '民雄鄉', + '溪口鄉', '新港鄉', '六腳鄉', '東石鄉', '義竹鄉', + '鹿草鄉', '水上鄉', '中埔鄉', '竹崎鄉', '梅山鄉', + '番路鄉', '大埔鄉', '阿里山鄉', + ], + '臺南市' => [ + '新營區', '鹽水區', '白河區', '柳營區', '後壁區', + '東山區', '麻豆區', '下營區', '六甲區', '官田區', + '大內區', '佳里區', '學甲區', '西港區', '七股區', + '將軍區', '北門區', '新化區', '善化區', '新市區', + '安定區', '山上區', '玉井區', '楠西區', '南化區', + '左鎮區', '仁德區', '歸仁區', '關廟區', '龍崎區', + '永康區', '東區', '南區', '西區', '北區', '中區', + '安南區', '安平區', + ], + '高雄市' => [ + '鳳山區', '林園區', '大寮區', '大樹區', '大社區', + '仁武區', '鳥松區', '岡山區', '橋頭區', '燕巢區', + '田寮區', '阿蓮區', '路竹區', '湖內區', '茄萣區', + '永安區', '彌陀區', '梓官區', '旗山區', '美濃區', + '六龜區', '甲仙區', '杉林區', '內門區', '茂林區', + '桃源區', '三民區', '鹽埕區', '鼓山區', '左營區', + '楠梓區', '三民區', '新興區', '前金區', '苓雅區', + '前鎮區', '旗津區', '小港區', + ], + '屏東縣' => [ + '屏東市', '潮州鎮', '東港鎮', '恆春鎮', '萬丹鄉', + '長治鄉', '麟洛鄉', '九如鄉', '里港鄉', '鹽埔鄉', + '高樹鄉', '萬巒鄉', '內埔鄉', '竹田鄉', '新埤鄉', + '枋寮鄉', '新園鄉', '崁頂鄉', '林邊鄉', '南州鄉', + '佳冬鄉', '琉球鄉', '車城鄉', '滿州鄉', '枋山鄉', + '三地門鄉', '霧臺鄉', '瑪家鄉', '泰武鄉', '來義鄉', + '春日鄉', '獅子鄉', '牡丹鄉', + ], + '臺東縣' => [ + '臺東市', '成功鎮', '關山鎮', '卑南鄉', '鹿野鄉', + '池上鄉', '東河鄉', '長濱鄉', '太麻里鄉', '大武鄉', + '綠島鄉', '海端鄉', '延平鄉', '金峰鄉', '達仁鄉', + '蘭嶼鄉', + ], + '花蓮縣' => [ + '花蓮市', '鳳林鎮', '玉里鎮', '新城鄉', '吉安鄉', + '壽豐鄉', '光復鄉', '豐濱鄉', '瑞穗鄉', '富里鄉', + '秀林鄉', '萬榮鄉', '卓溪鄉', + ], + '澎湖縣' => [ + '馬公市', '湖西鄉', '白沙鄉', '西嶼鄉', '望安鄉', + '七美鄉', + ], + '基隆市' => [ + '中正區', '七堵區', '暖暖區', '仁愛區', '中山區', + '安樂區', '信義區', + ], + '新竹市' => [ + '東區', '北區', '香山區', + ], + '嘉義市' => [ + '東區', '西區', + ], + '臺北市' => [ + '松山區', '信義區', '大安區', '中山區', '中正區', + '大同區', '萬華區', '文山區', '南港區', '內湖區', + '士林區', '北投區', + ], + '連江縣' => [ + '南竿鄉', '北竿鄉', '莒光鄉', '東引鄉', + ], + '金門縣' => [ + '金城鎮', '金沙鎮', '金湖鎮', '金寧鄉', '烈嶼鄉', '烏坵鄉', + ], + ]; + + /** + * @see http://terms.naer.edu.tw/download/287/ + */ + protected static $country = [ + '不丹', '中非', '丹麥', '伊朗', '冰島', '剛果', + '加彭', '北韓', '南非', '卡達', '印尼', '印度', + '古巴', '哥德', '埃及', '多哥', '寮國', '尼日', + '巴曼', '巴林', '巴紐', '巴西', '希臘', '帛琉', + '德國', '挪威', '捷克', '教廷', '斐濟', '日本', + '智利', '東加', '查德', '汶萊', '法國', '波蘭', + '波赫', '泰國', '海地', '瑞典', '瑞士', '祕魯', + '秘魯', '約旦', '紐埃', '緬甸', '美國', '聖尼', + '聖普', '肯亞', '芬蘭', '英國', '荷蘭', '葉門', + '蘇丹', '諾魯', '貝南', '越南', '迦彭', + '迦納', '阿曼', '阿聯', '韓國', '馬利', + '以色列', '以色利', '伊拉克', '俄羅斯', + '利比亞', '加拿大', '匈牙利', '南極洲', + '南蘇丹', '厄瓜多', '吉布地', '吐瓦魯', + '哈撒克', '哈薩克', '喀麥隆', '喬治亞', + '土庫曼', '土耳其', '塔吉克', '塞席爾', + '墨西哥', '大西洋', '奧地利', '孟加拉', + '安哥拉', '安地卡', '安道爾', '尚比亞', + '尼伯爾', '尼泊爾', '巴哈馬', '巴拉圭', + '巴拿馬', '巴貝多', '幾內亞', '愛爾蘭', + '所在國', '摩洛哥', '摩納哥', '敍利亞', + '敘利亞', '新加坡', '東帝汶', '柬埔寨', + '比利時', '波扎那', '波札那', '烏克蘭', + '烏干達', '烏拉圭', '牙買加', '獅子山', + '甘比亞', '盧安達', '盧森堡', '科威特', + '科索夫', '科索沃', '立陶宛', '紐西蘭', + '維德角', '義大利', '聖文森', '艾塞亞', + '菲律賓', '萬那杜', '葡萄牙', '蒲隆地', + '蓋亞納', '薩摩亞', '蘇利南', '西班牙', + '貝里斯', '賴索托', '辛巴威', '阿富汗', + '阿根廷', '馬其頓', '馬拉威', '馬爾他', + '黎巴嫩', '亞塞拜然', '亞美尼亞', '保加利亞', + '南斯拉夫', '厄利垂亞', '史瓦濟蘭', '吉爾吉斯', + '吉里巴斯', '哥倫比亞', '坦尚尼亞', '塞內加爾', + '塞内加爾', '塞爾維亞', '多明尼加', '多米尼克', + '奈及利亞', '委內瑞拉', '宏都拉斯', '尼加拉瓜', + '巴基斯坦', '庫克群島', '愛沙尼亞', '拉脫維亞', + '摩爾多瓦', '摩里西斯', '斯洛伐克', '斯里蘭卡', + '格瑞那達', '模里西斯', '波多黎各', '澳大利亞', + '烏茲別克', '玻利維亞', '瓜地馬拉', '白俄羅斯', + '突尼西亞', '納米比亞', '索馬利亞', '索馬尼亞', + '羅馬尼亞', '聖露西亞', '聖馬利諾', '莫三比克', + '莫三鼻克', '葛摩聯盟', '薩爾瓦多', '衣索比亞', + '西薩摩亞', '象牙海岸', '賴比瑞亞', '賽普勒斯', + '馬來西亞', '馬爾地夫', '克羅埃西亞', + '列支敦斯登', '哥斯大黎加', '布吉納法索', + '布吉那法索', '幾內亞比索', '幾內亞比紹', + '斯洛維尼亞', '索羅門群島', '茅利塔尼亞', + '蒙特內哥羅', '赤道幾內亞', '阿爾及利亞', + '阿爾及尼亞', '阿爾巴尼亞', '馬紹爾群島', + '馬達加斯加', '密克羅尼西亞', '沙烏地阿拉伯', + '千里達及托巴哥', + ]; + + protected static $postcode = ['###-##', '###']; + + public function street() + { + return static::randomElement(static::$street); + } + + public static function randomChineseNumber() + { + $digits = [ + '', '一', '二', '三', '四', '五', '六', '七', '八', '九', + ]; + + return $digits[static::randomDigitNotNull()]; + } + + public static function randomNumber2() + { + return static::randomNumber(2) + 1; + } + + public static function randomNumber3() + { + return static::randomNumber(3) + 1; + } + + public static function localLatitude() + { + return static::randomFloat(6, 22, 25); + } + + public static function localLongitude() + { + return static::randomFloat(6, 120, 122); + } + + public function city() + { + $county = static::randomElement(array_keys(static::$city)); + $city = static::randomElement(static::$city[$county]); + + return $county . $city; + } + + public function state() + { + return '臺灣省'; + } + + public static function stateAbbr() + { + return '臺'; + } + + public static function cityPrefix() + { + return ''; + } + + public static function citySuffix() + { + return ''; + } + + public static function secondaryAddress() + { + return (static::randomNumber(2) + 1) . static::randomElement(static::$secondaryAddressSuffix); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/zh_TW/Color.php b/vendor/fakerphp/faker/src/Faker/Provider/zh_TW/Color.php new file mode 100644 index 0000000..19fa6d8 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/zh_TW/Color.php @@ -0,0 +1,66 @@ +generator->parse($format); + } + + public static function companyModifier() + { + return static::randomElement(static::$companyModifier); + } + + public static function companyPrefix() + { + return static::randomElement(static::$companyPrefix); + } + + public function catchPhrase() + { + return static::randomElement(static::$catchPhrase); + } + + public function bs() + { + $result = ''; + + foreach (static::$bsWords as &$word) { + $result .= static::randomElement($word); + } + + return $result; + } + + /** + * return standard VAT / Tax ID / Uniform Serial Number + * + * @example 28263822 + * + * @return int + */ + public function VAT() + { + return static::randomNumber(8, true); + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/zh_TW/DateTime.php b/vendor/fakerphp/faker/src/Faker/Provider/zh_TW/DateTime.php new file mode 100644 index 0000000..102a716 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/zh_TW/DateTime.php @@ -0,0 +1,48 @@ +format('a') === 'am' ? '上午' : '下午'; + } + + public static function dayOfWeek($max = 'now') + { + $map = [ + 'Sunday' => '星期日', + 'Monday' => '星期一', + 'Tuesday' => '星期二', + 'Wednesday' => '星期三', + 'Thursday' => '星期四', + 'Friday' => '星期五', + 'Saturday' => '星期六', + ]; + $week = static::dateTime($max)->format('l'); + + return $map[$week] ?? $week; + } + + public static function monthName($max = 'now') + { + $map = [ + 'January' => '一月', + 'February' => '二月', + 'March' => '三月', + 'April' => '四月', + 'May' => '五月', + 'June' => '六月', + 'July' => '七月', + 'August' => '八月', + 'September' => '九月', + 'October' => '十月', + 'November' => '十一月', + 'December' => '十二月', + ]; + $month = static::dateTime($max)->format('F'); + + return $map[$month] ?? $month; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/zh_TW/Internet.php b/vendor/fakerphp/faker/src/Faker/Provider/zh_TW/Internet.php new file mode 100644 index 0000000..c3fb5ff --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/zh_TW/Internet.php @@ -0,0 +1,28 @@ + 10, + 'B' => 11, + 'C' => 12, + 'D' => 13, + 'E' => 14, + 'F' => 15, + 'G' => 16, + 'H' => 17, + 'I' => 34, + 'J' => 18, + 'K' => 19, + 'M' => 21, + 'N' => 22, + 'O' => 35, + 'P' => 23, + 'Q' => 24, + 'T' => 27, + 'U' => 28, + 'V' => 29, + 'W' => 32, + 'X' => 30, + 'Z' => 33, + ]; + + /** + * @see https://zh.wikipedia.org/wiki/%E4%B8%AD%E8%8F%AF%E6%B0%91%E5%9C%8B%E5%9C%8B%E6%B0%91%E8%BA%AB%E5%88%86%E8%AD%89 + */ + public static $idDigitValidator = [1, 9, 8, 7, 6, 5, 4, 3, 2, 1, 1]; + + protected static $maleNameFormats = [ + '{{lastName}}{{firstNameMale}}', + ]; + + protected static $femaleNameFormats = [ + '{{lastName}}{{firstNameFemale}}', + ]; + + protected static $titleMale = ['先生', '博士', '教授']; + protected static $titleFemale = ['小姐', '太太', '博士', '教授']; + + /** + * @see http://zh.wikipedia.org/wiki/%E7%99%BE%E5%AE%B6%E5%A7%93 + */ + protected static $lastName = [ + '趙', '錢', '孫', '李', '周', '吳', '鄭', '王', '馮', + '陳', '褚', '衛', '蔣', '沈', '韓', '楊', '朱', '秦', + '尤', '許', '何', '呂', '施', '張', '孔', '曹', '嚴', + '華', '金', '魏', '陶', '姜', '戚', '謝', '鄒', '喻', + '柏', '水', '竇', '章', '雲', '蘇', '潘', '葛', + '奚', '范', '彭', '郎', '魯', '韋', '昌', '馬', + '苗', '鳳', '花', '方', '俞', '任', '袁', '柳', + '酆', '鮑', '史', '唐', '費', '廉', '岑', '薛', + '雷', '賀', '倪', '湯', '滕', '殷', '羅', '畢', + '郝', '鄔', '安', '常', '樂', '于', '時', '傅', + '皮', '卞', '齊', '康', '伍', '余', '元', '卜', + '顧', '孟', '平', '黃', '和', '穆', '蕭', '尹', + '姚', '邵', '湛', '汪', '祁', '毛', '禹', '狄', + '米', '貝', '明', '臧', '計', '伏', '成', '戴', + '談', '宋', '茅', '龐', '熊', '紀', '舒', '屈', + '項', '祝', '董', '梁', '杜', '阮', '藍', '閔', + '席', '季', '麻', '強', '賈', '路', '婁', '危', + '江', '童', '顏', '郭', '梅', '盛', '林', '刁', + '鍾', '徐', '丘', '駱', '高', '夏', '蔡', '田', + '樊', '胡', '凌', '霍', '虞', '萬', '支', '柯', + '昝', '管', '盧', '莫', '經', '房', '裘', '繆', + '干', '解', '應', '宗', '丁', '宣', '賁', '鄧', + '郁', '單', '杭', '洪', '包', '諸', '左', '石', + '崔', '吉', '鈕', '龔', '程', '嵇', '邢', '滑', + '裴', '陸', '榮', '翁', '荀', '羊', '於', '惠', + '甄', '麴', '家', '封', '芮', '羿', '儲', '靳', + '汲', '邴', '糜', '松', '井', '段', '富', '巫', + '烏', '焦', '巴', '弓', '牧', '隗', '山', '谷', + '車', '侯', '宓', '蓬', '全', '郗', '班', '仰', + '秋', '仲', '伊', '宮', '甯', '仇', '欒', '暴', + '甘', '鈄', '厲', '戎', '祖', '武', '符', '劉', + '景', '詹', '束', '龍', '葉', '幸', '司', '韶', + '郜', '黎', '薊', '薄', '印', '宿', '白', '懷', + '蒲', '邰', '從', '鄂', '索', '咸', '籍', '賴', + '卓', '藺', '屠', '蒙', '池', '喬', '陰', '鬱', + '胥', '能', '蒼', '雙', '聞', '莘', '黨', '翟', + '譚', '貢', '勞', '逄', '姬', '申', '扶', '堵', + '冉', '宰', '酈', '雍', '郤', '璩', '桑', '桂', + '濮', '牛', '壽', '通', '邊', '扈', '燕', '冀', + '郟', '浦', '尚', '農', '溫', '別', '莊', '晏', + '柴', '瞿', '閻', '充', '慕', '連', '茹', '習', + '宦', '艾', '魚', '容', '向', '古', '易', '慎', + '戈', '廖', '庾', '終', '暨', '居', '衡', '步', + '都', '耿', '滿', '弘', '匡', '國', '文', '寇', + '廣', '祿', '闕', '東', '歐', '殳', '沃', '利', + '蔚', '越', '夔', '隆', '師', '鞏', '厙', '聶', + '晁', '勾', '敖', '融', '冷', '訾', '辛', '闞', + '那', '簡', '饒', '空', '曾', '毋', '沙', '乜', + '養', '鞠', '須', '豐', '巢', '關', '蒯', '相', + '查', '后', '荊', '紅', '游', '竺', '權', '逯', + '蓋', '益', '桓', '公', '万俟', '司馬', '上官', + '歐陽', '夏侯', '諸葛', '聞人', '東方', '赫連', + '皇甫', '尉遲', '公羊', '澹臺', '公冶', '宗政', + '濮陽', '淳于', '單于', '太叔', '申屠', '公孫', + '仲孫', '軒轅', '令狐', '鍾離', '宇文', '長孫', + '慕容', '鮮于', '閭丘', '司徒', '司空', '亓官', + '司寇', '仉', '督', '子車', '顓孫', '端木', '巫馬', + '公西', '漆雕', '樂正', '壤駟', '公良', '拓跋', + '夾谷', '宰父', '穀梁', '晉', '楚', '閆', '法', + '汝', '鄢', '涂', '欽', '段干', '百里', '東郭', + '南門', '呼延', '歸', '海', '羊舌', '微生', '岳', + '帥', '緱', '亢', '況', '後', '有', '琴', '梁丘', + '左丘', '東門', '西門', '商', '牟', '佘', '佴', + '伯', '賞', '南宮', '墨', '哈', '譙', '笪', '年', + '愛', '陽', '佟', '第五', '言', '福', + ]; + + /** + * @see http://technology.chtsai.org/namefreq/ + */ + protected static $characterMale = [ + '佳', '俊', '信', '偉', '傑', '冠', '君', '哲', + '嘉', '威', '宇', '安', '宏', '宗', '宜', '家', + '庭', '廷', '建', '彥', '心', '志', '思', '承', + '文', '柏', '樺', '瑋', '穎', '美', '翰', '華', + '詩', '豪', '賢', '軒', '銘', '霖', + ]; + + protected static $characterFemale = [ + '伶', '佩', '佳', '依', '儀', '冠', '君', '嘉', + '如', '娟', '婉', '婷', '安', '宜', '家', '庭', + '心', '思', '怡', '惠', '慧', '文', '欣', '涵', + '淑', '玲', '珊', '琪', '琬', '瑜', '穎', '筑', + '筱', '美', '芬', '芳', '華', '萍', '萱', '蓉', + '詩', '貞', '郁', '鈺', '雅', '雯', '靜', '馨', + ]; + + public static function randomName($pool, $n) + { + $name = ''; + + for ($i = 0; $i < $n; ++$i) { + $name .= static::randomElement($pool); + } + + return $name; + } + + public static function firstNameMale() + { + return static::randomName(static::$characterMale, self::numberBetween(1, 2)); + } + + public static function firstNameFemale() + { + return static::randomName(static::$characterFemale, self::numberBetween(1, 2)); + } + + public static function suffix() + { + return ''; + } + + /** + * @param string $gender Person::GENDER_MALE || Person::GENDER_FEMALE + * + * @see https://en.wikipedia.org/wiki/National_Identification_Card_(Republic_of_China) + * + * @return string Length 10 alphanumeric characters, begins with 1 latin character (birthplace), + * 1 number (gender) and then 8 numbers (the last one is check digit). + */ + public function personalIdentityNumber($gender = null) + { + $birthPlace = self::randomKey(self::$idBirthplaceCode); + $birthPlaceCode = self::$idBirthplaceCode[$birthPlace]; + + $gender = ($gender != null) ? $gender : self::randomElement([self::GENDER_FEMALE, self::GENDER_MALE]); + $genderCode = ($gender === self::GENDER_MALE) ? 1 : 2; + + $randomNumberCode = self::randomNumber(7, true); + + $codes = str_split($birthPlaceCode . $genderCode . $randomNumberCode); + $total = 0; + + foreach ($codes as $key => $code) { + $total += $code * self::$idDigitValidator[$key]; + } + + $checkSumDigit = 10 - ($total % 10); + + if ($checkSumDigit == 10) { + $checkSumDigit = 0; + } + + return $birthPlace . $genderCode . $randomNumberCode . $checkSumDigit; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/Provider/zh_TW/PhoneNumber.php b/vendor/fakerphp/faker/src/Faker/Provider/zh_TW/PhoneNumber.php new file mode 100644 index 0000000..db9ac32 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/Provider/zh_TW/PhoneNumber.php @@ -0,0 +1,19 @@ + 251: + $temp .= $chars[++$i]; + // no break + case $ord > 247: + $temp .= $chars[++$i]; + // no break + case $ord > 239: + $temp .= $chars[++$i]; + // no break + case $ord > 223: + $temp .= $chars[++$i]; + // no break + case $ord > 191: + $temp .= $chars[++$i]; + } + + $encoding[] = $temp; + } + + return $encoding; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/UniqueGenerator.php b/vendor/fakerphp/faker/src/Faker/UniqueGenerator.php new file mode 100644 index 0000000..fef167b --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/UniqueGenerator.php @@ -0,0 +1,87 @@ + ['0123' => null], + * 'city' => ['London' => null, 'Tokyo' => null], + * ] + * + * @var array> + */ + protected $uniques = []; + + /** + * @param Extension|Generator $generator + * @param int $maxRetries + * @param array> $uniques + */ + public function __construct($generator, $maxRetries = 10000, &$uniques = []) + { + $this->generator = $generator; + $this->maxRetries = $maxRetries; + $this->uniques = &$uniques; + } + + public function ext(string $id) + { + return new self($this->generator->ext($id), $this->maxRetries, $this->uniques); + } + + /** + * Catch and proxy all generator calls but return only unique values + * + * @param string $attribute + * + * @deprecated Use a method instead. + */ + public function __get($attribute) + { + trigger_deprecation('fakerphp/faker', '1.14', 'Accessing property "%s" is deprecated, use "%s()" instead.', $attribute, $attribute); + + return $this->__call($attribute, []); + } + + /** + * Catch and proxy all generator calls with arguments but return only unique values + * + * @param string $name + * @param array $arguments + */ + public function __call($name, $arguments) + { + if (!isset($this->uniques[$name])) { + $this->uniques[$name] = []; + } + $i = 0; + + do { + $res = call_user_func_array([$this->generator, $name], $arguments); + ++$i; + + if ($i > $this->maxRetries) { + throw new \OverflowException(sprintf('Maximum retries of %d reached without finding a unique value', $this->maxRetries)); + } + } while (array_key_exists(serialize($res), $this->uniques[$name])); + $this->uniques[$name][serialize($res)] = null; + + return $res; + } +} diff --git a/vendor/fakerphp/faker/src/Faker/ValidGenerator.php b/vendor/fakerphp/faker/src/Faker/ValidGenerator.php new file mode 100644 index 0000000..bf40945 --- /dev/null +++ b/vendor/fakerphp/faker/src/Faker/ValidGenerator.php @@ -0,0 +1,78 @@ +valid() + * + * @mixin Generator + */ +class ValidGenerator +{ + protected $generator; + protected $validator; + protected $maxRetries; + + /** + * @param Extension|Generator $generator + * @param callable|null $validator + * @param int $maxRetries + */ + public function __construct($generator, $validator = null, $maxRetries = 10000) + { + if (null === $validator) { + $validator = static function () { + return true; + }; + } elseif (!is_callable($validator)) { + throw new \InvalidArgumentException('valid() only accepts callables as first argument'); + } + $this->generator = $generator; + $this->validator = $validator; + $this->maxRetries = $maxRetries; + } + + public function ext(string $id) + { + return new self($this->generator->ext($id), $this->validator, $this->maxRetries); + } + + /** + * Catch and proxy all generator calls but return only valid values + * + * @param string $attribute + * + * @deprecated Use a method instead. + */ + public function __get($attribute) + { + trigger_deprecation('fakerphp/faker', '1.14', 'Accessing property "%s" is deprecated, use "%s()" instead.', $attribute, $attribute); + + return $this->__call($attribute, []); + } + + /** + * Catch and proxy all generator calls with arguments but return only valid values + * + * @param string $name + * @param array $arguments + */ + public function __call($name, $arguments) + { + $i = 0; + + do { + $res = call_user_func_array([$this->generator, $name], $arguments); + ++$i; + + if ($i > $this->maxRetries) { + throw new \OverflowException(sprintf('Maximum retries of %d reached without finding a valid value', $this->maxRetries)); + } + } while (!call_user_func($this->validator, $res)); + + return $res; + } +} diff --git a/vendor/fakerphp/faker/src/autoload.php b/vendor/fakerphp/faker/src/autoload.php new file mode 100644 index 0000000..a4dfa9e --- /dev/null +++ b/vendor/fakerphp/faker/src/autoload.php @@ -0,0 +1,29 @@ +=7.4.0" + }, + "autoload": { + "psr-4": { + "Psr\\Container\\": "src/" + } + }, + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + } +} diff --git a/vendor/psr/container/src/ContainerExceptionInterface.php b/vendor/psr/container/src/ContainerExceptionInterface.php new file mode 100644 index 0000000..0f213f2 --- /dev/null +++ b/vendor/psr/container/src/ContainerExceptionInterface.php @@ -0,0 +1,12 @@ +=8.1" + }, + "autoload": { + "files": [ + "function.php" + ] + }, + "minimum-stability": "dev", + "extra": { + "branch-alias": { + "dev-main": "3.6-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" + } + } +} diff --git a/vendor/symfony/deprecation-contracts/function.php b/vendor/symfony/deprecation-contracts/function.php new file mode 100644 index 0000000..2d56512 --- /dev/null +++ b/vendor/symfony/deprecation-contracts/function.php @@ -0,0 +1,27 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +if (!function_exists('trigger_deprecation')) { + /** + * Triggers a silenced deprecation notice. + * + * @param string $package The name of the Composer package that is triggering the deprecation + * @param string $version The version of the package that introduced the deprecation + * @param string $message The message of the deprecation + * @param mixed ...$args Values to insert in the message using printf() formatting + * + * @author Nicolas Grekas + */ + function trigger_deprecation(string $package, string $version, string $message, mixed ...$args): void + { + @trigger_error(($package || $version ? "Since $package $version: " : '').($args ? vsprintf($message, $args) : $message), \E_USER_DEPRECATED); + } +}