create-berna-stencil 1.0.24 → 1.0.25

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (782) hide show
  1. package/.eleventy.js +1 -0
  2. package/_tools/assistant.js +6 -6
  3. package/_tools/modules/updateOutputPath.js +1 -4
  4. package/_tools/modules/updatePage.js +33 -72
  5. package/_tools/res/templates/template.js +23 -0
  6. package/_tools/res/templates/template.njk +8 -0
  7. package/_tools/res/templates/template.scss +17 -0
  8. package/bin/create.js +1 -1
  9. package/package.json +1 -1
  10. package/src/api/.htaccess +6 -11
  11. package/src/api/config.example.php +4 -6
  12. package/src/api/config.php +5 -20
  13. package/src/api/core/composer.json +2 -1
  14. package/src/api/core/composer.lock +679 -492
  15. package/src/api/{index.php → core/index.php} +53 -24
  16. package/src/api/core/init.php +0 -13
  17. package/src/api/core/vendor/composer/autoload_files.php +1 -0
  18. package/src/api/core/vendor/composer/autoload_psr4.php +2 -0
  19. package/src/api/core/vendor/composer/autoload_static.php +14 -0
  20. package/src/api/core/vendor/composer/installed.json +196 -0
  21. package/src/api/core/vendor/composer/installed.php +29 -2
  22. package/src/api/core/vendor/composer/platform_check.php +2 -2
  23. package/src/api/core/vendor/fakerphp/faker/.editorconfig +18 -0
  24. package/src/api/core/vendor/fakerphp/faker/.gitattributes +16 -0
  25. package/src/api/core/vendor/fakerphp/faker/.github/CONTRIBUTING.md +35 -0
  26. package/src/api/core/vendor/fakerphp/faker/.github/ISSUE_TEMPLATE/bug_report.md +38 -0
  27. package/src/api/core/vendor/fakerphp/faker/.github/PULL_REQUEST_TEMPLATE.md +21 -0
  28. package/src/api/core/vendor/fakerphp/faker/.github/SECURITY.md +17 -0
  29. package/src/api/core/vendor/fakerphp/faker/.github/dependabot.yml +63 -0
  30. package/src/api/core/vendor/fakerphp/faker/.github/stale.yml +14 -0
  31. package/src/api/core/vendor/fakerphp/faker/.github/workflows/bc-check.yaml +24 -0
  32. package/src/api/core/vendor/fakerphp/faker/.github/workflows/branch-alias.yaml +67 -0
  33. package/src/api/core/vendor/fakerphp/faker/.github/workflows/code-coverage.yaml +55 -0
  34. package/src/api/core/vendor/fakerphp/faker/.github/workflows/coding-standards.yaml +77 -0
  35. package/src/api/core/vendor/fakerphp/faker/.github/workflows/rector.yaml +51 -0
  36. package/src/api/core/vendor/fakerphp/faker/.github/workflows/static-analysis.yaml +91 -0
  37. package/src/api/core/vendor/fakerphp/faker/.github/workflows/tests.yaml +58 -0
  38. package/src/api/core/vendor/fakerphp/faker/.php-cs-fixer.dist.php +241 -0
  39. package/src/api/core/vendor/fakerphp/faker/.yamllint.yaml +67 -0
  40. package/src/api/core/vendor/fakerphp/faker/CHANGELOG.md +209 -0
  41. package/src/api/core/vendor/fakerphp/faker/LICENSE +22 -0
  42. package/src/api/core/vendor/fakerphp/faker/Makefile +43 -0
  43. package/src/api/core/vendor/fakerphp/faker/README.md +114 -0
  44. package/src/api/core/vendor/fakerphp/faker/codecov.yml +1 -0
  45. package/src/api/core/vendor/fakerphp/faker/composer.json +56 -0
  46. package/src/api/core/vendor/fakerphp/faker/phpstan-baseline.neon +945 -0
  47. package/src/api/core/vendor/fakerphp/faker/phpstan.neon.dist +10 -0
  48. package/src/api/core/vendor/fakerphp/faker/phpunit.xml.dist +29 -0
  49. package/src/api/core/vendor/fakerphp/faker/psalm.baseline.xml +227 -0
  50. package/src/api/core/vendor/fakerphp/faker/psalm.xml +19 -0
  51. package/src/api/core/vendor/fakerphp/faker/rector-migrate.php +161 -0
  52. package/src/api/core/vendor/fakerphp/faker/roave-bc-check.yaml +51 -0
  53. package/src/api/core/vendor/fakerphp/faker/src/Faker/Calculator/Ean.php +50 -0
  54. package/src/api/core/vendor/fakerphp/faker/src/Faker/Calculator/Iban.php +69 -0
  55. package/src/api/core/vendor/fakerphp/faker/src/Faker/Calculator/Inn.php +42 -0
  56. package/src/api/core/vendor/fakerphp/faker/src/Faker/Calculator/Isbn.php +60 -0
  57. package/src/api/core/vendor/fakerphp/faker/src/Faker/Calculator/Luhn.php +72 -0
  58. package/src/api/core/vendor/fakerphp/faker/src/Faker/Calculator/TCNo.php +43 -0
  59. package/src/api/core/vendor/fakerphp/faker/src/Faker/ChanceGenerator.php +60 -0
  60. package/src/api/core/vendor/fakerphp/faker/src/Faker/Container/Container.php +139 -0
  61. package/src/api/core/vendor/fakerphp/faker/src/Faker/Container/ContainerBuilder.php +68 -0
  62. package/src/api/core/vendor/fakerphp/faker/src/Faker/Container/ContainerException.php +14 -0
  63. package/src/api/core/vendor/fakerphp/faker/src/Faker/Container/ContainerInterface.php +9 -0
  64. package/src/api/core/vendor/fakerphp/faker/src/Faker/Container/NotInContainerException.php +14 -0
  65. package/src/api/core/vendor/fakerphp/faker/src/Faker/Core/Barcode.php +52 -0
  66. package/src/api/core/vendor/fakerphp/faker/src/Faker/Core/Blood.php +42 -0
  67. package/src/api/core/vendor/fakerphp/faker/src/Faker/Core/Color.php +177 -0
  68. package/src/api/core/vendor/fakerphp/faker/src/Faker/Core/Coordinates.php +78 -0
  69. package/src/api/core/vendor/fakerphp/faker/src/Faker/Core/DateTime.php +217 -0
  70. package/src/api/core/vendor/fakerphp/faker/src/Faker/Core/File.php +564 -0
  71. package/src/api/core/vendor/fakerphp/faker/src/Faker/Core/Number.php +83 -0
  72. package/src/api/core/vendor/fakerphp/faker/src/Faker/Core/Uuid.php +65 -0
  73. package/src/api/core/vendor/fakerphp/faker/src/Faker/Core/Version.php +69 -0
  74. package/src/api/core/vendor/fakerphp/faker/src/Faker/DefaultGenerator.php +49 -0
  75. package/src/api/core/vendor/fakerphp/faker/src/Faker/Documentor.php +70 -0
  76. package/src/api/core/vendor/fakerphp/faker/src/Faker/Extension/AddressExtension.php +39 -0
  77. package/src/api/core/vendor/fakerphp/faker/src/Faker/Extension/BarcodeExtension.php +41 -0
  78. package/src/api/core/vendor/fakerphp/faker/src/Faker/Extension/BloodExtension.php +30 -0
  79. package/src/api/core/vendor/fakerphp/faker/src/Faker/Extension/ColorExtension.php +63 -0
  80. package/src/api/core/vendor/fakerphp/faker/src/Faker/Extension/CompanyExtension.php +21 -0
  81. package/src/api/core/vendor/fakerphp/faker/src/Faker/Extension/CountryExtension.php +14 -0
  82. package/src/api/core/vendor/fakerphp/faker/src/Faker/Extension/DateTimeExtension.php +242 -0
  83. package/src/api/core/vendor/fakerphp/faker/src/Faker/Extension/Extension.php +14 -0
  84. package/src/api/core/vendor/fakerphp/faker/src/Faker/Extension/ExtensionNotFound.php +12 -0
  85. package/src/api/core/vendor/fakerphp/faker/src/Faker/Extension/FileExtension.php +28 -0
  86. package/src/api/core/vendor/fakerphp/faker/src/Faker/Extension/GeneratorAwareExtension.php +20 -0
  87. package/src/api/core/vendor/fakerphp/faker/src/Faker/Extension/GeneratorAwareExtensionTrait.php +30 -0
  88. package/src/api/core/vendor/fakerphp/faker/src/Faker/Extension/Helper.php +106 -0
  89. package/src/api/core/vendor/fakerphp/faker/src/Faker/Extension/NumberExtension.php +53 -0
  90. package/src/api/core/vendor/fakerphp/faker/src/Faker/Extension/PersonExtension.php +52 -0
  91. package/src/api/core/vendor/fakerphp/faker/src/Faker/Extension/PhoneNumberExtension.php +19 -0
  92. package/src/api/core/vendor/fakerphp/faker/src/Faker/Extension/UuidExtension.php +16 -0
  93. package/src/api/core/vendor/fakerphp/faker/src/Faker/Extension/VersionExtension.php +21 -0
  94. package/src/api/core/vendor/fakerphp/faker/src/Faker/Factory.php +71 -0
  95. package/src/api/core/vendor/fakerphp/faker/src/Faker/Generator.php +985 -0
  96. package/src/api/core/vendor/fakerphp/faker/src/Faker/Guesser/Name.php +180 -0
  97. package/src/api/core/vendor/fakerphp/faker/src/Faker/ORM/CakePHP/ColumnTypeGuesser.php +79 -0
  98. package/src/api/core/vendor/fakerphp/faker/src/Faker/ORM/CakePHP/EntityPopulator.php +173 -0
  99. package/src/api/core/vendor/fakerphp/faker/src/Faker/ORM/CakePHP/Populator.php +113 -0
  100. package/src/api/core/vendor/fakerphp/faker/src/Faker/ORM/Doctrine/ColumnTypeGuesser.php +91 -0
  101. package/src/api/core/vendor/fakerphp/faker/src/Faker/ORM/Doctrine/EntityPopulator.php +248 -0
  102. package/src/api/core/vendor/fakerphp/faker/src/Faker/ORM/Doctrine/Populator.php +126 -0
  103. package/src/api/core/vendor/fakerphp/faker/src/Faker/ORM/Doctrine/backward-compatibility.php +11 -0
  104. package/src/api/core/vendor/fakerphp/faker/src/Faker/ORM/Mandango/ColumnTypeGuesser.php +57 -0
  105. package/src/api/core/vendor/fakerphp/faker/src/Faker/ORM/Mandango/EntityPopulator.php +123 -0
  106. package/src/api/core/vendor/fakerphp/faker/src/Faker/ORM/Mandango/Populator.php +63 -0
  107. package/src/api/core/vendor/fakerphp/faker/src/Faker/ORM/Propel/ColumnTypeGuesser.php +109 -0
  108. package/src/api/core/vendor/fakerphp/faker/src/Faker/ORM/Propel/EntityPopulator.php +204 -0
  109. package/src/api/core/vendor/fakerphp/faker/src/Faker/ORM/Propel/Populator.php +90 -0
  110. package/src/api/core/vendor/fakerphp/faker/src/Faker/ORM/Propel2/ColumnTypeGuesser.php +112 -0
  111. package/src/api/core/vendor/fakerphp/faker/src/Faker/ORM/Propel2/EntityPopulator.php +207 -0
  112. package/src/api/core/vendor/fakerphp/faker/src/Faker/ORM/Propel2/Populator.php +93 -0
  113. package/src/api/core/vendor/fakerphp/faker/src/Faker/ORM/Spot/ColumnTypeGuesser.php +84 -0
  114. package/src/api/core/vendor/fakerphp/faker/src/Faker/ORM/Spot/EntityPopulator.php +199 -0
  115. package/src/api/core/vendor/fakerphp/faker/src/Faker/ORM/Spot/Populator.php +89 -0
  116. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/Address.php +166 -0
  117. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/Barcode.php +107 -0
  118. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/Base.php +710 -0
  119. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/Biased.php +65 -0
  120. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/Color.php +158 -0
  121. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/Company.php +50 -0
  122. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/DateTime.php +389 -0
  123. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/File.php +610 -0
  124. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/HtmlLorem.php +307 -0
  125. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/Image.php +196 -0
  126. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/Internet.php +407 -0
  127. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/Lorem.php +228 -0
  128. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/Medical.php +34 -0
  129. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/Miscellaneous.php +342 -0
  130. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/Payment.php +312 -0
  131. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/Person.php +147 -0
  132. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/PhoneNumber.php +270 -0
  133. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/Text.php +202 -0
  134. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/UserAgent.php +219 -0
  135. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/Uuid.php +59 -0
  136. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ar_EG/Address.php +217 -0
  137. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ar_EG/Color.php +65 -0
  138. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ar_EG/Company.php +85 -0
  139. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ar_EG/Internet.php +93 -0
  140. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ar_EG/Payment.php +16 -0
  141. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ar_EG/Person.php +107 -0
  142. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ar_EG/Text.php +31 -0
  143. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ar_JO/Address.php +152 -0
  144. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ar_JO/Company.php +66 -0
  145. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ar_JO/Internet.php +55 -0
  146. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ar_JO/Person.php +108 -0
  147. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ar_JO/Text.php +272 -0
  148. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ar_SA/Address.php +146 -0
  149. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ar_SA/Color.php +81 -0
  150. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ar_SA/Company.php +78 -0
  151. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ar_SA/Internet.php +55 -0
  152. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ar_SA/Payment.php +22 -0
  153. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ar_SA/Person.php +121 -0
  154. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ar_SA/Text.php +272 -0
  155. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/at_AT/Payment.php +11 -0
  156. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/bg_BG/Internet.php +9 -0
  157. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/bg_BG/Payment.php +46 -0
  158. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/bg_BG/Person.php +117 -0
  159. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/bg_BG/PhoneNumber.php +20 -0
  160. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/bn_BD/Address.php +310 -0
  161. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/bn_BD/Company.php +28 -0
  162. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/bn_BD/Person.php +36 -0
  163. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/bn_BD/PhoneNumber.php +14 -0
  164. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/bn_BD/Utils.php +14 -0
  165. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/cs_CZ/Address.php +149 -0
  166. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/cs_CZ/Company.php +125 -0
  167. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/cs_CZ/DateTime.php +65 -0
  168. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/cs_CZ/Internet.php +9 -0
  169. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/cs_CZ/Payment.php +22 -0
  170. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/cs_CZ/Person.php +538 -0
  171. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/cs_CZ/PhoneNumber.php +14 -0
  172. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/cs_CZ/Text.php +7186 -0
  173. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/da_DK/Address.php +284 -0
  174. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/da_DK/Company.php +67 -0
  175. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/da_DK/Internet.php +27 -0
  176. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/da_DK/Payment.php +22 -0
  177. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/da_DK/Person.php +195 -0
  178. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/da_DK/PhoneNumber.php +18 -0
  179. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/de_AT/Address.php +143 -0
  180. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/de_AT/Company.php +13 -0
  181. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/de_AT/Internet.php +9 -0
  182. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/de_AT/Payment.php +42 -0
  183. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/de_AT/Person.php +154 -0
  184. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/de_AT/PhoneNumber.php +23 -0
  185. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/de_AT/Text.php +7 -0
  186. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/de_CH/Address.php +197 -0
  187. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/de_CH/Company.php +15 -0
  188. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/de_CH/Internet.php +17 -0
  189. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/de_CH/Payment.php +22 -0
  190. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/de_CH/Person.php +119 -0
  191. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/de_CH/PhoneNumber.php +47 -0
  192. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/de_CH/Text.php +2038 -0
  193. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/de_DE/Address.php +126 -0
  194. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/de_DE/Company.php +24 -0
  195. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/de_DE/Internet.php +26 -0
  196. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/de_DE/Payment.php +60 -0
  197. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/de_DE/Person.php +132 -0
  198. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/de_DE/PhoneNumber.php +127 -0
  199. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/de_DE/Text.php +2038 -0
  200. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/el_CY/Address.php +55 -0
  201. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/el_CY/Company.php +18 -0
  202. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/el_CY/Internet.php +9 -0
  203. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/el_CY/Payment.php +50 -0
  204. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/el_CY/Person.php +100 -0
  205. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/el_CY/PhoneNumber.php +32 -0
  206. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/el_GR/Address.php +61 -0
  207. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/el_GR/Company.php +84 -0
  208. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/el_GR/Payment.php +22 -0
  209. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/el_GR/Person.php +181 -0
  210. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/el_GR/PhoneNumber.php +324 -0
  211. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/el_GR/Text.php +2582 -0
  212. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_AU/Address.php +112 -0
  213. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_AU/Internet.php +9 -0
  214. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_AU/PhoneNumber.php +56 -0
  215. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_CA/Address.php +72 -0
  216. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_CA/PhoneNumber.php +18 -0
  217. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_GB/Address.php +174 -0
  218. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_GB/Company.php +130 -0
  219. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_GB/Internet.php +9 -0
  220. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_GB/Payment.php +22 -0
  221. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_GB/Person.php +113 -0
  222. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_GB/PhoneNumber.php +49 -0
  223. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_HK/Address.php +239 -0
  224. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_HK/Internet.php +14 -0
  225. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_HK/PhoneNumber.php +41 -0
  226. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_IN/Address.php +188 -0
  227. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_IN/Internet.php +9 -0
  228. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_IN/Person.php +125 -0
  229. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_IN/PhoneNumber.php +37 -0
  230. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_NG/Address.php +98 -0
  231. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_NG/Internet.php +8 -0
  232. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_NG/Person.php +90 -0
  233. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_NG/PhoneNumber.php +133 -0
  234. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_NZ/Address.php +88 -0
  235. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_NZ/Internet.php +17 -0
  236. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_NZ/PhoneNumber.php +102 -0
  237. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_PH/Address.php +417 -0
  238. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_PH/PhoneNumber.php +59 -0
  239. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_SG/Address.php +125 -0
  240. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_SG/Person.php +74 -0
  241. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_SG/PhoneNumber.php +105 -0
  242. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_UG/Address.php +101 -0
  243. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_UG/Internet.php +9 -0
  244. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_UG/Person.php +133 -0
  245. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_UG/PhoneNumber.php +17 -0
  246. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_US/Address.php +97 -0
  247. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_US/Company.php +119 -0
  248. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_US/Payment.php +36 -0
  249. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_US/Person.php +133 -0
  250. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_US/PhoneNumber.php +135 -0
  251. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_US/Text.php +3721 -0
  252. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_ZA/Address.php +70 -0
  253. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_ZA/Company.php +26 -0
  254. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_ZA/Internet.php +23 -0
  255. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_ZA/Person.php +182 -0
  256. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/en_ZA/PhoneNumber.php +116 -0
  257. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/es_AR/Address.php +68 -0
  258. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/es_AR/Company.php +68 -0
  259. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/es_AR/Person.php +90 -0
  260. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/es_AR/PhoneNumber.php +42 -0
  261. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/es_ES/Address.php +101 -0
  262. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/es_ES/Color.php +24 -0
  263. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/es_ES/Company.php +82 -0
  264. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/es_ES/Internet.php +9 -0
  265. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/es_ES/Payment.php +42 -0
  266. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/es_ES/Person.php +149 -0
  267. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/es_ES/PhoneNumber.php +47 -0
  268. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/es_ES/Text.php +688 -0
  269. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/es_PE/Address.php +65 -0
  270. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/es_PE/Company.php +88 -0
  271. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/es_PE/Person.php +105 -0
  272. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/es_PE/PhoneNumber.php +17 -0
  273. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/es_VE/Address.php +72 -0
  274. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/es_VE/Company.php +42 -0
  275. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/es_VE/Internet.php +9 -0
  276. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/es_VE/Person.php +176 -0
  277. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/es_VE/PhoneNumber.php +29 -0
  278. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/et_EE/Person.php +84 -0
  279. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fa_IR/Address.php +100 -0
  280. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fa_IR/Company.php +60 -0
  281. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fa_IR/Internet.php +102 -0
  282. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fa_IR/Person.php +210 -0
  283. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fa_IR/PhoneNumber.php +76 -0
  284. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fa_IR/Text.php +551 -0
  285. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fi_FI/Address.php +85 -0
  286. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fi_FI/Company.php +66 -0
  287. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fi_FI/Internet.php +9 -0
  288. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fi_FI/Payment.php +22 -0
  289. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fi_FI/Person.php +154 -0
  290. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fi_FI/PhoneNumber.php +101 -0
  291. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fr_BE/Address.php +72 -0
  292. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fr_BE/Color.php +7 -0
  293. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fr_BE/Company.php +13 -0
  294. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fr_BE/Internet.php +9 -0
  295. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fr_BE/Payment.php +42 -0
  296. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fr_BE/Person.php +49 -0
  297. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fr_BE/PhoneNumber.php +20 -0
  298. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fr_CA/Address.php +125 -0
  299. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fr_CA/Color.php +7 -0
  300. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fr_CA/Company.php +7 -0
  301. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fr_CA/Person.php +82 -0
  302. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fr_CA/Text.php +2446 -0
  303. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fr_CH/Address.php +150 -0
  304. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fr_CH/Color.php +7 -0
  305. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fr_CH/Company.php +15 -0
  306. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fr_CH/Internet.php +9 -0
  307. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fr_CH/Payment.php +22 -0
  308. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fr_CH/Person.php +114 -0
  309. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fr_CH/PhoneNumber.php +43 -0
  310. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fr_CH/Text.php +7 -0
  311. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fr_FR/Address.php +151 -0
  312. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fr_FR/Color.php +40 -0
  313. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fr_FR/Company.php +481 -0
  314. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fr_FR/Internet.php +9 -0
  315. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fr_FR/Payment.php +49 -0
  316. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fr_FR/Person.php +130 -0
  317. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fr_FR/PhoneNumber.php +168 -0
  318. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/fr_FR/Text.php +15532 -0
  319. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/he_IL/Address.php +122 -0
  320. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/he_IL/Company.php +14 -0
  321. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/he_IL/Payment.php +22 -0
  322. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/he_IL/Person.php +132 -0
  323. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/he_IL/PhoneNumber.php +14 -0
  324. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/hr_HR/Address.php +68 -0
  325. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/hr_HR/Company.php +25 -0
  326. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/hr_HR/Payment.php +22 -0
  327. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/hr_HR/Person.php +27 -0
  328. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/hr_HR/PhoneNumber.php +14 -0
  329. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/hu_HU/Address.php +148 -0
  330. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/hu_HU/Company.php +13 -0
  331. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/hu_HU/Payment.php +22 -0
  332. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/hu_HU/Person.php +101 -0
  333. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/hu_HU/PhoneNumber.php +14 -0
  334. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/hu_HU/Text.php +3407 -0
  335. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/hy_AM/Address.php +132 -0
  336. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/hy_AM/Color.php +12 -0
  337. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/hy_AM/Company.php +56 -0
  338. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/hy_AM/Internet.php +9 -0
  339. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/hy_AM/Person.php +110 -0
  340. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/hy_AM/PhoneNumber.php +36 -0
  341. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/id_ID/Address.php +319 -0
  342. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/id_ID/Color.php +40 -0
  343. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/id_ID/Company.php +64 -0
  344. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/id_ID/Internet.php +25 -0
  345. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/id_ID/Person.php +343 -0
  346. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/id_ID/PhoneNumber.php +55 -0
  347. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/is_IS/Address.php +175 -0
  348. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/is_IS/Company.php +50 -0
  349. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/is_IS/Internet.php +20 -0
  350. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/is_IS/Payment.php +22 -0
  351. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/is_IS/Person.php +142 -0
  352. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/is_IS/PhoneNumber.php +17 -0
  353. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/it_CH/Address.php +149 -0
  354. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/it_CH/Company.php +15 -0
  355. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/it_CH/Internet.php +9 -0
  356. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/it_CH/Payment.php +22 -0
  357. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/it_CH/Person.php +102 -0
  358. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/it_CH/PhoneNumber.php +43 -0
  359. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/it_CH/Text.php +7 -0
  360. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/it_IT/Address.php +97 -0
  361. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/it_IT/Company.php +95 -0
  362. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/it_IT/Internet.php +9 -0
  363. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/it_IT/Payment.php +22 -0
  364. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/it_IT/Person.php +113 -0
  365. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/it_IT/PhoneNumber.php +21 -0
  366. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/it_IT/Text.php +2079 -0
  367. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ja_JP/Address.php +137 -0
  368. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ja_JP/Company.php +17 -0
  369. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ja_JP/Internet.php +93 -0
  370. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ja_JP/Person.php +147 -0
  371. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ja_JP/PhoneNumber.php +19 -0
  372. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ja_JP/Text.php +640 -0
  373. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ka_GE/Address.php +139 -0
  374. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ka_GE/Color.php +16 -0
  375. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ka_GE/Company.php +53 -0
  376. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ka_GE/DateTime.php +43 -0
  377. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ka_GE/Internet.php +15 -0
  378. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ka_GE/Payment.php +55 -0
  379. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ka_GE/Person.php +63 -0
  380. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ka_GE/PhoneNumber.php +14 -0
  381. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ka_GE/Text.php +1000 -0
  382. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/kk_KZ/Address.php +105 -0
  383. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/kk_KZ/Color.php +12 -0
  384. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/kk_KZ/Company.php +72 -0
  385. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/kk_KZ/Internet.php +9 -0
  386. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/kk_KZ/Payment.php +35 -0
  387. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/kk_KZ/Person.php +265 -0
  388. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/kk_KZ/PhoneNumber.php +16 -0
  389. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/kk_KZ/Text.php +492 -0
  390. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ko_KR/Address.php +96 -0
  391. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ko_KR/Company.php +31 -0
  392. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ko_KR/Internet.php +86 -0
  393. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ko_KR/Person.php +54 -0
  394. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ko_KR/PhoneNumber.php +40 -0
  395. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ko_KR/Text.php +1725 -0
  396. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/lt_LT/Address.php +209 -0
  397. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/lt_LT/Company.php +15 -0
  398. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/lt_LT/Internet.php +18 -0
  399. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/lt_LT/Payment.php +22 -0
  400. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/lt_LT/Person.php +390 -0
  401. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/lt_LT/PhoneNumber.php +17 -0
  402. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/lv_LV/Address.php +117 -0
  403. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/lv_LV/Color.php +19 -0
  404. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/lv_LV/Internet.php +9 -0
  405. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/lv_LV/Payment.php +22 -0
  406. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/lv_LV/Person.php +173 -0
  407. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/lv_LV/PhoneNumber.php +15 -0
  408. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/me_ME/Address.php +119 -0
  409. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/me_ME/Company.php +49 -0
  410. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/me_ME/Payment.php +22 -0
  411. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/me_ME/Person.php +102 -0
  412. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/me_ME/PhoneNumber.php +15 -0
  413. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/mn_MN/Person.php +102 -0
  414. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/mn_MN/PhoneNumber.php +13 -0
  415. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ms_MY/Address.php +710 -0
  416. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ms_MY/Company.php +105 -0
  417. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ms_MY/Miscellaneous.php +169 -0
  418. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ms_MY/Payment.php +244 -0
  419. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ms_MY/Person.php +812 -0
  420. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ms_MY/PhoneNumber.php +217 -0
  421. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/nb_NO/Address.php +197 -0
  422. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/nb_NO/Company.php +57 -0
  423. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/nb_NO/Payment.php +22 -0
  424. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/nb_NO/Person.php +335 -0
  425. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/nb_NO/PhoneNumber.php +41 -0
  426. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ne_NP/Address.php +131 -0
  427. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ne_NP/Internet.php +32 -0
  428. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ne_NP/Payment.php +316 -0
  429. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ne_NP/Person.php +121 -0
  430. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ne_NP/PhoneNumber.php +19 -0
  431. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/nl_BE/Address.php +124 -0
  432. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/nl_BE/Company.php +13 -0
  433. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/nl_BE/Internet.php +9 -0
  434. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/nl_BE/Payment.php +49 -0
  435. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/nl_BE/Person.php +108 -0
  436. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/nl_BE/PhoneNumber.php +20 -0
  437. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/nl_BE/Text.php +25348 -0
  438. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/nl_NL/Address.php +153 -0
  439. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/nl_NL/Color.php +36 -0
  440. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/nl_NL/Company.php +122 -0
  441. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/nl_NL/Internet.php +9 -0
  442. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/nl_NL/Payment.php +22 -0
  443. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/nl_NL/Person.php +353 -0
  444. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/nl_NL/PhoneNumber.php +39 -0
  445. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/nl_NL/Text.php +3933 -0
  446. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/pl_PL/Address.php +209 -0
  447. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/pl_PL/Color.php +40 -0
  448. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/pl_PL/Company.php +90 -0
  449. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/pl_PL/Internet.php +9 -0
  450. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/pl_PL/LicensePlate.php +545 -0
  451. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/pl_PL/Payment.php +120 -0
  452. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/pl_PL/Person.php +243 -0
  453. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/pl_PL/PhoneNumber.php +18 -0
  454. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/pl_PL/Text.php +2867 -0
  455. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/pt_BR/Address.php +154 -0
  456. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/pt_BR/Company.php +36 -0
  457. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/pt_BR/Internet.php +9 -0
  458. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/pt_BR/Payment.php +148 -0
  459. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/pt_BR/Person.php +159 -0
  460. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/pt_BR/PhoneNumber.php +150 -0
  461. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/pt_BR/Text.php +3427 -0
  462. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/pt_BR/check_digit.php +39 -0
  463. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/pt_PT/Address.php +130 -0
  464. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/pt_PT/Company.php +16 -0
  465. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/pt_PT/Internet.php +9 -0
  466. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/pt_PT/Payment.php +22 -0
  467. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/pt_PT/Person.php +147 -0
  468. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/pt_PT/PhoneNumber.php +50 -0
  469. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ro_MD/Address.php +125 -0
  470. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ro_MD/Payment.php +22 -0
  471. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ro_MD/Person.php +91 -0
  472. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ro_MD/PhoneNumber.php +33 -0
  473. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ro_MD/Text.php +2465 -0
  474. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ro_RO/Address.php +153 -0
  475. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ro_RO/Payment.php +22 -0
  476. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ro_RO/Person.php +251 -0
  477. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ro_RO/PhoneNumber.php +62 -0
  478. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ro_RO/Text.php +155 -0
  479. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ru_RU/Address.php +139 -0
  480. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ru_RU/Color.php +23 -0
  481. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ru_RU/Company.php +178 -0
  482. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ru_RU/Internet.php +9 -0
  483. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ru_RU/Payment.php +812 -0
  484. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ru_RU/Person.php +188 -0
  485. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ru_RU/PhoneNumber.php +14 -0
  486. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/ru_RU/Text.php +4551 -0
  487. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/sk_SK/Address.php +343 -0
  488. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/sk_SK/Company.php +66 -0
  489. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/sk_SK/Internet.php +9 -0
  490. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/sk_SK/Payment.php +22 -0
  491. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/sk_SK/Person.php +171 -0
  492. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/sk_SK/PhoneNumber.php +15 -0
  493. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/sl_SI/Address.php +106 -0
  494. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/sl_SI/Company.php +14 -0
  495. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/sl_SI/Internet.php +10 -0
  496. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/sl_SI/Payment.php +22 -0
  497. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/sl_SI/Person.php +149 -0
  498. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/sl_SI/PhoneNumber.php +18 -0
  499. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/sr_Cyrl_RS/Address.php +58 -0
  500. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/sr_Cyrl_RS/Payment.php +22 -0
  501. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/sr_Cyrl_RS/Person.php +242 -0
  502. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/sr_Latn_RS/Address.php +58 -0
  503. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/sr_Latn_RS/Payment.php +22 -0
  504. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/sr_Latn_RS/Person.php +213 -0
  505. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/sr_RS/Address.php +58 -0
  506. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/sr_RS/Payment.php +22 -0
  507. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/sr_RS/Person.php +143 -0
  508. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/sv_SE/Address.php +151 -0
  509. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/sv_SE/Company.php +26 -0
  510. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/sv_SE/Municipality.php +27 -0
  511. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/sv_SE/Payment.php +22 -0
  512. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/sv_SE/Person.php +170 -0
  513. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/sv_SE/PhoneNumber.php +64 -0
  514. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/th_TH/Address.php +141 -0
  515. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/th_TH/Color.php +16 -0
  516. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/th_TH/Company.php +32 -0
  517. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/th_TH/Internet.php +8 -0
  518. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/th_TH/Payment.php +44 -0
  519. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/th_TH/Person.php +87 -0
  520. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/th_TH/PhoneNumber.php +39 -0
  521. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/tr_TR/Address.php +94 -0
  522. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/tr_TR/Color.php +58 -0
  523. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/tr_TR/Company.php +100 -0
  524. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/tr_TR/DateTime.php +48 -0
  525. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/tr_TR/Internet.php +9 -0
  526. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/tr_TR/Payment.php +22 -0
  527. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/tr_TR/Person.php +159 -0
  528. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/tr_TR/PhoneNumber.php +186 -0
  529. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/uk_UA/Address.php +364 -0
  530. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/uk_UA/Color.php +23 -0
  531. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/uk_UA/Company.php +74 -0
  532. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/uk_UA/Internet.php +9 -0
  533. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/uk_UA/Payment.php +41 -0
  534. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/uk_UA/Person.php +101 -0
  535. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/uk_UA/PhoneNumber.php +72 -0
  536. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/uk_UA/Text.php +4512 -0
  537. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/vi_VN/Address.php +170 -0
  538. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/vi_VN/Color.php +36 -0
  539. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/vi_VN/Internet.php +8 -0
  540. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/vi_VN/Person.php +186 -0
  541. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/vi_VN/PhoneNumber.php +61 -0
  542. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/zh_CN/Address.php +148 -0
  543. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/zh_CN/Color.php +66 -0
  544. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/zh_CN/Company.php +235 -0
  545. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/zh_CN/DateTime.php +48 -0
  546. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/zh_CN/Internet.php +24 -0
  547. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/zh_CN/Payment.php +43 -0
  548. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/zh_CN/Person.php +83 -0
  549. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/zh_CN/PhoneNumber.php +23 -0
  550. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/zh_TW/Address.php +421 -0
  551. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/zh_TW/Color.php +66 -0
  552. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/zh_TW/Company.php +268 -0
  553. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/zh_TW/DateTime.php +48 -0
  554. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/zh_TW/Internet.php +28 -0
  555. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/zh_TW/Payment.php +21 -0
  556. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/zh_TW/Person.php +201 -0
  557. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/zh_TW/PhoneNumber.php +19 -0
  558. package/src/api/core/vendor/fakerphp/faker/src/Faker/Provider/zh_TW/Text.php +900 -0
  559. package/src/api/core/vendor/fakerphp/faker/src/Faker/UniqueGenerator.php +87 -0
  560. package/src/api/core/vendor/fakerphp/faker/src/Faker/ValidGenerator.php +78 -0
  561. package/src/api/core/vendor/fakerphp/faker/src/autoload.php +29 -0
  562. package/src/api/core/vendor/fakerphp/faker/test/Faker/Calculator/EanTest.php +82 -0
  563. package/src/api/core/vendor/fakerphp/faker/test/Faker/Calculator/IbanTest.php +305 -0
  564. package/src/api/core/vendor/fakerphp/faker/test/Faker/Calculator/IsbnTest.php +57 -0
  565. package/src/api/core/vendor/fakerphp/faker/test/Faker/Calculator/LuhnTest.php +69 -0
  566. package/src/api/core/vendor/fakerphp/faker/test/Faker/Core/BarcodeTest.php +40 -0
  567. package/src/api/core/vendor/fakerphp/faker/test/Faker/Core/BloodTest.php +73 -0
  568. package/src/api/core/vendor/fakerphp/faker/test/Faker/Core/ColorTest.php +77 -0
  569. package/src/api/core/vendor/fakerphp/faker/test/Faker/Core/DateTimeTest.php +279 -0
  570. package/src/api/core/vendor/fakerphp/faker/test/Faker/Core/NumberTest.php +99 -0
  571. package/src/api/core/vendor/fakerphp/faker/test/Faker/Core/UuidTest.php +39 -0
  572. package/src/api/core/vendor/fakerphp/faker/test/Faker/Core/VersionTest.php +21 -0
  573. package/src/api/core/vendor/fakerphp/faker/test/Faker/DefaultGeneratorTest.php +36 -0
  574. package/src/api/core/vendor/fakerphp/faker/test/Faker/Extension/ContainerBuilderTest.php +149 -0
  575. package/src/api/core/vendor/fakerphp/faker/test/Faker/Extension/ContainerTest.php +226 -0
  576. package/src/api/core/vendor/fakerphp/faker/test/Faker/Extension/GeneratorAwareExtensionTest.php +33 -0
  577. package/src/api/core/vendor/fakerphp/faker/test/Faker/Extension/HelperTest.php +84 -0
  578. package/src/api/core/vendor/fakerphp/faker/test/Faker/GeneratorTest.php +331 -0
  579. package/src/api/core/vendor/fakerphp/faker/test/Faker/ORM/Doctrine/ColumnTypeGuesserTest.php +25 -0
  580. package/src/api/core/vendor/fakerphp/faker/test/Faker/ORM/Doctrine/EntityPopulatorTest.php +26 -0
  581. package/src/api/core/vendor/fakerphp/faker/test/Faker/ORM/Doctrine/PopulatorTest.php +23 -0
  582. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/AddressTest.php +45 -0
  583. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/BarcodeTest.php +47 -0
  584. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/BaseTest.php +652 -0
  585. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/BiasedTest.php +82 -0
  586. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/ColorTest.php +68 -0
  587. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/CompanyTest.php +27 -0
  588. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/DateTimeTest.php +295 -0
  589. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/HtmlLoremTest.php +32 -0
  590. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/ImageTest.php +192 -0
  591. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/InternetTest.php +141 -0
  592. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/LocalizationTest.php +22 -0
  593. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/LoremTest.php +112 -0
  594. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/MedicalTest.php +32 -0
  595. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/MiscellaneousTest.php +62 -0
  596. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/PaymentTest.php +200 -0
  597. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/PersonTest.php +86 -0
  598. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/PhoneNumberTest.php +33 -0
  599. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/ProviderOverrideTest.php +137 -0
  600. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/TextTest.php +111 -0
  601. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/UserAgentTest.php +59 -0
  602. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/UuidTest.php +36 -0
  603. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/ar_EG/CompanyTest.php +32 -0
  604. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/ar_EG/InternetTest.php +24 -0
  605. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/ar_EG/PersonTest.php +23 -0
  606. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/ar_EG/TextTest.php +22 -0
  607. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/ar_JO/InternetTest.php +29 -0
  608. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/ar_SA/CompanyTest.php +25 -0
  609. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/ar_SA/InternetTest.php +23 -0
  610. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/ar_SA/PersonTest.php +39 -0
  611. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/bg_BG/PaymentTest.php +25 -0
  612. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/bn_BD/PersonTest.php +29 -0
  613. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/cs_CZ/PersonTest.php +58 -0
  614. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/da_DK/InternetTest.php +29 -0
  615. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/de_AT/AddressTest.php +27 -0
  616. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/de_AT/InternetTest.php +29 -0
  617. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/de_AT/PaymentTest.php +32 -0
  618. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/de_AT/PersonTest.php +64 -0
  619. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/de_AT/PhoneNumberTest.php +31 -0
  620. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/de_CH/AddressTest.php +54 -0
  621. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/de_CH/InternetTest.php +29 -0
  622. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/de_CH/PersonTest.php +32 -0
  623. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/de_CH/PhoneNumberTest.php +35 -0
  624. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/de_DE/InternetTest.php +29 -0
  625. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/de_DE/PhoneNumberTest.php +48 -0
  626. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/el_GR/PhoneNumberTest.php +77 -0
  627. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/el_GR/TextTest.php +60 -0
  628. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/en_AU/AddressTest.php +40 -0
  629. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/en_CA/AddressTest.php +60 -0
  630. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/en_GB/AddressTest.php +24 -0
  631. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/en_GB/CompanyTest.php +73 -0
  632. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/en_GB/PersonTest.php +29 -0
  633. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/en_GB/PhoneNumberTest.php +25 -0
  634. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/en_IN/AddressTest.php +48 -0
  635. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/en_NG/AddressTest.php +46 -0
  636. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/en_NG/InternetTest.php +28 -0
  637. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/en_NG/PersonTest.php +25 -0
  638. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/en_NG/PhoneNumberTest.php +26 -0
  639. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/en_NZ/PhoneNumberTest.php +32 -0
  640. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/en_PH/AddressTest.php +44 -0
  641. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/en_SG/AddressTest.php +27 -0
  642. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/en_SG/PersonTest.php +79 -0
  643. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/en_SG/PhoneNumberTest.php +71 -0
  644. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/en_UG/AddressTest.php +38 -0
  645. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/en_US/CompanyTest.php +28 -0
  646. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/en_US/PaymentTest.php +79 -0
  647. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/en_US/PersonTest.php +42 -0
  648. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/en_US/PhoneNumberTest.php +87 -0
  649. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/en_ZA/CompanyTest.php +25 -0
  650. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/en_ZA/InternetTest.php +29 -0
  651. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/en_ZA/PersonTest.php +68 -0
  652. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/en_ZA/PhoneNumberTest.php +67 -0
  653. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/es_ES/PaymentTest.php +58 -0
  654. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/es_ES/PersonTest.php +44 -0
  655. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/es_ES/PhoneNumberTest.php +27 -0
  656. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/es_ES/TextTest.php +22 -0
  657. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/es_PE/CompanyTest.php +39 -0
  658. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/es_PE/PersonTest.php +23 -0
  659. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/es_VE/CompanyTest.php +30 -0
  660. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/es_VE/PersonTest.php +28 -0
  661. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/fa_IR/PersonTest.php +48 -0
  662. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/fi_FI/InternetTest.php +29 -0
  663. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/fi_FI/PersonTest.php +85 -0
  664. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/fr_BE/PaymentTest.php +25 -0
  665. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/fr_CH/AddressTest.php +54 -0
  666. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/fr_CH/InternetTest.php +29 -0
  667. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/fr_CH/PersonTest.php +25 -0
  668. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/fr_CH/PhoneNumberTest.php +27 -0
  669. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/fr_FR/AddressTest.php +43 -0
  670. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/fr_FR/ColorTest.php +35 -0
  671. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/fr_FR/CompanyTest.php +76 -0
  672. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/fr_FR/PaymentTest.php +49 -0
  673. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/fr_FR/PersonTest.php +35 -0
  674. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/fr_FR/PhoneNumberTest.php +73 -0
  675. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/fr_FR/TextTest.php +60 -0
  676. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/hu_HU/PersonTest.php +26 -0
  677. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/id_ID/PersonTest.php +89 -0
  678. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/it_CH/AddressTest.php +54 -0
  679. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/it_CH/InternetTest.php +29 -0
  680. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/it_CH/PersonTest.php +25 -0
  681. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/it_CH/PhoneNumberTest.php +27 -0
  682. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/it_IT/CompanyTest.php +23 -0
  683. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/it_IT/PersonTest.php +23 -0
  684. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/ja_JP/InternetTest.php +33 -0
  685. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/ja_JP/PersonTest.php +57 -0
  686. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/ja_JP/PhoneNumberTest.php +26 -0
  687. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/ka_GE/TextTest.php +60 -0
  688. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/kk_KZ/CompanyTest.php +29 -0
  689. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/kk_KZ/PersonTest.php +56 -0
  690. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/kk_KZ/TextTest.php +60 -0
  691. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/ko_KR/TextTest.php +60 -0
  692. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/lt_LT/AddressTest.php +22 -0
  693. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/lv_LV/AddressTest.php +25 -0
  694. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/lv_LV/PersonTest.php +37 -0
  695. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/mn_MN/PersonTest.php +27 -0
  696. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/ms_MY/PersonTest.php +45 -0
  697. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/nb_NO/PhoneNumberTest.php +47 -0
  698. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/ne_NP/PaymentTest.php +94 -0
  699. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/nl_BE/PaymentTest.php +46 -0
  700. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/nl_BE/PersonTest.php +48 -0
  701. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/nl_NL/CompanyTest.php +33 -0
  702. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/nl_NL/PersonTest.php +31 -0
  703. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/pl_PL/AddressTest.php +25 -0
  704. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/pl_PL/ColorTest.php +35 -0
  705. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/pl_PL/LicensePlateTest.php +275 -0
  706. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/pl_PL/PersonTest.php +102 -0
  707. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/pt_BR/CompanyTest.php +25 -0
  708. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/pt_BR/PersonTest.php +33 -0
  709. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/pt_BR/PhoneNumberTest.php +51 -0
  710. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/pt_BR/TextTest.php +60 -0
  711. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/pt_PT/AddressTest.php +34 -0
  712. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/pt_PT/PersonTest.php +50 -0
  713. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/pt_PT/PhoneNumberTest.php +27 -0
  714. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/ro_RO/PersonTest.php +234 -0
  715. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/ro_RO/PhoneNumberTest.php +32 -0
  716. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/ru_RU/CompanyTest.php +83 -0
  717. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/ru_RU/PersonTest.php +172 -0
  718. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/ru_RU/TextTest.php +60 -0
  719. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/sv_SE/MunicipalityTest.php +22 -0
  720. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/sv_SE/PersonTest.php +78 -0
  721. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/sv_SE/PhoneNumberTest.php +39 -0
  722. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/tr_TR/CompanyTest.php +23 -0
  723. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/tr_TR/PaymentTest.php +23 -0
  724. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/tr_TR/PersonTest.php +74 -0
  725. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/tr_TR/PhoneNumberTest.php +36 -0
  726. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/uk_UA/AddressTest.php +75 -0
  727. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/uk_UA/PersonTest.php +57 -0
  728. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/uk_UA/PhoneNumberTest.php +39 -0
  729. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/zh_TW/CompanyTest.php +22 -0
  730. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/zh_TW/PersonTest.php +41 -0
  731. package/src/api/core/vendor/fakerphp/faker/test/Faker/Provider/zh_TW/TextTest.php +79 -0
  732. package/src/api/core/vendor/fakerphp/faker/test/Faker/TestCase.php +54 -0
  733. package/src/api/core/vendor/fakerphp/faker/test/Faker/UniqueGeneratorTest.php +29 -0
  734. package/src/api/core/vendor/fakerphp/faker/test/Faker/ValidGeneratorTest.php +19 -0
  735. package/src/api/core/vendor/fakerphp/faker/test/Fixture/Container/UnconstructableClass.php +15 -0
  736. package/src/api/core/vendor/fakerphp/faker/test/Fixture/Enum/BackedEnum.php +12 -0
  737. package/src/api/core/vendor/fakerphp/faker/test/Fixture/Provider/BarProvider.php +11 -0
  738. package/src/api/core/vendor/fakerphp/faker/test/Fixture/Provider/FooProvider.php +16 -0
  739. package/src/api/core/vendor/fakerphp/faker/test/documentor.php +16 -0
  740. package/src/api/core/vendor/fakerphp/faker/test/test.php +38 -0
  741. package/src/api/core/vendor/fakerphp/faker/vendor-bin/php-cs-fixer/composer.json +13 -0
  742. package/src/api/core/vendor/fakerphp/faker/vendor-bin/php-cs-fixer/composer.lock +1941 -0
  743. package/src/api/core/vendor/fakerphp/faker/vendor-bin/phpstan/composer.json +18 -0
  744. package/src/api/core/vendor/fakerphp/faker/vendor-bin/phpstan/composer.lock +178 -0
  745. package/src/api/core/vendor/fakerphp/faker/vendor-bin/psalm/composer.json +16 -0
  746. package/src/api/core/vendor/fakerphp/faker/vendor-bin/psalm/composer.lock +2262 -0
  747. package/src/api/core/vendor/fakerphp/faker/vendor-bin/rector/composer.json +13 -0
  748. package/src/api/core/vendor/fakerphp/faker/vendor-bin/rector/composer.lock +142 -0
  749. package/src/api/core/vendor/psr/container/LICENSE +21 -0
  750. package/src/api/core/vendor/psr/container/README.md +13 -0
  751. package/src/api/core/vendor/psr/container/composer.json +27 -0
  752. package/src/api/core/vendor/psr/container/src/ContainerExceptionInterface.php +12 -0
  753. package/src/api/core/vendor/psr/container/src/ContainerInterface.php +36 -0
  754. package/src/api/core/vendor/psr/container/src/NotFoundExceptionInterface.php +10 -0
  755. package/src/api/core/vendor/symfony/deprecation-contracts/.gitattributes +1 -0
  756. package/src/api/core/vendor/symfony/deprecation-contracts/.github/PULL_REQUEST_TEMPLATE.md +8 -0
  757. package/src/api/core/vendor/symfony/deprecation-contracts/.github/workflows/close-pull-request.yml +20 -0
  758. package/src/api/core/vendor/symfony/deprecation-contracts/CHANGELOG.md +5 -0
  759. package/src/api/core/vendor/symfony/deprecation-contracts/LICENSE +19 -0
  760. package/src/api/core/vendor/symfony/deprecation-contracts/README.md +26 -0
  761. package/src/api/core/vendor/symfony/deprecation-contracts/composer.json +35 -0
  762. package/src/api/core/vendor/symfony/deprecation-contracts/function.php +27 -0
  763. package/src/api/database/Database.php +24 -0
  764. package/src/api/database/migrations/create_example_db.sql +1 -0
  765. package/src/api/database/migrations/create_users_table.sql +9 -0
  766. package/src/api/database/models/User.php +61 -0
  767. package/src/api/database/seeds/users.php +0 -0
  768. package/src/api/database/services/UserService.php +0 -0
  769. package/src/api/endpoints/protected/auth-system.php +63 -0
  770. package/src/api/endpoints/protected/example-protected.php +17 -0
  771. package/src/api/endpoints/public/auth/login.php +34 -0
  772. package/src/api/endpoints/public/auth/register.php +39 -0
  773. package/src/api/endpoints/public/example-public.php +17 -0
  774. package/src/api/web.config +6 -24
  775. package/src/components/exampleComponent.njk +5 -2
  776. package/src/components/layouts/base.njk +26 -1
  777. package/src/data/site.json +53 -53
  778. package/src/js/modules/langSwitcher.js +1 -1
  779. package/src/web.config +30 -33
  780. package/_tools/res/templates.json +0 -56
  781. package/src/api/endpoints/protected/example-protected-endpoint.php +0 -28
  782. package/src/api/endpoints/public/example-public-endpoint.php +0 -28
