package fuzzy

import (
	"strings"
)

var pokemonText []Option = []Option{
	NewOption("Bulbasaur", nil),
	NewOption("Ivysaur", nil),
	NewOption("Venusaur", nil),
	NewOption("Charmander", nil),
	NewOption("Charmeleon", nil),
	NewOption("Charizard", nil),
	NewOption("Squirtle", nil),
	NewOption("Wartortle", nil),
	NewOption("Blastoise", nil),
	NewOption("Caterpie", nil),
	NewOption("Metapod", nil),
	NewOption("Butterfree", nil),
	NewOption("Weedle", nil),
	NewOption("Kakuna", nil),
	NewOption("Beedrill", nil),
	NewOption("Pidgey", nil),
	NewOption("Pidgeotto", nil),
	NewOption("Pidgeot", nil),
	NewOption("Rattata", nil),
	NewOption("Raticate", nil),
	NewOption("Spearow", nil),
	NewOption("Fearow", nil),
	NewOption("Ekans", nil),
	NewOption("Arbok", nil),
	NewOption("Pikachu", nil),
	NewOption("Raichu", nil),
	NewOption("Sandshrew", nil),
	NewOption("Sandslash", nil),
	NewOption("Nidoran♀", nil),
	NewOption("Nidorina", nil),
	NewOption("Nidoqueen", nil),
	NewOption("Nidoran♂", nil),
	NewOption("Nidorino", nil),
	NewOption("Nidoking", nil),
	NewOption("Clefairy", nil),
	NewOption("Clefable", nil),
	NewOption("Vulpix", nil),
	NewOption("Ninetales", nil),
	NewOption("Jigglypuff", nil),
	NewOption("Wigglytuff", nil),
	NewOption("Zubat", nil),
	NewOption("Golbat", nil),
	NewOption("Oddish", nil),
	NewOption("Gloom", nil),
	NewOption("Vileplume", nil),
	NewOption("Paras", nil),
	NewOption("Parasect", nil),
	NewOption("Venonat", nil),
	NewOption("Venomoth", nil),
	NewOption("Diglett", nil),
	NewOption("Dugtrio", nil),
	NewOption("Meowth", nil),
	NewOption("Persian", nil),
	NewOption("Psyduck", nil),
	NewOption("Golduck", nil),
	NewOption("Mankey", nil),
	NewOption("Primeape", nil),
	NewOption("Growlithe", nil),
	NewOption("Arcanine", nil),
	NewOption("Poliwag", nil),
	NewOption("Poliwhirl", nil),
	NewOption("Poliwrath", nil),
	NewOption("Abra", nil),
	NewOption("Kadabra", nil),
	NewOption("Alakazam", nil),
	NewOption("Machop", nil),
	NewOption("Machoke", nil),
	NewOption("Machamp", nil),
	NewOption("Bellsprout", nil),
	NewOption("Weepinbell", nil),
	NewOption("Victreebel", nil),
	NewOption("Tentacool", nil),
	NewOption("Tentacruel", nil),
	NewOption("Geodude", nil),
	NewOption("Graveler", nil),
	NewOption("Golem", nil),
	NewOption("Ponyta", nil),
	NewOption("Rapidash", nil),
	NewOption("Slowpoke", nil),
	NewOption("Slowbro", nil),
	NewOption("Magnemite", nil),
	NewOption("Magneton", nil),
	NewOption("Farfetch'd", nil),
	NewOption("Doduo", nil),
	NewOption("Dodrio", nil),
	NewOption("Seel", nil),
	NewOption("Dewgong", nil),
	NewOption("Grimer", nil),
	NewOption("Muk", nil),
	NewOption("Shellder", nil),
	NewOption("Cloyster", nil),
	NewOption("Gastly", nil),
	NewOption("Haunter", nil),
	NewOption("Gengar", nil),
	NewOption("Onix", nil),
	NewOption("Drowzee", nil),
	NewOption("Hypno", nil),
	NewOption("Krabby", nil),
	NewOption("Kingler", nil),
	NewOption("Voltorb", nil),
	NewOption("Electrode", nil),
	NewOption("Exeggcute", nil),
	NewOption("Exeggutor", nil),
	NewOption("Cubone", nil),
	NewOption("Marowak", nil),
	NewOption("Hitmonlee", nil),
	NewOption("Hitmonchan", nil),
	NewOption("Lickitung", nil),
	NewOption("Koffing", nil),
	NewOption("Weezing", nil),
	NewOption("Rhyhorn", nil),
	NewOption("Rhydon", nil),
	NewOption("Chansey", nil),
	NewOption("Tangela", nil),
	NewOption("Kangaskhan", nil),
	NewOption("Horsea", nil),
	NewOption("Seadra", nil),
	NewOption("Goldeen", nil),
	NewOption("Seaking", nil),
	NewOption("Staryu", nil),
	NewOption("Starmie", nil),
	NewOption("Mr. Mime", nil),
	NewOption("Scyther", nil),
	NewOption("Jynx", nil),
	NewOption("Electabuzz", nil),
	NewOption("Magmar", nil),
	NewOption("Pinsir", nil),
	NewOption("Tauros", nil),
	NewOption("Magikarp", nil),
	NewOption("Gyarados", nil),
	NewOption("Lapras", nil),
	NewOption("Ditto", nil),
	NewOption("Eevee", nil),
	NewOption("Vaporeon", nil),
	NewOption("Jolteon", nil),
	NewOption("Flareon", nil),
	NewOption("Porygon", nil),
	NewOption("Omanyte", nil),
	NewOption("Omastar", nil),
	NewOption("Kabuto", nil),
	NewOption("Kabutops", nil),
	NewOption("Aerodactyl", nil),
	NewOption("Snorlax", nil),
	NewOption("Articuno", nil),
	NewOption("Zapdos", nil),
	NewOption("Moltres", nil),
	NewOption("Dratini", nil),
	NewOption("Dragonair", nil),
	NewOption("Dragonite", nil),
	NewOption("Mewtwo", nil),
	NewOption("Mew", nil),
}

