From e20facc0a272c8a76c227717daaa177f50730b3e Mon Sep 17 00:00:00 2001 From: Duy Huynh Date: Fri, 9 Feb 2024 02:09:13 -0600 Subject: [PATCH] =?UTF-8?q?Add=20people=20names=20from=20Maldives=20?= =?UTF-8?q?=F0=9F=87=B2=F0=9F=87=BB=20(#508)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Add people names from Maldives * run format scripts --- include/faker-cxx/Book.h | 103 +++-- include/faker-cxx/Color.h | 4 +- include/faker-cxx/Commerce.h | 7 +- include/faker-cxx/Git.h | 3 +- include/faker-cxx/types/Country.h | 3 + src/common/FormatHelper.h | 4 +- src/modules/person/Person.cpp | 2 + src/modules/person/PersonTest.cpp | 3 + .../data/maldives/MaldiviansFirstNames.h | 76 ++++ .../data/maldives/MaldiviansLastNames.h | 373 ++++++++++++++++++ .../data/maldives/MaldiviansPeopleNames.h | 16 + .../person/data/maldives/MaldiviansPrefixes.h | 15 + 12 files changed, 547 insertions(+), 62 deletions(-) create mode 100644 src/modules/person/data/maldives/MaldiviansFirstNames.h create mode 100644 src/modules/person/data/maldives/MaldiviansLastNames.h create mode 100644 src/modules/person/data/maldives/MaldiviansPeopleNames.h create mode 100644 src/modules/person/data/maldives/MaldiviansPrefixes.h diff --git a/include/faker-cxx/Book.h b/include/faker-cxx/Book.h index 09cdd32fa..1360f2093 100644 --- a/include/faker-cxx/Book.h +++ b/include/faker-cxx/Book.h @@ -62,60 +62,59 @@ class Book */ static std::string isbn(); - /** - * @brief Returns a random release year - * - * @returns int year - * - * @code - * Book::releaseYear() // 2016 - * @endcode - */ - static int releaseYear(); + /** + * @brief Returns a random release year + * + * @returns int year + * + * @code + * Book::releaseYear() // 2016 + * @endcode + */ + static int releaseYear(); - /** - * @brief Returns the full name of a translator - * - * @returns std::string full name - * - * @code - * Book::translator() // "Eric Floyd" - * @endcode - */ - static std::string translator(); - - /** - * @brief Returns format of book - * - * @returns BookFormat format of book - * - * @code - * Book::format() // BookFormat::paperback - * @endcode - */ - static std::string format(); + /** + * @brief Returns the full name of a translator + * + * @returns std::string full name + * + * @code + * Book::translator() // "Eric Floyd" + * @endcode + */ + static std::string translator(); + + /** + * @brief Returns format of book + * + * @returns BookFormat format of book + * + * @code + * Book::format() // BookFormat::paperback + * @endcode + */ + static std::string format(); - /* - * @brief returns a random page number (50-999) - * - * @returns int page number - * - * @code - * Book::page() // 314 - * @endcode - */ - static int page(); + /* + * @brief returns a random page number (50-999) + * + * @returns int page number + * + * @code + * Book::page() // 314 + * @endcode + */ + static int page(); - /* - * @brief returns a random book series - * - * @returns std::string book series - * - * @code - * Book::series() // "Harry Potter" - * @endcode - */ - static std::string series(); + /* + * @brief returns a random book series + * + * @returns std::string book series + * + * @code + * Book::series() // "Harry Potter" + * @endcode + */ + static std::string series(); }; } - diff --git a/include/faker-cxx/Color.h b/include/faker-cxx/Color.h index f72b5f03a..7ce62dd55 100644 --- a/include/faker-cxx/Color.h +++ b/include/faker-cxx/Color.h @@ -114,8 +114,8 @@ class Color * @endcode */ static std::string hsv(); - - /** + + /** * @brief Return a YUV color * * @returns YUV color formatted with yuv(X,X,X) diff --git a/include/faker-cxx/Commerce.h b/include/faker-cxx/Commerce.h index d226efbe8..4f655ea1d 100644 --- a/include/faker-cxx/Commerce.h +++ b/include/faker-cxx/Commerce.h @@ -195,7 +195,7 @@ class Commerce * @endcode */ static std::string productReview(); - + /** * @brief Returns a random product rating (0-5). * @@ -217,7 +217,7 @@ class Commerce * @endcode */ static std::string discountType(); - + /** * @brief Returns random discount code within the specified range of 6 to 12 characters. * @@ -241,7 +241,7 @@ class Commerce static double discountAmount(); /** - * @brief Returns a random discount percentage within the specified range of 1. to 90. + * @brief Returns a random discount percentage within the specified range of 1. to 90. * * @returns discountPercentage. * @@ -250,6 +250,5 @@ class Commerce * @endcode */ static double discountPercentage(); - }; } diff --git a/include/faker-cxx/Git.h b/include/faker-cxx/Git.h index fe00868ae..9a4f152a3 100644 --- a/include/faker-cxx/Git.h +++ b/include/faker-cxx/Git.h @@ -84,7 +84,6 @@ class Git */ static std::string commitSha(unsigned length = 40); - /** * @brief Returns a random author name and email. * @@ -96,6 +95,6 @@ class Git * Git::author // {Author.name = "Rachel McLaughlin", Author.email = "Rachel_McLaughlin@gmail.com"} * @endcode */ - static Author author(); + static Author author(); }; } diff --git a/include/faker-cxx/types/Country.h b/include/faker-cxx/types/Country.h index aeb864988..560612f14 100644 --- a/include/faker-cxx/types/Country.h +++ b/include/faker-cxx/types/Country.h @@ -69,6 +69,7 @@ enum class Country Azerbaijan, Ghana, Kazakhstan, + Maldives, }; const std::vector countries{ @@ -84,6 +85,7 @@ const std::vector countries{ Country::Moldova, Country::Lithuania, Country::Iceland, Country::Palestine, Country::Israel, Country::Vietnam, Country::Monaco, Country::Bosnia, Country::Lebanon, Country::Syria, Country::Malta, Country::SouthAfrica, Country::Azerbaijan, Country::Ghana, Country::Kazakhstan, + Country::Maldives, }; inline std::string toString(Country country) @@ -149,6 +151,7 @@ inline std::string toString(Country country) {Country::Azerbaijan, "Azerbaijan"}, {Country::Ghana, "Ghana"}, {Country::Kazakhstan, "Kazakhstan"}, + {Country::Maldives, "Maldives"}, }; return countryToStringMapping.at(country); diff --git a/src/common/FormatHelper.h b/src/common/FormatHelper.h index 52fd9eaf9..916cb58f9 100644 --- a/src/common/FormatHelper.h +++ b/src/common/FormatHelper.h @@ -5,7 +5,7 @@ #include #include -#if defined(__APPLE__) || defined(__MINGW32__) || (defined(__GNUC__) && (__GNUC__ < 12) && !defined(__clang__)) +#if defined(__APPLE__) || defined(__MINGW32__) || (defined(__GNUC__) && (__GNUC__ < 12) && !defined(__clang__)) #include #else #include @@ -16,7 +16,7 @@ namespace faker class FormatHelper { public: -#if defined(__APPLE__) || defined(__MINGW32__) || (defined(__GNUC__) && (__GNUC__ < 12) && !defined(__clang__)) +#if defined(__APPLE__) || defined(__MINGW32__) || (defined(__GNUC__) && (__GNUC__ < 12) && !defined(__clang__)) template static std::string format(fmt::format_string fmt, Args&&... args) { diff --git a/src/modules/person/Person.cpp b/src/modules/person/Person.cpp index 17461ffdb..66cb7bdec 100644 --- a/src/modules/person/Person.cpp +++ b/src/modules/person/Person.cpp @@ -66,6 +66,7 @@ #include "data/spain/SpanishPeopleNames.h" #include "data/SsnFormats.h" #include "data/sweden/SwedishPeopleNames.h" +#include "data/maldives/MaldiviansPeopleNames.h" #include "data/switzerland/SwissPeopleNames.h" #include "data/syria/SyrianPeopleNames.h" #include "data/turkey/TurkishPeopleNames.h" @@ -143,6 +144,7 @@ const std::map countryToPeopleNamesMapping{ {Country::Azerbaijan, azerbaijaniPeopleNames}, {Country::Ghana, ghanaianPeopleNames}, {Country::Kazakhstan, kazakhPeopleNames}, + {Country::Maldives, maldiviansPeopleNames}, }; std::string middleNameForCountry(Country country, std::optional sex); diff --git a/src/modules/person/PersonTest.cpp b/src/modules/person/PersonTest.cpp index 8956b74b8..67d4d4d5f 100644 --- a/src/modules/person/PersonTest.cpp +++ b/src/modules/person/PersonTest.cpp @@ -66,6 +66,7 @@ #include "data/switzerland/SwissPeopleNames.h" #include "data/syria/SyrianPeopleNames.h" #include "data/turkey/TurkishPeopleNames.h" +#include "data/maldives/MaldiviansPeopleNames.h" #include "data/ukraine/UkrainianPeopleNames.h" #include "data/vietnam/VietnamesePeopleNames.h" #include "data/ZodiacSigns.h" @@ -141,6 +142,7 @@ const std::map countryToPeopleNamesMapping{ {Country::Azerbaijan, azerbaijaniPeopleNames}, {Country::Ghana, ghanaianPeopleNames}, {Country::Kazakhstan, kazakhPeopleNames}, + {Country::Maldives, maldiviansPeopleNames}, }; const std::map generatedTestName{ @@ -204,6 +206,7 @@ const std::map generatedTestName{ {Country::Azerbaijan, "shouldGenerateAzerbaijaniName"}, {Country::Ghana, "shouldGenerateGhanaianName"}, {Country::Kazakhstan, "shouldGenerateKazakhName"}, + {Country::Maldives, "shouldGenerateMaldivianName"}, }; } diff --git a/src/modules/person/data/maldives/MaldiviansFirstNames.h b/src/modules/person/data/maldives/MaldiviansFirstNames.h new file mode 100644 index 000000000..3a38be80d --- /dev/null +++ b/src/modules/person/data/maldives/MaldiviansFirstNames.h @@ -0,0 +1,76 @@ +#pragma once + +#include +#include + +namespace faker +{ +const std::vector maldiviansMalesFirstNames = { + "އާދަމް", + "އިބްރާހީމް", + "އިލްޔާސް", + "އިސްމާޢީލް", + "ޢީސާ", + "އަބޫބަކްރު", + "އަލީ", + "އުސާމާ", + "ދާއޫދު", + "ޢަޠާ", + "ޤުދާސް", + "މުޙައްމަދު", + "މޫސާ", + "ޔޫސުފް", +}; + +const std::vector maldiviansFemalesFirstNames = { + "ރަމްލާ", + "ހިންދު", + "ޙަފްޞާ", + "ޚަދީޖާ", + "ޒައިނަބު", + "ޞަފިއްޔާ", + "ޢާއިޝާ", + "މައިމޫނާ", + "ޖުވައިރިއްޔާ", + "ސައުދާ", + "މާރިޔާ", + "ރުޤައްޔާ", + "ފާޠިމާ", + "އުއްމުކުލްޘޫމޮ", + "ޙައްވާ", + "ސާރާ", + "ހާޖަރު", + "މަރްޔަމޮ", + "ޒުލައިޚާ", + "އާސިޔާ", + "ބަލްޤީސް", + "އާމިނަތު", + "އަސްމާއު", + "އުމާމާ", + "ބަރްކާ", + "ޖަމީލާ", + "ޙަސްނާއު", + "ޙަލީމާ", + "ޚަވްލާ", + "ޚައިރާ", + "ރުމައިޞާއު", + "ރުފައިދާ", + "ރަޤީޤާ", + "ސަޢާދު", + "ސަލްމާ", + "ސުލައިމް", + "ސުމައްޔާ", + "ޝަހީދާ", + "ޝިފާ", + "ޢާތިކާ", + "ޤައިލާ", + "ލަޔާލީ", + "ކުލްޘޫމް", + "މުސްލިމާ", + "ނަސީބާ", + "ނަފީސާ", + "ނަވާރު", + "ހާނީ", + "ހުނައިދާ" +}; +} \ No newline at end of file diff --git a/src/modules/person/data/maldives/MaldiviansLastNames.h b/src/modules/person/data/maldives/MaldiviansLastNames.h new file mode 100644 index 000000000..98a75f4cc --- /dev/null +++ b/src/modules/person/data/maldives/MaldiviansLastNames.h @@ -0,0 +1,373 @@ +#pragma once + +#include +#include + +namespace faker +{ +const std::vector maldiviansMalesLastNames = { + "އަކްޙަލް", + "އަޘްހަރު", + "ބުރްހާން", + "ބާޤީ", + "ބުހްލޫލް", + "ބަޝޫޝް", + "ތަރަފް", + "ތައްމާމް", + "ތުކްލާން", + "ޘަވިއްޔު", + "ޘާޣިމް", + "ޘަރިއްޔު", + "ޖާބިރު", + "ޖާސިމް", + "ޖަޛަލް", + "ޖުސުމް", + "ޖުންދު", + "ޙާބިސް", + "ޙާފިދު", + "ޙަބީބު", + "ޙަޘީޘް", + "ޙުސްނީ", + "ޚާބިސް", + "ޚާފިޤާނި", + "ޚިތާމް", + "ޚައިރީ", + "ދާރިބު", + "ދައްރާކު", + "ދިރްފިސް", + "ދީވާން", + "ޛަހަބު", + "ޛުއްނޫރު", + "ޛަކީ", + "ރާބިޙް", + "ރައުބު", + "ރަޙޫމް", + "ރޫދު", + "ޒިބްރިޖު", + "ޒިރުޔާބު", + "ޒޯފިޝާން", + "ސާޤީ", + "ސިބުޠު", + "ސަރުމަދު", + "ސާޖީ", + "ޝާމިސް", + "ޝަބާބު", + "ޝުބޫލް", + "ޝަފްޝާފް", + "ޝަލޫލް", + "ޞަބޫރު", + "ޞަދޫޙު", + "ޞަފިއްޔު", + "ޞުރޫޙު", + "ޠާޙީ", + "ޠާލިބު", + "ޠިބާބު", + "ޡަފަރު", + "ޡިލާލް", + "ޡުހޫރު", + "ޢާބިދީން", + "ޢަބްޤަރީ", + "ޢިއްޒަތު", + "ޢައްމާރު", + "ޢަންބަރު", + "ޢަންދަލީބު", + "ޣާދިފު", + "ޣައްރާފް", + "ޣައްސާން", + "ޣުމޫމް", + "ޣަންދޫރު", + "ޣަޔްދަން", + "ފާއިޤު", + "ފަތޫޙް", + "ފަހުމާން", + "ފައިލަޤު", + "ޤާބޫސް", + "ޤިންދީލް", + "ޤިންޠާރް", + "ޤަވާމް", + "ކަލަޖް", + "ކައުޘަރު", + "ކައިސޫމް", + "ލުބަދު", + "ލަބިޤު", + "ލަސަން", + "ލުޠުފީ", + "ލުޤުމާން", + "މައުރަބު", + "މައުމަލް", + "މައާބު", + "މަބްޞަރު", + "މުތަނާސިޤް", + "މުދުރިކަތު", + "ނުޖުދު", + "ނުސައިބު", + "ނުޢައިމް", + "ނައްބާރު", + "ނުހައިލް", + "ވާބިޞް", + "ވަދީސް", + "ވާފިރު", + "ވައްޟާޙް", + "ވަހްބު", + "ހާދީ", + "ހިދާޔަތް", + "ހުޛުލޫލް", + "ހައްފާފް", + "ހިންދިސް", + "ޔާޤޫތު", + "ޔަލްމަޢި", + "ޔޫޝަޢު", + "ޔަގްޡާން", +}; + +const std::vector maldiviansFemalesLastNames = { + "އިބާ", + "އަޘްމާރު", + "އަޘީލާ", + "އިރާދާ", + "އިރުތިޖާޢު", + "އަރުވާ", + "އުމުނިއްޔާ", + "އަންބާ", + "އަންޖަލް", + "އުމަރާ", + "ބަދުރިއްޔާ", + "ބަރުޒާ", + "ބަޝޫޝޤް", + "ބަތްނާ", + "ބަޝާޝާ", + "ބާޛިލާ", + "ބަތޫލް", + "ބަރުޢުމް", + "ބަޠްޙާއު", + "ބަހިއްޔު", + "ތާއްމާ", + "ތަބައްރުޢު", + "ތަޙައްޝުމު", + "ތަޛްހީބު", + "ތަޒައްޔުން", + "ތަޣްރީދު", + "ތިމްރާޙަތު", + "ޘަބްރާ", + "ޘަރާ", + "ޘުރައްޔާ", + "ޘަވާ", + "ޘާނީ", + "ޖާސިމާ", + "ޖިދާ", + "ޖަސާރާ", + "ޖަލްވާ", + "ޖުމްލާނާ", + "ޖުނައިނާ", + "ޖައިދާނާ", + "ޖުމާއު", + "ޙާރިސާ", + "ޙިބާއު", + "ޙަބީބާ", + "ޙަދްވާ", + "ޙަޝްމާ", + "ޙަޞްނާ", + "ޙަމްރާއު", + "ޙިންނާ", + "ޙަނާން", + "ޚާލިޞާ", + "ޚަދްރާ", + "ޚުލަސާ", + "ޚަވްޟާ", + "ޚަވްލީ", + "ޚަވްދު", + "ދާއިޙާ", + "ދާޖިނާ", + "ދައުމާއު", + "ދުއްރުން", + "ދަރްޤާ", + "ދަފީނާ", + "ދަލޫފް", + "ދާނިޔާ", + "ޛާބިރާ", + "ޛަބާރާ", + "ޛަރާ", + "ޛިކްރާ", + "ޛަމާމަތު", + "ރުއުޔާ", + "ރާބިޙާ", + "ރާސިޙާ", + "ރާފިޢާ", + "ރާމާ", + "ރަބާބާ", + "ރަޖާ", + "ރަޙޫލް", + "ރައްސާމާ", + "ރުޝްދިއްޔާ", + "ރަފާހިއްޔާ", + "ރުފައިދާ", + "ރައުޙިއްޔާ", + "ރަވްނަޤް", + "ޒާޚިރާ", + "ޒާހް", + "ޒަބަރުޖަދް", + "ޒަޖާ", + "ޒުރްޤުމް", + "ޒަރްނަޤާ", + "ޒުމުއްރުދާ", + "ޒާޚިޒުންބުޤާރާ", + "ޒުންބުޤާ", + "ޒައިޒަފޫން", + "ޒިދުނީ", + "ރާޖިޔާ", + "ރަޖާޙާ", + "ރިދާފާ", + "ރިޢާ", + "ރަކީނާ", + "ރުމައިޒާ", + "ރަހީނާ", + "ޒާރާ", + "ޒުބައިދާ", + "ޒަރްކަޝާ", + "ޒަޢުފަރާނާ", + "ސުއުދާ", + "ސާބިޤާ", + "ސާމިޤާ", + "ސުބުޙާތު", + "ސަޙަރު", + "ސަޢުދިއްޔާ", + "ސަލްސަބީލް", + "ސުމައިޙާ", + "ސުންދުސް", + "ސަނަމް", + "ޝާއިޤާ", + "ޝާރިޔާ", + "ޝަބާބު", + "ޝަޖިއްޔާ", + "ޝަރްސާއު", + "ޝަރްޤިއްޔާ", + "ޝުޢާޢު", + "ޝަފްޝާފް", + "ޝަލަބިއްޔާ", + "ޝަމަރުދަލް", + "ޝަމްސާ", + "ޝިންޝިނާ", + "ޞާއިބާ", + "ޞާފީނާޒް", + "ޞަބިއްޔާ", + "ޞުބައިޙާ", + "ޞިއްދީޤާ", + "ޞިންވާން", + "ޟާޙިޔާ", + "ޟާމިނަތު", + "ޟުޙާ", + "ޟިފާފް", + "ޟިޔާ", + "ތާއިޢާ", + "ޠާހިރާ", + "ޠަރޫބު", + "ޠުލްސާ", + "ޠުމޫޙާ", + "ޠައްޔިބާ", + "ޡާފިރާ", + "ޡަމްޔާ", + "ޡުއްލާ", + "ޡަހީރާ", + "ޢާއިދާ", + "ޢާޖިލާ", + "ޢާޤިބާ", + "ޢާލިޔާ", + "ޢަބީރު", + "ޢުތުބާ", + "ޢަދުލިއްޔާ", + "ޢަޛްރާ", + "ޢަރޫޝާ", + "ޢައްޒާ", + "ޢަޠާޔާ", + "ޢަފާފާ", + "ޢަލާނިޔާ", + "ޢަންނާބު", + "ޢަންބަރާ", + "ޢަންދަލީބު", + "ޢަލާނާ", + "ޣާދާ", + "ޣާނީ", + "ޣާޔާ", + "ޣިނާ", + "ޣީދު", + "ޣީރާ", + "ފާއިޒާ", + "ފާރީހާން", + "ފަތުޙިއްޔާ", + "ފަރާއިދު", + "ފިރްޔާލް", + "ފުރައިސާ", + "ފިޠްރިއްޔާ", + "ފުނޫން", + "ފުހައިދާ", + "ފައްވާޙާ", + "ފައުޤިއްޔާ", + "ފައިނާން", + "ޤާނިތު", + "ޤަބްސާ", + "ޤުޘަމް", + "ޤުދުވާ", + "ޤިޠާފް", + "ޤުމްރިއްޔާ", + "ޤަމީން", + "ކާއިނާ", + "ކާސިބާ", + "ކާޙިލާ", + "ކާފިޔާ", + "ކަބީރާ", + "ކަރާއިމް", + "ކުރައިމާން", + "ކިފާޔާ", + "ކުލްޘޫމް", + "ކިނާނާ", + "ކަންޒު", + "ލުއުލުއު", + "ލުބާބާ", + "ލުއްޖާ", + "ލަސަން", + "ލުބާ", + "ލިޔާނާ", + "މުއުމިނާ", + "މުއުނިސާ", + "މާހާ", + "މާހީ", + "މާސާ", + "މާޝީ", + "މާވީ", + "މަދާ", + "މަރްހޫބާ", + "މުސްކާ", + "މަލަދު", + "މުނާ", + "މީފާ", + "ނާއިފާ", + "ނާލާ", + "ނާހީ", + "ނާވީ", + "ނުބްހާ", + "ނަޖާ", + "ނަޖްމާ", + "ނުޚްބާ", + "ނަރްޖިސް", + "ނޫރުލްހުދާ", + "ވާޙާ", + "ވިޖްދާން", + "ވުސްޢާ", + "ވަޝީކު", + "ވަޞްފާ", + "ވަހިއްޔާ", + "ހާދިއާ", + "ހާނީ", + "ހިބާ", + "ހުދާ", + "ހަނާ", + "ހިންދާމް", + "ހޫނާ", + "ހައިނަމާ", + "ޔާސިރާ", + "ޔާޤޫތު", + "ޔަޤްޡާ", + "ޔަމްނާ", + "ޔަޝްމް", +}; +} diff --git a/src/modules/person/data/maldives/MaldiviansPeopleNames.h b/src/modules/person/data/maldives/MaldiviansPeopleNames.h new file mode 100644 index 000000000..c11f624f5 --- /dev/null +++ b/src/modules/person/data/maldives/MaldiviansPeopleNames.h @@ -0,0 +1,16 @@ +#pragma once + +#include "../NameFormats.h" +#include "../PeopleNames.h" +#include "MaldiviansFirstNames.h" +#include "MaldiviansLastNames.h" +#include "MaldiviansPrefixes.h" + +namespace faker +{ +const NameFormats maldiviansPersonNameFormats{{"{firstName} {lastName}", 1}}; + +const PeopleNames maldiviansPeopleNames{{maldiviansMalesFirstNames, {}, maldiviansMalesLastNames, maldiviansMalesPrefixes, {}}, + {maldiviansFemalesFirstNames, {}, maldiviansFemalesLastNames, maldiviansFemalesPrefixes, {}}, + maldiviansPersonNameFormats}; +} diff --git a/src/modules/person/data/maldives/MaldiviansPrefixes.h b/src/modules/person/data/maldives/MaldiviansPrefixes.h new file mode 100644 index 000000000..d0df425c5 --- /dev/null +++ b/src/modules/person/data/maldives/MaldiviansPrefixes.h @@ -0,0 +1,15 @@ +#pragma once + +#include +#include + +namespace faker +{ +const std::vector maldiviansMalesPrefixes = { + "އަމީރު", "އަމީރާ", "ބަނޑޭރި", "ބޮޑު" +}; + +const std::vector maldiviansFemalesPrefixes = { + "އަމީރު", "އަމީރާ", "ބަނޑޭރި", "ބޮޑު" +}; +}