@@ -0,0 +1,812 @@
1
+ <?php
2
+
3
+ namespace Faker\Provider\ms_MY;
4
+
5
+ use Faker\Provider\DateTime;
6
+
7
+ class Person extends \Faker\Provider\Person
8
+ {
9
+ protected static $firstNameFormat = [
10
+ '{{firstNameMaleMalay}}',
11
+ '{{firstNameFemaleMalay}}',
12
+ '{{firstNameMaleChinese}}',
13
+ '{{firstNameFemaleChinese}}',
14
+ '{{firstNameMaleIndian}}',
15
+ '{{firstNameFemaleIndian}}',
16
+ '{{firstNameMaleChristian}}',
17
+ '{{firstNameFemaleChristian}}',
18
+ ];
19
+
20
+ /**
21
+ * @see https://en.wikipedia.org/wiki/Malaysian_names
22
+ */
23
+ protected static $maleNameFormats = [
24
+ //Malay
25
+ '{{muhammadName}}{{haji}}{{titleMaleMalay}}{{firstNameMaleMalay}} {{lastNameMalay}} bin {{titleMaleMalay}}{{firstNameMaleMalay}} {{lastNameMalay}}',
26
+ '{{muhammadName}}{{haji}}{{titleMaleMalay}}{{firstNameMaleMalay}} {{lastNameMalay}} bin {{titleMaleMalay}}{{firstNameMaleMalay}}',
27
+ '{{muhammadName}}{{haji}}{{titleMaleMalay}}{{firstNameMaleMalay}} {{lastNameMalay}} bin {{titleMaleMalay}}{{lastNameMalay}}',
28
+ '{{muhammadName}}{{haji}}{{titleMaleMalay}}{{firstNameMaleMalay}} {{lastNameMalay}}',
29
+ '{{muhammadName}}{{haji}}{{titleMaleMalay}}{{firstNameMaleMalay}} bin {{titleMaleMalay}}{{firstNameMaleMalay}} {{lastNameMalay}}',
30
+ '{{muhammadName}}{{haji}}{{titleMaleMalay}}{{firstNameMaleMalay}} bin {{titleMaleMalay}}{{firstNameMaleMalay}}',
31
+ '{{muhammadName}}{{haji}}{{titleMaleMalay}}{{firstNameMaleMalay}} bin {{titleMaleMalay}}{{lastNameMalay}}',
32
+ //Chinese
33
+ '{{lastNameChinese}} {{firstNameMaleChinese}}',
34
+ '{{lastNameChinese}} {{firstNameMaleChinese}}',
35
+ '{{lastNameChinese}} {{firstNameMaleChinese}}',
36
+ '{{lastNameChinese}} {{firstNameMaleChinese}}',
37
+ '{{lastNameChinese}} {{firstNameMaleChinese}}',
38
+ '{{firstNameMaleChristian}} {{lastNameChinese}} {{firstNameMaleChinese}}',
39
+ //Indian
40
+ '{{initialIndian}} {{firstNameMaleIndian}}',
41
+ '{{initialIndian}} {{lastNameIndian}}',
42
+ '{{firstNameMaleIndian}} a/l {{firstNameMaleIndian}}',
43
+ '{{firstNameMaleIndian}} a/l {{firstNameMaleIndian}} {{lastNameIndian}}',
44
+ '{{firstNameMaleIndian}} {{lastNameIndian}} a/l {{lastNameIndian}}',
45
+ '{{firstNameMaleIndian}} {{lastNameIndian}} a/l {{firstNameMaleIndian}} {{lastNameIndian}}',
46
+ '{{firstNameMaleIndian}} {{lastNameIndian}}',
47
+ ];
48
+
49
+ /**
50
+ * @see https://en.wikipedia.org/wiki/Malaysian_names
51
+ */
52
+ protected static $femaleNameFormats = [
53
+ //Malay
54
+ '{{nurName}}{{hajjah}}{{firstNameFemaleMalay}} {{lastNameMalay}} binti {{titleMaleMalay}}{{firstNameMaleMalay}} {{lastNameMalay}}',
55
+ '{{nurName}}{{hajjah}}{{firstNameFemaleMalay}} {{lastNameMalay}} binti {{titleMaleMalay}}{{firstNameMaleMalay}}',
56
+ '{{nurName}}{{hajjah}}{{firstNameFemaleMalay}} {{lastNameMalay}} binti {{titleMaleMalay}}{{lastNameMalay}}',
57
+ '{{nurName}}{{hajjah}}{{firstNameFemaleMalay}} {{lastNameMalay}}',
58
+ '{{nurName}}{{hajjah}}{{firstNameFemaleMalay}} binti {{titleMaleMalay}}{{firstNameMaleMalay}} {{lastNameMalay}}',
59
+ '{{nurName}}{{hajjah}}{{firstNameFemaleMalay}} binti {{titleMaleMalay}}{{firstNameMaleMalay}}',
60
+ '{{nurName}}{{hajjah}}{{firstNameFemaleMalay}} binti {{titleMaleMalay}}{{lastNameMalay}}',
61
+ //Chinese
62
+ '{{lastNameChinese}} {{firstNameFemaleChinese}}',
63
+ '{{lastNameChinese}} {{firstNameFemaleChinese}}',
64
+ '{{lastNameChinese}} {{firstNameFemaleChinese}}',
65
+ '{{lastNameChinese}} {{firstNameFemaleChinese}}',
66
+ '{{lastNameChinese}} {{firstNameFemaleChinese}}',
67
+ '{{firstNameFemaleChristian}} {{lastNameChinese}} {{firstNameFemaleChinese}}',
68
+ //Indian
69
+ '{{initialIndian}}{{firstNameFemaleIndian}}',
70
+ '{{initialIndian}}{{lastNameIndian}}',
71
+ '{{firstNameFemaleIndian}} a/l {{firstNameMaleIndian}}',
72
+ '{{firstNameFemaleIndian}} a/l {{firstNameMaleIndian}} {{lastNameIndian}}',
73
+ '{{firstNameFemaleIndian}} {{lastNameIndian}} a/l {{firstNameMaleIndian}}',
74
+ '{{firstNameFemaleIndian}} {{lastNameIndian}} a/l {{firstNameMaleIndian}} {{lastNameIndian}}',
75
+ '{{firstNameFemaleIndian}} {{lastNameIndian}}',
76
+ ];
77
+
78
+ /**
79
+ * @see https://en.wikipedia.org/wiki/List_of_Malay_people
80
+ * @see https://samttar.edu.my/senarai-nama-pelajar-2016/
81
+ * @see http://smkspkl.edu.my/senarai-nama-pelajar
82
+ */
83
+ protected static $firstNameMaleMalay = [
84
+ 'A', 'A.r', 'A\'fif', 'A\'zizul', 'Ab', 'Abadi', 'Abas', 'Abd', 'Abd.', 'Abd.rahim', 'Abdel', 'Abdul', 'Abdull', 'Abdullah', 'Abdulloh', 'Abu', 'Adam', 'Adi', 'Adib', 'Adil', 'Adnan', 'Ady', 'Adzmin', 'Afandy', 'Afif', 'Afiq', 'Afza', 'Agus', 'Ahmad', 'Ahmat', 'Ahmed', 'Ahwali', 'Ahyer', 'Aidid', 'Aidil', 'Aiman', 'Aimman', 'Ainol', 'Ainuddin', 'Ainul', 'Aizad', 'Aizam', 'Aizat', 'Aizuddin', 'Ajis', 'Ajmal', 'Ajwad', 'Akhmal', 'Akid', 'Akif', 'Akmal', 'Al', 'Al-afnan', 'Al-muazrar', 'Alfian', 'Ali', 'Alias', 'Alif', 'Aliff', 'Alilah', 'Alin', 'Allif', 'Amaanullah', 'Amami', 'Aman', 'Amar', 'Ameershah', 'Amier', 'Amierul', 'Amil', 'Amin', 'Aminuddin', 'Amir', 'Amiruddin', 'Amirul', 'Ammar', 'Amran', 'Amri', 'Amru', 'Amrullah', 'Amsyar', 'Anas', 'Andri', 'Aniq', 'Anuar', 'Anuwar', 'Anwar', 'Aqeel', 'Aqif', 'Aqil', 'Arash', 'Arbani', 'Arefin', 'Arief', 'Arif', 'Arifen', 'Ariff', 'Ariffin', 'Arifin', 'Armi', 'Ashraf', 'Ashraff', 'Ashrof', 'Ashrul', 'Aslam', 'Asmawi', 'Asmin', 'Asmuri', 'Asraf', 'Asri', 'Asrialif', 'Asror', 'Asrul', 'Asymawi', 'Asyraaf', 'Asyraf', 'Atan', 'Athari', 'Awaludin', 'Awira', 'Azam', 'Azely', 'Azfar', 'Azhan', 'Azhar', 'Azhari', 'Azib', 'Azim', 'Aziz', 'Azizan', 'Azizul', 'Azizulhasni', 'Azlan', 'Azlee', 'Azli', 'Azman', 'Azmi', 'Azmie', 'Azmin', 'Aznan', 'Aznizam', 'Azraai', 'Azri', 'Azrie', 'Azrien', 'Azril', 'Azrin', 'Azrul', 'Azry', 'Azuan',
85
+ 'Badri', 'Badrullesham', 'Baharin', 'Baharuddin', 'Bahrul', 'Bakri', 'Basaruddin', 'Basiran', 'Basirin', 'Basri', 'Basyir', 'Bazli', 'Borhan', 'Buang', 'Budi', 'Bukhari', 'Bukharudin', 'Bustaman', 'Buyung',
86
+ 'Chailan',
87
+ 'Dahalan', 'Dailami', 'Dan', 'Danial', 'Danie', 'Daniel', 'Danien', 'Danish', 'Darimin', 'Darul', 'Darus', 'Darwisy', 'Dhiyaulhaq', 'Diah', 'Djuhandie', 'Dolbahrin', 'Dolkefli', 'Dzikri', 'Dzul', 'Dzulfahmi', 'Dzulfikri', 'Dzulkarnaen',
88
+ 'Eazriq', 'Effendi', 'Ehza', 'Eizkandar', 'Ekhsan', 'Elyas', 'Enidzullah', 'Ezam', 'Ezani',
89
+ 'Fadhil', 'Fadly', 'Fadzil', 'Fadziruddin', 'Fadzli', 'Fahmi', 'Faiq', 'Fairuz', 'Faisal', 'Faiz', 'Faizal', 'Faizurrahman', 'Fakhrul', 'Fakhrullah', 'Farham', 'Farhan', 'Farid', 'Faris', 'Farisan', 'Fariz', 'Fasil', 'Fateh', 'Fathi', 'Fathuddin', 'Fathul', 'Fauzan', 'Fauzi', 'Fauzul', 'Fawwaz', 'Fazal', 'Fazly', 'Fazreen', 'Fazril', 'Fendi', 'Fikri', 'Fikrie', 'Fikrul', 'Firdaus', 'Fithri', 'Fitiri', 'Fitri', 'Fuad',
90
+ 'Ghazali',
91
+ 'Habib', 'Haddad', 'Hadi', 'Hadif', 'Hadzir', 'Haffize', 'Haffizi', 'Hafidzuddin', 'Hafis', 'Hafiy', 'Hafiz', 'Hafizan', 'Hafizhan', 'Hafizi', 'Hafizsyakirin', 'Hafizuddin', 'Haikal', 'Haiqal', 'Hairol', 'Hairollkahar', 'Hairuddin', 'Hairul', 'Hairun', 'Haisyraf', 'Haizan', 'Hakeem', 'Hakim', 'Hakimi', 'Hakimie', 'Halidan', 'Haliem', 'Halim', 'Hamdani', 'Hamidoon', 'Hamizan', 'Hamka', 'Hamzah', 'Hanafi', 'Hanif', 'Hanit', 'Hannan', 'Haqeem', 'Haqimie', 'Harez', 'Haris', 'Harith', 'Hariz', 'Harmaini', 'Harraz', 'Harun', 'Hasan', 'Hashim', 'Hasif', 'Hasnul', 'Hasrin', 'Hasrol', 'Hassan', 'Hasyim', 'Haszlan', 'Hayani', 'Hazim', 'Haziq', 'Haziqh', 'Hazrie', 'Hazrul', 'Hazwan', 'Hazzam', 'Helmy', 'Hermansah', 'Hidayat', 'Hidayatullah', 'Hilmi', 'Hisam', 'Hisammudin', 'Hisyam', 'Hj', 'Hoirussalam', 'Humadu', 'Hurmin', 'Husain', 'Husaini', 'Husnul', 'Hussein', 'Hussin', 'Huzaifi', 'Huzaimi', 'Huzzaini',
92
+ 'Ibnu', 'Ibrahim', 'Idham', 'Idlan', 'Idris', 'Idrus', 'Idzwan', 'Ielman', 'Ighfar', 'Ihsan', 'Ikhmal', 'Ikhwan', 'Ikmal', 'Ilham', 'Ilhan', 'Illias', 'Ilman', 'Iman', 'Imran', 'Indra', 'Innamul', 'Iqbal', 'Iqwan', 'Iraman', 'Irfan', 'Irman', 'Irsyad', 'Isa', 'Ishak', 'Ishaq', 'Iskandar', 'Isma', 'Ismail', 'Ismaon', 'Isyraq', 'Iwan', 'Iyad', 'Izam', 'Izdihar', 'Izlan', 'Izuhail', 'Izwan', 'Izz', 'Izzan', 'Izzat', 'Izzikry', 'Izzuddin', 'Izzul',
93
+ 'Ja\'afer', 'Jaf', 'Jaferi', 'Jafree', 'Jafri', 'Jahari', 'Jalani', 'Jamal', 'Jamali', 'Jamalludin', 'Jamaluddin', 'Jamekon', 'Jamil', 'Jamsare', 'Jani', 'Jasin', 'Jasni', 'Jebat', 'Jefrie', 'Johari', 'Joharudin', 'Jumat', 'Junaidi',
94
+ 'Kamal', 'Kamaruddin', 'Kamarudin', 'Kamarul', 'Kamaruzain', 'Kamaruzaman', 'Kamaruzzaman', 'Kasim', 'Kasturi', 'Kemat', 'Khadzromi', 'Khairi', 'Khairil', 'Khairin', 'Khairiz', 'Khairol', 'Khairubi', 'Khairudin', 'Khairul', 'Khairulnizam', 'Khairun', 'Khairurrazi', 'Khalilul', 'Khasmadi', 'Khasri', 'Khatta', 'Khirul', 'Khoirul', 'Kholis', 'Khusaini', 'Khuzairey', 'Kutni',
95
+ 'Latiff', 'Lazim', 'Lokman', 'Loqman', 'Lufty', 'Lukman', 'Luqman', 'Luqmanul', 'Luthfi', 'Luthfie',
96
+ 'M.', 'Maamor', 'Madfaizal', 'Mahadhir', 'Mahatdir', 'Mahmusin', 'Mansor', 'Marlizam', 'Martonis', 'Mastura', 'Mat', 'Mazlan', 'Mazmin', 'Mazwan', 'Md', 'Md.', 'Megat', 'Meor', 'Midoon', 'Mie', 'Mikhail', 'Mirza', 'Misbun', 'Miskan', 'Misran', 'Miza', 'Mohlim', 'Mohmad', 'Mokhtar', 'Mokhzani', 'Moktar', 'Mu\'izzuddin', 'Muazzam', 'Mubarak', 'Muhaimen', 'Muhaimi', 'Muhammad', 'Muhd', 'Muid', 'Muizzuddin', 'Muizzudin', 'Mukhtar', 'Mukhriz', 'Mukminin', 'Murad', 'Murshid', 'Mus\'ab', 'Musa', 'Musiran', 'Muslim', 'Mustafa', 'Mustain', 'Mustaqim', 'Musyrif', 'Muszaphar', 'Muzami', 'Muzamil', 'Muzhafar', 'Muzzammil',
97
+ 'Na\'imullah', 'Nabil', 'Naderi', 'Nadzeri', 'Naim', 'Najhan', 'Najib', 'Najmi', 'Nakimie', 'Naqib', 'Naqiuddin', 'Narul', 'Nasaruddin', 'Nashrul', 'Nasimuddin', 'Nasir', 'Nasiruddin', 'Nasri', 'Nasrizal', 'Nasruddin', 'Nasrul', 'Nasrullah', 'Naufal', 'Nawawi', 'Nazari', 'Nazaruddin', 'Nazarul', 'Nazeem', 'Nazeri', 'Nazhan', 'Nazim', 'Nazlan', 'Nazmi', 'Nazren', 'Nazri', 'Nazril', 'Nazrin', 'Nazrul', 'Nazzab', 'Ngadinin', 'Ngasiman', 'Ngatri', 'Nik', 'Nizam', 'Nizan', 'Nizar', 'Noor', 'Noordin', 'Noorizman', 'Nor', 'Norain', 'Norazman', 'Norazmi', 'Nordanish', 'Nordiarman', 'Nordin', 'Norfadli', 'Norfahmi', 'Norhakim', 'Norhan', 'Norhisham', 'Norsilan', 'Nur', 'Nur\'irfaan', 'Nurakmal', 'Nurhanafi', 'Nurhazrul', 'Nurul', 'Nuwair', 'Nuzrul', 'Nuzul',
98
+ 'Omar', 'Omri', 'Osama', 'Osman', 'Othman',
99
+ 'Pauzi', 'Puadi', 'Putra',
100
+ 'Qairil', 'Qays', 'Qusyairi',
101
+ 'R', 'Radin', 'Radzi', 'Radzuan', 'Rafael', 'Raffioddin', 'Rafiee', 'Rafiq', 'Rafizal', 'Rahim', 'Raihan', 'Raja', 'Rakmat', 'Ramdan', 'Ramlan', 'Ramli', 'Rash', 'Rashdan', 'Rashid', 'Rashidi', 'Rasid', 'Raulah', 'Rausyan', 'Razak', 'Razali', 'Razemi', 'Razif', 'Razlan', 'Razuan', 'Redzuan', 'Redzuawan', 'Redzwan', 'Rehan', 'Rehman', 'Rezal', 'Ridhuan', 'Ridwan', 'Ridza', 'Ridzuan', 'Ridzwan', 'Rifqi', 'Rizal', 'Rizli', 'Rohaizad', 'Rohaizal', 'Rohman', 'Roosmadi', 'Roseli', 'Roslan', 'Roslee', 'Rosli', 'Roslin', 'Rosman', 'Rosnan', 'Rossafizal', 'Rozi', 'Rukaini', 'Rukmanihakim', 'Ruknuddin', 'Ruslan', 'Rusli', 'Rusman',
102
+ 'S.rozli', 'Sabana', 'Sabqi', 'Sabri', 'Sadili', 'Sadri', 'Saf\'han', 'Saffrin', 'Safie', 'Safiy', 'Safrizal', 'Safuan', 'Safwan', 'Sahamudin', 'Saharil', 'Said', 'Saidan', 'Saidin', 'Saif', 'Saiful', 'Saifullah', 'Saifullizan', 'Saipol', 'Sakri', 'Salamon', 'Salihin', 'Salimi', 'Salleh', 'Samad', 'Samani', 'Sameer', 'Samiun', 'Samsul', 'Samsur', 'Sanorhizam', 'Sardine', 'Sarudin', 'Sarwati', 'Saufishazwi', 'Sazali', 'Selamat', 'Senon', 'Shafarizal', 'Shafie', 'Shafiq', 'Shah', 'Shahamirul', 'Shaharudin', 'Shaheila', 'Shaheizy', 'Shahfiq', 'Shahmi', 'Shahnon', 'Shahquzaifi', 'Shahril', 'Shahrin', 'Shahrizal', 'Shahrol', 'Shahru', 'Shahrul', 'Shahrulnaim', 'Shahrun', 'Shahrunizam', 'Shahzwan', 'Shaiful', 'Shaikh', 'Shakif', 'Shakir', 'Sham', 'Shameer', 'Shamhazli', 'Shamil', 'Shamizan', 'Shamizul', 'Shamsuddin', 'Shamsudin', 'Shamsul', 'Shamsuri', 'Shamsuzlynn', 'Shapiein', 'Sharafuddin', 'Shari', 'Sharif', 'Sharifuddin', 'Sharifudin', 'Sharil', 'Sharizal', 'Sharsham', 'Sharudin', 'Sharul', 'Shaugi', 'Shauqi', 'Shawal', 'Shazwan', 'Sheikh', 'Shmsul', 'Shohaimi', 'Shukri', 'Sirajuddin', 'Sofian', 'Sohaini', 'Solehen', 'Solekhan', 'Solleh', 'Sualman', 'Subbahi', 'Subkhiddin', 'Sudarrahman', 'Sudirman', 'Suhaimi', 'Sukarni', 'Sukhairi', 'Sukri', 'Sukymi', 'Sulaiman', 'Sulhan', 'Suzaili', 'Suzaman', 'Syafiq', 'Syahaziq', 'Syahid', 'Syahir', 'Syahmi', 'Syahrial', 'Syahriman', 'Syahru', 'Syahzuan', 'Syakir', 'Syakirin', 'Syakirul', 'Syamirul', 'Syamsol', 'Syaqirin', 'Syarafuddin', 'Syawal', 'Syawalludin', 'Syazani', 'Syazwan', 'Syed', 'Syid', 'Syukri', 'Syuqeri',
103
+ 'Tajuddin', 'Takiudin', 'Talha', 'Tarmizi', 'Tasripin', 'Taufek', 'Taufik', 'Tayib', 'Termizi', 'Thalahuddin', 'Thaqif', 'Tunan',
104
+ 'Umair', 'Umar', 'Usman',
105
+ 'W', 'Wafi', 'Wafiq', 'Wan', 'Wazir', 'Wazzirul', 'Wi',
106
+ 'Yani', 'Yaqzan', 'Yazid', 'Yunos', 'Yusaini', 'Yusfaisal', 'Yushafiq', 'Yusni', 'Yusof', 'Yusoff', 'Yusri', 'Yussof', 'Yusuf',
107
+ 'Zabayudin', 'Zabidi', 'Zahari', 'Zahid', 'Zahiruddin', 'Zahrul', 'Zaid', 'Zaidi', 'Zainal', 'Zaini', 'Zainodin', 'Zainordin', 'Zainuddin', 'Zainul', 'Zairy', 'Zaiyon', 'Zakaria', 'Zaki', 'Zakii', 'Zakri', 'Zakwan', 'Zambri', 'Zamre', 'Zamri', 'Zamrul', 'Zan', 'Zaqiyuddin', 'Zar\'ai', 'Zarif', 'Zariq', 'Zarith', 'Zarul', 'Zaukepli', 'Zawawi', 'Zharaubi', 'Zikri', 'Zikril', 'Zikry', 'Zizi', 'Zol', 'Zolkifle', 'Zubair', 'Zubir', 'Zufayri', 'Zufrie', 'Zuheeryrizal', 'Zuhri', 'Zuki', 'Zul', 'Zulfadhli', 'Zulfadli', 'Zulfahmi', 'Zulfaqar', 'Zulfaqqar', 'Zulfikar', 'Zulhaikal', 'Zulhakim', 'Zulhakimi', 'Zulhelmi', 'Zulhilmi', 'Zulkapli', 'Zulkarnain', 'Zulkefli', 'Zulkfli', 'Zulkifli', 'Zulkipli', 'Zulman', 'Zuri',
108
+ ];
109
+ protected static $firstNameFemaleMalay = [
110
+ '\'Abidah', '\'Alyaa', '\'Aqilah', '\'Atiqah', '\'Afiqah', '\'Alia', '\'Aqilah', 'A\'ishah', 'A\'in', 'A\'zizah', 'Abdah', 'Abiatul', 'Adani', 'Adawiyah', 'Adha', 'Adharina', 'Adhwa', 'Adibah', 'Adilah', 'Adilla', 'Adina', 'Adini', 'Adira', 'Adlina', 'Adlyna', 'Adriana', 'Adzlyana', 'Afifa', 'Afifah', 'Afina', 'Afiqah', 'Afiza', 'Afrina', 'Afzan', 'Ahda', 'Aida', 'Aidatul', 'Aidila', 'Aifa', 'Aiman', 'Aimi', 'Aimuni', 'Ain', 'Aina', 'Ainaa', 'Ainaanasuha', 'Aini', 'Ainin', 'Ainn', 'Ainnaziha', 'Ainul', 'Ainun', 'Ainur', 'Airin', 'Aishah', 'Aisya', 'Aisyah', 'Aiza', 'Akmal', 'Aleeya', 'Aleeza', 'Aleya', 'Aleza', 'Alia', 'Aliaa', 'Aliah', 'Aliffa', 'Aliffatus', 'Alina', 'Alis', 'Alisya', 'Aliya', 'Alkubra', 'Alleisya', 'Ally', 'Alya', 'Alyaa', 'Amalia', 'Amalien', 'Amalin', 'Amalina', 'Amani', 'Amanina', 'Amiera', 'Aminy', 'Amira', 'Amirah', 'Amisha', 'Amrina', 'Amylia', 'Amyra', 'An-nur', 'Anas', 'Andani', 'Andi', 'Anesha', 'Ani', 'Aninafishah', 'Anis', 'Anisah', 'Anisha', 'Anissa', 'Aniza', 'Anna', 'Anne', 'Antaza', 'Aqeem', 'Aqeera', 'Aqila', 'Aqilah', 'Arfahrina', 'Ariana', 'Ariena', 'Ariessa', 'Arifah', 'Arina', 'Ariqah', 'Arissa', 'Arisya', 'Armira', 'Arwina', 'Aryani', 'Ashika', 'Ashriyana', 'Asiah', 'Asma\'rauha', 'Asmaa\'', 'Asmaleana', 'Asniati', 'Asnie', 'Asniza', 'Aswana', 'Asy', 'Asyiqin', 'Asykin', 'Athirah', 'Atifa', 'Atifah', 'Atifahajar', 'Atikah', 'Atiqa', 'Atiqah', 'Atirah', 'Atyqah', 'Auni', 'Awatif', 'Awatiff', 'Ayesha', 'Ayu', 'Ayuni', 'Ayunie', 'Az', 'Azashahira', 'Aziah', 'Aziemah', 'Azika', 'Azira', 'Azizah', 'Azliah', 'Azliatul', 'Azlin', 'Azlina', 'Azmina', 'Azni', 'Azrah', 'Azrina', 'Azua', 'Azuin', 'Azwa', 'Azwani', 'Azyan', 'Azyyati',
111
+ 'Badrina', 'Bahirah', 'Balqis', 'Basyirah', 'Batrisya', 'Batrisyia', 'Bilqis', 'Bismillah',
112
+ 'Camelia', 'Cempaka',
113
+ 'Dalila', 'Dalili', 'Damia', 'Dania', 'Danish', 'Darlina', 'Darwisyah', 'Deni', 'Dhani', '\'Dhiya', 'Diana', 'Dianah', 'Dini', 'Diyana', 'Diyanah', 'Dylaila',
114
+ 'Eizzah', 'Eliya', 'Ellynur', 'Elpiya', 'Elyana', 'Elysha', 'Ema', 'Emylia', 'Erika', 'Eva', 'Ezzatul',
115
+ 'Faathihah', 'Fadhilah', 'Fadzliana', 'Fahda', 'Fahimah', 'Fahira', 'Fairuz', 'Faizah', 'Faiznur', 'Faizyani', 'Fakhira', 'Falah', 'Faqihah', 'Fara', 'Faradieba', 'Farah', 'Faraheira', 'Farahin', 'Farahiyah', 'Farahtasha', 'Farha', 'Farhah', 'Farhana', 'Faridatul', 'Fariha', 'Farina', 'Farisah', 'Farisha', 'Farrah', 'Fartinah', 'Farzana', 'Fasehah', 'Fasha', 'Fateha', 'Fatehah', 'Fathiah', 'Fathiha', 'Fathihah', 'Fathimah', 'Fatiha', 'Fatihah', 'Fatimatul', 'Fatin', 'Fatini', 'Fauziah', 'Faza', 'Fazlina', 'Fezrina', 'Filza', 'Filzah', 'Firzanah', 'Fitrah', 'Fitri', 'Fitriah', 'Fizra',
116
+ 'Hadfina', 'Hadiyatul', 'Hafezah', 'Hafidzah', 'Hafieza', 'Hafizah', 'Hahizah', 'Hajar', 'Hakimah', 'Halimatul', 'Halimatussa\'diah', 'Halisah', 'Hamira', 'Hamizah', 'Hana', 'Hanaani', 'Hanani', 'Hani', 'Hanim', 'Hanini', 'Hanis', 'Hanisah', 'Hanna', 'Hannan', 'Hannani', 'Hanni', 'Hanun', 'Harma', 'Hasmalinda', 'Hasya', 'Hasyimah', 'Hayani', 'Hayati', 'Hayatul', 'Hayaty', 'Hazira', 'Hazirah', 'Hazmeera', 'Hazwani', 'Hazwanie', 'Herlina', 'Herliyana', 'Hidayah', 'Hidzwati', 'Huda', 'Humaira', 'Hureen', 'Husna', 'Husnina',
117
+ 'Ida', 'Iffah', 'Iklil', 'Ili', 'Ilyana', 'Iman', 'Imelda', 'Insyira', 'Insyirah', 'Intan', '\'Irdhina', 'Irdina', '\'Irdina', 'Irsa', 'Iryani', '\'Isdmah', 'Islamiah', 'Isnur', 'Izaiti', 'Izati', 'Izatie', 'Izatul', 'Izaty', 'Izlin', '\'Izzah', 'Izzah', 'Izzani', 'Izzati', 'Izzatul', 'Izzaty', 'Izziani',
118
+ 'Jaf', 'Jajuenne', 'Jani', 'Jannah', 'Jannatul', 'Jaslina', 'Jihan', 'Ju', 'Julia', 'Juliana', 'Juliya',
119
+ 'Kamarlia', 'Kamelia', 'Kausthar', 'Kauthar', 'Khadijah', 'Khahirah', 'Khairina', 'Khairun', 'Khairunisa', 'Khairunnisa', 'Khairunnisak', 'Khaleeda', 'Khaleisya', 'Khaliesah', 'Khalisa', 'Khodijah',
120
+ 'Laila', 'Liana', 'Lina', 'Lisa', 'Liyana',
121
+ 'Madihah', 'Maheran', 'Mahfuzah', 'Mahirah', 'Maisara', 'Maisarah', 'Maizatul', 'Malihah', 'Mardhiah', 'Mariam', 'Marina', 'Mariska', 'Marlina', 'Marni', 'Maryam', 'Mas', 'Mashitah', 'Masitah', 'Mastura', 'Maswah', 'Masyikah', 'Masyitah', 'Maszlina', 'Mawaddah', 'Maya', 'Mazdiyana', 'Mazlyn', 'Melisa', 'Melissa', 'Mimi', 'Mira', 'Mirsha', 'Miskon', 'Miza', 'Muazzah', 'Mumtaz', 'Mursyidah', 'Muti\'ah', 'Muyassarah', 'Muzainah', 'Mysara', 'Mysarah',
122
+ 'Nabihah', 'Nabila', 'Nabilah', 'Nabilla', 'Nabillah', 'Nadhilah', 'Nadhirah', 'Nadhrah', 'Nadia', 'Nadiah', 'Nadiatun', 'Nadilla', 'Nadira', 'Nadirah', 'Nadwah', 'Nadzirah', 'Nafisah', 'Nafizah', 'Najah', 'Najian', 'Najiha', 'Najihah', 'Najla', 'Najwa', 'Najwani', 'Naliny', 'Naqibahuda', 'Nashrah', 'Nashuha', 'Nasliha', 'Nasrin', 'Nasuha', 'Natasa', 'Natasha', 'Natasya', 'Nathasa', 'Natrah', 'Naurah', 'Nayli', 'Nazatul', 'Nazihah', 'Nazira', 'Nazirah', 'Nazura', 'Nazurah', 'Nikmah', 'Nina', 'Nisa', 'Nisak', 'Nisrina', 'Noorain', 'Noorazmiera', 'Noorfarzanah', 'Noornazratul', 'Norafizah', 'Norain', 'Noraisyah', 'Noralia', 'Noranisa', 'Noratasha', 'Nordhiya', 'Nordiana', 'Norelliana', 'Norerina', 'Norfaezah', 'Norfahanna', 'Norhafiza', 'Norhamiza', 'Norhidayah', 'Noridayu', 'Norliyana', 'Norsakinah', 'Norshaera', 'Norshahirah', 'Norshuhailah', 'Norsolehah', 'Norsuhana', 'Norsyafiqah', 'Norsyahirah', 'Norsyamimie', 'Norsyarah', 'Norsyazmira', 'Norsyazwani', 'Norsyuhada', 'Norul', 'Noryshah',
123
+ 'Nuradilah', 'Nurafifah', 'Nurafrina', 'Nurain', 'Nuraina', 'Nuralia', 'Nuraliah', 'Nuralifah', 'Nuralya', 'Nurani', 'Nuranisya', 'Nuraqilah', 'Nurarisha', 'Nurasyikin', 'Nuratiqah', 'Nuraveena', 'Nureen', 'Nurfaatihah', 'Nurfadlhlin', 'Nurfaizah', 'Nurfarah', 'Nurfarahin', 'Nurfarhana', 'Nurfarrah', 'Nurfatehah', 'Nurfatiha', 'Nurfatin', 'Nurfirzanah', 'Nurfitrah', 'Nurfizatul', 'Nurhafizah', 'Nurhajar', 'Nurhani', 'Nurhanida', 'Nurhanis', 'Nurhanisah', 'Nurhanna', 'Nurhawa', 'Nurhazwani', 'Nurhazzimah', 'Nurhidayah', 'Nurhidayatul', 'Nurhuda', 'Nurilyani', 'Nurin', 'Nurjazriena', 'Nurmuzdalifah', 'Nurnajiha', 'Nurnatasha', 'Nurnazhimah', 'Nurnazhirah', 'Nurqurratuain', 'Nursabrina', 'Nursahira', 'Nursarah', 'Nursarwindah', 'Nursham', 'Nurshammeza', 'Nursofiah', 'Nursuhaila', 'Nursyaffira', 'Nursyafika', 'Nursyahindah', 'Nursyakirah', 'Nursyarina', 'Nursyazwani', 'Nursyazwina', 'Nursyuhadah', 'Nurulhuda', 'Nurulsyahida', 'Nurun', 'Nurwadiyah', 'Nurwahidah', 'Nurzafira', 'Nurzarith', 'Nurzulaika',
124
+ 'Pesona', 'Puteri', 'Putri',
125
+ 'Qairina', 'Qamarina', 'Qasrina', 'Qhistina', 'Qistina', 'Quintasya', 'Qurratu', 'Qurratuaini', 'Qurratul',
126
+ 'Rabi\'atul', 'Rabiatul', 'Rafidah', 'Rahiemah', 'Rahmah', 'Raihah', 'Raihana', 'Raihanah', 'Raja', 'Rashmi', 'Rasyaratul', 'Rasyiqah', 'Rasyiqqah', 'Raudatul', 'Ridiatul', 'Rieni', 'Rifhan', 'Rihhadatul', 'Ros', 'Rosalinda', 'Rosyadah', 'Rusyda', 'Rusydina',
127
+ 'Sa\'adah', 'Saadiah', 'Sabrina', 'Safi', 'Safiah', 'Safiyah', 'Sahira', 'Saidatul', 'Sakinah', 'Sakirah', 'Salwa', 'Sameera', 'Sarah', 'Sarwati', 'Sasya', 'Serene', 'Sha', 'Shabariah', 'Shafiah', 'Shafiera', 'Shafikah', 'Shafinaz', 'Shafiqa', 'Shafiqah', 'Shah', 'Shahida', 'Shahidah', 'Shahiera', 'Shahila', 'Shahira', 'Shahirah', 'Shahrazy', 'Shahrina', 'Shakilah', 'Shakinah', 'Shalina', 'Shameera', 'Shamila', 'Shamimie', 'Shamira', 'Shar\'fiera', 'Sharifah', 'Sharizah', 'Shauqina', 'Shayira', 'Shazana', 'Shazieda', 'Shazlien', 'Shazwana', 'Shazwani', 'Shonia', 'Shuhada', 'Siti', 'Siti', 'Siti', 'Siti', 'Siti', 'Siti', 'Sitti', 'Sofea', 'Sofeah', 'Soffia', 'Sofia', 'Sofiya', 'Sofiyah', 'Sofya', 'Solehah', 'Sopie', 'Suaidah', 'Suhada', 'Suhadah', 'Suhaida', 'Suhaila', 'Suhailah', 'Suhaina', 'Suhana', 'Suhani', 'Sulaiha', 'Sumayyah', 'Suraya', 'Suziyanis', 'Syaffea', 'Syafika', 'Syafikah', 'Syafina', 'Syafiqa', 'Syafiqah', 'Syafirah', 'Syafiyah', 'Syafiyana', 'Syahada', 'Syahadatullah', 'Syahera', 'Syaherah', 'Syahidah', 'Syahidatul', 'Syahiera', 'Syahira', 'Syahirah', 'Syahmimi', 'Syahmina', 'Syahzani', 'Syaidatul', 'Syairah', 'Syakila', 'Syakira', 'Syakirah', 'Syamien', 'Syamilah', 'Syamimi', 'Syamina', 'Syamirah', 'Syara', 'Syarafana', 'Syarafina', 'Syarah', 'Syarina', 'Syasyabila', 'Syauqina', 'Syaza', 'Syazana', 'Syazliya', 'Syazmin', 'Syazryana', 'Syazwana', 'Syazwani', 'Syazwanie', 'Syazwina', 'Syifa\'', 'Syuhada', 'Syuhada`', 'Syuhaida', 'Syuhaidah',
128
+ 'Taqiah', 'Tasnim', 'Tengku', 'Tihany',
129
+ 'Umairah', 'Umi', 'Umira', 'Ummi',
130
+ 'Wadiha', 'Wafa', 'Waheeda', 'Wahida', 'Wahidah', 'Wan', 'Wardatul', 'Wardina', 'Wardinah', 'Wazira', 'Weni',
131
+ 'Yasmeen', 'Yasmin', 'Yetri', 'Yunalis', 'Yusra', 'Yusrinaa', 'Yusyilaaida',
132
+ 'Zaffan', 'Zafirah', 'Zaharah', 'Zahirah', 'Zahrah', 'Zahrak', 'Zaidalina', 'Zaidatulkhoiriyah', 'Zainab', 'Zainatul', 'Zakdatul', 'Zatalini', 'Zati', 'Zayani', 'Zeqafazri', 'Zilhaiza', 'Zubaidah', 'Zulaika', 'Zulaikha',
133
+ ];
134
+ protected static $lastNameMalay = [
135
+ '\'Aizat', 'A\'liyyuddin', 'Abas', 'Abdillah', 'Abdullah', 'Abidin', 'Adam', 'Adha', 'Adham', 'Adi', 'Adieka', 'Adip', 'Adli', 'Adnan', 'Adrus', 'Afandi', 'Afiq', 'Afizi', 'Afnan', 'Afsyal', 'Ahmad', 'Ahwali', 'Aidi', 'Aidil', 'Aiman', 'Aizad', 'Aizam', 'Aizat', 'Ajllin', 'Ajmal', 'Akashah', 'Akasyah', 'Akbar', 'Akhmal', 'Akid', 'Akif', 'Akmal', 'Al-amin', 'Al-hakim', 'Albukhary', 'Ali', 'Alias', 'Alif', 'Alimi', 'Aliuddin', 'Amaluddin', 'Amin', 'Aminnudin', 'Aminrullah', 'Aminuddin', 'Amiran', 'Amiruddin', 'Amirul', 'Amirullah', 'Ammar', 'Ammer', 'Amni', 'Amran', 'Amri', 'Amry', 'Amsyar', 'Amzah', 'Anam', 'Anaqi', 'Andalis', 'Anuar', 'Anwar', 'Apizan', 'Aqashah', 'Aqil', 'Arfan', 'Arfandi', 'Arias', 'Arief', 'Arif', 'Ariff', 'Ariffin', 'Arifin', 'Arifuddin', 'Arman', 'Arshad', 'Arziman', 'As', 'Asa', 'Ashraf', 'Ashraff', 'Asmadi', 'Asmar', 'Asmawi', 'Asri', 'Asyraf', 'Asyran', 'Asyrani', 'Aszahari', 'Awal', 'Awalluddin', 'Awaluddin', 'Awaludin', 'Awira', 'Ayyadi', 'Azahar', 'Azahari', 'Azam', 'Azhan', 'Azhar', 'Azhari', 'Azim', 'Aziz', 'Azizan', 'Azizi', 'Azizy', 'Azlan', 'Azlansyhah', 'Azli', 'Azlim', 'Azman', 'Azmee', 'Azmi', 'Azmin', 'Aznai', 'Azni', 'Azraai', 'Azrai', 'Azri', 'Azril', 'Azrin', 'Azriq', 'Azrul', 'Azuan',
136
+ 'Badrulhisham', 'Baha', 'Bahaman', 'Bahari', 'Baharin', 'Baharruddin', 'Baharuddin', 'Baharudin', 'Bahri', 'Bahrin', 'Bahrodin', 'Bakar', 'Bakri', 'Bakry', 'Bakti', 'Basaruddin', 'Bashah', 'Basri', 'Basyir', 'Batisah', 'Bella', 'Berman', 'Borhan', 'Buhari', 'Bukhari',
137
+ 'Chai',
138
+ 'Dahalan', 'Dahari', 'Dahlan', 'Daiman', 'Daneal', 'Daniael', 'Danial', 'Daniel', 'Danish', 'Darmawi', 'Daryusman', 'Daud', 'Dazila', 'Din', 'Dini', 'Djuhandie', 'Dolkefli', 'Draman', 'Dzikri', 'Dzolkefli', 'Dzulkifli', 'Dzullutfi',
139
+ 'Effendi', 'Effindi', 'Ekhsan', 'Elfin', 'Erfan',
140
+ 'Fadhil', 'Fadhilah', 'Fadil', 'Fadillah', 'Fadlullah', 'Fadzil', 'Faez', 'Fahi', 'Fahim', 'Fahmi', 'Fahmie', 'Fairos', 'Fairuz', 'Faiser', 'Faiz', 'Faizal', 'Faizul', 'Faizun', 'Fakhri', 'Fakhrurrazi', 'Fareesnizra', 'Fareez', 'Farhan', 'Farid', 'Farihan', 'Faris', 'Farris', 'Fathi', 'Fatullah', 'Faudzi', 'Fauzi', 'Fauzy', 'Fayyad', 'Fazal', 'Fazil', 'Fazira', 'Fikri', 'Firdaus', 'Firdoz', 'Fiteri', 'Fitri', 'Fuad', 'Fuart', 'Fuzi',
141
+ 'Garapar', 'Ghani', 'Ghazi',
142
+ 'Haddi', 'Hadi', 'Hadzis', 'Haeizan', 'Hafandi', 'Hafiz', 'Hafizam', 'Hafizee', 'Hafizh', 'Hafizi', 'Hafizuddin', 'Haidie', 'Haikal', 'Haiqal', 'Hairizan', 'Hairuddin', 'Hairulnizam', 'Hairunnezam', 'Haizam', 'Haizan', 'Hajar', 'Hakam', 'Hakiem', 'Hakim', 'Hakimi', 'Hakimie', 'Halib', 'Halil', 'Halim', 'Halin', 'Hamdan', 'Hamdani', 'Hamid', 'Hamidi', 'Hamizie', 'Hamizuddin', 'Hamjah', 'Hammani', 'Hamzah', 'Hanafi', 'Hanafia', 'Hanief', 'Hanif', 'Hanifah', 'Haniff', 'Hanim', 'Hapani', 'Haqim', 'Haqimi', 'Haramaini', 'Hardinal', 'Hariff', 'Haris', 'Harith', 'Hariz', 'Harmaini', 'Harman', 'Haron', 'Harris', 'Haruddin', 'Harun', 'Hasadi', 'Hasan', 'Hasbi', 'Hasbullah', 'Hashan', 'Hasif', 'Hasim', 'Hasmawi', 'Hasnan', 'Hasri', 'Hassan', 'Hassim', 'Hassimon', 'Haszlan', 'Hazambi', 'Hazaril', 'Hazim', 'Hazimie', 'Haziq', 'Hazizan', 'Hazlin', 'Hazre', 'Hazrin', 'Hazrol', 'Helmi', 'Hi\'qal', 'Hikmee', 'Hilmi', 'Hisam', 'Hisham', 'Hishhram', 'Hizam', 'Husaini', 'Husin', 'Husna', 'Husni', 'Hussin', 'Huzaify', 'Huzain',
143
+ 'Ibrahim', 'Idham', 'Idris', '\'Iffat', 'Ifwat', 'Ikhmal', 'Ikhram', 'Ikhwan', 'Ikmal', 'Ikram', 'Ilman', 'Iman', 'Imran', 'Imtiyaz', 'Iqbal', 'Iqmal', 'Irfan', 'Irham', 'Irsyad', 'Is\'ad', 'Isa', 'Isfarhan', 'Ishak', 'Ishsyal', 'Iskandar', 'Ismadi', 'Ismail', 'Ismayudin', 'Isroman', 'Isyrafi', 'Izad', 'Izam', 'Izani', 'Izman', 'Izwan', 'Izzat', 'Izzuddin', 'Izzudin',
144
+ 'Jainal', 'Jaini', 'Jamahari', 'Jamal', 'Jamaluddin', 'Jamaludin', 'Jaman', 'Jamri', 'Jani', 'Jasni', 'Jaya', 'Jeffri', 'Jefri', 'Jelani', 'Jemadin', 'Johan', 'Johari', 'Juhari', 'Jumat', 'Junaidi',
145
+ 'Kahar', 'Kamal', 'Kamaruddin', 'Kamarudin', 'Kamarul', 'Kamaruzaman', 'Kamil', 'Kamslian', 'Karzin', 'Kasim', 'Kasturi', 'Khafiz', 'Khairani', 'Khairuddin', 'Khaleed', 'Khaliq', 'Khan', 'Kharmain', 'Khatta', 'Khilmi', 'Khir-ruddin', 'Khirulrezal', 'Khusaini',
146
+ 'Latif', 'Latip', 'Lazim', 'Lukman',
147
+ 'Maarof', 'Mahadi', 'Mahat', 'Mahathir', 'Mahmudin', 'Mahmusin', 'Mahyuddin', 'Mahyus', 'Majid', 'Malek', 'Malik', 'Maliki', 'Mamhuri', 'Man', 'Manaf', 'Manan', 'Manap', 'Mansor', 'Margono', 'Martunus', 'Maruzi', 'Marzuki', 'Maserun', 'Maskor', 'Maslan', 'Maswari', 'Maszuni', 'Mazalan', 'Mazlan', 'Midali', 'Mikhail', 'Mirza', 'Miskan', 'Miskoulan', 'Mislan', 'Misnan', 'Mizan', 'Mohhidin', 'Mohsin', 'Mokhtar', 'Moktar', 'Molkan', 'Mon', 'Montahar', 'Mossanif', 'Mu', 'Muaddib', 'Muain', 'Muhaimi', 'Muhaimin', 'Muhdi', 'Muiz', 'Mujamek', 'Mukmin', 'Mukromin', 'Muneer', 'Muqriz', 'Murad', 'Murshed', 'Murshidi', 'Musa', 'Muslim', 'Musliman', 'Mustafa', 'Mustapha', 'Mustaqim', 'Musyrif', 'Mutaali', 'Mutalib', 'Muti\'i', 'Muzamil', 'Muzammil',
148
+ 'Na\'im', 'Nabil', 'Nadzri', 'Nafiz', 'Naim', 'Najhi', 'Najib', 'Najmi', 'Najmuddin', 'Naqiyuddin', 'Nasaruddin', 'Nashriq', 'Nasiman', 'Nasir', 'Nasrodin', 'Nasrullah', 'Naufal', 'Nawawi', 'Nazairi', 'Nazar', 'Nazarudin', 'Nazeri', 'Nazhan', 'Nazirin', 'Nazmi', 'Nazree', 'Nazri', 'Nazrin', 'Nazry', 'Ngadenan', 'Ngadun', 'Niszan', 'Nizam', 'Noh', 'Noor', 'Noordin', 'Noorhakim', 'Noorismadi', 'Noorizman', 'Nor', 'Noradhzmi', 'Noraffendi', 'Noraslan', 'Norazam', 'Norazim', 'Norazman', 'Norazmi', 'Nordin', 'Norhisam', 'Norhisham', 'Norizal', 'Norizan', 'Norlisam', 'Normansah', 'Norrizam', 'Norsilan', 'Norzamri', 'Nurfairuz', 'Nurhaliza', 'Nurnaim',
149
+ 'Omar', 'Osman', 'Othman',
150
+ 'Pa\'aing', 'Pauzi', 'Pisol', 'Putra', 'Putra',
151
+ 'Qayum', 'Qayyum', 'Qayyuum', 'Qusyairi',
152
+ 'Ra\'ais', 'Radzi', 'Raffioddin', 'Raffiq', 'Rafi', 'Rafizal', 'Rahamad', 'Rahim', 'Rahman', 'Rahmat', 'Rais', 'Raizal', 'Raman', 'Ramdan', 'Ramdzan', 'Ramlan', 'Ramlee', 'Ramli', 'Ramly', 'Rani', 'Ranjit', 'Raqi', 'Rashid', 'Rashidi', 'Rashidin', 'Rasid', 'Rassid', 'Rasyid', 'Razak', 'Razali', 'Raze', 'Razi', 'Razin', 'Razlan', 'Razman', 'Redha', 'Redzuan', 'Rembli', 'Remi', 'Ridduan', 'Ridhwan', 'Ridzuan', 'Ridzwan', 'Rifin', 'Rifqi', 'Rifqie', 'Rithwan', 'Rizal', 'Rizuan', 'Rizwan', 'Robani', 'Rohaizan', 'Rohem', 'Rohman', 'Ros', 'Rosdan', 'Roshman', 'Roslan', 'Roslee', 'Rosli', 'Rosly', 'Rosmawi', 'Rosnan', 'Rossaimi', 'Rostam', 'Rostan', 'Roszainal', 'Rozi', 'Rubi', 'Rusdi', 'Ruslan', 'Rusli', 'Rustam', 'Rusyaidi',
153
+ 'Sa\'ari', 'Saad', 'Sabaruddin', 'Sabarudin', 'Sabki', 'Sabri', 'Sabrie', 'Safee', 'Saffuan', 'Safie', 'Safingi', 'Safrifarizal', 'Safrizal', 'Safwan', 'Sahidi', 'Sahril', 'Sahroni', 'Saifuddin', 'Saifudin', 'Saifulzakher', 'Saifuzin', 'Saihun', 'Saizol', 'Sakdon', 'Sakri', 'Salam', 'Saleh', 'Salehudin', 'Salim', 'Salleh', 'Salman', 'Sam', 'Samad', 'Samae', 'Samah', 'Saman', 'Samsani', 'Samsuddin', 'Samsul', 'Samsuri', 'Sandha', 'Sani', 'Sanorhizam', 'Sapuan', 'Sarim', 'Satar', 'Saudi', 'Sazali', 'Sedek', 'Selamat', 'Senon', 'Sha\'ril', 'Shabana', 'Shafei', 'Shafie', 'Shafiq', 'Shah', 'Shaharuddin', 'Shaharudin', 'Shahiman', 'Shahrazy', 'Shahrizan', 'Shaidi', 'Shaifuddin', 'Shaihuddin', 'Sham', 'Shameer', 'Shamizan', 'Shamsuddin', 'Shamsudin', 'Shamsul', 'Shapiein', 'Sharasan', 'Sharif', 'Sharifudin', 'Shariman', 'Sharin', 'Sharollizam', 'Sharum', 'Shazani', 'Shazman', 'Shmsul', 'Shobi', 'Shueib', 'Shukor', 'Shukri', 'Sidek', 'Sinuzulan', 'Soberi', 'Sobirin', 'Sofi', 'Solehin', 'Solekhan', 'Sonan', 'Suami', 'Subhi', 'Subzan', 'Sudirman', 'Sueib', 'Sufi', 'Sufian', 'Suhaimi', 'Suhiman', 'Sukarsek', 'Sulaiman', 'Sulong', 'Suraji', 'Surya', 'Sutrisno', 'Suz\'ian', 'Suzaimi', 'Syafiq', 'Syafrin', 'Syahir', 'Syahmi', 'Syahril', 'Syahrin', 'Syakir', 'Syamil', 'Syauqi', 'Syazwan', 'Syukran', 'Syukri', 'Syuraih',
154
+ 'Tajudin', 'Takiudin', 'Talib', 'Taqiuddin', 'Tarjuddin', 'Tarmizi', 'Tarudin', 'Taufek', 'Thaqif', 'Tuah', 'Tukimin', 'Tumiran',
155
+ 'Ubaidillah', 'Ulum', 'Umar', 'Usman', 'Usri', 'Uzair',
156
+ 'Wafi', 'Wahab', 'Wahbillah', 'Wahid', 'Wahidan', 'Wahidin', 'Wardi', 'Wasil', 'Wazif', 'Wildani',
157
+ 'Ya\'accob', 'Yaacob', 'Yaakob', 'Yaacup', 'Yacob', 'Yahaya', 'Yahya', 'Yajid', 'Yamani', 'Yanis', 'Yaqin', 'Yasin', 'Yazid', 'Yunus', 'Yusaini', 'Yusihasbi', 'Yusni', 'Yusof', 'Yusoff', 'Yusri', 'Yusrin', 'Yusseri', 'Yussof', 'Yusuf', 'Yuszelan', 'Yuzli',
158
+ 'Zafran', 'Zahani', 'Zahar', 'Zahareman', 'Zahari', 'Zahin', 'Zaid', 'Zaidi', 'Zailan', 'Zailani', 'Zaimi', 'Zaiminuddin', 'Zain', 'Zainal', 'Zaini', 'Zainorazman', 'Zainordin', 'Zainuddin', 'Zainudin', 'Zainul-\'alam', 'Zainun', 'Zainuri', 'Zairi', 'Zairulaizam', 'Zakaria', 'Zaki', 'Zakir', 'Zakuan', 'Zakwan', 'Zam', 'Zamanhuri', 'Zamani', 'Zamhari', 'Zamran', 'Zamre', 'Zamree', 'Zamri', 'Zamzuri', 'Zani', 'Zar\'ai', 'Zawawi', 'Zawi', 'Zazlan', 'Zehnei', 'Zhafran', 'Zihni', 'Zikry', 'Zin', 'Zizi', 'Zol', 'Zolkafeli', 'Zolkifli', 'Zuanuar', 'Zubair', 'Zubir', 'Zufayri', 'Zuhaili', 'Zuki', 'Zukri', 'Zulamin', 'Zulfadhli', 'Zulfikar', 'Zulfikri', 'Zulhazril', 'Zulhelmi', 'Zulkafli', 'Zulkanine', 'Zulkarnaen', 'Zulkefle', 'Zulkefli', 'Zulkernain', 'Zulkhairie', 'Zulkifli', 'Zulqurnainin', 'Zumali', 'Zuraidi', 'Zuri', 'Zuwairi',
159
+ ];
160
+
161
+ /**
162
+ * Note: The empty elements are for names without the title, chances increase by number of empty elements.
163
+ *
164
+ * @see https://en.wikipedia.org/wiki/Muhammad_(name)
165
+ */
166
+ protected static $muhammadName = ['', '', '', '', 'Mohamad ', 'Mohamed ', 'Mohammad ', 'Mohammed ', 'Muhamad ', 'Muhamed ', 'Muhammad ', 'Muhammed ', 'Muhammet ', 'Mohd '];
167
+ /**
168
+ * @see https://en.wikipedia.org/wiki/Noor_(name)
169
+ */
170
+ protected static $nurName = ['', '', '', '', 'Noor ', 'Nor ', 'Nur ', 'Nur ', 'Nur ', 'Nurul ', 'Nuur '];
171
+
172
+ /**
173
+ * @see https://en.wikipedia.org/wiki/Malaysian_names#Haji_or_Hajjah
174
+ */
175
+ protected static $haji = ['', '', '', '', 'Haji ', 'Hj '];
176
+ protected static $hajjah = ['', '', '', '', 'Hajjah ', 'Hjh '];
177
+
178
+ /**
179
+ * @see https://en.wikipedia.org/wiki/Malay_styles_and_titles
180
+ */
181
+ protected static $titleMaleMalay = ['', '', '', '', '', '', 'Syed ', 'Wan ', 'Nik ', 'Che '];
182
+
183
+ /**
184
+ * Chinese family name or surname
185
+ *
186
+ * @see https://en.wikipedia.org/wiki/List_of_common_Chinese_surnames
187
+ * @see https://en.wikipedia.org/wiki/Hundred_Family_Surnames
188
+ */
189
+ protected static $lastNameChinese = [
190
+ 'An', 'Ang', 'Au', 'Au-Yong', 'Aun', 'Aw',
191
+ 'Bai', 'Ban', 'Bok', 'Bong',
192
+ 'Ch\'ng', 'Cha', 'Chai', 'Cham', 'Chan', 'Chang', 'Cheah', 'Cheam', 'Chee', 'Chen', 'Cheng', 'Cheok', 'Cheong', 'Chew', 'Chia', 'Chiam', 'Chiang',
193
+ 'Chieng', 'Chiew', 'Chin', 'Ching', 'Chong', 'Choong', 'Chou', 'Chow', 'Choy', 'Chu', 'Chua', 'Chuah', 'Chung',
194
+ 'Dee', 'Die', 'Ding',
195
+ 'Ee', 'En', 'Eng', 'Er', 'Ewe',
196
+ 'Fam', 'Fan', 'Fang', 'Feng', 'Foo', 'Foong',
197
+ 'Gan', 'Gao', 'Gee', 'Gnai', 'Go', 'Goh', 'Gong', 'Guan', 'Gun',
198
+ 'H\'ng', 'Hang', 'Hao', 'Haw', 'Hee', 'Heng', 'Hew', 'Hiew', 'Hii', 'Ho', 'Hoo', 'Hong', 'Hooi', 'Hui',
199
+ 'Jong',
200
+ 'Kam', 'Kang', 'Kar', 'Kee', 'Khoo', 'Khor', 'Khu', 'Kia', 'Kim', 'King', 'Ko', 'Koay', 'Koh', 'Kok', 'Kong', 'Kow', 'Kwok', 'Kwong', 'Ku', 'Kua', 'Kuan', 'Kum',
201
+ 'Lah', 'Lai', 'Lam', 'Lau', 'Law', 'Leau', 'Lee', 'Leng', 'Leong', 'Leow', 'Leung', 'Lew', 'Li', 'Lian', 'Liang', 'Liao', 'Liew', 'Lim', 'Ling', 'Liong', 'Liow',
202
+ 'Lo', 'Loh', 'Loi', 'Lok', 'Loke', 'Loo', 'Looi', 'Low', 'Lu', 'Luo', 'Lum', 'Lye',
203
+ 'Ma', 'Mah', 'Mak', 'Meng', 'Mok',
204
+ 'Neo', 'Neoh', 'New', 'Ng', 'Nga', 'Ngan', 'Ngeh', 'Ngeow', 'Ngo', 'Ngu', 'Nguei', 'Nii',
205
+ 'Ong', 'Oo', 'Ooi', 'Oon', 'Oong', 'OuYang',
206
+ 'P\'ng', 'Pang', 'Phang', 'Phoon', 'Phor', 'Phua', 'Phuah', 'Poh', 'Poon',
207
+ 'Qian', 'Qu', 'Quah', 'Quak', 'Quan', 'Quek',
208
+ 'Sam', 'Sau', 'Seah', 'See', 'Seetho', 'Seng', 'Seoh', 'Seow', 'Shee', 'Shi', 'Shum', 'Sia', 'Siah', 'Siao', 'Siauw', 'Siaw', 'Siew', 'Sim', 'Sin', 'Sio', 'Siong', 'Siow', 'Siu', 'Soh', 'Song', 'Soo', 'Soon', 'Su', 'Sum',
209
+ 'T\'ng', 'Tai', 'Tam', 'Tan', 'Tay', 'Tang', 'Tea', 'Tee', 'Teh', 'Tek', 'Teng', 'Teo', 'Teoh', 'Tern', 'Tew', 'Tey', 'Thang', 'Thew', 'Thong', 'Thoo', 'Thum', 'Thun', 'Ting', 'Tiong', 'Toh', 'Tong', 'Tse', 'Tung',
210
+ 'Vong',
211
+ 'Wah', 'Waiy', 'Wan', 'Wee', 'Wen', 'Wong', 'Woo', 'Woon', 'Wu',
212
+ 'Xia', 'Xiong', 'Xu',
213
+ 'Yam', 'Yao', 'Yiaw', 'Ying', 'Yip', 'Yang', 'Yap', 'Yau', 'Yee', 'Yen', 'Yeo', 'Yeoh', 'Yeong', 'Yeow', 'Yep', 'Yew', 'Yong', 'Yow', 'You', 'Yu', 'Yuan', 'Yuen',
214
+ 'Zhong', 'Zhang', 'Zheng', 'Zhu', 'Zu',
215
+ ];
216
+
217
+ /**
218
+ * Chinese second character
219
+ *
220
+ * @see https://en.wikipedia.org/wiki/Chinese_given_name
221
+ * @see https://en.wikipedia.org/wiki/List_of_Malaysians_of_Chinese_descent
222
+ * @see https://en.wikipedia.org/wiki/Category:Malaysian_people_of_Cantonese_descent
223
+ * @see https://en.wikipedia.org/wiki/Category:Malaysian_politicians_of_Chinese_descent
224
+ */
225
+ protected static $firstNameChinese = [
226
+ 'Ah', 'Ai', 'Aik', 'An', 'Ann', 'Ang', 'Au', 'Aun', 'Aw',
227
+ 'Bae', 'Bai', 'Bak', 'Ban', 'Bang', 'Bao', 'Bau', 'Bee', 'Beh', 'Bei', 'Ben', 'Beng', 'Bi', 'Bik', 'Bin', 'Bing', 'Bo', 'Bok', 'Bong', 'Boo', 'Boon', 'Bow', 'Bu', 'Bui', 'Buk', 'Bun', 'Bung',
228
+ 'Cai', 'Car', 'Caw', 'Cee', 'Ceh', 'Cek', 'Cen', 'Cer',
229
+ 'Cha', 'Chah', 'Chai', 'Chak', 'Cham', 'Chan', 'Chang', 'Chao', 'Chap', 'Char', 'Chat', 'Chau', 'Chaw',
230
+ 'Chea', 'Cheah', 'Cheam', 'Chean', 'Cheang', 'Chee', 'Cheen', 'Chek', 'Chen', 'Cheng', 'Cheok', 'Cheong', 'Cher', 'Chet', 'Chew',
231
+ 'Chi', 'Chia', 'Chih', 'Chik', 'Chin', 'Ching', 'Chio', 'Chit', 'Chiu',
232
+ 'Cho', 'Choi', 'Chok', 'Chon', 'Chong', 'Choo', 'Chooi', 'Choon', 'Choong', 'Chor', 'Chou', 'Chow', 'Choy',
233
+ 'Chu', 'Chua', 'Chuah', 'Chuan', 'Chua', 'Chui', 'Chuk', 'Chum', 'Chun', 'Chung', 'Chuo', 'Chye',
234
+ 'Da', 'Dai', 'Dan', 'Dang', 'Dao', 'Dau', 'Dee', 'Deng', 'Di', 'Dim', 'Din', 'Ding', 'Diong', 'Do', 'Dong', 'Doo', 'Dou', 'Du', 'Dui', 'Duo',
235
+ 'Ee', 'Eh', 'En', 'Enn', 'Er', 'Ern', 'Eu', 'Ew',
236
+ 'Fa', 'Fah', 'Fai', 'Fam', 'Fan', 'Fang', 'Fat', 'Fatt', 'Fay', 'Faye', 'Fee', 'Fei', 'Fen', 'Feng', 'Fern', 'Fey', 'Fok', 'Fon', 'Fong', 'Foo', 'Foon', 'Foong', 'Fu', 'Fui', 'Fuk', 'Fun', 'Fung',
237
+ 'Gai', 'Gak', 'Gam', 'Gan', 'Gao', 'Gau', 'Gee', 'Gek', 'Geng', 'Gi', 'Giap', 'Gin', 'Git', 'Go', 'Goh', 'Gok', 'Gon', 'Gong', 'Goo', 'Goon', 'Gu', 'Gui', 'Guk', 'Gun', 'Gung', 'Gunn',
238
+ 'Ha', 'Haa', 'Hah', 'Hai', 'Han', 'Hang', 'Hao', 'Har', 'Haw', 'He', 'Hee', 'Hei', 'Hen', 'Heng', 'Heong', 'Her', 'Hew', 'Hi', 'Hii', 'Hin', 'Hing', 'Hiong', 'Hiu',
239
+ 'Ho', 'Hoe', 'Hoi', 'Hok', 'Hom', 'Hon', 'Hong', 'Hoo', 'Hooi', 'Hook', 'Hoon', 'Hoong', 'Hor', 'Hou', 'How', 'Hoy', 'Hu', 'Hua', 'Huan', 'Huang', 'Hue', 'Hui', 'Hun', 'Hung', 'Huo', 'Hup',
240
+ 'Jan', 'Jang', 'Jao', 'Jee', 'Jei', 'Jen', 'Jeng', 'Jeong', 'Jer', 'Jet', 'Jett', 'Jeu', 'Ji', 'Jia', 'Jian', 'Jiang', 'Jie', 'Jien', 'Jiet', 'Jim', 'Jin', 'Jing', 'Jio', 'Jiong', 'Jit', 'Jiu',
241
+ 'Jo', 'Joe', 'Jong', 'Joo', 'Joon', 'Joong', 'Joy', 'Ju', 'Jun', 'Jung', 'Jye',
242
+ 'Ka', 'Kaa', 'Kah', 'Kai', 'Kak', 'Kam', 'Kan', 'Kang', 'Kao', 'Kap', 'Kar', 'Kat', 'Kau', 'Kaw', 'Kay', 'Ke', 'Kean', 'Keang', 'Keat', 'Kee', 'Kei', 'Kek', 'Ken', 'Keng', 'Ker', 'Keu', 'Kew', 'Key',
243
+ 'Kha', 'Khai', 'Khan', 'Khang', 'Khar', 'Khaw', 'Khay', 'Khean', 'Kheang', 'Khee', 'Khi', 'Khia', 'Khian', 'Khiang', 'Kho', 'Khoh', 'Khoi', 'Khoo', 'Khor', 'Khu', 'Khum', 'Khung',
244
+ 'Ki', 'Kia', 'Kian', 'Kiang', 'Kiap', 'Kiat', 'Kien', 'Kiet', 'Kim', 'Kin', 'King', 'Kit', 'Ko', 'Koe', 'Koh', 'Koi', 'Kok', 'Kong', 'Koo', 'Koong', 'Koor', 'Kor', 'Kou', 'Kow', 'Koy',
245
+ 'Ku', 'Kua', 'Kuang', 'Kui', 'Kum', 'Kun', 'Kung', 'Kuo', 'Kuong', 'Kuu',
246
+ 'La', 'Lai', 'Lak', 'Lam', 'Lan', 'Lang', 'Lao', 'Lap', 'Lar', 'Lat', 'Lau', 'Law', 'Lay',
247
+ 'Le', 'Lea', 'Lean', 'Leang', 'Leat', 'Lee', 'Leen', 'Leet', 'Lei', 'Lein', 'Leik', 'Leiu', 'Lek', 'Len', 'Leng', 'Leon', 'Leong', 'Leow', 'Ler', 'Leu', 'Leung', 'Lew', 'Lex', 'Ley',
248
+ 'Li', 'Liah', 'Lian', 'Liang', 'Liao', 'Liat', 'Liau', 'Liaw', 'Lie', 'Liek', 'Liem', 'Lien', 'Liet', 'Lieu', 'Liew', 'Lih', 'Lik', 'Lim', 'Lin', 'Ling', 'Lio', 'Lion', 'Liong', 'Liow', 'Lip', 'Lit', 'Liu',
249
+ 'Lo', 'Loh', 'Loi', 'Lok', 'Long', 'Loo', 'Looi', 'Look', 'Loon', 'Loong', 'Lor', 'Lou', 'Low', 'Loy',
250
+ 'Lu', 'Lua', 'Lui', 'Luk', 'Lum', 'Lun', 'Lung', 'Luo', 'Lup', 'Luu',
251
+ 'Ma', 'Mae', 'Mag', 'Mah', 'Mai', 'Mak', 'Man', 'Mang', 'Mao', 'Mar', 'Mat', 'Mau', 'Maw', 'May', 'Me', 'Mea', 'Mee', 'Meg', 'Meh', 'Mei', 'Mek', 'Mel', 'Men', 'Meu', 'Mew',
252
+ 'Mi', 'Mie', 'Miin', 'Miing', 'Min', 'Ming', 'Miu', 'Mo', 'Moh', 'Moi', 'Mok', 'Mon', 'Mong', 'Moo', 'Moon', 'Moong', 'Mou', 'Mow', 'Moy', 'Mu', 'Mua', 'Mui', 'Mum', 'Mun', 'Muu',
253
+ 'Na', 'Naa', 'Nah', 'Nai', 'Nam', 'Nan', 'Nao', 'Nau', 'Nee', 'Nei', 'Neng', 'Neo', 'Neu', 'New', 'Nga', 'Ngah', 'Ngai', 'Ngan', 'Ngao', 'Ngau', 'Ngaw', 'Ngo', 'Ngu', 'Ni', 'Nian', 'Niang', 'Niao', 'Niau', 'Nien', 'Nik', 'Nin', 'Niu', 'Nong', 'Nyet',
254
+ 'Oh', 'Oi', 'Ong', 'Onn', 'Oo', 'Ooi',
255
+ 'Pah', 'Pai', 'Pak', 'Pam', 'Pan', 'Pang', 'Pao', 'Pat', 'Pau', 'Paw', 'Pay', 'Peh', 'Pei', 'Peik', 'Pek', 'Pen', 'Peng', 'Pey',
256
+ 'Phang', 'Pheng', 'Phong', 'Pik', 'Pin', 'Ping', 'Po', 'Poh', 'Pok', 'Pom', 'Pong', 'Pooi', 'Pou', 'Pow', 'Pu', 'Pua', 'Puah', 'Pui', 'Pun',
257
+ 'Qi', 'Qin', 'Qing', 'Qiu', 'Qu', 'Quan', 'Quay', 'Quen', 'Qui', 'Quek', 'Quok',
258
+ 'Rei', 'Ren', 'Rin', 'Ring', 'Rinn', 'Ron', 'Rong', 'Rou', 'Ru', 'Rui', 'Ruo',
259
+ 'Sai', 'Sam', 'San', 'Sang', 'Say', 'Sha', 'Shak', 'Sham', 'Shan', 'Shang', 'Shao', 'Shar', 'Shau', 'Shaw', 'Shay', 'She', 'Shea', 'Shee', 'Shei', 'Shek', 'Shen', 'Sher', 'Shew', 'Shey', 'Shi', 'Shia', 'Shian', 'Shiang', 'Shiao', 'Shie', 'Shih', 'Shik', 'Shim', 'Shin', 'Shing', 'Shio', 'Shiu',
260
+ 'Sho', 'Shok', 'Shong', 'Shoo', 'Shou', 'Show', 'Shu', 'Shui', 'Shuk', 'Shum', 'Shun', 'Shung', 'Shuo', 'Si', 'Sia', 'Siah', 'Siak', 'Siam', 'Sian', 'Siang', 'Siao', 'Siau', 'Siaw', 'Sien', 'Sieu', 'Siew', 'Sih', 'Sik', 'Sim', 'Sin', 'Sing', 'Sio', 'Siong', 'Siou', 'Siow', 'Sit', 'Siu',
261
+ 'So', 'Soh', 'Soi', 'Sok', 'Son', 'Song', 'Soo', 'Soon', 'Soong', 'Sou', 'Sow', 'Su', 'Suan', 'Suang', 'Sue', 'Suen', 'Sui', 'Suk', 'Sum', 'Sun', 'Sung', 'Suo',
262
+ 'Ta', 'Tai', 'Tak', 'Tam', 'Tan', 'Tang', 'Tao', 'Tar', 'Tat', 'Tatt', 'Tau', 'Tay', 'Tea', 'Teak', 'Tean', 'Tee', 'Teh', 'Tei', 'Tek', 'Ten', 'Teng', 'Teo', 'Teoh', 'Ter', 'Tet', 'Teu', 'Tew', 'Tey',
263
+ 'Tha', 'Thai', 'Tham', 'Thang', 'Thau', 'Thay', 'Thee', 'Theo', 'Ther', 'Thew', 'They', 'Thia', 'Thian', 'Thien', 'Tho', 'Thok', 'Thong', 'Thoo', 'Thor', 'Thou', 'Thu', 'Thuk', 'Thum', 'Thung', 'Thur', 'Ti', 'Tia', 'Tiah', 'Tiak', 'Tiam', 'Tian', 'Tiang', 'Tiek', 'Tien', 'Tik', 'Tim', 'Tin', 'Ting', 'Tio', 'Tiong', 'Tiu',
264
+ 'To', 'Toh', 'Tok', 'Tong', 'Too', 'Tor', 'Tou', 'Tow', 'Tu', 'Tuk', 'Tung',
265
+ 'Ung',
266
+ 'Vin', 'Von', 'Voon',
267
+ 'Wa', 'Wah', 'Wai', 'Wan', 'Wang', 'Way', 'Wee', 'Wei', 'Wen', 'Weng', 'Wey', 'Whay', 'Whey', 'Wi', 'Win', 'Wing', 'Wo', 'Woh', 'Woi', 'Wok', 'Won', 'Wong', 'Woo', 'Woon', 'Wu', 'Wui',
268
+ 'Xi', 'Xia', 'Xiah', 'Xian', 'Xiang', 'Xiao', 'Xiau', 'Xie', 'Xin', 'Xing', 'Xiong', 'Xiu', 'Xu', 'Xun',
269
+ 'Yam', 'Yan', 'Yang', 'Yao', 'Yat', 'Yatt', 'Yau', 'Yaw', 'Ye', 'Yee', 'Yen', 'Yeng', 'Yeo', 'Yeoh', 'Yeong', 'Yep', 'Yet', 'Yeu', 'Yew', 'Yi', 'Yih', 'Yii', 'Yik', 'Yin', 'Ying', 'Yip', 'Yit', 'Yo', 'Yok', 'Yon', 'Yong', 'Yoo', 'You', 'Yow', 'Yu', 'Yuan', 'Yue', 'Yuen', 'Yuet', 'Yuk', 'Yun', 'Yung', 'Yup', 'Yut', 'Yutt',
270
+ 'Za', 'Zai', 'Zang', 'Zao', 'Zau', 'Zea', 'Zeah', 'Zed', 'Zee', 'Zen', 'Zeng', 'Zeo', 'Zet',
271
+ 'Zha', 'Zhai', 'Zhan', 'Zhang', 'Zhao', 'Zhau', 'Zhee', 'Zhen', 'Zheng', 'Zhet', 'Zhi', 'Zhong', 'Zhu', 'Zhung',
272
+ 'Zi', 'Zia', 'Ziah', 'Ziak', 'Zian', 'Ziang', 'Ziao', 'Ziau', 'Zit', 'Zo', 'Zoe', 'Zou', 'Zu', 'Zui', 'Zuk', 'Zung',
273
+ ];
274
+
275
+ /**
276
+ * Chinese male third character
277
+ *
278
+ * @see https://en.wikipedia.org/wiki/Chinese_given_name
279
+ * @see https://en.wikipedia.org/wiki/List_of_Malaysians_of_Chinese_descent
280
+ * @see https://en.wikipedia.org/wiki/Category:Malaysian_people_of_Cantonese_descent
281
+ * @see https://en.wikipedia.org/wiki/Category:Malaysian_politicians_of_Chinese_descent
282
+ */
283
+ protected static $firstNameMaleChinese = [
284
+ 'Aik', 'Ang', 'Au', 'Aun',
285
+ 'Bak', 'Ban', 'Bang', 'Bao', 'Bau', 'Ben', 'Beng', 'Bing', 'Bok', 'Bong', 'Boo', 'Boon', 'Bow', 'Buk', 'Bun', 'Bung',
286
+ 'Chai', 'Chak', 'Chan', 'Chang', 'Chao', 'Chap', 'Chat', 'Chau', 'Chaw',
287
+ 'Cheah', 'Chee', 'Cheen', 'Chek', 'Chen', 'Cheong', 'Cher', 'Chet', 'Chew',
288
+ 'Chia', 'Chih', 'Chik', 'Chin', 'Ching', 'Chit', 'Chiu',
289
+ 'Cho', 'Choi', 'Chok', 'Chon', 'Chong', 'Choo', 'Chooi', 'Choon', 'Choong', 'Chor', 'Chou', 'Chow', 'Choy',
290
+ 'Chua', 'Chuah', 'Chuan', 'Chua', 'Chui', 'Chuk', 'Chum', 'Chun', 'Chung', 'Chuo', 'Chye',
291
+ 'Dan', 'Dao', 'Dau', 'Dee', 'Deng', 'Di', 'Dim', 'Din', 'Diong', 'Dong', 'Dou', 'Du', 'Dui', 'Duo',
292
+ 'Eu', 'Ew',
293
+ 'Fai', 'Fam', 'Fat', 'Fatt', 'Fee', 'Feng', 'Fok', 'Fon', 'Fong', 'Foo', 'Foon', 'Foong', 'Fu', 'Fui', 'Fuk',
294
+ 'Gai', 'Gak', 'Gam', 'Gan', 'Gao', 'Gau', 'Gee', 'Gek', 'Geng', 'Giap', 'Gin', 'Git', 'Go', 'Goh', 'Gok', 'Gon', 'Gong', 'Gu', 'Guk', 'Gun', 'Gung', 'Gunn',
295
+ 'Hai', 'Han', 'Hang', 'Har', 'Haw', 'Hei', 'Hen', 'Heng', 'Hing',
296
+ 'Ho', 'Hoe', 'Hoi', 'Hok', 'Hom', 'Hon', 'Hong', 'Hoo', 'Hook', 'Hoon', 'Hoong', 'Hor', 'Hou', 'How', 'Hoy', 'Hu', 'Huan', 'Huang', 'Hun', 'Hung', 'Huo', 'Hup',
297
+ 'Jeong', 'Jer', 'Jet', 'Jett', 'Jeu', 'Ji', 'Jian', 'Jiang', 'Jiet', 'Jim', 'Jin', 'Jio', 'Jiong', 'Jit', 'Jiu', 'Jo', 'Joe', 'Joong', 'Jung', 'Jye',
298
+ 'Kai', 'Kan', 'Kang', 'Kao', 'Kap', 'Kau', 'Kaw', 'Kean', 'Keang', 'Keat', 'Kek', 'Ken', 'Keng', 'Ker', 'Keu', 'Kew',
299
+ 'Khai', 'Khan', 'Khang', 'Khaw', 'Khean', 'Kheang', 'Khia', 'Khian', 'Khiang', 'Kho', 'Khoh', 'Khoi', 'Khoo', 'Khu', 'Khung',
300
+ 'Kia', 'Kian', 'Kiang', 'Kiap', 'Kiat', 'Kien', 'Kiet', 'Kin', 'King', 'Kit', 'Ko', 'Koi', 'Kok', 'Kong', 'Koo', 'Koong', 'Koor', 'Kou', 'Kow', 'Koy',
301
+ 'Ku', 'Kuang', 'Kui', 'Kun', 'Kung', 'Kuo', 'Kuong', 'Kuu',
302
+ 'Lak', 'Lam', 'Lang', 'Lao', 'Lap', 'Lar', 'Lat', 'Lau', 'Law',
303
+ 'Lean', 'Leang', 'Leat', 'Lee', 'Leet', 'Leik', 'Leiu', 'Lek', 'Len', 'Leon', 'Leong', 'Leow', 'Leung', 'Lew', 'Lex',
304
+ 'Liang', 'Liao', 'Liat', 'Liau', 'Liaw', 'Liek', 'Liem', 'Liet', 'Lieu', 'Liew', 'Lih', 'Lik', 'Lim', 'Lio', 'Lion', 'Liong', 'Liow', 'Lip', 'Lit', 'Liu',
305
+ 'Lo', 'Loh', 'Loi', 'Lok', 'Long', 'Loo', 'Looi', 'Look', 'Loon', 'Loong', 'Lor', 'Lou', 'Low', 'Loy',
306
+ 'Lu', 'Luk', 'Lum', 'Lun', 'Lung', 'Lup',
307
+ 'Man', 'Mang', 'Mao', 'Mar', 'Mat', 'Mau', 'Maw', 'Mek', 'Men',
308
+ 'Mo', 'Mok', 'Mon', 'Mong', 'Moong', 'Mou', 'Mow', 'Mu',
309
+ 'Nam', 'Nan', 'Nau', 'Neng', 'Neo', 'Neu', 'Ngai', 'Ngao', 'Ngau', 'Ngaw', 'Ngo', 'Niao', 'Niau', 'Nien', 'Nik', 'Niu', 'Nyet',
310
+ 'Oh', 'Oi', 'Ong', 'Onn', 'Oo',
311
+ 'Pah', 'Pai', 'Pak', 'Pang', 'Pao', 'Pat', 'Pau', 'Paw', 'Pen', 'Peng',
312
+ 'Phang', 'Pheng', 'Phong', 'Pok', 'Pou', 'Pow', 'Pu', 'Pua', 'Puah',
313
+ 'Quan', 'Quen', 'Quek', 'Quok',
314
+ 'Ren', 'Ron',
315
+ 'Sai', 'Sam', 'San', 'Sang', 'Shak', 'Sham', 'Shang', 'Shao', 'Shau', 'Shaw', 'Shek', 'Shen', 'Shiang', 'Shih', 'Shik', 'Shim', 'Shing', 'Shio', 'Shiu',
316
+ 'Sho', 'Shong', 'Shoo', 'Shou', 'Show', 'Shun', 'Shung', 'Shuo', 'Siam', 'Siang', 'Siau', 'Siaw', 'Sieu', 'Sih', 'Sik', 'Sing', 'Sio', 'Siong', 'Siou', 'Siow', 'Sit',
317
+ 'Son', 'Song', 'Soon', 'Soong', 'Sou', 'Sow', 'Suang', 'Sum', 'Sung', 'Suo',
318
+ 'Ta', 'Tak', 'Tan', 'Tang', 'Tao', 'Tar', 'Tat', 'Tatt', 'Tau', 'Teak', 'Tean', 'Tee', 'Teh', 'Tei', 'Tek', 'Ten', 'Teng', 'Teo', 'Teoh', 'Ter', 'Tet', 'Teu', 'Tew',
319
+ 'Tha', 'Thai', 'Tham', 'Thang', 'Thau', 'Thay', 'Thee', 'Theo', 'Ther', 'Thew', 'They', 'Thian', 'Thien', 'Tho', 'Thok', 'Thong', 'Thoo', 'Thor', 'Thou', 'Thu', 'Thuk', 'Thum', 'Thung', 'Thur', 'Tiak', 'Tiam', 'Tian', 'Tiang', 'Tiek', 'Tien', 'Tik', 'Tim', 'Tin', 'Tio', 'Tiong', 'Tiu',
320
+ 'To', 'Toh', 'Tok', 'Tong', 'Too', 'Tor', 'Tou', 'Tow', 'Tu', 'Tuk', 'Tung',
321
+ 'Ung',
322
+ 'Vin', 'Von',
323
+ 'Wa', 'Wah', 'Wai', 'Wang', 'Way', 'Wee', 'Wei', 'Weng', 'Whay', 'Win', 'Wing', 'Wo', 'Woh', 'Woi', 'Wok', 'Won', 'Wong', 'Woo', 'Wu', 'Wui',
324
+ 'Xiang', 'Xiong',
325
+ 'Yang', 'Yao', 'Yat', 'Yatt', 'Yau', 'Yaw', 'Ye', 'Yeng', 'Yeo', 'Yeoh', 'Yeong', 'Yet', 'Yih', 'Yii', 'Yik', 'Yip', 'Yit', 'Yo', 'Yok', 'Yon', 'Yong', 'Yoo', 'You', 'Yow', 'Yu', 'Yuen', 'Yuet', 'Yuk', 'Yut', 'Yutt',
326
+ 'Za', 'Zai', 'Zang', 'Zao', 'Zau', 'Zea', 'Zeah', 'Zed', 'Zee', 'Zen', 'Zeng', 'Zeo', 'Zet',
327
+ 'Zha', 'Zhai', 'Zhan', 'Zhang', 'Zhao', 'Zhau', 'Zhee', 'Zheng', 'Zhet', 'Zhong', 'Zhu', 'Zhung',
328
+ 'Ziak', 'Zian', 'Ziang', 'Ziao', 'Ziau', 'Zit', 'Zuk', 'Zung',
329
+ ];
330
+
331
+ /**
332
+ * Chinese female third character
333
+ *
334
+ * @see https://en.wikipedia.org/wiki/Chinese_given_name
335
+ * @see https://en.wikipedia.org/wiki/List_of_Malaysians_of_Chinese_descent
336
+ * @see https://en.wikipedia.org/wiki/Category:Malaysian_people_of_Cantonese_descent
337
+ * @see https://en.wikipedia.org/wiki/Category:Malaysian_politicians_of_Chinese_descent
338
+ */
339
+ protected static $firstNameFemaleChinese = [
340
+ 'Ai', 'An', 'Ann', 'Aw',
341
+ 'Bae', 'Bai', 'Bee', 'Beh', 'Bei', 'Bi', 'Bik', 'Bin', 'Bui',
342
+ 'Cai', 'Cee', 'Cen', 'Cham', 'Cheam', 'Chean', 'Cheang', 'Cheng', 'Cheok', 'Chi', 'Ching', 'Chio', 'Chu',
343
+ 'Dai', 'Dang', 'Ding', 'Do', 'Doo',
344
+ 'Ee', 'En', 'Enn', 'Er', 'Ern',
345
+ 'Fah', 'Fan', 'Fang', 'Fay', 'Faye', 'Fei', 'Fen', 'Fern', 'Fey', 'Fong', 'Fun', 'Fung',
346
+ 'Gi', 'Goo', 'Goon', 'Gui',
347
+ 'Ha', 'Haa', 'Hah', 'Hao', 'He', 'Hee', 'Heong', 'Her', 'Hew', 'Hi', 'Hii', 'Hin', 'Hiong', 'Hiu', 'Hooi', 'Hua', 'Hue', 'Hui',
348
+ 'Jan', 'Jang', 'Jao', 'Jee', 'Jei', 'Jen', 'Jeng', 'Jia', 'Jie', 'Jien', 'Jing', 'Jong', 'Joo', 'Joon', 'Joy', 'Ju', 'Jun',
349
+ 'Ka', 'Kaa', 'Kah', 'Kak', 'Kam', 'Kar', 'Kat', 'Kay', 'Ke', 'Kee', 'Kei', 'Key',
350
+ 'Kha', 'Khar', 'Khay', 'Khee', 'Khi', 'Khor', 'Khum',
351
+ 'Ki', 'Kim', 'Koe', 'Koh', 'Kor', 'Kum', 'Kua',
352
+ 'Lai', 'Lan', 'Lay',
353
+ 'Le', 'Lea', 'Leen', 'Lei', 'Lein', 'Leng', 'Ler', 'Leu', 'Ley',
354
+ 'Li', 'Liah', 'Lian', 'Lie', 'Lien', 'Lin', 'Ling',
355
+ 'Lua', 'Lui', 'Luo', 'Luu',
356
+ 'Ma', 'Mae', 'Mag', 'Mah', 'Mai', 'Mak', 'May', 'Me', 'Mea', 'Mee', 'Meg', 'Meh', 'Mei', 'Mel', 'Meu', 'Mew',
357
+ 'Mi', 'Mie', 'Miin', 'Miing', 'Min', 'Ming', 'Miu', 'Moh', 'Moi', 'Moo', 'Moon', 'Moy', 'Mua', 'Mui', 'Mum', 'Mun', 'Muu',
358
+ 'Na', 'Naa', 'Nah', 'Nai', 'Nao', 'Nee', 'Nei', 'New', 'Nga', 'Ngah', 'Ngan', 'Ngu', 'Ni', 'Nian', 'Niang', 'Nin', 'Nong',
359
+ 'Ooi',
360
+ 'Pam', 'Pan', 'Pay', 'Peh', 'Pei', 'Peik', 'Pek', 'Pey', 'Pik', 'Pin', 'Ping', 'Po', 'Poh', 'Pom', 'Pong', 'Pooi', 'Pui', 'Pun',
361
+ 'Qi', 'Qin', 'Qing', 'Qiu', 'Qu', 'Quay', 'Qui',
362
+ 'Rei', 'Rin', 'Ring', 'Rinn', 'Rong', 'Rou', 'Ru', 'Rui', 'Ruo',
363
+ 'Say', 'Sha', 'Shan', 'Shar', 'Shay', 'She', 'Shea', 'Shee', 'Shei', 'Sher', 'Shew', 'Shey', 'Shi', 'Shia', 'Shian', 'Shiao', 'Shie', 'Shin',
364
+ 'Shok', 'Shu', 'Shui', 'Shuk', 'Shum', 'Si', 'Sia', 'Siah', 'Siak', 'Sian', 'Siao', 'Sien', 'Siew', 'Sim', 'Sin', 'Siu',
365
+ 'So', 'Soh', 'Soi', 'Sok', 'Soo', 'Su', 'Suan', 'Sue', 'Suen', 'Sui', 'Suk', 'Sun',
366
+ 'Tai', 'Tam', 'Tay', 'Tea', 'Teng', 'Tey', 'Thia', 'Ti', 'Tia', 'Tiah', 'Ting',
367
+ 'Voon',
368
+ 'Wan', 'Wen', 'Wey', 'Whey', 'Wi', 'Woon',
369
+ 'Xi', 'Xia', 'Xiah', 'Xian', 'Xiao', 'Xiau', 'Xie', 'Xin', 'Xing', 'Xiu', 'Xu', 'Xun',
370
+ 'Yam', 'Yan', 'Yee', 'Yen', 'Yep', 'Yeu', 'Yew', 'Yi', 'Yin', 'Ying', 'Yong', 'Yuan', 'Yue', 'Yuen', 'Yun', 'Yung', 'Yup',
371
+ 'Zhen', 'Zhi', 'Zi', 'Zia', 'Ziah', 'Zo', 'Zoe', 'Zou', 'Zu', 'Zui',
372
+ ];
373
+
374
+ /**
375
+ * @see https://en.wikipedia.org/wiki/List_of_Malaysians_of_Chinese_descent
376
+ * @see https://en.wikipedia.org/wiki/Category:Malaysian_people_of_Cantonese_descent
377
+ * @see https://en.wikipedia.org/wiki/Category:Malaysian_people_of_Chaoshanese_descent
378
+ * @see https://en.wikipedia.org/wiki/Category:Malaysian_people_of_Chinese_descent
379
+ * @see https://en.wikipedia.org/wiki/Category:Malaysian_people_of_English_descent
380
+ * @see https://en.wikipedia.org/wiki/Category:Malaysian_people_of_Hakka_descent
381
+ * @see https://en.wikipedia.org/wiki/Category:Malaysian_people_of_Hockchew_descent
382
+ * @see https://en.wikipedia.org/wiki/Category:Malaysian_people_of_Hokkien_descent
383
+ * @see https://en.wikipedia.org/wiki/Category:Malaysian_people_of_Peranakan_descent
384
+ * @see https://en.wikipedia.org/wiki/Category:Malaysian_politicians_of_Chinese_descent
385
+ */
386
+ protected static $firstNameMaleChristian = [
387
+ 'Aaron', 'Addy', 'Adrian', 'Alex', 'Amos', 'Anthony',
388
+ 'Bernard', 'Billy',
389
+ 'Chris', 'Christopher', 'Colin',
390
+ 'Danell', 'Daniel', 'Danny', 'David', 'Douglas',
391
+ 'Eddie', 'Eddy', 'Edmund', 'Eric',
392
+ 'Francis', 'Frankie',
393
+ 'Gary', 'Gavin', 'George', 'Gregory',
394
+ 'Henry',
395
+ 'Isaac',
396
+ 'James', 'Jason', 'Jeff', 'Jeffrey', 'Jimmy', 'John', 'Jonathan', 'Josiah', 'Julian',
397
+ 'Kevin', 'Kris',
398
+ 'Mark', 'Martin', 'Mavin', 'Melvin', 'Michael',
399
+ 'Nathaniel', 'Nelson', 'Nicholas',
400
+ 'Peter', 'Philip',
401
+ 'Richard', 'Robert', 'Roger', 'Ronny', 'Rynn',
402
+ 'Shaun', 'Simon', 'Stephen', 'Steven',
403
+ 'Terry', 'Tony',
404
+ 'Victor', 'Vince', 'Vincent',
405
+ 'Welson', 'William', 'Willie',
406
+ ];
407
+ protected static $firstNameFemaleChristian = [
408
+ 'Alice', 'Alyssa', 'Amber', 'Amy', 'Andrea', 'Angelica', 'Angie', 'Apple', 'Aslina',
409
+ 'Bernice', 'Betty', 'Boey', 'Bonnie',
410
+ 'Caemen', 'Carey', 'Carmen', 'Carrie', 'Cindy',
411
+ 'Debbie',
412
+ 'Elaine', 'Elena',
413
+ 'Felixia', 'Fish', 'Freya',
414
+ 'Genervie', 'Gin',
415
+ 'Hannah', 'Heidi', 'Helena',
416
+ 'Janet', 'Jemie', 'Jess', 'Jesseca', 'Jessie', 'Joanna', 'Jolene', 'Joyce', 'Juliana',
417
+ 'Karen', 'Kathleen',
418
+ 'Lilian', 'Linda', 'Lydia', 'Lyndel',
419
+ 'Maria', 'Marilyn', 'Maya', 'Meeia', 'Melinda', 'Melissa', 'Michelle', 'Michele',
420
+ 'Nadia', 'Natalie', 'Nicole',
421
+ 'Penny',
422
+ 'Phyllis',
423
+ 'Quincy',
424
+ 'Rachel', 'Rena', 'Rose',
425
+ 'Samantha', 'Sarah', 'Sheena', 'Sherine', 'Shevon', 'Sonia', 'Stella',
426
+ 'Teresa', 'Tiffany', 'Tracy', 'Tricia',
427
+ 'Vera', 'Violet', 'Vivian', 'Vivien',
428
+ 'Yvonne',
429
+ ];
430
+
431
+ /**
432
+ * @see https://en.wikipedia.org/wiki/List_of_Malaysians_of_Indian_descent
433
+ * @see https://en.wikipedia.org/wiki/List_of_Malaysian_politicians_of_Indian_descent
434
+ * @see https://en.wikipedia.org/wiki/List_of_Malaysian_sportspeople_of_Indian_descent
435
+ * @see https://en.wikipedia.org/wiki/Tamil_Malaysians#Notable_people
436
+ */
437
+ protected static $initialIndian = [
438
+ 'B. ', 'B. C. ',
439
+ 'C. ',
440
+ 'D. ', 'D. R. ', 'D. S. ',
441
+ 'E. ',
442
+ 'G. ',
443
+ 'K. ', 'K. L. ', 'K. R.', 'K. S. ',
444
+ 'M. ', 'M. G. ', 'M. G. G. ', 'M. K. ',
445
+ 'N. ', 'N. K. ',
446
+ 'P. ',
447
+ 'R. ', 'R. G. ', 'R. S. ',
448
+ 'S. ', 'S. A. ',
449
+ 'T. ',
450
+ 'V. ', 'V. T. ',
451
+ ];
452
+
453
+ /**
454
+ * @see https://en.wikipedia.org/wiki/List_of_Malaysians_of_Indian_descent
455
+ * @see https://en.wikipedia.org/wiki/K._L._Devaser
456
+ * @see https://en.wikipedia.org/wiki/List_of_Malaysian_politicians_of_Indian_descent
457
+ * @see https://en.wikipedia.org/wiki/List_of_Malaysian_sportspeople_of_Indian_descent
458
+ * @see https://en.wikipedia.org/wiki/Tamil_Malaysians#Notable_people
459
+ */
460
+ protected static $firstNameMaleIndian = [
461
+ 'Anbil', 'Ananda', 'Arasu', 'Arul', 'Arulraj', 'Arumugam', 'Ash',
462
+ 'Babu', 'Balachandra', 'Balasubramaniam', 'Balden', 'Baljit', 'Baltej', 'Bishan',
463
+ 'Canagasabai', 'Cecil', 'Chakra', 'Chanturu',
464
+ 'Depan', 'Darma Raja', 'Devaki', 'Devamany', 'Devan', 'Devasagayam', 'Diljit', 'Doraisingam',
465
+ 'Ganesh', 'Ganga', 'Gengadharan', 'Gobalakrishnan', 'Gobind', 'Gopinathan', 'Govindasamy', 'Gunasekaran', 'Gurmit',
466
+ 'Haran', 'Harikrish', 'Hiresh', 'Huzir',
467
+ 'Indi',
468
+ 'Jagdeep', 'Janil', 'Jeevandran', 'Jegathesan', 'Jeyakumar', 'Jomo Kwame',
469
+ 'Kamal', 'Kamalanathan', 'Kanagaraj', 'Kandasamy', 'Kandiah', 'Karamjit', 'Karnail', 'Karpal', 'Kasi', 'Kasinather', 'Kavi', 'Kavidhai', 'Kishor', 'Krishen', 'Krishnamoorthy', 'Krishnamurthi', 'Krishnasamy', 'Kulasegaran', 'Kumar', 'Kumutha', 'Kuhan', 'Kunanlan', 'Kundan Lal', 'Kunjiraman',
470
+ 'Loganathan',
471
+ 'Magendran', 'Maha', 'Mahadev', 'Mahaletchumy', 'Mahathir', 'Maniam', 'Manickavasagam', 'Manikavasagam', 'Manjit', 'Manogaran', 'Manoharan', 'Manrick', 'Marimuthu', 'Merican', 'Mogan', 'Mohanadas', 'Munshi', 'Murugayan', 'Murugesan', 'Mutahir',
472
+ 'Nadarajan', 'Nandakumar', 'Nanthakumar', 'Naraina', 'Nethaji', 'Ninian',
473
+ 'Padathan', 'Palanivel', 'Param', 'Paramjit', 'Pavandeep', 'Praboo', 'Pragash', 'Premnath', 'Prema', 'Pria', 'Puvaneswaran',
474
+ 'Rabinder', 'Rajagobal', 'Rajesh', 'Rajeswary', 'Rajiv', 'Rakesh', 'Rama', 'Ramasamy', 'Ramesh', 'Ramkarpal', 'Ramon', 'Rattan', 'Ravichandran', 'Rehman', 'Renuga', 'Rohan', 'Rueben',
475
+ 'Saarvindran', 'Samy', 'Sanisvara', 'Sanjay', 'Santhara', 'Santokh', 'Sarath', 'Saravanan', 'Sarjit', 'Sasikumar', 'Satwant', 'Selvakkumar', 'Selvaraju', 'Serbegeth', 'Shan', 'Shankar', 'Shanmugam', 'Sittampalam', 'Sivakumar', 'Sivarasa', 'Solamalay', 'Sothinathan', 'Subramaniam', 'Sukhjit', 'Sumisha', 'Surendran', 'Suresh', 'Suriaprakash',
476
+ 'Tatparanandam', 'Tanasekharan', 'Thamboosamy', 'Thamil', 'Thayaparan', 'Thirumurugan', 'Thirunavuk',
477
+ 'Uthayakumar',
478
+ 'Varatharaju', 'Veenod', 'Veerappan', 'Veerappen', 'Veloo', 'Vasudevan', 'Vellu', 'Viatilingam', 'Vijandren', 'Vinod', 'Vishnu', 'Vivasvan',
479
+ 'Waythamoorthy', 'Weeratunge',
480
+ 'Yosri', 'Yugendran',
481
+ ];
482
+
483
+ /**
484
+ * @see https://en.wikipedia.org/wiki/List_of_Malaysians_of_Indian_descent
485
+ * @see https://en.wikipedia.org/wiki/List_of_Malaysian_politicians_of_Indian_descent
486
+ * @see https://en.wikipedia.org/wiki/List_of_Malaysian_sportspeople_of_Indian_descent
487
+ * @see https://en.wikipedia.org/wiki/Tamil_Malaysians#Notable_people
488
+ */
489
+ protected static $firstNameFemaleIndian = [
490
+ 'Ambiga', 'Anaika', 'Anand', 'Anita', 'Asha', 'Athi',
491
+ 'Gheetha',
492
+ 'Haanii',
493
+ 'Janaky',
494
+ 'Kasthuriraani', 'Kavita', 'Kiran',
495
+ 'Melinder',
496
+ 'Nithya',
497
+ 'Prashanthini', 'Preeta', 'Priya', 'Pushpa',
498
+ 'Ramya', 'Rani', 'Rasammah', 'Renuga',
499
+ 'Sangeeta', 'Sannatasah', 'Saraswati', 'Shamini', 'Shanthi', 'Shanti', 'Shoba', 'Shuba', 'Siva', 'Sutheaswari', 'Swarna', 'Sybil',
500
+ 'Thanuja', 'Theiviya', 'Thripura',
501
+ 'Umasundari', 'Uthaya',
502
+ 'Vijaya',
503
+ 'Zabrina',
504
+ ];
505
+
506
+ /**
507
+ * @see https://en.wikipedia.org/wiki/List_of_Malaysians_of_Indian_descent
508
+ * @see https://en.wikipedia.org/wiki/List_of_Malaysian_politicians_of_Indian_descent
509
+ * @see https://en.wikipedia.org/wiki/List_of_Malaysian_sportspeople_of_Indian_descent
510
+ * @see https://en.wikipedia.org/wiki/Tamil_Malaysians#Notable_people
511
+ */
512
+ protected static $lastNameIndian = [
513
+ 'Alagaratnam', 'Ambumamee', 'Ammasee', 'Ampalavanar', 'Ananthan', 'Arivanathan', 'Arujunan', 'Arumugam', 'Asirvatham', 'Autherapady',
514
+ 'Balakrishnan', 'Balan', 'Bamadhaj', 'Bastianpillai', 'Bhullar', 'Bhupalan',
515
+ 'Chandran', 'Cumaraswamy', 'Chelvan', 'Chengara',
516
+ 'Dairiam', 'Davies', 'Devaraj', 'Devandran', 'Devaser', 'Dhaliwal', 'Dharmalingam', 'Dhillon',
517
+ 'Elavarasan',
518
+ 'Fernandes', 'Fernandez',
519
+ 'Ganapathy', 'Ganesan', 'Gnanalingam', 'Goundar', 'Govindasamy', 'Gunalan', 'Gurusamy',
520
+ 'Haridas',
521
+ 'Iyer',
522
+ 'Jaidka', 'Jassal', 'Jayaram', 'Jayaseelan', 'Jayawardene', 'Jeevananthan',
523
+ 'Kaliappan', 'Kamalesvaran', 'Kandasamy', 'Karathu', 'Kathigasu', 'Kathiripillai', 'Kaveri', 'Kayveas', 'Krishnan', 'Krishnasamy', 'Kumar', 'Kumaresan', 'Kumari', 'Kunalan', 'Kundargal', 'Kuppusamy',
524
+ 'Lakshmi', 'Linggam', 'Lourdenadin',
525
+ 'Madhavan', 'Mahathevan', 'Malayalam', 'Manicka', 'Manikavasagam', 'Marimuthu', 'Menon', 'Mohinder', 'Moorthy', 'Mudukasan', 'Muniandy', 'Munisamy', 'Munusamy', 'Murugan', 'Murugeson',
526
+ 'Nadarajah', 'Nagapan', 'Nagappan', 'Nagaraj', 'Nagarajan', 'Nahappan', 'Naidu', 'Nair', 'Namasivayam', 'Narayan', 'Navaratnam', 'Navarednam', 'Nayar', 'Nijhar',
527
+ 'Pakiam', 'Palaniappan', 'Palanisamy', 'Panchanathan', 'Pandithan', 'Parthiban', 'Pathmanaban', 'Patto', 'Pereira', 'Perera', 'Periasamy', 'Perumal', 'Pillai', 'Pillay', 'Ponnusamy', 'Prakash', 'Puaneswaran', 'Purushothaman', 'Puspanathan', 'Puthucheary',
528
+ 'Raj Kaur', 'Rajakumar', 'Rajan', 'Rajannaidu', 'Rajendra', 'Rajendran', 'Rajhans', 'Raju', 'Ramachandra', 'Ramadas', 'Ramadass', 'Ramanathan', 'Ramani', 'Ramasamy', 'Raj', 'Rao', 'Rasiah', 'Ratnam', 'Ravindran', 'Rayer', 'Retinam', 'Rishyakaran', 'Robbat',
529
+ 'Sachithanandan', 'Sakadivan', 'Sakwati', 'Samarasan', 'Sambanthan', 'Sandrakasi', 'Sangalimuthu', 'Saniru', 'Sankar', 'Saravanan', 'Sathasivam', 'Sathianathan', 'Saunthararajah', 'Seenivasagam', 'Sekhar', 'Sellan', 'Selvanayagam', 'Selvarajoo', 'Selvaratnam', 'Shanmuganathan', 'Shanmugaratnam', 'Shekhar', 'Shivraj', 'Shree', 'Sidhu', 'Sinnandavar', 'Sinnathamby', 'Sinnathuray', 'Sivanesan', 'Singh', 'Sivalingam', 'Sivanesan', 'Shankar', 'Sodhy', 'Somasundram', 'Sooryapparad', 'Soti', 'Sreenevasan', 'Subramaniam', 'Sundram', 'Suppiah', 'Surendran',
530
+ 'Thajudeen', 'Thalalla', 'Thambu', 'Thanabalasingam', 'Thanenthiran', 'Theseira', 'Thevandran', 'Thiru', 'Thirunavukarasu', 'Thivy', 'Thuraisingham', 'Tikaram',
531
+ 'Vadaketh', 'Vadiveloo', 'Vanajah', 'Varman', 'Vasudevan', 'Veeran', 'Veerasamy', 'Veerasenan', 'Veerathan', 'Veetil', 'Velappan', 'Vello', 'Vengatarakoo', 'Vethamuthu', 'Viswalingam',
532
+ 'Xavier',
533
+ ];
534
+
535
+ /**
536
+ * @see https://en.wikipedia.org/wiki/Malay_styles_and_titles
537
+ */
538
+ protected static $titleMale = ['En.', 'Dr.', 'Prof.', 'Datuk', 'Dato\'', 'Datuk Seri', 'Dato\' Sri', 'Tan Sri', 'Tun'];
539
+ protected static $titleFemale = ['Pn.', 'Cik', 'Dr.', 'Prof.', 'Datin', 'Datin Paduka', 'Datin Paduka Seri', 'Puan Sri', 'Toh Puan'];
540
+
541
+ /**
542
+ * Return a Malay male first name
543
+ *
544
+ * @example 'Ahmad'
545
+ *
546
+ * @return string
547
+ */
548
+ public static function firstNameMaleMalay()
549
+ {
550
+ return static::randomElement(static::$firstNameMaleMalay);
551
+ }
552
+
553
+ /**
554
+ * Return a Malay female first name
555
+ *
556
+ * @example 'Adibah'
557
+ *
558
+ * @return string
559
+ */
560
+ public static function firstNameFemaleMalay()
561
+ {
562
+ return static::randomElement(static::$firstNameFemaleMalay);
563
+ }
564
+
565
+ /**
566
+ * Return a Malay last name
567
+ *
568
+ * @example 'Abdullah'
569
+ *
570
+ * @return string
571
+ */
572
+ public function lastNameMalay()
573
+ {
574
+ return static::randomElement(static::$lastNameMalay);
575
+ }
576
+
577
+ /**
578
+ * Return a Malay male 'Muhammad' name
579
+ *
580
+ * @example 'Muhammad'
581
+ *
582
+ * @return string
583
+ */
584
+ public static function muhammadName()
585
+ {
586
+ return static::randomElement(static::$muhammadName);
587
+ }
588
+
589
+ /**
590
+ * Return a Malay female 'Nur' name
591
+ *
592
+ * @example 'Nur'
593
+ *
594
+ * @return string
595
+ */
596
+ public static function nurName()
597
+ {
598
+ return static::randomElement(static::$nurName);
599
+ }
600
+
601
+ /**
602
+ * Return a Malay male 'Haji' title
603
+ *
604
+ * @example 'Haji'
605
+ *
606
+ * @return string
607
+ */
608
+ public static function haji()
609
+ {
610
+ return static::randomElement(static::$haji);
611
+ }
612
+
613
+ /**
614
+ * Return a Malay female 'Hajjah' title
615
+ *
616
+ * @example 'Hajjah'
617
+ *
618
+ * @return string
619
+ */
620
+ public static function hajjah()
621
+ {
622
+ return static::randomElement(static::$hajjah);
623
+ }
624
+
625
+ /**
626
+ * Return a Malay title
627
+ *
628
+ * @example 'Syed'
629
+ *
630
+ * @return string
631
+ */
632
+ public static function titleMaleMalay()
633
+ {
634
+ return static::randomElement(static::$titleMaleMalay);
635
+ }
636
+
637
+ /**
638
+ * Return a Chinese last name
639
+ *
640
+ * @example 'Lim'
641
+ *
642
+ * @return string
643
+ */
644
+ public static function lastNameChinese()
645
+ {
646
+ return static::randomElement(static::$lastNameChinese);
647
+ }
648
+
649
+ /**
650
+ * Return a Chinese male first name
651
+ *
652
+ * @example 'Goh Tong'
653
+ *
654
+ * @return string
655
+ */
656
+ public static function firstNameMaleChinese()
657
+ {
658
+ return static::randomElement(static::$firstNameChinese) . ' ' . static::randomElement(static::$firstNameMaleChinese);
659
+ }
660
+
661
+ /**
662
+ * Return a Chinese female first name
663
+ *
664
+ * @example 'Mew Choo'
665
+ *
666
+ * @return string
667
+ */
668
+ public static function firstNameFemaleChinese()
669
+ {
670
+ return static::randomElement(static::$firstNameChinese) . ' ' . static::randomElement(static::$firstNameFemaleChinese);
671
+ }
672
+
673
+ /**
674
+ * Return a Christian male name
675
+ *
676
+ * @example 'Aaron'
677
+ *
678
+ * @return string
679
+ */
680
+ public static function firstNameMaleChristian()
681
+ {
682
+ return static::randomElement(static::$firstNameMaleChristian);
683
+ }
684
+
685
+ /**
686
+ * Return a Christian female name
687
+ *
688
+ * @example 'Alice'
689
+ *
690
+ * @return string
691
+ */
692
+ public static function firstNameFemaleChristian()
693
+ {
694
+ return static::randomElement(static::$firstNameFemaleChristian);
695
+ }
696
+
697
+ /**
698
+ * Return an Indian initial
699
+ *
700
+ * @example 'S. '
701
+ *
702
+ * @return string
703
+ */
704
+ public static function initialIndian()
705
+ {
706
+ return static::randomElement(static::$initialIndian);
707
+ }
708
+
709
+ /**
710
+ * Return an Indian male first name
711
+ *
712
+ * @example 'Arumugam'
713
+ *
714
+ * @return string
715
+ */
716
+ public static function firstNameMaleIndian()
717
+ {
718
+ return static::randomElement(static::$firstNameMaleIndian);
719
+ }
720
+
721
+ /**
722
+ * Return an Indian female first name
723
+ *
724
+ * @example 'Ambiga'
725
+ *
726
+ * @return string
727
+ */
728
+ public static function firstNameFemaleIndian()
729
+ {
730
+ return static::randomElement(static::$firstNameFemaleIndian);
731
+ }
732
+
733
+ /**
734
+ * Return an Indian last name
735
+ *
736
+ * @example 'Subramaniam'
737
+ *
738
+ * @return string
739
+ */
740
+ public static function lastNameIndian()
741
+ {
742
+ return static::randomElement(static::$lastNameIndian);
743
+ }
744
+
745
+ /**
746
+ * Return a random last name
747
+ *
748
+ * @example 'Lee'
749
+ *
750
+ * @return string
751
+ */
752
+ public function lastName()
753
+ {
754
+ $formats = [
755
+ '{{lastNameMalay}}',
756
+ '{{lastNameChinese}}',
757
+ '{{lastNameIndian}}',
758
+ ];
759
+
760
+ return $this->generator->parse(static::randomElement($formats));
761
+ }
762
+
763
+ /**
764
+ * Return a Malaysian I.C. No.
765
+ *
766
+ * @example '890123-45-6789'
767
+ *
768
+ * @see https://en.wikipedia.org/wiki/Malaysian_identity_card#Structure_of_the_National_Registration_Identity_Card_Number_(NRIC)
769
+ *
770
+ * @param string|null $gender 'male', 'female' or null for any
771
+ * @param bool|string|null $hyphen true, false, or any separator characters
772
+ *
773
+ * @return string
774
+ */
775
+ public static function myKadNumber($gender = null, $hyphen = false)
776
+ {
777
+ // year of birth
778
+ $yy = self::numberBetween(0, 99);
779
+
780
+ // month of birth
781
+ $mm = DateTime::month();
782
+
783
+ // day of birth
784
+ $dd = DateTime::dayOfMonth();
785
+
786
+ // place of birth (1-59 except 17-20)
787
+ while (in_array($pb = self::numberBetween(1, 59), [17, 18, 19, 20], false)) {
788
+ }
789
+
790
+ // random number
791
+ $nnn = self::numberBetween(0, 999);
792
+
793
+ // gender digit. Odd = MALE, Even = FEMALE
794
+ $g = self::numberBetween(0, 9);
795
+
796
+ //Credit: https://gist.github.com/mauris/3629548
797
+ if ($gender === static::GENDER_MALE) {
798
+ $g = $g | 1;
799
+ } elseif ($gender === static::GENDER_FEMALE) {
800
+ $g = $g & ~1;
801
+ }
802
+
803
+ // formatting with hyphen
804
+ if ($hyphen === true) {
805
+ $hyphen = '-';
806
+ } elseif ($hyphen === false) {
807
+ $hyphen = '';
808
+ }
809
+
810
+ return sprintf('%02d%02d%02d%s%02d%s%03d%01d', $yy, $mm, $dd, $hyphen, $pb, $hyphen, $nnn, $g);
811
+ }
812
+ }