func newColumnOption(columns ...string) (option Option) {
	option.setText(strings.Join(columns, "|"))
	option.Columns = columns
	return
}

var pokemonTable []Option = []Option{
	newColumnOption("Bulbasaur", "1", "Grass"),
	newColumnOption("Ivysaur", "2", "Grass"),
	newColumnOption("Venusaur", "3", "Grass"),
	newColumnOption("Charmander", "4", "Fire"),
	newColumnOption("Charmeleon", "5", "Fire"),
	newColumnOption("Charizard", "6", "Fire"),
	newColumnOption("Squirtle", "7", "Water"),
	newColumnOption("Wartortle", "8", "Water"),
	newColumnOption("Blastoise", "9", "Water"),
	newColumnOption("Caterpie", "10", "Bug"),
	newColumnOption("Metapod", "11", "Bug"),
	newColumnOption("Butterfree", "12", "Bug"),
	newColumnOption("Weedle", "13", "Bug"),
	newColumnOption("Kakuna", "14", "Bug"),
	newColumnOption("Beedrill", "15", "Bug"),
	newColumnOption("Pidgey", "16", "Normal"),
	newColumnOption("Pidgeotto", "17", "Normal"),
	newColumnOption("Pidgeot", "18", "Normal"),
	newColumnOption("Rattata", "19", "Normal"),
	newColumnOption("Raticate", "20", "Normal"),
	newColumnOption("Spearow", "21", "Normal"),
	newColumnOption("Fearow", "22", "Normal"),
	newColumnOption("Ekans", "23", "Poison"),
	newColumnOption("Arbok", "24", "Poison"),
	newColumnOption("Pikachu", "25", "Electric"),
	newColumnOption("Raichu", "26", "Electric"),
	newColumnOption("Sandshrew", "27", "Ground"),
	newColumnOption("Sandslash", "28", "Ground"),
	newColumnOption("Nidoran♀", "29", "Poison"),
	newColumnOption("Nidorina", "30", "Poison"),
	newColumnOption("Nidoqueen", "31", "Poison"),
	newColumnOption("Nidoran♂", "32", "Poison"),
	newColumnOption("Nidorino", "33", "Poison"),
	newColumnOption("Nidoking", "34", "Poison"),
	newColumnOption("Clefairy", "35", "Fairy"),
	newColumnOption("Clefable", "36", "Fairy"),
	newColumnOption("Vulpix", "37", "Fire"),
	newColumnOption("Ninetales", "38", "Fire"),
	newColumnOption("Jigglypuff", "39", "Normal"),
	newColumnOption("Wigglytuff", "40", "Normal"),
	newColumnOption("Zubat", "41", "Poison"),
	newColumnOption("Golbat", "42", "Poison"),
	newColumnOption("Oddish", "43", "Grass"),
	newColumnOption("Gloom", "44", "Grass"),
	newColumnOption("Vileplume", "45", "Grass"),
	newColumnOption("Paras", "46", "Bug"),
	newColumnOption("Parasect", "47", "Bug"),
	newColumnOption("Venonat", "48", "Bug"),
	newColumnOption("Venomoth", "49", "Bug"),
	newColumnOption("Diglett", "50", "Ground"),
	newColumnOption("Dugtrio", "51", "Ground"),
	newColumnOption("Meowth", "52", "Normal"),
	newColumnOption("Persian", "53", "Normal"),
	newColumnOption("Psyduck", "54", "Water"),
	newColumnOption("Golduck", "55", "Water"),
	newColumnOption("Mankey", "56", "Fighting"),
	newColumnOption("Primeape", "57", "Fighting"),
	newColumnOption("Growlithe", "58", "Fire"),
	newColumnOption("Arcanine", "59", "Fire"),
	newColumnOption("Poliwag", "60", "Water"),
	newColumnOption("Poliwhirl", "61", "Water"),
	newColumnOption("Poliwrath", "62", "Water"),
	newColumnOption("Abra", "63", "Psychic"),
	newColumnOption("Kadabra", "64", "Psychic"),
	newColumnOption("Alakazam", "65", "Psychic"),
	newColumnOption("Machop", "66", "Fighting"),
	newColumnOption("Machoke", "67", "Fighting"),
	newColumnOption("Machamp", "68", "Fighting"),
	newColumnOption("Bellsprout", "69", "Grass"),
	newColumnOption("Weepinbell", "70", "Grass"),
	newColumnOption("Victreebel", "71", "Grass"),
	newColumnOption("Tentacool", "72", "Water"),
	newColumnOption("Tentacruel", "73", "Water"),
	newColumnOption("Geodude", "74", "Rock"),
	newColumnOption("Graveler", "75", "Rock"),
	newColumnOption("Golem", "76", "Rock"),
	newColumnOption("Ponyta", "77", "Fire"),
	newColumnOption("Rapidash", "78", "Fire"),
	newColumnOption("Slowpoke", "79", "Water"),
	newColumnOption("Slowbro", "80", "Water"),
	newColumnOption("Magnemite", "81", "Electric"),
	newColumnOption("Magneton", "82", "Electric"),
	newColumnOption("Farfetch'd", "83", "Normal"),
	newColumnOption("Doduo", "84", "Normal"),
	newColumnOption("Dodrio", "85", "Normal"),
	newColumnOption("Seel", "86", "Water"),
	newColumnOption("Dewgong", "87", "Water"),
	newColumnOption("Grimer", "88", "Poison"),
	newColumnOption("Muk", "89", "Poison"),
	newColumnOption("Shellder", "90", "Water"),
	newColumnOption("Cloyster", "91", "Water"),
	newColumnOption("Gastly", "92", "Ghost"),
	newColumnOption("Haunter", "93", "Ghost"),
	newColumnOption("Gengar", "94", "Ghost"),
	newColumnOption("Onix", "95", "Rock"),
	newColumnOption("Drowzee", "96", "Psychic"),
	newColumnOption("Hypno", "97", "Psychic"),
	newColumnOption("Krabby", "98", "Water"),
	newColumnOption("Kingler", "99", "Water"),
	newColumnOption("Voltorb", "100", "Electric"),
	newColumnOption("Electrode", "101", "Electric"),
	newColumnOption("Exeggcute", "102", "Grass"),
	newColumnOption("Exeggutor", "103", "Grass"),
	newColumnOption("Cubone", "104", "Ground"),
	newColumnOption("Marowak", "105", "Ground"),
	newColumnOption("Hitmonlee", "106", "Fighting"),
	newColumnOption("Hitmonchan", "107", "Fighting"),
	newColumnOption("Lickitung", "108", "Normal"),
	newColumnOption("Koffing", "109", "Poison"),
	newColumnOption("Weezing", "110", "Poison"),
	newColumnOption("Rhyhorn", "111", "Ground"),
	newColumnOption("Rhydon", "112", "Ground"),
	newColumnOption("Chansey", "113", "Normal"),
	newColumnOption("Tangela", "114", "Grass"),
	newColumnOption("Kangaskhan", "115", "Normal"),
	newColumnOption("Horsea", "116", "Water"),
	newColumnOption("Seadra", "117", "Water"),
	newColumnOption("Goldeen", "118", "Water"),
	newColumnOption("Seaking", "119", "Water"),
	newColumnOption("Staryu", "120", "Water"),
	newColumnOption("Starmie", "121", "Water"),
	newColumnOption("Mr. Mime", "122", "Psychic"),
	newColumnOption("Scyther", "123", "Bug"),
	newColumnOption("Jynx", "124", "Ice"),
	newColumnOption("Electabuzz", "125", "Electric"),
	newColumnOption("Magmar", "126", "Fire"),
	newColumnOption("Pinsir", "127", "Bug"),
	newColumnOption("Tauros", "128", "Normal"),
	newColumnOption("Magikarp", "129", "Water"),
	newColumnOption("Gyarados", "130", "Water"),
	newColumnOption("Lapras", "131", "Water"),
	newColumnOption("Ditto", "132", "Normal"),
	newColumnOption("Eevee", "133", "Normal"),
	newColumnOption("Vaporeon", "134", "Water"),
	newColumnOption("Jolteon", "135", "Electric"),
	newColumnOption("Flareon", "136", "Fire"),
	newColumnOption("Porygon", "137", "Normal"),
	newColumnOption("Omanyte", "138", "Rock"),
	newColumnOption("Omastar", "139", "Rock"),
	newColumnOption("Kabuto", "140", "Rock"),
	newColumnOption("Kabutops", "141", "Rock"),
	newColumnOption("Aerodactyl", "142", "Rock"),
	newColumnOption("Snorlax", "143", "Normal"),
	newColumnOption("Articuno", "144", "Ice"),
	newColumnOption("Zapdos", "145", "Electric"),
	newColumnOption("Moltres", "146", "Fire"),
	newColumnOption("Dratini", "147", "Dragon"),
	newColumnOption("Dragonair", "148", "Dragon"),
	newColumnOption("Dragonite", "149", "Dragon"),
	newColumnOption("Mewtwo", "150", "Psychic"),
	newColumnOption("Mew", "151", "Psychic"),
}
