From e458ce6fdd58943a1dbf3406086d183d7e454a2a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Cie=C5=9Blar?= Date: Mon, 17 Jun 2024 21:45:08 +0100 Subject: [PATCH] refactor: change animal class to namespace (#693) --- include/faker-cxx/Animal.h | 334 +- src/modules/animal/Animal.cpp | 32 +- src/modules/animal/AnimalData.cpp | 5884 ++++++++++++++------------- src/modules/animal/AnimalData.h | 2 +- tests/modules/animal/AnimalTest.cpp | 32 +- 5 files changed, 3153 insertions(+), 3131 deletions(-) diff --git a/include/faker-cxx/Animal.h b/include/faker-cxx/Animal.h index fd6f8cb18..7569ec8d9 100644 --- a/include/faker-cxx/Animal.h +++ b/include/faker-cxx/Animal.h @@ -2,174 +2,170 @@ #include -namespace faker +namespace faker::animal { -class Animal -{ -public: - /** - * @brief Returns a random species of bear. - * - * @returns Species of bear. - * - * @code - * Animal::bear() // "Polar bear" - * @endcode - */ - static std::string_view bear(); - - /** - * @brief Returns a random species of bird. - * - * @returns Species of bird. - * - * @code - * Animal::bird() // "Black-bellied Whistling-Duck" - * @endcode - */ - static std::string_view bird(); - - /** - * @brief Returns a random species of cat. - * - * @returns Species of cat. - * - * @code - * Animal::cat() // "Chartreux" - * @endcode - */ - static std::string_view cat(); - - /** - * @brief Returns a random species of cetacean. - * - * @returns Species of cetacean. - * - * @code - * Animal::cetacean() // "Blue Whale" - * @endcode - */ - static std::string_view cetacean(); - - /** - * @brief Returns a random species of cow. - * - * @returns Species of cow. - * - * @code - * Animal::cow() // "American Angus" - * @endcode - */ - static std::string_view cow(); - - /** - * @brief Returns a random species of crocodilia. - * - * @returns Species of crocodilia. - * - * @code - * Animal::crocodile() // "Dwarf Crocodile" - * @endcode - */ - static std::string_view crocodile(); - - /** - * @brief Returns a random species of dog. - * - * @returns Species of dog. - * - * @code - * Animal::dog() // "Shiba Inu" - * @endcode - */ - static std::string_view dog(); - - /** - * @brief Returns a random species of fish. - * - * @returns Species of fish. - * - * @code - * Animal::fish() // "Silver carp" - * @endcode - */ - static std::string_view fish(); - - /** - * @brief Returns a random species of horse. - * - * @returns Species of horse. - * - * @code - * Animal::horse() // "Fjord Horse" - * @endcode - */ - static std::string_view horse(); - - /** - * @brief Returns a random species of insect. - * - * @returns Species of insect. - * - * @code - * Animal::insect() // "Bee" - * @endcode - */ - static std::string_view insect(); - - /** - * @brief Returns a random species of lion. - * - * @returns Species of lion. - * - * @code - * Animal::lion() // "West African Lion" - * @endcode - */ - static std::string_view lion(); - - /** - * @brief Returns a random species of rabbit. - * - * @returns Species of rabbit. - * - * @code - * Animal::rabbit() // "Californian" - * @endcode - */ - static std::string_view rabbit(); - - /** - * @brief Returns a random species of rodent. - * - * @returns Species of rodent. - * - * @code - * Animal::rodent() // "Chinchilla" - * @endcode - */ - static std::string_view rodent(); - - /** - * @brief Returns a random species of snake. - * - * @returns Species of snake. - * - * @code - * Animal::snake() // "Boa constrictor" - * @endcode - */ - static std::string_view snake(); - - /** - * @brief Returns a random type of animal. - * - * @returns Type of animal. - * - * @code - * Animal::type() // "dog" - * @endcode - */ - static std::string_view type(); -}; +/** + * @brief Returns a random species of bear. + * + * @returns Species of bear. + * + * @code + * animal::bear() // "Polar bear" + * @endcode + */ +std::string_view bear(); + +/** + * @brief Returns a random species of bird. + * + * @returns Species of bird. + * + * @code + * animal::bird() // "Black-bellied Whistling-Duck" + * @endcode + */ +std::string_view bird(); + +/** + * @brief Returns a random species of cat. + * + * @returns Species of cat. + * + * @code + * animal::cat() // "Chartreux" + * @endcode + */ +std::string_view cat(); + +/** + * @brief Returns a random species of cetacean. + * + * @returns Species of cetacean. + * + * @code + * animal::cetacean() // "Blue Whale" + * @endcode + */ +std::string_view cetacean(); + +/** + * @brief Returns a random species of cow. + * + * @returns Species of cow. + * + * @code + * animal::cow() // "American Angus" + * @endcode + */ +std::string_view cow(); + +/** + * @brief Returns a random species of crocodilia. + * + * @returns Species of crocodilia. + * + * @code + * animal::crocodile() // "Dwarf Crocodile" + * @endcode + */ +std::string_view crocodile(); + +/** + * @brief Returns a random species of dog. + * + * @returns Species of dog. + * + * @code + * animal::dog() // "Shiba Inu" + * @endcode + */ +std::string_view dog(); + +/** + * @brief Returns a random species of fish. + * + * @returns Species of fish. + * + * @code + * animal::fish() // "Silver carp" + * @endcode + */ +std::string_view fish(); + +/** + * @brief Returns a random species of horse. + * + * @returns Species of horse. + * + * @code + * animal::horse() // "Fjord Horse" + * @endcode + */ +std::string_view horse(); + +/** + * @brief Returns a random species of insect. + * + * @returns Species of insect. + * + * @code + * animal::insect() // "Bee" + * @endcode + */ +std::string_view insect(); + +/** + * @brief Returns a random species of lion. + * + * @returns Species of lion. + * + * @code + * animal::lion() // "West African Lion" + * @endcode + */ +std::string_view lion(); + +/** + * @brief Returns a random species of rabbit. + * + * @returns Species of rabbit. + * + * @code + * animal::rabbit() // "Californian" + * @endcode + */ +std::string_view rabbit(); + +/** + * @brief Returns a random species of rodent. + * + * @returns Species of rodent. + * + * @code + * animal::rodent() // "Chinchilla" + * @endcode + */ +std::string_view rodent(); + +/** + * @brief Returns a random species of snake. + * + * @returns Species of snake. + * + * @code + * animal::snake() // "Boa constrictor" + * @endcode + */ +std::string_view snake(); + +/** + * @brief Returns a random type of animal. + * + * @returns Type of animal. + * + * @code + * animal::type() // "dog" + * @endcode + */ +std::string_view type(); } diff --git a/src/modules/animal/Animal.cpp b/src/modules/animal/Animal.cpp index 8fdca47b0..ca4687de5 100644 --- a/src/modules/animal/Animal.cpp +++ b/src/modules/animal/Animal.cpp @@ -5,79 +5,79 @@ #include "AnimalData.h" #include "faker-cxx/Helper.h" -namespace faker +namespace faker::animal { -std::string_view Animal::bear() +std::string_view bear() { return Helper::arrayElement(bears); } -std::string_view Animal::bird() +std::string_view bird() { return Helper::arrayElement(birds); } -std::string_view Animal::cat() +std::string_view cat() { return Helper::arrayElement(cats); } -std::string_view Animal::cetacean() +std::string_view cetacean() { return Helper::arrayElement(cetaceans); } -std::string_view Animal::cow() +std::string_view cow() { return Helper::arrayElement(cows); } -std::string_view Animal::crocodile() +std::string_view crocodile() { return Helper::arrayElement(crocodiles); } -std::string_view Animal::dog() +std::string_view dog() { return Helper::arrayElement(dogs); } -std::string_view Animal::fish() +std::string_view fish() { return Helper::arrayElement(fishes); } -std::string_view Animal::horse() +std::string_view horse() { return Helper::arrayElement(horses); } -std::string_view Animal::insect() +std::string_view insect() { return Helper::arrayElement(insects); } -std::string_view Animal::lion() +std::string_view lion() { return Helper::arrayElement(lions); } -std::string_view Animal::rabbit() +std::string_view rabbit() { return Helper::arrayElement(rabbits); } -std::string_view Animal::rodent() +std::string_view rodent() { return Helper::arrayElement(rodents); } -std::string_view Animal::snake() +std::string_view snake() { return Helper::arrayElement(snakes); } -std::string_view Animal::type() +std::string_view type() { return Helper::arrayElement(types); } diff --git a/src/modules/animal/AnimalData.cpp b/src/modules/animal/AnimalData.cpp index 47d5f6be6..860e2a7eb 100644 --- a/src/modules/animal/AnimalData.cpp +++ b/src/modules/animal/AnimalData.cpp @@ -3,1036 +3,1044 @@ #include #include -namespace faker +namespace faker::animal { -const std::array bears = {"Giant panda", "Spectacled bear", "Sun bear", "Sloth bear", - "American black bear", "Asian black bear", "Brown bear", "Polar bear"}; +const std::array bears = { + "Giant panda", "Spectacled bear", "Sun bear", "Sloth bear", + "American black bear", "Asian black bear", "Brown bear", "Polar bear", +}; -const std::array birds = {"Red-throated Loon", - "Arctic Loon", - "Pacific Loon", - "Common Loon", - "Yellow-billed Loon", - "Least Grebe", - "Pied-billed Grebe", - "Horned Grebe", - "Red-necked Grebe", - "Eared Grebe", - "Western Grebe", - "Clark's Grebe", - "Yellow-nosed Albatross", - "Shy Albatross", - "Black-browed Albatross", - "Wandering Albatross", - "Laysan Albatross", - "Black-footed Albatross", - "Short-tailed Albatross", - "Northern Fulmar", - "Herald Petrel", - "Murphy's Petrel", - "Mottled Petrel", - "Black-capped Petrel", - "Cook's Petrel", - "Stejneger's Petrel", - "White-chinned Petrel", - "Streaked Shearwater", - "Cory's Shearwater", - "Pink-footed Shearwater", - "Flesh-footed Shearwater", - "Greater Shearwater", - "Wedge-tailed Shearwater", - "Buller's Shearwater", - "Sooty Shearwater", - "Short-tailed Shearwater", - "Manx Shearwater", - "Black-vented Shearwater", - "Audubon's Shearwater", - "Little Shearwater", - "Wilson's Storm-Petrel", - "White-faced Storm-Petrel", - "European Storm-Petrel", - "Fork-tailed Storm-Petrel", - "Leach's Storm-Petrel", - "Ashy Storm-Petrel", - "Band-rumped Storm-Petrel", - "Wedge-rumped Storm-Petrel", - "Black Storm-Petrel", - "Least Storm-Petrel", - "White-tailed Tropicbird", - "Red-billed Tropicbird", - "Red-tailed Tropicbird", - "Masked Booby", - "Blue-footed Booby", - "Brown Booby", - "Red-footed Booby", - "Northern Gannet", - "American White Pelican", - "Brown Pelican", - "Brandt's Cormorant", - "Neotropic Cormorant", - "Double-crested Cormorant", - "Great Cormorant", - "Red-faced Cormorant", - "Pelagic Cormorant", - "Anhinga", - "Magnificent Frigatebird", - "Great Frigatebird", - "Lesser Frigatebird", - "American Bittern", - "Yellow Bittern", - "Least Bittern", - "Great Blue Heron", - "Great Egret", - "Chinese Egret", - "Little Egret", - "Western Reef-Heron", - "Snowy Egret", - "Little Blue Heron", - "Tricolored Heron", - "Reddish Egret", - "Cattle Egret", - "Green Heron", - "Black-crowned Night-Heron", - "Yellow-crowned Night-Heron", - "White Ibis", - "Scarlet Ibis", - "Glossy Ibis", - "White-faced Ibis", - "Roseate Spoonbill", - "Jabiru", - "Wood Stork", - "Black Vulture", - "Turkey Vulture", - "California Condor", - "Greater Flamingo", - "Black-bellied Whistling-Duck", - "Fulvous Whistling-Duck", - "Bean Goose", - "Pink-footed Goose", - "Greater White-fronted Goose", - "Lesser White-fronted Goose", - "Emperor Goose", - "Snow Goose", - "Ross's Goose", - "Canada Goose", - "Brant", - "Barnacle Goose", - "Mute Swan", - "Trumpeter Swan", - "Tundra Swan", - "Whooper Swan", - "Muscovy Duck", - "Wood Duck", - "Gadwall", - "Falcated Duck", - "Eurasian Wigeon", - "American Wigeon", - "American Black Duck", - "Mallard", - "Mottled Duck", - "Spot-billed Duck", - "Blue-winged Teal", - "Cinnamon Teal", - "Northern Shoveler", - "White-cheeked Pintail", - "Northern Pintail", - "Garganey", - "Baikal Teal", - "Green-winged Teal", - "Canvasback", - "Redhead", - "Common Pochard", - "Ring-necked Duck", - "Tufted Duck", - "Greater Scaup", - "Lesser Scaup", - "Steller's Eider", - "Spectacled Eider", - "King Eider", - "Common Eider", - "Harlequin Duck", - "Labrador Duck", - "Surf Scoter", - "White-winged Scoter", - "Black Scoter", - "Oldsquaw", - "Bufflehead", - "Common Goldeneye", - "Barrow's Goldeneye", - "Smew", - "Hooded Merganser", - "Common Merganser", - "Red-breasted Merganser", - "Masked Duck", - "Ruddy Duck", - "Osprey", - "Hook-billed Kite", - "Swallow-tailed Kite", - "White-tailed Kite", - "Snail Kite", - "Mississippi Kite", - "Bald Eagle", - "White-tailed Eagle", - "Steller's Sea-Eagle", - "Northern Harrier", - "Sharp-shinned Hawk", - "Cooper's Hawk", - "Northern Goshawk", - "Crane Hawk", - "Gray Hawk", - "Common Black-Hawk", - "Harris's Hawk", - "Roadside Hawk", - "Red-shouldered Hawk", - "Broad-winged Hawk", - "Short-tailed Hawk", - "Swainson's Hawk", - "White-tailed Hawk", - "Zone-tailed Hawk", - "Red-tailed Hawk", - "Ferruginous Hawk", - "Rough-legged Hawk", - "Golden Eagle", - "Collared Forest-Falcon", - "Crested Caracara", - "Eurasian Kestrel", - "American Kestrel", - "Merlin", - "Eurasian Hobby", - "Aplomado Falcon", - "Gyrfalcon", - "Peregrine Falcon", - "Prairie Falcon", - "Plain Chachalaca", - "Chukar", - "Himalayan Snowcock", - "Gray Partridge", - "Ring-necked Pheasant", - "Ruffed Grouse", - "Sage Grouse", - "Spruce Grouse", - "Willow Ptarmigan", - "Rock Ptarmigan", - "White-tailed Ptarmigan", - "Blue Grouse", - "Sharp-tailed Grouse", - "Greater Prairie-chicken", - "Lesser Prairie-chicken", - "Wild Turkey", - "Mountain Quail", - "Scaled Quail", - "California Quail", - "Gambel's Quail", - "Northern Bobwhite", - "Montezuma Quail", - "Yellow Rail", - "Black Rail", - "Corn Crake", - "Clapper Rail", - "King Rail", - "Virginia Rail", - "Sora", - "Paint-billed Crake", - "Spotted Rail", - "Purple Gallinule", - "Azure Gallinule", - "Common Moorhen", - "Eurasian Coot", - "American Coot", - "Limpkin", - "Sandhill Crane", - "Common Crane", - "Whooping Crane", - "Double-striped Thick-knee", - "Northern Lapwing", - "Black-bellied Plover", - "European Golden-Plover", - "American Golden-Plover", - "Pacific Golden-Plover", - "Mongolian Plover", - "Collared Plover", - "Snowy Plover", - "Wilson's Plover", - "Common Ringed Plover", - "Semipalmated Plover", - "Piping Plover", - "Little Ringed Plover", - "Killdeer", - "Mountain Plover", - "Eurasian Dotterel", - "Eurasian Oystercatcher", - "American Oystercatcher", - "Black Oystercatcher", - "Black-winged Stilt", - "Black-necked Stilt", - "American Avocet", - "Northern Jacana", - "Common Greenshank", - "Greater Yellowlegs", - "Lesser Yellowlegs", - "Marsh Sandpiper", - "Spotted Redshank", - "Wood Sandpiper", - "Green Sandpiper", - "Solitary Sandpiper", - "Willet", - "Wandering Tattler", - "Gray-tailed Tattler", - "Common Sandpiper", - "Spotted Sandpiper", - "Terek Sandpiper", - "Upland Sandpiper", - "Little Curlew", - "Eskimo Curlew", - "Whimbrel", - "Bristle-thighed Curlew", - "Far Eastern Curlew", - "Slender-billed Curlew", - "Eurasian Curlew", - "Long-billed Curlew", - "Black-tailed Godwit", - "Hudsonian Godwit", - "Bar-tailed Godwit", - "Marbled Godwit", - "Ruddy Turnstone", - "Black Turnstone", - "Surfbird", - "Great Knot", - "Red Knot", - "Sanderling", - "Semipalmated Sandpiper", - "Western Sandpiper", - "Red-necked Stint", - "Little Stint", - "Temminck's Stint", - "Long-toed Stint", - "Least Sandpiper", - "White-rumped Sandpiper", - "Baird's Sandpiper", - "Pectoral Sandpiper", - "Sharp-tailed Sandpiper", - "Purple Sandpiper", - "Rock Sandpiper", - "Dunlin", - "Curlew Sandpiper", - "Stilt Sandpiper", - "Spoonbill Sandpiper", - "Broad-billed Sandpiper", - "Buff-breasted Sandpiper", - "Ruff", - "Short-billed Dowitcher", - "Long-billed Dowitcher", - "Jack Snipe", - "Common Snipe", - "Pin-tailed Snipe", - "Eurasian Woodcock", - "American Woodcock", - "Wilson's Phalarope", - "Red-necked Phalarope", - "Red Phalarope", - "Oriental Pratincole", - "Great Skua", - "South Polar Skua", - "Pomarine Jaeger", - "Parasitic Jaeger", - "Long-tailed Jaeger", - "Laughing Gull", - "Franklin's Gull", - "Little Gull", - "Black-headed Gull", - "Bonaparte's Gull", - "Heermann's Gull", - "Band-tailed Gull", - "Black-tailed Gull", - "Mew Gull", - "Ring-billed Gull", - "California Gull", - "Herring Gull", - "Yellow-legged Gull", - "Thayer's Gull", - "Iceland Gull", - "Lesser Black-backed Gull", - "Slaty-backed Gull", - "Yellow-footed Gull", - "Western Gull", - "Glaucous-winged Gull", - "Glaucous Gull", - "Great Black-backed Gull", - "Sabine's Gull", - "Black-legged Kittiwake", - "Red-legged Kittiwake", - "Ross's Gull", - "Ivory Gull", - "Gull-billed Tern", - "Caspian Tern", - "Royal Tern", - "Elegant Tern", - "Sandwich Tern", - "Roseate Tern", - "Common Tern", - "Arctic Tern", - "Forster's Tern", - "Least Tern", - "Aleutian Tern", - "Bridled Tern", - "Sooty Tern", - "Large-billed Tern", - "White-winged Tern", - "Whiskered Tern", - "Black Tern", - "Brown Noddy", - "Black Noddy", - "Black Skimmer", - "Dovekie", - "Common Murre", - "Thick-billed Murre", - "Razorbill", - "Great Auk", - "Black Guillemot", - "Pigeon Guillemot", - "Long-billed Murrelet", - "Marbled Murrelet", - "Kittlitz's Murrelet", - "Xantus's Murrelet", - "Craveri's Murrelet", - "Ancient Murrelet", - "Cassin's Auklet", - "Parakeet Auklet", - "Least Auklet", - "Whiskered Auklet", - "Crested Auklet", - "Rhinoceros Auklet", - "Atlantic Puffin", - "Horned Puffin", - "Tufted Puffin", - "Rock Dove", - "Scaly-naped Pigeon", - "White-crowned Pigeon", - "Red-billed Pigeon", - "Band-tailed Pigeon", - "Oriental Turtle-Dove", - "European Turtle-Dove", - "Eurasian Collared-Dove", - "Spotted Dove", - "White-winged Dove", - "Zenaida Dove", - "Mourning Dove", - "Passenger Pigeon", - "Inca Dove", - "Common Ground-Dove", - "Ruddy Ground-Dove", - "White-tipped Dove", - "Key West Quail-Dove", - "Ruddy Quail-Dove", - "Budgerigar", - "Monk Parakeet", - "Carolina Parakeet", - "Thick-billed Parrot", - "White-winged Parakeet", - "Red-crowned Parrot", - "Common Cuckoo", - "Oriental Cuckoo", - "Black-billed Cuckoo", - "Yellow-billed Cuckoo", - "Mangrove Cuckoo", - "Greater Roadrunner", - "Smooth-billed Ani", - "Groove-billed Ani", - "Barn Owl", - "Flammulated Owl", - "Oriental Scops-Owl", - "Western Screech-Owl", - "Eastern Screech-Owl", - "Whiskered Screech-Owl", - "Great Horned Owl", - "Snowy Owl", - "Northern Hawk Owl", - "Northern Pygmy-Owl", - "Ferruginous Pygmy-Owl", - "Elf Owl", - "Burrowing Owl", - "Mottled Owl", - "Spotted Owl", - "Barred Owl", - "Great Gray Owl", - "Long-eared Owl", - "Short-eared Owl", - "Boreal Owl", - "Northern Saw-whet Owl", - "Lesser Nighthawk", - "Common Nighthawk", - "Antillean Nighthawk", - "Common Pauraque", - "Common Poorwill", - "Chuck-will's-widow", - "Buff-collared Nightjar", - "Whip-poor-will", - "Jungle Nightjar", - "Black Swift", - "White-collared Swift", - "Chimney Swift", - "Vaux's Swift", - "White-throated Needletail", - "Common Swift", - "Fork-tailed Swift", - "White-throated Swift", - "Antillean Palm Swift", - "Green Violet-ear", - "Green-breasted Mango", - "Broad-billed Hummingbird", - "White-eared Hummingbird", - "Xantus's Hummingbird", - "Berylline Hummingbird", - "Buff-bellied Hummingbird", - "Cinnamon Hummingbird", - "Violet-crowned Hummingbird", - "Blue-throated Hummingbird", - "Magnificent Hummingbird", - "Plain-capped Starthroat", - "Bahama Woodstar", - "Lucifer Hummingbird", - "Ruby-throated Hummingbird", - "Black-chinned Hummingbird", - "Anna's Hummingbird", - "Costa's Hummingbird", - "Calliope Hummingbird", - "Bumblebee Hummingbird", - "Broad-tailed Hummingbird", - "Rufous Hummingbird", - "Allen's Hummingbird", - "Elegant Trogon", - "Eared Trogon", - "Hoopoe", - "Ringed Kingfisher", - "Belted Kingfisher", - "Green Kingfisher", - "Eurasian Wryneck", - "Lewis's Woodpecker", - "Red-headed Woodpecker", - "Acorn Woodpecker", - "Gila Woodpecker", - "Golden-fronted Woodpecker", - "Red-bellied Woodpecker", - "Williamson's Sapsucker", - "Yellow-bellied Sapsucker", - "Red-naped Sapsucker", - "Red-breasted Sapsucker", - "Great Spotted Woodpecker", - "Ladder-backed Woodpecker", - "Nuttall's Woodpecker", - "Downy Woodpecker", - "Hairy Woodpecker", - "Strickland's Woodpecker", - "Red-cockaded Woodpecker", - "White-headed Woodpecker", - "Three-toed Woodpecker", - "Black-backed Woodpecker", - "Northern Flicker", - "Gilded Flicker", - "Pileated Woodpecker", - "Ivory-billed Woodpecker", - "Northern Beardless-Tyrannulet", - "Greenish Elaenia", - "Caribbean Elaenia", - "Tufted Flycatcher", - "Olive-sided Flycatcher", - "Greater Pewee", - "Western Wood-Pewee", - "Eastern Wood-Pewee", - "Yellow-bellied Flycatcher", - "Acadian Flycatcher", - "Alder Flycatcher", - "Willow Flycatcher", - "Least Flycatcher", - "Hammond's Flycatcher", - "Dusky Flycatcher", - "Gray Flycatcher", - "Pacific-slope Flycatcher", - "Cordilleran Flycatcher", - "Buff-breasted Flycatcher", - "Black Phoebe", - "Eastern Phoebe", - "Say's Phoebe", - "Vermilion Flycatcher", - "Dusky-capped Flycatcher", - "Ash-throated Flycatcher", - "Nutting's Flycatcher", - "Great Crested Flycatcher", - "Brown-crested Flycatcher", - "La Sagra's Flycatcher", - "Great Kiskadee", - "Sulphur-bellied Flycatcher", - "Variegated Flycatcher", - "Tropical Kingbird", - "Couch's Kingbird", - "Cassin's Kingbird", - "Thick-billed Kingbird", - "Western Kingbird", - "Eastern Kingbird", - "Gray Kingbird", - "Loggerhead Kingbird", - "Scissor-tailed Flycatcher", - "Fork-tailed Flycatcher", - "Rose-throated Becard", - "Masked Tityra", - "Brown Shrike", - "Loggerhead Shrike", - "Northern Shrike", - "White-eyed Vireo", - "Thick-billed Vireo", - "Bell's Vireo", - "Black-capped Vireo", - "Gray Vireo", - "Yellow-throated Vireo", - "Plumbeous Vireo", - "Cassin's Vireo", - "Blue-headed Vireo", - "Hutton's Vireo", - "Warbling Vireo", - "Philadelphia Vireo", - "Red-eyed Vireo", - "Yellow-green Vireo", - "Black-whiskered Vireo", - "Yucatan Vireo", - "Gray Jay", - "Steller's Jay", - "Blue Jay", - "Green Jay", - "Brown Jay", - "Florida Scrub-Jay", - "Island Scrub-Jay", - "Western Scrub-Jay", - "Mexican Jay", - "Pinyon Jay", - "Clark's Nutcracker", - "Black-billed Magpie", - "Yellow-billed Magpie", - "Eurasian Jackdaw", - "American Crow", - "Northwestern Crow", - "Tamaulipas Crow", - "Fish Crow", - "Chihuahuan Raven", - "Common Raven", - "Sky Lark", - "Horned Lark", - "Purple Martin", - "Cuban Martin", - "Gray-breasted Martin", - "Southern Martin", - "Brown-chested Martin", - "Tree Swallow", - "Violet-green Swallow", - "Bahama Swallow", - "Northern Rough-winged Swallow", - "Bank Swallow", - "Cliff Swallow", - "Cave Swallow", - "Barn Swallow", - "Common House-Martin", - "Carolina Chickadee", - "Black-capped Chickadee", - "Mountain Chickadee", - "Mexican Chickadee", - "Chestnut-backed Chickadee", - "Boreal Chickadee", - "Gray-headed Chickadee", - "Bridled Titmouse", - "Oak Titmouse", - "Juniper Titmouse", - "Tufted Titmouse", - "Verdin", - "Bushtit", - "Red-breasted Nuthatch", - "White-breasted Nuthatch", - "Pygmy Nuthatch", - "Brown-headed Nuthatch", - "Brown Creeper", - "Cactus Wren", - "Rock Wren", - "Canyon Wren", - "Carolina Wren", - "Bewick's Wren", - "House Wren", - "Winter Wren", - "Sedge Wren", - "Marsh Wren", - "American Dipper", - "Red-whiskered Bulbul", - "Golden-crowned Kinglet", - "Ruby-crowned Kinglet", - "Middendorff's Grasshopper-Warbler", - "Lanceolated Warbler", - "Wood Warbler", - "Dusky Warbler", - "Arctic Warbler", - "Blue-gray Gnatcatcher", - "California Gnatcatcher", - "Black-tailed Gnatcatcher", - "Black-capped Gnatcatcher", - "Narcissus Flycatcher", - "Mugimaki Flycatcher", - "Red-breasted Flycatcher", - "Siberian Flycatcher", - "Gray-spotted Flycatcher", - "Asian Brown Flycatcher", - "Siberian Rubythroat", - "Bluethroat", - "Siberian Blue Robin", - "Red-flanked Bluetail", - "Northern Wheatear", - "Stonechat", - "Eastern Bluebird", - "Western Bluebird", - "Mountain Bluebird", - "Townsend's Solitaire", - "Veery", - "Gray-cheeked Thrush", - "Bicknell's Thrush", - "Swainson's Thrush", - "Hermit Thrush", - "Wood Thrush", - "Eurasian Blackbird", - "Eyebrowed Thrush", - "Dusky Thrush", - "Fieldfare", - "Redwing", - "Clay-colored Robin", - "White-throated Robin", - "Rufous-backed Robin", - "American Robin", - "Varied Thrush", - "Aztec Thrush", - "Wrentit", - "Gray Catbird", - "Black Catbird", - "Northern Mockingbird", - "Bahama Mockingbird", - "Sage Thrasher", - "Brown Thrasher", - "Long-billed Thrasher", - "Bendire's Thrasher", - "Curve-billed Thrasher", - "California Thrasher", - "Crissal Thrasher", - "Le Conte's Thrasher", - "Blue Mockingbird", - "European Starling", - "Crested Myna", - "Siberian Accentor", - "Yellow Wagtail", - "Citrine Wagtail", - "Gray Wagtail", - "White Wagtail", - "Black-backed Wagtail", - "Tree Pipit", - "Olive-backed Pipit", - "Pechora Pipit", - "Red-throated Pipit", - "American Pipit", - "Sprague's Pipit", - "Bohemian Waxwing", - "Cedar Waxwing", - "Gray Silky-flycatcher", - "Phainopepla", - "Olive Warbler", - "Bachman's Warbler", - "Blue-winged Warbler", - "Golden-winged Warbler", - "Tennessee Warbler", - "Orange-crowned Warbler", - "Nashville Warbler", - "Virginia's Warbler", - "Colima Warbler", - "Lucy's Warbler", - "Crescent-chested Warbler", - "Northern Parula", - "Tropical Parula", - "Yellow Warbler", - "Chestnut-sided Warbler", - "Magnolia Warbler", - "Cape May Warbler", - "Black-throated Blue Warbler", - "Yellow-rumped Warbler", - "Black-throated Gray Warbler", - "Golden-cheeked Warbler", - "Black-throated Green Warbler", - "Townsend's Warbler", - "Hermit Warbler", - "Blackburnian Warbler", - "Yellow-throated Warbler", - "Grace's Warbler", - "Pine Warbler", - "Kirtland's Warbler", - "Prairie Warbler", - "Palm Warbler", - "Bay-breasted Warbler", - "Blackpoll Warbler", - "Cerulean Warbler", - "Black-and-white Warbler", - "American Redstart", - "Prothonotary Warbler", - "Worm-eating Warbler", - "Swainson's Warbler", - "Ovenbird", - "Northern Waterthrush", - "Louisiana Waterthrush", - "Kentucky Warbler", - "Connecticut Warbler", - "Mourning Warbler", - "MacGillivray's Warbler", - "Common Yellowthroat", - "Gray-crowned Yellowthroat", - "Hooded Warbler", - "Wilson's Warbler", - "Canada Warbler", - "Red-faced Warbler", - "Painted Redstart", - "Slate-throated Redstart", - "Fan-tailed Warbler", - "Golden-crowned Warbler", - "Rufous-capped Warbler", - "Yellow-breasted Chat", - "Bananaquit", - "Hepatic Tanager", - "Summer Tanager", - "Scarlet Tanager", - "Western Tanager", - "Flame-colored Tanager", - "Stripe-headed Tanager", - "White-collared Seedeater", - "Yellow-faced Grassquit", - "Black-faced Grassquit", - "Olive Sparrow", - "Green-tailed Towhee", - "Spotted Towhee", - "Eastern Towhee", - "Canyon Towhee", - "California Towhee", - "Abert's Towhee", - "Rufous-winged Sparrow", - "Cassin's Sparrow", - "Bachman's Sparrow", - "Botteri's Sparrow", - "Rufous-crowned Sparrow", - "Five-striped Sparrow", - "American Tree Sparrow", - "Chipping Sparrow", - "Clay-colored Sparrow", - "Brewer's Sparrow", - "Field Sparrow", - "Worthen's Sparrow", - "Black-chinned Sparrow", - "Vesper Sparrow", - "Lark Sparrow", - "Black-throated Sparrow", - "Sage Sparrow", - "Lark Bunting", - "Savannah Sparrow", - "Grasshopper Sparrow", - "Baird's Sparrow", - "Henslow's Sparrow", - "Le Conte's Sparrow", - "Nelson's Sharp-tailed Sparrow", - "Saltmarsh Sharp-tailed Sparrow", - "Seaside Sparrow", - "Fox Sparrow", - "Song Sparrow", - "Lincoln's Sparrow", - "Swamp Sparrow", - "White-throated Sparrow", - "Harris's Sparrow", - "White-crowned Sparrow", - "Golden-crowned Sparrow", - "Dark-eyed Junco", - "Yellow-eyed Junco", - "McCown's Longspur", - "Lapland Longspur", - "Smith's Longspur", - "Chestnut-collared Longspur", - "Pine Bunting", - "Little Bunting", - "Rustic Bunting", - "Yellow-breasted Bunting", - "Gray Bunting", - "Pallas's Bunting", - "Reed Bunting", - "Snow Bunting", - "McKay's Bunting", - "Crimson-collared Grosbeak", - "Northern Cardinal", - "Pyrrhuloxia", - "Yellow Grosbeak", - "Rose-breasted Grosbeak", - "Black-headed Grosbeak", - "Blue Bunting", - "Blue Grosbeak", - "Lazuli Bunting", - "Indigo Bunting", - "Varied Bunting", - "Painted Bunting", - "Dickcissel", - "Bobolink", - "Red-winged Blackbird", - "Tricolored Blackbird", - "Tawny-shouldered Blackbird", - "Eastern Meadowlark", - "Western Meadowlark", - "Yellow-headed Blackbird", - "Rusty Blackbird", - "Brewer's Blackbird", - "Common Grackle", - "Boat-tailed Grackle", - "Great-tailed Grackle", - "Shiny Cowbird", - "Bronzed Cowbird", - "Brown-headed Cowbird", - "Black-vented Oriole", - "Orchard Oriole", - "Hooded Oriole", - "Streak-backed Oriole", - "Spot-breasted Oriole", - "Altamira Oriole", - "Audubon's Oriole", - "Baltimore Oriole", - "Bullock's Oriole", - "Scott's Oriole", - "Common Chaffinch", - "Brambling", - "Gray-crowned Rosy-Finch", - "Black Rosy-Finch", - "Brown-capped Rosy-Finch", - "Pine Grosbeak", - "Common Rosefinch", - "Purple Finch", - "Cassin's Finch", - "House Finch", - "Red Crossbill", - "White-winged Crossbill", - "Common Redpoll", - "Hoary Redpoll", - "Eurasian Siskin", - "Pine Siskin", - "Lesser Goldfinch", - "Lawrence's Goldfinch", - "American Goldfinch", - "Oriental Greenfinch", - "Eurasian Bullfinch", - "Evening Grosbeak", - "Hawfinch", - "House Sparrow", - "Eurasian Tree Sparrow"}; +const std::array birds = { + "Red-throated Loon", + "Arctic Loon", + "Pacific Loon", + "Common Loon", + "Yellow-billed Loon", + "Least Grebe", + "Pied-billed Grebe", + "Horned Grebe", + "Red-necked Grebe", + "Eared Grebe", + "Western Grebe", + "Clark's Grebe", + "Yellow-nosed Albatross", + "Shy Albatross", + "Black-browed Albatross", + "Wandering Albatross", + "Laysan Albatross", + "Black-footed Albatross", + "Short-tailed Albatross", + "Northern Fulmar", + "Herald Petrel", + "Murphy's Petrel", + "Mottled Petrel", + "Black-capped Petrel", + "Cook's Petrel", + "Stejneger's Petrel", + "White-chinned Petrel", + "Streaked Shearwater", + "Cory's Shearwater", + "Pink-footed Shearwater", + "Flesh-footed Shearwater", + "Greater Shearwater", + "Wedge-tailed Shearwater", + "Buller's Shearwater", + "Sooty Shearwater", + "Short-tailed Shearwater", + "Manx Shearwater", + "Black-vented Shearwater", + "Audubon's Shearwater", + "Little Shearwater", + "Wilson's Storm-Petrel", + "White-faced Storm-Petrel", + "European Storm-Petrel", + "Fork-tailed Storm-Petrel", + "Leach's Storm-Petrel", + "Ashy Storm-Petrel", + "Band-rumped Storm-Petrel", + "Wedge-rumped Storm-Petrel", + "Black Storm-Petrel", + "Least Storm-Petrel", + "White-tailed Tropicbird", + "Red-billed Tropicbird", + "Red-tailed Tropicbird", + "Masked Booby", + "Blue-footed Booby", + "Brown Booby", + "Red-footed Booby", + "Northern Gannet", + "American White Pelican", + "Brown Pelican", + "Brandt's Cormorant", + "Neotropic Cormorant", + "Double-crested Cormorant", + "Great Cormorant", + "Red-faced Cormorant", + "Pelagic Cormorant", + "Anhinga", + "Magnificent Frigatebird", + "Great Frigatebird", + "Lesser Frigatebird", + "American Bittern", + "Yellow Bittern", + "Least Bittern", + "Great Blue Heron", + "Great Egret", + "Chinese Egret", + "Little Egret", + "Western Reef-Heron", + "Snowy Egret", + "Little Blue Heron", + "Tricolored Heron", + "Reddish Egret", + "Cattle Egret", + "Green Heron", + "Black-crowned Night-Heron", + "Yellow-crowned Night-Heron", + "White Ibis", + "Scarlet Ibis", + "Glossy Ibis", + "White-faced Ibis", + "Roseate Spoonbill", + "Jabiru", + "Wood Stork", + "Black Vulture", + "Turkey Vulture", + "California Condor", + "Greater Flamingo", + "Black-bellied Whistling-Duck", + "Fulvous Whistling-Duck", + "Bean Goose", + "Pink-footed Goose", + "Greater White-fronted Goose", + "Lesser White-fronted Goose", + "Emperor Goose", + "Snow Goose", + "Ross's Goose", + "Canada Goose", + "Brant", + "Barnacle Goose", + "Mute Swan", + "Trumpeter Swan", + "Tundra Swan", + "Whooper Swan", + "Muscovy Duck", + "Wood Duck", + "Gadwall", + "Falcated Duck", + "Eurasian Wigeon", + "American Wigeon", + "American Black Duck", + "Mallard", + "Mottled Duck", + "Spot-billed Duck", + "Blue-winged Teal", + "Cinnamon Teal", + "Northern Shoveler", + "White-cheeked Pintail", + "Northern Pintail", + "Garganey", + "Baikal Teal", + "Green-winged Teal", + "Canvasback", + "Redhead", + "Common Pochard", + "Ring-necked Duck", + "Tufted Duck", + "Greater Scaup", + "Lesser Scaup", + "Steller's Eider", + "Spectacled Eider", + "King Eider", + "Common Eider", + "Harlequin Duck", + "Labrador Duck", + "Surf Scoter", + "White-winged Scoter", + "Black Scoter", + "Oldsquaw", + "Bufflehead", + "Common Goldeneye", + "Barrow's Goldeneye", + "Smew", + "Hooded Merganser", + "Common Merganser", + "Red-breasted Merganser", + "Masked Duck", + "Ruddy Duck", + "Osprey", + "Hook-billed Kite", + "Swallow-tailed Kite", + "White-tailed Kite", + "Snail Kite", + "Mississippi Kite", + "Bald Eagle", + "White-tailed Eagle", + "Steller's Sea-Eagle", + "Northern Harrier", + "Sharp-shinned Hawk", + "Cooper's Hawk", + "Northern Goshawk", + "Crane Hawk", + "Gray Hawk", + "Common Black-Hawk", + "Harris's Hawk", + "Roadside Hawk", + "Red-shouldered Hawk", + "Broad-winged Hawk", + "Short-tailed Hawk", + "Swainson's Hawk", + "White-tailed Hawk", + "Zone-tailed Hawk", + "Red-tailed Hawk", + "Ferruginous Hawk", + "Rough-legged Hawk", + "Golden Eagle", + "Collared Forest-Falcon", + "Crested Caracara", + "Eurasian Kestrel", + "American Kestrel", + "Merlin", + "Eurasian Hobby", + "Aplomado Falcon", + "Gyrfalcon", + "Peregrine Falcon", + "Prairie Falcon", + "Plain Chachalaca", + "Chukar", + "Himalayan Snowcock", + "Gray Partridge", + "Ring-necked Pheasant", + "Ruffed Grouse", + "Sage Grouse", + "Spruce Grouse", + "Willow Ptarmigan", + "Rock Ptarmigan", + "White-tailed Ptarmigan", + "Blue Grouse", + "Sharp-tailed Grouse", + "Greater Prairie-chicken", + "Lesser Prairie-chicken", + "Wild Turkey", + "Mountain Quail", + "Scaled Quail", + "California Quail", + "Gambel's Quail", + "Northern Bobwhite", + "Montezuma Quail", + "Yellow Rail", + "Black Rail", + "Corn Crake", + "Clapper Rail", + "King Rail", + "Virginia Rail", + "Sora", + "Paint-billed Crake", + "Spotted Rail", + "Purple Gallinule", + "Azure Gallinule", + "Common Moorhen", + "Eurasian Coot", + "American Coot", + "Limpkin", + "Sandhill Crane", + "Common Crane", + "Whooping Crane", + "Double-striped Thick-knee", + "Northern Lapwing", + "Black-bellied Plover", + "European Golden-Plover", + "American Golden-Plover", + "Pacific Golden-Plover", + "Mongolian Plover", + "Collared Plover", + "Snowy Plover", + "Wilson's Plover", + "Common Ringed Plover", + "Semipalmated Plover", + "Piping Plover", + "Little Ringed Plover", + "Killdeer", + "Mountain Plover", + "Eurasian Dotterel", + "Eurasian Oystercatcher", + "American Oystercatcher", + "Black Oystercatcher", + "Black-winged Stilt", + "Black-necked Stilt", + "American Avocet", + "Northern Jacana", + "Common Greenshank", + "Greater Yellowlegs", + "Lesser Yellowlegs", + "Marsh Sandpiper", + "Spotted Redshank", + "Wood Sandpiper", + "Green Sandpiper", + "Solitary Sandpiper", + "Willet", + "Wandering Tattler", + "Gray-tailed Tattler", + "Common Sandpiper", + "Spotted Sandpiper", + "Terek Sandpiper", + "Upland Sandpiper", + "Little Curlew", + "Eskimo Curlew", + "Whimbrel", + "Bristle-thighed Curlew", + "Far Eastern Curlew", + "Slender-billed Curlew", + "Eurasian Curlew", + "Long-billed Curlew", + "Black-tailed Godwit", + "Hudsonian Godwit", + "Bar-tailed Godwit", + "Marbled Godwit", + "Ruddy Turnstone", + "Black Turnstone", + "Surfbird", + "Great Knot", + "Red Knot", + "Sanderling", + "Semipalmated Sandpiper", + "Western Sandpiper", + "Red-necked Stint", + "Little Stint", + "Temminck's Stint", + "Long-toed Stint", + "Least Sandpiper", + "White-rumped Sandpiper", + "Baird's Sandpiper", + "Pectoral Sandpiper", + "Sharp-tailed Sandpiper", + "Purple Sandpiper", + "Rock Sandpiper", + "Dunlin", + "Curlew Sandpiper", + "Stilt Sandpiper", + "Spoonbill Sandpiper", + "Broad-billed Sandpiper", + "Buff-breasted Sandpiper", + "Ruff", + "Short-billed Dowitcher", + "Long-billed Dowitcher", + "Jack Snipe", + "Common Snipe", + "Pin-tailed Snipe", + "Eurasian Woodcock", + "American Woodcock", + "Wilson's Phalarope", + "Red-necked Phalarope", + "Red Phalarope", + "Oriental Pratincole", + "Great Skua", + "South Polar Skua", + "Pomarine Jaeger", + "Parasitic Jaeger", + "Long-tailed Jaeger", + "Laughing Gull", + "Franklin's Gull", + "Little Gull", + "Black-headed Gull", + "Bonaparte's Gull", + "Heermann's Gull", + "Band-tailed Gull", + "Black-tailed Gull", + "Mew Gull", + "Ring-billed Gull", + "California Gull", + "Herring Gull", + "Yellow-legged Gull", + "Thayer's Gull", + "Iceland Gull", + "Lesser Black-backed Gull", + "Slaty-backed Gull", + "Yellow-footed Gull", + "Western Gull", + "Glaucous-winged Gull", + "Glaucous Gull", + "Great Black-backed Gull", + "Sabine's Gull", + "Black-legged Kittiwake", + "Red-legged Kittiwake", + "Ross's Gull", + "Ivory Gull", + "Gull-billed Tern", + "Caspian Tern", + "Royal Tern", + "Elegant Tern", + "Sandwich Tern", + "Roseate Tern", + "Common Tern", + "Arctic Tern", + "Forster's Tern", + "Least Tern", + "Aleutian Tern", + "Bridled Tern", + "Sooty Tern", + "Large-billed Tern", + "White-winged Tern", + "Whiskered Tern", + "Black Tern", + "Brown Noddy", + "Black Noddy", + "Black Skimmer", + "Dovekie", + "Common Murre", + "Thick-billed Murre", + "Razorbill", + "Great Auk", + "Black Guillemot", + "Pigeon Guillemot", + "Long-billed Murrelet", + "Marbled Murrelet", + "Kittlitz's Murrelet", + "Xantus's Murrelet", + "Craveri's Murrelet", + "Ancient Murrelet", + "Cassin's Auklet", + "Parakeet Auklet", + "Least Auklet", + "Whiskered Auklet", + "Crested Auklet", + "Rhinoceros Auklet", + "Atlantic Puffin", + "Horned Puffin", + "Tufted Puffin", + "Rock Dove", + "Scaly-naped Pigeon", + "White-crowned Pigeon", + "Red-billed Pigeon", + "Band-tailed Pigeon", + "Oriental Turtle-Dove", + "European Turtle-Dove", + "Eurasian Collared-Dove", + "Spotted Dove", + "White-winged Dove", + "Zenaida Dove", + "Mourning Dove", + "Passenger Pigeon", + "Inca Dove", + "Common Ground-Dove", + "Ruddy Ground-Dove", + "White-tipped Dove", + "Key West Quail-Dove", + "Ruddy Quail-Dove", + "Budgerigar", + "Monk Parakeet", + "Carolina Parakeet", + "Thick-billed Parrot", + "White-winged Parakeet", + "Red-crowned Parrot", + "Common Cuckoo", + "Oriental Cuckoo", + "Black-billed Cuckoo", + "Yellow-billed Cuckoo", + "Mangrove Cuckoo", + "Greater Roadrunner", + "Smooth-billed Ani", + "Groove-billed Ani", + "Barn Owl", + "Flammulated Owl", + "Oriental Scops-Owl", + "Western Screech-Owl", + "Eastern Screech-Owl", + "Whiskered Screech-Owl", + "Great Horned Owl", + "Snowy Owl", + "Northern Hawk Owl", + "Northern Pygmy-Owl", + "Ferruginous Pygmy-Owl", + "Elf Owl", + "Burrowing Owl", + "Mottled Owl", + "Spotted Owl", + "Barred Owl", + "Great Gray Owl", + "Long-eared Owl", + "Short-eared Owl", + "Boreal Owl", + "Northern Saw-whet Owl", + "Lesser Nighthawk", + "Common Nighthawk", + "Antillean Nighthawk", + "Common Pauraque", + "Common Poorwill", + "Chuck-will's-widow", + "Buff-collared Nightjar", + "Whip-poor-will", + "Jungle Nightjar", + "Black Swift", + "White-collared Swift", + "Chimney Swift", + "Vaux's Swift", + "White-throated Needletail", + "Common Swift", + "Fork-tailed Swift", + "White-throated Swift", + "Antillean Palm Swift", + "Green Violet-ear", + "Green-breasted Mango", + "Broad-billed Hummingbird", + "White-eared Hummingbird", + "Xantus's Hummingbird", + "Berylline Hummingbird", + "Buff-bellied Hummingbird", + "Cinnamon Hummingbird", + "Violet-crowned Hummingbird", + "Blue-throated Hummingbird", + "Magnificent Hummingbird", + "Plain-capped Starthroat", + "Bahama Woodstar", + "Lucifer Hummingbird", + "Ruby-throated Hummingbird", + "Black-chinned Hummingbird", + "Anna's Hummingbird", + "Costa's Hummingbird", + "Calliope Hummingbird", + "Bumblebee Hummingbird", + "Broad-tailed Hummingbird", + "Rufous Hummingbird", + "Allen's Hummingbird", + "Elegant Trogon", + "Eared Trogon", + "Hoopoe", + "Ringed Kingfisher", + "Belted Kingfisher", + "Green Kingfisher", + "Eurasian Wryneck", + "Lewis's Woodpecker", + "Red-headed Woodpecker", + "Acorn Woodpecker", + "Gila Woodpecker", + "Golden-fronted Woodpecker", + "Red-bellied Woodpecker", + "Williamson's Sapsucker", + "Yellow-bellied Sapsucker", + "Red-naped Sapsucker", + "Red-breasted Sapsucker", + "Great Spotted Woodpecker", + "Ladder-backed Woodpecker", + "Nuttall's Woodpecker", + "Downy Woodpecker", + "Hairy Woodpecker", + "Strickland's Woodpecker", + "Red-cockaded Woodpecker", + "White-headed Woodpecker", + "Three-toed Woodpecker", + "Black-backed Woodpecker", + "Northern Flicker", + "Gilded Flicker", + "Pileated Woodpecker", + "Ivory-billed Woodpecker", + "Northern Beardless-Tyrannulet", + "Greenish Elaenia", + "Caribbean Elaenia", + "Tufted Flycatcher", + "Olive-sided Flycatcher", + "Greater Pewee", + "Western Wood-Pewee", + "Eastern Wood-Pewee", + "Yellow-bellied Flycatcher", + "Acadian Flycatcher", + "Alder Flycatcher", + "Willow Flycatcher", + "Least Flycatcher", + "Hammond's Flycatcher", + "Dusky Flycatcher", + "Gray Flycatcher", + "Pacific-slope Flycatcher", + "Cordilleran Flycatcher", + "Buff-breasted Flycatcher", + "Black Phoebe", + "Eastern Phoebe", + "Say's Phoebe", + "Vermilion Flycatcher", + "Dusky-capped Flycatcher", + "Ash-throated Flycatcher", + "Nutting's Flycatcher", + "Great Crested Flycatcher", + "Brown-crested Flycatcher", + "La Sagra's Flycatcher", + "Great Kiskadee", + "Sulphur-bellied Flycatcher", + "Variegated Flycatcher", + "Tropical Kingbird", + "Couch's Kingbird", + "Cassin's Kingbird", + "Thick-billed Kingbird", + "Western Kingbird", + "Eastern Kingbird", + "Gray Kingbird", + "Loggerhead Kingbird", + "Scissor-tailed Flycatcher", + "Fork-tailed Flycatcher", + "Rose-throated Becard", + "Masked Tityra", + "Brown Shrike", + "Loggerhead Shrike", + "Northern Shrike", + "White-eyed Vireo", + "Thick-billed Vireo", + "Bell's Vireo", + "Black-capped Vireo", + "Gray Vireo", + "Yellow-throated Vireo", + "Plumbeous Vireo", + "Cassin's Vireo", + "Blue-headed Vireo", + "Hutton's Vireo", + "Warbling Vireo", + "Philadelphia Vireo", + "Red-eyed Vireo", + "Yellow-green Vireo", + "Black-whiskered Vireo", + "Yucatan Vireo", + "Gray Jay", + "Steller's Jay", + "Blue Jay", + "Green Jay", + "Brown Jay", + "Florida Scrub-Jay", + "Island Scrub-Jay", + "Western Scrub-Jay", + "Mexican Jay", + "Pinyon Jay", + "Clark's Nutcracker", + "Black-billed Magpie", + "Yellow-billed Magpie", + "Eurasian Jackdaw", + "American Crow", + "Northwestern Crow", + "Tamaulipas Crow", + "Fish Crow", + "Chihuahuan Raven", + "Common Raven", + "Sky Lark", + "Horned Lark", + "Purple Martin", + "Cuban Martin", + "Gray-breasted Martin", + "Southern Martin", + "Brown-chested Martin", + "Tree Swallow", + "Violet-green Swallow", + "Bahama Swallow", + "Northern Rough-winged Swallow", + "Bank Swallow", + "Cliff Swallow", + "Cave Swallow", + "Barn Swallow", + "Common House-Martin", + "Carolina Chickadee", + "Black-capped Chickadee", + "Mountain Chickadee", + "Mexican Chickadee", + "Chestnut-backed Chickadee", + "Boreal Chickadee", + "Gray-headed Chickadee", + "Bridled Titmouse", + "Oak Titmouse", + "Juniper Titmouse", + "Tufted Titmouse", + "Verdin", + "Bushtit", + "Red-breasted Nuthatch", + "White-breasted Nuthatch", + "Pygmy Nuthatch", + "Brown-headed Nuthatch", + "Brown Creeper", + "Cactus Wren", + "Rock Wren", + "Canyon Wren", + "Carolina Wren", + "Bewick's Wren", + "House Wren", + "Winter Wren", + "Sedge Wren", + "Marsh Wren", + "American Dipper", + "Red-whiskered Bulbul", + "Golden-crowned Kinglet", + "Ruby-crowned Kinglet", + "Middendorff's Grasshopper-Warbler", + "Lanceolated Warbler", + "Wood Warbler", + "Dusky Warbler", + "Arctic Warbler", + "Blue-gray Gnatcatcher", + "California Gnatcatcher", + "Black-tailed Gnatcatcher", + "Black-capped Gnatcatcher", + "Narcissus Flycatcher", + "Mugimaki Flycatcher", + "Red-breasted Flycatcher", + "Siberian Flycatcher", + "Gray-spotted Flycatcher", + "Asian Brown Flycatcher", + "Siberian Rubythroat", + "Bluethroat", + "Siberian Blue Robin", + "Red-flanked Bluetail", + "Northern Wheatear", + "Stonechat", + "Eastern Bluebird", + "Western Bluebird", + "Mountain Bluebird", + "Townsend's Solitaire", + "Veery", + "Gray-cheeked Thrush", + "Bicknell's Thrush", + "Swainson's Thrush", + "Hermit Thrush", + "Wood Thrush", + "Eurasian Blackbird", + "Eyebrowed Thrush", + "Dusky Thrush", + "Fieldfare", + "Redwing", + "Clay-colored Robin", + "White-throated Robin", + "Rufous-backed Robin", + "American Robin", + "Varied Thrush", + "Aztec Thrush", + "Wrentit", + "Gray Catbird", + "Black Catbird", + "Northern Mockingbird", + "Bahama Mockingbird", + "Sage Thrasher", + "Brown Thrasher", + "Long-billed Thrasher", + "Bendire's Thrasher", + "Curve-billed Thrasher", + "California Thrasher", + "Crissal Thrasher", + "Le Conte's Thrasher", + "Blue Mockingbird", + "European Starling", + "Crested Myna", + "Siberian Accentor", + "Yellow Wagtail", + "Citrine Wagtail", + "Gray Wagtail", + "White Wagtail", + "Black-backed Wagtail", + "Tree Pipit", + "Olive-backed Pipit", + "Pechora Pipit", + "Red-throated Pipit", + "American Pipit", + "Sprague's Pipit", + "Bohemian Waxwing", + "Cedar Waxwing", + "Gray Silky-flycatcher", + "Phainopepla", + "Olive Warbler", + "Bachman's Warbler", + "Blue-winged Warbler", + "Golden-winged Warbler", + "Tennessee Warbler", + "Orange-crowned Warbler", + "Nashville Warbler", + "Virginia's Warbler", + "Colima Warbler", + "Lucy's Warbler", + "Crescent-chested Warbler", + "Northern Parula", + "Tropical Parula", + "Yellow Warbler", + "Chestnut-sided Warbler", + "Magnolia Warbler", + "Cape May Warbler", + "Black-throated Blue Warbler", + "Yellow-rumped Warbler", + "Black-throated Gray Warbler", + "Golden-cheeked Warbler", + "Black-throated Green Warbler", + "Townsend's Warbler", + "Hermit Warbler", + "Blackburnian Warbler", + "Yellow-throated Warbler", + "Grace's Warbler", + "Pine Warbler", + "Kirtland's Warbler", + "Prairie Warbler", + "Palm Warbler", + "Bay-breasted Warbler", + "Blackpoll Warbler", + "Cerulean Warbler", + "Black-and-white Warbler", + "American Redstart", + "Prothonotary Warbler", + "Worm-eating Warbler", + "Swainson's Warbler", + "Ovenbird", + "Northern Waterthrush", + "Louisiana Waterthrush", + "Kentucky Warbler", + "Connecticut Warbler", + "Mourning Warbler", + "MacGillivray's Warbler", + "Common Yellowthroat", + "Gray-crowned Yellowthroat", + "Hooded Warbler", + "Wilson's Warbler", + "Canada Warbler", + "Red-faced Warbler", + "Painted Redstart", + "Slate-throated Redstart", + "Fan-tailed Warbler", + "Golden-crowned Warbler", + "Rufous-capped Warbler", + "Yellow-breasted Chat", + "Bananaquit", + "Hepatic Tanager", + "Summer Tanager", + "Scarlet Tanager", + "Western Tanager", + "Flame-colored Tanager", + "Stripe-headed Tanager", + "White-collared Seedeater", + "Yellow-faced Grassquit", + "Black-faced Grassquit", + "Olive Sparrow", + "Green-tailed Towhee", + "Spotted Towhee", + "Eastern Towhee", + "Canyon Towhee", + "California Towhee", + "Abert's Towhee", + "Rufous-winged Sparrow", + "Cassin's Sparrow", + "Bachman's Sparrow", + "Botteri's Sparrow", + "Rufous-crowned Sparrow", + "Five-striped Sparrow", + "American Tree Sparrow", + "Chipping Sparrow", + "Clay-colored Sparrow", + "Brewer's Sparrow", + "Field Sparrow", + "Worthen's Sparrow", + "Black-chinned Sparrow", + "Vesper Sparrow", + "Lark Sparrow", + "Black-throated Sparrow", + "Sage Sparrow", + "Lark Bunting", + "Savannah Sparrow", + "Grasshopper Sparrow", + "Baird's Sparrow", + "Henslow's Sparrow", + "Le Conte's Sparrow", + "Nelson's Sharp-tailed Sparrow", + "Saltmarsh Sharp-tailed Sparrow", + "Seaside Sparrow", + "Fox Sparrow", + "Song Sparrow", + "Lincoln's Sparrow", + "Swamp Sparrow", + "White-throated Sparrow", + "Harris's Sparrow", + "White-crowned Sparrow", + "Golden-crowned Sparrow", + "Dark-eyed Junco", + "Yellow-eyed Junco", + "McCown's Longspur", + "Lapland Longspur", + "Smith's Longspur", + "Chestnut-collared Longspur", + "Pine Bunting", + "Little Bunting", + "Rustic Bunting", + "Yellow-breasted Bunting", + "Gray Bunting", + "Pallas's Bunting", + "Reed Bunting", + "Snow Bunting", + "McKay's Bunting", + "Crimson-collared Grosbeak", + "Northern Cardinal", + "Pyrrhuloxia", + "Yellow Grosbeak", + "Rose-breasted Grosbeak", + "Black-headed Grosbeak", + "Blue Bunting", + "Blue Grosbeak", + "Lazuli Bunting", + "Indigo Bunting", + "Varied Bunting", + "Painted Bunting", + "Dickcissel", + "Bobolink", + "Red-winged Blackbird", + "Tricolored Blackbird", + "Tawny-shouldered Blackbird", + "Eastern Meadowlark", + "Western Meadowlark", + "Yellow-headed Blackbird", + "Rusty Blackbird", + "Brewer's Blackbird", + "Common Grackle", + "Boat-tailed Grackle", + "Great-tailed Grackle", + "Shiny Cowbird", + "Bronzed Cowbird", + "Brown-headed Cowbird", + "Black-vented Oriole", + "Orchard Oriole", + "Hooded Oriole", + "Streak-backed Oriole", + "Spot-breasted Oriole", + "Altamira Oriole", + "Audubon's Oriole", + "Baltimore Oriole", + "Bullock's Oriole", + "Scott's Oriole", + "Common Chaffinch", + "Brambling", + "Gray-crowned Rosy-Finch", + "Black Rosy-Finch", + "Brown-capped Rosy-Finch", + "Pine Grosbeak", + "Common Rosefinch", + "Purple Finch", + "Cassin's Finch", + "House Finch", + "Red Crossbill", + "White-winged Crossbill", + "Common Redpoll", + "Hoary Redpoll", + "Eurasian Siskin", + "Pine Siskin", + "Lesser Goldfinch", + "Lawrence's Goldfinch", + "American Goldfinch", + "Oriental Greenfinch", + "Eurasian Bullfinch", + "Evening Grosbeak", + "Hawfinch", + "House Sparrow", + "Eurasian Tree Sparrow", +}; -const std::array cats = {"Abyssinian", - "American Bobtail", - "American Curl", - "American Shorthair", - "American Wirehair", - "Balinese", - "Bengal", - "Birman", - "Bombay", - "British Shorthair", - "Burmese", - "Chartreux", - "Chausie", - "Cornish Rex", - "Devon Rex", - "Donskoy", - "Egyptian Mau", - "Exotic Shorthair", - "Havana", - "Highlander", - "Himalayan", - "Japanese Bobtail", - "Korat", - "Kurilian Bobtail", - "LaPerm", - "Maine Coon", - "Manx", - "Minskin", - "Munchkin", - "Nebelung", - "Norwegian Forest Cat", - "Ocicat", - "Ojos Azules", - "Oriental", - "Persian", - "Peterbald", - "Pixiebob", - "Ragdoll", - "Russian Blue", - "Savannah", - "Scottish Fold", - "Selkirk Rex", - "Serengeti", - "Siberian", - "Siamese", - "Singapura", - "Snowshoe", - "Sokoke", - "Somali", - "Sphynx", - "Thai", - "Tonkinese", - "Toyger", - "Turkish Angora", - "Turkish Van"}; +const std::array cats = { + "Abyssinian", + "American Bobtail", + "American Curl", + "American Shorthair", + "American Wirehair", + "Balinese", + "Bengal", + "Birman", + "Bombay", + "British Shorthair", + "Burmese", + "Chartreux", + "Chausie", + "Cornish Rex", + "Devon Rex", + "Donskoy", + "Egyptian Mau", + "Exotic Shorthair", + "Havana", + "Highlander", + "Himalayan", + "Japanese Bobtail", + "Korat", + "Kurilian Bobtail", + "LaPerm", + "Maine Coon", + "Manx", + "Minskin", + "Munchkin", + "Nebelung", + "Norwegian Forest Cat", + "Ocicat", + "Ojos Azules", + "Oriental", + "Persian", + "Peterbald", + "Pixiebob", + "Ragdoll", + "Russian Blue", + "Savannah", + "Scottish Fold", + "Selkirk Rex", + "Serengeti", + "Siberian", + "Siamese", + "Singapura", + "Snowshoe", + "Sokoke", + "Somali", + "Sphynx", + "Thai", + "Tonkinese", + "Toyger", + "Turkish Angora", + "Turkish Van", +}; -const std::array cetaceans = {"Blue Whale", - "Fin Whale", - "Sei Whale", - "Sperm Whale", - "Bryde’s whale", - "Omura’s whale", - "Humpback whale", - "Long-Beaked Common Dolphin", - "Short-Beaked Common Dolphin", - "Bottlenose Dolphin", - "Indo-Pacific Bottlenose Dolphin", - "Northern Rightwhale Dolphin", - "Southern Rightwhale Dolphin", - "Tucuxi", - "Costero", - "Indo-Pacific Hump-backed Dolphin", - "Chinese White Dolphin", - "Atlantic Humpbacked Dolphin", - "Atlantic Spotted Dolphin", - "Clymene Dolphin", - "Pantropical Spotted Dolphin", - "Spinner Dolphin", - "Striped Dolphin", - "Rough-Toothed Dolphin", - "Chilean Dolphin", - "Commerson’s Dolphin", - "Heaviside’s Dolphin", - "Hector’s Dolphin", - "Risso’s Dolphin", - "Fraser’s Dolphin", - "Atlantic White-Sided Dolphin", - "Dusky Dolphin", - "Hourglass Dolphin", - "Pacific White-Sided Dolphin", - "Peale’s Dolphin", - "White-Beaked Dolphin", - "Australian Snubfin Dolphin", - "Irrawaddy Dolphin", - "Melon-headed Whale", - "Killer Whale (Orca)", - "Pygmy Killer Whale", - "False Killer Whale", - "Long-finned Pilot Whale", - "Short-finned Pilot Whale", - "Guiana Dolphin", - "Burrunan Dolphin", - "Australian humpback Dolphin", - "Amazon River Dolphin", - "Chinese River Dolphin", - "Ganges River Dolphin", - "La Plata Dolphin", - "Southern Bottlenose Whale", - "Longman's Beaked Whale", - "Arnoux's Beaked Whale"}; +const std::array cetaceans = { + "Blue Whale", + "Fin Whale", + "Sei Whale", + "Sperm Whale", + "Bryde’s whale", + "Omura’s whale", + "Humpback whale", + "Long-Beaked Common Dolphin", + "Short-Beaked Common Dolphin", + "Bottlenose Dolphin", + "Indo-Pacific Bottlenose Dolphin", + "Northern Rightwhale Dolphin", + "Southern Rightwhale Dolphin", + "Tucuxi", + "Costero", + "Indo-Pacific Hump-backed Dolphin", + "Chinese White Dolphin", + "Atlantic Humpbacked Dolphin", + "Atlantic Spotted Dolphin", + "Clymene Dolphin", + "Pantropical Spotted Dolphin", + "Spinner Dolphin", + "Striped Dolphin", + "Rough-Toothed Dolphin", + "Chilean Dolphin", + "Commerson’s Dolphin", + "Heaviside’s Dolphin", + "Hector’s Dolphin", + "Risso’s Dolphin", + "Fraser’s Dolphin", + "Atlantic White-Sided Dolphin", + "Dusky Dolphin", + "Hourglass Dolphin", + "Pacific White-Sided Dolphin", + "Peale’s Dolphin", + "White-Beaked Dolphin", + "Australian Snubfin Dolphin", + "Irrawaddy Dolphin", + "Melon-headed Whale", + "Killer Whale (Orca)", + "Pygmy Killer Whale", + "False Killer Whale", + "Long-finned Pilot Whale", + "Short-finned Pilot Whale", + "Guiana Dolphin", + "Burrunan Dolphin", + "Australian humpback Dolphin", + "Amazon River Dolphin", + "Chinese River Dolphin", + "Ganges River Dolphin", + "La Plata Dolphin", + "Southern Bottlenose Whale", + "Longman's Beaked Whale", + "Arnoux's Beaked Whale", +}; const std::array cows = {"Aberdeen Angus", "Abergele", @@ -1530,1918 +1538,1936 @@ const std::array cows = {"Aberdeen Angus", "Żubroń", "Zebu"}; -const std::array crocodiles = {"Alligator mississippiensis", - "Chinese Alligator", - "Black Caiman", - "Broad-snouted Caiman", - "Spectacled Caiman", - "Yacare Caiman", - "Cuvier’s Dwarf Caiman", - "Schneider’s Smooth-fronted Caiman", - "African Slender-snouted Crocodile", - "American Crocodile", - "Australian Freshwater Crocodile", - "Cuban Crocodile", - "Dwarf Crocodile", - "Morelet’s Crocodile", - "Mugger Crocodile", - "New Guinea Freshwater Crocodile", - "Nile Crocodile", - "West African Crocodile", - "Orinoco Crocodile", - "Philippine Crocodile", - "Saltwater Crocodile", - "Siamese Crocodile", - "Gharial", - "Tomistoma"}; +const std::array crocodiles = { + "Alligator mississippiensis", + "Chinese Alligator", + "Black Caiman", + "Broad-snouted Caiman", + "Spectacled Caiman", + "Yacare Caiman", + "Cuvier’s Dwarf Caiman", + "Schneider’s Smooth-fronted Caiman", + "African Slender-snouted Crocodile", + "American Crocodile", + "Australian Freshwater Crocodile", + "Cuban Crocodile", + "Dwarf Crocodile", + "Morelet’s Crocodile", + "Mugger Crocodile", + "New Guinea Freshwater Crocodile", + "Nile Crocodile", + "West African Crocodile", + "Orinoco Crocodile", + "Philippine Crocodile", + "Saltwater Crocodile", + "Siamese Crocodile", + "Gharial", + "Tomistoma", +}; -const std::array dogs = {"Affenpinscher", - "Afghan Hound", - "Aidi", - "Airedale Terrier", - "Akbash", - "Akita", - "Alano Español", - "Alapaha Blue Blood Bulldog", - "Alaskan Husky", - "Alaskan Klee Kai", - "Alaskan Malamute", - "Alopekis", - "Alpine Dachsbracke", - "American Bulldog", - "American Bully", - "American Cocker Spaniel", - "American English Coonhound", - "American Foxhound", - "American Hairless Terrier", - "American Pit Bull Terrier", - "American Staffordshire Terrier", - "American Water Spaniel", - "Andalusian Hound", - "Anglo-Français de Petite Vénerie", - "Appenzeller Sennenhund", - "Ariegeois", - "Armant", - "Armenian Gampr dog", - "Artois Hound", - "Australian Cattle Dog", - "Australian Kelpie", - "Australian Shepherd", - "Australian Stumpy Tail Cattle Dog", - "Australian Terrier", - "Austrian Black and Tan Hound", - "Austrian Pinscher", - "Azawakh", - "Bakharwal dog", - "Banjara Hound", - "Barbado da Terceira", - "Barbet", - "Basenji", - "Basque Shepherd Dog", - "Basset Artésien Normand", - "Basset Bleu de Gascogne", - "Basset Fauve de Bretagne", - "Basset Hound", - "Bavarian Mountain Hound", - "Beagle", - "Beagle-Harrier", - "Belgian Shepherd", - "Bearded Collie", - "Beauceron", - "Bedlington Terrier", - "Bergamasco Shepherd", - "Berger Picard", - "Bernese Mountain Dog", - "Bhotia", - "Bichon Frisé", - "Billy", - "Black and Tan Coonhound", - "Black Norwegian Elkhound", - "Black Russian Terrier", - "Black Mouth Cur", - "Bloodhound", - "Blue Lacy", - "Blue Picardy Spaniel", - "Bluetick Coonhound", - "Boerboel", - "Bohemian Shepherd", - "Bolognese", - "Border Collie", - "Border Terrier", - "Borzoi", - "Bosnian Coarse-haired Hound", - "Boston Terrier", - "Bouvier des Ardennes", - "Bouvier des Flandres", - "Boxer", - "Boykin Spaniel", - "Bracco Italiano", - "Braque d'Auvergne", - "Braque de l'Ariège", - "Braque du Bourbonnais", - "Braque Francais", - "Braque Saint-Germain", - "Briard", - "Briquet Griffon Vendéen", - "Brittany", - "Broholmer", - "Bruno Jura Hound", - "Brussels Griffon", - "Bucovina Shepherd Dog", - "Bull Arab", - "Bull Terrier", - "Bulldog", - "Bullmastiff", - "Bully Kutta", - "Burgos Pointer", - "Cairn Terrier", - "Campeiro Bulldog", - "Canaan Dog", - "Canadian Eskimo Dog", - "Cane Corso", - "Cane di Oropa", - "Cane Paratore", - "Cantabrian Water Dog", - "Can de Chira", - "Cão da Serra de Aires", - "Cão de Castro Laboreiro", - "Cão de Gado Transmontano", - "Cão Fila de São Miguel", - "Cardigan Welsh Corgi", - "Carea Castellano Manchego", - "Carolina Dog", - "Carpathian Shepherd Dog", - "Catahoula Leopard Dog", - "Catalan Sheepdog", - "Caucasian Shepherd Dog", - "Cavalier King Charles Spaniel", - "Central Asian Shepherd Dog", - "Cesky Fousek", - "Cesky Terrier", - "Chesapeake Bay Retriever", - "Chien Français Blanc et Noir", - "Chien Français Blanc et Orange", - "Chien Français Tricolore", - "Chihuahua", - "Chilean Terrier", - "Chinese Chongqing Dog", - "Chinese Crested Dog", - "Chinook", - "Chippiparai", - "Chongqing dog", - "Chortai", - "Chow Chow", - "Cimarrón Uruguayo", - "Cirneco dell'Etna", - "Clumber Spaniel", - "Colombian fino hound", - "Coton de Tulear", - "Cretan Hound", - "Croatian Sheepdog", - "Curly-Coated Retriever", - "Cursinu", - "Czechoslovakian Wolfdog", - "Dachshund", - "Dalmatian", - "Dandie Dinmont Terrier", - "Danish-Swedish Farmdog", - "Denmark Feist", - "Dingo", - "Doberman Pinscher", - "Dogo Argentino", - "Dogo Guatemalteco", - "Dogo Sardesco", - "Dogue Brasileiro", - "Dogue de Bordeaux", - "Drentse Patrijshond", - "Drever", - "Dunker", - "Dutch Shepherd", - "Dutch Smoushond", - "East Siberian Laika", - "East European Shepherd", - "English Cocker Spaniel", - "English Foxhound", - "English Mastiff", - "English Setter", - "English Shepherd", - "English Springer Spaniel", - "English Toy Terrier", - "Entlebucher Mountain Dog", - "Estonian Hound", - "Estrela Mountain Dog", - "Eurasier", - "Field Spaniel", - "Fila Brasileiro", - "Finnish Hound", - "Finnish Lapphund", - "Finnish Spitz", - "Flat-Coated Retriever", - "French Bulldog", - "French Spaniel", - "Galgo Español", - "Galician Shepherd Dog", - "Garafian Shepherd", - "Gascon Saintongeois", - "Georgian Shepherd", - "German Hound", - "German Longhaired Pointer", - "German Pinscher", - "German Roughhaired Pointer", - "German Shepherd Dog", - "German Shorthaired Pointer", - "German Spaniel", - "German Spitz", - "German Wirehaired Pointer", - "Giant Schnauzer", - "Glen of Imaal Terrier", - "Golden Retriever", - "Gończy Polski", - "Gordon Setter", - "Grand Anglo-Français Blanc et Noir", - "Grand Anglo-Français Blanc et Orange", - "Grand Anglo-Français Tricolore", - "Grand Basset Griffon Vendéen", - "Grand Bleu de Gascogne", - "Grand Griffon Vendéen", - "Great Dane", - "Greater Swiss Mountain Dog", - "Greek Harehound", - "Greek Shepherd", - "Greenland Dog", - "Greyhound", - "Griffon Bleu de Gascogne", - "Griffon Fauve de Bretagne", - "Griffon Nivernais", - "Gull Dong", - "Gull Terrier", - "Hällefors Elkhound", - "Hamiltonstövare", - "Hanover Hound", - "Harrier", - "Havanese", - "Hierran Wolfdog", - "Hokkaido", - "Hovawart", - "Huntaway", - "Hygen Hound", - "Ibizan Hound", - "Icelandic Sheepdog", - "Indian pariah dog", - "Indian Spitz", - "Irish Red and White Setter", - "Irish Setter", - "Irish Terrier", - "Irish Water Spaniel", - "Irish Wolfhound", - "Istrian Coarse-haired Hound", - "Istrian Shorthaired Hound", - "Italian Greyhound", - "Jack Russell Terrier", - "Jagdterrier", - "Japanese Chin", - "Japanese Spitz", - "Japanese Terrier", - "Jindo", - "Jonangi", - "Kai Ken", - "Kaikadi", - "Kangal Shepherd Dog", - "Kanni", - "Karakachan dog", - "Karelian Bear Dog", - "Kars", - "Karst Shepherd", - "Keeshond", - "Kerry Beagle", - "Kerry Blue Terrier", - "King Charles Spaniel", - "King Shepherd", - "Kintamani", - "Kishu", - "Kokoni", - "Kombai", - "Komondor", - "Kooikerhondje", - "Koolie", - "Koyun dog", - "Kromfohrländer", - "Kuchi", - "Kuvasz", - "Labrador Retriever", - "Lagotto Romagnolo", - "Lakeland Terrier", - "Lancashire Heeler", - "Landseer", - "Lapponian Herder", - "Large Münsterländer", - "Leonberger", - "Levriero Sardo", - "Lhasa Apso", - "Lithuanian Hound", - "Löwchen", - "Lupo Italiano", - "Mackenzie River Husky", - "Magyar agár", - "Mahratta Greyhound", - "Maltese", - "Manchester Terrier", - "Maremmano-Abruzzese Sheepdog", - "McNab dog", - "Miniature American Shepherd", - "Miniature Bull Terrier", - "Miniature Fox Terrier", - "Miniature Pinscher", - "Miniature Schnauzer", - "Molossus of Epirus", - "Montenegrin Mountain Hound", - "Mountain Cur", - "Mountain Feist", - "Mucuchies", - "Mudhol Hound", - "Mudi", - "Neapolitan Mastiff", - "New Guinea Singing Dog", - "New Zealand Heading Dog", - "Newfoundland", - "Norfolk Terrier", - "Norrbottenspets", - "Northern Inuit Dog", - "Norwegian Buhund", - "Norwegian Elkhound", - "Norwegian Lundehund", - "Norwich Terrier", - "Nova Scotia Duck Tolling Retriever", - "Old Croatian Sighthound", - "Old Danish Pointer", - "Old English Sheepdog", - "Old English Terrier", - "Olde English Bulldogge", - "Otterhound", - "Pachon Navarro", - "Pampas Deerhound", - "Paisley Terrier", - "Papillon", - "Parson Russell Terrier", - "Pastore della Lessinia e del Lagorai", - "Patagonian Sheepdog", - "Patterdale Terrier", - "Pekingese", - "Pembroke Welsh Corgi", - "Perro Majorero", - "Perro de Pastor Mallorquin", - "Perro de Presa Canario", - "Perro de Presa Mallorquin", - "Peruvian Inca Orchid", - "Petit Basset Griffon Vendéen", - "Petit Bleu de Gascogne", - "Phalène", - "Pharaoh Hound", - "Phu Quoc Ridgeback", - "Picardy Spaniel", - "Plummer Terrier", - "Plott Hound", - "Podenco Canario", - "Podenco Valenciano", - "Pointer", - "Poitevin", - "Polish Greyhound", - "Polish Hound", - "Polish Lowland Sheepdog", - "Polish Tatra Sheepdog", - "Pomeranian", - "Pont-Audemer Spaniel", - "Poodle", - "Porcelaine", - "Portuguese Podengo", - "Portuguese Pointer", - "Portuguese Water Dog", - "Posavac Hound", - "Pražský Krysařík", - "Pshdar Dog", - "Pudelpointer", - "Pug", - "Puli", - "Pumi", - "Pungsan Dog", - "Pyrenean Mastiff", - "Pyrenean Mountain Dog", - "Pyrenean Sheepdog", - "Rafeiro do Alentejo", - "Rajapalayam", - "Rampur Greyhound", - "Rat Terrier", - "Ratonero Bodeguero Andaluz", - "Ratonero Mallorquin", - "Ratonero Murciano de Huerta", - "Ratonero Valenciano", - "Redbone Coonhound", - "Rhodesian Ridgeback", - "Romanian Mioritic Shepherd Dog", - "Romanian Raven Shepherd Dog", - "Rottweiler", - "Rough Collie", - "Russian Spaniel", - "Russian Toy", - "Russo-European Laika", - "Saarloos Wolfdog", - "Sabueso Español", - "Saint Bernard", - "Saint Hubert Jura Hound", - "Saint-Usuge Spaniel", - "Saluki", - "Samoyed", - "Sapsali", - "Sarabi dog", - "Šarplaninac", - "Schapendoes", - "Schillerstövare", - "Schipperke", - "Schweizer Laufhund", - "Schweizerischer Niederlaufhund", - "Scottish Deerhound", - "Scottish Terrier", - "Sealyham Terrier", - "Segugio dell'Appennino", - "Segugio Italiano", - "Segugio Maremmano", - "Seppala Siberian Sleddog", - "Serbian Hound", - "Serbian Tricolour Hound", - "Serrano Bulldog", - "Shar Pei", - "Shetland Sheepdog", - "Shiba Inu", - "Shih Tzu", - "Shikoku", - "Shiloh Shepherd", - "Siberian Husky", - "Silken Windhound", - "Silky Terrier", - "Sinhala Hound", - "Skye Terrier", - "Sloughi", - "Slovakian Wirehaired Pointer", - "Slovenský Cuvac", - "Slovenský Kopov", - "Smalandstövare", - "Small Greek domestic dog", - "Small Münsterländer", - "Smooth Collie", - "Smooth Fox Terrier", - "Soft-Coated Wheaten Terrier", - "South Russian Ovcharka", - "Spanish Mastiff", - "Spanish Water Dog", - "Spinone Italiano", - "Sporting Lucas Terrier", - "Sardinian Shepherd Dog", - "Stabyhoun", - "Staffordshire Bull Terrier", - "Standard Schnauzer", - "Stephens Stock", - "Styrian Coarse-haired Hound", - "Sussex Spaniel", - "Swedish Elkhound", - "Swedish Lapphund", - "Swedish Vallhund", - "Swedish White Elkhound", - "Taigan", - "Taiwan Dog", - "Tamaskan Dog", - "Teddy Roosevelt Terrier", - "Telomian", - "Tenterfield Terrier", - "Terrier Brasileiro", - "Thai Bangkaew Dog", - "Thai Ridgeback", - "Tibetan Mastiff", - "Tibetan Spaniel", - "Tibetan Terrier", - "Tornjak", - "Tosa", - "Toy Fox Terrier", - "Toy Manchester Terrier", - "Transylvanian Hound", - "Treeing Cur", - "Treeing Feist", - "Treeing Tennessee Brindle", - "Treeing Walker Coonhound", - "Trigg Hound", - "Tyrolean Hound", - "Vikhan", - "Villano de Las Encartaciones", - "Villanuco de Las Encartaciones", - "Vizsla", - "Volpino Italiano", - "Weimaraner", - "Welsh Sheepdog", - "Welsh Springer Spaniel", - "Welsh Terrier", - "West Highland White Terrier", - "West Siberian Laika", - "Westphalian Dachsbracke", - "Wetterhoun", - "Whippet", - "White Shepherd", - "White Swiss Shepherd Dog", - "Wire Fox Terrier", - "Wirehaired Pointing Griffon", - "Wirehaired Vizsla", - "Xiasi Dog", - "Xoloitzcuintli", - "Yakutian Laika", - "Yorkshire Terrier"}; +const std::array dogs = { + "Affenpinscher", + "Afghan Hound", + "Aidi", + "Airedale Terrier", + "Akbash", + "Akita", + "Alano Español", + "Alapaha Blue Blood Bulldog", + "Alaskan Husky", + "Alaskan Klee Kai", + "Alaskan Malamute", + "Alopekis", + "Alpine Dachsbracke", + "American Bulldog", + "American Bully", + "American Cocker Spaniel", + "American English Coonhound", + "American Foxhound", + "American Hairless Terrier", + "American Pit Bull Terrier", + "American Staffordshire Terrier", + "American Water Spaniel", + "Andalusian Hound", + "Anglo-Français de Petite Vénerie", + "Appenzeller Sennenhund", + "Ariegeois", + "Armant", + "Armenian Gampr dog", + "Artois Hound", + "Australian Cattle Dog", + "Australian Kelpie", + "Australian Shepherd", + "Australian Stumpy Tail Cattle Dog", + "Australian Terrier", + "Austrian Black and Tan Hound", + "Austrian Pinscher", + "Azawakh", + "Bakharwal dog", + "Banjara Hound", + "Barbado da Terceira", + "Barbet", + "Basenji", + "Basque Shepherd Dog", + "Basset Artésien Normand", + "Basset Bleu de Gascogne", + "Basset Fauve de Bretagne", + "Basset Hound", + "Bavarian Mountain Hound", + "Beagle", + "Beagle-Harrier", + "Belgian Shepherd", + "Bearded Collie", + "Beauceron", + "Bedlington Terrier", + "Bergamasco Shepherd", + "Berger Picard", + "Bernese Mountain Dog", + "Bhotia", + "Bichon Frisé", + "Billy", + "Black and Tan Coonhound", + "Black Norwegian Elkhound", + "Black Russian Terrier", + "Black Mouth Cur", + "Bloodhound", + "Blue Lacy", + "Blue Picardy Spaniel", + "Bluetick Coonhound", + "Boerboel", + "Bohemian Shepherd", + "Bolognese", + "Border Collie", + "Border Terrier", + "Borzoi", + "Bosnian Coarse-haired Hound", + "Boston Terrier", + "Bouvier des Ardennes", + "Bouvier des Flandres", + "Boxer", + "Boykin Spaniel", + "Bracco Italiano", + "Braque d'Auvergne", + "Braque de l'Ariège", + "Braque du Bourbonnais", + "Braque Francais", + "Braque Saint-Germain", + "Briard", + "Briquet Griffon Vendéen", + "Brittany", + "Broholmer", + "Bruno Jura Hound", + "Brussels Griffon", + "Bucovina Shepherd Dog", + "Bull Arab", + "Bull Terrier", + "Bulldog", + "Bullmastiff", + "Bully Kutta", + "Burgos Pointer", + "Cairn Terrier", + "Campeiro Bulldog", + "Canaan Dog", + "Canadian Eskimo Dog", + "Cane Corso", + "Cane di Oropa", + "Cane Paratore", + "Cantabrian Water Dog", + "Can de Chira", + "Cão da Serra de Aires", + "Cão de Castro Laboreiro", + "Cão de Gado Transmontano", + "Cão Fila de São Miguel", + "Cardigan Welsh Corgi", + "Carea Castellano Manchego", + "Carolina Dog", + "Carpathian Shepherd Dog", + "Catahoula Leopard Dog", + "Catalan Sheepdog", + "Caucasian Shepherd Dog", + "Cavalier King Charles Spaniel", + "Central Asian Shepherd Dog", + "Cesky Fousek", + "Cesky Terrier", + "Chesapeake Bay Retriever", + "Chien Français Blanc et Noir", + "Chien Français Blanc et Orange", + "Chien Français Tricolore", + "Chihuahua", + "Chilean Terrier", + "Chinese Chongqing Dog", + "Chinese Crested Dog", + "Chinook", + "Chippiparai", + "Chongqing dog", + "Chortai", + "Chow Chow", + "Cimarrón Uruguayo", + "Cirneco dell'Etna", + "Clumber Spaniel", + "Colombian fino hound", + "Coton de Tulear", + "Cretan Hound", + "Croatian Sheepdog", + "Curly-Coated Retriever", + "Cursinu", + "Czechoslovakian Wolfdog", + "Dachshund", + "Dalmatian", + "Dandie Dinmont Terrier", + "Danish-Swedish Farmdog", + "Denmark Feist", + "Dingo", + "Doberman Pinscher", + "Dogo Argentino", + "Dogo Guatemalteco", + "Dogo Sardesco", + "Dogue Brasileiro", + "Dogue de Bordeaux", + "Drentse Patrijshond", + "Drever", + "Dunker", + "Dutch Shepherd", + "Dutch Smoushond", + "East Siberian Laika", + "East European Shepherd", + "English Cocker Spaniel", + "English Foxhound", + "English Mastiff", + "English Setter", + "English Shepherd", + "English Springer Spaniel", + "English Toy Terrier", + "Entlebucher Mountain Dog", + "Estonian Hound", + "Estrela Mountain Dog", + "Eurasier", + "Field Spaniel", + "Fila Brasileiro", + "Finnish Hound", + "Finnish Lapphund", + "Finnish Spitz", + "Flat-Coated Retriever", + "French Bulldog", + "French Spaniel", + "Galgo Español", + "Galician Shepherd Dog", + "Garafian Shepherd", + "Gascon Saintongeois", + "Georgian Shepherd", + "German Hound", + "German Longhaired Pointer", + "German Pinscher", + "German Roughhaired Pointer", + "German Shepherd Dog", + "German Shorthaired Pointer", + "German Spaniel", + "German Spitz", + "German Wirehaired Pointer", + "Giant Schnauzer", + "Glen of Imaal Terrier", + "Golden Retriever", + "Gończy Polski", + "Gordon Setter", + "Grand Anglo-Français Blanc et Noir", + "Grand Anglo-Français Blanc et Orange", + "Grand Anglo-Français Tricolore", + "Grand Basset Griffon Vendéen", + "Grand Bleu de Gascogne", + "Grand Griffon Vendéen", + "Great Dane", + "Greater Swiss Mountain Dog", + "Greek Harehound", + "Greek Shepherd", + "Greenland Dog", + "Greyhound", + "Griffon Bleu de Gascogne", + "Griffon Fauve de Bretagne", + "Griffon Nivernais", + "Gull Dong", + "Gull Terrier", + "Hällefors Elkhound", + "Hamiltonstövare", + "Hanover Hound", + "Harrier", + "Havanese", + "Hierran Wolfdog", + "Hokkaido", + "Hovawart", + "Huntaway", + "Hygen Hound", + "Ibizan Hound", + "Icelandic Sheepdog", + "Indian pariah dog", + "Indian Spitz", + "Irish Red and White Setter", + "Irish Setter", + "Irish Terrier", + "Irish Water Spaniel", + "Irish Wolfhound", + "Istrian Coarse-haired Hound", + "Istrian Shorthaired Hound", + "Italian Greyhound", + "Jack Russell Terrier", + "Jagdterrier", + "Japanese Chin", + "Japanese Spitz", + "Japanese Terrier", + "Jindo", + "Jonangi", + "Kai Ken", + "Kaikadi", + "Kangal Shepherd Dog", + "Kanni", + "Karakachan dog", + "Karelian Bear Dog", + "Kars", + "Karst Shepherd", + "Keeshond", + "Kerry Beagle", + "Kerry Blue Terrier", + "King Charles Spaniel", + "King Shepherd", + "Kintamani", + "Kishu", + "Kokoni", + "Kombai", + "Komondor", + "Kooikerhondje", + "Koolie", + "Koyun dog", + "Kromfohrländer", + "Kuchi", + "Kuvasz", + "Labrador Retriever", + "Lagotto Romagnolo", + "Lakeland Terrier", + "Lancashire Heeler", + "Landseer", + "Lapponian Herder", + "Large Münsterländer", + "Leonberger", + "Levriero Sardo", + "Lhasa Apso", + "Lithuanian Hound", + "Löwchen", + "Lupo Italiano", + "Mackenzie River Husky", + "Magyar agár", + "Mahratta Greyhound", + "Maltese", + "Manchester Terrier", + "Maremmano-Abruzzese Sheepdog", + "McNab dog", + "Miniature American Shepherd", + "Miniature Bull Terrier", + "Miniature Fox Terrier", + "Miniature Pinscher", + "Miniature Schnauzer", + "Molossus of Epirus", + "Montenegrin Mountain Hound", + "Mountain Cur", + "Mountain Feist", + "Mucuchies", + "Mudhol Hound", + "Mudi", + "Neapolitan Mastiff", + "New Guinea Singing Dog", + "New Zealand Heading Dog", + "Newfoundland", + "Norfolk Terrier", + "Norrbottenspets", + "Northern Inuit Dog", + "Norwegian Buhund", + "Norwegian Elkhound", + "Norwegian Lundehund", + "Norwich Terrier", + "Nova Scotia Duck Tolling Retriever", + "Old Croatian Sighthound", + "Old Danish Pointer", + "Old English Sheepdog", + "Old English Terrier", + "Olde English Bulldogge", + "Otterhound", + "Pachon Navarro", + "Pampas Deerhound", + "Paisley Terrier", + "Papillon", + "Parson Russell Terrier", + "Pastore della Lessinia e del Lagorai", + "Patagonian Sheepdog", + "Patterdale Terrier", + "Pekingese", + "Pembroke Welsh Corgi", + "Perro Majorero", + "Perro de Pastor Mallorquin", + "Perro de Presa Canario", + "Perro de Presa Mallorquin", + "Peruvian Inca Orchid", + "Petit Basset Griffon Vendéen", + "Petit Bleu de Gascogne", + "Phalène", + "Pharaoh Hound", + "Phu Quoc Ridgeback", + "Picardy Spaniel", + "Plummer Terrier", + "Plott Hound", + "Podenco Canario", + "Podenco Valenciano", + "Pointer", + "Poitevin", + "Polish Greyhound", + "Polish Hound", + "Polish Lowland Sheepdog", + "Polish Tatra Sheepdog", + "Pomeranian", + "Pont-Audemer Spaniel", + "Poodle", + "Porcelaine", + "Portuguese Podengo", + "Portuguese Pointer", + "Portuguese Water Dog", + "Posavac Hound", + "Pražský Krysařík", + "Pshdar Dog", + "Pudelpointer", + "Pug", + "Puli", + "Pumi", + "Pungsan Dog", + "Pyrenean Mastiff", + "Pyrenean Mountain Dog", + "Pyrenean Sheepdog", + "Rafeiro do Alentejo", + "Rajapalayam", + "Rampur Greyhound", + "Rat Terrier", + "Ratonero Bodeguero Andaluz", + "Ratonero Mallorquin", + "Ratonero Murciano de Huerta", + "Ratonero Valenciano", + "Redbone Coonhound", + "Rhodesian Ridgeback", + "Romanian Mioritic Shepherd Dog", + "Romanian Raven Shepherd Dog", + "Rottweiler", + "Rough Collie", + "Russian Spaniel", + "Russian Toy", + "Russo-European Laika", + "Saarloos Wolfdog", + "Sabueso Español", + "Saint Bernard", + "Saint Hubert Jura Hound", + "Saint-Usuge Spaniel", + "Saluki", + "Samoyed", + "Sapsali", + "Sarabi dog", + "Šarplaninac", + "Schapendoes", + "Schillerstövare", + "Schipperke", + "Schweizer Laufhund", + "Schweizerischer Niederlaufhund", + "Scottish Deerhound", + "Scottish Terrier", + "Sealyham Terrier", + "Segugio dell'Appennino", + "Segugio Italiano", + "Segugio Maremmano", + "Seppala Siberian Sleddog", + "Serbian Hound", + "Serbian Tricolour Hound", + "Serrano Bulldog", + "Shar Pei", + "Shetland Sheepdog", + "Shiba Inu", + "Shih Tzu", + "Shikoku", + "Shiloh Shepherd", + "Siberian Husky", + "Silken Windhound", + "Silky Terrier", + "Sinhala Hound", + "Skye Terrier", + "Sloughi", + "Slovakian Wirehaired Pointer", + "Slovenský Cuvac", + "Slovenský Kopov", + "Smalandstövare", + "Small Greek domestic dog", + "Small Münsterländer", + "Smooth Collie", + "Smooth Fox Terrier", + "Soft-Coated Wheaten Terrier", + "South Russian Ovcharka", + "Spanish Mastiff", + "Spanish Water Dog", + "Spinone Italiano", + "Sporting Lucas Terrier", + "Sardinian Shepherd Dog", + "Stabyhoun", + "Staffordshire Bull Terrier", + "Standard Schnauzer", + "Stephens Stock", + "Styrian Coarse-haired Hound", + "Sussex Spaniel", + "Swedish Elkhound", + "Swedish Lapphund", + "Swedish Vallhund", + "Swedish White Elkhound", + "Taigan", + "Taiwan Dog", + "Tamaskan Dog", + "Teddy Roosevelt Terrier", + "Telomian", + "Tenterfield Terrier", + "Terrier Brasileiro", + "Thai Bangkaew Dog", + "Thai Ridgeback", + "Tibetan Mastiff", + "Tibetan Spaniel", + "Tibetan Terrier", + "Tornjak", + "Tosa", + "Toy Fox Terrier", + "Toy Manchester Terrier", + "Transylvanian Hound", + "Treeing Cur", + "Treeing Feist", + "Treeing Tennessee Brindle", + "Treeing Walker Coonhound", + "Trigg Hound", + "Tyrolean Hound", + "Vikhan", + "Villano de Las Encartaciones", + "Villanuco de Las Encartaciones", + "Vizsla", + "Volpino Italiano", + "Weimaraner", + "Welsh Sheepdog", + "Welsh Springer Spaniel", + "Welsh Terrier", + "West Highland White Terrier", + "West Siberian Laika", + "Westphalian Dachsbracke", + "Wetterhoun", + "Whippet", + "White Shepherd", + "White Swiss Shepherd Dog", + "Wire Fox Terrier", + "Wirehaired Pointing Griffon", + "Wirehaired Vizsla", + "Xiasi Dog", + "Xoloitzcuintli", + "Yakutian Laika", + "Yorkshire Terrier", +}; -const std::array fishes = {"Grass carp", - "Peruvian anchoveta", - "Silver carp", - "Common carp", - "Asari", - "Japanese littleneck", - "Filipino Venus", - "Japanese cockle", - "Alaska pollock", - "Nile tilapia", - "Whiteleg shrimp", - "Bighead carp", - "Skipjack tuna", - "Catla", - "Crucian carp", - "Atlantic salmon", - "Atlantic herring", - "Chub mackerel", - "Rohu", - "Yellowfin tuna", - "Japanese anchovy", - "Largehead hairtail", - "Atlantic cod", - "European pilchard", - "Capelin", - "Jumbo flying squid", - "Milkfish", - "Atlantic mackerel", - "Rainbow trout", - "Araucanian herring", - "Wuchang bream", - "Gulf menhaden", - "Indian oil sardine", - "Black carp", - "European anchovy", - "Northern snakehead", - "Pacific cod", - "Pacific saury", - "Pacific herring", - "Bigeye tuna", - "Chilean jack mackerel", - "Yellow croaker", - "Haddock", - "Gazami crab", - "Amur catfish", - "Japanese common catfish", - "European sprat", - "Pink salmon", - "Mrigal carp", - "Channel catfish", - "Blood cockle", - "Blue whiting", - "Hilsa shad", - "Daggertooth pike conger", - "California pilchard", - "Cape horse mackerel", - "Pacific anchoveta", - "Japanese flying squid", - "Pollock", - "Chinese softshell turtle", - "Kawakawa", - "Indian mackerel", - "Asian swamp eel", - "Argentine hake", - "Short mackerel", - "Southern rough shrimp", - "Southern African anchovy", - "Pond loach", - "Iridescent shark", - "Mandarin fish", - "Chinese perch", - "Nile perch", - "Round sardinella", - "Japanese pilchard", - "Bombay-duck", - "Yellowhead catfish", - "Korean bullhead", - "Narrow-barred Spanish mackerel", - "Albacore", - "Madeiran sardinella", - "Bonga shad", - "Silver cyprinid", - "Longtail tuna", - "Atlantic menhaden", - "North Pacific hake", - "Atlantic horse mackerel", - "Japanese jack mackerel", - "Pacific thread herring", - "Bigeye scad", - "Yellowstripe scad", - "Chum salmon", - "Blue swimming crab", - "Pacific sand lance", - "Pacific sandlance", - "Goldstripe sardinella"}; +const std::array fishes = { + "Grass carp", + "Peruvian anchoveta", + "Silver carp", + "Common carp", + "Asari", + "Japanese littleneck", + "Filipino Venus", + "Japanese cockle", + "Alaska pollock", + "Nile tilapia", + "Whiteleg shrimp", + "Bighead carp", + "Skipjack tuna", + "Catla", + "Crucian carp", + "Atlantic salmon", + "Atlantic herring", + "Chub mackerel", + "Rohu", + "Yellowfin tuna", + "Japanese anchovy", + "Largehead hairtail", + "Atlantic cod", + "European pilchard", + "Capelin", + "Jumbo flying squid", + "Milkfish", + "Atlantic mackerel", + "Rainbow trout", + "Araucanian herring", + "Wuchang bream", + "Gulf menhaden", + "Indian oil sardine", + "Black carp", + "European anchovy", + "Northern snakehead", + "Pacific cod", + "Pacific saury", + "Pacific herring", + "Bigeye tuna", + "Chilean jack mackerel", + "Yellow croaker", + "Haddock", + "Gazami crab", + "Amur catfish", + "Japanese common catfish", + "European sprat", + "Pink salmon", + "Mrigal carp", + "Channel catfish", + "Blood cockle", + "Blue whiting", + "Hilsa shad", + "Daggertooth pike conger", + "California pilchard", + "Cape horse mackerel", + "Pacific anchoveta", + "Japanese flying squid", + "Pollock", + "Chinese softshell turtle", + "Kawakawa", + "Indian mackerel", + "Asian swamp eel", + "Argentine hake", + "Short mackerel", + "Southern rough shrimp", + "Southern African anchovy", + "Pond loach", + "Iridescent shark", + "Mandarin fish", + "Chinese perch", + "Nile perch", + "Round sardinella", + "Japanese pilchard", + "Bombay-duck", + "Yellowhead catfish", + "Korean bullhead", + "Narrow-barred Spanish mackerel", + "Albacore", + "Madeiran sardinella", + "Bonga shad", + "Silver cyprinid", + "Longtail tuna", + "Atlantic menhaden", + "North Pacific hake", + "Atlantic horse mackerel", + "Japanese jack mackerel", + "Pacific thread herring", + "Bigeye scad", + "Yellowstripe scad", + "Chum salmon", + "Blue swimming crab", + "Pacific sand lance", + "Pacific sandlance", + "Goldstripe sardinella", +}; -const std::array horses = {"American Albino", - "Abaco Barb", - "Abtenauer", - "Abyssinian", - "Aegidienberger", - "Akhal-Teke", - "Albanian Horse", - "Altai Horse", - "Altèr Real", - "American Cream Draft", - "American Indian Horse", - "American Paint Horse", - "American Quarter Horse", - "American Saddlebred", - "American Warmblood", - "Andalusian Horse", - "Andravida Horse", - "Anglo-Arabian", - "Anglo-Arabo-Sardo", - "Anglo-Kabarda", - "Appaloosa", - "AraAppaloosa", - "Arabian Horse", - "Ardennes Horse", - "Arenberg-Nordkirchen", - "Argentine Criollo", - "Asian wild Horse", - "Assateague Horse", - "Asturcón", - "Augeron", - "Australian Brumby", - "Australian Draught Horse", - "Australian Stock Horse", - "Austrian Warmblood", - "Auvergne Horse", - "Auxois", - "Azerbaijan Horse", - "Azteca Horse", - "Baise Horse", - "Bale", - "Balearic Horse", - "Balikun Horse", - "Baluchi Horse", - "Banker Horse", - "Barb Horse", - "Bardigiano", - "Bashkir Curly", - "Basque Mountain Horse", - "Bavarian Warmblood", - "Belgian Half-blood", - "Belgian Horse", - "Belgian Warmblood ", - "Bhutia Horse", - "Black Forest Horse", - "Blazer Horse", - "Boerperd", - "Borana", - "Boulonnais Horse", - "Brabant", - "Brandenburger", - "Brazilian Sport Horse", - "Breton Horse", - "Brumby", - "Budyonny Horse", - "Burguete Horse", - "Burmese Horse", - "Byelorussian Harness Horse", - "Calabrese Horse", - "Camargue Horse", - "Camarillo White Horse", - "Campeiro", - "Campolina", - "Canadian Horse", - "Canadian Pacer", - "Carolina Marsh Tacky", - "Carthusian Horse", - "Caspian Horse", - "Castilian Horse", - "Castillonnais", - "Catria Horse", - "Cavallo Romano della Maremma Laziale", - "Cerbat Mustang", - "Chickasaw Horse", - "Chilean Corralero", - "Choctaw Horse", - "Cleveland Bay", - "Clydesdale Horse", - "Cob", - "Coldblood Trotter", - "Colonial Spanish Horse", - "Colorado Ranger", - "Comtois Horse", - "Corsican Horse", - "Costa Rican Saddle Horse", - "Cretan Horse", - "Criollo Horse", - "Croatian Coldblood", - "Cuban Criollo", - "Cumberland Island Horse", - "Curly Horse", - "Czech Warmblood", - "Daliboz", - "Danish Warmblood", - "Danube Delta Horse", - "Dole Gudbrandsdal", - "Don", - "Dongola Horse", - "Draft Trotter", - "Dutch Harness Horse", - "Dutch Heavy Draft", - "Dutch Warmblood", - "Dzungarian Horse", - "East Bulgarian", - "East Friesian Horse", - "Estonian Draft", - "Estonian Horse", - "Falabella", - "Faroese", - "Finnhorse", - "Fjord Horse", - "Fleuve", - "Florida Cracker Horse", - "Foutanké", - "Frederiksborg Horse", - "Freiberger", - "French Trotter", - "Friesian Cross", - "Friesian Horse", - "Friesian Sporthorse", - "Furioso-North Star", - "Galiceño", - "Galician Pony", - "Gelderland Horse", - "Georgian Grande Horse", - "German Warmblood", - "Giara Horse", - "Gidran", - "Groningen Horse", - "Gypsy Horse", - "Hackney Horse", - "Haflinger", - "Hanoverian Horse", - "Heck Horse", - "Heihe Horse", - "Henson Horse", - "Hequ Horse", - "Hirzai", - "Hispano-Bretón", - "Holsteiner Horse", - "Horro", - "Hungarian Warmblood", - "Icelandic Horse", - "Iomud", - "Irish Draught", - "Irish Sport Horse sometimes called Irish Hunter", - "Italian Heavy Draft", - "Italian Trotter", - "Jaca Navarra", - "Jeju Horse", - "Jutland Horse", - "Kabarda Horse", - "Kafa", - "Kaimanawa Horses", - "Kalmyk Horse", - "Karabair", - "Karabakh Horse", - "Karachai Horse", - "Karossier", - "Kathiawari", - "Kazakh Horse", - "Kentucky Mountain Saddle Horse", - "Kiger Mustang", - "Kinsky Horse", - "Kisber Felver", - "Kiso Horse", - "Kladruber", - "Knabstrupper", - "Konik", - "Kundudo", - "Kustanair", - "Kyrgyz Horse", - "Latvian Horse", - "Lipizzan", - "Lithuanian Heavy Draught", - "Lokai", - "Losino Horse", - "Lusitano", - "Lyngshest", - "M'Bayar", - "M'Par", - "Mallorquín", - "Malopolski", - "Mangalarga", - "Mangalarga Marchador", - "Maremmano", - "Marismeño Horse", - "Marsh Tacky", - "Marwari Horse", - "Mecklenburger", - "Međimurje Horse", - "Menorquín", - "Mérens Horse", - "Messara Horse", - "Metis Trotter", - "Mezőhegyesi Sport Horse", - "Miniature Horse", - "Misaki Horse", - "Missouri Fox Trotter", - "Monchina", - "Mongolian Horse", - "Mongolian Wild Horse", - "Monterufolino", - "Morab", - "Morgan Horse", - "Mountain Pleasure Horse", - "Moyle Horse", - "Murakoz Horse", - "Murgese", - "Mustang Horse", - "Namib Desert Horse", - "Nangchen Horse", - "National Show Horse", - "Nez Perce Horse", - "Nivernais Horse", - "Nokota Horse", - "Noma", - "Nonius Horse", - "Nooitgedachter", - "Nordlandshest", - "Noriker Horse", - "Norman Cob", - "North American Single-Footer Horse", - "North Swedish Horse", - "Norwegian Coldblood Trotter", - "Norwegian Fjord", - "Novokirghiz", - "Oberlander Horse", - "Ogaden", - "Oldenburg Horse", - "Orlov trotter", - "Ostfriesen", - "Paint", - "Pampa Horse", - "Paso Fino", - "Pentro Horse", - "Percheron", - "Persano Horse", - "Peruvian Paso", - "Pintabian", - "Pleven Horse", - "Poitevin Horse", - "Posavac Horse", - "Pottok", - "Pryor Mountain Mustang", - "Przewalski's Horse", - "Pura Raza Española", - "Purosangue Orientale", - "Qatgani", - "Quarab", - "Quarter Horse", - "Racking Horse", - "Retuerta Horse", - "Rhenish German Coldblood", - "Rhinelander Horse", - "Riwoche Horse", - "Rocky Mountain Horse", - "Romanian Sporthorse", - "Rottaler", - "Russian Don", - "Russian Heavy Draft", - "Russian Trotter", - "Saddlebred", - "Salerno Horse", - "Samolaco Horse", - "San Fratello Horse", - "Sarcidano Horse", - "Sardinian Anglo-Arab", - "Schleswig Coldblood", - "Schwarzwälder Kaltblut", - "Selale", - "Sella Italiano", - "Selle Français", - "Shagya Arabian", - "Shan Horse", - "Shire Horse", - "Siciliano Indigeno", - "Silesian Horse", - "Sokolsky Horse", - "Sorraia", - "South German Coldblood", - "Soviet Heavy Draft", - "Spanish Anglo-Arab", - "Spanish Barb", - "Spanish Jennet Horse", - "Spanish Mustang", - "Spanish Tarpan", - "Spanish-Norman Horse", - "Spiti Horse", - "Spotted Saddle Horse", - "Standardbred Horse", - "Suffolk Punch", - "Swedish Ardennes", - "Swedish coldblood trotter", - "Swedish Warmblood", - "Swiss Warmblood", - "Taishū Horse", - "Takhi", - "Tawleed", - "Tchernomor", - "Tennessee Walking Horse", - "Tersk Horse", - "Thoroughbred", - "Tiger Horse", - "Tinker Horse", - "Tolfetano", - "Tori Horse", - "Trait Du Nord", - "Trakehner", - "Tsushima", - "Tuigpaard", - "Ukrainian Riding Horse", - "Unmol Horse", - "Uzunyayla", - "Ventasso Horse", - "Virginia Highlander", - "Vlaamperd", - "Vladimir Heavy Draft", - "Vyatka", - "Waler", - "Waler Horse", - "Walkaloosa", - "Warlander", - "Warmblood", - "Welsh Cob", - "Westphalian Horse", - "Wielkopolski", - "Württemberger", - "Xilingol Horse", - "Yakutian Horse", - "Yili Horse", - "Yonaguni Horse", - "Zaniskari", - "Žemaitukas", - "Zhemaichu", - "Zweibrücker"}; +const std::array horses = { + "American Albino", + "Abaco Barb", + "Abtenauer", + "Abyssinian", + "Aegidienberger", + "Akhal-Teke", + "Albanian Horse", + "Altai Horse", + "Altèr Real", + "American Cream Draft", + "American Indian Horse", + "American Paint Horse", + "American Quarter Horse", + "American Saddlebred", + "American Warmblood", + "Andalusian Horse", + "Andravida Horse", + "Anglo-Arabian", + "Anglo-Arabo-Sardo", + "Anglo-Kabarda", + "Appaloosa", + "AraAppaloosa", + "Arabian Horse", + "Ardennes Horse", + "Arenberg-Nordkirchen", + "Argentine Criollo", + "Asian wild Horse", + "Assateague Horse", + "Asturcón", + "Augeron", + "Australian Brumby", + "Australian Draught Horse", + "Australian Stock Horse", + "Austrian Warmblood", + "Auvergne Horse", + "Auxois", + "Azerbaijan Horse", + "Azteca Horse", + "Baise Horse", + "Bale", + "Balearic Horse", + "Balikun Horse", + "Baluchi Horse", + "Banker Horse", + "Barb Horse", + "Bardigiano", + "Bashkir Curly", + "Basque Mountain Horse", + "Bavarian Warmblood", + "Belgian Half-blood", + "Belgian Horse", + "Belgian Warmblood ", + "Bhutia Horse", + "Black Forest Horse", + "Blazer Horse", + "Boerperd", + "Borana", + "Boulonnais Horse", + "Brabant", + "Brandenburger", + "Brazilian Sport Horse", + "Breton Horse", + "Brumby", + "Budyonny Horse", + "Burguete Horse", + "Burmese Horse", + "Byelorussian Harness Horse", + "Calabrese Horse", + "Camargue Horse", + "Camarillo White Horse", + "Campeiro", + "Campolina", + "Canadian Horse", + "Canadian Pacer", + "Carolina Marsh Tacky", + "Carthusian Horse", + "Caspian Horse", + "Castilian Horse", + "Castillonnais", + "Catria Horse", + "Cavallo Romano della Maremma Laziale", + "Cerbat Mustang", + "Chickasaw Horse", + "Chilean Corralero", + "Choctaw Horse", + "Cleveland Bay", + "Clydesdale Horse", + "Cob", + "Coldblood Trotter", + "Colonial Spanish Horse", + "Colorado Ranger", + "Comtois Horse", + "Corsican Horse", + "Costa Rican Saddle Horse", + "Cretan Horse", + "Criollo Horse", + "Croatian Coldblood", + "Cuban Criollo", + "Cumberland Island Horse", + "Curly Horse", + "Czech Warmblood", + "Daliboz", + "Danish Warmblood", + "Danube Delta Horse", + "Dole Gudbrandsdal", + "Don", + "Dongola Horse", + "Draft Trotter", + "Dutch Harness Horse", + "Dutch Heavy Draft", + "Dutch Warmblood", + "Dzungarian Horse", + "East Bulgarian", + "East Friesian Horse", + "Estonian Draft", + "Estonian Horse", + "Falabella", + "Faroese", + "Finnhorse", + "Fjord Horse", + "Fleuve", + "Florida Cracker Horse", + "Foutanké", + "Frederiksborg Horse", + "Freiberger", + "French Trotter", + "Friesian Cross", + "Friesian Horse", + "Friesian Sporthorse", + "Furioso-North Star", + "Galiceño", + "Galician Pony", + "Gelderland Horse", + "Georgian Grande Horse", + "German Warmblood", + "Giara Horse", + "Gidran", + "Groningen Horse", + "Gypsy Horse", + "Hackney Horse", + "Haflinger", + "Hanoverian Horse", + "Heck Horse", + "Heihe Horse", + "Henson Horse", + "Hequ Horse", + "Hirzai", + "Hispano-Bretón", + "Holsteiner Horse", + "Horro", + "Hungarian Warmblood", + "Icelandic Horse", + "Iomud", + "Irish Draught", + "Irish Sport Horse sometimes called Irish Hunter", + "Italian Heavy Draft", + "Italian Trotter", + "Jaca Navarra", + "Jeju Horse", + "Jutland Horse", + "Kabarda Horse", + "Kafa", + "Kaimanawa Horses", + "Kalmyk Horse", + "Karabair", + "Karabakh Horse", + "Karachai Horse", + "Karossier", + "Kathiawari", + "Kazakh Horse", + "Kentucky Mountain Saddle Horse", + "Kiger Mustang", + "Kinsky Horse", + "Kisber Felver", + "Kiso Horse", + "Kladruber", + "Knabstrupper", + "Konik", + "Kundudo", + "Kustanair", + "Kyrgyz Horse", + "Latvian Horse", + "Lipizzan", + "Lithuanian Heavy Draught", + "Lokai", + "Losino Horse", + "Lusitano", + "Lyngshest", + "M'Bayar", + "M'Par", + "Mallorquín", + "Malopolski", + "Mangalarga", + "Mangalarga Marchador", + "Maremmano", + "Marismeño Horse", + "Marsh Tacky", + "Marwari Horse", + "Mecklenburger", + "Međimurje Horse", + "Menorquín", + "Mérens Horse", + "Messara Horse", + "Metis Trotter", + "Mezőhegyesi Sport Horse", + "Miniature Horse", + "Misaki Horse", + "Missouri Fox Trotter", + "Monchina", + "Mongolian Horse", + "Mongolian Wild Horse", + "Monterufolino", + "Morab", + "Morgan Horse", + "Mountain Pleasure Horse", + "Moyle Horse", + "Murakoz Horse", + "Murgese", + "Mustang Horse", + "Namib Desert Horse", + "Nangchen Horse", + "National Show Horse", + "Nez Perce Horse", + "Nivernais Horse", + "Nokota Horse", + "Noma", + "Nonius Horse", + "Nooitgedachter", + "Nordlandshest", + "Noriker Horse", + "Norman Cob", + "North American Single-Footer Horse", + "North Swedish Horse", + "Norwegian Coldblood Trotter", + "Norwegian Fjord", + "Novokirghiz", + "Oberlander Horse", + "Ogaden", + "Oldenburg Horse", + "Orlov trotter", + "Ostfriesen", + "Paint", + "Pampa Horse", + "Paso Fino", + "Pentro Horse", + "Percheron", + "Persano Horse", + "Peruvian Paso", + "Pintabian", + "Pleven Horse", + "Poitevin Horse", + "Posavac Horse", + "Pottok", + "Pryor Mountain Mustang", + "Przewalski's Horse", + "Pura Raza Española", + "Purosangue Orientale", + "Qatgani", + "Quarab", + "Quarter Horse", + "Racking Horse", + "Retuerta Horse", + "Rhenish German Coldblood", + "Rhinelander Horse", + "Riwoche Horse", + "Rocky Mountain Horse", + "Romanian Sporthorse", + "Rottaler", + "Russian Don", + "Russian Heavy Draft", + "Russian Trotter", + "Saddlebred", + "Salerno Horse", + "Samolaco Horse", + "San Fratello Horse", + "Sarcidano Horse", + "Sardinian Anglo-Arab", + "Schleswig Coldblood", + "Schwarzwälder Kaltblut", + "Selale", + "Sella Italiano", + "Selle Français", + "Shagya Arabian", + "Shan Horse", + "Shire Horse", + "Siciliano Indigeno", + "Silesian Horse", + "Sokolsky Horse", + "Sorraia", + "South German Coldblood", + "Soviet Heavy Draft", + "Spanish Anglo-Arab", + "Spanish Barb", + "Spanish Jennet Horse", + "Spanish Mustang", + "Spanish Tarpan", + "Spanish-Norman Horse", + "Spiti Horse", + "Spotted Saddle Horse", + "Standardbred Horse", + "Suffolk Punch", + "Swedish Ardennes", + "Swedish coldblood trotter", + "Swedish Warmblood", + "Swiss Warmblood", + "Taishū Horse", + "Takhi", + "Tawleed", + "Tchernomor", + "Tennessee Walking Horse", + "Tersk Horse", + "Thoroughbred", + "Tiger Horse", + "Tinker Horse", + "Tolfetano", + "Tori Horse", + "Trait Du Nord", + "Trakehner", + "Tsushima", + "Tuigpaard", + "Ukrainian Riding Horse", + "Unmol Horse", + "Uzunyayla", + "Ventasso Horse", + "Virginia Highlander", + "Vlaamperd", + "Vladimir Heavy Draft", + "Vyatka", + "Waler", + "Waler Horse", + "Walkaloosa", + "Warlander", + "Warmblood", + "Welsh Cob", + "Westphalian Horse", + "Wielkopolski", + "Württemberger", + "Xilingol Horse", + "Yakutian Horse", + "Yili Horse", + "Yonaguni Horse", + "Zaniskari", + "Žemaitukas", + "Zhemaichu", + "Zweibrücker", +}; -const std::array insects = {"Acacia-ants", - "Acorn-plum gall", - "Aerial yellowjacket", - "Africanized honey bee", - "Allegheny mound ant", - "Almond stone wasp", - "Ant", - "Arboreal ant", - "Argentine ant", - "Asian paper wasp", - "Baldfaced hornet", - "Bee", - "Bigheaded ant", - "Black and yellow mud dauber", - "Black carpenter ant", - "Black imported fire ant", - "Blue horntail woodwasp", - "Blue orchard bee", - "Braconid wasp", - "Bumble bee", - "Carpenter ant", - "Carpenter wasp", - "Chalcid wasp", - "Cicada killer", - "Citrus blackfly parasitoid", - "Common paper wasp", - "Crazy ant", - "Cuckoo wasp", - "Cynipid gall wasp", - "Eastern Carpenter bee", - "Eastern yellowjacket", - "Elm sawfly", - "Encyrtid wasp", - "Erythrina gall wasp", - "Eulophid wasp", - "European hornet", - "European imported fire ant", - "False honey ant", - "Fire ant", - "Forest bachac", - "Forest yellowjacket", - "German yellowjacket", - "Ghost ant", - "Giant ichneumon wasp", - "Giant resin bee", - "Giant wood wasp", - "Golden northern bumble bee", - "Golden paper wasp", - "Gouty oak gall", - "Grass Carrying Wasp", - "Great black wasp", - "Great golden digger wasp", - "Hackberry nipple gall parasitoid", - "Honey bee", - "Horned oak gall", - "Horse guard wasp", - "Hunting wasp", - "Ichneumonid wasp", - "Keyhole wasp", - "Knopper gall", - "Large garden bumble bee", - "Large oak-apple gall", - "Leafcutting bee", - "Little fire ant", - "Little yellow ant", - "Long-horned bees", - "Long-legged ant", - "Macao paper wasp", - "Mallow bee", - "Marble gall", - "Mossyrose gall wasp", - "Mud-daubers", - "Multiflora rose seed chalcid", - "Oak apple gall wasp", - "Oak rough bulletgall wasp", - "Oak saucer gall", - "Oak shoot sawfly", - "Odorous house ant", - "Orange-tailed bumble bee", - "Orangetailed potter wasp", - "Oriental chestnut gall wasp", - "Paper wasp", - "Pavement ant", - "Pigeon tremex", - "Pip gall wasp", - "Prairie yellowjacket", - "Pteromalid wasp", - "Pyramid ant", - "Raspberry Horntail", - "Red ant", - "Red carpenter ant", - "Red harvester ant", - "Red imported fire ant", - "Red wasp", - "Red wood ant", - "Red-tailed wasp", - "Reddish carpenter ant", - "Rough harvester ant", - "Sawfly parasitic wasp", - "Scale parasitoid", - "Silky ant", - "Sirex woodwasp", - "Siricid woodwasp", - "Smaller yellow ant", - "Southeastern blueberry bee", - "Southern fire ant", - "Southern yellowjacket", - "Sphecid wasp", - "Stony gall", - "Sweat bee", - "Texas leafcutting ant", - "Tiphiid wasp", - "Torymid wasp", - "Tramp ant", - "Valentine ant", - "Velvet ant", - "Vespid wasp", - "Weevil parasitoid", - "Western harvester ant", - "Western paper wasp", - "Western thatching ant", - "Western yellowjacket", - "White-horned horntail", - "Willow shoot sawfly", - "Woodwasp", - "Wool sower gall maker", - "Yellow and black potter wasp", - "Yellow Crazy Ant", - "Yellow-horned horntail"}; +const std::array insects = { + "Acacia-ants", + "Acorn-plum gall", + "Aerial yellowjacket", + "Africanized honey bee", + "Allegheny mound ant", + "Almond stone wasp", + "Ant", + "Arboreal ant", + "Argentine ant", + "Asian paper wasp", + "Baldfaced hornet", + "Bee", + "Bigheaded ant", + "Black and yellow mud dauber", + "Black carpenter ant", + "Black imported fire ant", + "Blue horntail woodwasp", + "Blue orchard bee", + "Braconid wasp", + "Bumble bee", + "Carpenter ant", + "Carpenter wasp", + "Chalcid wasp", + "Cicada killer", + "Citrus blackfly parasitoid", + "Common paper wasp", + "Crazy ant", + "Cuckoo wasp", + "Cynipid gall wasp", + "Eastern Carpenter bee", + "Eastern yellowjacket", + "Elm sawfly", + "Encyrtid wasp", + "Erythrina gall wasp", + "Eulophid wasp", + "European hornet", + "European imported fire ant", + "False honey ant", + "Fire ant", + "Forest bachac", + "Forest yellowjacket", + "German yellowjacket", + "Ghost ant", + "Giant ichneumon wasp", + "Giant resin bee", + "Giant wood wasp", + "Golden northern bumble bee", + "Golden paper wasp", + "Gouty oak gall", + "Grass Carrying Wasp", + "Great black wasp", + "Great golden digger wasp", + "Hackberry nipple gall parasitoid", + "Honey bee", + "Horned oak gall", + "Horse guard wasp", + "Hunting wasp", + "Ichneumonid wasp", + "Keyhole wasp", + "Knopper gall", + "Large garden bumble bee", + "Large oak-apple gall", + "Leafcutting bee", + "Little fire ant", + "Little yellow ant", + "Long-horned bees", + "Long-legged ant", + "Macao paper wasp", + "Mallow bee", + "Marble gall", + "Mossyrose gall wasp", + "Mud-daubers", + "Multiflora rose seed chalcid", + "Oak apple gall wasp", + "Oak rough bulletgall wasp", + "Oak saucer gall", + "Oak shoot sawfly", + "Odorous house ant", + "Orange-tailed bumble bee", + "Orangetailed potter wasp", + "Oriental chestnut gall wasp", + "Paper wasp", + "Pavement ant", + "Pigeon tremex", + "Pip gall wasp", + "Prairie yellowjacket", + "Pteromalid wasp", + "Pyramid ant", + "Raspberry Horntail", + "Red ant", + "Red carpenter ant", + "Red harvester ant", + "Red imported fire ant", + "Red wasp", + "Red wood ant", + "Red-tailed wasp", + "Reddish carpenter ant", + "Rough harvester ant", + "Sawfly parasitic wasp", + "Scale parasitoid", + "Silky ant", + "Sirex woodwasp", + "Siricid woodwasp", + "Smaller yellow ant", + "Southeastern blueberry bee", + "Southern fire ant", + "Southern yellowjacket", + "Sphecid wasp", + "Stony gall", + "Sweat bee", + "Texas leafcutting ant", + "Tiphiid wasp", + "Torymid wasp", + "Tramp ant", + "Valentine ant", + "Velvet ant", + "Vespid wasp", + "Weevil parasitoid", + "Western harvester ant", + "Western paper wasp", + "Western thatching ant", + "Western yellowjacket", + "White-horned horntail", + "Willow shoot sawfly", + "Woodwasp", + "Wool sower gall maker", + "Yellow and black potter wasp", + "Yellow Crazy Ant", + "Yellow-horned horntail", +}; const std::array lions = { "Asiatic Lion", "Barbary Lion", "West African Lion", "Northeast Congo Lion", - "Masai Lion", "Transvaal lion", "Cape lion"}; + "Masai Lion", "Transvaal lion", "Cape lion", +}; -const std::array rabbits = {"American", - "American Chinchilla", - "American Fuzzy Lop", - "American Sable", - "Argente Brun", - "Belgian Hare", - "Beveren", - "Blanc de Hotot", - "Britannia Petite", - "Californian", - "Champagne D’Argent", - "Checkered Giant", - "Cinnamon", - "Crème D’Argent", - "Dutch", - "Dwarf Hotot", - "English Angora", - "English Lop", - "English Spot", - "Flemish Giant", - "Florida White", - "French Angora", - "French Lop", - "Giant Angora", - "Giant Chinchilla", - "Harlequin", - "Havana", - "Himalayan", - "Holland Lop", - "Jersey Wooly", - "Lilac", - "Lionhead", - "Mini Lop", - "Mini Rex", - "Mini Satin", - "Netherland Dwarf", - "New Zealand", - "Palomino", - "Polish", - "Rex", - "Rhinelander", - "Satin", - "Satin Angora", - "Silver", - "Silver Fox", - "Silver Marten", - "Standard Chinchilla", - "Tan", - "Thrianta"}; +const std::array rabbits = { + "American", + "American Chinchilla", + "American Fuzzy Lop", + "American Sable", + "Argente Brun", + "Belgian Hare", + "Beveren", + "Blanc de Hotot", + "Britannia Petite", + "Californian", + "Champagne D’Argent", + "Checkered Giant", + "Cinnamon", + "Crème D’Argent", + "Dutch", + "Dwarf Hotot", + "English Angora", + "English Lop", + "English Spot", + "Flemish Giant", + "Florida White", + "French Angora", + "French Lop", + "Giant Angora", + "Giant Chinchilla", + "Harlequin", + "Havana", + "Himalayan", + "Holland Lop", + "Jersey Wooly", + "Lilac", + "Lionhead", + "Mini Lop", + "Mini Rex", + "Mini Satin", + "Netherland Dwarf", + "New Zealand", + "Palomino", + "Polish", + "Rex", + "Rhinelander", + "Satin", + "Satin Angora", + "Silver", + "Silver Fox", + "Silver Marten", + "Standard Chinchilla", + "Tan", + "Thrianta", +}; -const std::array rodents = {"Abrocoma", - "Abrocoma schistacea", - "Aconaemys", - "Aconaemys porteri", - "African brush-tailed porcupine", - "Andean mountain cavy", - "Argentine tuco-tuco", - "Ashy chinchilla rat", - "Asiatic brush-tailed porcupine", - "Atherurus", - "Azara's agouti", - "Azara's tuco-tuco", - "Bahia porcupine", - "Bathyergus", - "Bathyergus janetta", - "Bathyergus suillus", - "Bennett's chinchilla rat", - "Bicolored-spined porcupine", - "Black agouti", - "Black dwarf porcupine", - "Black-rumped agouti", - "Black-tailed hairy dwarf porcupine", - "Bolivian chinchilla rat", - "Bolivian tuco-tuco", - "Bonetto's tuco-tuco", - "Brandt's yellow-toothed cavy", - "Brazilian guinea pig", - "Brazilian porcupine", - "Brazilian tuco-tuco", - "Bridge's degu", - "Brown hairy dwarf porcupine", - "Budin's chinchilla rat, A. budini", - "Cape porcupine", - "Catamarca tuco-tuco", - "Cavia", - "Central American agouti", - "Chacoan tuco-tuco", - "Chilean rock rat", - "Chinchilla", - "Coendou", - "Coiban agouti", - "Colburn's tuco-tuco", - "Collared tuco-tuco", - "Common degu", - "Common yellow-toothed cavy", - "Conover's tuco-tuco", - "Coruro", - "Crested agouti", - "Crested porcupine", - "Cryptomys", - "Cryptomys bocagei", - "Cryptomys damarensis", - "Cryptomys foxi", - "Cryptomys hottentotus", - "Cryptomys mechowi", - "Cryptomys ochraceocinereus", - "Cryptomys zechi", - "Ctenomys", - "Cuniculus", - "Cuscomys", - "Cuscomys ashanika", - "Dactylomys", - "Dactylomys boliviensis", - "Dactylomys dactylinus", - "Dactylomys peruanus", - "Dasyprocta", - "Domestic guinea pig", - "Emily's tuco-tuco", - "Erethizon", - "Famatina chinchilla rat", - "Frosted hairy dwarf porcupine", - "Fukomys", - "Fukomys amatus", - "Fukomys anselli", - "Fukomys bocagei", - "Fukomys damarensis", - "Fukomys darlingi", - "Fukomys foxi", - "Fukomys ilariae", - "Fukomys kafuensis", - "Fukomys mechowii", - "Fukomys micklemi", - "Fukomys occlusus", - "Fukomys ochraceocinereus", - "Fukomys whytei", - "Fukomys zechi", - "Furtive tuco-tuco", - "Galea", - "Georychus", - "Georychus capensis", - "Golden viscacha-rat", - "Goya tuco-tuco", - "Greater guinea pig", - "Green acouchi", - "Haig's tuco-tuco", - "Heliophobius", - "Heliophobius argenteocinereus", - "Heterocephalus", - "Heterocephalus glaber", - "Highland tuco-tuco", - "Hystrix", - "Indian porcupine", - "Isla Mocha degu", - "Kalinowski agouti", - "Kannabateomys", - "Kannabateomys amblyonyx", - "Lagidium", - "Lagostomus", - "Lewis' tuco-tuco", - "Long-tailed chinchilla", - "Long-tailed porcupine", - "Los Chalchaleros' viscacha-rat", - "Lowland paca", - "Magellanic tuco-tuco", - "Malayan porcupine", - "Maule tuco-tuco", - "Mendoza tuco-tuco", - "Mexican agouti", - "Mexican hairy dwarf porcupine", - "Microcavia", - "Montane guinea pig", - "Moon-toothed degu", - "Mottled tuco-tuco", - "Mountain degu", - "Mountain paca", - "Mountain viscacha-rat", - "Myoprocta", - "Natterer's tuco-tuco", - "North American porcupine", - "Northern viscacha", - "Octodon", - "Octodontomys", - "Octomys", - "Olallamys", - "Olallamys albicauda", - "Olallamys edax", - "Orinoco agouti", - "Paraguaian hairy dwarf porcupine", - "Pearson's tuco-tuco", - "Peruvian tuco-tuco", - "Philippine porcupine", - "Pipanacoctomys", - "Plains viscacha", - "Plains viscacha-rat", - "Porteous' tuco-tuco", - "Punta de Vacas chinchilla rat", - "Red acouchi", - "Red-rumped agouti", - "Reddish tuco-tuco", - "Rio Negro tuco-tuco", - "Robust tuco-tuco", - "Roosmalen's dwarf porcupine", - "Rothschild's porcupine", - "Ruatan Island agouti", - "Sage's rock rat", - "Salinoctomys", - "Salta tuco-tuco", - "San Luis tuco-tuco", - "Santa Catarina's guinea pig", - "Shiny guinea pig", - "Shipton's mountain cavy", - "Short-tailed chinchilla", - "Silky tuco-tuco", - "Social tuco-tuco", - "Southern mountain cavy", - "Southern tuco-tuco", - "Southern viscacha", - "Spalacopus", - "Spix's yellow-toothed cavy", - "Steinbach's tuco-tuco", - "Streaked dwarf porcupine", - "Strong tuco-tuco", - "Stump-tailed porcupine", - "Sumatran porcupine", - "Sunda porcupine", - "Talas tuco-tuco", - "Tawny tuco-tuco", - "Thick-spined porcupine", - "Tiny tuco-tuco", - "Trichys", - "Tucuman tuco-tuco", - "Tympanoctomys", - "Uspallata chinchilla rat", - "White-toothed tuco-tuco", - "Wolffsohn's viscacha"}; +const std::array rodents = { + "Abrocoma", + "Abrocoma schistacea", + "Aconaemys", + "Aconaemys porteri", + "African brush-tailed porcupine", + "Andean mountain cavy", + "Argentine tuco-tuco", + "Ashy chinchilla rat", + "Asiatic brush-tailed porcupine", + "Atherurus", + "Azara's agouti", + "Azara's tuco-tuco", + "Bahia porcupine", + "Bathyergus", + "Bathyergus janetta", + "Bathyergus suillus", + "Bennett's chinchilla rat", + "Bicolored-spined porcupine", + "Black agouti", + "Black dwarf porcupine", + "Black-rumped agouti", + "Black-tailed hairy dwarf porcupine", + "Bolivian chinchilla rat", + "Bolivian tuco-tuco", + "Bonetto's tuco-tuco", + "Brandt's yellow-toothed cavy", + "Brazilian guinea pig", + "Brazilian porcupine", + "Brazilian tuco-tuco", + "Bridge's degu", + "Brown hairy dwarf porcupine", + "Budin's chinchilla rat, A. budini", + "Cape porcupine", + "Catamarca tuco-tuco", + "Cavia", + "Central American agouti", + "Chacoan tuco-tuco", + "Chilean rock rat", + "Chinchilla", + "Coendou", + "Coiban agouti", + "Colburn's tuco-tuco", + "Collared tuco-tuco", + "Common degu", + "Common yellow-toothed cavy", + "Conover's tuco-tuco", + "Coruro", + "Crested agouti", + "Crested porcupine", + "Cryptomys", + "Cryptomys bocagei", + "Cryptomys damarensis", + "Cryptomys foxi", + "Cryptomys hottentotus", + "Cryptomys mechowi", + "Cryptomys ochraceocinereus", + "Cryptomys zechi", + "Ctenomys", + "Cuniculus", + "Cuscomys", + "Cuscomys ashanika", + "Dactylomys", + "Dactylomys boliviensis", + "Dactylomys dactylinus", + "Dactylomys peruanus", + "Dasyprocta", + "Domestic guinea pig", + "Emily's tuco-tuco", + "Erethizon", + "Famatina chinchilla rat", + "Frosted hairy dwarf porcupine", + "Fukomys", + "Fukomys amatus", + "Fukomys anselli", + "Fukomys bocagei", + "Fukomys damarensis", + "Fukomys darlingi", + "Fukomys foxi", + "Fukomys ilariae", + "Fukomys kafuensis", + "Fukomys mechowii", + "Fukomys micklemi", + "Fukomys occlusus", + "Fukomys ochraceocinereus", + "Fukomys whytei", + "Fukomys zechi", + "Furtive tuco-tuco", + "Galea", + "Georychus", + "Georychus capensis", + "Golden viscacha-rat", + "Goya tuco-tuco", + "Greater guinea pig", + "Green acouchi", + "Haig's tuco-tuco", + "Heliophobius", + "Heliophobius argenteocinereus", + "Heterocephalus", + "Heterocephalus glaber", + "Highland tuco-tuco", + "Hystrix", + "Indian porcupine", + "Isla Mocha degu", + "Kalinowski agouti", + "Kannabateomys", + "Kannabateomys amblyonyx", + "Lagidium", + "Lagostomus", + "Lewis' tuco-tuco", + "Long-tailed chinchilla", + "Long-tailed porcupine", + "Los Chalchaleros' viscacha-rat", + "Lowland paca", + "Magellanic tuco-tuco", + "Malayan porcupine", + "Maule tuco-tuco", + "Mendoza tuco-tuco", + "Mexican agouti", + "Mexican hairy dwarf porcupine", + "Microcavia", + "Montane guinea pig", + "Moon-toothed degu", + "Mottled tuco-tuco", + "Mountain degu", + "Mountain paca", + "Mountain viscacha-rat", + "Myoprocta", + "Natterer's tuco-tuco", + "North American porcupine", + "Northern viscacha", + "Octodon", + "Octodontomys", + "Octomys", + "Olallamys", + "Olallamys albicauda", + "Olallamys edax", + "Orinoco agouti", + "Paraguaian hairy dwarf porcupine", + "Pearson's tuco-tuco", + "Peruvian tuco-tuco", + "Philippine porcupine", + "Pipanacoctomys", + "Plains viscacha", + "Plains viscacha-rat", + "Porteous' tuco-tuco", + "Punta de Vacas chinchilla rat", + "Red acouchi", + "Red-rumped agouti", + "Reddish tuco-tuco", + "Rio Negro tuco-tuco", + "Robust tuco-tuco", + "Roosmalen's dwarf porcupine", + "Rothschild's porcupine", + "Ruatan Island agouti", + "Sage's rock rat", + "Salinoctomys", + "Salta tuco-tuco", + "San Luis tuco-tuco", + "Santa Catarina's guinea pig", + "Shiny guinea pig", + "Shipton's mountain cavy", + "Short-tailed chinchilla", + "Silky tuco-tuco", + "Social tuco-tuco", + "Southern mountain cavy", + "Southern tuco-tuco", + "Southern viscacha", + "Spalacopus", + "Spix's yellow-toothed cavy", + "Steinbach's tuco-tuco", + "Streaked dwarf porcupine", + "Strong tuco-tuco", + "Stump-tailed porcupine", + "Sumatran porcupine", + "Sunda porcupine", + "Talas tuco-tuco", + "Tawny tuco-tuco", + "Thick-spined porcupine", + "Tiny tuco-tuco", + "Trichys", + "Tucuman tuco-tuco", + "Tympanoctomys", + "Uspallata chinchilla rat", + "White-toothed tuco-tuco", + "Wolffsohn's viscacha", +}; -const std::array snakes = {"Viper Adder", - "Common adder", - "Death Adder", - "Desert death adder", - "Horned adder", - "Long-nosed adder", - "Many-horned adder", - "Mountain adder", - "Mud adder", - "Namaqua dwarf adder", - "Nightingale adder", - "Peringuey's adder", - "Puff adder", - "African puff adder", - "Rhombic night adder", - "Sand adder", - "Dwarf sand adder", - "Namib dwarf sand adder", - "Water adder", - "Aesculapian snake", - "Anaconda", - "Bolivian anaconda", - "De Schauensee's anaconda", - "Green anaconda", - "Yellow anaconda", - "Arafura file snake", - "Asp", - "European asp", - "Egyptian asp", - "African beaked snake", - "Ball Python", - "Bird snake", - "Black-headed snake", - "Mexican black kingsnake", - "Black rat snake", - "Black snake", - "Red-bellied black snake", - "Blind snake", - "Brahminy blind snake", - "Texas blind snake", - "Western blind snake", - "Boa", - "Abaco Island boa", - "Amazon tree boa", - "Boa constrictor", - "Cuban boa", - "Dumeril's boa", - "Dwarf boa", - "Emerald tree boa", - "Hogg Island boa", - "Jamaican boa", - "Madagascar ground boa", - "Madagascar tree boa", - "Puerto Rican boa", - "Rainbow boa", - "Red-tailed boa", - "Rosy boa", - "Rubber boa", - "Sand boa", - "Tree boa", - "Boiga", - "Boomslang", - "Brown snake", - "Eastern brown snake", - "Bull snake", - "Bushmaster", - "Dwarf beaked snake", - "Rufous beaked snake", - "Canebrake", - "Cantil", - "Cascabel", - "Cat-eyed snake", - "Banded cat-eyed snake", - "Green cat-eyed snake", - "Cat snake", - "Andaman cat snake", - "Beddome's cat snake", - "Dog-toothed cat snake", - "Forsten's cat snake", - "Gold-ringed cat snake", - "Gray cat snake", - "Many-spotted cat snake", - "Tawny cat snake", - "Chicken snake", - "Coachwhip snake", - "Cobra", - "Andaman cobra", - "Arabian cobra", - "Asian cobra", - "Banded water cobra", - "Black-necked cobra", - "Black-necked spitting cobra", - "Black tree cobra", - "Burrowing cobra", - "Cape cobra", - "Caspian cobra", - "Congo water cobra", - "Common cobra", - "Eastern water cobra", - "Egyptian cobra", - "Equatorial spitting cobra", - "False cobra", - "False water cobra", - "Forest cobra", - "Gold tree cobra", - "Indian cobra", - "Indochinese spitting cobra", - "Javan spitting cobra", - "King cobra", - "Mandalay cobra", - "Mozambique spitting cobra", - "North Philippine cobra", - "Nubian spitting cobra", - "Philippine cobra", - "Red spitting cobra", - "Rinkhals cobra", - "Shield-nosed cobra", - "Sinai desert cobra", - "Southern Indonesian spitting cobra", - "Southern Philippine cobra", - "Southwestern black spitting cobra", - "Snouted cobra", - "Spectacled cobra", - "Spitting cobra", - "Storm water cobra", - "Thai cobra", - "Taiwan cobra", - "Zebra spitting cobra", - "Collett's snake", - "Congo snake", - "Copperhead", - "American copperhead", - "Australian copperhead", - "Coral snake", - "Arizona coral snake", - "Beddome's coral snake", - "Brazilian coral snake", - "Cape coral snake", - "Harlequin coral snake", - "High Woods coral snake", - "Malayan long-glanded coral snake", - "Texas Coral Snake", - "Western coral snake", - "Corn snake", - "South eastern corn snake", - "Cottonmouth", - "Crowned snake", - "Cuban wood snake", - "Eastern hognose snake", - "Egg-eater", - "Eastern coral snake", - "Fer-de-lance", - "Fierce snake", - "Fishing snake", - "Flying snake", - "Golden tree snake", - "Indian flying snake", - "Moluccan flying snake", - "Ornate flying snake", - "Paradise flying snake", - "Twin-Barred tree snake", - "Banded Flying Snake", - "Fox snake, three species of Pantherophis", - "Forest flame snake", - "Garter snake", - "Checkered garter snake", - "Common garter snake", - "San Francisco garter snake", - "Texas garter snake", - "Cape gopher snake", - "Grass snake", - "Green snake", - "Rough green snake", - "Smooth green snake", - "Ground snake", - "Common ground snake", - "Three-lined ground snake", - "Western ground snake", - "Habu", - "Hognose snake", - "Blonde hognose snake", - "Dusty hognose snake", - "Jan's hognose snake", - "Giant Malagasy hognose snake", - "Mexican hognose snake", - "South American hognose snake", - "Hundred pacer", - "Ikaheka snake", - "Indigo snake", - "Jamaican Tree Snake", - "Keelback", - "Asian keelback", - "Assam keelback", - "Black-striped keelback", - "Buff striped keelback", - "Burmese keelback", - "Checkered keelback", - "Common keelback", - "Hill keelback", - "Himalayan keelback", - "Khasi Hills keelback", - "Modest keelback", - "Nicobar Island keelback", - "Nilgiri keelback", - "Orange-collared keelback", - "Red-necked keelback", - "Sikkim keelback", - "Speckle-bellied keelback", - "White-lipped keelback", - "Wynaad keelback", - "Yunnan keelback", - "King brown", - "King snake", - "California kingsnake", - "Desert kingsnake", - "Grey-banded kingsnake", - "North eastern king snake", - "Prairie kingsnake", - "Scarlet kingsnake", - "Speckled kingsnake", - "Krait", - "Banded krait", - "Blue krait", - "Black krait", - "Burmese krait", - "Ceylon krait", - "Indian krait", - "Lesser black krait", - "Malayan krait", - "Many-banded krait", - "Northeastern hill krait", - "Red-headed krait", - "Sind krait", - "Large shield snake", - "Lancehead", - "Common lancehead", - "Lora", - "Grey Lora", - "Lyre snake", - "Baja California lyresnake", - "Central American lyre snake", - "Texas lyre snake", - "Eastern lyre snake", - "Machete savane", - "Mamba", - "Black mamba", - "Green mamba", - "Eastern green mamba", - "Western green mamba", - "Mamushi", - "Mangrove snake", - "Milk snake", - "Moccasin snake", - "Montpellier snake", - "Mud snake", - "Eastern mud snake", - "Western mud snake", - "Mussurana", - "Night snake", - "Cat-eyed night snake", - "Texas night snake", - "Nichell snake", - "Narrowhead Garter Snake", - "Nose-horned viper", - "Rhinoceros viper", - "Vipera ammodytes", - "Parrot snake", - "Mexican parrot snake", - "Patchnose snake", - "Perrotet's shieldtail snake", - "Pine snake", - "Pipe snake", - "Asian pipe snake", - "Dwarf pipe snake", - "Red-tailed pipe snake", - "Python", - "African rock python", - "Amethystine python", - "Angolan python", - "Australian scrub python", - "Ball python", - "Bismarck ringed python", - "Black headed python", - "Blood python", - "Boelen python", - "Borneo short-tailed python", - "Bredl's python", - "Brown water python", - "Burmese python", - "Calabar python", - "Western carpet python", - "Centralian carpet python", - "Coastal carpet python", - "Inland carpet python", - "Jungle carpet python", - "New Guinea carpet python", - "Northwestern carpet python", - "Southwestern carpet python", - "Children's python", - "Dauan Island water python", - "Desert woma python", - "Diamond python", - "Flinders python", - "Green tree python", - "Halmahera python", - "Indian python", - "Indonesian water python", - "Macklot's python", - "Mollucan python", - "Oenpelli python", - "Olive python", - "Papuan python", - "Pygmy python", - "Red blood python", - "Reticulated python", - "Kayaudi dwarf reticulated python", - "Selayer reticulated python", - "Rough-scaled python", - "Royal python", - "Savu python", - "Spotted python", - "Stimson's python", - "Sumatran short-tailed python", - "Tanimbar python", - "Timor python", - "Wetar Island python", - "White-lipped python", - "Brown white-lipped python", - "Northern white-lipped python", - "Southern white-lipped python", - "Woma python", - "Western woma python", - "Queen snake", - "Racer", - "Bimini racer", - "Buttermilk racer", - "Eastern racer", - "Eastern yellowbelly sad racer", - "Mexican racer", - "Southern black racer", - "Tan racer", - "West Indian racer", - "Raddysnake", - "Southwestern blackhead snake", - "Rat snake", - "Baird's rat snake", - "Beauty rat snake", - "Great Plains rat snake", - "Green rat snake", - "Japanese forest rat snake", - "Japanese rat snake", - "King rat snake", - "Mandarin rat snake", - "Persian rat snake", - "Red-backed rat snake", - "Twin-spotted rat snake", - "Yellow-striped rat snake", - "Manchurian Black Water Snake", - "Rattlesnake", - "Arizona black rattlesnake", - "Aruba rattlesnake", - "Chihuahuan ridge-nosed rattlesnake", - "Coronado Island rattlesnake", - "Durango rock rattlesnake", - "Dusky pigmy rattlesnake", - "Eastern diamondback rattlesnake", - "Grand Canyon rattlesnake", - "Great Basin rattlesnake", - "Hopi rattlesnake", - "Lance-headed rattlesnake", - "Long-tailed rattlesnake", - "Massasauga rattlesnake", - "Mexican green rattlesnake", - "Mexican west coast rattlesnake", - "Midget faded rattlesnake", - "Mojave rattlesnake", - "Northern black-tailed rattlesnake", - "Oaxacan small-headed rattlesnake", - "Rattler", - "Red diamond rattlesnake", - "Southern Pacific rattlesnake", - "Southwestern speckled rattlesnake", - "Tancitaran dusky rattlesnake", - "Tiger rattlesnake", - "Timber rattlesnake", - "Tropical rattlesnake", - "Twin-spotted rattlesnake", - "Uracoan rattlesnake", - "Western diamondback rattlesnake", - "Ribbon snake", - "Rinkhals", - "River jack", - "Sea snake", - "Annulated sea snake", - "Beaked sea snake", - "Dubois's sea snake", - "Hardwicke's sea snake", - "Hook Nosed Sea Snake", - "Olive sea snake", - "Pelagic sea snake", - "Stoke's sea snake", - "Yellow-banded sea snake", - "Yellow-bellied sea snake", - "Yellow-lipped sea snake", - "Shield-tailed snake", - "Sidewinder", - "Colorado desert sidewinder", - "Mojave desert sidewinder", - "Sonoran sidewinder", - "Small-eyed snake", - "Smooth snake", - "Brazilian smooth snake", - "European smooth snake", - "Stiletto snake", - "Striped snake", - "Japanese striped snake", - "Sunbeam snake", - "Taipan", - "Central ranges taipan", - "Coastal taipan", - "Inland taipan", - "Paupan taipan", - "Tentacled snake", - "Tic polonga", - "Tiger snake", - "Chappell Island tiger snake", - "Common tiger snake", - "Down's tiger snake", - "Eastern tiger snake", - "King Island tiger snake", - "Krefft's tiger snake", - "Peninsula tiger snake", - "Tasmanian tiger snake", - "Western tiger snake", - "Tigre snake", - "Tree snake", - "Blanding's tree snake", - "Blunt-headed tree snake", - "Brown tree snake", - "Long-nosed tree snake", - "Many-banded tree snake", - "Northern tree snake", - "Trinket snake", - "Black-banded trinket snake", - "Twig snake", - "African twig snake", - "Twin Headed King Snake", - "Titanboa", - "Urutu", - "Vine snake", - "Asian Vine Snake, Whip Snake", - "American Vine Snake", - "Mexican vine snake", - "Viper", - "Asp viper", - "Bamboo viper", - "Bluntnose viper", - "Brazilian mud Viper", - "Burrowing viper", - "Bush viper", - "Great Lakes bush viper", - "Hairy bush viper", - "Nitsche's bush viper", - "Rough-scaled bush viper", - "Spiny bush viper", - "Carpet viper", - "Crossed viper", - "Cyclades blunt-nosed viper", - "Eyelash viper", - "False horned viper", - "Fea's viper", - "Fifty pacer", - "Gaboon viper", - "Hognosed viper", - "Horned desert viper", - "Horned viper", - "Jumping viper", - "Kaznakov's viper", - "Leaf-nosed viper", - "Leaf viper", - "Levant viper", - "Long-nosed viper", - "McMahon's viper", - "Mole viper", - "Palestine viper", - "Pallas' viper", - "Palm viper", - "Amazonian palm viper", - "Black-speckled palm-pitviper", - "Eyelash palm-pitviper", - "Green palm viper", - "Mexican palm-pitviper", - "Guatemalan palm viper", - "Honduran palm viper", - "Siamese palm viper", - "Side-striped palm-pitviper", - "Yellow-lined palm viper", - "Pit viper", - "Banded pitviper", - "Bamboo pitviper", - "Barbour's pit viper", - "Black-tailed horned pit viper", - "Bornean pitviper", - "Brongersma's pitviper", - "Brown spotted pitviper[4]", - "Cantor's pitviper", - "Elegant pitviper", - "Eyelash pit viper", - "Fan-Si-Pan horned pitviper", - "Flat-nosed pitviper", - "Godman's pit viper", - "Green tree pit viper", - "Habu pit viper", - "Hagen's pitviper", - "Horseshoe pitviper", - "Jerdon's pitviper", - "Kanburian pit viper", - "Kaulback's lance-headed pitviper", - "Kham Plateau pitviper", - "Large-eyed pitviper", - "Malabar rock pitviper", - "Malayan pit viper", - "Mangrove pit viper", - "Mangshan pitviper", - "Motuo bamboo pitviper", - "Nicobar bamboo pitviper", - "Philippine pitviper", - "Pointed-scaled pit viper[5]", - "Red-tailed bamboo pitviper", - "Schultze's pitviper", - "Stejneger's bamboo pitviper", - "Sri Lankan pit viper", - "Temple pit viper", - "Tibetan bamboo pitviper", - "Tiger pit viper", - "Undulated pit viper", - "Wagler's pit viper", - "Wirot's pit viper", - "Portuguese viper", - "Saw-scaled viper", - "Schlegel's viper", - "Sedge viper", - "Sharp-nosed viper", - "Snorkel viper", - "Temple viper", - "Tree viper", - "Chinese tree viper", - "Guatemalan tree viper", - "Hutton's tree viper", - "Indian tree viper", - "Large-scaled tree viper", - "Malcolm's tree viper", - "Nitsche's tree viper", - "Pope's tree viper", - "Rough-scaled tree viper", - "Rungwe tree viper", - "Sumatran tree viper", - "White-lipped tree viper", - "Ursini's viper", - "Western hog-nosed viper", - "Wart snake", - "Water moccasin", - "Water snake", - "Bocourt's water snake", - "Northern water snake", - "Whip snake", - "Long-nosed whip snake", - "Wolf snake", - "African wolf snake", - "Barred wolf snake", - "Worm snake", - "Common worm snake", - "Longnosed worm snake", - "Wutu", - "Yarara", - "Zebra snake"}; +const std::array snakes = { + "Viper Adder", + "Common adder", + "Death Adder", + "Desert death adder", + "Horned adder", + "Long-nosed adder", + "Many-horned adder", + "Mountain adder", + "Mud adder", + "Namaqua dwarf adder", + "Nightingale adder", + "Peringuey's adder", + "Puff adder", + "African puff adder", + "Rhombic night adder", + "Sand adder", + "Dwarf sand adder", + "Namib dwarf sand adder", + "Water adder", + "Aesculapian snake", + "Anaconda", + "Bolivian anaconda", + "De Schauensee's anaconda", + "Green anaconda", + "Yellow anaconda", + "Arafura file snake", + "Asp", + "European asp", + "Egyptian asp", + "African beaked snake", + "Ball Python", + "Bird snake", + "Black-headed snake", + "Mexican black kingsnake", + "Black rat snake", + "Black snake", + "Red-bellied black snake", + "Blind snake", + "Brahminy blind snake", + "Texas blind snake", + "Western blind snake", + "Boa", + "Abaco Island boa", + "Amazon tree boa", + "Boa constrictor", + "Cuban boa", + "Dumeril's boa", + "Dwarf boa", + "Emerald tree boa", + "Hogg Island boa", + "Jamaican boa", + "Madagascar ground boa", + "Madagascar tree boa", + "Puerto Rican boa", + "Rainbow boa", + "Red-tailed boa", + "Rosy boa", + "Rubber boa", + "Sand boa", + "Tree boa", + "Boiga", + "Boomslang", + "Brown snake", + "Eastern brown snake", + "Bull snake", + "Bushmaster", + "Dwarf beaked snake", + "Rufous beaked snake", + "Canebrake", + "Cantil", + "Cascabel", + "Cat-eyed snake", + "Banded cat-eyed snake", + "Green cat-eyed snake", + "Cat snake", + "Andaman cat snake", + "Beddome's cat snake", + "Dog-toothed cat snake", + "Forsten's cat snake", + "Gold-ringed cat snake", + "Gray cat snake", + "Many-spotted cat snake", + "Tawny cat snake", + "Chicken snake", + "Coachwhip snake", + "Cobra", + "Andaman cobra", + "Arabian cobra", + "Asian cobra", + "Banded water cobra", + "Black-necked cobra", + "Black-necked spitting cobra", + "Black tree cobra", + "Burrowing cobra", + "Cape cobra", + "Caspian cobra", + "Congo water cobra", + "Common cobra", + "Eastern water cobra", + "Egyptian cobra", + "Equatorial spitting cobra", + "False cobra", + "False water cobra", + "Forest cobra", + "Gold tree cobra", + "Indian cobra", + "Indochinese spitting cobra", + "Javan spitting cobra", + "King cobra", + "Mandalay cobra", + "Mozambique spitting cobra", + "North Philippine cobra", + "Nubian spitting cobra", + "Philippine cobra", + "Red spitting cobra", + "Rinkhals cobra", + "Shield-nosed cobra", + "Sinai desert cobra", + "Southern Indonesian spitting cobra", + "Southern Philippine cobra", + "Southwestern black spitting cobra", + "Snouted cobra", + "Spectacled cobra", + "Spitting cobra", + "Storm water cobra", + "Thai cobra", + "Taiwan cobra", + "Zebra spitting cobra", + "Collett's snake", + "Congo snake", + "Copperhead", + "American copperhead", + "Australian copperhead", + "Coral snake", + "Arizona coral snake", + "Beddome's coral snake", + "Brazilian coral snake", + "Cape coral snake", + "Harlequin coral snake", + "High Woods coral snake", + "Malayan long-glanded coral snake", + "Texas Coral Snake", + "Western coral snake", + "Corn snake", + "South eastern corn snake", + "Cottonmouth", + "Crowned snake", + "Cuban wood snake", + "Eastern hognose snake", + "Egg-eater", + "Eastern coral snake", + "Fer-de-lance", + "Fierce snake", + "Fishing snake", + "Flying snake", + "Golden tree snake", + "Indian flying snake", + "Moluccan flying snake", + "Ornate flying snake", + "Paradise flying snake", + "Twin-Barred tree snake", + "Banded Flying Snake", + "Fox snake, three species of Pantherophis", + "Forest flame snake", + "Garter snake", + "Checkered garter snake", + "Common garter snake", + "San Francisco garter snake", + "Texas garter snake", + "Cape gopher snake", + "Grass snake", + "Green snake", + "Rough green snake", + "Smooth green snake", + "Ground snake", + "Common ground snake", + "Three-lined ground snake", + "Western ground snake", + "Habu", + "Hognose snake", + "Blonde hognose snake", + "Dusty hognose snake", + "Jan's hognose snake", + "Giant Malagasy hognose snake", + "Mexican hognose snake", + "South American hognose snake", + "Hundred pacer", + "Ikaheka snake", + "Indigo snake", + "Jamaican Tree Snake", + "Keelback", + "Asian keelback", + "Assam keelback", + "Black-striped keelback", + "Buff striped keelback", + "Burmese keelback", + "Checkered keelback", + "Common keelback", + "Hill keelback", + "Himalayan keelback", + "Khasi Hills keelback", + "Modest keelback", + "Nicobar Island keelback", + "Nilgiri keelback", + "Orange-collared keelback", + "Red-necked keelback", + "Sikkim keelback", + "Speckle-bellied keelback", + "White-lipped keelback", + "Wynaad keelback", + "Yunnan keelback", + "King brown", + "King snake", + "California kingsnake", + "Desert kingsnake", + "Grey-banded kingsnake", + "North eastern king snake", + "Prairie kingsnake", + "Scarlet kingsnake", + "Speckled kingsnake", + "Krait", + "Banded krait", + "Blue krait", + "Black krait", + "Burmese krait", + "Ceylon krait", + "Indian krait", + "Lesser black krait", + "Malayan krait", + "Many-banded krait", + "Northeastern hill krait", + "Red-headed krait", + "Sind krait", + "Large shield snake", + "Lancehead", + "Common lancehead", + "Lora", + "Grey Lora", + "Lyre snake", + "Baja California lyresnake", + "Central American lyre snake", + "Texas lyre snake", + "Eastern lyre snake", + "Machete savane", + "Mamba", + "Black mamba", + "Green mamba", + "Eastern green mamba", + "Western green mamba", + "Mamushi", + "Mangrove snake", + "Milk snake", + "Moccasin snake", + "Montpellier snake", + "Mud snake", + "Eastern mud snake", + "Western mud snake", + "Mussurana", + "Night snake", + "Cat-eyed night snake", + "Texas night snake", + "Nichell snake", + "Narrowhead Garter Snake", + "Nose-horned viper", + "Rhinoceros viper", + "Vipera ammodytes", + "Parrot snake", + "Mexican parrot snake", + "Patchnose snake", + "Perrotet's shieldtail snake", + "Pine snake", + "Pipe snake", + "Asian pipe snake", + "Dwarf pipe snake", + "Red-tailed pipe snake", + "Python", + "African rock python", + "Amethystine python", + "Angolan python", + "Australian scrub python", + "Ball python", + "Bismarck ringed python", + "Black headed python", + "Blood python", + "Boelen python", + "Borneo short-tailed python", + "Bredl's python", + "Brown water python", + "Burmese python", + "Calabar python", + "Western carpet python", + "Centralian carpet python", + "Coastal carpet python", + "Inland carpet python", + "Jungle carpet python", + "New Guinea carpet python", + "Northwestern carpet python", + "Southwestern carpet python", + "Children's python", + "Dauan Island water python", + "Desert woma python", + "Diamond python", + "Flinders python", + "Green tree python", + "Halmahera python", + "Indian python", + "Indonesian water python", + "Macklot's python", + "Mollucan python", + "Oenpelli python", + "Olive python", + "Papuan python", + "Pygmy python", + "Red blood python", + "Reticulated python", + "Kayaudi dwarf reticulated python", + "Selayer reticulated python", + "Rough-scaled python", + "Royal python", + "Savu python", + "Spotted python", + "Stimson's python", + "Sumatran short-tailed python", + "Tanimbar python", + "Timor python", + "Wetar Island python", + "White-lipped python", + "Brown white-lipped python", + "Northern white-lipped python", + "Southern white-lipped python", + "Woma python", + "Western woma python", + "Queen snake", + "Racer", + "Bimini racer", + "Buttermilk racer", + "Eastern racer", + "Eastern yellowbelly sad racer", + "Mexican racer", + "Southern black racer", + "Tan racer", + "West Indian racer", + "Raddysnake", + "Southwestern blackhead snake", + "Rat snake", + "Baird's rat snake", + "Beauty rat snake", + "Great Plains rat snake", + "Green rat snake", + "Japanese forest rat snake", + "Japanese rat snake", + "King rat snake", + "Mandarin rat snake", + "Persian rat snake", + "Red-backed rat snake", + "Twin-spotted rat snake", + "Yellow-striped rat snake", + "Manchurian Black Water Snake", + "Rattlesnake", + "Arizona black rattlesnake", + "Aruba rattlesnake", + "Chihuahuan ridge-nosed rattlesnake", + "Coronado Island rattlesnake", + "Durango rock rattlesnake", + "Dusky pigmy rattlesnake", + "Eastern diamondback rattlesnake", + "Grand Canyon rattlesnake", + "Great Basin rattlesnake", + "Hopi rattlesnake", + "Lance-headed rattlesnake", + "Long-tailed rattlesnake", + "Massasauga rattlesnake", + "Mexican green rattlesnake", + "Mexican west coast rattlesnake", + "Midget faded rattlesnake", + "Mojave rattlesnake", + "Northern black-tailed rattlesnake", + "Oaxacan small-headed rattlesnake", + "Rattler", + "Red diamond rattlesnake", + "Southern Pacific rattlesnake", + "Southwestern speckled rattlesnake", + "Tancitaran dusky rattlesnake", + "Tiger rattlesnake", + "Timber rattlesnake", + "Tropical rattlesnake", + "Twin-spotted rattlesnake", + "Uracoan rattlesnake", + "Western diamondback rattlesnake", + "Ribbon snake", + "Rinkhals", + "River jack", + "Sea snake", + "Annulated sea snake", + "Beaked sea snake", + "Dubois's sea snake", + "Hardwicke's sea snake", + "Hook Nosed Sea Snake", + "Olive sea snake", + "Pelagic sea snake", + "Stoke's sea snake", + "Yellow-banded sea snake", + "Yellow-bellied sea snake", + "Yellow-lipped sea snake", + "Shield-tailed snake", + "Sidewinder", + "Colorado desert sidewinder", + "Mojave desert sidewinder", + "Sonoran sidewinder", + "Small-eyed snake", + "Smooth snake", + "Brazilian smooth snake", + "European smooth snake", + "Stiletto snake", + "Striped snake", + "Japanese striped snake", + "Sunbeam snake", + "Taipan", + "Central ranges taipan", + "Coastal taipan", + "Inland taipan", + "Paupan taipan", + "Tentacled snake", + "Tic polonga", + "Tiger snake", + "Chappell Island tiger snake", + "Common tiger snake", + "Down's tiger snake", + "Eastern tiger snake", + "King Island tiger snake", + "Krefft's tiger snake", + "Peninsula tiger snake", + "Tasmanian tiger snake", + "Western tiger snake", + "Tigre snake", + "Tree snake", + "Blanding's tree snake", + "Blunt-headed tree snake", + "Brown tree snake", + "Long-nosed tree snake", + "Many-banded tree snake", + "Northern tree snake", + "Trinket snake", + "Black-banded trinket snake", + "Twig snake", + "African twig snake", + "Twin Headed King Snake", + "Titanboa", + "Urutu", + "Vine snake", + "Asian Vine Snake, Whip Snake", + "American Vine Snake", + "Mexican vine snake", + "Viper", + "Asp viper", + "Bamboo viper", + "Bluntnose viper", + "Brazilian mud Viper", + "Burrowing viper", + "Bush viper", + "Great Lakes bush viper", + "Hairy bush viper", + "Nitsche's bush viper", + "Rough-scaled bush viper", + "Spiny bush viper", + "Carpet viper", + "Crossed viper", + "Cyclades blunt-nosed viper", + "Eyelash viper", + "False horned viper", + "Fea's viper", + "Fifty pacer", + "Gaboon viper", + "Hognosed viper", + "Horned desert viper", + "Horned viper", + "Jumping viper", + "Kaznakov's viper", + "Leaf-nosed viper", + "Leaf viper", + "Levant viper", + "Long-nosed viper", + "McMahon's viper", + "Mole viper", + "Palestine viper", + "Pallas' viper", + "Palm viper", + "Amazonian palm viper", + "Black-speckled palm-pitviper", + "Eyelash palm-pitviper", + "Green palm viper", + "Mexican palm-pitviper", + "Guatemalan palm viper", + "Honduran palm viper", + "Siamese palm viper", + "Side-striped palm-pitviper", + "Yellow-lined palm viper", + "Pit viper", + "Banded pitviper", + "Bamboo pitviper", + "Barbour's pit viper", + "Black-tailed horned pit viper", + "Bornean pitviper", + "Brongersma's pitviper", + "Brown spotted pitviper[4]", + "Cantor's pitviper", + "Elegant pitviper", + "Eyelash pit viper", + "Fan-Si-Pan horned pitviper", + "Flat-nosed pitviper", + "Godman's pit viper", + "Green tree pit viper", + "Habu pit viper", + "Hagen's pitviper", + "Horseshoe pitviper", + "Jerdon's pitviper", + "Kanburian pit viper", + "Kaulback's lance-headed pitviper", + "Kham Plateau pitviper", + "Large-eyed pitviper", + "Malabar rock pitviper", + "Malayan pit viper", + "Mangrove pit viper", + "Mangshan pitviper", + "Motuo bamboo pitviper", + "Nicobar bamboo pitviper", + "Philippine pitviper", + "Pointed-scaled pit viper[5]", + "Red-tailed bamboo pitviper", + "Schultze's pitviper", + "Stejneger's bamboo pitviper", + "Sri Lankan pit viper", + "Temple pit viper", + "Tibetan bamboo pitviper", + "Tiger pit viper", + "Undulated pit viper", + "Wagler's pit viper", + "Wirot's pit viper", + "Portuguese viper", + "Saw-scaled viper", + "Schlegel's viper", + "Sedge viper", + "Sharp-nosed viper", + "Snorkel viper", + "Temple viper", + "Tree viper", + "Chinese tree viper", + "Guatemalan tree viper", + "Hutton's tree viper", + "Indian tree viper", + "Large-scaled tree viper", + "Malcolm's tree viper", + "Nitsche's tree viper", + "Pope's tree viper", + "Rough-scaled tree viper", + "Rungwe tree viper", + "Sumatran tree viper", + "White-lipped tree viper", + "Ursini's viper", + "Western hog-nosed viper", + "Wart snake", + "Water moccasin", + "Water snake", + "Bocourt's water snake", + "Northern water snake", + "Whip snake", + "Long-nosed whip snake", + "Wolf snake", + "African wolf snake", + "Barred wolf snake", + "Worm snake", + "Common worm snake", + "Longnosed worm snake", + "Wutu", + "Yarara", + "Zebra snake", +}; -const std::array types = {"dog", "cat", "snake", "bear", "lion", "cetacean", "insect", - "crocodilia", "cow", "bird", "fish", "rabbit", "horse"}; +const std::array types = { + "dog", "cat", "snake", "bear", "lion", "cetacean", "insect", "crocodilia", "cow", "bird", "fish", "rabbit", "horse", +}; } diff --git a/src/modules/animal/AnimalData.h b/src/modules/animal/AnimalData.h index 81c1c750d..74e2ac747 100644 --- a/src/modules/animal/AnimalData.h +++ b/src/modules/animal/AnimalData.h @@ -3,7 +3,7 @@ #include #include -namespace faker +namespace faker::animal { extern const std::array bears; extern const std::array birds; diff --git a/tests/modules/animal/AnimalTest.cpp b/tests/modules/animal/AnimalTest.cpp index b9de9c660..e9c58f129 100644 --- a/tests/modules/animal/AnimalTest.cpp +++ b/tests/modules/animal/AnimalTest.cpp @@ -8,7 +8,7 @@ #include "animal/AnimalData.h" using namespace ::testing; -using namespace faker; +using namespace faker::animal; class AnimalTest : public Test { @@ -17,7 +17,7 @@ class AnimalTest : public Test TEST_F(AnimalTest, shouldGenerateBear) { - const auto generatedBear = Animal::bear(); + const auto generatedBear = bear(); ASSERT_TRUE( std::ranges::any_of(bears, [generatedBear](const std::string_view& bear) { return bear == generatedBear; })); @@ -25,7 +25,7 @@ TEST_F(AnimalTest, shouldGenerateBear) TEST_F(AnimalTest, shouldGenerateBird) { - const auto generatedBird = Animal::bird(); + const auto generatedBird = bird(); ASSERT_TRUE( std::ranges::any_of(birds, [generatedBird](const std::string_view& bird) { return bird == generatedBird; })); @@ -33,14 +33,14 @@ TEST_F(AnimalTest, shouldGenerateBird) TEST_F(AnimalTest, shouldGenerateCat) { - const auto generatedCat = Animal::cat(); + const auto generatedCat = cat(); ASSERT_TRUE(std::ranges::any_of(cats, [generatedCat](const std::string_view& cat) { return cat == generatedCat; })); } TEST_F(AnimalTest, shouldGenerateCetacean) { - const auto generatedCetacean = Animal::cetacean(); + const auto generatedCetacean = cetacean(); ASSERT_TRUE(std::ranges::any_of(cetaceans, [generatedCetacean](const std::string_view& cetacean) { return cetacean == generatedCetacean; })); @@ -48,14 +48,14 @@ TEST_F(AnimalTest, shouldGenerateCetacean) TEST_F(AnimalTest, shouldGenerateCow) { - const auto generatedCow = Animal::cow(); + const auto generatedCow = cow(); ASSERT_TRUE(std::ranges::any_of(cows, [generatedCow](const std::string_view& cow) { return cow == generatedCow; })); } TEST_F(AnimalTest, shouldGenerateCrocodile) { - const auto generatedCrocodile = Animal::crocodile(); + const auto generatedCrocodile = crocodile(); ASSERT_TRUE(std::ranges::any_of(crocodiles, [generatedCrocodile](const std::string_view& crocodile) { return crocodile == generatedCrocodile; })); @@ -63,14 +63,14 @@ TEST_F(AnimalTest, shouldGenerateCrocodile) TEST_F(AnimalTest, shouldGenerateDog) { - const auto generatedDog = Animal::dog(); + const auto generatedDog = dog(); ASSERT_TRUE(std::ranges::any_of(dogs, [generatedDog](const std::string_view& dog) { return dog == generatedDog; })); } TEST_F(AnimalTest, shouldGenerateFish) { - const auto generatedFish = Animal::fish(); + const auto generatedFish = fish(); ASSERT_TRUE( std::ranges::any_of(fishes, [generatedFish](const std::string_view& fish) { return fish == generatedFish; })); @@ -78,7 +78,7 @@ TEST_F(AnimalTest, shouldGenerateFish) TEST_F(AnimalTest, shouldGenerateHorse) { - const auto generatedHorse = Animal::horse(); + const auto generatedHorse = horse(); ASSERT_TRUE(std::ranges::any_of(horses, [generatedHorse](const std::string_view& horse) { return horse == generatedHorse; })); @@ -86,7 +86,7 @@ TEST_F(AnimalTest, shouldGenerateHorse) TEST_F(AnimalTest, shouldGenerateInsect) { - const auto generatedInsect = Animal::insect(); + const auto generatedInsect = insect(); ASSERT_TRUE(std::ranges::any_of(insects, [generatedInsect](const std::string_view& insect) { return insect == generatedInsect; })); @@ -94,7 +94,7 @@ TEST_F(AnimalTest, shouldGenerateInsect) TEST_F(AnimalTest, shouldGenerateLion) { - const auto generatedLion = Animal::lion(); + const auto generatedLion = lion(); ASSERT_TRUE( std::ranges::any_of(lions, [generatedLion](const std::string_view& lion) { return lion == generatedLion; })); @@ -102,7 +102,7 @@ TEST_F(AnimalTest, shouldGenerateLion) TEST_F(AnimalTest, shouldGenerateRabbit) { - const auto generatedRabbit = Animal::rabbit(); + const auto generatedRabbit = rabbit(); ASSERT_TRUE(std::ranges::any_of(rabbits, [generatedRabbit](const std::string_view& rabbit) { return rabbit == generatedRabbit; })); @@ -110,7 +110,7 @@ TEST_F(AnimalTest, shouldGenerateRabbit) TEST_F(AnimalTest, shouldGenerateRodent) { - const auto generatedRodent = Animal::rodent(); + const auto generatedRodent = rodent(); ASSERT_TRUE(std::ranges::any_of(rodents, [generatedRodent](const std::string_view& rodent) { return rodent == generatedRodent; })); @@ -118,7 +118,7 @@ TEST_F(AnimalTest, shouldGenerateRodent) TEST_F(AnimalTest, shouldGenerateSnake) { - const auto generatedSnake = Animal::snake(); + const auto generatedSnake = snake(); ASSERT_TRUE(std::ranges::any_of(snakes, [generatedSnake](const std::string_view& snake) { return snake == generatedSnake; })); @@ -126,7 +126,7 @@ TEST_F(AnimalTest, shouldGenerateSnake) TEST_F(AnimalTest, shouldGenerateType) { - const auto generatedType = Animal::type(); + const auto generatedType = type(); ASSERT_TRUE( std::ranges::any_of(types, [generatedType](const std::string_view& type) { return type == generatedType; }));