aboutsummaryrefslogtreecommitdiff
path: root/misc
diff options
context:
space:
mode:
authorXe Iaso <me@xeiaso.net>2025-04-26 20:07:06 -0400
committerXe Iaso <me@xeiaso.net>2025-04-26 20:07:06 -0400
commit62665656ffc8c20b7913b64dd14f4739bdcf29e7 (patch)
tree52893728becf4b7cb7b6b21f36d3a030b33ab376 /misc
parent0a566abb1557f1a06723564b080061c06afd5de9 (diff)
downloadx-62665656ffc8c20b7913b64dd14f4739bdcf29e7.tar.xz
x-62665656ffc8c20b7913b64dd14f4739bdcf29e7.zip
chore: reformat the world, set up autoformat on commit
Signed-off-by: Xe Iaso <me@xeiaso.net>
Diffstat (limited to 'misc')
-rw-r--r--misc/i18n/README.md152
-rw-r--r--misc/i18n/translations/de_DE.json40
-rw-r--r--misc/i18n/translations/en_US.json40
-rw-r--r--misc/i18n/translations/sr_RS.json40
-rw-r--r--misc/pla-tracker/pokemans.json245
5 files changed, 383 insertions, 134 deletions
diff --git a/misc/i18n/README.md b/misc/i18n/README.md
index c260ea2..c08302c 100644
--- a/misc/i18n/README.md
+++ b/misc/i18n/README.md
@@ -1,79 +1,85 @@
-lingo
-=====
+# lingo
Very basic Golang library for i18n. There are others that do the job, but this is my take on the problem.
-Features:
----------
+## Features:
+
1. Storing messages in JSON files.
2. Support for nested declarations.
-2. Detecting language based on Request headers.
-3. Very simple to use.
-
-Usage:
-------
- 1. Import Lingo into your project
-
- ```go
- import "github.com/kortem/lingo"
- ```
- 1. Create a dir to store translations, and write them in JSON files named [locale].json. For example:
-
- ```
- en_US.json
- sr_RS.json
- de.json
- ...
- ```
- You can write nested JSON too.
- ```json
- {
- "main.title" : "CutleryPlus",
- "main.subtitle" : "Knives that put cut in cutlery.",
- "menu" : {
- "home" : "Home",
- "products": {
- "self": "Products",
- "forks" : "Forks",
- "knives" : "Knives",
- "spoons" : "Spoons"
- },
- }
- }
- ```
- 2. Initialize a Lingo like this:
-
- ```go
- l := lingo.New("default_locale", "path/to/translations/dir")
- ```
-
- 3. Get bundle for specific locale via either `string`:
-
- ```go
- t1 := l.TranslationsForLocale("en_US")
- t2 := l.TranslationsForLocale("de_DE")
- ```
- This way Lingo will return the bundle for specific locale, or default if given is not found.
- Alternatively (or primarily), you can get it with `*http.Request`:
-
- ```go
- t := l.TranslationsForRequest(req)
- ```
- This way Lingo finds best suited locale via `Accept-Language` header, or if there is no match, returns default.
- `Accept-Language` header is set by the browser, so basically it will serve the language the user has set to his browser.
- 4. Once you get T instance just fire away!
-
- ```go
- r1 := t1.Value("main.subtitle")
- // "Knives that put cut in cutlery."
- r1 := t2.Value("main.subtitle")
- // "Messer, die legte in Besteck geschnitten."
- r3 := t1.Value("menu.products.self")
- // "Products"
- r5 := t1.Value("error.404", req.URL.Path)
- // "Page index.html not found!"
- ```
-
-Contributions:
------
+3. Detecting language based on Request headers.
+4. Very simple to use.
+
+## Usage:
+
+1. Import Lingo into your project
+
+ ```go
+ import "github.com/kortem/lingo"
+ ```
+
+1. Create a dir to store translations, and write them in JSON files named [locale].json. For example:
+
+ ```
+ en_US.json
+ sr_RS.json
+ de.json
+ ...
+ ```
+
+ You can write nested JSON too.
+
+ ```json
+ {
+ "main.title": "CutleryPlus",
+ "main.subtitle": "Knives that put cut in cutlery.",
+ "menu": {
+ "home": "Home",
+ "products": {
+ "self": "Products",
+ "forks": "Forks",
+ "knives": "Knives",
+ "spoons": "Spoons"
+ }
+ }
+ }
+ ```
+
+1. Initialize a Lingo like this:
+
+ ```go
+ l := lingo.New("default_locale", "path/to/translations/dir")
+ ```
+
+1. Get bundle for specific locale via either `string`:
+
+ ```go
+ t1 := l.TranslationsForLocale("en_US")
+ t2 := l.TranslationsForLocale("de_DE")
+ ```
+
+ This way Lingo will return the bundle for specific locale, or default if given is not found.
+ Alternatively (or primarily), you can get it with `*http.Request`:
+
+ ```go
+ t := l.TranslationsForRequest(req)
+ ```
+
+ This way Lingo finds best suited locale via `Accept-Language` header, or if there is no match, returns default.
+ `Accept-Language` header is set by the browser, so basically it will serve the language the user has set to his browser.
+
+1. Once you get T instance just fire away!
+
+ ```go
+ r1 := t1.Value("main.subtitle")
+ // "Knives that put cut in cutlery."
+ r1 := t2.Value("main.subtitle")
+ // "Messer, die legte in Besteck geschnitten."
+ r3 := t1.Value("menu.products.self")
+ // "Products"
+ r5 := t1.Value("error.404", req.URL.Path)
+ // "Page index.html not found!"
+ ```
+
+## Contributions:
+
I regard this little library as feature-complete, but if you have an idea on how to improve it, feel free to create issues. Also, pull requests are welcome. Enjoy!
diff --git a/misc/i18n/translations/de_DE.json b/misc/i18n/translations/de_DE.json
index c12186d..5a30a62 100644
--- a/misc/i18n/translations/de_DE.json
+++ b/misc/i18n/translations/de_DE.json
@@ -1,32 +1,32 @@
{
- "main.title" : "CutleryPlus",
- "main.subtitle" : "Messer, die legte in Besteck geschnitten.",
- "menu" : {
- "home" : "Home",
+ "main.title": "CutleryPlus",
+ "main.subtitle": "Messer, die legte in Besteck geschnitten.",
+ "menu": {
+ "home": "Home",
"products": {
"self": "Produkte",
- "forks" : "Gabeln",
- "knives" : "Messer",
- "spoons" : "Löffel"
+ "forks": "Gabeln",
+ "knives": "Messer",
+ "spoons": "Löffel"
},
- "gallery" : "Galerie",
- "about" : "Über uns",
- "contact" : "Kontakt"
+ "gallery": "Galerie",
+ "about": "Über uns",
+ "contact": "Kontakt"
},
- "home" : {
+ "home": {
"title": "Willkommen in CutleryPlus!",
- "text" : {
+ "text": {
"p1": "Lorem ipsum...",
"p2": "Ein weiterer ipsum lorem."
}
},
- "error" : {
- "404" : "Seite {0} wurde nicht gefunden.",
- "500" : "Stimmt etwas nicht auf unserer Seite ist, versuchen Sie es erneut.",
- "contact" : {
- "name" : "Sie müssen Ihren Namen eingeben.",
- "email" : "Sie müssen Ihre E-Mail ein.",
- "text" : "Sie können eine leere Nachricht nicht zu senden."
+ "error": {
+ "404": "Seite {0} wurde nicht gefunden.",
+ "500": "Stimmt etwas nicht auf unserer Seite ist, versuchen Sie es erneut.",
+ "contact": {
+ "name": "Sie müssen Ihren Namen eingeben.",
+ "email": "Sie müssen Ihre E-Mail ein.",
+ "text": "Sie können eine leere Nachricht nicht zu senden."
}
}
-} \ No newline at end of file
+}
diff --git a/misc/i18n/translations/en_US.json b/misc/i18n/translations/en_US.json
index 6fa0b8f..6f36f6d 100644
--- a/misc/i18n/translations/en_US.json
+++ b/misc/i18n/translations/en_US.json
@@ -1,32 +1,32 @@
{
- "main.title" : "CutleryPlus",
- "main.subtitle" : "Knives that put cut in cutlery.",
- "menu" : {
- "home" : "Home",
+ "main.title": "CutleryPlus",
+ "main.subtitle": "Knives that put cut in cutlery.",
+ "menu": {
+ "home": "Home",
"products": {
"self": "Products",
- "forks" : "Forks",
- "knives" : "Knives",
- "spoons" : "Spoons"
+ "forks": "Forks",
+ "knives": "Knives",
+ "spoons": "Spoons"
},
- "gallery" : "Gallery",
- "about" : "About us",
- "contact" : "Contact"
+ "gallery": "Gallery",
+ "about": "About us",
+ "contact": "Contact"
},
- "home" : {
+ "home": {
"title": "Welcome to CutleryPlus!",
- "text" : {
+ "text": {
"p1": "Lorem ipsum...",
"p2": "Another ipsum lorem."
}
},
- "error" : {
- "404" : "Page {0} not found!",
- "500" : "Something is wrong on our side, please try again.",
- "contact" : {
- "name" : "You must enter your name.",
- "email" : "You must enter your email.",
- "text" : "You cannot send an empty message."
+ "error": {
+ "404": "Page {0} not found!",
+ "500": "Something is wrong on our side, please try again.",
+ "contact": {
+ "name": "You must enter your name.",
+ "email": "You must enter your email.",
+ "text": "You cannot send an empty message."
}
}
-} \ No newline at end of file
+}
diff --git a/misc/i18n/translations/sr_RS.json b/misc/i18n/translations/sr_RS.json
index fe2bea5..dbc7d6d 100644
--- a/misc/i18n/translations/sr_RS.json
+++ b/misc/i18n/translations/sr_RS.json
@@ -1,32 +1,32 @@
{
- "main.title" : "CutleryPlus",
- "main.subtitle" : "Escajg za svakoga",
- "menu" : {
- "home" : "Pocetna",
+ "main.title": "CutleryPlus",
+ "main.subtitle": "Escajg za svakoga",
+ "menu": {
+ "home": "Pocetna",
"products": {
"self": "Proizvodi",
- "forks" : "Viljuske",
- "knives" : "Nozevi",
- "spoons" : "Kasike"
+ "forks": "Viljuske",
+ "knives": "Nozevi",
+ "spoons": "Kasike"
},
- "gallery" : "Galerija",
- "about" : "O nama",
- "contact" : "Kontakt"
+ "gallery": "Galerija",
+ "about": "O nama",
+ "contact": "Kontakt"
},
- "home" : {
+ "home": {
"title": "Dobrodosli u CutleryPlus!",
- "text" : {
+ "text": {
"p1": "Lorem ipsum...",
"p2": "Jos jedan ipsum lorem."
}
},
- "error" : {
- "404" : "Stranica {0} ne postoji.",
- "500" : "Greska sa nase strane, pokusajte ponovo.",
- "contact" : {
- "name" : "Ime ne sme biti prazno.",
- "email" : "Email ne sme biti prazan.",
- "text" : "Ne mozete poslati praznu poruku."
+ "error": {
+ "404": "Stranica {0} ne postoji.",
+ "500": "Greska sa nase strane, pokusajte ponovo.",
+ "contact": {
+ "name": "Ime ne sme biti prazno.",
+ "email": "Email ne sme biti prazan.",
+ "text": "Ne mozete poslati praznu poruku."
}
}
-} \ No newline at end of file
+}
diff --git a/misc/pla-tracker/pokemans.json b/misc/pla-tracker/pokemans.json
index e898f79..76e8d42 100644
--- a/misc/pla-tracker/pokemans.json
+++ b/misc/pla-tracker/pokemans.json
@@ -1 +1,244 @@
-[{"id":"#001","name":"Rowlet"},{"id":"#002","name":"Dartrix"},{"id":"#003","name":"Decidueye"},{"id":"#004","name":"Cyndaquil"},{"id":"#005","name":"Quilava"},{"id":"#006","name":"Typhlosion"},{"id":"#007","name":"Oshawott"},{"id":"#008","name":"Dewott"},{"id":"#009","name":"Samurott"},{"id":"#010","name":"Bidoof"},{"id":"#011","name":"Bibarel"},{"id":"#012","name":"Starly"},{"id":"#013","name":"Staravia"},{"id":"#014","name":"Staraptor"},{"id":"#015","name":"Shinx"},{"id":"#016","name":"Luxio"},{"id":"#017","name":"Luxray"},{"id":"#018","name":"Wurmple"},{"id":"#019","name":"Silcoon"},{"id":"#020","name":"Beautifly"},{"id":"#021","name":"Cascoon"},{"id":"#022","name":"Dustox"},{"id":"#023","name":"Ponyta"},{"id":"#024","name":"Rapidash"},{"id":"#025","name":"Eevee"},{"id":"#026","name":"Vaporeon"},{"id":"#027","name":"Jolteon"},{"id":"#028","name":"Flareon"},{"id":"#029","name":"Espeon"},{"id":"#030","name":"Umbreon"},{"id":"#031","name":"Leafeon"},{"id":"#032","name":"Glaceon"},{"id":"#033","name":"Sylveon"},{"id":"#034","name":"Zubat"},{"id":"#035","name":"Golbat"},{"id":"#036","name":"Crobat"},{"id":"#037","name":"Drifloon"},{"id":"#038","name":"Drifblim"},{"id":"#039","name":"Kricketot"},{"id":"#040","name":"Kricketune"},{"id":"#041","name":"Buizel"},{"id":"#042","name":"Floatzel"},{"id":"#043","name":"Burmy"},{"id":"#044","name":"Wormadam"},{"id":"#045","name":"Mothim"},{"id":"#046","name":"Geodude"},{"id":"#047","name":"Graveler"},{"id":"#048","name":"Golem"},{"id":"#049","name":"Stantler"},{"id":"#050","name":"Wyrdeer"},{"id":"#051","name":"Munchlax"},{"id":"#052","name":"Snorlax"},{"id":"#053","name":"Paras"},{"id":"#054","name":"Parasect"},{"id":"#055","name":"Pichu"},{"id":"#056","name":"Pikachu"},{"id":"#057","name":"Raichu"},{"id":"#058","name":"Abra"},{"id":"#059","name":"Kadabra"},{"id":"#060","name":"Alakazam"},{"id":"#061","name":"Chimchar"},{"id":"#062","name":"Monferno"},{"id":"#063","name":"Infernape"},{"id":"#064","name":"Buneary"},{"id":"#065","name":"Lopunny"},{"id":"#066","name":"Cherubi"},{"id":"#067","name":"Cherrim"},{"id":"#068","name":"Psyduck"},{"id":"#069","name":"Golduck"},{"id":"#070","name":"Combee"},{"id":"#071","name":"Vespiquen"},{"id":"#072","name":"Scyther"},{"id":"#073","name":"Kleavor"},{"id":"#074","name":"Scizor"},{"id":"#075","name":"Heracross"},{"id":"#076","name":"Mime Jr."},{"id":"#077","name":"Mr. Mime"},{"id":"#078","name":"Aipom"},{"id":"#079","name":"Ambipom"},{"id":"#080","name":"Magikarp"},{"id":"#081","name":"Gyarados"},{"id":"#082","name":"Shellos"},{"id":"#083","name":"Gastrodon"},{"id":"#084","name":"Qwilfish"},{"id":"#085","name":"Overqwil"},{"id":"#086","name":"Happiny"},{"id":"#087","name":"Chansey"},{"id":"#088","name":"Blissey"},{"id":"#089","name":"Budew"},{"id":"#090","name":"Roselia"},{"id":"#091","name":"Roserade"},{"id":"#092","name":"Carnivine"},{"id":"#093","name":"Petilil"},{"id":"#094","name":"Lilligant"},{"id":"#095","name":"Tangela"},{"id":"#096","name":"Tangrowth"},{"id":"#097","name":"Barboach"},{"id":"#098","name":"Whiscash"},{"id":"#099","name":"Croagunk"},{"id":"#100","name":"Toxicroak"},{"id":"#101","name":"Ralts"},{"id":"#102","name":"Kirlia"},{"id":"#103","name":"Gardevoir"},{"id":"#104","name":"Gallade"},{"id":"#105","name":"Yanma"},{"id":"#106","name":"Yanmega"},{"id":"#107","name":"Hippopotas"},{"id":"#108","name":"Hippowdon"},{"id":"#109","name":"Pachirisu"},{"id":"#110","name":"Stunky"},{"id":"#111","name":"Skuntank"},{"id":"#112","name":"Teddiursa"},{"id":"#113","name":"Ursaring"},{"id":"#114","name":"Ursaluna"},{"id":"#115","name":"Goomy"},{"id":"#116","name":"Sliggoo"},{"id":"#117","name":"Goodra"},{"id":"#118","name":"Onix"},{"id":"#119","name":"Steelix"},{"id":"#120","name":"Rhyhorn"},{"id":"#121","name":"Rhydon"},{"id":"#122","name":"Rhyperior"},{"id":"#123","name":"Bonsly"},{"id":"#124","name":"Sudowoodo"},{"id":"#125","name":"Lickitung"},{"id":"#126","name":"Lickilicky"},{"id":"#127","name":"Togepi"},{"id":"#128","name":"Togetic"},{"id":"#129","name":"Togekiss"},{"id":"#130","name":"Turtwig"},{"id":"#131","name":"Grotle"},{"id":"#132","name":"Torterra"},{"id":"#133","name":"Porygon"},{"id":"#134","name":"Porygon2"},{"id":"#135","name":"Porygon-Z"},{"id":"#136","name":"Gastly"},{"id":"#137","name":"Haunter"},{"id":"#138","name":"Gengar"},{"id":"#139","name":"Spiritomb"},{"id":"#140","name":"Murkrow"},{"id":"#141","name":"Honchkrow"},{"id":"#142","name":"Unown"},{"id":"#143","name":"Spheal"},{"id":"#144","name":"Sealeo"},{"id":"#145","name":"Walrein"},{"id":"#146","name":"Remoraid"},{"id":"#147","name":"Octillery"},{"id":"#148","name":"Skorupi"},{"id":"#149","name":"Drapion"},{"id":"#150","name":"Growlithe"},{"id":"#151","name":"Arcanine"},{"id":"#152","name":"Glameow"},{"id":"#153","name":"Purugly"},{"id":"#154","name":"Machop"},{"id":"#155","name":"Machoke"},{"id":"#156","name":"Machamp"},{"id":"#157","name":"Chatot"},{"id":"#158","name":"Duskull"},{"id":"#159","name":"Dusclops"},{"id":"#160","name":"Dusknoir"},{"id":"#161","name":"Piplup"},{"id":"#162","name":"Prinplup"},{"id":"#163","name":"Empoleon"},{"id":"#164","name":"Mantyke"},{"id":"#165","name":"Mantine"},{"id":"#166","name":"Basculin"},{"id":"#167","name":"Basculegion"},{"id":"#168","name":"Vulpix"},{"id":"#169","name":"Ninetales"},{"id":"#170","name":"Tentacool"},{"id":"#171","name":"Tentacruel"},{"id":"#172","name":"Finneon"},{"id":"#173","name":"Lumineon"},{"id":"#174","name":"Magby"},{"id":"#175","name":"Magmar"},{"id":"#176","name":"Magmortar"},{"id":"#177","name":"Magnemite"},{"id":"#178","name":"Magneton"},{"id":"#179","name":"Magnezone"},{"id":"#180","name":"Bronzor"},{"id":"#181","name":"Bronzong"},{"id":"#182","name":"Elekid"},{"id":"#183","name":"Electabuzz"},{"id":"#184","name":"Electivire"},{"id":"#185","name":"Gligar"},{"id":"#186","name":"Gliscor"},{"id":"#187","name":"Gible"},{"id":"#188","name":"Gabite"},{"id":"#189","name":"Garchomp"},{"id":"#190","name":"Nosepass"},{"id":"#191","name":"Probopass"},{"id":"#192","name":"Voltorb"},{"id":"#193","name":"Electrode"},{"id":"#194","name":"Rotom"},{"id":"#195","name":"Chingling"},{"id":"#196","name":"Chimecho"},{"id":"#197","name":"Misdreavus"},{"id":"#198","name":"Mismagius"},{"id":"#199","name":"Cleffa"},{"id":"#200","name":"Clefairy"},{"id":"#201","name":"Clefable"},{"id":"#202","name":"Sneasel"},{"id":"#203","name":"Sneasler"},{"id":"#204","name":"Weavile"},{"id":"#205","name":"Snorunt"},{"id":"#206","name":"Glalie"},{"id":"#207","name":"Froslass"},{"id":"#208","name":"Cranidos"},{"id":"#209","name":"Rampardos"},{"id":"#210","name":"Shieldon"},{"id":"#211","name":"Bastiodon"},{"id":"#212","name":"Swinub"},{"id":"#213","name":"Piloswine"},{"id":"#214","name":"Mamoswine"},{"id":"#215","name":"Bergmite"},{"id":"#216","name":"Avalugg"},{"id":"#217","name":"Snover"},{"id":"#218","name":"Abomasnow"},{"id":"#219","name":"Zorua"},{"id":"#220","name":"Zoroark"},{"id":"#221","name":"Rufflet"},{"id":"#222","name":"Braviary"},{"id":"#223","name":"Riolu"},{"id":"#224","name":"Lucario"},{"id":"#225","name":"Uxie"},{"id":"#226","name":"Mesprit"},{"id":"#227","name":"Azelf"},{"id":"#228","name":"Heatran"},{"id":"#229","name":"Regigigas"},{"id":"#230","name":"Cresselia"},{"id":"#231","name":"Tornadus"},{"id":"#232","name":"Thundurus"},{"id":"#233","name":"Landorus"},{"id":"#234","name":"Enamorus"},{"id":"#235","name":"Dialga"},{"id":"#236","name":"Palkia"},{"id":"#237","name":"Giratina"},{"id":"#238","name":"Arceus"},{"id":"#239","name":"Phione"},{"id":"#240","name":"Manaphy"},{"id":"#241","name":"Shaymin"},{"id":"#242","name":"Darkrai"}] \ No newline at end of file
+[
+ { "id": "#001", "name": "Rowlet" },
+ { "id": "#002", "name": "Dartrix" },
+ { "id": "#003", "name": "Decidueye" },
+ { "id": "#004", "name": "Cyndaquil" },
+ { "id": "#005", "name": "Quilava" },
+ { "id": "#006", "name": "Typhlosion" },
+ { "id": "#007", "name": "Oshawott" },
+ { "id": "#008", "name": "Dewott" },
+ { "id": "#009", "name": "Samurott" },
+ { "id": "#010", "name": "Bidoof" },
+ { "id": "#011", "name": "Bibarel" },
+ { "id": "#012", "name": "Starly" },
+ { "id": "#013", "name": "Staravia" },
+ { "id": "#014", "name": "Staraptor" },
+ { "id": "#015", "name": "Shinx" },
+ { "id": "#016", "name": "Luxio" },
+ { "id": "#017", "name": "Luxray" },
+ { "id": "#018", "name": "Wurmple" },
+ { "id": "#019", "name": "Silcoon" },
+ { "id": "#020", "name": "Beautifly" },
+ { "id": "#021", "name": "Cascoon" },
+ { "id": "#022", "name": "Dustox" },
+ { "id": "#023", "name": "Ponyta" },
+ { "id": "#024", "name": "Rapidash" },
+ { "id": "#025", "name": "Eevee" },
+ { "id": "#026", "name": "Vaporeon" },
+ { "id": "#027", "name": "Jolteon" },
+ { "id": "#028", "name": "Flareon" },
+ { "id": "#029", "name": "Espeon" },
+ { "id": "#030", "name": "Umbreon" },
+ { "id": "#031", "name": "Leafeon" },
+ { "id": "#032", "name": "Glaceon" },
+ { "id": "#033", "name": "Sylveon" },
+ { "id": "#034", "name": "Zubat" },
+ { "id": "#035", "name": "Golbat" },
+ { "id": "#036", "name": "Crobat" },
+ { "id": "#037", "name": "Drifloon" },
+ { "id": "#038", "name": "Drifblim" },
+ { "id": "#039", "name": "Kricketot" },
+ { "id": "#040", "name": "Kricketune" },
+ { "id": "#041", "name": "Buizel" },
+ { "id": "#042", "name": "Floatzel" },
+ { "id": "#043", "name": "Burmy" },
+ { "id": "#044", "name": "Wormadam" },
+ { "id": "#045", "name": "Mothim" },
+ { "id": "#046", "name": "Geodude" },
+ { "id": "#047", "name": "Graveler" },
+ { "id": "#048", "name": "Golem" },
+ { "id": "#049", "name": "Stantler" },
+ { "id": "#050", "name": "Wyrdeer" },
+ { "id": "#051", "name": "Munchlax" },
+ { "id": "#052", "name": "Snorlax" },
+ { "id": "#053", "name": "Paras" },
+ { "id": "#054", "name": "Parasect" },
+ { "id": "#055", "name": "Pichu" },
+ { "id": "#056", "name": "Pikachu" },
+ { "id": "#057", "name": "Raichu" },
+ { "id": "#058", "name": "Abra" },
+ { "id": "#059", "name": "Kadabra" },
+ { "id": "#060", "name": "Alakazam" },
+ { "id": "#061", "name": "Chimchar" },
+ { "id": "#062", "name": "Monferno" },
+ { "id": "#063", "name": "Infernape" },
+ { "id": "#064", "name": "Buneary" },
+ { "id": "#065", "name": "Lopunny" },
+ { "id": "#066", "name": "Cherubi" },
+ { "id": "#067", "name": "Cherrim" },
+ { "id": "#068", "name": "Psyduck" },
+ { "id": "#069", "name": "Golduck" },
+ { "id": "#070", "name": "Combee" },
+ { "id": "#071", "name": "Vespiquen" },
+ { "id": "#072", "name": "Scyther" },
+ { "id": "#073", "name": "Kleavor" },
+ { "id": "#074", "name": "Scizor" },
+ { "id": "#075", "name": "Heracross" },
+ { "id": "#076", "name": "Mime Jr." },
+ { "id": "#077", "name": "Mr. Mime" },
+ { "id": "#078", "name": "Aipom" },
+ { "id": "#079", "name": "Ambipom" },
+ { "id": "#080", "name": "Magikarp" },
+ { "id": "#081", "name": "Gyarados" },
+ { "id": "#082", "name": "Shellos" },
+ { "id": "#083", "name": "Gastrodon" },
+ { "id": "#084", "name": "Qwilfish" },
+ { "id": "#085", "name": "Overqwil" },
+ { "id": "#086", "name": "Happiny" },
+ { "id": "#087", "name": "Chansey" },
+ { "id": "#088", "name": "Blissey" },
+ { "id": "#089", "name": "Budew" },
+ { "id": "#090", "name": "Roselia" },
+ { "id": "#091", "name": "Roserade" },
+ { "id": "#092", "name": "Carnivine" },
+ { "id": "#093", "name": "Petilil" },
+ { "id": "#094", "name": "Lilligant" },
+ { "id": "#095", "name": "Tangela" },
+ { "id": "#096", "name": "Tangrowth" },
+ { "id": "#097", "name": "Barboach" },
+ { "id": "#098", "name": "Whiscash" },
+ { "id": "#099", "name": "Croagunk" },
+ { "id": "#100", "name": "Toxicroak" },
+ { "id": "#101", "name": "Ralts" },
+ { "id": "#102", "name": "Kirlia" },
+ { "id": "#103", "name": "Gardevoir" },
+ { "id": "#104", "name": "Gallade" },
+ { "id": "#105", "name": "Yanma" },
+ { "id": "#106", "name": "Yanmega" },
+ { "id": "#107", "name": "Hippopotas" },
+ { "id": "#108", "name": "Hippowdon" },
+ { "id": "#109", "name": "Pachirisu" },
+ { "id": "#110", "name": "Stunky" },
+ { "id": "#111", "name": "Skuntank" },
+ { "id": "#112", "name": "Teddiursa" },
+ { "id": "#113", "name": "Ursaring" },
+ { "id": "#114", "name": "Ursaluna" },
+ { "id": "#115", "name": "Goomy" },
+ { "id": "#116", "name": "Sliggoo" },
+ { "id": "#117", "name": "Goodra" },
+ { "id": "#118", "name": "Onix" },
+ { "id": "#119", "name": "Steelix" },
+ { "id": "#120", "name": "Rhyhorn" },
+ { "id": "#121", "name": "Rhydon" },
+ { "id": "#122", "name": "Rhyperior" },
+ { "id": "#123", "name": "Bonsly" },
+ { "id": "#124", "name": "Sudowoodo" },
+ { "id": "#125", "name": "Lickitung" },
+ { "id": "#126", "name": "Lickilicky" },
+ { "id": "#127", "name": "Togepi" },
+ { "id": "#128", "name": "Togetic" },
+ { "id": "#129", "name": "Togekiss" },
+ { "id": "#130", "name": "Turtwig" },
+ { "id": "#131", "name": "Grotle" },
+ { "id": "#132", "name": "Torterra" },
+ { "id": "#133", "name": "Porygon" },
+ { "id": "#134", "name": "Porygon2" },
+ { "id": "#135", "name": "Porygon-Z" },
+ { "id": "#136", "name": "Gastly" },
+ { "id": "#137", "name": "Haunter" },
+ { "id": "#138", "name": "Gengar" },
+ { "id": "#139", "name": "Spiritomb" },
+ { "id": "#140", "name": "Murkrow" },
+ { "id": "#141", "name": "Honchkrow" },
+ { "id": "#142", "name": "Unown" },
+ { "id": "#143", "name": "Spheal" },
+ { "id": "#144", "name": "Sealeo" },
+ { "id": "#145", "name": "Walrein" },
+ { "id": "#146", "name": "Remoraid" },
+ { "id": "#147", "name": "Octillery" },
+ { "id": "#148", "name": "Skorupi" },
+ { "id": "#149", "name": "Drapion" },
+ { "id": "#150", "name": "Growlithe" },
+ { "id": "#151", "name": "Arcanine" },
+ { "id": "#152", "name": "Glameow" },
+ { "id": "#153", "name": "Purugly" },
+ { "id": "#154", "name": "Machop" },
+ { "id": "#155", "name": "Machoke" },
+ { "id": "#156", "name": "Machamp" },
+ { "id": "#157", "name": "Chatot" },
+ { "id": "#158", "name": "Duskull" },
+ { "id": "#159", "name": "Dusclops" },
+ { "id": "#160", "name": "Dusknoir" },
+ { "id": "#161", "name": "Piplup" },
+ { "id": "#162", "name": "Prinplup" },
+ { "id": "#163", "name": "Empoleon" },
+ { "id": "#164", "name": "Mantyke" },
+ { "id": "#165", "name": "Mantine" },
+ { "id": "#166", "name": "Basculin" },
+ { "id": "#167", "name": "Basculegion" },
+ { "id": "#168", "name": "Vulpix" },
+ { "id": "#169", "name": "Ninetales" },
+ { "id": "#170", "name": "Tentacool" },
+ { "id": "#171", "name": "Tentacruel" },
+ { "id": "#172", "name": "Finneon" },
+ { "id": "#173", "name": "Lumineon" },
+ { "id": "#174", "name": "Magby" },
+ { "id": "#175", "name": "Magmar" },
+ { "id": "#176", "name": "Magmortar" },
+ { "id": "#177", "name": "Magnemite" },
+ { "id": "#178", "name": "Magneton" },
+ { "id": "#179", "name": "Magnezone" },
+ { "id": "#180", "name": "Bronzor" },
+ { "id": "#181", "name": "Bronzong" },
+ { "id": "#182", "name": "Elekid" },
+ { "id": "#183", "name": "Electabuzz" },
+ { "id": "#184", "name": "Electivire" },
+ { "id": "#185", "name": "Gligar" },
+ { "id": "#186", "name": "Gliscor" },
+ { "id": "#187", "name": "Gible" },
+ { "id": "#188", "name": "Gabite" },
+ { "id": "#189", "name": "Garchomp" },
+ { "id": "#190", "name": "Nosepass" },
+ { "id": "#191", "name": "Probopass" },
+ { "id": "#192", "name": "Voltorb" },
+ { "id": "#193", "name": "Electrode" },
+ { "id": "#194", "name": "Rotom" },
+ { "id": "#195", "name": "Chingling" },
+ { "id": "#196", "name": "Chimecho" },
+ { "id": "#197", "name": "Misdreavus" },
+ { "id": "#198", "name": "Mismagius" },
+ { "id": "#199", "name": "Cleffa" },
+ { "id": "#200", "name": "Clefairy" },
+ { "id": "#201", "name": "Clefable" },
+ { "id": "#202", "name": "Sneasel" },
+ { "id": "#203", "name": "Sneasler" },
+ { "id": "#204", "name": "Weavile" },
+ { "id": "#205", "name": "Snorunt" },
+ { "id": "#206", "name": "Glalie" },
+ { "id": "#207", "name": "Froslass" },
+ { "id": "#208", "name": "Cranidos" },
+ { "id": "#209", "name": "Rampardos" },
+ { "id": "#210", "name": "Shieldon" },
+ { "id": "#211", "name": "Bastiodon" },
+ { "id": "#212", "name": "Swinub" },
+ { "id": "#213", "name": "Piloswine" },
+ { "id": "#214", "name": "Mamoswine" },
+ { "id": "#215", "name": "Bergmite" },
+ { "id": "#216", "name": "Avalugg" },
+ { "id": "#217", "name": "Snover" },
+ { "id": "#218", "name": "Abomasnow" },
+ { "id": "#219", "name": "Zorua" },
+ { "id": "#220", "name": "Zoroark" },
+ { "id": "#221", "name": "Rufflet" },
+ { "id": "#222", "name": "Braviary" },
+ { "id": "#223", "name": "Riolu" },
+ { "id": "#224", "name": "Lucario" },
+ { "id": "#225", "name": "Uxie" },
+ { "id": "#226", "name": "Mesprit" },
+ { "id": "#227", "name": "Azelf" },
+ { "id": "#228", "name": "Heatran" },
+ { "id": "#229", "name": "Regigigas" },
+ { "id": "#230", "name": "Cresselia" },
+ { "id": "#231", "name": "Tornadus" },
+ { "id": "#232", "name": "Thundurus" },
+ { "id": "#233", "name": "Landorus" },
+ { "id": "#234", "name": "Enamorus" },
+ { "id": "#235", "name": "Dialga" },
+ { "id": "#236", "name": "Palkia" },
+ { "id": "#237", "name": "Giratina" },
+ { "id": "#238", "name": "Arceus" },
+ { "id": "#239", "name": "Phione" },
+ { "id": "#240", "name": "Manaphy" },
+ { "id": "#241", "name": "Shaymin" },
+ { "id": "#242", "name": "Darkrai" }
+]