Advertisement
Guest User

Untitled

a guest
Apr 20th, 2019
126
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 260.06 KB | None | 0 0
  1. import os
  2. import random
  3.  
  4. #pokemon class
  5. class pokemon():
  6. def __init__(self, objn, name, item, nature, ev_spread, ability, move1, move2, move3, move4, tier):
  7. self.objn = objn
  8. self.name = name
  9. self.item = item
  10. self.nature = nature
  11. self.ev_spread = ev_spread
  12. self.ability = ability
  13. self.move1 = move1
  14. self.move2 = move2
  15. self.move3 = move3
  16. self.move4 = move4
  17. self.tier = tier
  18.  
  19. #all gyarados stuff
  20. gyarados_mega = pokemon("gyarados_mega", "Gyarados-Mega", "Gyaradosite", "Adamant", "248 HP / 44 Atk / 40 Def / 32 SpD / 144 Spe", "Intimidate", "Waterfall", "Dragon Dance", "Outrage", "Earthquake", "s")
  21. gyarados_mega_2 = pokemon("gyarados_mega_2", "Gyarados-Mega", "Gyaradosite", "Adamant", "4 HP / 252 Atk / 252 Spe", "Intimidate", "Waterfall", "Dragon Dance", "Outrage", "Earthquake", "s")
  22. gyarados_mega_3 = pokemon("gyarados_mega_3", "Gyarados-Mega", "Gyaradosite", "Jolly", "88 HP / 248 Atk / 172 Spe", "Intimidate", "Ice Fang", "Dragon Dance", "Taunt", "Earthquake", "s")
  23. gyarados_mega_4 = pokemon("gyarados_mega_4", "Gyarados-Mega", "Gyaradosite", "Adamant", "248 HP / 12 Def / 32 SpD / 216 Spe", "Intimidate", "Taunt", "Waterfall", "Dragon Dance", "Outrage", "s")
  24. gyarados_mega_5 = pokemon("gyarados_mega_5", "Gyarados-Mega", "Gyaradosite", "Adamant", "40 HP / 252 Atk / 216 Spe", "Intimidate", "Dragon Dance", "Crunch", "Outrage", "Waterfall", "s")
  25. #all charizardx stuff
  26. charizard_mega_x = pokemon("charizard_mega_x", "Charizard-Mega-X", "Charizardite X", "Jolly", "252 Atk / 4 SpD / 252 Spe", "Tough Claws", "Outrage", "Flare Blitz", "Dragon Dance", "Flame Charge", "s")
  27. charizard_mega_x_2 = pokemon("charizard_mega_x_2", "Charizard-Mega-X", "Charizardite X", "Jolly", "232 HP / 232 SpD / 44 Spe", "Tough Claws", "Flame Charge", "Flare Blitz", "Outrage", "Will-O-Wisp", "s")
  28. charizard_mega_x_3 = pokemon("charizard_mega_x_3", "Charizard-Mega-X", "Charizardite X", "Jolly", "64 HP / 228 Atk / 56 Def / 160 Spe", "Blaze", "Belly Drum", "Flare Blitz", "Outrage", "Flame Charge", "s")
  29. #all charizardy stuff
  30. charizard_mega_y = pokemon("charizard_mega_y", "Charizard-Mega-Y", "Charizardite Y", "Timid", "252 SpA / 4 SpD / 252 Spe", "Drought", "Blast Burn", "Air Slash", "Solar Beam", "Flame Charge", "s")
  31. charizard_mega_y_2 = pokemon("charizard_mega_y_2", "Charizard-Mega-Y", "Charizardite Y", "Timid", "152 Def / 148 SpA / 208 Spe", "Drought", "Blast Burn", "Hidden Power Electric", "Solar Beam", "Flame Charge", "s")
  32. #all dnite stuff
  33. dragonite_1 = pokemon("dragonite_1", "Dragonite", "Flyinium Z", "Adamant", "252 HP / 252 Atk / 4 SpD", "Multiscale", "Fly", "Earthquake", "Extreme Speed", "Dragon Dance", "s")
  34. dragonite_2 = pokemon("dragonite_2", "Dragonite", "Flyinium Z", "Quiet", "240 HP / 252 SpA / 16 SpD", "Multiscale", "Hurricane", "Draco Meteor", "Fire Blast", "Extreme Speed", "s")
  35. dragonite_3 = pokemon("dragonite_3", "Dragonite", "Dragonium Z", "Adamant", "192 HP / 120 Atk / 28 Def / 168 Spe", "Multiscale", "Outrage", "Dragon Dance", "Substitute", "Bulldoze", "s")
  36. dragonite_4 = pokemon("dragonite_4", "Dragonite", "Dragonium Z", "Quiet", "240 HP / 252 SpA / 16 SpD", "Multiscale", "Draco Meteor", "Extreme Speed", "Earthquake", "Flamethrower", "s")
  37. #all magearna stuff
  38. magearna_1 = pokemon("magearna_1", "Magearna", "Fairium Z", "Bold", "248 HP / 20 SpA / 24 SpD / 216 Spe", "Soul Heart", "Fleur Cannon", "Calm Mind", "Iron Defense", "Pain Split", "s")
  39. magearna_2 = pokemon("magearna_2", "Magearna", "Choice Specs", "Modest", "248 HP / 28 Def / 200 SpA / 32 SpD", "Soul Heart", "Fleur Cannon", "Flash Cannon", "Thunderbolt", "Hidden Power Fire", "s")
  40. #all megagross stuff
  41. metagross_mega_1 = pokemon("metagross_mega_1", "Metagross-Mega", "Metagrossite", "Impish", "252 HP / 152 Atk / 32 Def / 72 Spe", "Clear Body", "Thunder Punch", "Meteor Mash", "Earthquake", "Bullet Punch", "a")
  42. metagross_mega_2 = pokemon("metagross_mega_2", "Metagross-Mega", "Metagrossite", "Adamant", "252 HP / 84 Atk / 172 SpD", "Clear Body", "Meteor Mash", "Earthquake", "Zen Headbutt", "Bullet Punch", "a")
  43. #all pz stuff
  44. porygonz_1 = pokemon("porygonz_1", "Porygon-Z", "Normalium Z", "Timid", "4 Def / 252 SpA / 252 Spe", "Adaptability", "Shadow Ball", "Hyper Beam", "Conversion", "Recover", "a+")
  45. porygonz_2 = pokemon("porygonz_2", "Porygon-Z", "Choice Scarf", "Modest", "32 HP / 4 Def / 252 SpA / 220 Spe", "Adaptability", "Uproar", "Hyper Beam", "Ice Beam", "Shadow Ball", "a+")
  46. porygonz_3 = pokemon("porygonz_3", "Porygon-Z", "Normalium Z", "Timid", "36 HP / 184 Def / 72 SpA / 216 Spe", "Adaptability", "Shadow Ball", "Conversion", "Hyper Beam", "Recover", "a+")
  47. #all tapu lele stuff1
  48. tapu_lele_1 = pokemon("tapu_lele_1", "Tapu Lele", "Psychium Z", "Modest", "248 HP / 88 Def / 28 SpD / 144 Spe", "Psychic Surge", "Moonblast", "Psyshock", "Reflect", "Calm Mind", "a+")
  49. #all mega slowbro stuff
  50. slowbro_mega_1 = pokemon("slowbro_mega_1", "Slowbro-Mega", "Slowbronite", "Calm", "252 HP / 4 Def / 252 SpD", "Oblivious", "Scald", "Calm Mind", "Iron Defense", "Slack Off", "a")
  51. slowbro_mega_2 = pokemon("slowbro_mega_2", "Slowbro-Mega", "Slowbronite", "Calm", "252 HP/ 4 Def / 252 SpD", "Oblivious", "Scald", "Amnesia", "Iron Defense", "Slack Off", "a")
  52. #all zygod stuff
  53. zygarde_complete_1 = pokemon("zygarde_complete_1", "Zygarde-Complete", "Groundium Z", "Impish", "248 HP / 128 Atk / 132 Def", "Power Construct", "Thousand Arrows", "Coil", "Rest", "Extreme Speed", "a")
  54. #all greninja stuff
  55. greninja_1 = pokemon("greninja_1", "Greninja", "Choice Specs", "Timid", "4 Def / 252 SpA / 252 Spe", "Protean", "Hydro Cannon", "Dark Pulse", "Grass Knot", "Ice Beam", "a")
  56. greninja_2 = pokemon("greninja_2", "Greninja", "Petaya Berry", "Timid", "12 HP / 156 Def / 166 SpA / 176 Spe", "Torrent", "Substitute", "Hydro Cannon", "Work Up", "Taunt", "a")
  57. greninja_3 = pokemon("greninja_3", "Greninja", "Waterium Z", "Timid", "4 Def / 252 SpA / 252 Spe", "Protean", "Hydro Cannon", "Dark Pulse", "Blizzard", "Hidden Power Steel", "a")
  58. greninja_4 = pokemon("greninja_4", "Greninja", "Choice Specs", "Timid", "4 Def / 252 SpA / 252 Spe", "Protean", "Hydro Cannon", "Dark Pulse", "Hidden Power Fire", "Ice Beam", "a")
  59. #all jumpluff stuff
  60. jumpluff_1 = pokemon("jumpluff_1", "Jumpluff", "Grassium Z", "Timid", "252 Def / 4 SpD / 252 Spe", "Infiltrator", "Sleep Powder", "Substitute", "Infestation", "Leech Seed", "a-")
  61. #all lando t stuff
  62. landorus_therian_1 = pokemon("landorus_therian_1", "Landorus-Therian", "Groundium Z", "Adamant", "248 HP / 80 Def / 112 SpD / 68 Spe", "Intimidate", "Earthquake", "Rock Tomb", "Bulk Up", "Smack Down", "a-")
  63. landorus_therian_2 = pokemon("landorus_therian_2", "Landorus-Therian", "Choice Scarf", "Jolly", "252 Atk / 8 Def / 248 Spe", "Intimidate", "Earthquake", "Superpower", "Rock Slide", "Fly", "a-")
  64. #all mega lop stuff
  65. lopunny_mega_1 = pokemon("lopunny_mega_1", "Lopunny-Mega", "Lopunnite", "Jolly", "252 Atk / 4 SpD / 252 Spe", "Scrappy", "Fake Out", "Giga Impact", "High Jump Kick", "Ice Punch", "b+")
  66. #all mew stuff
  67. mew_1 = pokemon("mew_1", "Mew", "Mewnium Z", "Calm", "240 HP / 252 SpA / 16 SpD", "Synchronize", "Fake Out", "Nasty Plot", "Psychic", "Overheat", "a")
  68. mew_2 = pokemon("mew_2", "Mew", "Kee Berry", "Timid", "184 HP / 72 SpD / 252 Spe", "Synchronize", "Taunt", "Amnesia", "Will-O-Wisp", "Soft-Boiled", "a")
  69. #all meloetta stuff
  70. meloetta_1 = pokemon("meloetta_1", "Meloetta", "Normalium Z", "Modest", "204 HP / 252 Def / 52 SpD", "Serene Grace", "Hyper Beam", "Calm Mind", "Psyshock", "Laser Focus", "a")
  71. meloetta_2 = pokemon("meloetta_2", "Meloetta", "Normalium Z", "Modest", "248 HP / 208 Def / 20 SpA / 16 SpD / 16 Spe", "Serene Grace", "Celebrate", "Hyper Beam", "Uproar", "Laser Focus", "a")
  72. #all magnezone stuff
  73. magnezone_1 = pokemon("magnezone_1", "Magnezone", "Electrium Z", "Timid", "4 HP / 252 SpA / 252 Spe", "Sturdy", "Electroweb", "Zap Cannon", "Metal Sound", "Flash Cannon", "a")
  74. magnezone_2 = pokemon("magnezone_2", "Magnezone", "Electrium Z", "Modest", "80 HP / 252 SpA / 176 Spe", "Sturdy", "Metal Sound", "Zap Cannon", "Electroweb", "Protect", "a")
  75. #all togekiss sets
  76. togekiss_1 = pokemon("togekiss_1", "Togekiss", "Electrium Z", "Calm", "156 HP / 148 SpD / 204 Spe", "Serene Grace", "Thunder Wave", "Air Slash", "Roost", "Charm", "a-")
  77. togekiss_2 = pokemon("togekiss_2", "Togekiss", "Fairium Z", "Bold", "248 HP / 176 Def / 24 SpA / 60 SpD", "Serene Grace", "Charm", "roost", "Dazzling Gleam", "Nasty Plot", "a-")
  78. #all aegislash stuff
  79. aegislash_1 = pokemon("aegislash_1", "Aegislash", "Ghostium Z", "Quiet", "252 HP / 4 Def / 252 SpA", "Stance Change", "Shadow Ball", "King's Shield", "Shadow Sneak", "Metal Sound", "a-")
  80. #all altaria mega stuff
  81. altaria_mega_1 = pokemon("altaria_mega_1", "Altaria-Mega", "Altarianite", "Bold", "248 HP / 252 Def / 8 Spe", "Cloud Nine", "Cotton Guard", "Roost", "Hyper Voice", "Fire Blast", "b+")
  82. altaria_mega_2 = pokemon("altaria_mega_2", "Altaria-Mega", "Altarianite", "Calm", "232 HP / 120 Def / 156 SpD", "Cloud Nine", "Cotton Guard", "Hyper Voice", "Roost", "Fire Blast", "b+")
  83. #all donphan stuff
  84. donphan_1 = pokemon("donphan_1", "Donphan", "Groundium Z", "Adamant", "248 HP / 252 Atk / 8 SpD", "Sturdy", "Earthquake", "Head Smash", "Ice Shard", "Counter", "b+")
  85. donphan_2 = pokemon("donphan_2", "Donphan", "Choice Band", "Adamant", "252 Atk / 144 Def / 112 Spe", "Sturdy", "Earthquake", "Ice Shard", "Gunk Shot", "Fire Fang", "b+")
  86. #all mega gardevoir stuff
  87. gardevoir_mega_1 = pokemon("gardevoir_mega_1", "Gardevoir-Mega", "Gardevoirite", "Timid", "224 HP / 96 Def / 12 SpA / 176 Spe", "Trace", "Hyper Beam", "Calm Mind", "Will-O-Wisp", "Psyshock", "a-")
  88. #all genesect stuff
  89. genesect_1 = pokemon("genesect_1", "Genesect", "Choice Specs", "Bold", "236 HP / 240 Def / 32 SpA", "Download", "Bug Buzz", "Flash Cannon", "Ice Beam", "Thunderbolt", "b+")
  90. genesect_2 = pokemon("genesect_2", "Genesect", "Choice Scarf", "Modest", "20 HP / 224 SpA / 36 SpD / 228 Spe", "Download", "Thunderbolt", "Flamethrower", "Ice Beam", "Bug Buzz", "b+")
  91. #all kommo-o stuff
  92. kommoo_1 = pokemon("kommoo_1", "Kommo-o", "Kommonium Z", "Sassy", "240 HP / 28 SpA / 84 SpD / 156 Spe", "Soundproof", "Clanging Scales", "Close Combat", "Flamethrower", "Taunt", "a-")
  93. #all naganadel stuff
  94. naganadel_1 = pokemon("naganadel_1", "Naganadel", "Choice Specs", "Timid", "252 SpA / 4 SpD / 252 Spe", "Beast Boost", "Draco Meteor", "Sludge Wave", "Fire Blast", "Air Slash", "b")
  95. #all primarina stuff
  96. primarina_1 = pokemon("primarina_1", "Primarina", "Primarium Z", "Relaxed", "200 HP / 252 Def / 56 SpA", "Torrent", "Moonblast", "Sparkling Aria", "Aqua Jet", "Encore", "b+")
  97. #all tapu fini stuff
  98. tapu_fini_1 = pokemon("tapu_fini_1", "Tapu Fini", "Tapunium Z", "Bold", "228 HP / 96 Def / 68 SpA / 116 Spe", "Misty Surge", "Nature's Madness", "Taunt", "Brine", "Moonblast", "b+")
  99. tapu_fini_2 = pokemon("tapu_fini_2", "Tapu Fini", "Waterium Z", "Bold", "248 HP / 128 Def / 52 SpA / 24 SpD / 56 Spe ", "Misty Surge", "Hydro Pump", "Rain Dance", "Calm Mind", "Moonblast", "b+")
  100. #all mega ttar stuff
  101. tyranitar_mega_1 = pokemon("tyranitar_mega_1", "Tyranitar-Mega", "Tyranitarite", "Adamant", "248 HP / 104 Atk / 72 Def / 64 SpD / 20 Spe", "Sand Stream", "Earthquake", "Rock Tomb", "Stone Edge", "Taunt", "b+")
  102. #all mega venusaur stuff
  103. venusaur_mega_1 = pokemon("venusaur_mega_1", "Venusaur-Mega", "Venusaurite", "Modest", "216 HP / 92 SpA / 44 SpD / 156 Spe", "Thick Fat", "Sleep Powder", "Sludge Bomb", "Synthesis", "Giga Drain", "b+")
  104. venusaur_mega_2 = pokemon("venusaur_mega_2", "Venusaur-Mega", "Venusaurite", "Bold", "248 HP / 108 Def / 80 SpA / 72 SpD", "Thick Fat", "Leech Seed", "Sludge Bomb", "Charm", "Synthesis", "b+")
  105. #all aggron/mega stuff
  106. aggron_mega_1 = pokemon("aggron_mega_1", "Aggron-Mega", "Aggronite", "Brave", "252 HP / 252 Atk / 4 Def", "Sturdy", "Heavy Slam", "Head Smash", "Metal Burst", "Earthquake", "b")
  107. #all celesteela stuff
  108. celesteela_1 = pokemon("celesteela_1", "Celesteela", "Leftovers", "Relaxed", "248 HP / 252 Def / 8 SpD", "Beast Boost", "Heavy Slam", "Flamethrower", "Protect", "Leech Seed", "b+")
  109. celesteela_2 = pokemon("celesteela_2", "Celesteela", "Steelium Z", "Bold", "216 HP / 248 Def / 44 SpA", "Beast Boost", "Metal Sound", "Flamethrower", "Giga Drain", "Flash Cannon", "b+")
  110. #all chansey stuff
  111. chansey_1 = pokemon("chansey_1", "Chansey", "Eviolite", "Bold", "248 HP / 252 Def / 8 SpD", "Serene Grace", "Charm", "Soft Boiled", "Charge Beam", "Toxic", "c+")
  112. #all ferrothorn stuff
  113. ferrothorn_1 = pokemon("ferrothorn_1", "Ferrothorn", "Leftovers", "Relaxed", "248 HP / 252 Def / 8 SpD", "Iron Barbs", "Leech Seed", "Protect", "Gyro Ball", "Power Whip", "b")
  114. #all garchomp stuff
  115. garchomp_1 = pokemon("garchomp_1", "Garchomp", "Groundium Z", "Jolly", "4 HP / 252 Atk / 252 Spe", "Rough Skin", "Earthquake", "Substitute", "Swords Dance", "Rock Tomb", "b+")
  116. garchomp_2 = pokemon("garchomp_2", "Garchomp", "Choice Scarf", "Jolly", "252 Atk / 4 SpD / 252 Spe", "Rough Skin", "Earthquake", "Outrage", "Stone Edge", "Poison Jab", "b+")
  117. #all heatran stuff
  118. heatran_1 = pokemon("heatran_1", "Heatran", "Air Balloon", "Modest", "96 HP / 248 SpA / 36 SpD / 128 Spe", "Flash Fire", "Overheat", "Flash Cannon", "Rock Tomb", "Earth Power", "b+")
  119. heatran_2 = pokemon("heatran_2", "Heatran", "Grassium Z", "Modest", "72 HP / 252 SpA / 184 Spe", "Flash Fire", "Overheat", "Solar Beam", "Rock Tomb", "Earth Power", "b+")
  120. #all kartana stuff
  121. kartana_1 = pokemon("kartana_1", "Kartana", "Grassium Z", "Jolly", "252 Atk / 4 Def / 252 Spe", "Beast Boost", "Leaf Blade", "Swords Dance", "Sacred Sword", "Smart Strike", "b")
  122. kartana_2 = pokemon("kartana_2", "Kartana", "Choice Band", "Jolly", "4 HP / 252 Atk / 252 Spe", "Beast Boost", "Giga Impact", "Leaf Blade", "Sacred Sword", "Smart Strike", "b")
  123. #all mawile stuff
  124. mawile_mega_1 = pokemon("mawile_mega_1", "Mawile-Mega", "Mawilite", "Adamant", "248 HP / 252 Atk / 8 SpD", "Intimidate", "Play Rough", "Swords Dance", "Sucker Punch", "Iron Head", "b")
  125. #all necrozma stuff
  126. necrozma_1 = pokemon("necrozma_1", "Necrozma", "Choice Specs", "Modest", "252 HP / 16 Def / 228 SpA / 12 SpD", "Prism Armor", "Photon Geyser", "Prismatic Laser", "Heat Wave", "Signal Beam", "b")
  127. necrozma_2 = pokemon("necrozma_2", "Necrozma", "Iapapa Berry", "Calm", "248 HP / 20 Def / 240 SpD", "Prism Armor", "Iron Defense", "Calm Mind", "Moonlight", "Stored Power", "b")
  128. #all pinsir mega stuff
  129. pinser_mega_1 = pokemon("pinser_mega_1", "Pinsir-Mega", "Pinsirite", "Jolly", "56 HP / 212 Atk / 240 Spe", "Hyper Cutter", "Swords Dance", "Giga Impact", "Earthquake", "Substitute", "b")
  130. #all sableye mega stuff
  131. sableye_mega_1 = pokemon("sableye_mega_1", "Sableye-Mega", "Sablenite", "Bold", "248 HP / 48 Def / 212 SpD", "Prankster", "Snarl", "Will-O-Wisp", "Foul Play", "Recover", "b+")
  132. #all victini stuff
  133. victini_1 = pokemon("victini_1", "Victini", "Choice Band", "Adamant", "108 HP / 212 Atk / 88 SpD / 100 Spe", "Victory Star", "V-create", "Zen Headbutt", "Flame Charge", "Bolt Strike", "b")
  134. victini_2 = pokemon("victini_2", "Victini", "Psychium Z", "Bold", "96 HP / 212 Def / 200 SpA", "Victory Star", "Psychic", "Glaciate", "Blue Flare", "Will-O-Wisp", "b")
  135. #all volcarona stuff
  136. volcarona_1 = pokemon("volcarona_1", "Volcarona", "Buginium Z", "Timid", "52 Def / 224 SpA / 232 Spe", "Swarm", "Bug Buzz", "Overheat", "Substitute", "Quiver Dance", "b")
  137. volcarona_2 = pokemon("volcarona_2", "Volcarona", "Buginium Z", "Calm", "240 HP / 32 Def / 216 SpD / 20 Spe", "Swarm", "Quiver Dance", "Roost", "Bug Buzz", "Flamethrower", "b")
  138. #all zeraora stuff
  139. zeraora_1 = pokemon("zeraora_1", "Zeraora", "Electrium Z", "Jolly", "184 Atk / 132 Def / 192 Spe", "Volt Absorb", "Plasma Fists", "Bulk Up", "Charge", "Taunt", "b+")
  140. zeraora_2 = pokemon("zeraora_2", "Zeraora", "Electrium Z", "Jolly", "48 HP / 252 Atk / 120 Def / 88 Spe", "Volt Absorb", "Plasma Fists", "Outrage", "Fake Out", "Charge", "b+")
  141. #all archeops stuff
  142. archeops_1 = pokemon("archeops_1", "Archeops", "Choice Band", "Jolly", "252 Atk / 4 SpD / 252 Spe", "Defeatist", "Head Smash", "Outrage", "Earthquake", "Fly", "b-")
  143. #all blastoise mega stuff
  144. blastoise_mega_1 = pokemon("blastoise_mega_1", "Blastoise-Mega", "Blastoisinite", "Modest", "128 HP / 248 SpA / 20 SpD / 112 Spe", "Mega Launcher", "Fake Out", "Hydro Cannon", "Dark Pulse", "Ice Beam", "b-")
  145. #all blaziken/mega stuff
  146. blaziken_mega_1 = pokemon("blaziken_mega_1", "Blaziken-Mega", "Blazikenite", "Adamant", "4 HP / 252 Atk / 252 Spe", "Speed Boost", "Protect", "Flare Blitz", "High Jump Kick", "Stone Edge", "b-")
  147. #all crustle stuff
  148. crustle_1 = pokemon("crustle_1", "Crustle", "Rockium Z", "Adamant", "160 HP / 144 Atk / 204 Spe", "Sturdy", "Rock Wrecker", "Rock Blast", "Counter", "Shell Smash", "b")
  149. #all deoxys S stuff
  150. deoxys_s_1 = pokemon("deoxys_s_1", "Deoxys-Speed", "Choice Specs", "Modest", "252 SpA / 4 SpD / 252 Spe", "Pressure", "Psycho Boost", "Ice Beam", "Thunderbolt", "Focus Blast", "b-")
  151. deoxys_s_2 = pokemon("deoxys_s_2", "Deoxys-Speed", "Psychium Z", "Timid", "100 HP / 164 SpA / 4 SpD / 240 Spe", "Pressure", "Recover", "Reflect", "Light Screen", "Psycho Boost", "b-")
  152. #all mega diancie stuff
  153. diancie_mega_1 = pokemon("diancie_mega_1", "Diancie-Mega", "Diancite", "Hasty", "4 Atk / 252 SpA / 252 Spe", "Clear body", "Diamond Storm", "Moonblast", "Earth Power", "Magnet Rise", "b-")
  154. #all durant stuff
  155. durant_1 = pokemon("durant_1", "Durant", "Choice Band", "Jolly", "24 HP / 232 Atk / 252 Spe", "Hustle", "Iron Head", "X-Scissor", "Stone Edge", "Superpower", "b-")
  156. #all golem stuff
  157. golem_1 = pokemon("golem_1", "Golem", "Rockium Z", "Adamant", "252 Atk / 4 Def / 252 Spe", "Sturdy", "Stone Edge", "Earthquake", "Counter", "Sucker Punch", "b-")
  158. #all haxorus stuff
  159. haxorus_1 = pokemon("haxorus_1", "Haxorus", "Choice Scarf", "Jolly", "252 Atk / 4 SpD / 252 Spe", "Mold Breaker", "Iron Tail", "Outrage", "Earthquake", "Rock slide", "b-")
  160. haxorus_2 = pokemon("haxorus_2", "Haxorus", "Choice Band", "Jolly", "8 HP / 252 Atk / 8 Def / 240 Spe", "Mold Breaker", "Earthquake", "Iron Tail", "Superpower", "Outrage", "b-")
  161. #all heracross mega stuff
  162. heracross_mega_1 = pokemon("heracross_mega_1", "Heracross-Mega", "Heracronite", "Adamant", "252 HP / 252 Atk / 4 SpD", "Guts", "Pin Missile", "Rock Blast", "Bullet Seed", "Close Combat", "c+")
  163. #all hoopau stuff
  164. hoopau_1 = pokemon("hoopau_1", "Hoopa-Unbound", "Darkinium Z", "Quiet", "252 HP / 236 Def / 20 SpA", "Magician", "Dark Pulse", "Hyperspace Fury", "Hyperspace Hole", "Thunderbolt", "b-")
  165. hoopau_2 = pokemon("hoopau_2", "Hoopa-Unbound", "Choice Band", "Adamant", "88 HP / 148 Atk / 92 Def / 180 Spe", "Magician", "Gunk Shot", "Hyperspace Fury", "Zen Headbutt", "Fire Punch", "b-")
  166. #all incineroar stuff
  167. incineroar_1 = pokemon("incineroar_1", "Incineroar", "Incinium Z", "Adamant", "168 HP / 112 Atk / 228 SpD", "Intimidate", "Darkest Lariat", "Flare Blitz", "Fake Out", "Bulk Up", "b")
  168. #ll krookodile stuff
  169. krookodile_1 = pokemon("krookodile_1", "Krookodile", "Groundium Z", "Adamant", "152 HP / 56 Atk / 244 Def / 56 Spe", "Intimidate", "Earthquake", "Rock Tomb", "Taunt", "Bulk Up", "b-")
  170. #all kyurem stuff
  171. kyurem_1 = pokemon("kyurem_1", "Kyurem", "Groundium Z", "Bold", "224 HP / 136 Def / 148 SpD", "Pressure", "Noble Roar", "Roost", "Ice Beam", "Earth Power", "b-")
  172. #all clefable stuff
  173. clefable_1 = pokemon("clefable_1", "Clefable", "Psychium Z", "Bold", "248 HP / 236 Def / 24 SpD", "Unaware", "Magic Coat", "Moonblast", "Reflect", "Moonlight", "b+")
  174. #Stunfisk xoxo
  175. stunfisk_1 = pokemon("stunfisk_1", "Stunfisk", "Petaya Berry", "Modest", "252 HP / 4 Def / 252 SpA", "Sand Veil", "Yawn", "Endure", "Earth Power", "Thunder", "u")
  176. #all manaphy stuff
  177. manaphy_1 = pokemon("manaphy_1", "Manaphy", "Waterium Z", "Modest", "68 HP / 252 SpA / 4 SpD / 184 Spe", "Hydration", "Surf", "Tail Glow", "Calm Mind", "Rain Dance", "b-")
  178. #all medicham mega stuff
  179. medicham_mega_1 = pokemon("medicham_mega_1", "Medicham-Mega", "Medichamite", "Jolly", "252 Atk / 4 SpD / 252 Spe", "Pure Power", "Fake Out", "High Jump Kick", "Zen Headbutt", "Ice Punch", "b-")
  180. #all sawk sets
  181. sawk_1 = pokemon("sawk_1", "Sawk", "Choice Scarf", "Adamant", "252 Atk / 4 SpD / 252 Spe", "Sturdy", "Close Combat", "Poison Jab", "Ice Punch", "Stone Edge", "b-")
  182. #all blacephalon sets
  183. blacephalon_1 = pokemon("blacephalon_1", "Blacephalon", "Ghostium Z", "Timid","16 HP / 252 SpA / 240 Spe", "Beast Boost", "Shadow Ball", "Calm Mind", "Mind Blown", "Taunt", "c+")
  184. #illumise <3
  185. illumise_1 = pokemon("illumise_1", "Illumise", "Fairium Z", "Bold", "252 HP / 252 Def / 4 SpD", "Prankster", "Charm", "Infestation", "Encore", "Roost", "c-")
  186. #all xurkitree sets
  187. xurkitree_1 = pokemon("xurkitree_1", "Xurkitree", "Electrium Z", "Modest", "232 HP / 148 Def / 128 Spe", "Beast Boost", "Thunder", "Electroweb", "Tail Glow", "Charge", "c+")
  188. #all cresselia sets
  189. cresselia_1 = pokemon("cresselia_1", "Cresselia", "Psychium Z", "Bold", "248 HP / 72 Def / 140 SpA / 48 SpD", "Levitate", "Future Sight", "Ice Beam", "Calm Mind", "Moonlight", "u")
  190. #all cresselia sets
  191. vivillon_1 = pokemon("vivillon_1", "Vivillon", "Leftovers", "Timid", "4 Def / 252 SpA / 252 Spe", "Compound Eyes", "Substitute", "Sleep Powder", "Quiver Dance", "Hurricane", "b-")
  192. #all smeargle sets
  193. smeargle_1 = pokemon("smeargle_1", "Smeargle", "Normalium Z", "Timid", "252 HP / 4 Def / 252 Spe", "Own Tempo", "Substitute", "Spore", "Imprison", "Transform", "c")
  194. #all aron sets
  195. aron_1 = pokemon("aron_1", "Aron", "Shell Bell", "Brave", "4 HP", "Sturdy", "Endeavor", "Toxic", "Sandstorm", "Metal Burst", "d")
  196. #all riolu sets
  197. riolu_1 = pokemon("riolu_1", "Riolu", "Custap Berry", "Brave", "252 HP / 252 Atk / 4 Def", "Prankster", "Endure", "Copycat", "Substitute", "Dig", "d")
  198. #all shedinja sets
  199. shedinja_1 = pokemon("shedinja_1", "Shedinja", "Ghostium Z", "Adamant", "4 HP / 252 Atk / 252 Spe", "Wonder Guard", "Phantom Force", "Will-O-Wisp", "X-Scissor", "Swords Dance", "u")
  200. #all raikou sets
  201. raikou_1 = pokemon("raikou_1", "Raikou", "Electrium Z", "Timid", "4 HP / 252 SpA / 252 Spe", "Inner Focus", "Zap Cannon", "Hidden Power Fire", "Laser Focus", "Calm Mind", "b-")
  202. #all maudino sets
  203. audino_mega_1 = pokemon("audino_mega_1", "Audino-Mega", "Audinite", "Calm", "252 HP / 88 Def / 168 SpD", "Klutz", "Amnesia", "Baby Doll Eyes", "Lucky Chant", "Rest", "b-")
  204. #all latias mega sets
  205. latias_mega_1 = pokemon("latias_mega_1", "Latias-Mega", "Latiasite", "Timid", "80 HP / 80 Def / 156 SpA / 192 Spe", "Levitate", "Charm", "Draco Meteor", "Recover", "Reflect Type", "b-")
  206. #all salazzle sets
  207. salazzle_1 = pokemon("salazzle_1", "Salazzle (F)", "Poisonium Z", "Timid", "252 SpA / 4 SpD / 252 Spe", "Oblivious", "Sludge Wave", "Overheat", "Fake Out", "Taunt", "c-")
  208. #all darmanitan sets
  209. darmanitan_1 = pokemon("darmanitan_1", "Darmanitan", "Choice Scarf", "Jolly", "252 Atk / 4 SpD / 252 Spe", "Sheer Force", "Flare Blitz", "Earthquake", "Rock Slide", "Superpower", "c-")
  210. #all whimsicott sets
  211. whimsicott_1 = pokemon("whimsicott_1", "Whimsicott", "Babiri Berry", "Calm", "88 HP / 228 Def / 192 SpD", "Prankster", "Taunt", "Protect", "Leech Seed", "Substitute", "b-")
  212. #all excadrill sets
  213. excadrill_1 = pokemon("excadrill_1", "Excadrill", "Groundium Z", "Jolly", "252 Atk / 4 SpD / 252 Spe", "Mold Breaker", "Earthquake", "Swords Dance", "Substitute", "Magnet Rise", "c")
  214. #all terrakion sets
  215. terrakion_1 = pokemon("terrakion_1", "Terrakion", "Rockium Z", "Jolly", "252 Atk / 4 SpD / 252 Spe", "Justified", "Stone Edge", "Close Combat", "Taunt", "Swords Dance", "c+")
  216. #all mienshao sets
  217. mienshao_1 = pokemon("mienshao_1", "Mienshao", "Rockium Z", "Jolly", "248 Atk / 16 SpD / 244 Spe", "Reckless", "Fake Out", "High Jump Kick", "Stone Edge", "Taunt", "u")
  218. #all umbreon sets
  219. umbreon_1 = pokemon("umbreon_1", "Umbreon", "Fairium Z", "Calm", "248 HP / 100 Def / 160 SpD", "Synchronize", "Charm", "Moonlight", "Foul Play", "Snarl", "c+")
  220. #all vigoroth sets
  221. vigoroth_1 = pokemon("vigoroth_1", "Vigoroth", "Eviolite", "Impish", "252 HP / 180 Def / 20 SpD / 56 Spe", "Vital Spirit", "Slack Off", "Taunt", "Counter", "Rock Tomb", "u")
  222. #all rampardos sets
  223. rampardos_1 = pokemon("rampardos_1", "Rampardos", "Choice Scarf", "Naive", "12 Atk / 252 SpA / 244 Spe", "Sheer Force", "Head Smash", "Blizzard", "Fire Blast", "Superpower", "d")
  224. rampardos_2 = pokemon("rampardos_2", "Rampardos", "Choice Scarf", "Jolly", "252 Atk / 4 SpD / 252 Spe", "Mold Breaker", "Head Smash", "Superpower", "Earthquake", "Fire Punch", "d")
  225. #all pheromosa sets
  226. pheromosa_1 = pokemon("pheromosa_1", "Pheromosa", "Fightinium Z", "Bold", "200 HP / 252 Def / 4 SpA / 52 Spe", "Beast Boost", "Focus Blast", "Electroweb", "Lunge", "Ice Beam", "c+")
  227. pheromosa_2 = pokemon("pheromosa_2", "Pheromosa", "Choice Band", "Naive", "252 Atk / 4 SpA / 252 Spe", "Beast Boost", "High Jump Kick", "Double Kick", "Giga Impact", "Ice Beam", "c+")
  228. pheromosa_3 = pokemon("pheromosa_3", "Pheromosa", "Choice Specs", "Timid", "252 SpA / 4 SpD / 252 Spe", "Beast Boost", "Hidden Power Rock", "Focus Blast", "Bug Buzz", "Ice Beam", "c+")
  229. #all rotom sets
  230. rotom_wash_1 = pokemon("rotom_wash_1", "Rotom-Wash", "Electrium Z", "Modest", "248 HP / 8 Def / 80 SpA / 124 SpD / 48 Spe", "Levitate", "Thunder", "Hydro Pump", "Will-O-Wisp", "Charge", "u")
  231. #all zapdos sets
  232. zapdos_1 = pokemon("zapdos_1", "Zapdos", "Electrium Z", "Bold", "248 HP / 244 Def / 16 SpA", "Pressure", "Reflect", "Roost", "Thunder", "Metal Sound", "b-")
  233. #all porygon2 sets
  234. porygon2_1 = pokemon("porygon2_1", "Porygon2", "Eviolite", "Calm", "248 HP / 176 Def / 84 SpD", "Analytic", "Recover", "Ice Beam", "Foul Play", "Thunderbolt", "b")
  235. #all pyukumuku sets
  236. pyukumuku_1 = pokemon("pyukumuku_1", "Pyukumuku", "Psychium Z", "Calm", "248 HP / 124 Def / 136 SpD", "Unaware", "Light Screen", "Recover", "Toxic", "Soak", "c")
  237. #all araquanid sets
  238. araquanid_1 = pokemon("araquanid_1", "Araquanid", "Waterium Z", "Adamant", "192 HP / 248 Atk / 68 SpD", "Water Bubble", "Liquidation", "Mirror Coat", "Laser Focus", "Toxic", "d")
  239. #all salamence sets
  240. salamence_1 = pokemon("salamence_1", "Salamence", "Dragonium Z", "Impish", "36 HP / 28 Atk / 236 Def / 208 Spe", "Intimidate", "Iron Defense", "Roost", "Dragon Dance", "Outrage", "c+")
  241. #all swampert sets
  242. swampert_mega_1 = pokemon("swampert_mega_1", "Swampert-Mega", "Swampertite", "Brave", "168 HP / 252 Atk / 36 SpA / 52 SpD", "Torrent", "Yawn", "Protect", "Earthquake", "Ice Beam", "b-")
  243. #all avalugg sets
  244. avalugg_1 = pokemon("avalugg_1", "Avalugg", "Groundium Z", "Lax", "252 HP / 84 Atk / 172 Def", "Sturdy", "Curse", "Earthquake", "Avalanche", "Mirror Coat", "c+")
  245. #all carracosta sets
  246. carracosta_1 = pokemon("carracosta_1", "Carracosta", "Waterium Z", "Naive", "16 Atk / 252 SpA / 240 Spe", "Sturdy", "Stone Edge", "Shell Smash", "Hydro Pump", "Aqua Jet", "b-")
  247. #all gallade sets
  248. gallade_mega_1 = pokemon("gallade_mega_1", "Gallade-Mega", "Galladite", "Jolly", "16 HP / 192 Atk / 108 Def / 192 Spe", "Justified", "Bulk Up", "Close Combat", "Rock Tomb", "Will-O-Wisp", "c+")
  249. #all scizor sets
  250. scizor_mega_1 = pokemon("scizor_mega_1", "Scizor-Mega", "Scizorite", "Impish", "248 HP / 136 Def / 124 SpD", "Technician", "Curse", "Roost", "Laser Focus", "Iron Head", "c+")
  251. #all weavile sets
  252. weavile_1 = pokemon("weavile_1", "Weavile", "Darkinium Z", "Adamant", "16 HP / 196 Atk / 60 Def / 236 Spe", "Pressure", "Foul Play", "Fake Out", "Icicle Crash", "Taunt", "u")
  253. weavile_2 = pokemon("weavile_2", "Weavile", "Life Orb", "Jolly", "252 Atk / 24 Def / 232 Spe", "Pressure", "Fake Out", "Icicle Crash", "Low Kick", "Throat Chop", "u")
  254. #all infernape sets
  255. infernape_1 = pokemon("infernape_1", "Infernape", "Petaya Berry", "Hasty", "4 Atk / 252 SpA / 252 Spe", "Blaze", "Fake Out", "Substitute", "Blast Burn", "Focus Blast", "c")
  256. #all type null sets
  257. type_null_1 = pokemon("type_null_1", "Type: Null", "Eviolite", "Impish", "248 HP / 196 Def / 64 SpD", "Battle Armor", "Iron Defense", "Confide", "Rest", "Flame Charge", "c+")
  258.  
  259. #list of pokemon
  260. pokemon_list = [gyarados_mega, gyarados_mega_2, gyarados_mega_3, gyarados_mega_4, gyarados_mega_5, kyurem_1, naganadel_1, metagross_mega_1, metagross_mega_2, magearna_1, magearna_2, dragonite_1, dragonite_2, dragonite_3, dragonite_4, charizard_mega_y, charizard_mega_y_2, charizard_mega_x, charizard_mega_x_2, charizard_mega_x_3, manaphy_1, kommoo_1, genesect_1, genesect_2, landorus_therian_1, landorus_therian_2, jumpluff_1, greninja_1, greninja_2, greninja_3, greninja_4, medicham_mega_1, zygarde_complete_1, slowbro_mega_1, slowbro_mega_2, tapu_lele_1, porygonz_1, porygonz_2, porygonz_3, gardevoir_mega_1, donphan_1, donphan_2, audino_mega_1, altaria_mega_1, altaria_mega_2, aegislash_1, magnezone_1, magearna_2, meloetta_1, meloetta_2, aron_1, mew_1, mew_2, lopunny_mega_1, heatran_1, heatran_2, garchomp_1, garchomp_2, ferrothorn_1, chansey_1, celesteela_1, celesteela_2, aggron_mega_1, venusaur_mega_1, venusaur_mega_2, smeargle_1, tyranitar_mega_1, latias_mega_1, tapu_fini_1, tapu_fini_2, primarina_1, blastoise_mega_1, archeops_1, zeraora_1, zeraora_2, volcarona_1, volcarona_2, riolu_1, victini_1, victini_2, sableye_mega_1, pinser_mega_1, necrozma_1, necrozma_2, blacephalon_1, mawile_mega_1, raikou_1, kartana_1, kartana_2, krookodile_1, incineroar_1, hoopau_1, hoopau_2, heracross_mega_1, haxorus_1, haxorus_2, golem_1, durant_1, diancie_mega_1, deoxys_s_1, deoxys_s_2, sawk_1, crustle_1, xurkitree_1, cresselia_1, blaziken_mega_1, clefable_1, stunfisk_1, illumise_1, vivillon_1, shedinja_1, salazzle_1, darmanitan_1, whimsicott_1, excadrill_1, terrakion_1, mienshao_1, umbreon_1, vigoroth_1, rampardos_1, rampardos_2, pheromosa_1, pheromosa_2, pheromosa_3, rotom_wash_1, zapdos_1, porygon2_1, pyukumuku_1, araquanid_1, salamence_1, swampert_mega_1, avalugg_1, carracosta_1, gallade_mega_1, scizor_mega_1, togekiss_1, togekiss_2, weavile_1, weavile_2, infernape_1, type_null_1]
  261. #list of teams for finding teams
  262. team_list = []
  263. #list of chosen mons
  264. got_mons = []
  265. got_mons_2 = []
  266. got_mons_3 = []
  267. #pass list
  268. pass_list = []
  269.  
  270. #matchup lists
  271. #for all Gyarados-Mega sets
  272. gyarados_mega.lmatchups = [togekiss_2, togekiss_1, celesteela_2, scizor_mega_1, gyarados_mega_5, venusaur_mega_2, gallade_mega_1, avalugg_1, salamence_1, pyukumuku_1, porygon2_1, zapdos_1, rotom_wash_1, pheromosa_1, vigoroth_1, umbreon_1, magearna_2, latias_mega_1, audino_mega_1, slowbro_mega_2, raikou_1, mew_2, altaria_mega_2, smeargle_1, kartana_2, xurkitree_1, tapu_fini_2, heracross_mega_1, deoxys_s_1, zeraora_1, sableye_mega_1, pinser_mega_1, kartana_1, ferrothorn_1, chansey_1, celesteela_1, venusaur_mega_1, tapu_fini_1, primarina_1, kommoo_1, genesect_1, gardevoir_mega_1, charizard_mega_y, charizard_mega_y_2, magearna_1, jumpluff_1, slowbro_mega_1, metagross_mega_1, greninja_1, tapu_lele_1, magnezone_1, altaria_mega_1, clefable_1, porygonz_2, stunfisk_1, vivillon_1, zygarde_complete_1, porygonz_3, zeraora_2, type_null_1, meloetta_2]
  273. gyarados_mega_2.lmatchups = [togekiss_2, togekiss_1, celesteela_2, scizor_mega_1, venusaur_mega_2, gallade_mega_1, avalugg_1, salamence_1, pyukumuku_1, porygon2_1, zapdos_1, rotom_wash_1, pheromosa_1, vigoroth_1, umbreon_1, latias_mega_1, audino_mega_1, slowbro_mega_2, raikou_1, mew_2, altaria_mega_2, genesect_2, smeargle_1, kartana_2, xurkitree_1, tapu_fini_2, heracross_mega_1, zeraora_1, sableye_mega_1, pinser_mega_1, kartana_1, ferrothorn_1, chansey_1, celesteela_1, venusaur_mega_1, tapu_fini_1, primarina_1, kommoo_1, genesect_1, gardevoir_mega_1, charizard_mega_y_2, magearna_1, jumpluff_1, slowbro_mega_1, metagross_mega_1, greninja_1, tapu_lele_1, altaria_mega_1, clefable_1, porygonz_2, stunfisk_1, vivillon_1, zygarde_complete_1, porygonz_3, zeraora_2, type_null_1, meloetta_2]
  274. gyarados_mega_3.lmatchups = [togekiss_2, togekiss_1, celesteela_2, gyarados_mega_5, venusaur_mega_2, gallade_mega_1, salamence_1, araquanid_1, porygon2_1, zapdos_1, rotom_wash_1, pheromosa_1, vigoroth_1, umbreon_1, slowbro_mega_2, raikou_1, mew_2, altaria_mega_2, genesect_2, smeargle_1, kartana_2, xurkitree_1, tapu_fini_2, hoopau_1, heracross_mega_1, deoxys_s_1, crustle_1, zeraora_1, sableye_mega_1, pinser_mega_1, kartana_1, ferrothorn_1, venusaur_mega_1, tapu_fini_1, primarina_1, kommoo_1, genesect_1, gardevoir_mega_1, charizard_mega_y, charizard_mega_y_2, gyarados_mega, gyarados_mega_2, magearna_1, slowbro_mega_1, metagross_mega_1, porygonz_1, tapu_lele_1, meloetta_1, altaria_mega_1, clefable_1, porygonz_2, gyarados_mega_4, porygonz_3, zeraora_2, meloetta_2]
  275. gyarados_mega_4.lmatchups = [togekiss_2, togekiss_1, celesteela_2, venusaur_mega_2, gallade_mega_1, salamence_1, porygon2_1, zapdos_1, rotom_wash_1, pheromosa_1, vigoroth_1, umbreon_1, magearna_2, raikou_1, mew_2, altaria_mega_2, metagross_mega_1, magearna_1, charizard_mega_y_2, kommoo_1, genesect_1, slowbro_mega_1, slowbro_mega_2, tapu_lele_1, gardevoir_mega_1, altaria_mega_1, magnezone_1, ferrothorn_1, venusaur_mega_1, tapu_fini_1, tapu_fini_2, primarina_1, zeraora_1, pinser_mega_1, mawile_mega_1, kartana_1, kartana_2, heracross_mega_1, clefable_1, xurkitree_1, smeargle_1, porygonz_3, zeraora_2, magnezone_2]
  276. gyarados_mega_5.lmatchups = [togekiss_2, togekiss_1, celesteela_2, scizor_mega_1, gyarados_mega_4, metagross_mega_1, magearna_1, charizard_mega_y_2, kommoo_1, genesect_1, jumpluff_1, zygarde_complete_1, tapu_lele_1, gardevoir_mega_1, altaria_mega_2, altaria_mega_1, magnezone_1, ferrothorn_1, chansey_1, celesteela_1, venusaur_mega_1, smeargle_1, latias_mega_1, tapu_fini_1, tapu_fini_2, primarina_1, zeraora_1, sableye_mega_1, pinser_mega_1, mawile_mega_1, raikou_1, kartana_1, kartana_2, xurkitree_1, clefable_1, stunfisk_1, vivillon_1, magearna_2, umbreon_1, vigoroth_1, pheromosa_1, rotom_wash_1, zapdos_1, porygon2_1, salamence_1, avalugg_1, gallade_mega_1, venusaur_mega_2, porygonz_3, zeraora_2, type_null_1, magnezone_2]
  277. #for all Kyurem sets
  278. kyurem_1.lmatchups = [celesteela_2, gyarados_mega_5, dragonite_3, carracosta_1, deoxys_s_2, salamence_1, hoopau_2, haxorus_2, araquanid_1, pyukumuku_1, pheromosa_3, pheromosa_2, rampardos_2, rampardos_1, mienshao_1, terrakion_1, gyarados_mega_4, audino_mega_1, mew_2, shedinja_1, genesect_2, smeargle_1, kartana_2, tapu_fini_2, illumise_1, sawk_1, medicham_mega_1, manaphy_1, heracross_mega_1, durant_1, blaziken_mega_1, crustle_1, jumpluff_1, archeops_1, celesteela_1, mawile_mega_1, sableye_mega_1, pinser_mega_1, chansey_1, tyranitar_mega_1, metagross_mega_1, metagross_mega_2, gyarados_mega, kommoo_1, naganadel_1, gyarados_mega_2, lopunny_mega_1, mew_1, meloetta_1, magnezone_1, gardevoir_mega_1, genesect_1, aegislash_1, slowbro_mega_1, magnezone_1, gyarados_mega_3, porygonz_1, tapu_lele_1, charizard_mega_x, charizard_mega_x_2, charizard_mega_y, charizard_mega_y_2, vivillon_1, charizard_mega_x_3, type_null_1]
  279. #for all Naganadel sets
  280. naganadel_1.lmatchups = [landorus_therian_2, gyarados_mega_5, greninja_4, dragonite_4, dragonite_3, avalugg_1, swampert_mega_1, deoxys_s_2, donphan_2, volcarona_2, hoopau_2, araquanid_1, pyukumuku_1, porygon2_1, pheromosa_3, pheromosa_2, umbreon_1, garchomp_2, magearna_2, darmanitan_1, gyarados_mega_4, audino_mega_1, slowbro_mega_2, riolu_1, aron_1, cresselia_1, heatran_2, victini_2, greninja_3, dragonite_2, sawk_1, incineroar_1, hoopau_1, haxorus_1, golem_1, diancie_mega_1, deoxys_s_1, crustle_1, blastoise_mega_1, zeraora_1, victini_1, sableye_mega_1, necrozma_1, heatran_1, chansey_1, aggron_mega_1, tyranitar_mega_1, donphan_1, aegislash_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, charizard_mega_x_2, dragonite_1, magearna_1, metagross_mega_2, slowbro_mega_1, greninja_1, lopunny_mega_1, mew_1, meloetta_1, porygonz_2, stunfisk_1, weavile_2, zeraora_2, necrozma_2, type_null_1, meloetta_2]
  281. #for all Metagross-Mega sets
  282. metagross_mega_1.lmatchups = [celesteela_2, scizor_mega_1, landorus_therian_2, gallade_mega_1, swampert_mega_1, volcarona_2, salamence_1, hoopau_2, pyukumuku_1, zapdos_1, pheromosa_1, vigoroth_1, umbreon_1, garchomp_2, excadrill_1, darmanitan_1, salazzle_1, slowbro_mega_2, mew_2, shedinja_1, altaria_mega_2, genesect_2, aron_1, blacephalon_1, xurkitree_1, greninja_2, dragonite_2, medicham_mega_1, manaphy_1, krookodile_1, incineroar_1, hoopau_1, blaziken_mega_1, victini_1, sableye_mega_1, heatran_1, garchomp_1, ferrothorn_1, chansey_1, celesteela_1, aggron_mega_1, kommoo_1, genesect_1, aegislash_1, charizard_mega_x, charizard_mega_x_2, charizard_mega_y, charizard_mega_y_2, magearna_1, slowbro_mega_1, zygarde_complete_1, jumpluff_1, porygonz_1, landorus_therian_1, donphan_1, volcarona_1, stunfisk_1, vivillon_1, weavile_1, porygonz_3, charizard_mega_x_3, infernape_1, zeraora_2, necrozma_2, type_null_1]
  283. metagross_mega_2.lmatchups = [celesteela_2, scizor_mega_1, landorus_therian_2, gyarados_mega_5, gallade_mega_1, avalugg_1, swampert_mega_1, donphan_2, volcarona_2, salamence_1, hoopau_2, pyukumuku_1, zapdos_1, vigoroth_1, umbreon_1, garchomp_2, excadrill_1, darmanitan_1, gyarados_mega_4, slowbro_mega_2, mew_2, shedinja_1, altaria_mega_2, genesect_2, aron_1, blacephalon_1, xurkitree_1, victini_2, greninja_3, greninja_2, manaphy_1, krookodile_1, incineroar_1, hoopau_1, blaziken_mega_1, blastoise_mega_1, victini_1, sableye_mega_1, metagross_mega_1, heatran_1, garchomp_1, ferrothorn_1, chansey_1, celesteela_1, aggron_mega_1, primarina_1, genesect_1, aegislash_1, charizard_mega_x, charizard_mega_x_2, charizard_mega_y, charizard_mega_y_2, magearna_1, slowbro_mega_1, zygarde_complete_1, jumpluff_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, metagross_mega_1, porygonz_1, landorus_therian_1, donphan_1, volcarona_1, stunfisk_1, vivillon_1, weavile_1, porygonz_3, charizard_mega_x_3, infernape_1, necrozma_2, type_null_1]
  284. #for all Magearna sets
  285. magearna_1.lmatchups = [celesteela_2, scizor_mega_1, greninja_4, carracosta_1, volcarona_2, pyukumuku_1, zapdos_1, excadrill_1, whimsicott_1, darmanitan_1, salazzle_1, audino_mega_1, raikou_1, mew_2, shedinja_1, riolu_1, genesect_2, smeargle_1, blacephalon_1, xurkitree_1, heatran_2, victini_2, greninja_2, manaphy_1, kyurem_1, krookodile_1, blaziken_mega_1, victini_1, heatran_1, garchomp_1, aegislash_1, charizard_mega_x, charizard_mega_x_2, charizard_mega_y, charizard_mega_y_2, jumpluff_1, zygarde_complete_1, landorus_therian_1, magnezone_1, volcarona_1, vivillon_1, charizard_mega_x_3, infernape_1, necrozma_2, type_null_1, magnezone_2]
  286. magearna_2.lmatchups = [greninja_4, audino_mega_1, venusaur_mega_2, carracosta_1, avalugg_1, swampert_mega_1, deoxys_s_2, donphan_2, volcarona_2, araquanid_1, porygon2_1, rotom_wash_1, greninja_2, metagross_mega_1, metagross_mega_2, magearna_1, dragonite_1, dragonite_2, charizard_mega_x, charizard_mega_x_2, charizard_mega_y, charizard_mega_y_2, landorus_therian_1, jumpluff_1, zygarde_complete_1, donphan_1, magnezone_1, meloetta_1, mew_1, mew_2, heatran_1, heatran_2, chansey_1, aggron_mega_1, smeargle_1, tapu_fini_1, zeraora_1, volcarona_1, riolu_1, victini_1, victini_2, blacephalon_1, raikou_1, krookodile_1, incineroar_1, hoopau_1, golem_1, sawk_1, xurkitree_1, cresselia_1, blaziken_mega_1, stunfisk_1, vivillon_1, salazzle_1, darmanitan_1, whimsicott_1, excadrill_1, charizard_mega_x_3, infernape_1, zeraora_2, necrozma_2, type_null_1, magnezone_2]
  287. #for all Dragonite sets
  288. dragonite_1.lmatchups = [togekiss_1, togekiss_2, celesteela_2, scizor_mega_1, gyarados_mega_5, dragonite_3, avalugg_1, swampert_mega_1, salamence_1, haxorus_2, pyukumuku_1, porygon2_1, zapdos_1, rampardos_2, vigoroth_1, umbreon_1, mienshao_1, gyarados_mega_4, latias_mega_1, audino_mega_1, slowbro_mega_2, mew_2, altaria_mega_2, aron_1, smeargle_1, cresselia_1, victini_2, greninja_3, dragonite_2, illumise_1, medicham_mega_1, kyurem_1, incineroar_1, haxorus_1, blastoise_mega_1, archeops_1, sableye_mega_1, mawile_mega_1, ferrothorn_1, chansey_1, celesteela_1, aggron_mega_1, tyranitar_mega_1, genesect_1, gardevoir_mega_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, charizard_mega_x_2, magearna_1, jumpluff_1, lopunny_mega_1, slowbro_mega_1, zygarde_complete_1, landorus_therian_1, metagross_mega_1, tapu_lele_1, altaria_mega_1, donphan_1, clefable_1, weavile_1, weavile_2, necrozma_2, type_null_1]
  289. dragonite_2.lmatchups = [togekiss_2, togekiss_1, gyarados_mega_5, dragonite_4, dragonite_3, avalugg_1, swampert_mega_1, deoxys_s_2, haxorus_2, pyukumuku_1, porygon2_1, zapdos_1, rampardos_2, umbreon_1, mienshao_1, gyarados_mega_4, audino_mega_1, slowbro_mega_2, mew_2, altaria_mega_2, aron_1, smeargle_1, cresselia_1, tapu_fini_2, greninja_3, gyarados_mega, gyarados_mega_2, gyarados_mega_3, kyurem_1, magearna_1, jumpluff_1, greninja_1, medicham_mega_1, slowbro_mega_1, tapu_lele_1, porygonz_1, gardevoir_mega_1, altaria_mega_1, magnezone_1, meloetta_1, mew_1, lopunny_mega_1, heatran_1, chansey_1, celesteela_1, tyranitar_mega_1, tapu_fini_1, primarina_1, blastoise_mega_1, archeops_1, sableye_mega_1, haxorus_1, golem_1, diancie_mega_1, clefable_1, vivillon_1, weavile_1, weavile_2, porygonz_3, zeraora_2, necrozma_2, type_null_1, meloetta_2]
  290. dragonite_3.lmatchups = [togekiss_2, togekiss_1, celesteela_2, scizor_mega_1, gyarados_mega_5, greninja_4, venusaur_mega_2, mienshao_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, gyarados_mega_4, metagross_mega_1, metagross_mega_2, magearna_1, charizard_mega_x_2, genesect_1, genesect_2, landorus_therian_1, jumpluff_1, medicham_mega_1, slowbro_mega_1, slowbro_mega_2, tapu_lele_1, gardevoir_mega_1, donphan_1, altaria_mega_1, altaria_mega_2, lopunny_mega_1, ferrothorn_1, aggron_mega_1, smeargle_1, tyranitar_mega_1, tapu_fini_1, tapu_fini_2, primarina_1, blastoise_mega_1, archeops_1, sableye_mega_1, mawile_mega_1, kartana_1, kartana_2, haxorus_1, golem_1, diancie_mega_1, sawk_1, crustle_1, cresselia_1, clefable_1, vivillon_1, shedinja_1, whimsicott_1, magearna_2, umbreon_1, vigoroth_1, rampardos_2, porygon2_1, haxorus_2, donphan_2, avalugg_1, weavile_1, weavile_2, necrozma_2, type_null_1]
  291. dragonite_4.lmatchups = [togekiss_2, togekiss_1, gyarados_mega_5, charizard_mega_x_2, gyarados_mega, gyarados_mega_3, gyarados_mega_2, gyarados_mega_4, kyurem_1, metagross_mega_2, metagross_mega_1, magearna_1, jumpluff_1, medicham_mega_1, slowbro_mega_1, slowbro_mega_2, tapu_lele_1, gardevoir_mega_1, audino_mega_1, altaria_mega_1, altaria_mega_2, aegislash_1, meloetta_1, aron_1, mew_1, mew_2, lopunny_mega_1, chansey_1, celesteela_1, smeargle_1, tyranitar_mega_1, tapu_fini_1, tapu_fini_2, primarina_1, blastoise_mega_1, archeops_1, sableye_mega_1, mawile_mega_1, haxorus_1, diancie_mega_1, cresselia_1, clefable_1, vivillon_1, whimsicott_1, magearna_2, mienshao_1, umbreon_1, rampardos_2, porygon2_1, haxorus_2, volcarona_2, pyukumuku_1, deoxys_s_2, swampert_mega_1, avalugg_1, dragonite_3, weavile_1, weavile_2, porygonz_3, necrozma_2, type_null_1, meloetta_2]
  292. #for all Charizard-Mega-Y sets
  293. charizard_mega_y.lmatchups = [togekiss_1, landorus_therian_2, gyarados_mega_5, dragonite_4, dragonite_3, gallade_mega_1, carracosta_1, volcarona_2, salamence_1, haxorus_2, araquanid_1, pyukumuku_1, porygon2_1, rotom_wash_1, pheromosa_3, pheromosa_2, rampardos_2, rampardos_1, garchomp_2, mienshao_1, terrakion_1, darmanitan_1, gyarados_mega_4, latias_mega_1, audino_mega_1, raikou_1, altaria_mega_2, aron_1, cresselia_1, kartana_2, blacephalon_1, heatran_2, victini_2, tapu_fini_2, greninja_2, dragonite_2, sawk_1, incineroar_1, haxorus_1, golem_1, durant_1, diancie_mega_1, crustle_1, blaziken_mega_1, archeops_1, zeraora_1, victini_1, pinser_mega_1, heatran_1, garchomp_1, chansey_1, aggron_mega_1, tyranitar_mega_1, primarina_1, kommoo_1, charizard_mega_x, charizard_mega_x_2, dragonite_1, gyarados_mega_2, lopunny_mega_1, zygarde_complete_1, magnezone_1, donphan_1, clefable_1, porygonz_2, stunfisk_1, weavile_1, charizard_mega_x_3, zeraora_2, necrozma_2, meloetta_2, magnezone_2]
  294. charizard_mega_y_2.lmatchups = [togekiss_1, landorus_therian_2, dragonite_4, dragonite_3, gallade_mega_1, carracosta_1, volcarona_2, salamence_1, haxorus_2, araquanid_1, pyukumuku_1, porygon2_1, rotom_wash_1, pheromosa_3, rampardos_2, rampardos_1, umbreon_1, garchomp_2, mienshao_1, terrakion_1, darmanitan_1, latias_mega_1, audino_mega_1, raikou_1, altaria_mega_2, porygonz_2, aron_1, cresselia_1, kartana_2, blacephalon_1, heatran_2, tapu_fini_2, greninja_2, dragonite_2, sawk_1, medicham_mega_1, incineroar_1, haxorus_1, golem_1, durant_1, diancie_mega_1, crustle_1, blaziken_mega_1, archeops_1, zeraora_1, victini_1, pinser_mega_1, heatran_1, garchomp_1, chansey_1, aggron_mega_1, tyranitar_mega_1, primarina_1, kommoo_1, charizard_mega_x, charizard_mega_x_2, dragonite_1, lopunny_mega_1, zygarde_complete_1, magnezone_1, donphan_1, clefable_1, stunfisk_1, weavile_1, charizard_mega_x_3, zeraora_2, necrozma_2, meloetta_2, magnezone_2]
  295. #for all Charizard-Mega-X sets
  296. charizard_mega_x.lmatchups = [togekiss_2, togekiss_1, landorus_therian_2, gyarados_mega_5, greninja_4, venusaur_mega_2, dragonite_4, dragonite_3, gallade_mega_1, carracosta_1, deoxys_s_2, salamence_1, araquanid_1, porygon2_1, rampardos_2, rampardos_1, vigoroth_1, umbreon_1, garchomp_2, mienshao_1, terrakion_1, gyarados_mega_4, salazzle_1, latias_mega_1, altaria_mega_2, aron_1, cresselia_1, blacephalon_1, heatran_2, victini_2, tapu_fini_2, greninja_3, greninja_2, dragonite_2, illumise_1, manaphy_1, krookodile_1, incineroar_1, hoopau_1, golem_1, durant_1, diancie_mega_1, deoxys_s_1, crustle_1, blastoise_mega_1, archeops_1, pinser_mega_1, heatran_1, chansey_1, aggron_mega_1, tyranitar_mega_1, tapu_fini_1, primarina_1, naganadel_1, gyarados_mega, gyarados_mega_2, dragonite_1, lopunny_mega_1, slowbro_mega_1, slowbro_mega_2, zygarde_complete_1, landorus_therian_1, greninja_1, tapu_lele_1, mew_1, meloetta_1, altaria_mega_1, donphan_1, clefable_1, porygonz_2, stunfisk_1, garchomp_1, weavile_1, porygonz_3, meloetta_2]
  297. charizard_mega_x_2.lmatchups = [togekiss_2, togekiss_1, landorus_therian_2, gyarados_mega_5, venusaur_mega_2, gallade_mega_1, carracosta_1, deoxys_s_2, salamence_1, haxorus_2, araquanid_1, pyukumuku_1, porygon2_1, rampardos_2, rampardos_1, vigoroth_1, umbreon_1, garchomp_2, mienshao_1, terrakion_1, gyarados_mega_4, latias_mega_1, audino_mega_1, garchomp_1, altaria_mega_2, smeargle_1, cresselia_1, heatran_2, victini_2, tapu_fini_2, greninja_2, illumise_1, medicham_mega_1, manaphy_1, krookodile_1, zygarde_complete_1, incineroar_1, golem_1, durant_1, diancie_mega_1, crustle_1, archeops_1, heatran_1, chansey_1, aggron_mega_1, tyranitar_mega_1, tapu_fini_1, primarina_1, charizard_mega_x, slowbro_mega_1, slowbro_mega_2, landorus_therian_1, porygonz_1, tapu_lele_1, altaria_mega_1, donphan_1, clefable_1, stunfisk_1, porygonz_3, charizard_mega_x_3, necrozma_2, type_null_1, meloetta_2]
  298. charizard_mega_x_3.lmatchups = [gyarados_mega, gyarados_mega_2, gyarados_mega_4, gyarados_mega_5, naganadel_1, dragonite_1, dragonite_2, dragonite_3, dragonite_4, charizard_mega_x, landorus_therian_1, landorus_therian_2, greninja_1, greninja_2, greninja_3, greninja_4, tapu_lele_1, porygonz_1, porygonz_2, porygonz_3, donphan_1, altaria_mega_1, altaria_mega_2, meloetta_1, aron_1, heatran_1, heatran_2, garchomp_1, garchomp_2, aggron_mega_1, tyranitar_mega_1, latias_mega_1, tapu_fini_2, primarina_1, blastoise_mega_1, archeops_1, victini_2, necrozma_1, blacephalon_1, krookodile_1, hoopau_1, haxorus_1, haxorus_2, golem_1, durant_1, diancie_mega_1, deoxys_s_1, crustle_1, cresselia_1, clefable_1, stunfisk_1, illumise_1, terrakion_1, mienshao_1, rampardos_1, rampardos_2, pyukumuku_1, araquanid_1, salamence_1, avalugg_1, gallade_mega_1, togekiss_2, meloetta_2]
  299. #for all Manaphy sets
  300. manaphy_1.lmatchups = [togekiss_1, gyarados_mega_5, dragonite_4, dragonite_3, gallade_mega_1, salamence_1, haxorus_2, pyukumuku_1, zapdos_1, rotom_wash_1, garchomp_2, whimsicott_1, latias_mega_1, slowbro_mega_2, raikou_1, mew_2, shedinja_1, riolu_1, aron_1, kartana_2, dragonite_2, sawk_1, medicham_mega_1, kartana_1, clefable_1, crustle_1, haxorus_1, heracross_mega_1, volcarona_1, zeraora_1, archeops_1, garchomp_1, gyarados_mega, gyarados_mega_2, gyarados_mega_4, dragonite_1, ferrothorn_1, porygonz_1, porygonz_2, jumpluff_1, meloetta_1, magnezone_1, kommoo_1, naganadel_1, venusaur_mega_1, vivillon_1, porygonz_3, zeraora_2, meloetta_2, magnezone_2]
  301. #for all Kommo-o sets
  302. kommoo_1.lmatchups = [porygonz_1, togekiss_2, togekiss_1, landorus_therian_2, volcarona_2, dragonite_4, dragonite_3, deoxys_s_2, salamence_1, hoopau_2, haxorus_2, magearna_2, latias_mega_1, vivillon_1, slowbro_mega_2, altaria_mega_2, smeargle_1, cresselia_1, victini_2, tapu_fini_2, dragonite_2, medicham_mega_1, haxorus_1, diancie_mega_1, deoxys_s_1, archeops_1, pinser_mega_1, necrozma_1, mawile_mega_1, tapu_fini_1, primarina_1, naganadel_1, charizard_mega_x, charizard_mega_x_2, dragonite_1, magearna_1, metagross_mega_2, tapu_lele_1, slowbro_mega_1, mew_1, aegislash_1, altaria_mega_1, gardevoir_mega_1, clefable_1, charizard_mega_x_3, zeraora_2]
  303. #for all Genesect sets
  304. genesect_1.lmatchups = [togekiss_1, greninja_4, venusaur_mega_2, dragonite_4, carracosta_1, avalugg_1, swampert_mega_1, donphan_2, volcarona_2, hoopau_2, araquanid_1, pyukumuku_1, porygon2_1, rotom_wash_1, rampardos_1, magearna_2, excadrill_1, darmanitan_1, salazzle_1, latias_mega_1, audino_mega_1, raikou_1, mew_2, shedinja_1, riolu_1, altaria_mega_2, genesect_2, aron_1, smeargle_1, blacephalon_1, heatran_2, victini_2, greninja_3, dragonite_2, manaphy_1, incineroar_1, crustle_1, blaziken_mega_1, archeops_1, zeraora_1, victini_1, sableye_mega_1, mawile_mega_1, heatran_1, chansey_1, aggron_mega_1, naganadel_1, charizard_mega_x, charizard_mega_x_2, charizard_mega_y, charizard_mega_y_2, magearna_1, greninja_1, magnezone_1, aegislash_1, kommoo_1, lopunny_mega_1, volcarona_1, stunfisk_1, vivillon_1, charizard_mega_x_3, infernape_1, zeraora_2, necrozma_2, type_null_1, magnezone_2]
  305. genesect_2.lmatchups = [togekiss_1, celesteela_2, venusaur_mega_2, dragonite_4, gallade_mega_1, carracosta_1, avalugg_1, swampert_mega_1, deoxys_s_2, donphan_2, volcarona_2, araquanid_1, pyukumuku_1, porygon2_1, rotom_wash_1, pheromosa_3, pheromosa_2, magearna_2, terrakion_1, excadrill_1, darmanitan_1, salazzle_1, audino_mega_1, raikou_1, riolu_1, altaria_mega_2, blacephalon_1, dragonite_1, charizard_mega_x, charizard_mega_x_2, charizard_mega_y, charizard_mega_y_2, manaphy_1, kommoo_1, medicham_mega_1, tapu_lele_1, porygonz_1, porygonz_2, donphan_1, altaria_mega_1, aegislash_1, magnezone_1, mew_1, lopunny_mega_1, heatran_2, heatran_1, chansey_1, aggron_mega_1, primarina_1, blastoise_mega_1, zeraora_1, volcarona_1, victini_1, victini_2, sableye_mega_1, incineroar_1, heracross_mega_1, golem_1, diancie_mega_1, sawk_1, blaziken_mega_1, clefable_1, dragonite_2, stunfisk_1, xurkitree_1, crustle_1, charizard_mega_x_3, infernape_1, zeraora_2, necrozma_2, type_null_1, magnezone_2]
  306. #for all Landorus-Therian sets
  307. landorus_therian_1.lmatchups = [togekiss_2, togekiss_1, gyarados_mega_5, greninja_4, venusaur_mega_2, dragonite_4, carracosta_1, avalugg_1, swampert_mega_1, deoxys_s_2, donphan_2, salamence_1, araquanid_1, pyukumuku_1, porygon2_1, rotom_wash_1, pheromosa_3, pheromosa_2, pheromosa_1, rampardos_1, vigoroth_1, umbreon_1, whimsicott_1, gyarados_mega_4, latias_mega_1, audino_mega_1, slowbro_mega_2, mew_2, altaria_mega_2, genesect_2, aron_1, smeargle_1, cresselia_1, tapu_fini_2, greninja_3, greninja_2, dragonite_2, illumise_1, sawk_1, medicham_mega_1, manaphy_1, diancie_mega_1, kyurem_1, deoxys_s_1, blastoise_mega_1, sableye_mega_1, necrozma_1, chansey_1, primarina_1, kommoo_1, gardevoir_mega_1, charizard_mega_y, charizard_mega_y_2, gyarados_mega, gyarados_mega_2, gyarados_mega_3, slowbro_mega_1, jumpluff_1, zygarde_complete_1, porygonz_1, greninja_1, mew_1, meloetta_1, altaria_mega_1, clefable_1, porygonz_2, vivillon_1, weavile_1, weavile_2, porygonz_3, infernape_1, necrozma_2, type_null_1, meloetta_2]
  308. landorus_therian_2.lmatchups = [togekiss_2, togekiss_1, celesteela_2, scizor_mega_1, audino_mega_1, tapu_lele_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, gyarados_mega_4, gyarados_mega_5, kyurem_1, magearna_1, dragonite_1, dragonite_2, manaphy_1, genesect_1, genesect_2, landorus_therian_1, jumpluff_1, zygarde_complete_1, slowbro_mega_2, slowbro_mega_1, gardevoir_mega_1, donphan_1, altaria_mega_1, altaria_mega_2, aegislash_1, meloetta_1, aron_1, mew_1, mew_2, heatran_1, chansey_1, aggron_mega_1, latias_mega_1, tapu_fini_1, tapu_fini_2, primarina_1, blastoise_mega_1, sableye_mega_1, necrozma_1, hoopau_1, golem_1, deoxys_s_1, cresselia_1, clefable_1, illumise_1, whimsicott_1, magearna_2, umbreon_1, vigoroth_1, rotom_wash_1, zapdos_1, porygon2_1, salamence_1, pyukumuku_1, donphan_2, deoxys_s_2, swampert_mega_1, avalugg_1, carracosta_1, dragonite_3, dragonite_4, necrozma_2, type_null_1, meloetta_2]
  309. #for all Jumpluff sets
  310. jumpluff_1.lmatchups = [greninja_4, venusaur_mega_2, deoxys_s_2, donphan_2, volcarona_2, hoopau_2, pheromosa_3, pheromosa_2, pheromosa_1, rampardos_2, rampardos_1, vigoroth_1, darmanitan_1, salazzle_1, raikou_1, genesect_2, kartana_2, greninja_3, sawk_1, heracross_mega_1, diancie_mega_1, deoxys_s_1, crustle_1, blaziken_mega_1, zeraora_1, victini_1, sableye_mega_1, kartana_1, ferrothorn_1, venusaur_mega_1, tapu_fini_1, naganadel_1, kommoo_1, charizard_mega_x, charizard_mega_x_2, charizard_mega_y, charizard_mega_y_2, lopunny_mega_1, greninja_1, genesect_1, volcarona_1, porygonz_2, weavile_1, weavile_2, charizard_mega_x_3, zeraora_2, meloetta_2]
  311. #for all Greninja sets
  312. greninja_1.lmatchups = [togekiss_2, togekiss_1, celesteela_2, scizor_mega_1, landorus_therian_2, gyarados_mega_5, venusaur_mega_2, donphan_2, hoopau_2, araquanid_1, pyukumuku_1, porygon2_1, rotom_wash_1, pheromosa_3, pheromosa_2, umbreon_1, magearna_2, darmanitan_1, gyarados_mega_4, latias_mega_1, audino_mega_1, riolu_1, genesect_2, aron_1, tapu_fini_2, sawk_1, manaphy_1, kyurem_1, hoopau_1, heracross_mega_1, haxorus_1, golem_1, deoxys_s_1, crustle_1, blaziken_mega_1, zeraora_1, sableye_mega_1, ferrothorn_1, chansey_1, aggron_mega_1, tapu_fini_1, kommoo_1, gardevoir_mega_1, charizard_mega_x_2, metagross_mega_1, metagross_mega_2, lopunny_mega_1, magearna_1, tapu_lele_1, magnezone_1, meloetta_1, donphan_1, clefable_1, porygonz_2, stunfisk_1, weavile_2, zeraora_2, type_null_1, meloetta_2, magnezone_2]
  313. greninja_2.lmatchups = [landorus_therian_2, gyarados_mega_5, venusaur_mega_2, dragonite_4, dragonite_3, carracosta_1, donphan_2, volcarona_2, hoopau_2, araquanid_1, porygon2_1, rotom_wash_1, pheromosa_3, pheromosa_2, umbreon_1, darmanitan_1, gyarados_mega_4, salazzle_1, latias_mega_1, slowbro_mega_2, raikou_1, shedinja_1, altaria_mega_2, genesect_2, zygarde_complete_1, tapu_fini_2, gyarados_mega, gyarados_mega_2, gyarados_mega_3, kyurem_1, naganadel_1, dragonite_1, manaphy_1, kommoo_1, genesect_1, greninja_1, slowbro_mega_1, porygonz_2, donphan_1, altaria_mega_1, magnezone_1, lopunny_mega_1, ferrothorn_1, chansey_1, venusaur_mega_1, tapu_fini_1, primarina_1, blastoise_mega_1, zeraora_1, hoopau_1, heracross_mega_1, haxorus_1, golem_1, deoxys_s_1, sawk_1, crustle_1, clefable_1, dragonite_2, weavile_2, zeraora_2, meloetta_2, magnezone_2]
  314. greninja_3.lmatchups = [togekiss_2, togekiss_1, scizor_mega_1, landorus_therian_2, gyarados_mega_5, greninja_4, venusaur_mega_2, dragonite_4, dragonite_3, carracosta_1, swampert_mega_1, donphan_2, hoopau_2, araquanid_1, pyukumuku_1, porygon2_1, rotom_wash_1, pheromosa_3, pheromosa_2, umbreon_1, magearna_2, darmanitan_1, gyarados_mega_4, latias_mega_1, audino_mega_1, slowbro_mega_2, raikou_1, mew_2, riolu_1, genesect_2, aron_1, tapu_fini_2, gyarados_mega, gyarados_mega_2, gyarados_mega_3, kyurem_1, charizard_mega_x_2, manaphy_1, greninja_1, slowbro_mega_1, porygonz_2, donphan_1, clefable_1, magnezone_1, lopunny_mega_1, ferrothorn_1, chansey_1, celesteela_1, venusaur_mega_1, tapu_fini_1, primarina_1, blastoise_mega_1, zeraora_1, heracross_mega_1, haxorus_1, golem_1, deoxys_s_1, sawk_1, crustle_1, blaziken_mega_1, dragonite_2, greninja_2, weavile_2, zeraora_2, type_null_1, meloetta_2, magnezone_2]
  315. greninja_4.lmatchups = [togekiss_2, togekiss_1, celesteela_2, landorus_therian_2, gyarados_mega_5, gyarados_mega, gyarados_mega_2, gyarados_mega_3, gyarados_mega_4, kyurem_1, charizard_mega_x_2, manaphy_1, kommoo_1, genesect_2, tapu_lele_1, porygonz_2, gardevoir_mega_1, donphan_1, audino_mega_1, magnezone_1, meloetta_1, aron_1, lopunny_mega_1, chansey_1, aggron_mega_1, venusaur_mega_1, tyranitar_mega_1, latias_mega_1, tapu_fini_1, tapu_fini_2, primarina_1, blastoise_mega_1, zeraora_1, riolu_1, sableye_mega_1, hoopau_1, haxorus_1, golem_1, deoxys_s_1, sawk_1, crustle_1, blaziken_mega_1, clefable_1, darmanitan_1, garchomp_2, umbreon_1, pheromosa_2, pheromosa_3, rotom_wash_1, porygon2_1, hoopau_2, pyukumuku_1, donphan_2, araquanid_1, swampert_mega_1, avalugg_1, carracosta_1, venusaur_mega_2, weavile_2, zeraora_2, type_null_1, meloetta_2, magnezone_2]
  316. #for all Medicham-Mega sets
  317. medicham_mega_1.lmatchups = [togekiss_2, landorus_therian_2, gyarados_mega_5, greninja_4, gallade_mega_1, swampert_mega_1, deoxys_s_2, zapdos_1, pheromosa_3, pheromosa_2, darmanitan_1, salazzle_1, gyarados_mega_4, latias_mega_1, slowbro_mega_2, raikou_1, mew_2, shedinja_1, altaria_mega_2, cresselia_1, kartana_2, blacephalon_1, victini_2, greninja_3, greninja_2, illumise_1, clefable_1, diancie_mega_1, durant_1, haxorus_1, deoxys_s_1, kartana_1, blaziken_mega_1, mawile_mega_1, zeraora_1, archeops_1, necrozma_1, pinser_mega_1, sableye_mega_1, victini_1, garchomp_1, aegislash_1, naganadel_1, primarina_1, genesect_1, gardevoir_mega_1, altaria_mega_1, gyarados_mega, mew_1, gyarados_mega_2, gyarados_mega_3, magearna_1, metagross_mega_2, porygonz_2, tapu_lele_1, slowbro_mega_1, greninja_1, jumpluff_1, lopunny_mega_1, vivillon_1, weavile_1, weavile_2, infernape_1, zeraora_2, necrozma_2, magnezone_2]
  318. #for all Zygarde-Complete sets
  319. zygarde_complete_1.lmatchups = [togekiss_2, togekiss_1, scizor_mega_1, greninja_4, dragonite_4, dragonite_3, avalugg_1, swampert_mega_1, salamence_1, haxorus_2, pyukumuku_1, porygon2_1, pheromosa_3, pheromosa_1, rampardos_1, vigoroth_1, whimsicott_1, latias_mega_1, audino_mega_1, mew_2, altaria_mega_2, genesect_2, smeargle_1, cresselia_1, victini_2, tapu_fini_2, greninja_3, dragonite_2, illumise_1, medicham_mega_1, manaphy_1, kyurem_1, krookodile_1, deoxys_s_1, blastoise_mega_1, tapu_fini_1, primarina_1, naganadel_1, kommoo_1, genesect_1, gardevoir_mega_1, jumpluff_1, gyarados_mega_3, slowbro_mega_1, porygonz_1, greninja_1, tapu_lele_1, mew_1, altaria_mega_1, clefable_1, porygonz_2, vivillon_1, weavile_1, weavile_2, porygonz_3, necrozma_2, type_null_1, meloetta_2]
  320. #for all Slowbro-Mega sets
  321. slowbro_mega_1.lmatchups = [celesteela_2, greninja_4, venusaur_mega_2, volcarona_2, hoopau_2, araquanid_1, pyukumuku_1, zapdos_1, rotom_wash_1, pheromosa_3, magearna_2, audino_mega_1, raikou_1, shedinja_1, genesect_2, aron_1, smeargle_1, kartana_2, blacephalon_1, xurkitree_1, heatran_2, illumise_1, kyurem_1, incineroar_1, hoopau_1, heracross_mega_1, durant_1, blastoise_mega_1, zeraora_1, kartana_1, chansey_1, venusaur_mega_1, primarina_1, genesect_1, gardevoir_mega_1, aegislash_1, charizard_mega_y, charizard_mega_y_2, magearna_1, jumpluff_1, porygonz_1, greninja_1, magnezone_1, volcarona_1, stunfisk_1, vivillon_1, porygonz_3, charizard_mega_x_3, zeraora_2, necrozma_2, type_null_1, magnezone_2]
  322. slowbro_mega_2.lmatchups = [togekiss_2, greninja_4, zygarde_complete_1, deoxys_s_2, volcarona_2, hoopau_2, araquanid_1, pyukumuku_1, zapdos_1, rotom_wash_1, pheromosa_3, magearna_2, audino_mega_1, raikou_1, mew_2, shedinja_1, kyurem_1, magearna_1, charizard_mega_y, genesect_1, jumpluff_1, greninja_1, porygonz_1, aegislash_1, magnezone_1, ferrothorn_1, chansey_1, venusaur_mega_1, primarina_1, zeraora_1, volcarona_1, kartana_2, kartana_1, incineroar_1, hoopau_1, heracross_mega_1, durant_1, illumise_1, xurkitree_1, blacephalon_1, genesect_2, aron_1, smeargle_1, vivillon_1, porygonz_3, charizard_mega_x_3, zeraora_2, necrozma_2, type_null_1, magnezone_2]
  323. #for all Tapu Lele sets
  324. tapu_lele_1.lmatchups = [porygonz_1, celesteela_2, scizor_mega_1, carracosta_1, hoopau_2, haxorus_2, pyukumuku_1, magearna_2, excadrill_1, salazzle_1, slowbro_mega_2, mew_2, shedinja_1, aron_1, smeargle_1, kartana_2, blacephalon_1, victini_2, greninja_3, greninja_2, sawk_1, manaphy_1, durant_1, archeops_1, victini_1, pinser_mega_1, mawile_mega_1, kartana_1, heatran_1, ferrothorn_1, celesteela_1, aggron_mega_1, naganadel_1, genesect_1, gardevoir_mega_1, aegislash_1, charizard_mega_y, charizard_mega_y_2, metagross_mega_1, metagross_mega_2, magearna_1, jumpluff_1, magnezone_1, meloetta_1, volcarona_1, vivillon_1, porygonz_3, necrozma_2, type_null_1, meloetta_2, magnezone_2]
  325. #for all Porygon-Z sets
  326. porygonz_1.lmatchups = [gyarados_mega_2, celesteela_2, landorus_therian_2, gyarados_mega_5, greninja_4, dragonite_3, gallade_mega_1, carracosta_1, deoxys_s_2, donphan_2, volcarona_2, haxorus_2, pheromosa_3, pheromosa_2, pheromosa_1, rampardos_2, rampardos_1, umbreon_1, mienshao_1, magearna_2, terrakion_1, excadrill_1, darmanitan_1, salazzle_1, audino_mega_1, raikou_1, kartana_2, blacephalon_1, heatran_2, greninja_2, sawk_1, medicham_mega_1, haxorus_1, golem_1, durant_1, deoxys_s_1, crustle_1, archeops_1, zeraora_1, sableye_mega_1, pinser_mega_1, mawile_mega_1, kartana_1, garchomp_1, chansey_1, tyranitar_mega_1, naganadel_1, genesect_1, gardevoir_mega_1, charizard_mega_x, charizard_mega_y, charizard_mega_y_2, dragonite_1, magearna_1, jumpluff_1, lopunny_mega_1, greninja_1, magnezone_1, volcarona_1, porygonz_2, weavile_1, weavile_2, infernape_1, zeraora_2, magnezone_2]
  327. porygonz_2.lmatchups = [togekiss_1, scizor_mega_1, landorus_therian_2, gyarados_mega_5, zeraora_1, venusaur_mega_2, dragonite_4, dragonite_3, carracosta_1, avalugg_1, swampert_mega_1, deoxys_s_2, donphan_2, volcarona_2, hoopau_2, araquanid_1, pyukumuku_1, porygon2_1, pheromosa_3, pheromosa_2, rampardos_2, rampardos_1, umbreon_1, magearna_2, terrakion_1, excadrill_1, darmanitan_1, gyarados_mega_4, latias_mega_1, slowbro_mega_2, riolu_1, aron_1, heatran_2, dragonite_1, sawk_1, kyurem_1, incineroar_1, magearna_1, metagross_mega_1, metagross_mega_2, tapu_lele_1, slowbro_mega_1, mew_1, meloetta_1, magnezone_1, donphan_1, gardevoir_mega_1, genesect_1, kommoo_1, primarina_1, venusaur_mega_1, aggron_mega_1, celesteela_1, ferrothorn_1, heatran_1, mawile_mega_1, necrozma_1, sableye_mega_1, victini_1, blastoise_mega_1, blaziken_mega_1, crustle_1, deoxys_s_1, diancie_mega_1, durant_1, golem_1, haxorus_1, hoopau_1, clefable_1, chansey_1, stunfisk_1, necrozma_2, type_null_1, meloetta_2, magnezone_2]
  328. porygonz_3.lmatchups = [naganadel_1, magearna_1, magearna_2, dragonite_1, dragonite_3, charizard_mega_y, charizard_mega_y_2, genesect_1, genesect_2, jumpluff_1, greninja_1, greninja_2, greninja_3, greninja_4, medicham_mega_1, porygonz_1, porygonz_2, gardevoir_mega_1, audino_mega_1, magnezone_1, meloetta_1, lopunny_mega_1, garchomp_1, chansey_1, celesteela_2, tyranitar_mega_1, archeops_1, zeraora_1, volcarona_1, volcarona_2, sableye_mega_1, pinser_mega_1, blacephalon_1, mawile_mega_1, raikou_1, kartana_1, kartana_2, hoopau_1, haxorus_2, durant_1, deoxys_s_1, deoxys_s_2, sawk_1, crustle_1, blaziken_mega_1, clefable_1, vivillon_1, salazzle_1, excadrill_1, terrakion_1, mienshao_1, umbreon_1, rampardos_2, pheromosa_1, pheromosa_2, pheromosa_3, porygon2_1, pyukumuku_1, carracosta_1, gallade_mega_1, togekiss_1, weavile_1, infernape_1, zeraora_2, necrozma_2, type_null_1, magnezone_2]
  329. #for all Gardevoir-Mega sets
  330. gardevoir_mega_1.lmatchups = [celesteela_2, scizor_mega_1, carracosta_1, swampert_mega_1, haxorus_2, araquanid_1, pyukumuku_1, pheromosa_2, rampardos_2, magearna_2, excadrill_1, terrakion_1, darmanitan_1, salazzle_1, slowbro_mega_2, clefable_1, mew_2, genesect_2, kartana_2, blacephalon_1, heatran_2, victini_2, greninja_3, greninja_2, sawk_1, manaphy_1, durant_1, crustle_1, archeops_1, victini_1, pinser_mega_1, mawile_mega_1, kartana_1, heatran_1, garchomp_1, ferrothorn_1, celesteela_1, aggron_mega_1, naganadel_1, genesect_1, charizard_mega_x, charizard_mega_x_2, charizard_mega_y, charizard_mega_y_2, magearna_1, metagross_mega_1, metagross_mega_2, lopunny_mega_1, meloetta_1, magnezone_1, aegislash_1, volcarona_1, vivillon_1, weavile_1, charizard_mega_x_3, meloetta_2, magnezone_2]
  331. #for all Donphan sets
  332. donphan_1.lmatchups = [togekiss_2, togekiss_1, celesteela_2, scizor_mega_1, gyarados_mega_5, venusaur_mega_2, dragonite_4, gallade_mega_1, carracosta_1, swampert_mega_1, deoxys_s_2, salamence_1, pyukumuku_1, porygon2_1, rotom_wash_1, pheromosa_1, vigoroth_1, umbreon_1, whimsicott_1, gyarados_mega_4, latias_mega_1, audino_mega_1, slowbro_mega_2, mew_2, altaria_mega_2, smeargle_1, cresselia_1, tapu_fini_2, dragonite_2, illumise_1, kyurem_1, krookodile_1, incineroar_1, heracross_mega_1, blastoise_mega_1, sableye_mega_1, necrozma_1, kartana_1, heatran_1, ferrothorn_1, chansey_1, celesteela_1, venusaur_mega_1, tapu_fini_1, primarina_1, kommoo_1, genesect_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, magearna_1, porygonz_1, tapu_lele_1, slowbro_mega_1, zygarde_complete_1, mew_1, meloetta_1, altaria_mega_1, gardevoir_mega_1, clefable_1, porygonz_3, infernape_1, necrozma_2, type_null_1, meloetta_2]
  333. donphan_2.lmatchups = [togekiss_2, celesteela_2, gyarados_mega_5, venusaur_mega_2, dragonite_4, gallade_mega_1, carracosta_1, avalugg_1, swampert_mega_1, deoxys_s_2, crustle_1, magearna_1, gyarados_mega, gyarados_mega_3, gyarados_mega_2, gyarados_mega_4, kyurem_1, metagross_mega_1, dragonite_1, dragonite_2, charizard_mega_x, charizard_mega_x_2, charizard_mega_y, charizard_mega_y_2, manaphy_1, kommoo_1, medicham_mega_1, zygarde_complete_1, slowbro_mega_1, slowbro_mega_2, tapu_lele_1, gardevoir_mega_1, donphan_1, audino_mega_1, altaria_mega_2, altaria_mega_1, magnezone_1, meloetta_1, aron_1, mew_1, mew_2, heatran_1, chansey_1, celesteela_1, venusaur_mega_1, smeargle_1, latias_mega_1, blastoise_mega_1, victini_2, sableye_mega_1, pinser_mega_1, necrozma_1, krookodile_1, hoopau_1, heracross_mega_1, golem_1, sawk_1, cresselia_1, illumise_1, vivillon_1, umbreon_1, vigoroth_1, pheromosa_1, rotom_wash_1, zapdos_1, porygon2_1, salamence_1, araquanid_1, porygonz_3, infernape_1, necrozma_2, type_null_1, meloetta_2]
  334. #for all Audino-Mega sets
  335. audino_mega_1.lmatchups = [celesteela_2, scizor_mega_1, gyarados_mega_5, dragonite_3, gallade_mega_1, carracosta_1, zapdos_1, vigoroth_1, mienshao_1, terrakion_1, excadrill_1, whimsicott_1, salazzle_1, gyarados_mega_3, metagross_mega_1, metagross_mega_2, manaphy_1, kommoo_1, jumpluff_1, medicham_mega_1, tapu_lele_1, porygonz_2, gardevoir_mega_1, magnezone_1, meloetta_1, garchomp_1, tyranitar_mega_1, tapu_fini_1, primarina_1, archeops_1, zeraora_1, victini_1, pinser_mega_1, mawile_mega_1, kartana_1, krookodile_1, crustle_1, illumise_1, greninja_2, xurkitree_1, kartana_2, blacephalon_1, aron_1, smeargle_1, gyarados_mega_4, mew_2, raikou_1, weavile_1, charizard_mega_x_3, necrozma_2, meloetta_2, magnezone_2]
  336. #for all Altaria-Mega sets
  337. altaria_mega_1.lmatchups = [togekiss_2, togekiss_1, celesteela_2, greninja_4, venusaur_mega_2, swampert_mega_1, deoxys_s_2, aron_1, volcarona_2, araquanid_1, pyukumuku_1, porygon2_1, zapdos_1, magearna_2, salazzle_1, audino_mega_1, slowbro_mega_2, raikou_1, mew_2, smeargle_1, cresselia_1, blacephalon_1, xurkitree_1, heatran_2, victini_2, tapu_fini_2, greninja_3, manaphy_1, kyurem_1, diancie_mega_1, deoxys_s_1, blastoise_mega_1, necrozma_1, mawile_mega_1, heatran_1, chansey_1, venusaur_mega_1, primarina_1, naganadel_1, genesect_1, magearna_1, porygonz_1, tapu_lele_1, slowbro_mega_1, greninja_1, mew_1, meloetta_1, magnezone_1, aegislash_1, gardevoir_mega_1, volcarona_1, clefable_1, porygonz_2, vivillon_1, porygonz_3, necrozma_2, type_null_1, meloetta_2]
  338. altaria_mega_2.lmatchups = [togekiss_2, togekiss_1, celesteela_2, greninja_4, venusaur_mega_2, deoxys_s_2, volcarona_2, araquanid_1, pyukumuku_1, porygon2_1, zapdos_1, mew_1, magearna_2, salazzle_1, audino_mega_1, aegislash_1, raikou_1, mew_2, greninja_3, kyurem_1, naganadel_1, magearna_1, manaphy_1, greninja_1, slowbro_mega_1, tapu_lele_1, porygonz_1, porygonz_2, gardevoir_mega_1, altaria_mega_1, meloetta_1, heatran_1, chansey_1, celesteela_1, venusaur_mega_1, tapu_fini_1, primarina_1, blastoise_mega_1, necrozma_1, mawile_mega_1, diancie_mega_1, deoxys_s_1, clefable_1, tapu_fini_2, victini_2, xurkitree_1, blacephalon_1, cresselia_1, aron_1, smeargle_1, slowbro_mega_2, porygonz_3, necrozma_2, type_null_1, meloetta_2]
  339. #for all Aegislash sets
  340. aegislash_1.lmatchups = [gyarados_mega_5, greninja_4, volcarona_2, swampert_mega_1, donphan_2, hoopau_2, porygon2_1, vigoroth_1, umbreon_1, excadrill_1, audino_mega_1, smeargle_1, blacephalon_1, heatran_2, tapu_fini_2, greninja_3, greninja_2, dragonite_2, manaphy_1, krookodile_1, incineroar_1, hoopau_1, porygonz_1, golem_1, sableye_mega_1, heatran_1, garchomp_1, chansey_1, tyranitar_mega_1, meloetta_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, charizard_mega_y, charizard_mega_y_2, dragonite_1, zygarde_complete_1, greninja_1, jumpluff_1, landorus_therian_1, donphan_1, volcarona_1, porygonz_2, stunfisk_1, vivillon_1, weavile_1, porygonz_3, type_null_1]
  341. #for all Magnezone sets
  342. magnezone_1.lmatchups = [zeraora_1, landorus_therian_2, dragonite_4, dragonite_3, carracosta_1, swampert_mega_1, volcarona_2, haxorus_2, pheromosa_2, rampardos_2, umbreon_1, garchomp_2, mienshao_1, excadrill_1, whimsicott_1, salazzle_1, raikou_1, shedinja_1, riolu_1, smeargle_1, xurkitree_1, sawk_1, medicham_mega_1, krookodile_1, incineroar_1, haxorus_1, golem_1, victini_1, garchomp_1, tyranitar_mega_1, naganadel_1, kommoo_1, aegislash_1, gyarados_mega_2, gyarados_mega_3, charizard_mega_x, charizard_mega_x_2, dragonite_1, metagross_mega_1, metagross_mega_2, zygarde_complete_1, jumpluff_1, lopunny_mega_1, donphan_1, stunfisk_1, vivillon_1, weavile_1, charizard_mega_x_3, infernape_1, zeraora_2]
  343. magnezone_2.lmatchups = [gyarados_mega, gyarados_mega_2, gyarados_mega_3, kyurem_1, naganadel_1, metagross_mega_1, metagross_mega_2, dragonite_1, dragonite_2, dragonite_4, charizard_mega_x, charizard_mega_x_2, charizard_mega_x_3, kommoo_1, landorus_therian_1, landorus_therian_2, jumpluff_1, zygarde_complete_1, donphan_1, donphan_2, altaria_mega_2, aegislash_1, garchomp_1, garchomp_2, smeargle_1, tyranitar_mega_1, zeraora_1, zeraora_2, volcarona_2, riolu_1, victini_1, raikou_1, krookodile_1, haxorus_1, haxorus_2, golem_1, sawk_1, xurkitree_1, stunfisk_1, vivillon_1, shedinja_1, whimsicott_1, excadrill_1, umbreon_1, rampardos_2, swampert_mega_1]
  344. #for all Meloetta sets
  345. meloetta_1.lmatchups = [gyarados_mega_5, dragonite_3, carracosta_1, swampert_mega_1, volcarona_2, hoopau_2, pyukumuku_1, terrakion_1, excadrill_1, mew_2, shedinja_1, riolu_1, genesect_2, aron_1, smeargle_1, greninja_3, greninja_2, sawk_1, medicham_mega_1, incineroar_1, hoopau_1, heracross_mega_1, golem_1, durant_1, diancie_mega_1, crustle_1, archeops_1, zeraora_1, victini_1, sableye_mega_1, mawile_mega_1, ferrothorn_1, celesteela_1, aggron_mega_1, tyranitar_mega_1, genesect_1, gyarados_mega, gyarados_mega_2, charizard_mega_x_2, charizard_mega_y, dragonite_1, magearna_1, metagross_mega_1, metagross_mega_2, magnezone_1, volcarona_1, vivillon_1, weavile_1, zeraora_2, type_null_1, meloetta_2, magnezone_2]
  346. meloetta_2.lmatchups = [gyarados_mega_5, metagross_mega_1, metagross_mega_2, magearna_1, magearna_2, dragonite_1, dragonite_3, genesect_1, genesect_2, medicham_mega_1, slowbro_mega_1, slowbro_mega_2, porygonz_1, porygonz_3, aegislash_1, magnezone_1, aron_1, heatran_1, heatran_2, ferrothorn_1, chansey_1, celesteela_1, celesteela_2, aggron_mega_1, tyranitar_mega_1, archeops_1, zeraora_1, zeraora_2, volcarona_1, volcarona_2, sableye_mega_1, blacephalon_1, mawile_mega_1, incineroar_1, hoopau_1, hoopau_2, heracross_mega_1, durant_1, diancie_mega_1, sawk_1, crustle_1, shedinja_1, excadrill_1, terrakion_1, umbreon_1, porygon2_1, carracosta_1, scizor_mega_1, weavile_1, weavile_2, type_null_1]
  347. #for all Aron sets
  348. aron_1.lmatchups = [togekiss_1, celesteela_2, scizor_mega_1, gyarados_mega_5, dragonite_3, gallade_mega_1, swampert_mega_1, haxorus_2, rotom_wash_1, pheromosa_2, rampardos_2, vigoroth_1, garchomp_2, mienshao_1, magearna_2, terrakion_1, excadrill_1, whimsicott_1, gyarados_mega_4, salazzle_1, latias_mega_1, mew_2, riolu_1, blacephalon_1, porygonz_1, kommoo_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, magearna_1, charizard_mega_x_2, jumpluff_1, medicham_mega_1, zygarde_complete_1, gardevoir_mega_1, aegislash_1, magnezone_1, mew_1, lopunny_mega_1, garchomp_1, ferrothorn_1, celesteela_1, venusaur_mega_1, tapu_fini_1, primarina_1, blastoise_mega_1, necrozma_1, mawile_mega_1, kartana_1, krookodile_1, incineroar_1, heracross_mega_1, haxorus_1, golem_1, crustle_1, illumise_1, greninja_2, victini_2, weavile_1, weavile_2, porygonz_3, infernape_1, zeraora_2, magnezone_2]
  349. #for all Mew sets
  350. mew_1.lmatchups = [togekiss_1, gyarados_mega_5, greninja_4, dragonite_3, swampert_mega_1, volcarona_2, salamence_1, hoopau_2, pyukumuku_1, pheromosa_3, umbreon_1, garchomp_2, whimsicott_1, gyarados_mega_4, latias_mega_1, audino_mega_1, mew_2, smeargle_1, cresselia_1, blacephalon_1, heatran_2, victini_2, greninja_3, greninja_2, manaphy_1, krookodile_1, incineroar_1, hoopau_1, durant_1, crustle_1, zeraora_1, victini_1, sableye_mega_1, necrozma_1, heatran_1, garchomp_1, tyranitar_mega_1, gardevoir_mega_1, aegislash_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, charizard_mega_x_2, charizard_mega_y, charizard_mega_y_2, dragonite_1, porygonz_1, greninja_1, tapu_lele_1, slowbro_mega_1, meloetta_1, volcarona_1, clefable_1, vivillon_1, slowbro_mega_2, weavile_1, porygonz_3, infernape_1, zeraora_2, necrozma_2, meloetta_2, magnezone_2]
  351. mew_2.lmatchups = [gyarados_mega_5, greninja_4, tyranitar_mega_1, dragonite_3, volcarona_2, hoopau_2, araquanid_1, pheromosa_3, vigoroth_1, mienshao_1, terrakion_1, whimsicott_1, darmanitan_1, salazzle_1, raikou_1, naganadel_1, charizard_mega_y_2, charizard_mega_x, kommoo_1, jumpluff_1, greninja_1, porygonz_1, aegislash_1, magnezone_1, garchomp_1, zeraora_1, archeops_1, victini_1, sableye_mega_1, pinser_mega_1, kartana_1, krookodile_1, incineroar_1, hoopau_1, heracross_mega_1, durant_1, blaziken_mega_1, illumise_1, greninja_2, blacephalon_1, genesect_2, weavile_1, weavile_2, porygonz_3, charizard_mega_x_3, type_null_1, meloetta_2]
  352. #for all Lopunny-Mega sets
  353. lopunny_mega_1.lmatchups = [togekiss_2, celesteela_2, scizor_mega_1, landorus_therian_2, kommoo_1, venusaur_mega_2, gallade_mega_1, swampert_mega_1, deoxys_s_2, donphan_2, salamence_1, zapdos_1, pheromosa_3, pheromosa_2, magearna_2, whimsicott_1, darmanitan_1, gyarados_mega_4, latias_mega_1, audino_mega_1, slowbro_mega_2, mew_2, shedinja_1, altaria_mega_2, cresselia_1, victini_2, tapu_fini_2, illumise_1, sawk_1, manaphy_1, krookodile_1, heracross_mega_1, deoxys_s_1, crustle_1, blaziken_mega_1, blastoise_mega_1, zeraora_1, victini_1, charizard_mega_x_2, necrozma_1, mawile_mega_1, celesteela_1, aggron_mega_1, venusaur_mega_1, primarina_1, gyarados_mega, gyarados_mega_2, magearna_1, slowbro_mega_1, zygarde_complete_1, landorus_therian_1, metagross_mega_1, metagross_mega_2, tapu_lele_1, mew_1, meloetta_1, altaria_mega_1, donphan_1, clefable_1, porygonz_2, stunfisk_1, necrozma_2, meloetta_2, magnezone_2]
  354. #for all Heatran sets
  355. heatran_1.lmatchups = [gyarados_mega_5, greninja_4, venusaur_mega_2, dragonite_4, dragonite_3, gallade_mega_1, carracosta_1, swampert_mega_1, deoxys_s_2, hoopau_2, haxorus_2, araquanid_1, pyukumuku_1, porygon2_1, zapdos_1, rotom_wash_1, pheromosa_3, pheromosa_2, pheromosa_1, umbreon_1, mienshao_1, terrakion_1, gyarados_mega_4, latias_mega_1, audino_mega_1, slowbro_mega_2, raikou_1, mew_2, aron_1, smeargle_1, cresselia_1, kartana_2, blacephalon_1, xurkitree_1, tapu_fini_2, greninja_3, greninja_2, sawk_1, medicham_mega_1, manaphy_1, kyurem_1, krookodile_1, hoopau_1, magnezone_1, durant_1, crustle_1, blaziken_mega_1, blastoise_mega_1, archeops_1, zeraora_1, sableye_mega_1, garchomp_1, chansey_1, tyranitar_mega_1, primarina_1, tapu_fini_1, kommoo_1, meloetta_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, dragonite_1, porygonz_1, slowbro_mega_1, zygarde_complete_1, greninja_1, jumpluff_1, landorus_therian_1, lopunny_mega_1, stunfisk_1, vivillon_1, weavile_2, porygonz_3, infernape_1, zeraora_2, necrozma_2, type_null_1]
  356. heatran_2.lmatchups = [landorus_therian_2, gyarados_mega_5, greninja_4, venusaur_mega_2, dragonite_4, dragonite_3, gallade_mega_1, carracosta_1, avalugg_1, deoxys_s_2, donphan_2, salamence_1, hoopau_2, haxorus_2, araquanid_1, porygon2_1, zapdos_1, pheromosa_3, pheromosa_2, pheromosa_1, rampardos_2, umbreon_1, garchomp_2, mienshao_1, terrakion_1, excadrill_1, darmanitan_1, gyarados_mega_4, latias_mega_1, audino_mega_1, raikou_1, mew_2, riolu_1, altaria_mega_2, aron_1, smeargle_1, cresselia_1, kartana_2, blacephalon_1, xurkitree_1, gyarados_mega, gyarados_mega_2, gyarados_mega_2, gyarados_mega_3, metagross_mega_2, metagross_mega_1, dragonite_1, manaphy_1, kommoo_1, landorus_therian_1, jumpluff_1, greninja_3, greninja_2, greninja_1, medicham_mega_1, zygarde_complete_1, tapu_lele_1, donphan_1, magnezone_1, lopunny_mega_1, heatran_1, garchomp_1, chansey_1, aggron_mega_1, venusaur_mega_1, tyranitar_mega_1, archeops_1, zeraora_1, sableye_mega_1, pinser_mega_1, haxorus_1, golem_1, durant_1, diancie_mega_1, sawk_1, crustle_1, blaziken_mega_1, clefable_1, vivillon_1, gyarados_mega_4, weavile_2, porygonz_3, infernape_1, zeraora_2, necrozma_2, type_null_1]
  357. #for all Garchomp sets
  358. garchomp_1.lmatchups = [togekiss_2, celesteela_2, landorus_therian_2, gyarados_mega_5, greninja_4, krookodile_1, dragonite_4, dragonite_3, gallade_mega_1, avalugg_1, donphan_2, salamence_1, pyukumuku_1, porygon2_1, rotom_wash_1, pheromosa_3, pheromosa_2, pheromosa_1, rampardos_1, garchomp_2, whimsicott_1, gyarados_mega_4, latias_mega_1, slowbro_mega_2, altaria_mega_2, genesect_2, cresselia_1, greninja_3, greninja_2, dragonite_2, illumise_1, sawk_1, kyurem_1, genesect_1, heracross_mega_1, haxorus_1, diancie_mega_1, deoxys_s_1, blastoise_mega_1, sableye_mega_1, kartana_1, celesteela_1, naganadel_1, primarina_1, kommoo_1, donphan_1, altaria_mega_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, dragonite_1, slowbro_mega_1, zygarde_complete_1, greninja_1, jumpluff_1, landorus_therian_1, lopunny_mega_1, clefable_1, porygonz_2, weavile_1, weavile_2, type_null_1, meloetta_2]
  359. garchomp_2.lmatchups = [togekiss_2, togekiss_1, celesteela_2, scizor_mega_1, landorus_therian_2, gyarados_mega_5, venusaur_mega_2, dragonite_4, dragonite_3, avalugg_1, swampert_mega_1, deoxys_s_2, donphan_2, salamence_1, araquanid_1, pyukumuku_1, porygon2_1, pheromosa_1, vigoroth_1, umbreon_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, gyarados_mega_4, kyurem_1, magearna_1, magearna_2, dragonite_2, genesect_1, genesect_2, landorus_therian_1, medicham_mega_1, zygarde_complete_1, slowbro_mega_2, slowbro_mega_1, tapu_lele_1, porygonz_1, porygonz_2, gardevoir_mega_1, donphan_1, audino_mega_1, altaria_mega_2, altaria_mega_1, aegislash_1, meloetta_1, mew_2, lopunny_mega_1, heatran_1, ferrothorn_1, chansey_1, celesteela_1, aggron_mega_1, venusaur_mega_1, tapu_fini_1, tapu_fini_2, primarina_1, blastoise_mega_1, sableye_mega_1, necrozma_1, kartana_1, krookodile_1, hoopau_1, cresselia_1, clefable_1, illumise_1, porygonz_3, necrozma_2, type_null_1, meloetta_2]
  360. #for all Ferrothorn sets
  361. ferrothorn_1.lmatchups = [mew_2, celesteela_2, scizor_mega_1, landorus_therian_2, greninja_4, venusaur_mega_2, dragonite_4, gallade_mega_1, donphan_2, volcarona_2, salamence_1, hoopau_2, zapdos_1, pheromosa_3, pheromosa_2, pheromosa_1, rampardos_1, mienshao_1, magearna_2, darmanitan_1, salazzle_1, latias_mega_1, audino_mega_1, raikou_1, altaria_mega_2, genesect_2, smeargle_1, kartana_2, blacephalon_1, xurkitree_1, heatran_2, victini_2, dragonite_2, medicham_mega_1, kyurem_1, incineroar_1, hoopau_1, heracross_mega_1, durant_1, blaziken_mega_1, victini_1, sableye_mega_1, genesect_1, pinser_mega_1, necrozma_1, kartana_1, heatran_1, garchomp_1, celesteela_1, kommoo_1, naganadel_1, aegislash_1, altaria_mega_1, magnezone_1, charizard_mega_x, charizard_mega_x_2, charizard_mega_y, charizard_mega_y_2, magearna_1, slowbro_mega_1, zygarde_complete_1, landorus_therian_1, mew_1, volcarona_1, vivillon_1, porygonz_3, charizard_mega_x_3, infernape_1, necrozma_2, type_null_1, magnezone_2]
  362. #for all Chansey sets
  363. chansey_1.lmatchups = [celesteela_2, scizor_mega_1, venusaur_mega_2, dragonite_3, gallade_mega_1, carracosta_1, haxorus_2, araquanid_1, pyukumuku_1, zapdos_1, pheromosa_2, vigoroth_1, mienshao_1, terrakion_1, excadrill_1, whimsicott_1, gyarados_mega_4, audino_mega_1, raikou_1, mew_2, aron_1, smeargle_1, kartana_2, xurkitree_1, sawk_1, medicham_mega_1, manaphy_1, krookodile_1, heracross_mega_1, durant_1, blaziken_mega_1, zeraora_1, meloetta_1, sableye_mega_1, pinser_mega_1, mawile_mega_1, kartana_1, garchomp_1, ferrothorn_1, magearna_1, tapu_lele_1, zygarde_complete_1, jumpluff_1, lopunny_mega_1, magnezone_1, kommoo_1, tapu_fini_1, tyranitar_mega_1, vivillon_1, weavile_1, charizard_mega_x_3, necrozma_2, type_null_1, magnezone_2]
  364. #for all Celesteela sets
  365. celesteela_1.lmatchups = [celesteela_2, greninja_4, venusaur_mega_2, carracosta_1, volcarona_2, salamence_1, hoopau_2, pyukumuku_1, zapdos_1, rotom_wash_1, vigoroth_1, magearna_2, whimsicott_1, darmanitan_1, gyarados_mega_4, salazzle_1, audino_mega_1, slowbro_mega_2, raikou_1, mew_2, smeargle_1, cresselia_1, blacephalon_1, xurkitree_1, heatran_2, victini_2, greninja_2, manaphy_1, incineroar_1, hoopau_1, deoxys_s_1, blaziken_mega_1, blastoise_mega_1, zeraora_1, victini_1, sableye_mega_1, necrozma_1, heatran_1, tapu_fini_1, primarina_1, naganadel_1, kommoo_1, genesect_1, altaria_mega_1, magnezone_1, mew_1, charizard_mega_x, charizard_mega_x_2, charizard_mega_y, charizard_mega_y_2, magearna_1, porygonz_1, slowbro_mega_1, zygarde_complete_1, greninja_1, jumpluff_1, landorus_therian_1, volcarona_1, stunfisk_1, vivillon_1, porygonz_3, charizard_mega_x_3, infernape_1, necrozma_2, type_null_1, magnezone_2]
  366. celesteela_2.lmatchups = [umbreon_1, naganadel_1, dragonite_2, charizard_mega_y, charizard_mega_y_2, charizard_mega_x, charizard_mega_x_2, manaphy_1, kommoo_1, genesect_1, landorus_therian_1, jumpluff_1, greninja_2, medicham_mega_1, zygarde_complete_1, magnezone_1, meloetta_1, mew_1, mew_2, heatran_1, heatran_2, smeargle_1, tapu_fini_1, tapu_fini_2, blastoise_mega_1, zeraora_1, volcarona_1, victini_1, victini_2, sableye_mega_1, necrozma_1, blacephalon_1, raikou_1, incineroar_1, hoopau_1, heracross_mega_1, deoxys_s_1, crustle_1, xurkitree_1, blaziken_mega_1, stunfisk_1, vivillon_1, salazzle_1, darmanitan_1, whimsicott_1, magearna_2, rotom_wash_1, zapdos_1, hoopau_2, volcarona_2, araquanid_1, carracosta_1, dragonite_4, greninja_4, charizard_mega_x_3, infernape_1, zeraora_2, magnezone_2]
  367. #for all Aggron-Mega sets
  368. aggron_mega_1.lmatchups = [togekiss_2, celesteela_2, scizor_mega_1, gyarados_mega_5, venusaur_mega_2, dragonite_4, gallade_mega_1, carracosta_1, swampert_mega_1, deoxys_s_2, donphan_2, salamence_1, pyukumuku_1, zapdos_1, rotom_wash_1, pheromosa_1, vigoroth_1, umbreon_1, whimsicott_1, gyarados_mega_4, salazzle_1, latias_mega_1, audino_mega_1, slowbro_mega_2, mew_2, altaria_mega_2, aron_1, smeargle_1, cresselia_1, xurkitree_1, victini_2, tapu_fini_2, greninja_3, illumise_1, medicham_mega_1, kyurem_1, krookodile_1, incineroar_1, hoopau_1, blastoise_mega_1, sableye_mega_1, heatran_1, garchomp_1, ferrothorn_1, chansey_1, celesteela_1, venusaur_mega_1, primarina_1, kommoo_1, donphan_1, altaria_mega_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, magearna_1, porygonz_1, slowbro_mega_1, zygarde_complete_1, jumpluff_1, landorus_therian_1, mew_1, magnezone_1, donphan_1, vivillon_1, porygonz_3, infernape_1, necrozma_2, type_null_1, magnezone_2]
  369. #for all Venusaur-Mega sets
  370. venusaur_mega_1.lmatchups = [celesteela_2, scizor_mega_1, venusaur_mega_2, dragonite_4, dragonite_3, deoxys_s_2, volcarona_2, hoopau_2, magearna_2, audino_mega_1, mew_2, shedinja_1, genesect_2, cresselia_1, kartana_2, blacephalon_1, xurkitree_1, victini_2, dragonite_2, medicham_mega_1, kyurem_1, hoopau_1, durant_1, deoxys_s_1, archeops_1, victini_1, sableye_mega_1, pinser_mega_1, necrozma_1, mawile_mega_1, kartana_1, heatran_1, garchomp_1, chansey_1, celesteela_1, kommoo_1, genesect_1, charizard_mega_y, charizard_mega_y_2, dragonite_1, magearna_1, metagross_mega_1, metagross_mega_2, porygonz_1, tapu_lele_1, zygarde_complete_1, mew_1, meloetta_1, aegislash_1, gardevoir_mega_1, volcarona_1, magnezone_1, vivillon_1, porygonz_3, infernape_1, necrozma_2, type_null_1, meloetta_2, magnezone_2]
  371. venusaur_mega_2.lmatchups = [celesteela_2, aron_1, krookodile_1, kartana_1, kyurem_1, metagross_mega_2, magearna_1, dragonite_2, charizard_mega_y, charizard_mega_y_2, manaphy_1, kommoo_1, medicham_mega_1, zygarde_complete_1, slowbro_mega_2, tapu_lele_1, porygonz_1, gardevoir_mega_1, audino_mega_1, aegislash_1, magnezone_1, meloetta_1, mew_1, mew_2, garchomp_1, smeargle_1, tyranitar_mega_1, latias_mega_1, archeops_1, volcarona_1, victini_2, sableye_mega_1, pinser_mega_1, necrozma_1, blacephalon_1, raikou_1, hoopau_1, deoxys_s_1, cresselia_1, vivillon_1, salazzle_1, excadrill_1, terrakion_1, zapdos_1, hoopau_2, volcarona_2, pyukumuku_1, deoxys_s_2, porygonz_3, infernape_1, necrozma_2, type_null_1, meloetta_2, magnezone_2]
  372. #for all Smeargle sets
  373. smeargle_1.lmatchups = [landorus_therian_2, greninja_4, gallade_mega_1, deoxys_s_2, salamence_1, haxorus_2, pheromosa_3, pheromosa_2, pheromosa_1, rampardos_2, rampardos_1, garchomp_2, mienshao_1, terrakion_1, excadrill_1, whimsicott_1, darmanitan_1, salazzle_1, latias_mega_1, raikou_1, mew_2, riolu_1, naganadel_1, metagross_mega_1, metagross_mega_2, charizard_mega_x, charizard_mega_y, charizard_mega_y_2, manaphy_1, jumpluff_1, greninja_1, greninja_2, greninja_3, medicham_mega_1, porygonz_1, porygonz_2, gardevoir_mega_1, lopunny_mega_1, garchomp_1, tapu_fini_1, archeops_1, zeraora_1, volcarona_1, sableye_mega_1, pinser_mega_1, kartana_1, kartana_2, haxorus_1, durant_1, diancie_mega_1, deoxys_s_1, sawk_1, blaziken_mega_1, blacephalon_1, genesect_2, weavile_1, weavile_2, porygonz_3, charizard_mega_x_3, infernape_1, zeraora_2, meloetta_2]
  374. #for all Tyranitar-Mega sets
  375. tyranitar_mega_1.lmatchups = [togekiss_2, celesteela_2, scizor_mega_1, landorus_therian_2, gyarados_mega_5, gallade_mega_1, swampert_mega_1, donphan_2, haxorus_2, rotom_wash_1, pheromosa_3, pheromosa_2, pheromosa_1, rampardos_2, rampardos_1, vigoroth_1, garchomp_2, mienshao_1, terrakion_1, excadrill_1, darmanitan_1, gyarados_mega_4, latias_mega_1, slowbro_mega_2, altaria_mega_2, genesect_2, aron_1, smeargle_1, kartana_2, greninja_3, greninja_2, sawk_1, medicham_mega_1, manaphy_1, krookodile_1, heracross_mega_1, durant_1, blaziken_mega_1, blastoise_mega_1, sableye_mega_1, mawile_mega_1, kartana_1, garchomp_1, ferrothorn_1, celesteela_1, aggron_mega_1, primarina_1, tapu_fini_1, kommoo_1, genesect_1, gardevoir_mega_1, donphan_1, altaria_mega_1, lopunny_mega_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, magearna_1, metagross_mega_1, metagross_mega_2, tapu_lele_1, slowbro_mega_1, zygarde_complete_1, landorus_therian_1, volcarona_1, clefable_1, stunfisk_1, weavile_2, infernape_1, type_null_1]
  376. #for all Latias-Mega sets
  377. latias_mega_1.lmatchups = [togekiss_2, togekiss_1, celesteela_2, scizor_mega_1, dragonite_4, dragonite_3, deoxys_s_2, volcarona_2, hoopau_2, araquanid_1, pyukumuku_1, porygon2_1, pheromosa_3, umbreon_1, magearna_2, terrakion_1, excadrill_1, whimsicott_1, gyarados_mega_4, altaria_mega_2, mew_2, raikou_1, shedinja_1, slowbro_mega_2, blacephalon_1, cresselia_1, tapu_fini_2, clefable_1, dragonite_2, illumise_1, haxorus_1, durant_1, diancie_mega_1, hoopau_1, volcarona_1, sableye_mega_1, pinser_mega_1, necrozma_1, mawile_mega_1, archeops_1, venusaur_mega_1, tapu_fini_1, primarina_1, gyarados_mega_3, chansey_1, celesteela_1, naganadel_1, altaria_mega_1, aegislash_1, magnezone_1, meloetta_1, gardevoir_mega_1, metagross_mega_1, metagross_mega_2, magearna_1, jumpluff_1, slowbro_mega_1, tapu_lele_1, porygonz_1, audino_mega_1, weavile_1, weavile_2, porygonz_3, zeraora_2, necrozma_2, type_null_1, meloetta_2, magnezone_2]
  378. #for all Tapu Fini sets
  379. tapu_fini_1.lmatchups = [venusaur_mega_2, deoxys_s_2, donphan_2, hoopau_2, araquanid_1, zapdos_1, rotom_wash_1, terrakion_1, excadrill_1, salazzle_1, slowbro_mega_2, raikou_1, mew_2, shedinja_1, genesect_2, kartana_2, blacephalon_1, xurkitree_1, heatran_2, kyurem_1, deoxys_s_1, zeraora_1, victini_1, pinser_mega_1, kartana_1, garchomp_1, ferrothorn_1, venusaur_mega_1, charizard_mega_y, charizard_mega_y_2, metagross_mega_1, porygonz_1, tapu_lele_1, slowbro_mega_1, mew_1, magnezone_1, altaria_mega_1, gardevoir_mega_1, genesect_1, naganadel_1, porygonz_2, porygonz_3, charizard_mega_x_3, zeraora_2, meloetta_2, magnezone_2]
  380. tapu_fini_2.lmatchups = [venusaur_mega_2, donphan_2, hoopau_2, araquanid_1, pyukumuku_1, zapdos_1, rotom_wash_1, whimsicott_1, salazzle_1, audino_mega_1, slowbro_mega_2, raikou_1, mew_2, shedinja_1, riolu_1, genesect_2, aron_1, kartana_2, xurkitree_1, heatran_2, naganadel_1, metagross_mega_1, metagross_mega_2, magearna_1, dragonite_1, genesect_1, jumpluff_1, slowbro_mega_1, tapu_lele_1, porygonz_1, porygonz_2, gardevoir_mega_1, magnezone_1, meloetta_1, mew_1, garchomp_1, ferrothorn_1, chansey_1, celesteela_1, venusaur_mega_1, tapu_fini_1, zeraora_1, pinser_mega_1, necrozma_1, kartana_1, hoopau_1, heracross_mega_1, crustle_1, clefable_1, porygonz_3, zeraora_2, necrozma_2, type_null_1, meloetta_2, magnezone_2]
  381. #for all Primarina sets
  382. primarina_1.lmatchups = [togekiss_2, togekiss_1, celesteela_2, venusaur_mega_2, swampert_mega_1, deoxys_s_2, donphan_2, hoopau_2, pyukumuku_1, porygon2_1, zapdos_1, rotom_wash_1, magearna_2, whimsicott_1, salazzle_1, raikou_1, mew_2, shedinja_1, smeargle_1, cresselia_1, kartana_2, xurkitree_1, heatran_2, tapu_fini_2, manaphy_1, kyurem_1, hoopau_1, heracross_mega_1, zeraora_1, necrozma_1, kartana_1, ferrothorn_1, chansey_1, venusaur_mega_1, tapu_fini_1, dragonite_1, magearna_1, metagross_mega_1, metagross_mega_2, porygonz_1, tapu_lele_1, greninja_1, jumpluff_1, mew_1, meloetta_1, gardevoir_mega_1, genesect_1, naganadel_1, clefable_1, magnezone_1, porygonz_3, zeraora_2, necrozma_2, type_null_1, meloetta_2, magnezone_2]
  383. #for all Blastoise-Mega sets
  384. blastoise_mega_1.lmatchups = [togekiss_2, togekiss_1, gyarados_mega_5, venusaur_mega_2, gallade_mega_1, swampert_mega_1, deoxys_s_2, volcarona_2, hoopau_2, araquanid_1, pyukumuku_1, porygon2_1, zapdos_1, rotom_wash_1, umbreon_1, magearna_2, whimsicott_1, gyarados_mega_4, latias_mega_1, audino_mega_1, raikou_1, mew_2, smeargle_1, kartana_2, xurkitree_1, heatran_2, tapu_fini_2, medicham_mega_1, manaphy_1, kyurem_1, hoopau_1, heracross_mega_1, archeops_1, volcarona_1, zeraora_1, sableye_mega_1, necrozma_1, kartana_1, chansey_1, ferrothorn_1, venusaur_mega_1, primarina_1, tapu_fini_1, kommoo_1, gardevoir_mega_1, aegislash_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, charizard_mega_x_2, magearna_1, metagross_mega_1, porygonz_1, tapu_lele_1, greninja_1, mew_1, meloetta_1, magnezone_1, clefable_1, vivillon_1, porygonz_3, zeraora_2, necrozma_2, type_null_1, meloetta_2, magnezone_2]
  385. #for all Archeops sets
  386. archeops_1.lmatchups = [celesteela_2, scizor_mega_1, landorus_therian_2, gyarados_mega_5, greninja_4, carracosta_1, avalugg_1, swampert_mega_1, deoxys_s_2, donphan_2, porygon2_1, pheromosa_3, pheromosa_2, pheromosa_1, rampardos_2, rampardos_1, vigoroth_1, umbreon_1, garchomp_2, magearna_2, darmanitan_1, gyarados_mega_4, slowbro_mega_2, raikou_1, altaria_mega_2, genesect_2, aron_1, cresselia_1, kartana_2, tapu_fini_2, greninja_3, greninja_2, illumise_1, sawk_1, krookodile_1, haxorus_1, golem_1, crustle_1, deoxys_s_1, blaziken_mega_1, zeraora_1, kartana_1, mawile_mega_1, ferrothorn_1, garchomp_1, aggron_mega_1, celesteela_1, chansey_1, naganadel_1, tapu_fini_1, tyranitar_mega_1, magnezone_1, aegislash_1, donphan_1, landorus_therian_1, lopunny_mega_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, magearna_1, metagross_mega_1, metagross_mega_2, slowbro_mega_1, zygarde_complete_1, greninja_1, porygonz_2, stunfisk_1, weavile_1, weavile_2, zeraora_2, type_null_1, magnezone_2]
  387. #for all Zeraora sets
  388. zeraora_1.lmatchups = [landorus_therian_2, gardevoir_mega_1, venusaur_mega_2, dragonite_4, dragonite_3, carracosta_1, avalugg_1, swampert_mega_1, deoxys_s_2, donphan_2, salamence_1, haxorus_2, pheromosa_3, pheromosa_2, garchomp_2, excadrill_1, whimsicott_1, latias_mega_1, shedinja_1, altaria_mega_2, aron_1, kartana_2, victini_2, dragonite_2, illumise_1, kyurem_1, krookodile_1, incineroar_1, haxorus_1, golem_1, deoxys_s_1, mawile_mega_1, necrozma_1, kartana_1, ferrothorn_1, garchomp_1, aggron_mega_1, tyranitar_mega_1, venusaur_mega_1, kommoo_1, charizard_mega_x, charizard_mega_x_2, dragonite_1, donphan_1, metagross_mega_1, metagross_mega_2, tapu_lele_1, zygarde_complete_1, landorus_therian_1, aegislash_1, altaria_mega_1, clefable_1, stunfisk_1, charizard_mega_x_3, zeraora_2]
  389. zeraora_2.lmatchups = [kyurem_1, magearna_1, dragonite_1, dragonite_3, charizard_mega_x, charizard_mega_x_2, charizard_mega_x_3, landorus_therian_1, landorus_therian_2, zygarde_complete_1, porygonz_2, gardevoir_mega_1, donphan_1, donphan_2, audino_mega_1, altaria_mega_1, altaria_mega_2, aegislash_1, mew_2, lopunny_mega_1, garchomp_1, garchomp_2, ferrothorn_1, chansey_1, aggron_mega_1, venusaur_mega_1, venusaur_mega_2, tyranitar_mega_1, victini_1, sableye_mega_1, mawile_mega_1, kartana_1, kartana_2, krookodile_1, incineroar_1, golem_1, deoxys_s_1, deoxys_s_2, clefable_1, stunfisk_1, illumise_1, shedinja_1, whimsicott_1, excadrill_1, umbreon_1, vigoroth_1, pheromosa_2, pheromosa_3, salamence_1, swampert_mega_1, avalugg_1, gallade_mega_1, scizor_mega_1, necrozma_2, type_null_1]
  390. #for all Volcarona sets
  391. volcarona_1.lmatchups = [togekiss_1, landorus_therian_2, gyarados_mega_5, greninja_4, dragonite_4, dragonite_3, gallade_mega_1, carracosta_1, donphan_2, volcarona_2, salamence_1, araquanid_1, pyukumuku_1, pheromosa_3, pheromosa_2, rampardos_2, rampardos_1, garchomp_2, mienshao_1, terrakion_1, darmanitan_1, gyarados_mega_4, salazzle_1, audino_mega_1, riolu_1, altaria_mega_2, aron_1, kartana_2, blacephalon_1, heatran_2, victini_2, tapu_fini_2, greninja_3, greninja_2, dragonite_2, sawk_1, medicham_mega_1, kyurem_1, haxorus_1, golem_1, durant_1, diancie_mega_1, crustle_1, blaziken_mega_1, archeops_1, zeraora_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, charizard_mega_x, charizard_mega_x_2, charizard_mega_y, charizard_mega_y_2, dragonite_1, zygarde_complete_1, greninja_1, landorus_therian_1, lopunny_mega_1, donphan_1, kommoo_1, naganadel_1, primarina_1, tapu_fini_1, aggron_mega_1, chansey_1, garchomp_1, heatran_1, pinser_mega_1, clefable_1, porygonz_2, weavile_1, charizard_mega_x_3, zeraora_2]
  392. volcarona_2.lmatchups = [landorus_therian_2, gyarados_mega_5, greninja_4, greninja_3, araquanid_1, tyranitar_mega_1, aron_1, gardevoir_mega_1, tapu_lele_1, dragonite_3, gallade_mega_1, carracosta_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, gyarados_mega_4, kyurem_1, dragonite_1, dragonite_2, charizard_mega_x, charizard_mega_x_2, manaphy_1, landorus_therian_1, greninja_1, medicham_mega_1, donphan_1, audino_mega_1, lopunny_mega_1, heatran_1, heatran_2, garchomp_1, aggron_mega_1, smeargle_1, tapu_fini_1, primarina_1, archeops_1, zeraora_1, victini_1, pinser_mega_1, blacephalon_1, mawile_mega_1, raikou_1, kartana_2, incineroar_1, heracross_mega_1, haxorus_1, golem_1, durant_1, diancie_mega_1, sawk_1, crustle_1, blaziken_mega_1, clefable_1, vivillon_1, darmanitan_1, excadrill_1, terrakion_1, mienshao_1, garchomp_2, rampardos_1, rampardos_2, pheromosa_2, pheromosa_3, zapdos_1, haxorus_2, salamence_1, pyukumuku_1, weavile_1, charizard_mega_x_3, zeraora_2, necrozma_2, type_null_1]
  393. #for all Riolu sets
  394. riolu_1.lmatchups = [togekiss_2, togekiss_1, celesteela_2, scizor_mega_1, landorus_therian_2, gyarados_mega_5, venusaur_mega_2, dragonite_4, dragonite_3, carracosta_1, avalugg_1, swampert_mega_1, deoxys_s_2, donphan_2, volcarona_2, salamence_1, haxorus_2, araquanid_1, pyukumuku_1, zapdos_1, rotom_wash_1, vigoroth_1, garchomp_2, mienshao_1, terrakion_1, excadrill_1, whimsicott_1, darmanitan_1, latias_mega_1, audino_mega_1, venusaur_mega_1, porygonz_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, gyarados_mega_4, kyurem_1, metagross_mega_1, metagross_mega_2, dragonite_1, dragonite_2, charizard_mega_x, charizard_mega_x_2, charizard_mega_y, charizard_mega_y_2, kommoo_1, landorus_therian_1, jumpluff_1, zygarde_complete_1, slowbro_mega_1, slowbro_mega_2, tapu_lele_1, gardevoir_mega_1, donphan_1, altaria_mega_2, altaria_mega_1, aegislash_1, mew_1, lopunny_mega_1, heatran_1, garchomp_1, ferrothorn_1, chansey_1, celesteela_1, aggron_mega_1, tyranitar_mega_1, tapu_fini_1, primarina_1, blastoise_mega_1, archeops_1, zeraora_1, sableye_mega_1, pinser_mega_1, mawile_mega_1, krookodile_1, incineroar_1, haxorus_1, golem_1, diancie_mega_1, crustle_1, clefable_1, illumise_1, greninja_2, blacephalon_1, cresselia_1, vivillon_1, medicham_mega_1, weavile_1, weavile_2, porygonz_3, charizard_mega_x_3, zeraora_2, necrozma_2, type_null_1]
  395. #for all Victini sets
  396. victini_1.lmatchups = [togekiss_2, landorus_therian_2, gyarados_mega_5, greninja_4, venusaur_mega_2, dragonite_4, dragonite_3, carracosta_1, avalugg_1, swampert_mega_1, deoxys_s_2, donphan_2, salamence_1, haxorus_2, porygon2_1, zapdos_1, rampardos_2, rampardos_1, vigoroth_1, umbreon_1, garchomp_2, mienshao_1, terrakion_1, excadrill_1, darmanitan_1, gyarados_mega_4, latias_mega_1, slowbro_mega_2, riolu_1, altaria_mega_2, aron_1, smeargle_1, blacephalon_1, tapu_fini_2, greninja_3, greninja_2, dragonite_2, sawk_1, manaphy_1, kyurem_1, krookodile_1, incineroar_1, haxorus_1, golem_1, durant_1, diancie_mega_1, crustle_1, archeops_1, zeraora_1, garchomp_1, heatran_1, tyranitar_mega_1, aggron_mega_1, kommoo_1, aegislash_1, altaria_mega_1, donphan_1, landorus_therian_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, charizard_mega_x, charizard_mega_x_2, dragonite_1, porygonz_1, slowbro_mega_1, zygarde_complete_1, greninja_1, stunfisk_1, weavile_1, weavile_2, porygonz_3, charizard_mega_x_3, necrozma_2, type_null_1, meloetta_2]
  397. victini_2.lmatchups = [togekiss_2, togekiss_1, landorus_therian_2, gyarados_mega_5, greninja_4, swampert_mega_1, zygarde_complete_1, dragonite_4, dragonite_3, carracosta_1, swampert_mega_1, deoxys_s_2, volcarona_2, hoopau_2, araquanid_1, pyukumuku_1, porygon2_1, zapdos_1, rampardos_2, rampardos_1, umbreon_1, garchomp_2, mienshao_1, terrakion_1, excadrill_1, gyarados_mega_4, latias_mega_1, audino_mega_1, slowbro_mega_2, raikou_1, mew_2, riolu_1, smeargle_1, cresselia_1, blacephalon_1, heatran_2, stunfisk_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, kyurem_1, charizard_mega_x_2, manaphy_1, jumpluff_1, greninja_1, slowbro_mega_1, porygonz_1, porygonz_2, aegislash_1, magnezone_1, meloetta_1, heatran_1, garchomp_1, chansey_1, tyranitar_mega_1, tapu_lele_1, primarina_1, blastoise_mega_1, archeops_1, victini_1, sableye_mega_1, necrozma_1, incineroar_1, hoopau_1, golem_1, diancie_mega_1, crustle_1, clefable_1, greninja_2, greninja_3, tapu_fini_2, vivillon_1, weavile_1, porygonz_3, zeraora_2, necrozma_2, type_null_1, meloetta_2]
  398. #for all Sableye-Mega sets
  399. sableye_mega_1.lmatchups = [togekiss_2, scizor_mega_1, carracosta_1, volcarona_2, hoopau_2, haxorus_2, pheromosa_3, magearna_2, terrakion_1, gyarados_mega_4, audino_mega_1, slowbro_mega_2, raikou_1, altaria_mega_2, xurkitree_1, tapu_fini_2, manaphy_1, incineroar_1, hoopau_1, diancie_mega_1, blaziken_mega_1, zeraora_1, victini_1, mawile_mega_1, primarina_1, tapu_fini_1, kommoo_1, gardevoir_mega_1, charizard_mega_x, charizard_mega_x_2, charizard_mega_y, charizard_mega_y_2, magearna_1, tapu_lele_1, slowbro_mega_1, zygarde_complete_1, lopunny_mega_1, volcarona_1, clefable_1, charizard_mega_x_3, type_null_1]
  400. #for all Pinsir-Mega sets
  401. pinser_mega_1.lmatchups = [togekiss_2, celesteela_2, landorus_therian_2, greninja_4, dragonite_4, dragonite_3, carracosta_1, avalugg_1, deoxys_s_2, salamence_1, porygon2_1, zapdos_1, rotom_wash_1, rampardos_2, rampardos_1, umbreon_1, garchomp_2, mienshao_1, magearna_2, terrakion_1, whimsicott_1, darmanitan_1, salazzle_1, slowbro_mega_2, raikou_1, altaria_mega_2, genesect_2, aron_1, cresselia_1, blacephalon_1, xurkitree_1, victini_2, greninja_3, dragonite_2, sawk_1, manaphy_1, incineroar_1, golem_1, durant_1, diancie_mega_1, deoxys_s_1, crustle_1, blastoise_mega_1, archeops_1, zeraora_1, mawile_mega_1, necrozma_1, heatran_1, aggron_mega_1, celesteela_1, tyranitar_mega_1, naganadel_1, primarina_1, genesect_1, meloetta_1, magnezone_1, aegislash_1, altaria_mega_1, donphan_1, mew_1, charizard_mega_x_2, dragonite_1, magearna_1, metagross_mega_1, metagross_mega_2, slowbro_mega_1, zygarde_complete_1, greninja_1, jumpluff_1, landorus_therian_1, lopunny_mega_1, clefable_1, porygonz_2, stunfisk_1, weavile_1, weavile_2, infernape_1, zeraora_2, type_null_1, meloetta_2]
  402. #for all Necrozma sets
  403. necrozma_1.lmatchups = [togekiss_1, gyarados_mega_5, dragonite_4, dragonite_3, deoxys_s_2, volcarona_2, hoopau_2, pyukumuku_1, porygon2_1, rotom_wash_1, umbreon_1, gyarados_mega_4, audino_mega_1, slowbro_mega_2, raikou_1, mew_2, riolu_1, smeargle_1, cresselia_1, blacephalon_1, heatran_2, greninja_2, manaphy_1, kyurem_1, incineroar_1, victini_1, sableye_mega_1, heatran_1, chansey_1, aggron_mega_1, tapu_fini_1, genesect_1, gardevoir_mega_1, charizard_mega_x_2, charizard_mega_y, charizard_mega_y_2, dragonite_1, magearna_1, porygonz_1, tapu_lele_1, jumpluff_1, meloetta_1, magnezone_1, aegislash_1, volcarona_1, clefable_1, vivillon_1, weavile_1, porygonz_3, infernape_1, necrozma_2, type_null_1, meloetta_2, magnezone_2]
  404. necrozma_2.lmatchups = [gyarados_mega, gyarados_mega_2, gyarados_mega_3, gyarados_mega_4, gyarados_mega_5, kyurem_1, charizard_mega_x_3, manaphy_1, kommoo_1, jumpluff_1, greninja_2, aegislash_1, magnezone_1, meloetta_1, aron_1, mew_2, garchomp_1, celesteela_2, smeargle_1, tyranitar_mega_1, tapu_fini_1, zeraora_1, volcarona_1, sableye_mega_1, pinser_mega_1, blacephalon_1, raikou_1, kartana_2, krookodile_1, incineroar_1, hoopau_1, hoopau_2, xurkitree_1, illumise_1, vivillon_1, shedinja_1, darmanitan_1, whimsicott_1, excadrill_1, terrakion_1, umbreon_1, vigoroth_1, zapdos_1, pyukumuku_1, araquanid_1, carracosta_1, weavile_1, weavile_2, meloetta_2, magnezone_2]
  405. #for all Blacephalon sets
  406. blacephalon_1.lmatchups = [togekiss_1, landorus_therian_2, gyarados_mega_5, greninja_4, dragonite_4, dragonite_3, carracosta_1, avalugg_1, swampert_mega_1, deoxys_s_2, donphan_2, hoopau_2, araquanid_1, porygon2_1, zapdos_1, rotom_wash_1, pheromosa_3, rampardos_2, rampardos_1, vigoroth_1, umbreon_1, garchomp_2, terrakion_1, darmanitan_1, gyarados_mega_4, raikou_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, porygonz_2, magnezone_1, kartana_1, kyurem_1, naganadel_1, dragonite_2, charizard_mega_x_2, kommoo_1, manaphy_1, landorus_therian_1, greninja_1, zygarde_complete_1, donphan_1, meloetta_1, lopunny_mega_1, aggron_mega_1, tyranitar_mega_1, primarina_1, blastoise_mega_1, archeops_1, zeraora_1, sableye_mega_1, mawile_mega_1, krookodile_1, incineroar_1, hoopau_1, haxorus_1, golem_1, diancie_mega_1, deoxys_s_1, sawk_1, crustle_1, blaziken_mega_1, dragonite_2, greninja_2, greninja_3, tapu_fini_2, stunfisk_1, dragonite_1, weavile_1, weavile_2, zeraora_2, magnezone_2]
  407. #for all Mawile-Mega sets
  408. mawile_mega_1.lmatchups = [celesteela_2, scizor_mega_1, landorus_therian_2, greninja_4, venusaur_mega_2, swampert_mega_1, donphan_2, zapdos_1, rotom_wash_1, pheromosa_3, vigoroth_1, magearna_2, excadrill_1, salazzle_1, shedinja_1, genesect_2, smeargle_1, xurkitree_1, heatran_2, victini_2, tapu_fini_2, illumise_1, krookodile_1, incineroar_1, blaziken_mega_1, blastoise_mega_1, victini_1, necrozma_1, garchomp_1, heatran_1, aggron_mega_1, celesteela_1, naganadel_1, primarina_1, tapu_fini_1, donphan_1, magnezone_1, aegislash_1, greninja_1, jumpluff_1, landorus_therian_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, charizard_mega_x, charizard_mega_x_2, charizard_mega_y, charizard_mega_y_2, magearna_1, slowbro_mega_1, zygarde_complete_1, volcarona_1, stunfisk_1, vivillon_1, charizard_mega_x_3, infernape_1, magnezone_2]
  409. #for all Raikou sets
  410. raikou_1.lmatchups = [landorus_therian_2, dragonite_4, dragonite_3, avalugg_1, swampert_mega_1, donphan_2, hoopau_2, haxorus_2, pheromosa_3, pheromosa_2, garchomp_2, excadrill_1, whimsicott_1, darmanitan_1, kyurem_1, naganadel_1, metagross_mega_1, metagross_mega_2, dragonite_1, charizard_mega_x, charizard_mega_x_2, kommoo_1, landorus_therian_1, greninja_1, zygarde_complete_1, tapu_lele_1, porygonz_2, donphan_1, lopunny_mega_1, garchomp_1, aggron_mega_1, venusaur_mega_1, tyranitar_mega_1, zeraora_1, victini_1, krookodile_1, incineroar_1, hoopau_1, heracross_mega_1, haxorus_1, golem_1, crustle_1, blaziken_mega_1, dragonite_2, stunfisk_1, aron_1, riolu_1, charizard_mega_x_3, zeraora_2, type_null_1, meloetta_2]
  411. #for all Kartana sets
  412. kartana_1.lmatchups = [celesteela_2, landorus_therian_2, greninja_4, dragonite_4, carracosta_1, deoxys_s_2, donphan_2, volcarona_2, salamence_1, haxorus_2, zapdos_1, pheromosa_3, pheromosa_2, pheromosa_1, rampardos_2, rampardos_1, umbreon_1, magearna_2, darmanitan_1, salazzle_1, latias_mega_1, raikou_1, shedinja_1, riolu_1, altaria_mega_2, genesect_2, kartana_2, heatran_2, victini_2, greninja_3, greninja_2, dragonite_2, illumise_1, sawk_1, kyurem_1, incineroar_1, heracross_mega_1, durant_1, deoxys_s_1, diancie_mega_1, blaziken_mega_1, victini_1, pinser_mega_1, mawile_mega_1, heatran_1, celesteela_1, naganadel_1, kommoo_1, genesect_1, altaria_mega_1, aegislash_1, magnezone_1, landorus_therian_1, charizard_mega_x, charizard_mega_x_2, charizard_mega_y, charizard_mega_y_2, dragonite_1, magearna_1, metagross_mega_1, metagross_mega_2, zygarde_complete_1, greninja_1, volcarona_1, porygonz_2, charizard_mega_x_3, infernape_1, meloetta_2, magnezone_2]
  413. kartana_2.lmatchups = [togekiss_1, celesteela_2, scizor_mega_1, landorus_therian_2, greninja_4, venusaur_mega_2, dragonite_4, carracosta_1, deoxys_s_2, donphan_2, salamence_1, zapdos_1, pheromosa_3, pheromosa_2, pheromosa_1, rampardos_2, rampardos_1, vigoroth_1, magearna_2, darmanitan_1, salazzle_1, latias_mega_1, raikou_1, shedinja_1, riolu_1, altaria_mega_2, genesect_2, aron_1, naganadel_1, metagross_mega_1, metagross_mega_2, dragonite_1, magearna_1, charizard_mega_x, charizard_mega_x_2, kommoo_1, genesect_1, landorus_therian_1, greninja_1, zygarde_complete_1, porygonz_2, donphan_1, altaria_mega_1, aegislash_1, magnezone_1, meloetta_1, mew_1, lopunny_mega_1, garchomp_1, celesteela_1, aggron_mega_1, victini_1, sableye_mega_1, necrozma_1, mawile_mega_1, krookodile_1, incineroar_1, hoopau_1, heracross_mega_1, golem_1, durant_1, deoxys_s_1, sawk_1, crustle_1, blaziken_mega_1, dragonite_2, illumise_1, greninja_2, greninja_3, victini_2, charizard_mega_x_3, meloetta_2, magnezone_2]
  414. #for all Krookodile sets
  415. krookodile_1.lmatchups = [togekiss_2, togekiss_1, celesteela_2, landorus_therian_2, gyarados_mega_5, greninja_4, dragonite_4, dragonite_3, gallade_mega_1, carracosta_1, volcarona_2, salamence_1, araquanid_1, porygon2_1, rotom_wash_1, pheromosa_3, pheromosa_2, pheromosa_1, excadrill_1, gyarados_mega_4, latias_mega_1, slowbro_mega_2, altaria_mega_2, genesect_2, smeargle_1, kartana_2, heatran_2, tapu_fini_2, greninja_3, greninja_2, dragonite_2, sawk_1, medicham_mega_1, manaphy_1, kyurem_1, clefable_1, heracross_mega_1, diancie_mega_1, durant_1, volcarona_1, blastoise_mega_1, sableye_mega_1, pinser_mega_1, kartana_1, ferrothorn_1, celesteela_1, genesect_1, venusaur_mega_1, kommoo_1, naganadel_1, primarina_1, tapu_fini_1, gardevoir_mega_1, altaria_mega_1, greninja_1, meloetta_1, jumpluff_1, landorus_therian_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, charizard_mega_y, charizard_mega_y_2, dragonite_1, porygonz_1, porygonz_2, tapu_lele_1, slowbro_mega_1, porygonz_3, infernape_1, meloetta_2]
  416. #for all Incineroar sets
  417. incineroar_1.lmatchups = [togekiss_2, togekiss_1, landorus_therian_2, gyarados_mega_5, greninja_4, venusaur_mega_2, dragonite_4, dragonite_3, gallade_mega_1, carracosta_1, swampert_mega_1, donphan_2, pyukumuku_1, zapdos_1, rotom_wash_1, pheromosa_3, pheromosa_2, pheromosa_1, rampardos_2, rampardos_1, vigoroth_1, umbreon_1, mienshao_1, terrakion_1, excadrill_1, gyarados_mega_4, latias_mega_1, audino_mega_1, altaria_mega_2, smeargle_1, heatran_2, tapu_fini_2, greninja_3, greninja_2, dragonite_2, medicham_mega_1, manaphy_1, kyurem_1, krookodile_1, clefable_1, heracross_mega_1, durant_1, golem_1, archeops_1, blastoise_mega_1, blaziken_mega_1, crustle_1, diancie_mega_1, volcarona_1, primarina_1, tapu_fini_1, tyranitar_mega_1, venusaur_mega_1, chansey_1, garchomp_1, heatran_1, gardevoir_mega_1, kommoo_1, altaria_mega_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, magearna_1, porygonz_1, tapu_lele_1, zygarde_complete_1, greninja_1, jumpluff_1, landorus_therian_1, lopunny_mega_1, stunfisk_1, vivillon_1, infernape_1, magnezone_2]
  418. #for all Hoopa-Unbound sets
  419. hoopau_1.lmatchups = [togekiss_2, togekiss_1, gyarados_mega_5, dragonite_4, dragonite_3, carracosta_1, swampert_mega_1, volcarona_2, hoopau_2, haxorus_2, araquanid_1, pyukumuku_1, zapdos_1, rotom_wash_1, pheromosa_3, pheromosa_2, pheromosa_1, umbreon_1, excadrill_1, gyarados_mega_4, audino_mega_1, riolu_1, altaria_mega_2, genesect_2, aron_1, smeargle_1, kartana_2, heatran_2, dragonite_2, sawk_1, medicham_mega_1, manaphy_1, kyurem_1, krookodile_1, incineroar_1, blaziken_mega_1, heracross_mega_1, diancie_mega_1, durant_1, crustle_1, golem_1, kartana_1, archeops_1, mawile_mega_1, pinser_mega_1, victini_1, volcarona_1, necrozma_1, altaria_mega_1, chansey_1, tyranitar_mega_1, tapu_fini_1, donphan_1, gardevoir_mega_1, genesect_1, kommoo_1, magnezone_1, zygarde_complete_1, gyarados_mega, gyarados_mega_2, charizard_mega_x_2, dragonite_1, magearna_1, porygonz_1, tapu_lele_1, jumpluff_1, landorus_therian_1, lopunny_mega_1, clefable_1, vivillon_1, weavile_1, weavile_2, type_null_1, magnezone_2]
  420. hoopau_2.lmatchups = [landorus_therian_2, gyarados_mega_5, dragonite_4, dragonite_3, gallade_mega_1, carracosta_1, avalugg_1, swampert_mega_1, donphan_2, salamence_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, gyarados_mega_4, magearna_1, dragonite_1, dragonite_2, charizard_mega_y, charizard_mega_y_2, charizard_mega_x, charizard_mega_x_2, manaphy_1, genesect_2, landorus_therian_1, medicham_mega_1, zygarde_complete_1, porygonz_1, gardevoir_mega_1, donphan_1, audino_mega_1, altaria_mega_1, altaria_mega_2, magnezone_1, aron_1, lopunny_mega_1, garchomp_1, chansey_1, aggron_mega_1, smeargle_1, tyranitar_mega_1, archeops_1, zeraora_1, volcarona_1, riolu_1, victini_1, pinser_mega_1, mawile_mega_1, kartana_2, kartana_1, krookodile_1, incineroar_1, golem_1, durant_1, diancie_mega_1, sawk_1, crustle_1, xurkitree_1, blaziken_mega_1, darmanitan_1, excadrill_1, terrakion_1, magearna_2, mienshao_1, garchomp_2, umbreon_1, vigoroth_1, rampardos_1, rampardos_2, pheromosa_3, pheromosa_2, pheromosa_1, zapdos_1, porygon2_1, haxorus_2, weavile_1, charizard_mega_x_3, zeraora_2, type_null_1, magnezone_2]
  421. #for all Heracross-Mega sets
  422. heracross_mega_1.lmatchups = [togekiss_2, togekiss_1, scizor_mega_1, landorus_therian_2, gyarados_mega_5, venusaur_mega_2, dragonite_4, dragonite_3, deoxys_s_2, salamence_1, hoopau_2, zapdos_1, garchomp_2, magearna_2, darmanitan_1, salazzle_1, latias_mega_1, altaria_mega_2, smeargle_1, cresselia_1, blacephalon_1, heatran_2, victini_2, dragonite_2, illumise_1, medicham_mega_1, deoxys_s_1, durant_1, celesteela_1, heatran_1, mawile_mega_1, sableye_mega_1, victini_1, blaziken_mega_1, volcarona_1, archeops_1, necrozma_1, pinser_mega_1, venusaur_mega_1, tapu_fini_1, magnezone_1, aegislash_1, gardevoir_mega_1, genesect_1, kommoo_1, altaria_mega_1, mew_1, landorus_therian_1, charizard_mega_x, charizard_mega_x_2, charizard_mega_y, charizard_mega_y_2, dragonite_1, magearna_1, metagross_mega_2, porygonz_1, tapu_lele_1, zygarde_complete_1, clefable_1, porygonz_2, stunfisk_1, vivillon_1, porygonz_3, charizard_mega_x_3, infernape_1, necrozma_2, magnezone_2]
  423. #for all Haxorus sets
  424. haxorus_1.lmatchups = [togekiss_2, togekiss_1, celesteela_2, scizor_mega_1, gyarados_mega_5, venusaur_mega_2, gallade_mega_1, avalugg_1, swampert_mega_1, deoxys_s_2, donphan_2, salamence_1, hoopau_2, pyukumuku_1, porygon2_1, zapdos_1, pheromosa_1, vigoroth_1, umbreon_1, garchomp_2, magearna_2, terrakion_1, whimsicott_1, gyarados_mega_4, audino_mega_1, slowbro_mega_2, mew_2, altaria_mega_2, genesect_2, cresselia_1, kartana_2, victini_2, tapu_fini_2, illumise_1, krookodile_1, incineroar_1, heracross_mega_1, blastoise_mega_1, hoopau_1, durant_1, golem_1, crustle_1, sableye_mega_1, tyranitar_mega_1, heatran_1, kartana_1, mawile_mega_1, necrozma_1, venusaur_mega_1, aggron_mega_1, celesteela_1, chansey_1, ferrothorn_1, primarina_1, tapu_fini_1, jumpluff_1, aegislash_1, altaria_mega_1, donphan_1, genesect_1, landorus_therian_1, lopunny_mega_1, mew_1, meloetta_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, magearna_1, metagross_mega_1, metagross_mega_2, tapu_lele_1, slowbro_mega_1, zygarde_complete_1, clefable_1, stunfisk_1, zeraora_2, necrozma_2, type_null_1, meloetta_2]
  425. haxorus_2.lmatchups = [togekiss_2, celesteela_2, scizor_mega_1, landorus_therian_2, gyarados_mega_5, greninja_4, gallade_mega_1, avalugg_1, swampert_mega_1, deoxys_s_2, donphan_2, gyarados_mega, gyarados_mega_2, gyarados_mega_3, gyarados_mega_4, naganadel_1, metagross_mega_1, metagross_mega_2, magearna_1, charizard_mega_x, genesect_1, genesect_2, landorus_therian_1, jumpluff_1, greninja_1, greninja_2, greninja_3, medicham_mega_1, slowbro_mega_2, slowbro_mega_1, porygonz_2, donphan_1, audino_mega_1, aegislash_1, meloetta_1, mew_1, mew_2, lopunny_mega_1, garchomp_1, ferrothorn_1, celesteela_1, aggron_mega_1, venusaur_mega_1, latias_mega_1, tapu_fini_1, tapu_fini_2, primarina_1, blastoise_mega_1, archeops_1, volcarona_1, victini_2, pinser_mega_1, necrozma_1, blacephalon_1, mawile_mega_1, kartana_2, krookodile_1, incineroar_1, heracross_mega_1, haxorus_1, durant_1, diancie_mega_1, deoxys_s_1, blaziken_mega_1, illumise_1, salazzle_1, whimsicott_1, terrakion_1, magearna_2, mienshao_1, garchomp_2, vigoroth_1, rampardos_2, rampardos_1, pheromosa_1, pheromosa_2, pheromosa_3, porygon2_1, weavile_1, weavile_2, infernape_1, zeraora_2, necrozma_2, type_null_1, meloetta_2]
  426. #for all Golem sets
  427. golem_1.lmatchups = [togekiss_2, togekiss_1, celesteela_2, scizor_mega_1, gyarados_mega_5, venusaur_mega_2, dragonite_4, gallade_mega_1, swampert_mega_1, deoxys_s_2, salamence_1, haxorus_2, pyukumuku_1, porygon2_1, rotom_wash_1, pheromosa_1, vigoroth_1, umbreon_1, mienshao_1, excadrill_1, whimsicott_1, gyarados_mega_4, latias_mega_1, audino_mega_1, slowbro_mega_2, mew_2, altaria_mega_2, smeargle_1, cresselia_1, tapu_fini_2, illumise_1, medicham_mega_1, kyurem_1, krookodile_1, heracross_mega_1, heatran_1, primarina_1, blastoise_mega_1, sableye_mega_1, necrozma_1, tapu_fini_1, tyranitar_mega_1, venusaur_mega_1, aggron_mega_1, celesteela_1, chansey_1, ferrothorn_1, garchomp_1, mawile_mega_1, donphan_1, genesect_1, kommoo_1, altaria_mega_1, lopunny_mega_1, mew_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, dragonite_1, magearna_1, tapu_lele_1, slowbro_mega_1, zygarde_complete_1, jumpluff_1, landorus_therian_1, clefable_1, vivillon_1, weavile_2, porygonz_3, infernape_1, necrozma_2, type_null_1]
  428. #for all Durant sets
  429. durant_1.lmatchups = [celesteela_2, scizor_mega_1, landorus_therian_2, greninja_4, venusaur_mega_2, dragonite_4, dragonite_3, carracosta_1, swampert_mega_1, donphan_2, salamence_1, pyukumuku_1, zapdos_1, rotom_wash_1, pheromosa_3, pheromosa_2, pheromosa_1, rampardos_2, rampardos_1, vigoroth_1, garchomp_2, magearna_2, whimsicott_1, darmanitan_1, salazzle_1, raikou_1, riolu_1, genesect_2, aron_1, blacephalon_1, xurkitree_1, victini_2, tapu_fini_2, greninja_3, greninja_2, dragonite_2, illumise_1, sawk_1, manaphy_1, golem_1, zeraora_1, crustle_1, archeops_1, blastoise_mega_1, blaziken_mega_1, sableye_mega_1, mawile_mega_1, garchomp_1, celesteela_1, aggron_mega_1, dragonite_1, zygarde_complete_1, greninja_1, jumpluff_1, landorus_therian_1, magnezone_1, aegislash_1, donphan_1, genesect_1, kommoo_1, naganadel_1, primarina_1, stunfisk_1, zeraora_2, type_null_1, magnezone_2]
  430. #for all Diancie-Mega sets
  431. diancie_mega_1.lmatchups = [celesteela_2, scizor_mega_1, landorus_therian_2, greninja_4, porygonz_1, venusaur_mega_2, carracosta_1, deoxys_s_2, pyukumuku_1, porygon2_1, rotom_wash_1, pheromosa_2, rampardos_2, rampardos_1, garchomp_2, magearna_2, gyarados_mega_4, slowbro_mega_2, raikou_1, mew_2, aron_1, cresselia_1, kartana_2, xurkitree_1, tapu_fini_2, greninja_3, greninja_2, sawk_1, manaphy_1, haxorus_1, golem_1, durant_1, deoxys_s_1, zeraora_1, blastoise_mega_1, blaziken_mega_1, crustle_1, venusaur_mega_1, heatran_1, mawile_mega_1, necrozma_1, aggron_mega_1, celesteela_1, chansey_1, ferrothorn_1, primarina_1, tapu_fini_1, genesect_1, mew_1, aegislash_1, magnezone_1, gyarados_mega, gyarados_mega_3, dragonite_1, magearna_1, metagross_mega_1, metagross_mega_2, tapu_lele_1, slowbro_mega_1, greninja_1, clefable_1, zeraora_2, necrozma_2, type_null_1, magnezone_2]
  432. #for all Deoxys-Speed sets
  433. deoxys_s_1.lmatchups = [togekiss_1, scizor_mega_1, gyarados_mega_5, dragonite_4, dragonite_3, carracosta_1, avalugg_1, swampert_mega_1, deoxys_s_2, donphan_2, volcarona_2, hoopau_2, araquanid_1, pyukumuku_1, porygon2_1, zapdos_1, rotom_wash_1, magearna_2, darmanitan_1, latias_mega_1, audino_mega_1, slowbro_mega_2, mew_2, shedinja_1, riolu_1, genesect_2, aron_1, cresselia_1, victini_2, dragonite_2, manaphy_1, kyurem_1, incineroar_1, hoopau_1, golem_1, crustle_1, blastoise_mega_1, sableye_mega_1, victini_1, mawile_mega_1, necrozma_1, chansey_1, ferrothorn_1, aggron_mega_1, primarina_1, donphan_1, gardevoir_mega_1, genesect_1, gyarados_mega_2, charizard_mega_x_2, dragonite_1, magearna_1, metagross_mega_1, metagross_mega_2, tapu_lele_1, mew_1, meloetta_1, magnezone_1, aegislash_1, clefable_1, necrozma_2, meloetta_2, magnezone_2]
  434. deoxys_s_2.lmatchups = [togekiss_2, celesteela_2, scizor_mega_1, gyarados_mega_5, greninja_4, tapu_lele_1, dragonite_3, gyarados_mega, gyarados_mega_2, gyarados_mega_3, gyarados_mega_4, metagross_mega_1, metagross_mega_2, magearna_1, dragonite_1, genesect_1, greninja_1, greninja_2, greninja_3, zygarde_complete_1, slowbro_mega_1, gardevoir_mega_1, audino_mega_1, aegislash_1, magnezone_1, meloetta_1, aron_1, mew_1, mew_2, ferrothorn_1, chansey_1, celesteela_1, tyranitar_mega_1, tyranitar_mega_1, tapu_fini_2, volcarona_1, sableye_mega_1, mawile_mega_1, krookodile_1, incineroar_1, hoopau_1, durant_1, shedinja_1, whimsicott_1, excadrill_1, umbreon_1, hoopau_2, volcarona_2, pyukumuku_1, araquanid_1, weavile_1, necrozma_2, type_null_1, meloetta_2, magnezone_2]
  435. #for all Sawk sets
  436. sawk_1.lmatchups = [togekiss_2, togekiss_1, celesteela_2, scizor_mega_1, landorus_therian_2, gyarados_mega_5, charizard_mega_x, charizard_mega_x_2, venusaur_mega_2, dragonite_4, gallade_mega_1, carracosta_1, swampert_mega_1, deoxys_s_2, salamence_1, haxorus_2, zapdos_1, rotom_wash_1, pheromosa_1, mienshao_1, gyarados_mega_4, latias_mega_1, audino_mega_1, slowbro_mega_2, mew_2, riolu_1, altaria_mega_2, aron_1, cresselia_1, victini_2, tapu_fini_2, dragonite_2, sawk_1, blastoise_mega_1, clefable_1, medicham_mega_1, stunfisk_1, heracross_mega_1, deoxys_s_1, golem_1, blaziken_mega_1, gyarados_mega, donphan_1, sableye_mega_1, ferrothorn_1, kommoo_1, zeraora_1, primarina_1, venusaur_mega_1, mawile_mega_1, necrozma_1, aggron_mega_1, celesteela_1, tapu_fini_1, gyarados_mega_2, gyarados_mega_3, dragonite_1, magearna_1, metagross_mega_2, metagross_mega_1, slowbro_mega_1, zygarde_complete_1, mew_1, aegislash_1, altaria_mega_1, charizard_mega_x_3, zeraora_2, necrozma_2, type_null_1]
  437. #for all Crustle sets
  438. crustle_1.lmatchups = [scizor_mega_1, gyarados_mega_5, venusaur_mega_2, dragonite_4, gallade_mega_1, carracosta_1, swampert_mega_1, rotom_wash_1, rampardos_2, vigoroth_1, umbreon_1, mienshao_1, magearna_2, excadrill_1, whimsicott_1, gyarados_mega_4, slowbro_mega_2, mew_2, altaria_mega_2, smeargle_1, dragonite_2, illumise_1, sawk_1, medicham_mega_1, krookodile_1, heracross_mega_1, golem_1, blastoise_mega_1, sableye_mega_1, kartana_1, mawile_mega_1, necrozma_1, chansey_1, ferrothorn_1, garchomp_1, aggron_mega_1, primarina_1, kommoo_1, donphan_1, gyarados_mega, magearna_1, metagross_mega_1, metagross_mega_2, slowbro_mega_1, zygarde_complete_1, landorus_therian_1, magnezone_1, aegislash_1, altaria_mega_1, clefable_1, stunfisk_1, gyarados_mega_2, type_null_1, magnezone_2]
  439. #for all Xurkitree sets
  440. xurkitree_1.lmatchups = [landorus_therian_2, greninja_4, dragonite_4, dragonite_3, carracosta_1, swampert_mega_1, deoxys_s_2, donphan_2, volcarona_2, haxorus_2, pheromosa_3, pheromosa_2, pheromosa_1, rampardos_2, rampardos_1, garchomp_2, excadrill_1, whimsicott_1, salazzle_1, latias_mega_1, shedinja_1, riolu_1, aron_1, smeargle_1, kartana_2, blacephalon_1, gardevoir_mega_1, naganadel_1, dragonite_1, charizard_mega_x, charizard_mega_x_2, charizard_mega_y, charizard_mega_y_2, kommoo_1, landorus_therian_1, jumpluff_1, greninja_1, medicham_mega_1, zygarde_complete_1, tapu_lele_1, porygonz_1, porygonz_2, donphan_1, aegislash_1, lopunny_mega_1, garchomp_1, tyranitar_mega_1, archeops_1, zeraora_1, volcarona_1, victini_1, kartana_1, krookodile_1, haxorus_1, golem_1, deoxys_s_1, sawk_1, crustle_1, dragonite_2, greninja_2, greninja_3, stunfisk_1, vivillon_1, weavile_1, porygonz_3, charizard_mega_x_3, infernape_1, zeraora_2, meloetta_2]
  441. #for all Cresselia sets
  442. cresselia_1.lmatchups = [celesteela_2, gyarados_mega_5, greninja_4, deoxys_s_2, volcarona_2, hoopau_2, haxorus_2, araquanid_1, pyukumuku_1, zapdos_1, umbreon_1, excadrill_1, whimsicott_1, gyarados_mega_4, audino_mega_1, slowbro_mega_2, raikou_1, mew_2, shedinja_1, genesect_2, smeargle_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, kyurem_1, metagross_mega_1, metagross_mega_2, magearna_1, manaphy_1, genesect_1, jumpluff_1, greninja_1, slowbro_mega_1, tapu_lele_1, porygonz_1, porygonz_2, gardevoir_mega_1, aegislash_1, meloetta_1, magnezone_1, chansey_1, tyranitar_mega_1, tapu_fini_1, zeraora_1, volcarona_1, sableye_mega_1, mawile_mega_1, krookodile_1, incineroar_1, hoopau_1, durant_1, clefable_1, greninja_2, greninja_3, tapu_fini_2, xurkitree_1, blacephalon_1, vivillon_1, weavile_1, weavile_2, porygonz_3, zeraora_2, necrozma_2, type_null_1, meloetta_2, magnezone_2]
  443. #for all Blaziken-Mega sets
  444. blaziken_mega_1.lmatchups = [togekiss_2, landorus_therian_2, gyarados_mega_5, venusaur_mega_2, dragonite_4, dragonite_3, carracosta_1, avalugg_1, swampert_mega_1, deoxys_s_2, donphan_2, salamence_1, zapdos_1, rotom_wash_1, garchomp_2, gyarados_mega_4, latias_mega_1, audino_mega_1, slowbro_mega_2, riolu_1, altaria_mega_2, aron_1, xurkitree_1, victini_2, tapu_fini_2, dragonite_2, illumise_1, manaphy_1, golem_1, crustle_1, blastoise_mega_1, victini_1, necrozma_1, kommoo_1, garchomp_1, aggron_mega_1, venusaur_mega_1, naganadel_1, primarina_1, tapu_fini_1, meloetta_1, magnezone_1, altaria_mega_1, donphan_1, mew_1, landorus_therian_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, charizard_mega_x, charizard_mega_x_2, dragonite_1, tapu_lele_1, zygarde_complete_1, slowbro_mega_1, clefable_1, stunfisk_1, charizard_mega_x_3, meloetta_2]
  445. #for all Clefable sets
  446. clefable_1.lmatchups = [celesteela_2, scizor_mega_1, tapu_lele_1, venusaur_mega_2, deoxys_s_2, donphan_2, hoopau_2, araquanid_1, zapdos_1, magearna_2, salazzle_1, audino_mega_1, slowbro_mega_2, raikou_1, mew_2, shedinja_1, aron_1, smeargle_1, kartana_2, kyurem_1, magearna_1, metagross_mega_1, metagross_mega_2, porygonz_1, meloetta_1, aegislash_1, gardevoir_mega_1, genesect_1, naganadel_1, aggron_mega_1, celesteela_1, ferrothorn_1, heatran_1, kartana_1, mawile_mega_1, victini_1, durant_1, tapu_fini_1, magnezone_1, jumpluff_1, slowbro_mega_1, venusaur_mega_1, xurkitree_1, necrozma_2, type_null_1, meloetta_2, magnezone_2]
  447. #for all Stunfisk sets
  448. stunfisk_1.lmatchups = [landorus_therian_2, venusaur_mega_2, dragonite_4, dragonite_3, carracosta_1, swampert_mega_1, deoxys_s_2, donphan_2, volcarona_2, salamence_1, hoopau_2, haxorus_2, araquanid_1, porygon2_1, rotom_wash_1, umbreon_1, garchomp_2, excadrill_1, whimsicott_1, latias_mega_1, audino_mega_1, mew_2, shedinja_1, riolu_1, altaria_mega_2, smeargle_1, cresselia_1, kartana_2, heatran_2, greninja_2, greninja_3, medicham_mega_1, manaphy_1, gyarados_mega_3, dragonite_1, magearna_1, porygonz_1, tapu_lele_1, zygarde_complete_1, jumpluff_1, landorus_therian_1, mew_1, meloetta_1, altaria_mega_1, donphan_1, gardevoir_mega_1, kommoo_1, primarina_1, tapu_fini_1, venusaur_mega_1, aggron_mega_1, chansey_1, ferrothorn_1, garchomp_1, kartana_1, necrozma_1, sableye_mega_1, volcarona_1, blastoise_mega_1, deoxys_s_1, diancie_mega_1, golem_1, hoopau_1, krookodile_1, kyurem_1, clefable_1, vivillon_1, weavile_2, porygonz_3, necrozma_2, type_null_1, meloetta_2]
  449. #for all Illumise sets
  450. illumise_1.lmatchups = [togekiss_2, togekiss_1, celesteela_2, gyarados_mega_5, greninja_4, venusaur_mega_2, dragonite_4, dragonite_3, carracosta_1, deoxys_s_2, volcarona_2, hoopau_2, araquanid_1, pyukumuku_1, zapdos_1, rotom_wash_1, pheromosa_3, rampardos_1, vigoroth_1, magearna_2, terrakion_1, whimsicott_1, gyarados_mega_4, raikou_1, shedinja_1, altaria_mega_2, genesect_2, smeargle_1, cresselia_1, blacephalon_1, xurkitree_1, heatran_2, victini_2, tapu_fini_2, greninja_3, greninja_2, dragonite_2, hoopau_1, incineroar_1, stunfisk_1, manaphy_1, krookodile_1, clefable_1, deoxys_s_1, diancie_mega_1, blastoise_mega_1, greninja_1, pinser_mega_1, sableye_mega_1, victini_1, volcarona_1, necrozma_1, heatran_1, chansey_1, ferrothorn_1, celesteela_1, venusaur_mega_1, jumpluff_1, mew_1, meloetta_1, magnezone_1, aegislash_1, altaria_mega_1, gardevoir_mega_1, genesect_1, kommoo_1, naganadel_1, primarina_1, tapu_fini_1, tyranitar_mega_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, charizard_mega_y, charizard_mega_y_2, magearna_1, metagross_mega_1, metagross_mega_2, porygonz_1, porygonz_2, tapu_lele_1, vivillon_1, porygonz_3, infernape_1, meloetta_2, magnezone_2]
  451. #for all Vivillon sets
  452. vivillon_1.lmatchups = [landorus_therian_2, greninja_4, gallade_mega_1, deoxys_s_2, hoopau_2, haxorus_2, pheromosa_3, pheromosa_2, pheromosa_1, rampardos_2, rampardos_1, vigoroth_1, garchomp_2, mienshao_1, terrakion_1, darmanitan_1, salazzle_1, gyarados_mega_4, latias_mega_1, audino_mega_1, raikou_1, mew_2, altaria_mega_2, gyarados_mega_3, charizard_mega_x, charizard_mega_x_2, charizard_mega_y, charizard_mega_y_2, porygonz_1, porygonz_1, greninja_1, greninja_2, greninja_3, lopunny_mega_1, naganadel_1, primarina_1, tapu_fini_1, tyranitar_mega_1, garchomp_1, kartana_1, kartana_2, pinser_mega_1, sableye_mega_1, volcarona_1, zeraora_1, archeops_1, blaziken_mega_1, crustle_1, deoxys_s_1, diancie_mega_1, durant_1, golem_1, haxorus_1, krookodile_1, manaphy_1, medicham_mega_1, sawk_1, blacephalon_1, weavile_1, weavile_2, infernape_1, zeraora_2, meloetta_2]
  453. #for all Shedinja sets
  454. shedinja_1.lmatchups = [togekiss_1, celesteela_2, landorus_therian_2, gyarados_mega_5, greninja_4, venusaur_mega_2, dragonite_4, gallade_mega_1, carracosta_1, donphan_2, volcarona_2, hoopau_2, haxorus_2, araquanid_1, pyukumuku_1, porygon2_1, rotom_wash_1, pheromosa_3, rampardos_2, rampardos_1, vigoroth_1, umbreon_1, garchomp_2, mienshao_1, magearna_2, excadrill_1, whimsicott_1, darmanitan_1, salazzle_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, gyarados_mega_4, naganadel_1, dragonite_1, dragonite_2, charizard_mega_y, charizard_mega_y_2, charizard_mega_x, charizard_mega_x_2, kommoo_1, landorus_therian_1, jumpluff_1, greninja_1, zygarde_complete_1, porygonz_1, porygonz_2, gardevoir_mega_1, donphan_1, altaria_mega_1, aegislash_1, mew_1, heatran_1, garchomp_1, ferrothorn_1, chansey_1, celesteela_1, aggron_mega_1, tyranitar_mega_1, blastoise_mega_1, archeops_1, volcarona_1, victini_1, sableye_mega_1, pinser_mega_1, necrozma_1, krookodile_1, incineroar_1, hoopau_1, heracross_mega_1, haxorus_1, golem_1, durant_1, diancie_mega_1, sawk_1, crustle_1, blaziken_mega_1, greninja_3, victini_2, heatran_2, blacephalon_1, genesect_2, aron_1, smeargle_1, vivillon_1, altaria_mega_2, weavile_1, weavile_2, porygonz_3, charizard_mega_x_3, infernape_1, type_null_1]
  455. #for all Salazzle (F) sets
  456. salazzle_1.lmatchups = [landorus_therian_2, gyarados_mega_5, greninja_4, dragonite_4, dragonite_3, carracosta_1, swampert_mega_1, deoxys_s_2, donphan_2, volcarona_2, salamence_1, hoopau_2, araquanid_1, porygon2_1, zapdos_1, rotom_wash_1, pheromosa_3, pheromosa_2, rampardos_2, rampardos_1, umbreon_1, garchomp_2, terrakion_1, darmanitan_1, riolu_1, latias_mega_1, raikou_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, kyurem_1, naganadel_1, metagross_mega_2, dragonite_1, charizard_mega_y, charizard_mega_y_2, charizard_mega_x_2, manaphy_1, kommoo_1, landorus_therian_1, greninja_1, zygarde_complete_1, slowbro_mega_1, porygonz_2, donphan_1, aegislash_1, meloetta_1, mew_1, lopunny_mega_1, heatran_1, garchomp_1, chansey_1, venusaur_mega_1, tyranitar_mega_1, blastoise_mega_1, archeops_1, zeraora_1, victini_1, sableye_mega_1, necrozma_1, krookodile_1, incineroar_1, hoopau_1, haxorus_1, golem_1, diancie_mega_1, deoxys_s_1, sawk_1, crustle_1, blaziken_mega_1, dragonite_2, illumise_1, greninja_3, victini_2, stunfisk_1, heatran_2, blacephalon_1, cresselia_1, slowbro_mega_2, gyarados_mega_4, weavile_2, zeraora_2, meloetta_2, magnezone_2]
  457. #for all Darmanitan sets
  458. darmanitan_1.lmatchups = [togekiss_2, landorus_therian_2, gyarados_mega_5, venusaur_mega_2, dragonite_4, dragonite_3, gallade_mega_1, carracosta_1, avalugg_1, swampert_mega_1, deoxys_s_2, donphan_2, salamence_1, haxorus_2, araquanid_1, pyukumuku_1, porygon2_1, zapdos_1, rotom_wash_1, vigoroth_1, umbreon_1, garchomp_2, gyarados_mega, gyarados_mega_2, gyarados_mega_3, gyarados_mega_4, kyurem_1, dragonite_1, dragonite_2, charizard_mega_x, manaphy_1, kommoo_1, landorus_therian_1, zygarde_complete_1, slowbro_mega_1, slowbro_mega_2, donphan_1, audino_mega_1, altaria_mega_1, altaria_mega_2, aegislash_1, magnezone_1, meloetta_1, aron_1, mew_1, heatran_1, garchomp_1, chansey_1, aggron_mega_1, venusaur_mega_1, latias_mega_1, tapu_fini_1, tapu_fini_2, primarina_1, blastoise_mega_1, zeraora_1, victini_2, sableye_mega_1, necrozma_1, krookodile_1, incineroar_1, hoopau_1, haxorus_1, golem_1, diancie_mega_1, sawk_1, crustle_1, xurkitree_1, cresselia_1, clefable_1, stunfisk_1, illumise_1, charizard_mega_x_3, type_null_1, meloetta_2, magnezone_2]
  459. #for all Whimsicott sets
  460. whimsicott_1.lmatchups = [gyarados_mega_5, greninja_4, venusaur_mega_2, donphan_2, volcarona_2, hoopau_2, pheromosa_3, umbreon_1, garchomp_2, jumpluff_1, gyarados_mega, heatran_1, heatran_2, gyarados_mega_2, gyarados_mega_3, gyarados_mega_4, naganadel_1, metagross_mega_2, metagross_mega_1, dragonite_2, charizard_mega_x, charizard_mega_x_2, genesect_1, genesect_2, greninja_1, greninja_2, greninja_3, slowbro_mega_1, slowbro_mega_2, tapu_lele_1, porygonz_2, altaria_mega_1, altaria_mega_2, ferrothorn_1, venusaur_mega_1, tyranitar_mega_1, volcarona_1, victini_2, victini_1, sableye_mega_1, necrozma_1, blacephalon_1, kartana_2, kartana_1, krookodile_1, incineroar_1, hoopau_1, heracross_mega_1, diancie_mega_1, sawk_1, blaziken_mega_1, salazzle_1, darmanitan_1, weavile_1, weavile_2, charizard_mega_x_3, meloetta_2]
  461. #for all Excadrill sets
  462. excadrill_1.lmatchups = [togekiss_2, togekiss_1, celesteela_2, landorus_therian_2, gyarados_mega_5, greninja_4, dragonite_4, dragonite_3, gallade_mega_1, avalugg_1, salamence_1, haxorus_2, araquanid_1, porygon2_1, pheromosa_3, pheromosa_2, pheromosa_1, rampardos_2, rampardos_1, umbreon_1, garchomp_2, mienshao_1, terrakion_1, donphan_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, gyarados_mega_4, kyurem_1, naganadel_1, dragonite_1, dragonite_2, charizard_mega_y, charizard_mega_y_2, charizard_mega_x, charizard_mega_x_2, manaphy_1, kommoo_1, landorus_therian_1, jumpluff_1, greninja_1, greninja_2, greninja_3, medicham_mega_1, zygarde_complete_1, slowbro_mega_2, slowbro_mega_1, altaria_mega_1, altaria_mega_2, mew_2, lopunny_mega_1, heatran_1, garchomp_1, ferrothorn_1, celesteela_1, venusaur_mega_1, tapu_fini_2, primarina_1, blastoise_mega_1, archeops_1, volcarona_1, sableye_mega_1, pinser_mega_1, necrozma_1, blacephalon_1, kartana_1, kartana_2, heracross_mega_1, haxorus_1, durant_1, diancie_mega_1, deoxys_s_1, sawk_1, clefable_1, illumise_1, vivillon_1, salazzle_1, darmanitan_1, whimsicott_1, weavile_1, weavile_2, charizard_mega_x_3, infernape_1, type_null_1]
  463. #for all Terrakion sets
  464. terrakion_1.lmatchups = [celesteela_2, scizor_mega_1, landorus_therian_2, greninja_4, dragonite_4, dragonite_3, gallade_mega_1, carracosta_1, avalugg_1, swampert_mega_1, deoxys_s_2, donphan_2, salamence_1, rotom_wash_1, pheromosa_3, pheromosa_2, pheromosa_1, rampardos_2, garchomp_2, magearna_2, naganadel_1, metagross_mega_1, metagross_mega_2, magearna_1, dragonite_1, dragonite_2, manaphy_1, kommoo_1, genesect_1, landorus_therian_1, greninja_1, greninja_2, greninja_3, medicham_mega_1, zygarde_complete_1, slowbro_mega_1, slowbro_mega_2, donphan_1, aegislash_1, magnezone_1, mew_1, lopunny_mega_1, garchomp_1, ferrothorn_1, celesteela_1, aggron_mega_1, venusaur_mega_1, tapu_fini_2, primarina_1, blastoise_mega_1, archeops_1, zeraora_1, necrozma_1, mawile_mega_1, kartana_2, kartana_1, krookodile_1, heracross_mega_1, golem_1, durant_1, diancie_mega_1, deoxys_s_1, sawk_1, cresselia_1, blaziken_mega_1, clefable_1, stunfisk_1, weavile_2, magnezone_2]
  465. #for all Mienshao sets
  466. mienshao_1.lmatchups = [togekiss_2, celesteela_2, scizor_mega_1, landorus_therian_2, gyarados_mega_5, greninja_4, venusaur_mega_2, gallade_mega_1, swampert_mega_1, deoxys_s_2, donphan_2, salamence_1, zapdos_1, rotom_wash_1, pheromosa_3, pheromosa_2, pheromosa_1, garchomp_2, raikou_1, garchomp_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, naganadel_1, metagross_mega_2, metagross_mega_1, magearna_1, manaphy_1, genesect_1, kommoo_1, landorus_therian_1, greninja_1, medicham_mega_1, zygarde_complete_1, slowbro_mega_1, tapu_lele_1, porygonz_2, gardevoir_mega_1, donphan_1, altaria_mega_1, aegislash_1, meloetta_1, mew_1, lopunny_mega_1, celesteela_1, aggron_mega_1, venusaur_mega_1, tapu_fini_1, primarina_1, blastoise_mega_1, archeops_1, zeraora_1, sableye_mega_1, necrozma_1, mawile_mega_1, kartana_1, krookodile_1, hoopau_1, heracross_mega_1, haxorus_1, durant_1, diancie_mega_1, deoxys_s_1, clefable_1, illumise_1, greninja_3, greninja_2, tapu_fini_2, xurkitree_1, kartana_2, blacephalon_1, cresselia_1, genesect_2, slowbro_mega_2, gyarados_mega_4, altaria_mega_2, salazzle_1, latias_mega_1, darmanitan_1, whimsicott_1, weavile_1, weavile_2, infernape_1, zeraora_2, necrozma_2, meloetta_2, magnezone_2]
  467. #for all Umbreon sets
  468. umbreon_1.lmatchups = [togekiss_2, tapu_lele_1, venusaur_mega_2, gallade_mega_1, carracosta_1, volcarona_2, haxorus_2, araquanid_1, pyukumuku_1, pheromosa_3, pheromosa_2, pheromosa_1, vigoroth_1, kyurem_1, magearna_1, manaphy_1, kommoo_1, genesect_1, jumpluff_1, medicham_mega_1, zygarde_complete_1, slowbro_mega_1, slowbro_mega_2, gardevoir_mega_1, audino_mega_1, altaria_mega_1, altaria_mega_2, meloetta_1, aron_1, mew_2, lopunny_mega_1, ferrothorn_1, chansey_1, celesteela_1, smeargle_1, tyranitar_mega_1, tapu_fini_1, tapu_fini_2, primarina_1, zeraora_1, volcarona_1, riolu_1, sableye_mega_1, mawile_mega_1, raikou_1, kartana_2, krookodile_1, heracross_mega_1, durant_1, diancie_mega_1, deoxys_s_1, sawk_1, xurkitree_1, blaziken_mega_1, clefable_1, illumise_1, vivillon_1, terrakion_1, magearna_2, mienshao_1, type_null_1]
  469. #for all Vigoroth sets
  470. vigoroth_1.lmatchups = [togekiss_2, togekiss_1, celesteela_2, greninja_4, venusaur_mega_2, dragonite_4, gallade_mega_1, carracosta_1, deoxys_s_2, volcarona_2, zapdos_1, rotom_wash_1, pheromosa_3, pheromosa_2, pheromosa_1, illumise_1, kyurem_1, naganadel_1, dragonite_2, charizard_mega_y_2, charizard_mega_y, manaphy_1, kommoo_1, genesect_1, genesect_1, greninja_1, greninja_2, greninja_3, medicham_mega_1, slowbro_mega_2, slowbro_mega_1, tapu_lele_1, porygonz_2, porygonz_1, gardevoir_mega_1, altaria_mega_2, altaria_mega_1, magnezone_1, meloetta_1, mew_1, heatran_1, heatran_1, garchomp_1, venusaur_mega_1, smeargle_1, latias_mega_1, tapu_fini_1, tapu_fini_2, primarina_1, blastoise_mega_1, zeraora_1, volcarona_1, victini_2, sableye_mega_1, pinser_mega_1, necrozma_1, raikou_1, kartana_1, krookodile_1, hoopau_1, heracross_mega_1, diancie_mega_1, deoxys_s_1, sawk_1, xurkitree_1, cresselia_1, blaziken_mega_1, clefable_1, stunfisk_1, salazzle_1, whimsicott_1, excadrill_1, terrakion_1, magearna_2, mienshao_1, porygonz_3, charizard_mega_x_3, infernape_1, type_null_1, meloetta_2, magnezone_2]
  471. #for all Rampardos sets
  472. rampardos_1.lmatchups = [celesteela_2, landorus_therian_2, gyarados_mega_5, greninja_4, venusaur_mega_2, dragonite_4, dragonite_3, gallade_mega_1, carracosta_1, avalugg_1, swampert_mega_1, deoxys_s_2, donphan_2, porygon2_1, rotom_wash_1, pheromosa_3, pheromosa_2, rampardos_2, gyarados_mega, gyarados_mega_2, gyarados_mega_3, gyarados_mega_4, naganadel_1, metagross_mega_1, metagross_mega_2, magearna_1, dragonite_1, dragonite_2, manaphy_1, kommoo_1, genesect_2, greninja_1, greninja_2, greninja_3, medicham_mega_1, slowbro_mega_1, slowbro_mega_2, tapu_lele_1, gardevoir_mega_1, donphan_1, audino_mega_1, altaria_mega_1, altaria_mega_2, aegislash_1, magnezone_1, meloetta_1, aron_1, mew_1, mew_2, lopunny_mega_1, heatran_1, heatran_2, chansey_1, aggron_mega_1, venusaur_mega_1, latias_mega_1, tapu_fini_1, tapu_fini_2, primarina_1, blastoise_mega_1, zeraora_1, riolu_1, sableye_mega_1, necrozma_1, mawile_mega_1, raikou_1, krookodile_1, hoopau_1, heracross_mega_1, haxorus_1, golem_1, deoxys_s_1, sawk_1, crustle_1, cresselia_1, blaziken_mega_1, clefable_1, stunfisk_1, darmanitan_1, whimsicott_1, terrakion_1, magearna_2, mienshao_1, garchomp_2, umbreon_1, vigoroth_1, weavile_2, porygonz_3, zeraora_2, type_null_1, meloetta_2, magnezone_2]
  473. rampardos_2.lmatchups = [celesteela_2, scizor_mega_1, landorus_therian_2, gyarados_mega_5, greninja_4, venusaur_mega_2, gallade_mega_1, carracosta_1, avalugg_1, swampert_mega_1, deoxys_s_2, donphan_2, porygon2_1, rotom_wash_1, pheromosa_3, pheromosa_2, gyarados_mega, gyarados_mega_2, gyarados_mega_3, gyarados_mega_4, naganadel_1, metagross_mega_1, metagross_mega_2, magearna_1, manaphy_1, kommoo_1, genesect_1, genesect_2, landorus_therian_1, greninja_1, greninja_3, greninja_2, medicham_mega_1, zygarde_complete_1, slowbro_mega_2, slowbro_mega_1, tapu_lele_1, donphan_1, audino_mega_1, altaria_mega_1, altaria_mega_2, aegislash_1, meloetta_1, mew_1, mew_2, lopunny_mega_1, heatran_1, garchomp_2, garchomp_1, ferrothorn_1, chansey_1, celesteela_1, aggron_mega_1, venusaur_mega_1, latias_mega_1, tapu_fini_1, tapu_fini_2, primarina_1, blastoise_mega_1, zeraora_1, riolu_1, sableye_mega_1, necrozma_1, mawile_mega_1, raikou_1, krookodile_1, hoopau_1, heracross_mega_1, haxorus_1, golem_1, deoxys_s_1, sawk_1, cresselia_1, blaziken_mega_1, clefable_1, stunfisk_1, illumise_1, darmanitan_1, whimsicott_1, magearna_2, mienshao_1, umbreon_1, vigoroth_1, weavile_2, zeraora_2, type_null_1, meloetta_2]
  474. #for all Pheromosa sets
  475. pheromosa_1.lmatchups = [togekiss_2, togekiss_1, celesteela_2, scizor_mega_1, landorus_therian_2, greninja_4, venusaur_mega_2, dragonite_4, dragonite_3, gallade_mega_1, carracosta_1, swampert_mega_1, deoxys_s_2, volcarona_2, araquanid_1, pyukumuku_1, zapdos_1, rotom_wash_1, pheromosa_3, pheromosa_2, naganadel_1, metagross_mega_2, magearna_1, dragonite_1, dragonite_2, charizard_mega_y, charizard_mega_y_2, charizard_mega_x, charizard_mega_x_2, manaphy_1, kommoo_1, genesect_1, genesect_2, greninja_1, greninja_2, greninja_3, medicham_mega_1, slowbro_mega_1, slowbro_mega_2, tapu_lele_1, porygonz_2, gardevoir_mega_1, audino_mega_1, altaria_mega_1, altaria_mega_2, aegislash_1, magnezone_1, meloetta_1, aron_1, mew_1, mew_2, lopunny_mega_1, chansey_1, celesteela_1, venusaur_mega_1, latias_mega_1, tapu_fini_1, tapu_fini_2, primarina_1, blastoise_mega_1, zeraora_1, volcarona_1, riolu_1, victini_2, victini_1, sableye_mega_1, pinser_mega_1, necrozma_1, blacephalon_1, raikou_1, heracross_mega_1, diancie_mega_1, deoxys_s_1, crustle_1, cresselia_1, blaziken_mega_1, clefable_1, stunfisk_1, illumise_1, shedinja_1, salazzle_1, darmanitan_1, whimsicott_1, magearna_2, rampardos_2, weavile_2, charizard_mega_x_3, zeraora_2, necrozma_2, meloetta_2, magnezone_2]
  476. pheromosa_2.lmatchups = [togekiss_2, togekiss_1, celesteela_2, scizor_mega_1, landorus_therian_2, gyarados_mega_5, venusaur_mega_2, dragonite_4, dragonite_3, gallade_mega_1, carracosta_1, avalugg_1, swampert_mega_1, deoxys_s_2, donphan_2, araquanid_1, zapdos_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, gyarados_mega_4, metagross_mega_1, metagross_mega_2, magearna_1, dragonite_1, dragonite_2, charizard_mega_y_2, charizard_mega_x, charizard_mega_x_2, kommoo_1, genesect_1, zygarde_complete_1, slowbro_mega_2, slowbro_mega_1, tapu_lele_1, donphan_1, audino_mega_1, altaria_mega_1, altaria_mega_2, aegislash_1, meloetta_1, mew_1, mew_2, celesteela_1, aggron_mega_1, venusaur_mega_1, latias_mega_1, tapu_fini_1, tapu_fini_2, primarina_1, blastoise_mega_1, riolu_1, victini_1, victini_2, sableye_mega_1, pinser_mega_1, necrozma_1, blacephalon_1, mawile_mega_1, heracross_mega_1, haxorus_1, golem_1, deoxys_s_1, sawk_1, crustle_1, cresselia_1, blaziken_mega_1, clefable_1, stunfisk_1, illumise_1, shedinja_1, darmanitan_1, whimsicott_1, magearna_2, garchomp_2, charizard_mega_x_3, necrozma_2, meloetta_2, magnezone_2]
  477. pheromosa_3.lmatchups = [togekiss_2, togekiss_1, celesteela_2, scizor_mega_1, landorus_therian_2, gyarados_mega_5, dragonite_4, dragonite_3, gallade_mega_1, carracosta_1, avalugg_1, swampert_mega_1, deoxys_s_2, donphan_2, araquanid_1, pyukumuku_1, zapdos_1, rotom_wash_1, charizard_mega_x_2, gyarados_mega, gyarados_mega_2, gyarados_mega_3, gyarados_mega_4, metagross_mega_1, metagross_mega_2, magearna_1, dragonite_1, dragonite_2, manaphy_1, kommoo_1, tapu_lele_1, gardevoir_mega_1, donphan_1, audino_mega_1, altaria_mega_1, altaria_mega_2, aegislash_1, magnezone_1, aron_1, celesteela_1, aggron_mega_1, venusaur_mega_1, tapu_fini_1, tapu_fini_2, primarina_1, blastoise_mega_1, riolu_1, victini_1, victini_2, pinser_mega_1, necrozma_1, heracross_mega_1, golem_1, diancie_mega_1, deoxys_s_1, sawk_1, crustle_1, cresselia_1, blaziken_mega_1, clefable_1, stunfisk_1, darmanitan_1, magearna_2, garchomp_2, meloetta_2, magnezone_2]
  478. #for all Rotom-Wash sets
  479. rotom_wash_1.lmatchups = [venusaur_mega_2, dragonite_4, dragonite_3, deoxys_s_2, volcarona_2, salamence_1, hoopau_2, haxorus_2, porygon2_1, zapdos_1, kyurem_1, naganadel_1, metagross_mega_2, magearna_1, dragonite_2, charizard_mega_x, charizard_mega_x_2, kommoo_1, jumpluff_1, medicham_mega_1, zygarde_complete_1, tapu_lele_1, porygonz_2, porygonz_1, gardevoir_mega_1, audino_mega_1, altaria_mega_1, altaria_mega_2, aegislash_1, magnezone_1, meloetta_1, mew_1, mew_2, lopunny_mega_1, heatran_2, ferrothorn_1, chansey_1, venusaur_mega_1, smeargle_1, latias_mega_1, archeops_1, zeraora_1, volcarona_1, victini_1, victini_2, sableye_mega_1, raikou_1, kartana_1, kartana_2, heracross_mega_1, haxorus_1, xurkitree_1, cresselia_1, clefable_1, vivillon_1, whimsicott_1, excadrill_1, garchomp_2, umbreon_1, pheromosa_2, weavile_1, porygonz_3, charizard_mega_x_3, zeraora_2, necrozma_2, type_null_1, meloetta_2, magnezone_2]
  480. #for all Zapdos sets
  481. zapdos_1.lmatchups = [greninja_4, dragonite_4, dragonite_3, carracosta_1, swampert_mega_1, haxorus_2, kyurem_1, umbreon_1, naganadel_1, charizard_mega_x_2, charizard_mega_x, charizard_mega_y, charizard_mega_y_2, kommoo_1, genesect_1, genesect_2, landorus_therian_1, jumpluff_1, greninja_1, greninja_2, greninja_3, zygarde_complete_1, tapu_lele_1, porygonz_1, porygonz_2, gardevoir_mega_1, donphan_1, aegislash_1, magnezone_1, meloetta_1, aron_1, mew_1, mew_2, garchomp_1, venusaur_mega_1, smeargle_1, tyranitar_mega_1, latias_mega_1, archeops_1, zeraora_1, volcarona_1, sableye_mega_1, necrozma_1, raikou_1, krookodile_1, golem_1, diancie_mega_1, crustle_1, xurkitree_1, stunfisk_1, vivillon_1, shedinja_1, whimsicott_1, excadrill_1, terrakion_1, magearna_2, garchomp_2, rampardos_2, rampardos_1, porygonz_3, charizard_mega_x_3, infernape_1, zeraora_2, meloetta_2, magnezone_2]
  482. #for all Porygon2 sets
  483. porygon2_1.lmatchups = [togekiss_2, celesteela_2, scizor_mega_1, venusaur_mega_2, gallade_mega_1, deoxys_s_2, volcarona_2, araquanid_1, pyukumuku_1, kyurem_1, metagross_mega_1, metagross_mega_2, magearna_1, manaphy_1, kommoo_1, medicham_mega_1, slowbro_mega_1, slowbro_mega_2, tapu_lele_1, porygonz_2, gardevoir_mega_1, audino_mega_1, magnezone_1, meloetta_1, aron_1, mew_1, mew_2, lopunny_mega_1, ferrothorn_1, chansey_1, celesteela_1, aggron_mega_1, venusaur_mega_1, smeargle_1, tyranitar_mega_1, tapu_fini_1, tapu_fini_2, zeraora_1, volcarona_1, riolu_1, sableye_mega_1, mawile_mega_1, raikou_1, kartana_2, kartana_1, incineroar_1, hoopau_1, heracross_mega_1, durant_1, sawk_1, crustle_1, xurkitree_1, cresselia_1, blaziken_mega_1, clefable_1, illumise_1, vivillon_1, whimsicott_1, terrakion_1, mienshao_1, umbreon_1, vigoroth_1, pheromosa_1, pheromosa_2, pheromosa_3, zapdos_1, infernape_1, necrozma_2, type_null_1, magnezone_2]
  484. #for all Pyukumuku sets
  485. pyukumuku_1.lmatchups = [celesteela_2, gyarados_mega_5, dragonite_3, sableye_mega_1, hoopau_2, haxorus_2, araquanid_1, aegislash_1, gyarados_mega_3, gyarados_mega_4, charizard_mega_x, kommoo_1, jumpluff_1, greninja_2, medicham_mega_1, porygonz_1, audino_mega_1, magnezone_1, aron_1, mew_2, lopunny_mega_1, heatran_2, ferrothorn_1, venusaur_mega_1, smeargle_1, tyranitar_mega_1, tapu_fini_1, archeops_1, zeraora_1, victini_1, pinser_mega_1, blacephalon_1, mawile_mega_1, mawile_mega_1, raikou_1, kartana_1, kartana_2, krookodile_1, heracross_mega_1, xurkitree_1, blaziken_mega_1, vivillon_1, salazzle_1, whimsicott_1, excadrill_1, terrakion_1, mienshao_1, vigoroth_1, rampardos_1, rampardos_2, pheromosa_2, rotom_wash_1, zapdos_1, weavile_1, zeraora_2, type_null_1, meloetta_2, magnezone_2]
  486. #for all Araquanid sets
  487. araquanid_1.lmatchups = [landorus_therian_2, gyarados_mega_5, venusaur_mega_2, dragonite_4, dragonite_3, carracosta_1, salamence_1, haxorus_2, vigoroth_1, gyarados_mega, gyarados_mega_2, gyarados_mega_4, metagross_mega_1, metagross_mega_2, dragonite_1, dragonite_2, manaphy_1, jumpluff_1, medicham_mega_1, zygarde_complete_1, porygonz_1, donphan_1, magnezone_1, aegislash_1, aron_1, lopunny_mega_1, garchomp_1, ferrothorn_1, aggron_mega_1, venusaur_mega_1, smeargle_1, tyranitar_mega_1, archeops_1, zeraora_1, victini_1, pinser_mega_1, necrozma_1, raikou_1, kartana_2, kartana_1, heracross_mega_1, haxorus_1, golem_1, diancie_mega_1, sawk_1, crustle_1, xurkitree_1, vivillon_1, whimsicott_1, terrakion_1, mienshao_1, rampardos_1, rampardos_2, rotom_wash_1, zapdos_1, weavile_1, zeraora_2, type_null_1, magnezone_2]
  488. #for all Salamence sets
  489. salamence_1.lmatchups = [togekiss_2, togekiss_1, celesteela_2, scizor_mega_1, greninja_4, venusaur_mega_2, dragonite_4, avalugg_1, swampert_mega_1, deoxys_s_2, hoopau_1, heatran_1, naganadel_1, magearna_1, dragonite_2, genesect_2, genesect_1, jumpluff_1, greninja_1, greninja_2, greninja_3, medicham_mega_1, slowbro_mega_1, slowbro_mega_2, tapu_lele_1, porygonz_1, porygonz_2, gardevoir_mega_1, audino_mega_1, altaria_mega_1, altaria_mega_2, aegislash_1, magnezone_1, meloetta_1, aron_1, mew_2, chansey_1, venusaur_mega_1, tyranitar_mega_1, latias_mega_1, tapu_fini_1, tapu_fini_2, primarina_1, blastoise_mega_1, archeops_1, victini_2, sableye_mega_1, necrozma_1, blacephalon_1, mawile_mega_1, raikou_1, incineroar_1, diancie_mega_1, deoxys_s_1, crustle_1, xurkitree_1, cresselia_1, clefable_1, illumise_1, vivillon_1, shedinja_1, whimsicott_1, magearna_2, umbreon_1, vigoroth_1, rampardos_1, rampardos_2, pheromosa_3, pheromosa_2, pheromosa_1, zapdos_1, porygon2_1, haxorus_2, pyukumuku_1, weavile_1, weavile_2, porygonz_3, necrozma_2, type_null_1, meloetta_2, magnezone_2]
  490. #for all Swampert-Mega sets
  491. swampert_mega_1.lmatchups = [togekiss_2, togekiss_1, celesteela_2, scizor_mega_1, gyarados_mega_5, venusaur_mega_2, gallade_mega_1, avalugg_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, gyarados_mega_4, kyurem_1, charizard_mega_y, charizard_mega_y_2, charizard_mega_x, charizard_mega_x_2, kommoo_1, jumpluff_1, greninja_1, greninja_2, slowbro_mega_1, slowbro_mega_2, tapu_lele_1, porygonz_1, audino_mega_1, altaria_mega_2, mew_2, heatran_2, ferrothorn_1, chansey_1, celesteela_1, venusaur_mega_1, smeargle_1, latias_mega_1, tapu_fini_1, tapu_fini_2, volcarona_1, sableye_mega_1, pinser_mega_1, necrozma_1, kartana_1, kartana_2, heracross_mega_1, diancie_mega_1, cresselia_1, clefable_1, illumise_1, vivillon_1, shedinja_1, whimsicott_1, excadrill_1, umbreon_1, vigoroth_1, rotom_wash_1, porygon2_1, pyukumuku_1, araquanid_1, deoxys_s_2, necrozma_2, type_null_1]
  492. #for all Avalugg sets
  493. avalugg_1.lmatchups = [togekiss_2, togekiss_1, scizor_mega_1, tapu_lele_1, venusaur_mega_2, gallade_mega_1, carracosta_1, kyurem_1, metagross_mega_1, magearna_1, charizard_mega_y, charizard_mega_y_2, charizard_mega_x_2, charizard_mega_x, jumpluff_1, greninja_1, greninja_2, greninja_3, medicham_mega_1, slowbro_mega_1, slowbro_mega_2, porygonz_1, gardevoir_mega_1, audino_mega_1, altaria_mega_2, altaria_mega_1, meloetta_1, aron_1, mew_2, mew_1, lopunny_mega_1, heatran_1, ferrothorn_1, chansey_1, celesteela_1, venusaur_mega_1, smeargle_1, tyranitar_mega_1, latias_mega_1, primarina_1, blastoise_mega_1, victini_2, sableye_mega_1, necrozma_1, mawile_mega_1, kartana_2, kartana_1, incineroar_1, hoopau_1, heracross_mega_1, golem_1, durant_1, diancie_mega_1, sawk_1, crustle_1, cresselia_1, clefable_1, stunfisk_1, illumise_1, vivillon_1, shedinja_1, salazzle_1, whimsicott_1, mienshao_1, umbreon_1, vigoroth_1, pheromosa_1, rotom_wash_1, porygon2_1, pyukumuku_1, araquanid_1, deoxys_s_2, infernape_1, necrozma_2, type_null_1, magnezone_1, magnezone_2]
  494. #for all Carracosta sets
  495. carracosta_1.lmatchups = [gyarados_mega_5, venusaur_mega_2, dragonite_4, dragonite_3, gallade_mega_1, latias_mega_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, gyarados_mega_4, naganadel_1, metagross_mega_1, metagross_mega_2, dragonite_1, dragonite_2, manaphy_1, kommoo_1, jumpluff_1, greninja_1, medicham_mega_1, zygarde_complete_1, slowbro_mega_1, slowbro_mega_2, altaria_mega_1, altaria_mega_2, aegislash_1, aron_1, mew_1, mew_2, lopunny_mega_1, garchomp_1, ferrothorn_1, venusaur_mega_1, smeargle_1, tapu_fini_1, tapu_fini_2, primarina_1, blastoise_mega_1, necrozma_1, raikou_1, heracross_mega_1, haxorus_1, cresselia_1, clefable_1, vivillon_1, whimsicott_1, excadrill_1, mienshao_1, garchomp_2, rotom_wash_1, porygon2_1, haxorus_2, salamence_1, pyukumuku_1, swampert_mega_1, infernape_1, zeraora_2]
  496. #for all Gallade-Mega sets
  497. gallade_mega_1.lmatchups = [togekiss_2, togekiss_1, celesteela_2, landorus_therian_2, greninja_4, venusaur_mega_2, dragonite_4, dragonite_3, riolu_1, naganadel_1, magearna_1, dragonite_2, dragonite_1, kommoo_1, genesect_1, landorus_therian_1, jumpluff_1, greninja_1, greninja_2, greninja_3, zygarde_complete_1, slowbro_mega_2, slowbro_mega_1, tapu_lele_1, porygonz_2, gardevoir_mega_1, altaria_mega_1, altaria_mega_2, aegislash_1, magnezone_1, meloetta_1, mew_1, mew_2, venusaur_mega_1, latias_mega_1, tapu_fini_1, tapu_fini_2, primarina_1, archeops_1, zeraora_1, victini_1, victini_2, sableye_mega_1, pinser_mega_1, necrozma_1, blacephalon_1, mawile_mega_1, raikou_1, kartana_1, kartana_2, hoopau_1, heracross_mega_1, durant_1, diancie_mega_1, deoxys_s_1, xurkitree_1, cresselia_1, clefable_1, stunfisk_1, illumise_1, salazzle_1, whimsicott_1, magearna_2, garchomp_2, zapdos_1, salamence_1, pyukumuku_1, araquanid_1, deoxys_s_2, infernape_1, necrozma_2, meloetta_2, magnezone_2]
  498. #for all Scizor-Mega sets
  499. scizor_mega_1.lmatchups = [celesteela_2, gyarados_mega_3, gyarados_mega_4, kyurem_1, naganadel_1, dragonite_2, charizard_mega_y, charizard_mega_y_2, charizard_mega_x, charizard_mega_x_2, manaphy_1, kommoo_1, genesect_1, genesect_2, jumpluff_1, greninja_2, medicham_mega_1, slowbro_mega_1, slowbro_mega_2, porygonz_1, altaria_mega_1, altaria_mega_2, aegislash_1, magnezone_1, meloetta_1, mew_1, mew_2, heatran_1, heatran_2, garchomp_1, celesteela_1, smeargle_1, tapu_fini_1, tapu_fini_2, primarina_1, blastoise_mega_1, zeraora_1, volcarona_1, victini_1, victini_2, pinser_mega_1, necrozma_1, blacephalon_1, raikou_1, kartana_1, krookodile_1, incineroar_1, hoopau_1, xurkitree_1, cresselia_1, blaziken_mega_1, stunfisk_1, illumise_1, vivillon_1, shedinja_1, salazzle_1, darmanitan_1, whimsicott_1, excadrill_1, magearna_2, umbreon_1, vigoroth_1, rampardos_1, rotom_wash_1, zapdos_1, hoopau_2, volcarona_2, pyukumuku_1, araquanid_1, carracosta_1, gallade_mega_1, dragonite_4, venusaur_mega_2, greninja_4, porygonz_3, charizard_mega_x_3, infernape_1, type_null_1, magnezone_2]
  500. #for all Togekiss sets
  501. togekiss_1.lmatchups = [kyurem_1, naganadel_1, metagross_mega_1, metagross_mega_2, magearna_1, dragonite_1, jumpluff_1, medicham_mega_1, slowbro_mega_2, slowbro_mega_1, gardevoir_mega_1, audino_mega_1, aegislash_1, magnezone_1, meloetta_1, meloetta_1, mew_2, lopunny_mega_1, garchomp_1, ferrothorn_1, chansey_1, celesteela_1, aggron_mega_1, smeargle_1, tyranitar_mega_1, tapu_fini_1, tapu_fini_2, archeops_1, zeraora_1, victini_1, sableye_mega_1, pinser_mega_1, mawile_mega_1, raikou_1, kartana_2, durant_1, diancie_mega_1, xurkitree_1, cresselia_1, blaziken_mega_1, clefable_1, stunfisk_1, vivillon_1, salazzle_1, whimsicott_1, terrakion_1, magearna_2, mienshao_1, umbreon_1, rampardos_1, rampardos_2, rotom_wash_1, zapdos_1, haxorus_2, hoopau_2, volcarona_2, pyukumuku_1, carracosta_1, scizor_mega_1, celesteela_2, weavile_2, zeraora_2, necrozma_2, type_null_1, magnezone_2]
  502. togekiss_2.lmatchups = [kyurem_1, naganadel_1, metagross_mega_1, metagross_mega_2, magearna_1, charizard_mega_y, charizard_mega_y_2, manaphy_1, genesect_1, genesect_2, jumpluff_1, greninja_2, slowbro_mega_2, tapu_lele_1, porygonz_1, porygonz_2, gardevoir_mega_1, audino_mega_1, aegislash_1, magnezone_1, meloetta_1, aron_1, mew_1, mew_2, heatran_1, heatran_2, ferrothorn_1, chansey_1, celesteela_1, smeargle_1, tapu_fini_1, tapu_fini_2, archeops_1, zeraora_1, volcarona_1, necrozma_1, blacephalon_1, mawile_mega_1, raikou_1, kartana_2, durant_1, diancie_mega_1, deoxys_s_1, xurkitree_1, cresselia_1, clefable_1, stunfisk_1, vivillon_1, shedinja_1, salazzle_1, whimsicott_1, terrakion_1, magearna_2, rampardos_2, rampardos_1, rotom_wash_1, zapdos_1, hoopau_2, volcarona_2, pyukumuku_1, carracosta_1, venusaur_mega_2, scizor_mega_1, celesteela_2, porygonz_3, infernape_1, zeraora_2, necrozma_2, meloetta_2, magnezone_2]
  503. #for all Weavile sets
  504. weavile_1.lmatchups = [crustle_1, gyarados_mega, gyarados_mega_2, gyarados_mega_3, gyarados_mega_4, gyarados_mega_5, kyurem_1, naganadel_1, magearna_1, magearna_2, charizard_mega_x_2, kommoo_1, genesect_1, genesect_2, landorus_therian_2, greninja_1, greninja_2, greninja_3, greninja_4, porygonz_2, donphan_1, donphan_2, altaria_mega_1, altaria_mega_2, lopunny_mega_1, garchomp_2, ferrothorn_1, celesteela_1, celesteela_2, aggron_mega_1, tyranitar_mega_1, tapu_fini_1, tapu_fini_2, primarina_1, blastoise_mega_1, zeraora_1, sableye_mega_1, mawile_mega_1, raikou_1, kartana_1, kartana_2, krookodile_1, incineroar_1, heracross_mega_1, haxorus_1, golem_1, durant_1, diancie_mega_1, deoxys_s_1, sawk_1, blaziken_mega_1, clefable_1, stunfisk_1, salazzle_1, darmanitan_1, terrakion_1, umbreon_1, vigoroth_1, rampardos_1, rampardos_2, pheromosa_1, pheromosa_2, pheromosa_3, zapdos_1, porygon2_1, swampert_mega_1, avalugg_1, carracosta_1, scizor_mega_1, togekiss_1, togekiss_2, weavile_2, charizard_mega_x_3, infernape_1, zeraora_2, type_null_1, magnezone_2]
  505. weavile_2.lmatchups = [gyarados_mega, gyarados_mega_2, gyarados_mega_3, gyarados_mega_4, gyarados_mega_5, metagross_mega_1, metagross_mega_2, magearna_1, magearna_2, charizard_mega_y_2, charizard_mega_x, charizard_mega_x_2, manaphy_1, genesect_1, genesect_2, landorus_therian_2, slowbro_mega_1, slowbro_mega_2, tapu_lele_1, porygonz_2, gardevoir_mega_1, audino_mega_1, altaria_mega_1, aegislash_1, lopunny_mega_1, garchomp_2, ferrothorn_1, chansey_1, celesteela_1, celesteela_2, aggron_mega_1, venusaur_mega_1, venusaur_mega_2, tapu_fini_1, tapu_fini_2, primarina_1, blastoise_mega_1, zeraora_1, volcarona_2, victini_2, sableye_mega_1, necrozma_1, mawile_mega_1, kartana_1, kartana_2, krookodile_1, incineroar_1, heracross_mega_1, haxorus_1, durant_1, diancie_mega_1, deoxys_s_1, sawk_1, crustle_1, xurkitree_1, blaziken_mega_1, clefable_1, illumise_1, darmanitan_1, umbreon_1, vigoroth_1, pheromosa_2, pheromosa_3, rotom_wash_1, zapdos_1, porygon2_1, pyukumuku_1, araquanid_1, swampert_mega_1, avalugg_1, carracosta_1, gallade_mega_1, scizor_mega_1, togekiss_2, porygonz_3, charizard_mega_x_3, infernape_1, zeraora_2, type_null_1, magnezone_2]
  506. #for all Infernape sets
  507. infernape_1.lmatchups = [gyarados_mega, gyarados_mega_2, gyarados_mega_3, gyarados_mega_4, gyarados_mega_5, naganadel_1, dragonite_1, dragonite_2, dragonite_3, dragonite_4, charizard_mega_x, charizard_mega_x_2, charizard_mega_x_3, manaphy_1, kommoo_1, landorus_therian_2, jumpluff_1, greninja_1, greninja_2, greninja_3, greninja_4, zygarde_complete_1, slowbro_mega_1, slowbro_mega_2, tapu_lele_1, porygonz_2, gardevoir_mega_1, audino_mega_1, altaria_mega_1, altaria_mega_2, meloetta_1, mew_2, lopunny_mega_1, garchomp_1, garchomp_2, chansey_1, latias_mega_1, tapu_fini_1, tapu_fini_2, primarina_1, blastoise_mega_1, archeops_1, zeraora_1, volcarona_1, volcarona_2, victini_1, victini_2, sableye_mega_1, blacephalon_1, raikou_1, kartana_2, hoopau_1, haxorus_1, durant_1, diancie_mega_1, deoxys_s_1, deoxys_s_2, sawk_1, cresselia_1, blaziken_mega_1, clefable_1, salazzle_1, darmanitan_1, umbreon_1, rampardos_1, rampardos_2, pheromosa_1, pheromosa_2, pheromosa_3, rotom_wash_1, pyukumuku_1, araquanid_1, salamence_1, swampert_mega_1, togekiss_1, zeraora_2, necrozma_2, meloetta_2]
  508. #for all Type: Null sets
  509. type_null_1.lmatchups = [gyarados_mega_3, gyarados_mega_4, charizard_mega_y, charizard_mega_x, charizard_mega_x_3, manaphy_1, kommoo_1, jumpluff_1, greninja_2, medicham_mega_1, porygonz_1, gardevoir_mega_1, audino_mega_1, magnezone_1, aron_1, mew_1, lopunny_mega_1, celesteela_2, smeargle_1, tapu_fini_1, zeraora_1, volcarona_1, necrozma_2, blacephalon_1, mawile_mega_1, kartana_1, kartana_2, krookodile_1, incineroar_1, heracross_mega_1, xurkitree_1, blaziken_mega_1, illumise_1, vivillon_1, salazzle_1, whimsicott_1, terrakion_1, mienshao_1, pheromosa_1, pheromosa_2, pheromosa_3, zapdos_1, carracosta_1, gallade_mega_1, togekiss_2, magnezone_2]
  510.  
  511. #opponents losses list
  512. opponent_loss_1 = []
  513. opponent_loss_2 = []
  514. opponent_loss_3 = []
  515. opponent_loss_4 = []
  516.  
  517. #getting a mon object
  518. def getmon(mon):
  519. #gyaradosmega
  520. if mon == "gyarados mega" or mon == "mega gyarados" or mon == "megados" or mon == "gyarados" or mon == "gyara" or mon == "megagyarados" or mon == "gyaradosmega" or mon == "mgyara":
  521. print()
  522. print("1: " + gyarados_mega.name + ": " + gyarados_mega.nature + " nature, item: " + gyarados_mega.item + ", ev spread: " + gyarados_mega.ev_spread + ", \nmoveset: " + gyarados_mega.move1 + ", " + gyarados_mega.move2 + ", " + gyarados_mega.move3 + ", " + gyarados_mega.move4)
  523. print("2: " + gyarados_mega_2.name + ": " + gyarados_mega_2.nature + " nature, item: " + gyarados_mega_2.item + ", ev spread: " + gyarados_mega_2.ev_spread + ", \nmoveset: " + gyarados_mega_2.move1 + ", " + gyarados_mega_2.move2 + ", " + gyarados_mega_2.move3 + ", " + gyarados_mega_2.move4)
  524. print("3: " + gyarados_mega_3.name + ": " + gyarados_mega_3.nature + " nature, item: " + gyarados_mega_3.item + ", ev spread: " + gyarados_mega_3.ev_spread + ", \nmoveset: " + gyarados_mega_3.move1 + ", " + gyarados_mega_3.move2 + ", " + gyarados_mega_3.move3 + ", " + gyarados_mega_3.move4)
  525. print("4: " + gyarados_mega_4.name + ": " + gyarados_mega_4.nature + " nature, item: " + gyarados_mega_4.item + ", ev spread: " + gyarados_mega_4.ev_spread + ", \nmoveset: " + gyarados_mega_4.move1 + ", " + gyarados_mega_4.move2 + ", " + gyarados_mega_4.move3 + ", " + gyarados_mega_4.move4)
  526. print("5: " + gyarados_mega_5.name + ": " + gyarados_mega_5.nature + " nature, item: " + gyarados_mega_5.item + ", ev spread: " + gyarados_mega_5.ev_spread + ", \nmoveset: " + gyarados_mega_5.move1 + ", " + gyarados_mega_5.move2 + ", " + gyarados_mega_5.move3 + ", " + gyarados_mega_5.move4)
  527. print()
  528. choice = input("select a set (number in front of it): ")
  529. if choice == "1":
  530. return gyarados_mega
  531. elif choice == "2":
  532. return gyarados_mega_2
  533. elif choice == "3":
  534. return gyarados_mega_3
  535. elif choice == "4":
  536. return gyarados_mega_4
  537. elif choice == "5":
  538. return gyarados_mega_5
  539. #zardx
  540. elif mon == "charx" or mon == "charizardx" or mon == "zardx" or mon == "mega charizard x" or mon == "charizard mega x" or mon == "zard mega x" or mon == "charizard x":
  541. print()
  542. print("1: " + charizard_mega_x.name + ": " + charizard_mega_x.nature + " nature, item: " + charizard_mega_x.item + ", ev spread: " + charizard_mega_x.ev_spread + ", \nmoveset: " + charizard_mega_x.move1 + ", " + charizard_mega_x.move2 + ", " + charizard_mega_x.move3 + ", " + charizard_mega_x.move4)
  543. print("2: " + charizard_mega_x_2.name + ": " + charizard_mega_x_2.nature + " nature, item: " + charizard_mega_x_2.item + ", ev spread: " + charizard_mega_x_2.ev_spread + ", \nmoveset: " + charizard_mega_x_2.move1 + ", " + charizard_mega_x_2.move2 + ", " + charizard_mega_x_2.move3 + ", " + charizard_mega_x_2.move4)
  544. print("3: " + charizard_mega_x_3.name + ": " + charizard_mega_x_3.nature + " nature, item: " + charizard_mega_x_3.item + ", ev spread: " + charizard_mega_x_3.ev_spread + ", \nmoveset: " + charizard_mega_x_3.move1 + ", " + charizard_mega_x_3.move2 + ", " + charizard_mega_x_3.move3 + ", " + charizard_mega_x_3.move4)
  545. print()
  546. choice = input("select a set (number in front of it): ")
  547. if choice == "1":
  548. return charizard_mega_x
  549. elif choice == "2":
  550. return charizard_mega_x_2
  551. elif choice == "3":
  552. return charizard_mega_x_3
  553. #zardy
  554. elif mon == "chary" or mon == "charizardy" or mon == "zardy" or mon == "mega charizard y" or mon == "charizard mega y" or mon == "zard mega y":
  555. print()
  556. print("1: " + charizard_mega_y.name + ": " + charizard_mega_y.nature + " nature, item: " + charizard_mega_y.item + ", ev spread: " + charizard_mega_y.ev_spread + ", \nmoveset: " + charizard_mega_y.move1 + ", " + charizard_mega_y.move2 + ", " + charizard_mega_y.move3 + ", " + charizard_mega_y.move4)
  557. print("2: " + charizard_mega_y_2.name + ": " + charizard_mega_y_2.nature + " nature, item: " + charizard_mega_y_2.item + ", ev spread:" + charizard_mega_y_2.ev_spread + ", \nmoveset: " + charizard_mega_y_2.move1 + ", " + charizard_mega_y_2.move2 + ", " + charizard_mega_y_2.move3 + ", " + charizard_mega_y_2.move4)
  558. print()
  559. choice = input("select a set (number in front of it): ")
  560. if choice == "1":
  561. return charizard_mega_y
  562. elif choice == "2":
  563. return charizard_mega_y_2
  564. #dnite
  565. elif mon == "dragonite" or mon == "dnite":
  566. print()
  567. print("1: " + dragonite_1.name + ": " + dragonite_1.nature + " nature, item: " + dragonite_1.item + ", ev spread: " + dragonite_1.ev_spread + ", \nmoveset: " + dragonite_1.move1 + ", " + dragonite_1.move2 + ", " + dragonite_1.move3 + ", " + dragonite_1.move4)
  568. print("2: " + dragonite_2.name + ": " + dragonite_2.nature + " nature, item: " + dragonite_2.item + ", ev spread: " + dragonite_2.ev_spread + ", \nmoveset: " + dragonite_2.move1 + ", " + dragonite_2.move2 + ", " + dragonite_2.move3 + ", " + dragonite_2.move4)
  569. print("3: " + dragonite_3.name + ": " + dragonite_3.nature + " nature, item: " + dragonite_3.item + ", ev spread: " + dragonite_3.ev_spread + ", \nmoveset: " + dragonite_3.move1 + ", " + dragonite_3.move2 + ", " + dragonite_3.move3 + ", " + dragonite_3.move4)
  570. print("4: " + dragonite_4.name + ": " + dragonite_4.nature + " nature, item: " + dragonite_4.item + ", ev spread: " + dragonite_4.ev_spread + ", \nmoveset: " + dragonite_4.move1 + ", " + dragonite_4.move2 + ", " + dragonite_4.move3 + ", " + dragonite_4.move4)
  571. print()
  572. choice = input("select a set (number in front of it): ")
  573. if choice == "1":
  574. return dragonite_1
  575. elif choice == "2":
  576. return dragonite_2
  577. elif choice == "3":
  578. return dragonite_3
  579. elif choice == "4":
  580. return dragonite_4
  581. #magearna
  582. elif mon == "magearna" or mon == "mag":
  583. print()
  584. print("1: " + magearna_1.name + ": " + magearna_1.nature + " nature, item: " + magearna_1.item + ", ev spread: " + magearna_1.ev_spread + ", \nmoveset: " + magearna_1.move1 + ", " + magearna_1.move2 + ", " + magearna_1.move3 + ", " + magearna_1.move4)
  585. print("2: " + magearna_2.name + ": " + magearna_2.nature + " nature, item: " + magearna_2.item + ", ev spread: " + magearna_2.ev_spread + ", \nmoveset: " + magearna_2.move1 + ", " + magearna_2.move2 + ", " + magearna_2.move3 + ", " + magearna_2.move4)
  586. print()
  587. choice = input("select a set (number in front of it): ")
  588. if choice == "1":
  589. return magearna_1
  590. elif choice == "2":
  591. return magearna_2
  592. #megagross
  593. elif mon == "mega metagross" or mon == "meta" or mon == "megagross" or mon == "metagross mega" or mon == "metagross" or mon == "mgross" or mon == "megametagross" or mon == "metagrossmega" or mon == "gross":
  594. print()
  595. print("1: " + metagross_mega_1.name + ": " + metagross_mega_1.nature + " nature, item: " + metagross_mega_1.item + ", ev spread: " + metagross_mega_1.ev_spread + ", \nmoveset: " + metagross_mega_1.move1 + ", " + metagross_mega_1.move2 + ", " + metagross_mega_1.move3 + ", " + metagross_mega_1.move4)
  596. print("2: " + metagross_mega_2.name + ": " + metagross_mega_2.nature + " nature, item: " + metagross_mega_2.item + ", ev spread: " + metagross_mega_2.ev_spread + ", \nmoveset: " + metagross_mega_2.move1 + ", " + metagross_mega_2.move2 + ", " + metagross_mega_2.move3 + ", " + metagross_mega_2.move4)
  597. print()
  598. choice = input("select a set (number in front of it): ")
  599. if choice == "1":
  600. return metagross_mega_1
  601. elif choice == "2":
  602. return metagross_mega_2
  603. #pz
  604. elif mon == "porygonz" or mon == "pz" or mon == "poryz" or mon == "porygon z" or mon == "porygon":
  605. print()
  606. print("1: " + porygonz_1.name + ": " + porygonz_1.nature + " nature, item: " + porygonz_1.item + ", ev spread: " + porygonz_1.ev_spread + ", \nmoveset: " + porygonz_1.move1 + ", " + porygonz_1.move2 + ", " + porygonz_1.move3 + ", " + porygonz_1.move4)
  607. print("2: " + porygonz_2.name + ": " + porygonz_2.nature + " nature, item: " + porygonz_2.item + ", ev spread: " + porygonz_2.ev_spread + ", \nmoveset: " + porygonz_2.move1 + ", " + porygonz_2.move2 + ", " + porygonz_2.move3 + ", " + porygonz_2.move4)
  608. print("3: " + porygonz_3.name + ": " + porygonz_3.nature + " nature, item: " + porygonz_3.item + ", ev spread: " + porygonz_3.ev_spread + ", \nmoveset: " + porygonz_3.move1 + ", " + porygonz_3.move2 + ", " + porygonz_3.move3 + ", " + porygonz_3.move4)
  609. print()
  610. choice = input("select a set (number in front of it): ")
  611. if choice == "1":
  612. return porygonz_1
  613. elif choice == "2":
  614. return porygonz_2
  615. elif choice == "3":
  616. return porygonz_3
  617. #tapu lele
  618. elif mon == "tapu lele" or mon == "tapulele" or mon == "lele":
  619. print()
  620. print("1: " + tapu_lele_1.name + ": " + tapu_lele_1.nature + " nature, item: " + tapu_lele_1.item + ", ev spread: " + tapu_lele_1.ev_spread + ", \nmoveset: " + tapu_lele_1.move1 + ", " + tapu_lele_1.move2 + ", " + tapu_lele_1.move3 + ", " + tapu_lele_1.move4)
  621. print()
  622. choice = input("select a set (number in front of it): ")
  623. if choice == "1":
  624. return tapu_lele_1
  625. #mega slowbro
  626. elif mon == "slowbro" or mon == "slowbromega" or mon == "megabro" or mon == "mega slowbro" or mon == "slowbro mega" or mon == "bro":
  627. print()
  628. print("1: " + slowbro_mega_1.name + ": " + slowbro_mega_1.nature + " nature, item: " + slowbro_mega_1.item + ", ev spread: " + slowbro_mega_1.ev_spread + ", \nmoveset: " + slowbro_mega_1.move1 + ", " + slowbro_mega_1.move2 + ", " + slowbro_mega_1.move3 + ", " + slowbro_mega_1.move4)
  629. print("2: " + slowbro_mega_2.name + ": " + slowbro_mega_2.nature + " nature, item: " + slowbro_mega_2.item + ", ev spread: " + slowbro_mega_2.ev_spread + ", \nmoveset: " + slowbro_mega_2.move1 + ", " + slowbro_mega_2.move2 + ", " + slowbro_mega_2.move3 + ", " + slowbro_mega_2.move4)
  630. print()
  631. choice = input("select a set (number in front of it): ")
  632. if choice == "1":
  633. return slowbro_mega_1
  634. elif choice == "2":
  635. return slowbro_mega_2
  636. #zygod
  637. elif mon == "zygardecomplete" or mon == "zygarde complete" or mon == "zygod" or mon == "zygarde" or mon == "zyg" or mon == "zygc" or mon == "zygarde c" or mon == "zygardec":
  638. print()
  639. print("1: " + zygarde_complete_1.name + ": " + zygarde_complete_1.nature + " nature, item: " + zygarde_complete_1.item + ", ev spread: " + zygarde_complete_1.ev_spread + ", \nmoveset: " + zygarde_complete_1.move1 + ", " + zygarde_complete_1.move2 + ", " + zygarde_complete_1.move3 + ", " + zygarde_complete_1.move4)
  640. print()
  641. choice = input("select a set (number in front of it): ")
  642. if choice == "1":
  643. return zygarde_complete_1
  644. #greninja
  645. elif mon == "greninja" or mon == "gren" or mon == "ninja":
  646. print()
  647. print("1: " + greninja_1.name + ": " + greninja_1.nature + " nature, item: " + greninja_1.item + ", ev spread: " + greninja_1.ev_spread + ", \nmoveset: " + greninja_1.move1 + ", " + greninja_1.move2 + ", " + greninja_1.move3 + ", " + greninja_1.move4)
  648. print("2: " + greninja_2.name + ": " + greninja_2.nature + " nature, item: " + greninja_2.item + ", ev spread: " + greninja_2.ev_spread + ", \nmoveset: " + greninja_2.move1 + ", " + greninja_2.move2 + ", " + greninja_2.move3 + ", " + greninja_2.move4)
  649. print("3: " + greninja_3.name + ": " + greninja_3.nature + " nature, item: " + greninja_3.item + ", ev spread: " + greninja_3.ev_spread + ", \nmoveset: " + greninja_3.move1 + ", " + greninja_3.move2 + ", " + greninja_3.move3 + ", " + greninja_3.move4)
  650. print("4: " + greninja_4.name + ": " + greninja_4.nature + " nature, item: " + greninja_4.item + ", ev spread: " + greninja_4.ev_spread + ", \nmoveset: " + greninja_4.move1 + ", " + greninja_4.move2 + ", " + greninja_4.move3 + ", " + greninja_4.move4)
  651. print()
  652. choice = input("select a set (number in front of it): ")
  653. if choice == "1":
  654. return greninja_1
  655. elif choice == "2":
  656. return greninja_2
  657. elif choice == "3":
  658. return greninja_3
  659. elif choice == "4":
  660. return greninja_4
  661. #jumpluff
  662. elif mon == "jumpluff" or mon == "jump" or mon == "pluff":
  663. print()
  664. print("1: " + jumpluff_1.name + ": " + jumpluff_1.nature + " nature, item: " + jumpluff_1.item + ", ev spread: " + jumpluff_1.ev_spread + ", \nmoveset: " + jumpluff_1.move1 + ", " + jumpluff_1.move2 + ", " + jumpluff_1.move3 + ", " + jumpluff_1.move4)
  665. print()
  666. choice = input("select a set (number in front of it): ")
  667. if choice == "1":
  668. return jumpluff_1
  669. #lando t
  670. elif mon == "landot" or mon == "landorous t" or mon == "landorus therian" or mon == "lando t" or mon == "landorustherian" or mon == "landorust":
  671. print()
  672. print("1: " + landorus_therian_1.name + ": " + landorus_therian_1.nature + " nature, item: " + landorus_therian_1.item + ", ev spread: " + landorus_therian_1.ev_spread + ", \nmoveset: " + landorus_therian_1.move1 + ", " + landorus_therian_1.move2 + ", " + landorus_therian_1.move3 + ", " + landorus_therian_1.move4)
  673. print("2: " + landorus_therian_2.name + ": " + landorus_therian_2.nature + " nature, item: " + landorus_therian_2.item + ", ev spread: " + landorus_therian_2.ev_spread + ", \nmoveset: " + landorus_therian_2.move1 + ", " + landorus_therian_2.move2 + ", " + landorus_therian_2.move3 + ", " + landorus_therian_2.move4)
  674. print()
  675. choice = input("select a set (number in front of it): ")
  676. if choice == "1":
  677. return landorus_therian_1
  678. elif choice == "2":
  679. return landorus_therian_2
  680. #lopunny mega
  681. elif mon == "mlop" or mon == "lop" or mon == "mega lop" or mon == "mega lopunny" or mon == "lopunny" or mon == "megalop" or mon == "megalopunny" or mon == "lopunnymega":
  682. print()
  683. print("1: " + lopunny_mega_1.name + ": " + lopunny_mega_1.nature + " nature, item: " + lopunny_mega_1.item + ", ev spread: " + lopunny_mega_1.ev_spread + ", \nmoveset: " + lopunny_mega_1.move1 + ", " + lopunny_mega_1.move2 + ", " + lopunny_mega_1.move3 + ", " + lopunny_mega_1.move4)
  684. print()
  685. choice = input("select a set (number in front of it): ")
  686. if choice == "1":
  687. return lopunny_mega_1
  688. #mew
  689. elif mon == "mew":
  690. print()
  691. print("1: " + mew_1.name + ": " + mew_1.nature + " nature, item: " + mew_1.item + ", ev spread: " + mew_1.ev_spread + ", \nmoveset: " + mew_1.move1 + ", " + mew_1.move2 + ", " + mew_1.move3 + ", " + mew_1.move4)
  692. print("2: " + mew_2.name + ": " + mew_2.nature + " nature, item: " + mew_2.item + ", ev spread: " + mew_2.ev_spread + ", \nmoveset: " + mew_2.move1 + ", " + mew_2.move2 + ", " + mew_2.move3 + ", " + mew_2.move4)
  693. print()
  694. choice = input("select a set (number in front of it): ")
  695. if choice == "1":
  696. return mew_1
  697. elif choice == "2":
  698. return mew_2
  699. #meloetta
  700. elif mon == "meloetta" or mon == "melo":
  701. print()
  702. print("1: " + meloetta_1.name + ": " + meloetta_1.nature + " nature, item: " + meloetta_1.item + ", ev spread: " + meloetta_1.ev_spread + ", \nmoveset: " + meloetta_1.move1 + ", " + meloetta_1.move2 + ", " + meloetta_1.move3 + ", " + meloetta_1.move4)
  703. print("2: " + meloetta_2.name + ": " + meloetta_2.nature + " nature, item: " + meloetta_2.item + ", ev spread: " + meloetta_2.ev_spread + ", \nmoveset: " + meloetta_2.move1 + ", " + meloetta_2.move2 + ", " + meloetta_2.move3 + ", " + meloetta_2.move4)
  704. print()
  705. choice = input("select a set (number in front of it): ")
  706. if choice == "1":
  707. return meloetta_1
  708. elif choice == "2":
  709. return meloetta_2
  710. #magnezone
  711. elif mon == "magnezone" or mon == "zone":
  712. print()
  713. print("1: " + magnezone_1.name + ": " + magnezone_1.nature + " nature, item: " + magnezone_1.item + ", ev spread: " + magnezone_1.ev_spread + ", \nmoveset: " + magnezone_1.move1 + ", " + magnezone_1.move2 + ", " + magnezone_1.move3 + ", " + magnezone_1.move4)
  714. print("2: " + magnezone_2.name + ": " + magnezone_2.nature + " nature, item: " + magnezone_2.item + ", ev spread: " + magnezone_2.ev_spread + ", \nmoveset: " + magnezone_2.move1 + ", " + magnezone_2.move2 + ", " + magnezone_2.move3 + ", " + magnezone_2.move4)
  715. print()
  716. choice = input("select a set (number in front of it): ")
  717. if choice == "1":
  718. return magnezone_1
  719. elif choice == "2":
  720. return magnezone_2
  721. #magnezone
  722. elif mon == "togekiss" or mon == "toge" or mon == "kiss":
  723. print()
  724. print("1: " + togekiss_1.name + ": " + togekiss_1.nature + " nature, item: " + togekiss_1.item + ", ev spread: " + togekiss_1.ev_spread + ", \nmoveset: " + togekiss_1.move1 + ", " + togekiss_1.move2 + ", " + togekiss_1.move3 + ", " + togekiss_1.move4)
  725. print("2: " + togekiss_2.name + ": " + togekiss_2.nature + " nature, item: " + togekiss_2.item + ", ev spread: " + togekiss_2.ev_spread + ", \nmoveset: " + togekiss_2.move1 + ", " + togekiss_2.move2 + ", " + togekiss_2.move3 + ", " + togekiss_2.move4)
  726. print()
  727. choice = input("select a set (number in front of it): ")
  728. if choice == "1":
  729. return togekiss_1
  730. elif choice == "2":
  731. return togekiss_2
  732. #aegislash
  733. elif mon == "aegi" or mon == "aegislash" or mon == "slash":
  734. print()
  735. print("1: " + aegislash_1.name + ": " + aegislash_1.nature + " nature, item: " + aegislash_1.item + ", ev spread: " + aegislash_1.ev_spread + ", \nmoveset: " + aegislash_1.move1 + ", " + aegislash_1.move2 + ", " + aegislash_1.move3 + ", " + aegislash_1.move4)
  736. print()
  737. choice = input("select a set (number in front of it): ")
  738. if choice == "1":
  739. return aegislash_1
  740. #altaria
  741. elif mon == "altaria" or mon == "altaria mega" or mon == "mega altaria" or mon == "altariamega" or mon == "megaaltaria":
  742. print()
  743. print("1: " + altaria_mega_1.name + ": " + altaria_mega_1.nature + " nature, item: " + altaria_mega_1.item + ", ev spread: " + altaria_mega_1.ev_spread + ", \nmoveset: " + altaria_mega_1.move1 + ", " + altaria_mega_1.move2 + ", " + altaria_mega_1.move3 + ", " + altaria_mega_1.move4)
  744. print("2: " + altaria_mega_2.name + ": " + altaria_mega_2.nature + " nature, item: " + altaria_mega_2.item + ", ev spread: " + altaria_mega_2.ev_spread + ", \nmoveset: " + altaria_mega_2.move1 + ", " + altaria_mega_2.move2 + ", " + altaria_mega_2.move3 + ", " + altaria_mega_2.move4)
  745. print()
  746. choice = input("select a set (number in front of it): ")
  747. if choice == "1":
  748. return altaria_mega_1
  749. elif choice == "2":
  750. return altaria_mega_2
  751. #donphan
  752. elif mon == "donphan":
  753. print()
  754. print("1: " + donphan_1.name + ": " + donphan_1.nature + " nature, item: " + donphan_1.item + ", ev spread: " + donphan_1.ev_spread + ", \nmoveset: " + donphan_1.move1 + ", " + donphan_1.move2 + ", " + donphan_1.move3 + ", " + donphan_1.move4)
  755. print("2: " + donphan_2.name + ": " + donphan_2.nature + " nature, item: " + donphan_2.item + ", ev spread: " + donphan_2.ev_spread + ", \nmoveset: " + donphan_2.move1 + ", " + donphan_2.move2 + ", " + donphan_2.move3 + ", " + donphan_2.move4)
  756. print()
  757. choice = input("select a set (number in front of it): ")
  758. if choice == "1":
  759. return donphan_1
  760. elif choice == "2":
  761. return donphan_2
  762. #mega gardevoir
  763. elif mon == mon == "gardevoir mega" or mon == "mega gardevoir" or mon == "megagardevoir" or mon == "gardevoirmega" or mon == "garde" or mon == "gardevoir" or mon == "mega garde" or mon == "megagarde":
  764. print()
  765. print("1: " + gardevoir_mega_1.name + ": " + gardevoir_mega_1.nature + " nature, item: " + gardevoir_mega_1.item + ", ev spread: " + gardevoir_mega_1.ev_spread + ", \nmoveset: " + gardevoir_mega_1.move1 + ", " + gardevoir_mega_1.move2 + ", " + gardevoir_mega_1.move3 + ", " + gardevoir_mega_1.move4)
  766. print()
  767. choice = input("select a set (number in front of it): ")
  768. if choice == "1":
  769. return gardevoir_mega_1
  770. #genesect
  771. elif mon == "gene" or mon == "genesect":
  772. print()
  773. print("1: " + genesect_1.name + ": " + genesect_1.nature + " nature, item: " + genesect_1.item + ", ev spread: " + genesect_1.ev_spread + ", \nmoveset: " + genesect_1.move1 + ", " + genesect_1.move2 + ", " + genesect_1.move3 + ", " + genesect_1.move4)
  774. print("2: " + genesect_2.name + ": " + genesect_2.nature + " nature, item: " + genesect_2.item + ", ev spread: " + genesect_2.ev_spread + ", \nmoveset: " + genesect_2.move1 + ", " + genesect_2.move2 + ", " + genesect_2.move3 + ", " + genesect_2.move4)
  775. print()
  776. choice = input("select a set (number in front of it): ")
  777. if choice == "1":
  778. return genesect_1
  779. elif choice == "2":
  780. return genesect_2
  781. #kommo-o
  782. elif mon == "kommo-o" or mon == "kommoo" or mon == "kommo o":
  783. print()
  784. print("1: " + kommoo_1.name + ": " + kommoo_1.nature + " nature, item: " + kommoo_1.item + ", ev spread: " + kommoo_1.ev_spread + ", \nmoveset: " + kommoo_1.move1 + ", " + kommoo_1.move2 + ", " + kommoo_1.move3 + ", " + kommoo_1.move4)
  785. print()
  786. choice = input("select a set (number in front of it): ")
  787. if choice == "1":
  788. return kommoo_1
  789. #naganadel
  790. elif mon == "naga" or mon == "naganadel":
  791. print()
  792. print("1: " + naganadel_1.name + ": " + naganadel_1.nature + " nature, item: " + naganadel_1.item + ", ev spread: " + naganadel_1.ev_spread + ", \nmoveset: " + naganadel_1.move1 + ", " + naganadel_1.move2 + ", " + naganadel_1.move3 + ", " + naganadel_1.move4)
  793. print()
  794. choice = input("select a set (number in front of it): ")
  795. if choice == "1":
  796. return naganadel_1
  797. #primarina
  798. elif mon == "prim" or mon == "primarina" or mon == "prima":
  799. print()
  800. print("1: " + primarina_1.name + ": " + primarina_1.nature + " nature, item: " + primarina_1.item + ", ev spread: " + primarina_1.ev_spread + ", \nmoveset: " + primarina_1.move1 + ", " + primarina_1.move2 + ", " + primarina_1.move3 + ", " + primarina_1.move4)
  801. print()
  802. choice = input("select a set (number in front of it): ")
  803. if choice == "1":
  804. return primarina_1
  805. #tapu fini
  806. elif mon == "tapu fini" or mon == "fini" or mon == "tapufini":
  807. print()
  808. print("1: " + tapu_fini_1.name + ": " + tapu_fini_1.nature + " nature, item: " + tapu_fini_1.item + ", ev spread: " + tapu_fini_1.ev_spread + ", \nmoveset: " + tapu_fini_1.move1 + ", " + tapu_fini_1.move2 + ", " + tapu_fini_1.move3 + ", " + tapu_fini_1.move4)
  809. print("2: " + tapu_fini_2.name + ": " + tapu_fini_2.nature + " nature, item: " + tapu_fini_2.item + ", ev spread: " + tapu_fini_2.ev_spread + ", \nmoveset: " + tapu_fini_2.move1 + ", " + tapu_fini_2.move2 + ", " + tapu_fini_2.move3 + ", " + tapu_fini_2.move4)
  810. print()
  811. choice = input("select a set (number in front of it): ")
  812. if choice == "1":
  813. return tapu_fini_1
  814. elif choice == "2":
  815. return tapu_fini_2
  816. #tyranitar mega
  817. elif mon == mon == "tyranitar mega" or mon == "mega tyranitar" or mon == "megatyranitar" or mon == "tyranitarmega" or mon == "ttar" or mon == "tyranitar" or mon == "ttar mega" or mon == "ttarmega" or mon == "megattar" or mon == "mega ttar":
  818. print()
  819. print("1: " + tyranitar_mega_1.name + ": " + tyranitar_mega_1.nature + " nature, item: " + tyranitar_mega_1.item + ", ev spread: " + tyranitar_mega_1.ev_spread + ", \nmoveset: " + tyranitar_mega_1.move1 + ", " + tyranitar_mega_1.move2 + ", " + tyranitar_mega_1.move3 + ", " + tyranitar_mega_1.move4)
  820. print()
  821. choice = input("select a set (number in front of it): ")
  822. if choice == "1":
  823. return tyranitar_mega_1
  824. #venusaur mega
  825. elif mon == mon == "venusaur mega" or mon == "mega venusaur" or mon == "megavenusaur" or mon == "venusaurmega" or mon == "venu" or mon == "venusaur" or mon == "venu mega" or mon == "venumega" or mon == "megavenu" or mon == "mega venu":
  826. print()
  827. print("1: " + venusaur_mega_1.name + ": " + venusaur_mega_1.nature + " nature, item: " + venusaur_mega_1.item + ", ev spread: " + venusaur_mega_1.ev_spread + ", \nmoveset: " + venusaur_mega_1.move1 + ", " + venusaur_mega_1.move2 + ", " + venusaur_mega_1.move3 + ", " + venusaur_mega_1.move4)
  828. print("2: " + venusaur_mega_2.name + ": " + venusaur_mega_2.nature + " nature, item: " + venusaur_mega_2.item + ", ev spread: " + venusaur_mega_2.ev_spread + ", \nmoveset: " + venusaur_mega_2.move1 + ", " + venusaur_mega_2.move2 + ", " + venusaur_mega_2.move3 + ", " + venusaur_mega_2.move4)
  829. print()
  830. choice = input("select a set (number in front of it): ")
  831. if choice == "1":
  832. return venusaur_mega_1
  833. elif choice == "2":
  834. return venusaur_mega_2
  835. #aggron mega
  836. elif mon == mon == "aggron mega" or mon == "mega aggron" or mon == "megaaggron" or mon == "aggronmega" or mon == "aggron":
  837. print()
  838. print("1: " + aggron_mega_1.name + ": " + aggron_mega_1.nature + " nature, item: " + aggron_mega_1.item + ", ev spread: " + aggron_mega_1.ev_spread + ", \nmoveset: " + aggron_mega_1.move1 + ", " + aggron_mega_1.move2 + ", " + aggron_mega_1.move3 + ", " + aggron_mega_1.move4)
  839. print()
  840. choice = input("select a set (number in front of it): ")
  841. if choice == "1":
  842. return aggron_mega_1
  843. #celesteela
  844. elif mon == "celesteela" or mon == "cele" or mon == "celest":
  845. print()
  846. print("1: " + celesteela_1.name + ": " + celesteela_1.nature + " nature, item: " + celesteela_1.item + ", ev spread: " + celesteela_1.ev_spread + ", \nmoveset: " + celesteela_1.move1 + ", " + celesteela_1.move2 + ", " + celesteela_1.move3 + ", " + celesteela_1.move4)
  847. print("2: " + celesteela_2.name + ": " + celesteela_2.nature + " nature, item: " + celesteela_2.item + ", ev spread: " + celesteela_2.ev_spread + ", \nmoveset: " + celesteela_2.move1 + ", " + celesteela_2.move2 + ", " + celesteela_2.move3 + ", " + celesteela_2.move4)
  848. print()
  849. choice = input("select a set (number in front of it): ")
  850. if choice == "1":
  851. return celesteela_1
  852. elif choice == "2":
  853. return celesteela_2
  854. #chansey
  855. elif mon == "chansey" or mon == "chans":
  856. print()
  857. print("1: " + chansey_1.name + ": " + chansey_1.nature + " nature, item: " + chansey_1.item + ", ev spread: " + chansey_1.ev_spread + ", \nmoveset: " + chansey_1.move1 + ", " + chansey_1.move2 + ", " + chansey_1.move3 + ", " + chansey_1.move4)
  858. print()
  859. choice = input("select a set (number in front of it): ")
  860. if choice == "1":
  861. return chansey_1
  862. #ferrothorn
  863. elif mon == "ferrothorn" or mon == "ferro" or mon == "thorn":
  864. print()
  865. print("1: " + ferrothorn_1.name + ": " + ferrothorn_1.nature + " nature, item: " + ferrothorn_1.item + ", ev spread: " + ferrothorn_1.ev_spread + ", \nmoveset: " + ferrothorn_1.move1 + ", " + ferrothorn_1.move2 + ", " + ferrothorn_1.move3 + ", " + ferrothorn_1.move4)
  866. print()
  867. choice = input("select a set (number in front of it): ")
  868. if choice == "1":
  869. return ferrothorn_1
  870. #garchomp
  871. elif mon == "garchomp" or mon == "chomp" or mon == "garch":
  872. print()
  873. print("1: " + garchomp_1.name + ": " + garchomp_1.nature + " nature, item: " + garchomp_1.item + ", ev spread: " + garchomp_1.ev_spread + ", \nmoveset: " + garchomp_1.move1 + ", " + garchomp_1.move2 + ", " + garchomp_1.move3 + ", " + garchomp_1.move4)
  874. print("2: " + garchomp_2.name + ": " + garchomp_2.nature + " nature, item: " + garchomp_2.item + ", ev spread: " + garchomp_2.ev_spread + ", \nmoveset: " + garchomp_2.move1 + ", " + garchomp_2.move2 + ", " + garchomp_2.move3 + ", " + garchomp_2.move4)
  875. print()
  876. choice = input("select a set (number in front of it): ")
  877. if choice == "1":
  878. return garchomp_1
  879. elif choice == "2":
  880. return garchomp_2
  881. #heatran
  882. elif mon == "heatran" or mon == "tran" or mon == "heat":
  883. print()
  884. print("1: " + heatran_1.name + ": " + heatran_1.nature + " nature, item: " + heatran_1.item + ", ev spread: " + heatran_1.ev_spread + ", \nmoveset: " + heatran_1.move1 + ", " + heatran_1.move2 + ", " + heatran_1.move3 + ", " + heatran_1.move4)
  885. print("2: " + heatran_2.name + ": " + heatran_2.nature + " nature, item: " + heatran_2.item + ", ev spread: " + heatran_2.ev_spread + ", \nmoveset: " + heatran_2.move1 + ", " + heatran_2.move2 + ", " + heatran_2.move3 + ", " + heatran_2.move4)
  886. print()
  887. choice = input("select a set (number in front of it): ")
  888. if choice == "1":
  889. return heatran_1
  890. elif choice == "2":
  891. return heatran_2
  892. #kartana
  893. elif mon == "kartana" or mon == "kart":
  894. print()
  895. print("1: " + kartana_1.name + ": " + kartana_1.nature + " nature, item: " + kartana_1.item + ", ev spread: " + kartana_1.ev_spread + ", \nmoveset: " + kartana_1.move1 + ", " + kartana_1.move2 + ", " + kartana_1.move3 + ", " + kartana_1.move4)
  896. print("2: " + kartana_2.name + ": " + kartana_2.nature + " nature, item: " + kartana_2.item + ", ev spread: " + kartana_2.ev_spread + ", \nmoveset: " + kartana_2.move1 + ", " + kartana_2.move2 + ", " + kartana_2.move3 + ", " + kartana_2.move4)
  897. print()
  898. choice = input("select a set (number in front of it): ")
  899. if choice == "1":
  900. return kartana_1
  901. elif choice == "2":
  902. return kartana_2
  903. #mawile mega
  904. elif mon == "mawile mega" or mon == "mega mawile" or mon == "mawilemega" or mon == "megamawile" or mon == "mega maw" or mon == "megamaw" or mon == "maw" or mon == "mawile":
  905. print()
  906. print("1: " + mawile_mega_1.name + ": " + mawile_mega_1.nature + " nature, item: " + mawile_mega_1.item + ", ev spread: " + mawile_mega_1.ev_spread + ", \nmoveset: " + mawile_mega_1.move1 + ", " + mawile_mega_1.move2 + ", " + mawile_mega_1.move3 + ", " + mawile_mega_1.move4)
  907. print()
  908. choice = input("select a set (number in front of it): ")
  909. if choice == "1":
  910. return mawile_mega_1
  911. #necrozma
  912. elif mon == "necrozma" or mon == "necro":
  913. print()
  914. print("1: " + necrozma_1.name + ": " + necrozma_1.nature + " nature, item: " + necrozma_1.item + ", ev spread: " + necrozma_1.ev_spread + ", \nmoveset: " + necrozma_1.move1 + ", " + necrozma_1.move2 + ", " + necrozma_1.move3 + ", " + necrozma_1.move4)
  915. print("2: " + necrozma_2.name + ": " + necrozma_2.nature + " nature, item: " + necrozma_2.item + ", ev spread: " + necrozma_2.ev_spread + ", \nmoveset: " + necrozma_2.move1 + ", " + necrozma_2.move2 + ", " + necrozma_2.move3 + ", " + necrozma_2.move4)
  916. print()
  917. choice = input("select a set (number in front of it): ")
  918. if choice == "1":
  919. return necrozma_1
  920. elif choice == "2":
  921. return necrozma_2
  922. #pinsir mega
  923. elif mon == "pinsir mega" or mon == "mega pinsir" or mon == "pinsirmega" or mon == "megapinsir" or mon == "pinsir" or mon == "mpinsir":
  924. print()
  925. print("1: " + pinser_mega_1.name + ": " + pinser_mega_1.nature + " nature, item: " + pinser_mega_1.item + ", ev spread: " + pinser_mega_1.ev_spread + ", \nmoveset: " + pinser_mega_1.move1 + ", " + pinser_mega_1.move2 + ", " + pinser_mega_1.move3 + ", " + pinser_mega_1.move4)
  926. print()
  927. choice = input("select a set (number in front of it): ")
  928. if choice == "1":
  929. return pinser_mega_1
  930. #sableye mega
  931. elif mon == "sableye mega" or mon == "mega sableye" or mon == "sableyemega" or mon == "megasableye" or mon == "sab" or mon == "sableye" or mon == "megasab" or mon == "mega sab":
  932. print()
  933. print("1: " + sableye_mega_1.name + ": " + sableye_mega_1.nature + " nature, item: " + sableye_mega_1.item + ", ev spread: " + sableye_mega_1.ev_spread + ", \nmoveset: " + sableye_mega_1.move1 + ", " + sableye_mega_1.move2 + ", " + sableye_mega_1.move3 + ", " + sableye_mega_1.move4)
  934. print()
  935. choice = input("select a set (number in front of it): ")
  936. if choice == "1":
  937. return sableye_mega_1
  938. #victini
  939. elif mon == "victini" or mon == "tini" or mon == "vic":
  940. print()
  941. print("1: " + victini_1.name + ": " + victini_1.nature + " nature, item: " + victini_1.item + ", ev spread: " + victini_1.ev_spread + ", \nmoveset: " + victini_1.move1 + ", " + victini_1.move2 + ", " + victini_1.move3 + ", " + victini_1.move4)
  942. print("2: " + victini_2.name + ": " + victini_2.nature + " nature, item: " + victini_2.item + ", ev spread: " + victini_2.ev_spread + ", \nmoveset: " + victini_2.move1 + ", " + victini_2.move2 + ", " + victini_2.move3 + ", " + victini_2.move4)
  943. print()
  944. choice = input("select a set (number in front of it): ")
  945. if choice == "1":
  946. return victini_1
  947. elif choice == "2":
  948. return victini_2
  949. #volcarona
  950. elif mon == "volcarona" or mon == "volc":
  951. print()
  952. print("1: " + volcarona_1.name + ": " + volcarona_1.nature + " nature, item: " + volcarona_1.item + ", ev spread: " + volcarona_1.ev_spread + ", \nmoveset: " + volcarona_1.move1 + ", " + volcarona_1.move2 + ", " + volcarona_1.move3 + ", " + volcarona_1.move4)
  953. print("2: " + volcarona_2.name + ": " + volcarona_2.nature + " nature, item: " + volcarona_2.item + ", ev spread: " + volcarona_2.ev_spread + ", \nmoveset: " + volcarona_2.move1 + ", " + volcarona_2.move2 + ", " + volcarona_2.move3 + ", " + volcarona_2.move4)
  954. print()
  955. choice = input("select a set (number in front of it): ")
  956. if choice == "1":
  957. return volcarona_1
  958. elif choice == "2":
  959. return volcarona_2
  960. #zeraora
  961. elif mon == "zeraora" or mon == "zera" or mon == "shit" or mon == "garbage" or mon == "trash" or mon == "piece of shit" or mon == "useless" or mon == "zer":
  962. print()
  963. print("1: " + zeraora_1.name + ": " + zeraora_1.nature + " nature, item: " + zeraora_1.item + ", ev spread: " + zeraora_1.ev_spread + ", \nmoveset: " + zeraora_1.move1 + ", " + zeraora_1.move2 + ", " + zeraora_1.move3 + ", " + zeraora_1.move4)
  964. print("2: " + zeraora_2.name + ": " + zeraora_2.nature + " nature, item: " + zeraora_2.item + ", ev spread: " + zeraora_2.ev_spread + ", \nmoveset: " + zeraora_2.move1 + ", " + zeraora_2.move2 + ", " + zeraora_2.move3 + ", " + zeraora_2.move4)
  965. print()
  966. choice = input("select a set (number in front of it): ")
  967. if choice == "1":
  968. return zeraora_1
  969. elif choice == "2":
  970. return zeraora_2
  971. #archeops
  972. elif mon == "archeops" or mon == "arch":
  973. print()
  974. print("1: " + archeops_1.name + ": " + archeops_1.nature + " nature, item: " + archeops_1.item + ", ev spread: " + archeops_1.ev_spread + ", \nmoveset: " + archeops_1.move1 + ", " + archeops_1.move2 + ", " + archeops_1.move3 + ", " + archeops_1.move4)
  975. print()
  976. choice = input("select a set (number in front of it): ")
  977. if choice == "1":
  978. return archeops_1
  979. #blastoise mega
  980. elif mon == "blastoisemega" or mon == "megablastoise" or mon == "mega blastoise" or mon == "blastoise mega" or mon == "blastoise" or mon == "mblastoise" or mon == "m blastoise":
  981. print()
  982. print("1: " + blastoise_mega_1.name + ": " + blastoise_mega_1.nature + " nature, item: " + blastoise_mega_1.item + ", ev spread: " + blastoise_mega_1.ev_spread + ", \nmoveset: " + blastoise_mega_1.move1 + ", " + blastoise_mega_1.move2 + ", " + blastoise_mega_1.move3 + ", " + blastoise_mega_1.move4)
  983. print()
  984. choice = input("select a set (number in front of it): ")
  985. if choice == "1":
  986. return blastoise_mega_1
  987. #blaziken mega
  988. elif mon == "blaziken mega" or mon == "mega blaziken" or mon == "blazikenmega" or mon == "megablaziken" or mon == "blaziken" or mon == "mega blaze" or mon == "megablaze":
  989. print()
  990. print("1: " + blaziken_mega_1.name + ": " + blaziken_mega_1.nature + " nature, item: " + blaziken_mega_1.item + ", ev spread: " + blaziken_mega_1.ev_spread + ", \nmoveset: " + blaziken_mega_1.move1 + ", " + blaziken_mega_1.move2 + ", " + blaziken_mega_1.move3 + ", " + blaziken_mega_1.move4)
  991. print()
  992. choice = input("select a set (number in front of it): ")
  993. if choice == "1":
  994. return blaziken_mega_1
  995. #crustle
  996. elif mon == "crustle":
  997. print()
  998. print("1: " + crustle_1.name + ": " + crustle_1.nature + " nature, item: " + crustle_1.item + ", ev spread: " + crustle_1.ev_spread + ", \nmoveset: " + crustle_1.move1 + ", " + crustle_1.move2 + ", " + crustle_1.move3 + ", " + crustle_1.move4)
  999. print()
  1000. choice = input("select a set (number in front of it): ")
  1001. if choice == "1":
  1002. return crustle_1
  1003. #deoxys s
  1004. elif mon == "deoxys s" or mon == "deoxys" or mon == "deo" or mon == "deos" or mon == "deo s":
  1005. print()
  1006. print("1: " + deoxys_s_1.name + ": " + deoxys_s_1.nature + " nature, item: " + deoxys_s_1.item + ", ev spread: " + deoxys_s_1.ev_spread + ", \nmoveset: " + deoxys_s_1.move1 + ", " + deoxys_s_1.move2 + ", " + deoxys_s_1.move3 + ", " + deoxys_s_1.move4)
  1007. print("2: " + deoxys_s_2.name + ": " + deoxys_s_2.nature + " nature, item: " + deoxys_s_2.item + ", ev spread: " + deoxys_s_2.ev_spread + ", \nmoveset: " + deoxys_s_2.move1 + ", " + deoxys_s_2.move2 + ", " + deoxys_s_2.move3 + ", " + deoxys_s_2.move4)
  1008. print()
  1009. choice = input("select a set (number in front of it): ")
  1010. if choice == "1":
  1011. return deoxys_s_1
  1012. elif choice == "2":
  1013. return deoxys_s_2
  1014. #diancie mega
  1015. elif mon == "diancie mega" or mon == "mega diancie" or mon == "dianciemega" or mon == "megadiancie" or mon == "diancie":
  1016. print()
  1017. print("1: " + diancie_mega_1.name + ": " + diancie_mega_1.nature + " nature, item: " + diancie_mega_1.item + ", ev spread: " + diancie_mega_1.ev_spread + ", \nmoveset: " + diancie_mega_1.move1 + ", " + diancie_mega_1.move2 + ", " + diancie_mega_1.move3 + ", " + diancie_mega_1.move4)
  1018. print()
  1019. choice = input("select a set (number in front of it): ")
  1020. if choice == "1":
  1021. return diancie_mega_1
  1022. #durant
  1023. elif mon == "durant" or mon == "uop" or mon == "ant":
  1024. print()
  1025. print("1: " + durant_1.name + ": " + durant_1.nature + " nature, item: " + durant_1.item + ", ev spread: " + durant_1.ev_spread + ", \nmoveset: " + durant_1.move1 + ", " + durant_1.move2 + ", " + durant_1.move3 + ", " + durant_1.move4)
  1026. print()
  1027. choice = input("select a set (number in front of it): ")
  1028. if choice == "1":
  1029. return durant_1
  1030. #golem
  1031. elif mon == "golem":
  1032. print()
  1033. print("1: " + golem_1.name + ": " + golem_1.nature + " nature, item: " + golem_1.item + ", ev spread: " + golem_1.ev_spread + ", \nmoveset: " + golem_1.move1 + ", " + golem_1.move2 + ", " + golem_1.move3 + ", " + golem_1.move4)
  1034. print()
  1035. choice = input("select a set (number in front of it): ")
  1036. if choice == "1":
  1037. return golem_1
  1038. #haxorus
  1039. elif mon == "haxorus" or mon == "hax":
  1040. print()
  1041. print("1: " + haxorus_1.name + ": " + haxorus_1.nature + " nature, item: " + haxorus_1.item + ", ev spread: " + haxorus_1.ev_spread + ", \nmoveset: " + haxorus_1.move1 + ", " + haxorus_1.move2 + ", " + haxorus_1.move3 + ", " + haxorus_1.move4)
  1042. print("2: " + haxorus_2.name + ": " + haxorus_2.nature + " nature, item: " + haxorus_2.item + ", ev spread: " + haxorus_2.ev_spread + ", \nmoveset: " + haxorus_2.move1 + ", " + haxorus_2.move2 + ", " + haxorus_2.move3 + ", " + haxorus_2.move4)
  1043. print()
  1044. choice = input("select a set (number in front of it): ")
  1045. if choice == "1":
  1046. return haxorus_1
  1047. elif choice == "2":
  1048. return haxorus_2
  1049. #heracross mega
  1050. elif mon == "heracross mega" or mon == "mega heracross" or mon == "heracrossmega" or mon == "megaheracross" or mon == "heracross" or mon == "hera":
  1051. print()
  1052. print("1: " + heracross_mega_1.name + ": " + heracross_mega_1.nature + " nature, item: " + heracross_mega_1.item + ", ev spread: " + heracross_mega_1.ev_spread + ", \nmoveset: " + heracross_mega_1.move1 + ", " + heracross_mega_1.move2 + ", " + heracross_mega_1.move3 + ", " + heracross_mega_1.move4)
  1053. print()
  1054. choice = input("select a set (number in front of it): ")
  1055. if choice == "1":
  1056. return heracross_mega_1
  1057. #hoopa u
  1058. elif mon == "hoopa u" or mon == "hoopau" or mon == "hoopa":
  1059. print()
  1060. print("1: " + hoopau_1.name + ": " + hoopau_1.nature + " nature, item: " + hoopau_1.item + ", ev spread: " + hoopau_1.ev_spread + ", \nmoveset: " + hoopau_1.move1 + ", " + hoopau_1.move2 + ", " + hoopau_1.move3 + ", " + hoopau_1.move4)
  1061. print("2: " + hoopau_2.name + ": " + hoopau_2.nature + " nature, item: " + hoopau_2.item + ", ev spread: " + hoopau_2.ev_spread + ", \nmoveset: " + hoopau_2.move1 + ", " + hoopau_2.move2 + ", " + hoopau_2.move3 + ", " + hoopau_2.move4)
  1062. print()
  1063. choice = input("select a set (number in front of it): ")
  1064. if choice == "1":
  1065. return hoopau_1
  1066. elif choice == "2":
  1067. return hoopau_2
  1068. #incineroar
  1069. elif mon == "incineroar" or mon == "incin":
  1070. print()
  1071. print("1: " + incineroar_1.name + ": " + incineroar_1.nature + " nature, item: " + incineroar_1.item + ", ev spread: " + incineroar_1.ev_spread + ", \nmoveset: " + incineroar_1.move1 + ", " + incineroar_1.move2 + ", " + incineroar_1.move3 + ", " + incineroar_1.move4)
  1072. print()
  1073. choice = input("select a set (number in front of it): ")
  1074. if choice == "1":
  1075. return incineroar_1
  1076. #krookodile
  1077. elif mon == "krookodile" or mon == "krook" or mon == "liability":
  1078. print()
  1079. print("1: " + krookodile_1.name + ": " + krookodile_1.nature + " nature, item: " + krookodile_1.item + ", ev spread: " + krookodile_1.ev_spread + ", \nmoveset: " + krookodile_1.move1 + ", " + krookodile_1.move2 + ", " + krookodile_1.move3 + ", " + krookodile_1.move4)
  1080. print()
  1081. choice = input("select a set (number in front of it): ")
  1082. if choice == "1":
  1083. return krookodile_1
  1084. #kyurem
  1085. elif mon == "kyurem" or mon == "kyu" or mon == "noble":
  1086. print()
  1087. print("1: " + kyurem_1.name + ": " + kyurem_1.nature + " nature, item: " + kyurem_1.item + ", ev spread: " + kyurem_1.ev_spread + ", \nmoveset: " + kyurem_1.move1 + ", " + kyurem_1.move2 + ", " + kyurem_1.move3 + ", " + kyurem_1.move4)
  1088. print()
  1089. choice = input("select a set (number in front of it): ")
  1090. if choice == "1":
  1091. return kyurem_1
  1092. #clefable
  1093. elif mon == "clefable" or mon == "clef":
  1094. print()
  1095. print("1: " + clefable_1.name + ": " + clefable_1.nature + " nature, item: " + clefable_1.item + ", ev spread: " + clefable_1.ev_spread + ", \nmoveset: " + clefable_1.move1 + ", " + clefable_1.move2 + ", " + clefable_1.move3 + ", " + clefable_1.move4)
  1096. print()
  1097. choice = input("select a set (number in front of it): ")
  1098. if choice == "1":
  1099. return clefable_1
  1100. #stunfisk
  1101. elif mon == "stunfisk" or mon == "fisk":
  1102. print()
  1103. print("1: " + stunfisk_1.name + ": " + stunfisk_1.nature + " nature, item: " + stunfisk_1.item + ", ev spread: " + stunfisk_1.ev_spread + ", \nmoveset: " + stunfisk_1.move1 + ", " + stunfisk_1.move2 + ", " + stunfisk_1.move3 + ", " + stunfisk_1.move4)
  1104. print()
  1105. choice = input("select a set (number in front of it): ")
  1106. if choice == "1":
  1107. return stunfisk_1
  1108. #manaphy
  1109. elif mon == "manaphy" or mon == "mana":
  1110. print()
  1111. print("1: " + manaphy_1.name + ": " + manaphy_1.nature + " nature, item: " + manaphy_1.item + ", ev spread: " + manaphy_1.ev_spread + ", \nmoveset: " + manaphy_1.move1 + ", " + manaphy_1.move2 + ", " + manaphy_1.move3 + ", " + manaphy_1.move4)
  1112. print()
  1113. choice = input("select a set (number in front of it): ")
  1114. if choice == "1":
  1115. return manaphy_1
  1116. #medicham mega
  1117. elif mon == mon == "medicham mega" or mon == "mega medicham" or mon == "megamedicham" or mon == "medichammega" or mon == "medicham":
  1118. print()
  1119. print("1: " + medicham_mega_1.name + ": " + medicham_mega_1.nature + " nature, item: " + medicham_mega_1.item + ", ev spread: " + medicham_mega_1.ev_spread + ", \nmoveset: " + medicham_mega_1.move1 + ", " + medicham_mega_1.move2 + ", " + medicham_mega_1.move3 + ", " + medicham_mega_1.move4)
  1120. print()
  1121. choice = input("select a set (number in front of it): ")
  1122. if choice == "1":
  1123. return medicham_mega_1
  1124. #sawk
  1125. elif mon == "sawk":
  1126. print()
  1127. print("1: " + sawk_1.name + ": " + sawk_1.nature + " nature, item: " + sawk_1.item + ", ev spread: " + sawk_1.ev_spread + ", \nmoveset: " + sawk_1.move1 + ", " + sawk_1.move2 + ", " + sawk_1.move3 + ", " + sawk_1.move4)
  1128. print()
  1129. choice = input("select a set (number in front of it): ")
  1130. if choice == "1":
  1131. return sawk_1
  1132. #blacephalon
  1133. elif mon == "blacephalon" or mon == "blace":
  1134. print()
  1135. print("1: " + blacephalon_1.name + ": " + blacephalon_1.nature + " nature, item: " + blacephalon_1.item + ", ev spread: " + blacephalon_1.ev_spread + ", \nmoveset: " + blacephalon_1.move1 + ", " + blacephalon_1.move2 + ", " + blacephalon_1.move3 + ", " + blacephalon_1.move4)
  1136. print()
  1137. choice = input("select a set (number in front of it): ")
  1138. if choice == "1":
  1139. return blacephalon_1
  1140. #illumise
  1141. elif mon == "illumise" or mon == "bae":
  1142. print()
  1143. print("1: " + illumise_1.name + ": " + illumise_1.nature + " nature, item: " + illumise_1.item + ", ev spread: " + illumise_1.ev_spread + ", \nmoveset: " + illumise_1.move1 + ", " + illumise_1.move2 + ", " + illumise_1.move3 + ", " + illumise_1.move4)
  1144. print()
  1145. choice = input("select a set (number in front of it): ")
  1146. if choice == "1":
  1147. return illumise_1
  1148. #xurkitree
  1149. elif mon == "xurkitree" or mon == "xurk":
  1150. print()
  1151. print("1: " + xurkitree_1.name + ": " + xurkitree_1.nature + " nature, item: " + xurkitree_1.item + ", ev spread: " + xurkitree_1.ev_spread + ", \nmoveset: " + xurkitree_1.move1 + ", " + xurkitree_1.move2 + ", " + xurkitree_1.move3 + ", " + xurkitree_1.move4)
  1152. print()
  1153. choice = input("select a set (number in front of it): ")
  1154. if choice == "1":
  1155. return xurkitree_1
  1156. #cresselia
  1157. elif mon == "cresselia" or mon == "cress":
  1158. print()
  1159. print("1: " + cresselia_1.name + ": " + cresselia_1.nature + " nature, item: " + cresselia_1.item + ", ev spread: " + cresselia_1.ev_spread + ", \nmoveset: " + cresselia_1.move1 + ", " + cresselia_1.move2 + ", " + cresselia_1.move3 + ", " + cresselia_1.move4)
  1160. print()
  1161. choice = input("select a set (number in front of it): ")
  1162. if choice == "1":
  1163. return cresselia_1
  1164. #xurkitree
  1165. elif mon == "vivi" or mon == "viv" or mon == "vivillon":
  1166. print()
  1167. print("1: " + vivillon_1.name + ": " + vivillon_1.nature + " nature, item: " + vivillon_1.item + ", ev spread: " + vivillon_1.ev_spread + ", \nmoveset: " + vivillon_1.move1 + ", " + vivillon_1.move2 + ", " + vivillon_1.move3 + ", " + vivillon_1.move4)
  1168. print()
  1169. choice = input("select a set (number in front of it): ")
  1170. if choice == "1":
  1171. return vivillon_1
  1172. #smeargle
  1173. elif mon == "smeargle" or mon == "smear" or mon == "badass":
  1174. print()
  1175. print("1: " + smeargle_1.name + ": " + smeargle_1.nature + " nature, item: " + smeargle_1.item + ", ev spread: " + smeargle_1.ev_spread + ", \nmoveset: " + smeargle_1.move1 + ", " + smeargle_1.move2 + ", " + smeargle_1.move3 + ", " + smeargle_1.move4)
  1176. print()
  1177. choice = input("select a set (number in front of it): ")
  1178. if choice == "1":
  1179. return smeargle_1
  1180. #aron
  1181. elif mon == "aron":
  1182. print()
  1183. print("1: " + aron_1.name + ": " + aron_1.nature + " nature, item: " + aron_1.item + ", ev spread: " + "Level: 1, " + aron_1.ev_spread + ", \nmoveset: " + aron_1.move1 + ", " + aron_1.move2 + ", " + aron_1.move3 + ", " + aron_1.move4)
  1184. print()
  1185. choice = input("select a set (number in front of it): ")
  1186. if choice == "1":
  1187. return aron_1
  1188. #aron
  1189. elif mon == "riolu":
  1190. print()
  1191. print("1: " + riolu_1.name + ": " + riolu_1.nature + " nature, item: " + riolu_1.item + ", ev spread: " + "Level: 1, " + riolu_1.ev_spread + ", \nmoveset: " + riolu_1.move1 + ", " + riolu_1.move2 + ", " + riolu_1.move3 + ", " + riolu_1.move4)
  1192. print()
  1193. choice = input("select a set (number in front of it): ")
  1194. if choice == "1":
  1195. return riolu_1
  1196. #shedinja
  1197. elif mon == "shed" or mon == "shedinja":
  1198. print()
  1199. print("1: " + shedinja_1.name + ": " + shedinja_1.nature + " nature, item: " + shedinja_1.item + ", ev spread: " + "Level: 1, " + shedinja_1.ev_spread + ", \nmoveset: " + shedinja_1.move1 + ", " + shedinja_1.move2 + ", " + shedinja_1.move3 + ", " + shedinja_1.move4)
  1200. print()
  1201. choice = input("select a set (number in front of it): ")
  1202. if choice == "1":
  1203. return shedinja_1
  1204. #raikou
  1205. elif mon == "rai" or mon == "raikou":
  1206. print()
  1207. print("1: " + raikou_1.name + ": " + raikou_1.nature + " nature, item: " + raikou_1.item + ", ev spread: " + "Level: 1, " + raikou_1.ev_spread + ", \nmoveset: " + raikou_1.move1 + ", " + raikou_1.move2 + ", " + raikou_1.move3 + ", " + raikou_1.move4)
  1208. print()
  1209. choice = input("select a set (number in front of it): ")
  1210. if choice == "1":
  1211. return raikou_1
  1212. #audino mega
  1213. elif mon == "audinomega" or mon == "megaaudino" or mon == "audino" or mon == "mega audino" or mon == "audino mega" or mon == "aud" or mon == "maudino":
  1214. print()
  1215. print("1: " + audino_mega_1.name + ": " + audino_mega_1.nature + " nature, item: " + audino_mega_1.item + ", ev spread: " + "Level: 1, " + audino_mega_1.ev_spread + ", \nmoveset: " + audino_mega_1.move1 + ", " + audino_mega_1.move2 + ", " + audino_mega_1.move3 + ", " + audino_mega_1.move4)
  1216. print()
  1217. choice = input("select a set (number in front of it): ")
  1218. if choice == "1":
  1219. return audino_mega_1
  1220. #latias
  1221. elif mon == "latiasmega" or mon == "megalatias" or mon == "latias" or mon == "mega latias" or mon == "latias mega" or mon == "lati" or mon == "mlatias":
  1222. print()
  1223. print("1: " + latias_mega_1.name + ": " + latias_mega_1.nature + " nature, item: " + latias_mega_1.item + ", ev spread: " + "Level: 1, " + latias_mega_1.ev_spread + ", \nmoveset: " + latias_mega_1.move1 + ", " + latias_mega_1.move2 + ", " + latias_mega_1.move3 + ", " + latias_mega_1.move4)
  1224. print()
  1225. choice = input("select a set (number in front of it): ")
  1226. if choice == "1":
  1227. return latias_mega_1
  1228. #salazzle
  1229. elif mon == "salazzle" or mon == "lizard":
  1230. print()
  1231. print("1: " + salazzle_1.name + ": " + salazzle_1.nature + " nature, item: " + salazzle_1.item + ", ev spread: " + "Level: 1, " + salazzle_1.ev_spread + ", \nmoveset: " + salazzle_1.move1 + ", " + salazzle_1.move2 + ", " + salazzle_1.move3 + ", " + salazzle_1.move4)
  1232. print()
  1233. choice = input("select a set (number in front of it): ")
  1234. if choice == "1":
  1235. return salazzle_1
  1236. #darmanitan
  1237. elif mon == "darmanitan" or mon == "darm":
  1238. print()
  1239. print("1: " + darmanitan_1.name + ": " + darmanitan_1.nature + " nature, item: " + darmanitan_1.item + ", ev spread: " + "Level: 1, " + darmanitan_1.ev_spread + ", \nmoveset: " + darmanitan_1.move1 + ", " + darmanitan_1.move2 + ", " + darmanitan_1.move3 + ", " + darmanitan_1.move4)
  1240. print()
  1241. choice = input("select a set (number in front of it): ")
  1242. if choice == "1":
  1243. return darmanitan_1
  1244. #whimsicott
  1245. elif mon == "whimsicott" or mon == "whimsi":
  1246. print()
  1247. print("1: " + whimsicott_1.name + ": " + whimsicott_1.nature + " nature, item: " + whimsicott_1.item + ", ev spread: " + "Level: 1, " + whimsicott_1.ev_spread + ", \nmoveset: " + whimsicott_1.move1 + ", " + whimsicott_1.move2 + ", " + whimsicott_1.move3 + ", " + whimsicott_1.move4)
  1248. print()
  1249. choice = input("select a set (number in front of it): ")
  1250. if choice == "1":
  1251. return whimsicott_1
  1252. #excadrill
  1253. elif mon == "excadrill" or mon == "exca":
  1254. print()
  1255. print("1: " + excadrill_1.name + ": " + excadrill_1.nature + " nature, item: " + excadrill_1.item + ", ev spread: " + "Level: 1, " + excadrill_1.ev_spread + ", \nmoveset: " + excadrill_1.move1 + ", " + excadrill_1.move2 + ", " + excadrill_1.move3 + ", " + excadrill_1.move4)
  1256. print()
  1257. choice = input("select a set (number in front of it): ")
  1258. if choice == "1":
  1259. return excadrill_1
  1260. #terrakion
  1261. elif mon == "terrakion" or mon == "terra":
  1262. print()
  1263. print("1: " + terrakion_1.name + ": " + terrakion_1.nature + " nature, item: " + terrakion_1.item + ", ev spread: " + "Level: 1, " + terrakion_1.ev_spread + ", \nmoveset: " + terrakion_1.move1 + ", " + terrakion_1.move2 + ", " + terrakion_1.move3 + ", " + terrakion_1.move4)
  1264. print()
  1265. choice = input("select a set (number in front of it): ")
  1266. if choice == "1":
  1267. return terrakion_1
  1268. #mienshao
  1269. elif mon == "mienshao" or mon == "mien":
  1270. print()
  1271. print("1: " + mienshao_1.name + ": " + mienshao_1.nature + " nature, item: " + mienshao_1.item + ", ev spread: " + "Level: 1, " + mienshao_1.ev_spread + ", \nmoveset: " + mienshao_1.move1 + ", " + mienshao_1.move2 + ", " + mienshao_1.move3 + ", " + mienshao_1.move4)
  1272. print()
  1273. choice = input("select a set (number in front of it): ")
  1274. if choice == "1":
  1275. return mienshao_1
  1276. #umbreon
  1277. elif mon == "umbreon":
  1278. print()
  1279. print("1: " + umbreon_1.name + ": " + umbreon_1.nature + " nature, item: " + umbreon_1.item + ", ev spread: " + "Level: 1, " + umbreon_1.ev_spread + ", \nmoveset: " + umbreon_1.move1 + ", " + umbreon_1.move2 + ", " + umbreon_1.move3 + ", " + umbreon_1.move4)
  1280. print()
  1281. choice = input("select a set (number in front of it): ")
  1282. if choice == "1":
  1283. return umbreon_1
  1284. #vigoroth
  1285. elif mon == "vigoroth" or mon == "vig":
  1286. print()
  1287. print("1: " + vigoroth_1.name + ": " + vigoroth_1.nature + " nature, item: " + vigoroth_1.item + ", ev spread: " + "Level: 1, " + vigoroth_1.ev_spread + ", \nmoveset: " + vigoroth_1.move1 + ", " + vigoroth_1.move2 + ", " + vigoroth_1.move3 + ", " + vigoroth_1.move4)
  1288. print()
  1289. choice = input("select a set (number in front of it): ")
  1290. if choice == "1":
  1291. return vigoroth_1
  1292. #rampardos
  1293. elif mon == "rampardos" or mon == "ramp":
  1294. print()
  1295. print("1: " + rampardos_1.name + ": " + rampardos_1.nature + " nature, item: " + rampardos_1.item + ", ev spread: " + "Level: 1, " + rampardos_1.ev_spread + ", \nmoveset: " + rampardos_1.move1 + ", " + rampardos_1.move2 + ", " + rampardos_1.move3 + ", " + rampardos_1.move4)
  1296. print("2: " + rampardos_2.name + ": " + rampardos_2.nature + " nature, item: " + rampardos_2.item + ", ev spread: " + "Level: 1, " + rampardos_2.ev_spread + ", \nmoveset: " + rampardos_2.move1 + ", " + rampardos_2.move2 + ", " + rampardos_2.move3 + ", " + rampardos_2.move4)
  1297. print()
  1298. choice = input("select a set (number in front of it): ")
  1299. if choice == "1":
  1300. return rampardos_1
  1301. elif choice == "2":
  1302. return rampardos_2
  1303. #pheromosa
  1304. elif mon == "pheromosa" or mon == "phero":
  1305. print()
  1306. print("1: " + pheromosa_1.name + ": " + pheromosa_1.nature + " nature, item: " + pheromosa_1.item + ", ev spread: " + "Level: 1, " + pheromosa_1.ev_spread + ", \nmoveset: " + pheromosa_1.move1 + ", " + pheromosa_1.move2 + ", " + pheromosa_1.move3 + ", " + pheromosa_1.move4)
  1307. print("2: " + pheromosa_2.name + ": " + pheromosa_2.nature + " nature, item: " + pheromosa_2.item + ", ev spread: " + "Level: 1, " + pheromosa_2.ev_spread + ", \nmoveset: " + pheromosa_2.move1 + ", " + pheromosa_2.move2 + ", " + pheromosa_2.move3 + ", " + pheromosa_2.move4)
  1308. print("3: " + pheromosa_3.name + ": " + pheromosa_3.nature + " nature, item: " + pheromosa_3.item + ", ev spread: " + "Level: 1, " + pheromosa_3.ev_spread + ", \nmoveset: " + pheromosa_3.move1 + ", " + pheromosa_3.move2 + ", " + pheromosa_3.move3 + ", " + pheromosa_3.move4)
  1309. print()
  1310. choice = input("select a set (number in front of it): ")
  1311. if choice == "1":
  1312. return pheromosa_1
  1313. elif choice == "2":
  1314. return pheromosa_2
  1315. elif choice == "3":
  1316. return pheromosa_3
  1317. #rotom
  1318. elif mon == "rotom wash" or mon == "rotomw" or mon == "rotom w":
  1319. print()
  1320. print("1: " + rotom_wash_1.name + ": " + rotom_wash_1.nature + " nature, item: " + rotom_wash_1.item + ", ev spread: " + "Level: 1, " + rotom_wash_1.ev_spread + ", \nmoveset: " + rotom_wash_1.move1 + ", " + rotom_wash_1.move2 + ", " + rotom_wash_1.move3 + ", " + rotom_wash_1.move4)
  1321. print()
  1322. choice = input("select a set (number in front of it): ")
  1323. if choice == "1":
  1324. return rotom_wash_1
  1325. #zapdos
  1326. elif mon == "zapdos" or mon == "zap":
  1327. print()
  1328. print("1: " + zapdos_1.name + ": " + zapdos_1.nature + " nature, item: " + zapdos_1.item + ", ev spread: " + zapdos_1.ev_spread + ", \nmoveset: " + zapdos_1.move1 + ", " + zapdos_1.move2 + ", " + zapdos_1.move3 + ", " + zapdos_1.move4)
  1329. print()
  1330. choice = input("select a set (number in front of it): ")
  1331. if choice == "1":
  1332. return zapdos_1
  1333. #porygon2
  1334. elif mon == "porygon2" or mon == "porygon 2" or mon == "pory2" or mon == "pory 2" or mon == "p2" or mon == "p 2":
  1335. print()
  1336. print("1: " + porygon2_1.name + ": " + porygon2_1.nature + " nature, item: " + porygon2_1.item + ", ev spread: " + porygon2_1.ev_spread + ", \nmoveset: " + kyurem_1.move1 + ", " + porygon2_1.move2 + ", " + porygon2_1.move3 + ", " + porygon2_1.move4)
  1337. print()
  1338. choice = input("select a set (number in front of it): ")
  1339. if choice == "1":
  1340. return porygon2_1
  1341. #pyukumuku
  1342. elif mon == "pyukumuku" or mon == "pyuk" or mon == "pyu" or mon == "muku":
  1343. print()
  1344. print("1: " + pyukumuku_1.name + ": " + pyukumuku_1.nature + " nature, item: " + pyukumuku_1.item + ", ev spread: " + pyukumuku_1.ev_spread + ", \nmoveset: " + pyukumuku_1.move1 + ", " + pyukumuku_1.move2 + ", " + pyukumuku_1.move3 + ", " + pyukumuku_1.move4)
  1345. print()
  1346. choice = input("select a set (number in front of it): ")
  1347. if choice == "1":
  1348. return pyukumuku_1
  1349. #araquanid
  1350. elif mon == "araquanid" or mon == "ara":
  1351. print()
  1352. print("1: " + araquanid_1.name + ": " + araquanid_1.nature + " nature, item: " + araquanid_1.item + ", ev spread: " + araquanid_1.ev_spread + ", \nmoveset: " + araquanid_1.move1 + ", " + araquanid_1.move2 + ", " + araquanid_1.move3 + ", " + araquanid_1.move4)
  1353. print()
  1354. choice = input("select a set (number in front of it): ")
  1355. if choice == "1":
  1356. return araquanid_1
  1357. elif choice == "2":
  1358. return araquanid_1
  1359. #swampert
  1360. elif mon == "swampert mega" or mon == "swampertmega" or mon == "mega swampert" or mon == "megaswampert" or mon == "swampert" or mon == "mswampert" or mon == "m swampert" or mon == "swampertm" or mon == "swampert m" or mon == "swamp":
  1361. print()
  1362. print("1: " + swampert_mega_1.name + ": " + swampert_mega_1.nature + " nature, item: " + swampert_mega_1.item + ", ev spread: " + swampert_mega_1.ev_spread + ", \nmoveset: " + swampert_mega_1.move1 + ", " + swampert_mega_1.move2 + ", " + swampert_mega_1.move3 + ", " + swampert_mega_1.move4)
  1363. print()
  1364. choice = input("select a set (number in front of it): ")
  1365. if choice == "1":
  1366. return swampert_mega_1
  1367. #avalugg
  1368. elif mon == "avalugg" or mon == "ava" or mon == "lugg":
  1369. print()
  1370. print("1: " + avalugg_1.name + ": " + avalugg_1.nature + " nature, item: " + avalugg_1.item + ", ev spread: " + avalugg_1.ev_spread + ", \nmoveset: " + avalugg_1.move1 + ", " + avalugg_1.move2 + ", " + avalugg_1.move3 + ", " + avalugg_1.move4)
  1371. print()
  1372. choice = input("select a set (number in front of it): ")
  1373. if choice == "1":
  1374. return avalugg_1
  1375. #carracosta
  1376. elif mon == "carracosta" or mon == "carra" or mon == "costa" or mon == "car":
  1377. print()
  1378. print("1: " + carracosta_1.name + ": " + carracosta_1.nature + " nature, item: " + carracosta_1.item + ", ev spread: " + carracosta_1.ev_spread + ", \nmoveset: " + carracosta_1.move1 + ", " + carracosta_1.move2 + ", " + carracosta_1.move3 + ", " + carracosta_1.move4)
  1379. print()
  1380. choice = input("select a set (number in front of it): ")
  1381. if choice == "1":
  1382. return carracosta_1
  1383. #gallade
  1384. elif mon == "mega gallade" or mon == "gallade mega" or mon == "megagallade" or mon == "gallademega" or mon == "gallade":
  1385. print()
  1386. print("1: " + gallade_mega_1.name + ": " + gallade_mega_1.nature + " nature, item: " + gallade_mega_1.item + ", ev spread: " + gallade_mega_1.ev_spread + ", \nmoveset: " + gallade_mega_1.move1 + ", " + gallade_mega_1.move2 + ", " + gallade_mega_1.move3 + ", " + gallade_mega_1.move4)
  1387. print()
  1388. choice = input("select a set (number in front of it): ")
  1389. if choice == "1":
  1390. return gallade_mega_1
  1391. #scizor
  1392. elif mon == "mega scizor" or mon == "scizor mega" or mon == "megascizor" or mon == "scizormega" or mon == "scizor" or mon == "sciz":
  1393. print()
  1394. print("1: " + scizor_mega_1.name + ": " + scizor_mega_1.nature + " nature, item: " + scizor_mega_1.item + ", ev spread: " + scizor_mega_1.ev_spread + ", \nmoveset: " + scizor_mega_1.move1 + ", " + scizor_mega_1.move2 + ", " + scizor_mega_1.move3 + ", " + scizor_mega_1.move4)
  1395. print()
  1396. choice = input("select a set (number in front of it): ")
  1397. if choice == "1":
  1398. return scizor_mega_1
  1399. #weavile
  1400. elif mon == "weavile" or mon == "weav" or mon == "vile":
  1401. print()
  1402. print("1: " + weavile_1.name + ": " + weavile_1.nature + " nature, item: " + weavile_1.item + ", ev spread: " + weavile_1.ev_spread + ", \nmoveset: " + weavile_1.move1 + ", " + weavile_1.move2 + ", " + weavile_1.move3 + ", " + weavile_1.move4)
  1403. print("2: " + weavile_2.name + ": " + weavile_2.nature + " nature, item: " + weavile_2.item + ", ev spread: " + weavile_2.ev_spread + ", \nmoveset: " + weavile_2.move1 + ", " + weavile_2.move2 + ", " + weavile_2.move3 + ", " + weavile_2.move4)
  1404. print()
  1405. choice = input("select a set (number in front of it): ")
  1406. if choice == "1":
  1407. return weavile_1
  1408. elif choice == "2":
  1409. return weavile_2
  1410. #infernape
  1411. elif mon == "infernape" or mon == "nape" or mon == "infern":
  1412. print()
  1413. print("1: " + infernape_1.name + ": " + infernape_1.nature + " nature, item: " + infernape_1.item + ", ev spread: " + infernape_1.ev_spread + ", \nmoveset: " + infernape_1.move1 + ", " + infernape_1.move2 + ", " + infernape_1.move3 + ", " + infernape_1.move4)
  1414. print()
  1415. choice = input("select a set (number in front of it): ")
  1416. if choice == "1":
  1417. return infernape_1
  1418. #type null
  1419. elif mon == "type null" or mon == "type: null" or mon == "null" or mon == "typenull" or mon == "type:null":
  1420. print()
  1421. print("1: " + type_null_1.name + ": " + type_null_1.nature + " nature, item: " + type_null_1.item + ", ev spread: " + type_null_1.ev_spread + ", \nmoveset: " + type_null_1.move1 + ", " + type_null_1.move2 + ", " + type_null_1.move3 + ", " + type_null_1.move4)
  1422. print()
  1423. choice = input("select a set (number in front of it): ")
  1424. if choice == "1":
  1425. return type_null_1
  1426.  
  1427. def cls():
  1428. os.system('cls' if os.name=='nt' else 'clear')
  1429.  
  1430. #function to get mons from user
  1431. def get_users_input():
  1432. print("dont use dashes or underscores for megas")
  1433. mon = input("input the name of the first mon on the opponent's team: ")
  1434. opponent_loss_1.extend(getmon(mon.lower()).lmatchups)
  1435. print()
  1436. mon2 = input("input the name of the second mon on the opponent's team: ")
  1437. opponent_loss_2.extend(getmon(mon2.lower()).lmatchups)
  1438. print()
  1439. mon3 = input("input the name of the third mon on the opponent's team: ")
  1440. opponent_loss_3.extend(getmon(mon3.lower()).lmatchups)
  1441. found_mon = 0
  1442. for x in opponent_loss_1:
  1443. for y in opponent_loss_2:
  1444. if x == y:
  1445. for z in opponent_loss_3:
  1446. if y == z:
  1447. found_mon = found_mon + 1;
  1448. print()
  1449. if z == durant_1 or z == stunfisk_1:
  1450. print("(use this at your own risk)")
  1451. elif z == zeraora_1:
  1452. print("this mon is shit and you shouldnt use it")
  1453. if found_mon == 1:
  1454. print("use this set to 3-0:\n" + x.name + " @ " + x.item + "\nAbility: " + x.ability + "\nEVs: " + x.ev_spread + "\n" + x.nature + " nature" + "\n- " + x.move1 + "\n- " + x.move2 + "\n- " + x.move3 + "\n- " + x.move4)
  1455. elif found_mon > 1:
  1456. print("or this set:\n" + x.name + " @ " + x.item + "\nAbility: " + x.ability + "\nEVs: " + x.ev_spread + "\n" + x.nature + " nature" + "\n- " + x.move1 + "\n- " + x.move2 + "\n- " + x.move3 + "\n- " + x.move4)
  1457. if found_mon == 0:
  1458. print("no 3-0s found in the current database")
  1459.  
  1460. #finding good teams
  1461. def find_teams():
  1462. opponent_loss_1 = []
  1463. opponent_loss_2 = []
  1464. opponent_loss_3 = []
  1465. found_teams = 0
  1466. no_3_0s = open("no3.txt", "w+")
  1467. for x in pokemon_list:
  1468. opponent_loss_1 = []
  1469. opponent_loss_1.extend(x.lmatchups)
  1470. for y in pokemon_list:
  1471. opponent_loss_2 = []
  1472. opponent_loss_2.extend(y.lmatchups)
  1473. for z in pokemon_list:
  1474. team_has_counters = 0
  1475. opponent_loss_3 = []
  1476. opponent_loss_3.extend(z.lmatchups)
  1477. for xx in opponent_loss_1:
  1478. for yy in opponent_loss_2:
  1479. if xx == yy:
  1480. for zz in opponent_loss_3:
  1481. if yy == zz:
  1482. team_has_counters = team_has_counters + 1
  1483. if team_has_counters >= 1:
  1484. break
  1485. if team_has_counters >= 1:
  1486. break
  1487.  
  1488. if team_has_counters < 1:
  1489. duplicate = False
  1490. if found_teams == 0:
  1491. print("\n=== [gen71v1] " + x.name + " " + y.name + " " + z.name + " ===\n")
  1492. no_3_0s.write("\n\n=== [gen71v1] " + x.name + " " + y.name + " " + z.name + " ===\n\n")
  1493. print(x.name + " @ " + x.item + "\nAbility: " + x.ability + "\nEVs: " + x.ev_spread + "\n" + x.nature + " Nature" + "\n- " + x.move1 + "\n- " + x.move2 + "\n- " + x.move3 + "\n- " + x.move4 + "\n \n" + y.name + " @ " + y.item + "\nAbility: " + y.ability + "\nEVs: " + y.ev_spread + "\n" + y.nature + " Nature" + "\n- " + y.move1 + "\n- " + y.move2 + "\n- " + y.move3 + "\n- " + y.move4 + "\n \n" + z.name + " @ " + z.item + "\nAbility: " + z.ability + "\nEVs: " + z.ev_spread + "\n" + z.nature + " Nature" + "\n- " + z.move1 + "\n- " + z.move2 + "\n- " + z.move3 + "\n- " + z.move4)
  1494. no_3_0s.write(x.name + " @ " + x.item + "\nAbility: " + x.ability + "\nEVs: " + x.ev_spread + "\n" + x.nature + " Nature" + "\n- " + x.move1 + "\n- " + x.move2 + "\n- " + x.move3 + "\n- " + x.move4 + "\n \n" + y.name + " @ " + y.item + "\nAbility: " + y.ability + "\nEVs: " + y.ev_spread + "\n" + y.nature + " Nature" + "\n- " + y.move1 + "\n- " + y.move2 + "\n- " + y.move3 + "\n- " + y.move4 + "\n \n" + z.name + " @ " + z.item + "\nAbility: " + z.ability + "\nEVs: " + z.ev_spread + "\n" + z.nature + " Nature" + "\n- " + z.move1 + "\n- " + z.move2 + "\n- " + z.move3 + "\n- " + z.move4)
  1495. found_teams = found_teams + 1
  1496. team_list.append([x, y, z])
  1497. else:
  1498. i = 0
  1499. for team in team_list:
  1500. if (team_list[i][0] == x or team_list[i][1] == x or team_list[i][2] == x) and (team_list[i][0] == y or team_list[i][1] == y or team_list[i][2] == y) and (team_list[i][0] == z or team_list[i][1] == z or team_list[i][2] == z):
  1501. duplicate = True
  1502. break
  1503. i = i + 1
  1504. if duplicate == False:
  1505. print("\n\n=== [gen71v1] " + x.name + " " + y.name + " " + z.name + " ===\n\n")
  1506. no_3_0s.write("\n\n=== [gen71v1] " + x.name + " " + y.name + " " + z.name + " ===\n\n")
  1507. print(x.name + " @ " + x.item + "\nAbility: " + x.ability + "\nEVs: " + x.ev_spread + "\n" + x.nature + " Nature" + "\n- " + x.move1 + "\n- " + x.move2 + "\n- " + x.move3 + "\n- " + x.move4 + "\n \n" + y.name + " @ " + y.item + "\nAbility: " + y.ability + "\nEVs: " + y.ev_spread + "\n" + y.nature + " Nature" + "\n- " + y.move1 + "\n- " + y.move2 + "\n- " + y.move3 + "\n- " + y.move4 + "\n \n" + z.name + " @ " + z.item + "\nAbility: " + z.ability + "\nEVs: " + z.ev_spread + "\n" + z.nature + " Nature" + "\n- " + z.move1 + "\n- " + z.move2 + "\n- " + z.move3 + "\n- " + z.move4)
  1508. no_3_0s.write(x.name + " @ " + x.item + "\nAbility: " + x.ability + "\nEVs: " + x.ev_spread + "\n" + x.nature + " Nature" + "\n- " + x.move1 + "\n- " + x.move2 + "\n- " + x.move3 + "\n- " + x.move4 + "\n \n" + y.name + " @ " + y.item + "\nAbility: " + y.ability + "\nEVs: " + y.ev_spread + "\n" + y.nature + " Nature" + "\n- " + y.move1 + "\n- " + y.move2 + "\n- " + y.move3 + "\n- " + y.move4 + "\n \n" + z.name + " @ " + z.item + "\nAbility: " + z.ability + "\nEVs: " + z.ev_spread + "\n" + z.nature + " Nature" + "\n- " + z.move1 + "\n- " + z.move2 + "\n- " + z.move3 + "\n- " + z.move4)
  1509. found_teams = found_teams + 1
  1510. team_list.append([x, y, z])
  1511. print("\nteams found:")
  1512. print(found_teams)
  1513.  
  1514. #finding good teams
  1515. def find_teams_2():
  1516. opponent_loss_1 = []
  1517. opponent_loss_2 = []
  1518. opponent_loss_3 = []
  1519. choice1 = input("would you like to find good teams based on beating certain mons, or based on 1v1 tiers or both (m/t/b): ")
  1520. if choice1 == "m":
  1521. choosing = True
  1522. while choosing:
  1523. cls()
  1524. mon1 = input("enter the mons name you want to beat: ")
  1525. got_mons.append(getmon(mon1))
  1526. q = input("would you like to add more specific mons you want your team to beat? (y/n): ")
  1527. if q == "no" or q == "n":
  1528. choosing = False
  1529. elif q == "y" or q == "ye" or q == "yes":
  1530. choosing = True
  1531. else:
  1532. choosing = False
  1533. elif choice1 == "t":
  1534. choosing = True
  1535. while choosing:
  1536. cls()
  1537. tier1 = input("enter the tier of mons you want to have a counter on your team for (s/a+/a/a-/b+/b/b-/c+/c/c-/d/u) \nor if you want to know the mons in a tier type 'help': ")
  1538. tier1 = tier1.lower()
  1539. if tier1 == "s" or tier1 == "a+" or tier1 == "a" or tier1 == "a-" or tier1 == "b+" or tier1 == "b" or tier1 == "b-" or tier1 == "c+" or tier1 == "c" or tier1 == "c-" or tier1 == "d" or tier1 == "u":
  1540. for pokes in pokemon_list:
  1541. if pokes.tier == tier1:
  1542. got_mons.append(pokes)
  1543. q = input("would you like to add more tiers you want to have counters for (the more tiers you want to counter the less teams there will be) (y/n): ")
  1544. if q == "no" or q == "n":
  1545. choosing = False
  1546. elif q == "y" or q == "ye" or q == "yes":
  1547. choosing = True
  1548. else:
  1549. choosing = False
  1550. elif tier1 == "h" or tier1 == "help":
  1551. what_tier = input("enter the tier you want to know the mons for (s/a+/a/a-/b+/b/b-/c+/c/c-/d/u): ")
  1552. for aa in pokemon_list:
  1553. if aa.tier == what_tier:
  1554. print(aa.name)
  1555. else:
  1556. print("invalid input")
  1557. else:
  1558. choosing = True
  1559. while choosing:
  1560. cls()
  1561. tier1 = input("enter the tier of mons you want to have a counter on your team for (s/a+/a/a-/b+/b/b-/c+/c/c-/d/u) \nor if you want to know the mons in a tier type 'help': ")
  1562. tier1 = tier1.lower()
  1563. if tier1 == "s" or tier1 == "a+" or tier1 == "a" or tier1 == "a-" or tier1 == "b+" or tier1 == "b" or tier1 == "b-" or tier1 == "c+" or tier1 == "c" or tier1 == "c-" or tier1 == "d" or tier1 == "u":
  1564. for pokes in pokemon_list:
  1565. if pokes.tier == tier1:
  1566. got_mons.append(pokes)
  1567. q = input("would you like to add more tiers you want to have counters for (the more tiers you want to counter the less teams there will be) (y/n): ")
  1568. if q == "no" or q == "n":
  1569. choosing = False
  1570. elif q == "y" or q == "ye" or q == "yes":
  1571. choosing = True
  1572. else:
  1573. choosing = False
  1574. elif tier1 == "h" or tier1 == "help":
  1575. what_tier = input("enter the tier you want to know the mons for (s/a+/a/a-/b+/b/b-/c+/c/c-/d/u): ")
  1576. for aa in pokemon_list:
  1577. if aa.tier == what_tier:
  1578. print(aa.name)
  1579. else:
  1580. print("invalid input")
  1581. choosing_1 = True
  1582. while choosing_1:
  1583. mon1 = input("enter the mons name you want to beat: ")
  1584. got_mons.append(getmon(mon1))
  1585. q = input("would you like to add more specific mons you want your team to beat? (y/n): ")
  1586. if q == "no" or q == "n":
  1587. choosing_1 = False
  1588. elif q == "y" or q == "ye" or q == "yes":
  1589. choosing_1 = True
  1590. else:
  1591. choosing_1 = False
  1592. found_teams = 0
  1593. for x in pokemon_list:
  1594. opponent_loss_1 = []
  1595. opponent_loss_1.extend(x.lmatchups)
  1596. for y in pokemon_list:
  1597. if y.name != x.name:
  1598. opponent_loss_2 = []
  1599. opponent_loss_2.extend(y.lmatchups)
  1600. for z in pokemon_list:
  1601. team_has_counters = 0
  1602. team_pass = False
  1603. team_pass_3 = 0
  1604. opponent_loss_3 = []
  1605. opponent_loss_3.extend(z.lmatchups)
  1606. for xx in opponent_loss_1:
  1607. for yy in opponent_loss_2:
  1608. if xx == yy:
  1609. for zz in opponent_loss_3:
  1610. if yy == zz:
  1611. team_has_counters = team_has_counters + 1
  1612. if team_has_counters < 1:
  1613. m = 0
  1614. for mons in got_mons:
  1615. m = m + 1
  1616. for loss in mons.lmatchups:
  1617. if loss == x or loss == y or loss == z:
  1618. team_pass_3 = team_pass_3 + 1
  1619. break
  1620. if m != team_pass_3:
  1621. team_pass = False
  1622. break
  1623. if team_pass == True:
  1624. duplicate = False
  1625. if found_teams == 0:
  1626. print("\n=== [gen71v1] " + x.name + " " + y.name + " " + z.name + " ===\n")
  1627. if x == aron_1:
  1628. print(x.name + " @ " + x.item + "\nAbility: " + x.ability + "\nLevel: 1\nEVs: " + x.ev_spread + "\n" + x.nature + " Nature" + "\n- " + x.move1 + "\n- " + x.move2 + "\n- " + x.move3 + "\n- " + x.move4 + "\n \n" + y.name + " @ " + y.item + "\nAbility: " + y.ability + "\nEVs: " + y.ev_spread + "\n" + y.nature + " Nature" + "\n- " + y.move1 + "\n- " + y.move2 + "\n- " + y.move3 + "\n- " + y.move4 + "\n \n" + z.name + " @ " + z.item + "\nAbility: " + z.ability + "\nEVs: " + z.ev_spread + "\n" + z.nature + " Nature" + "\n- " + z.move1 + "\n- " + z.move2 + "\n- " + z.move3 + "\n- " + z.move4)
  1629. elif y == aron_1:
  1630. print(x.name + " @ " + x.item + "\nAbility: " + x.ability + "\nEVs: " + x.ev_spread + "\n" + x.nature + " Nature" + "\n- " + x.move1 + "\n- " + x.move2 + "\n- " + x.move3 + "\n- " + x.move4 + "\n \n" + y.name + " @ " + y.item + "\nAbility: " + y.ability + "\nLevel: 1\nEVs: " + y.ev_spread + "\n" + y.nature + " Nature" + "\n- " + y.move1 + "\n- " + y.move2 + "\n- " + y.move3 + "\n- " + y.move4 + "\n \n" + z.name + " @ " + z.item + "\nAbility: " + z.ability + "\nEVs: " + z.ev_spread + "\n" + z.nature + " Nature" + "\n- " + z.move1 + "\n- " + z.move2 + "\n- " + z.move3 + "\n- " + z.move4)
  1631. elif z == aron_1:
  1632. print(x.name + " @ " + x.item + "\nAbility: " + x.ability + "\nEVs: " + x.ev_spread + "\n" + x.nature + " Nature" + "\n- " + x.move1 + "\n- " + x.move2 + "\n- " + x.move3 + "\n- " + x.move4 + "\n \n" + y.name + " @ " + y.item + "\nAbility: " + y.ability + "\nEVs: " + y.ev_spread + "\n" + y.nature + " Nature" + "\n- " + y.move1 + "\n- " + y.move2 + "\n- " + y.move3 + "\n- " + y.move4 + "\n \n" + z.name + " @ " + z.item + "\nAbility: " + z.ability + "\nLevel: 1\nEVs: " + z.ev_spread + "\n" + z.nature + " Nature" + "\n- " + z.move1 + "\n- " + z.move2 + "\n- " + z.move3 + "\n- " + z.move4)
  1633. else:
  1634. print(x.name + " @ " + x.item + "\nAbility: " + x.ability + "\nEVs: " + x.ev_spread + "\n" + x.nature + " Nature" + "\n- " + x.move1 + "\n- " + x.move2 + "\n- " + x.move3 + "\n- " + x.move4 + "\n \n" + y.name + " @ " + y.item + "\nAbility: " + y.ability + "\nEVs: " + y.ev_spread + "\n" + y.nature + " Nature" + "\n- " + y.move1 + "\n- " + y.move2 + "\n- " + y.move3 + "\n- " + y.move4 + "\n \n" + z.name + " @ " + z.item + "\nAbility: " + z.ability + "\nEVs: " + z.ev_spread + "\n" + z.nature + " Nature" + "\n- " + z.move1 + "\n- " + z.move2 + "\n- " + z.move3 + "\n- " + z.move4)
  1635. found_teams = found_teams + 1
  1636. team_list.append([x, y, z])
  1637. else:
  1638. i = 0
  1639. for team in team_list:
  1640. if (team_list[i][0] == x or team_list[i][1] == x or team_list[i][2] == x) and (team_list[i][0] == y or team_list[i][1] == y or team_list[i][2] == y) and (team_list[i][0] == z or team_list[i][1] == z or team_list[i][2] == z):
  1641. duplicate = True
  1642. break
  1643. i = i + 1
  1644. if duplicate == False:
  1645. print("\n=== [gen71v1] " + x.name + " " + y.name + " " + z.name + " ===\n")
  1646. if x == aron_1:
  1647. print(x.name + " @ " + x.item + "\nAbility: " + x.ability + "\nLevel: 1\nEVs: " + x.ev_spread + "\n" + x.nature + " Nature" + "\n- " + x.move1 + "\n- " + x.move2 + "\n- " + x.move3 + "\n- " + x.move4 + "\n \n" + y.name + " @ " + y.item + "\nAbility: " + y.ability + "\nEVs: " + y.ev_spread + "\n" + y.nature + " Nature" + "\n- " + y.move1 + "\n- " + y.move2 + "\n- " + y.move3 + "\n- " + y.move4 + "\n \n" + z.name + " @ " + z.item + "\nAbility: " + z.ability + "\nEVs: " + z.ev_spread + "\n" + z.nature + " Nature" + "\n- " + z.move1 + "\n- " + z.move2 + "\n- " + z.move3 + "\n- " + z.move4)
  1648. elif y == aron_1:
  1649. print(x.name + " @ " + x.item + "\nAbility: " + x.ability + "\nEVs: " + x.ev_spread + "\n" + x.nature + " Nature" + "\n- " + x.move1 + "\n- " + x.move2 + "\n- " + x.move3 + "\n- " + x.move4 + "\n \n" + y.name + " @ " + y.item + "\nAbility: " + y.ability + "\nLevel: 1\nEVs: " + y.ev_spread + "\n" + y.nature + " Nature" + "\n- " + y.move1 + "\n- " + y.move2 + "\n- " + y.move3 + "\n- " + y.move4 + "\n \n" + z.name + " @ " + z.item + "\nAbility: " + z.ability + "\nEVs: " + z.ev_spread + "\n" + z.nature + " Nature" + "\n- " + z.move1 + "\n- " + z.move2 + "\n- " + z.move3 + "\n- " + z.move4)
  1650. elif z == aron_1:
  1651. print(x.name + " @ " + x.item + "\nAbility: " + x.ability + "\nEVs: " + x.ev_spread + "\n" + x.nature + " Nature" + "\n- " + x.move1 + "\n- " + x.move2 + "\n- " + x.move3 + "\n- " + x.move4 + "\n \n" + y.name + " @ " + y.item + "\nAbility: " + y.ability + "\nEVs: " + y.ev_spread + "\n" + y.nature + " Nature" + "\n- " + y.move1 + "\n- " + y.move2 + "\n- " + y.move3 + "\n- " + y.move4 + "\n \n" + z.name + " @ " + z.item + "\nAbility: " + z.ability + "\nLevel: 1\nEVs: " + z.ev_spread + "\n" + z.nature + " Nature" + "\n- " + z.move1 + "\n- " + z.move2 + "\n- " + z.move3 + "\n- " + z.move4)
  1652. else:
  1653. print(x.name + " @ " + x.item + "\nAbility: " + x.ability + "\nEVs: " + x.ev_spread + "\n" + x.nature + " Nature" + "\n- " + x.move1 + "\n- " + x.move2 + "\n- " + x.move3 + "\n- " + x.move4 + "\n \n" + y.name + " @ " + y.item + "\nAbility: " + y.ability + "\nEVs: " + y.ev_spread + "\n" + y.nature + " Nature" + "\n- " + y.move1 + "\n- " + y.move2 + "\n- " + y.move3 + "\n- " + y.move4 + "\n \n" + z.name + " @ " + z.item + "\nAbility: " + z.ability + "\nEVs: " + z.ev_spread + "\n" + z.nature + " Nature" + "\n- " + z.move1 + "\n- " + z.move2 + "\n- " + z.move3 + "\n- " + z.move4)
  1654. found_teams = found_teams + 1
  1655. team_list.append([x, y, z])
  1656. print("\nteams found:")
  1657. print(found_teams)
  1658.  
  1659. #finding good teams
  1660. def find_teams_3():
  1661. opponent_loss_1 = []
  1662. opponent_loss_2 = []
  1663. opponent_loss_3 = []
  1664. cls()
  1665. while True:
  1666. tier1 = input("enter command or see commands typing (com): ")
  1667. tier1 = tier1.lower()
  1668. if tier1 == "s" or tier1 == "a+" or tier1 == "a" or tier1 == "a-" or tier1 == "b+" or tier1 == "b" or tier1 == "b-" or tier1 == "c+" or tier1 == "c" or tier1 == "c-" or tier1 == "d" or tier1 == "u":
  1669. for pokes in pokemon_list:
  1670. if pokes.tier == tier1:
  1671. got_mons.append(pokes)
  1672. elif tier1 == "h" or tier1 == "help":
  1673. what_tier = input("enter the tier you want to know the mons for (s/a+/a/a-/b+/b/b-/c+/c/c-/d/u): ")
  1674. for aa in pokemon_list:
  1675. if aa.tier == what_tier:
  1676. print(aa.name)
  1677. elif tier1 == "q":
  1678. break
  1679. elif tier1 == "r":
  1680. mon1 = input("enter the mons name you want to remove: ")
  1681. remove = getmon(mon1)
  1682. i = 0
  1683. for x in got_mons:
  1684. if x == remove:
  1685. got_mons.pop(i)
  1686. i += 1
  1687. elif tier1 == "see":
  1688. for x in got_mons:
  1689. print(x.name)
  1690. elif tier1 == "add":
  1691. mon1 = input("enter mon name: ")
  1692. got_mons.append(getmon(mon1))
  1693. elif tier1 == "com":
  1694. print("\nenter the tier of mons you want to have a counter on your team for (s/a+/a/a-/b+/b/b-/c+/c/c-/d/u)- \nor if you want to know the mons in a tier type 'help'-\nor add a mon type (add)- \nor if you want to remove a mon added in tiers, type (r)- \nor see what mons are added (see)-\nor if you are finished adding/removing type (q): ")
  1695. else:
  1696. print("invalid input")
  1697. choosing_1 = True
  1698. found_teams = 0
  1699. teams = open("teams.txt", "w+")
  1700. for x in pokemon_list:
  1701. for y in pokemon_list:
  1702. if y.name != x.name:
  1703. for z in pokemon_list:
  1704. if z.name != y.name and z.name != x.name:
  1705. team_pass = True
  1706. team_pass_3 = 0
  1707. m = 0
  1708. for mons in got_mons:
  1709. m = m + 1
  1710. for loss in mons.lmatchups:
  1711. if loss == x or loss == y or loss == z:
  1712. team_pass_3 = team_pass_3 + 1
  1713. break
  1714. if m != team_pass_3:
  1715. team_pass = False
  1716. break
  1717. if team_pass == True:
  1718. duplicate = False
  1719. if found_teams == 0:
  1720. teams.write("\n\n=== [gen71v1] " + x.name + " " + y.name + " " + z.name + " ===\n\n")
  1721. teams.write(x.name + " @ " + x.item + "\nAbility: " + x.ability + "\nEVs: " + x.ev_spread + "\n" + x.nature + " Nature" + "\n- " + x.move1 + "\n- " + x.move2 + "\n- " + x.move3 + "\n- " + x.move4 + "\n \n" + y.name + " @ " + y.item + "\nAbility: " + y.ability + "\nEVs: " + y.ev_spread + "\n" + y.nature + " Nature" + "\n- " + y.move1 + "\n- " + y.move2 + "\n- " + y.move3 + "\n- " + y.move4 + "\n \n" + z.name + " @ " + z.item + "\nAbility: " + z.ability + "\nEVs: " + z.ev_spread + "\n" + z.nature + " Nature" + "\n- " + z.move1 + "\n- " + z.move2 + "\n- " + z.move3 + "\n- " + z.move4)
  1722. print("\n\n=== [gen71v1] " + x.name + " " + y.name + " " + z.name + " ===\n\n")
  1723. print(x.name + " @ " + x.item + "\nAbility: " + x.ability + "\nEVs: " + x.ev_spread + "\n" + x.nature + " Nature" + "\n- " + x.move1 + "\n- " + x.move2 + "\n- " + x.move3 + "\n- " + x.move4 + "\n \n" + y.name + " @ " + y.item + "\nAbility: " + y.ability + "\nEVs: " + y.ev_spread + "\n" + y.nature + " Nature" + "\n- " + y.move1 + "\n- " + y.move2 + "\n- " + y.move3 + "\n- " + y.move4 + "\n \n" + z.name + " @ " + z.item + "\nAbility: " + z.ability + "\nEVs: " + z.ev_spread + "\n" + z.nature + " Nature" + "\n- " + z.move1 + "\n- " + z.move2 + "\n- " + z.move3 + "\n- " + z.move4)
  1724. found_teams = found_teams + 1
  1725. team_list.append([x, y, z])
  1726. else:
  1727. i = 0
  1728. for team in team_list:
  1729. if (team_list[i][0] == x or team_list[i][1] == x or team_list[i][2] == x) and (team_list[i][0] == y or team_list[i][1] == y or team_list[i][2] == y) and (team_list[i][0] == z or team_list[i][1] == z or team_list[i][2] == z):
  1730. duplicate = True
  1731. break
  1732. i = i + 1
  1733. if duplicate == False:
  1734. teams.write("\n\n=== [gen71v1] " + x.name + " " + y.name + " " + z.name + " ===\n\n")
  1735. teams.write(x.name + " @ " + x.item + "\nAbility: " + x.ability + "\nEVs: " + x.ev_spread + "\n" + x.nature + " Nature" + "\n- " + x.move1 + "\n- " + x.move2 + "\n- " + x.move3 + "\n- " + x.move4 + "\n \n" + y.name + " @ " + y.item + "\nAbility: " + y.ability + "\nEVs: " + y.ev_spread + "\n" + y.nature + " Nature" + "\n- " + y.move1 + "\n- " + y.move2 + "\n- " + y.move3 + "\n- " + y.move4 + "\n \n" + z.name + " @ " + z.item + "\nAbility: " + z.ability + "\nEVs: " + z.ev_spread + "\n" + z.nature + " Nature" + "\n- " + z.move1 + "\n- " + z.move2 + "\n- " + z.move3 + "\n- " + z.move4)
  1736. print("\n\n=== [gen71v1] " + x.name + " " + y.name + " " + z.name + " ===\n\n")
  1737. print(x.name + " @ " + x.item + "\nAbility: " + x.ability + "\nEVs: " + x.ev_spread + "\n" + x.nature + " Nature" + "\n- " + x.move1 + "\n- " + x.move2 + "\n- " + x.move3 + "\n- " + x.move4 + "\n \n" + y.name + " @ " + y.item + "\nAbility: " + y.ability + "\nEVs: " + y.ev_spread + "\n" + y.nature + " Nature" + "\n- " + y.move1 + "\n- " + y.move2 + "\n- " + y.move3 + "\n- " + y.move4 + "\n \n" + z.name + " @ " + z.item + "\nAbility: " + z.ability + "\nEVs: " + z.ev_spread + "\n" + z.nature + " Nature" + "\n- " + z.move1 + "\n- " + z.move2 + "\n- " + z.move3 + "\n- " + z.move4)
  1738. found_teams = found_teams + 1
  1739. team_list.append([x, y, z])
  1740. teams.close()
  1741. print("\nteams found:")
  1742. print(found_teams)
  1743.  
  1744. #finding good teams
  1745. def tour_teams():
  1746. opponent_loss_1 = []
  1747. opponent_loss_2 = []
  1748. opponent_loss_3 = []
  1749. person = input("who are these teams for?")
  1750. print("this will be for entering groups of mons you want to beat")
  1751. choosing_1 = True
  1752. while choosing_1:
  1753. mon1 = input("enter the mons name you want to beat: ")
  1754. got_mons.append(getmon(mon1))
  1755. q = input("would you like to add more specific mons you want your team to beat? (y/n): ")
  1756. if q == "no" or q == "n":
  1757. choosing_1 = False
  1758. elif q == "y" or q == "ye" or q == "yes":
  1759. choosing_1 = True
  1760. print("enter extra mons you want covered")
  1761. choosing_1 = True
  1762. while choosing_1:
  1763. mon1 = input("enter the mons name you want to beat: ")
  1764. got_mons_2.append(getmon(mon1))
  1765. q = input("would you like to add more specific mons you want your team to beat? (y/n): ")
  1766. if q == "no" or q == "n":
  1767. choosing_1 = False
  1768. elif q == "y" or q == "ye" or q == "yes":
  1769. choosing_1 = True
  1770. else:
  1771. choosing_1 = False
  1772. found_teams = 0
  1773. teams2 = open("teams2.txt", "w+")
  1774. for x in pokemon_list:
  1775. for y in pokemon_list:
  1776. if y.name != x.name:
  1777. for z in pokemon_list:
  1778. if z.name != y.name and z.name != x.name:
  1779. m = 0
  1780. team_pass = True
  1781. for mons in got_mons:
  1782. mons.team_pass_3 = 0
  1783. for loss in mons.lmatchups:
  1784. if loss == x or loss == y or loss == z:
  1785. mons.team_pass_3 = mons.team_pass_3 + 1
  1786. if mons.team_pass_3 < 2:
  1787. team_pass = False
  1788. break
  1789. if team_pass == True:
  1790. for mons2 in got_mons_2:
  1791. mons2.team_pass_3 = 0
  1792. for losses in mons2.lmatchups:
  1793. if losses == x or losses == y or losses == z:
  1794. mons2.team_pass_3 += 1
  1795. if mons2.team_pass_3 < 1:
  1796. team_pass = False
  1797. break
  1798. if team_pass == True:
  1799. duplicate = False
  1800. if found_teams == 0:
  1801. teams2.write("\n\n=== [gen71v1] " + "Teams prepped for " + person + str(found_teams + 1) + " ===\n\n")
  1802. teams2.write(x.name + " @ " + x.item + "\nAbility: " + x.ability + "\nEVs: " + x.ev_spread + "\n" + x.nature + " Nature" + "\n- " + x.move1 + "\n- " + x.move2 + "\n- " + x.move3 + "\n- " + x.move4 + "\n \n" + y.name + " @ " + y.item + "\nAbility: " + y.ability + "\nEVs: " + y.ev_spread + "\n" + y.nature + " Nature" + "\n- " + y.move1 + "\n- " + y.move2 + "\n- " + y.move3 + "\n- " + y.move4 + "\n \n" + z.name + " @ " + z.item + "\nAbility: " + z.ability + "\nEVs: " + z.ev_spread + "\n" + z.nature + " Nature" + "\n- " + z.move1 + "\n- " + z.move2 + "\n- " + z.move3 + "\n- " + z.move4)
  1803. print("\n\n=== [gen71v1] " + "Teams prepped for " + person + str(found_teams + 1) + " ===\n\n")
  1804. print(x.name + " @ " + x.item + "\nAbility: " + x.ability + "\nEVs: " + x.ev_spread + "\n" + x.nature + " Nature" + "\n- " + x.move1 + "\n- " + x.move2 + "\n- " + x.move3 + "\n- " + x.move4 + "\n \n" + y.name + " @ " + y.item + "\nAbility: " + y.ability + "\nEVs: " + y.ev_spread + "\n" + y.nature + " Nature" + "\n- " + y.move1 + "\n- " + y.move2 + "\n- " + y.move3 + "\n- " + y.move4 + "\n \n" + z.name + " @ " + z.item + "\nAbility: " + z.ability + "\nEVs: " + z.ev_spread + "\n" + z.nature + " Nature" + "\n- " + z.move1 + "\n- " + z.move2 + "\n- " + z.move3 + "\n- " + z.move4)
  1805. found_teams = found_teams + 1
  1806. team_list.append([x, y, z])
  1807. else:
  1808. i = 0
  1809. for team in team_list:
  1810. if (team_list[i][0] == x or team_list[i][1] == x or team_list[i][2] == x) and (team_list[i][0] == y or team_list[i][1] == y or team_list[i][2] == y) and (team_list[i][0] == z or team_list[i][1] == z or team_list[i][2] == z):
  1811. duplicate = True
  1812. break
  1813. i = i + 1
  1814. if duplicate == False:
  1815. teams2.write("\n\n=== [gen71v1] " + "Teams prepped for " + person + str(found_teams + 1) + " ===\n\n")
  1816. teams2.write(x.name + " @ " + x.item + "\nAbility: " + x.ability + "\nEVs: " + x.ev_spread + "\n" + x.nature + " Nature" + "\n- " + x.move1 + "\n- " + x.move2 + "\n- " + x.move3 + "\n- " + x.move4 + "\n \n" + y.name + " @ " + y.item + "\nAbility: " + y.ability + "\nEVs: " + y.ev_spread + "\n" + y.nature + " Nature" + "\n- " + y.move1 + "\n- " + y.move2 + "\n- " + y.move3 + "\n- " + y.move4 + "\n \n" + z.name + " @ " + z.item + "\nAbility: " + z.ability + "\nEVs: " + z.ev_spread + "\n" + z.nature + " Nature" + "\n- " + z.move1 + "\n- " + z.move2 + "\n- " + z.move3 + "\n- " + z.move4)
  1817. print("\n\n=== [gen71v1] " + "Teams prepped for " + person + str(found_teams + 1) + " ===\n\n")
  1818. print(x.name + " @ " + x.item + "\nAbility: " + x.ability + "\nEVs: " + x.ev_spread + "\n" + x.nature + " Nature" + "\n- " + x.move1 + "\n- " + x.move2 + "\n- " + x.move3 + "\n- " + x.move4 + "\n \n" + y.name + " @ " + y.item + "\nAbility: " + y.ability + "\nEVs: " + y.ev_spread + "\n" + y.nature + " Nature" + "\n- " + y.move1 + "\n- " + y.move2 + "\n- " + y.move3 + "\n- " + y.move4 + "\n \n" + z.name + " @ " + z.item + "\nAbility: " + z.ability + "\nEVs: " + z.ev_spread + "\n" + z.nature + " Nature" + "\n- " + z.move1 + "\n- " + z.move2 + "\n- " + z.move3 + "\n- " + z.move4)
  1819. found_teams = found_teams + 1
  1820. team_list.append([x, y, z])
  1821. teams2.close()
  1822. print("\nteams found:")
  1823. print(found_teams)
  1824.  
  1825.  
  1826.  
  1827. #print out all current sets for each mon
  1828. def print_all_mons():
  1829. for x in pokemon_list:
  1830. print(x.name + " @ " + x.item + "\nAbility: " + x.ability + "\nEVs: " + x.ev_spread + "\n" + x.nature + " Nature" + "\n- " + x.move1 + "\n- " + x.move2 + "\n- " + x.move3 + "\n- " + x.move4 + "\n \n")
  1831. print("add matchups for your mon to add in here: \nhttps://docs.google.com/spreadsheets/d/1HsXOBRFxtbWlruwVvTbeuLCyWqLoWVGvlJO0v_MsQW4/edit?usp=sharing\nmake sure to calc and test necessary matchups, and give your set to ryyjyywyy in pokepaste (set cant have optional move, ev, or nature choices)")
  1832.  
  1833. def get_mus():
  1834. choice = input("mon name ")
  1835. mon = getmon(choice)
  1836. print("this mon loses to: \n")
  1837. for x in mon.lmatchups:
  1838. print(x.name + " @ " + x.item + "\nAbility: " + x.ability + "\nEVs: " + x.ev_spread + "\n" + x.nature + " Nature" + "\n- " + x.move1 + "\n- " + x.move2 + "\n- " + x.move3 + "\n- " + x.move4 + "\n \n")
  1839. print("this mon beats: \n")
  1840. for y in pokemon_list:
  1841. for z in y.lmatchups:
  1842. if z == mon:
  1843. print(y.name + " @ " + y.item + "\nAbility: " + y.ability + "\nEVs: " + y.ev_spread + "\n" + y.nature + " Nature" + "\n- " + y.move1 + "\n- " + y.move2 + "\n- " + y.move3 + "\n- " + y.move4 + "\n \n")
  1844. print("matches with this mon can go either way vs: \n")
  1845. for y in pokemon_list:
  1846. f= False
  1847. for z in y.lmatchups:
  1848. if mon == z:
  1849. f = True
  1850. break
  1851. if f == False:
  1852. got_mons.append(y)
  1853. for x in got_mons:
  1854. f = False
  1855. for y in mon.lmatchups:
  1856. if x == y:
  1857. f = True
  1858. break
  1859. if f == False:
  1860. print(x.name + " @ " + x.item + "\nAbility: " + x.ability + "\nEVs: " + x.ev_spread + "\n" + x.nature + " Nature" + "\n- " + x.move1 + "\n- " + x.move2 + "\n- " + x.move3 + "\n- " + x.move4 + "\n \n")
  1861.  
  1862. #find team beats/2.5-0s
  1863. def team():
  1864. print("dont use dashes or underscores for megas")
  1865. mon = input("input the name of the first mon on your team: ")
  1866. mon = getmon(mon)
  1867. mon2 = input("\ninput the name of the second mon on your team: ")
  1868. mon2 = getmon(mon2)
  1869. mon3 = input("\ninput the name of the third mon on your team: ")
  1870. mon3 = getmon(mon3)
  1871. for x in pokemon_list:
  1872. mb = False
  1873. mb2 = False
  1874. mb3 = False
  1875. c = False
  1876. for y in x.lmatchups:
  1877. if y == mon:
  1878. mb = True
  1879. opponent_loss_1.append(x)
  1880. if y == mon2:
  1881. mb2 = True
  1882. opponent_loss_2.append(x)
  1883. if y == mon3:
  1884. mb3 = True
  1885. opponent_loss_3.append(x)
  1886. if mb == False and mb2 == False and mb3 == False:
  1887. for xx in mon.lmatchups:
  1888. for yy in mon2.lmatchups:
  1889. if xx == yy:
  1890. for z in mon3.lmatchups:
  1891. if yy == z:
  1892. if z == x:
  1893. c = True
  1894. if c == False:
  1895. print("ass")
  1896. opponent_loss_4.append(x)
  1897. print("\n" + mon.name + " counters: \n")
  1898. for x in opponent_loss_1:
  1899. print(x.name + " @ " + x.item + "\nAbility: " + x.ability + "\nEVs: " + x.ev_spread + "\n" + x.nature + " Nature" + "\n- " + x.move1 + "\n- " + x.move2 + "\n- " + x.move3 + "\n- " + x.move4 + "\n \n")
  1900. print("\n" + mon2.name + " counters: \n")
  1901. for x in opponent_loss_2:
  1902. print(x.name + " @ " + x.item + "\nAbility: " + x.ability + "\nEVs: " + x.ev_spread + "\n" + x.nature + " Nature" + "\n- " + x.move1 + "\n- " + x.move2 + "\n- " + x.move3 + "\n- " + x.move4 + "\n \n")
  1903. print("\n" + mon3.name + " counters: \n")
  1904. for x in opponent_loss_3:
  1905. print(x.name + " @ " + x.item + "\nAbility: " + x.ability + "\nEVs: " + x.ev_spread + "\n" + x.nature + " Nature" + "\n- " + x.move1 + "\n- " + x.move2 + "\n- " + x.move3 + "\n- " + x.move4 + "\n \n")
  1906. print("\n" + "your team gets 2.5-0d by: \n")
  1907. for x in opponent_loss_4:
  1908. print(x.name + " @ " + x.item + "\nAbility: " + x.ability + "\nEVs: " + x.ev_spread + "\n" + x.nature + " Nature" + "\n- " + x.move1 + "\n- " + x.move2 + "\n- " + x.move3 + "\n- " + x.move4 + "\n \n")
  1909.  
  1910. #ranking mons, relevant win/loss
  1911. def rank_new():
  1912. s = 12
  1913. ap = 11
  1914. a = 10
  1915. am = 9
  1916. bp = 8
  1917. b = 7
  1918. bm = 6
  1919. cp = 5
  1920. c = 4
  1921. cm = 3
  1922. d = 2
  1923. u = 1
  1924.  
  1925. mxpt = 0
  1926. mxpt2 = 0
  1927. for x in pokemon_list:
  1928. x.ptct = 0
  1929. for x in pokemon_list:
  1930. if x.ptct == 0:
  1931. mxpt2 += 1
  1932. if x.tier == "s":
  1933. mxpt += s
  1934. elif x.tier == "a+":
  1935. mxpt += ap
  1936. elif x.tier == "a":
  1937. mxpt += a
  1938. elif x.tier == "a-":
  1939. mxpt += am
  1940. elif x.tier == "b+":
  1941. mxpt += bp
  1942. elif x.tier == "b":
  1943. mxpt += b
  1944. elif x.tier == "b-":
  1945. mxpt += bm
  1946. elif x.tier == "c+":
  1947. mxpt += cp
  1948. elif x.tier == "c":
  1949. mxpt += c
  1950. elif x.tier == "c-":
  1951. mxpt += cm
  1952. elif x.tier == "d":
  1953. mxpt += d
  1954. elif x.tier == "u":
  1955. mxpt += u
  1956. for y in pokemon_list:
  1957. if x.name == y.name:
  1958. y.ptct = 1
  1959. mxpt = mxpt * .5
  1960. mxpt = mxpt + mxpt2
  1961.  
  1962. for mon in pokemon_list:
  1963. numsets = 0
  1964. for setch in pokemon_list:
  1965. if setch.name == mon.name:
  1966. numsets = numsets + 1
  1967. mon.setamt = numsets
  1968.  
  1969. for x in pokemon_list:
  1970. x.ranking = 0
  1971. no = []
  1972. win = []
  1973. ff = []
  1974. for y in x.lmatchups:
  1975. no.append(y)
  1976. for y in pokemon_list:
  1977. for z in y.lmatchups:
  1978. if z == x:
  1979. win.append(y)
  1980. no.append(y)
  1981. for z in pokemon_list:
  1982. same = False
  1983. for l in no:
  1984. if l == z:
  1985. same = True
  1986. if same == False:
  1987. if z.name == x.name:
  1988. same = True
  1989. if same == False:
  1990. ff.append(z)
  1991. got_mons.append(x)
  1992.  
  1993. for won in win:
  1994. if won.tier == "s":
  1995. x.ranking = x.ranking + s/won.setamt
  1996. elif won.tier == "a+":
  1997. x.ranking = x.ranking + ap/won.setamt
  1998. elif won.tier == "a":
  1999. x.ranking = x.ranking + a/won.setamt
  2000. elif won.tier == "a-":
  2001. x.ranking = x.ranking + am/won.setamt
  2002. elif won.tier == "b+":
  2003. x.ranking = x.ranking + bp/won.setamt
  2004. elif won.tier == "b":
  2005. x.ranking = x.ranking + b/won.setamt
  2006. elif won.tier == "b-":
  2007. x.ranking = x.ranking + bm/won.setamt
  2008. elif won.tier == "c+":
  2009. x.ranking = x.ranking + cp/won.setamt
  2010. elif won.tier == "c":
  2011. x.ranking = x.ranking + c/won.setamt
  2012. elif won.tier == "c-":
  2013. x.ranking = x.ranking + cm/won.setamt
  2014. elif won.tier == "d":
  2015. x.ranking = x.ranking + d/won.setamt
  2016. elif won.tier == "u":
  2017. x.ranking = x.ranking + u/won.setamt
  2018.  
  2019. for fif in ff:
  2020. if fif.tier == "s":
  2021. x.ranking = x.ranking + (s/2)/fif.setamt
  2022. elif fif.tier == "a+":
  2023. x.ranking = x.ranking + (ap/2)/fif.setamt
  2024. elif fif.tier == "a":
  2025. x.ranking = x.ranking + (a/2)/fif.setamt
  2026. elif fif.tier == "a-":
  2027. x.ranking = x.ranking + (am/2)/fif.setamt
  2028. elif fif.tier == "b+":
  2029. x.ranking = x.ranking + (bp/2)/fif.setamt
  2030. elif fif.tier == "b":
  2031. x.ranking = x.ranking + (b/2)/fif.setamt
  2032. elif fif.tier == "b-":
  2033. x.ranking = x.ranking + (bm/2)/fif.setamt
  2034. elif fif.tier == "c+":
  2035. x.ranking = x.ranking + (cp/2)/fif.setamt
  2036. elif fif.tier == "c":
  2037. x.ranking = x.ranking + (c/2)/fif.setamt
  2038. elif fif.tier == "c-":
  2039. x.ranking = x.ranking + (cm/2)/fif.setamt
  2040. elif fif.tier == "d":
  2041. x.ranking = x.ranking + (d/2)/fif.setamt
  2042. elif fif.tier == "u":
  2043. x.ranking = x.ranking + (u/2)/fif.setamt
  2044.  
  2045. for x in got_mons:
  2046. x.ranking = x.ranking * .5
  2047. rank2_new()
  2048. for x in got_mons:
  2049. x.ranking = x.ranking + x.ranking2
  2050. i = 0
  2051. print("max points: " + str(mxpt))
  2052. while i < len(pokemon_list):
  2053. on = 0
  2054. best = 0
  2055. highest_mon = got_mons[0]
  2056. highest_rank = got_mons[0].ranking
  2057. for x in got_mons:
  2058. if x.ranking > highest_rank:
  2059. highest_mon = x
  2060. highest_rank = x.ranking
  2061. best = on
  2062. on = on + 1
  2063. print("rank " + str(i + 1) + ": " + highest_mon.name + " " + highest_mon.ev_spread + " " + highest_mon.move1 + " " + highest_mon.move2 + " " + highest_mon.move3 + " " + highest_mon.move4 + " " + str(highest_mon.ranking) + "\n")
  2064. got_mons.pop(best)
  2065. i = i + 1
  2066.  
  2067. #rank2, blanket win/loss
  2068. def rank2_new():
  2069. for x in pokemon_list:
  2070. x.ranking2 = 0
  2071. no = []
  2072. win = []
  2073. ff = []
  2074. for y in x.lmatchups:
  2075. no.append(y)
  2076. for y in pokemon_list:
  2077. for z in y.lmatchups:
  2078. if z == x:
  2079. win.append(y)
  2080. no.append(y)
  2081. for z in pokemon_list:
  2082. same = False
  2083. for l in no:
  2084. if l == z:
  2085. same = True
  2086. if same == False:
  2087. if z.name == x.name:
  2088. same = True
  2089. if same == False:
  2090. ff.append(z)
  2091. for won in win:
  2092. x.ranking2 = x.ranking2 + 1/won.setamt
  2093. for fif in ff:
  2094. x.ranking2 = x.ranking2 + .5/fif.setamt
  2095.  
  2096. #ranking mons, relevant win/loss
  2097. def rank_mons():
  2098. s = 12
  2099. ap = 11
  2100. a = 10
  2101. am = 9
  2102. bp = 8
  2103. b = 7
  2104. bm = 6
  2105. cp = 5
  2106. c = 4
  2107. cm = 3
  2108. d = 2
  2109. u = 1
  2110.  
  2111. for zard in pokemon_list:
  2112. if zard.name == "Charizard-Mega-X" or zard.name == "Charizard-Mega-Y":
  2113. zard.name = "Charizard"
  2114.  
  2115. for mon in pokemon_list:
  2116. current_mon = 0
  2117. for dupe in pokemon_list:
  2118. if mon.name == dupe.name:
  2119. aldone = False
  2120. for checkdupe in got_mons:
  2121. if checkdupe.name == mon.name:
  2122. aldone = True
  2123. break
  2124. if aldone == False:
  2125. for checkwin in pokemon_list:
  2126. newWin = 0
  2127. for loss in checkwin.lmatchups:
  2128. if loss == dupe:
  2129. newWin = 2
  2130. for loss2 in checkwin.lmatchups:
  2131. if loss2 == mon:
  2132. newWin = 1
  2133. break
  2134. if newWin == 2:
  2135. checkwin.lmatchups.append(mon)
  2136. good = 0
  2137. for checkdupe in got_mons:
  2138. if checkdupe.name == mon.name:
  2139. good = 1
  2140. break
  2141. if good == 0:
  2142. got_mons.append(mon)
  2143.  
  2144. for mon in pokemon_list:
  2145. numsets = 0
  2146. for setch in pokemon_list:
  2147. if setch.name == mon.name:
  2148. numsets = numsets + 1
  2149. mon.setamt = numsets
  2150.  
  2151. for x in got_mons:
  2152. x.ranking = 0
  2153. no = []
  2154. win = []
  2155. ff = []
  2156. for y in x.lmatchups:
  2157. no.append(y)
  2158. for y in pokemon_list:
  2159. for z in y.lmatchups:
  2160. if z == x:
  2161. win.append(y)
  2162. no.append(y)
  2163. for z in pokemon_list:
  2164. same = False
  2165. for l in no:
  2166. if l == z:
  2167. same = True
  2168. if same == False:
  2169. if z.name == x.name:
  2170. same = True
  2171. if same == False:
  2172. ff.append(z)
  2173. got_mons_2.append(x)
  2174.  
  2175. for won in win:
  2176. if won.tier == "s":
  2177. x.ranking = x.ranking + s/won.setamt
  2178. elif won.tier == "a+":
  2179. x.ranking = x.ranking + ap/won.setamt
  2180. elif won.tier == "a":
  2181. x.ranking = x.ranking + a/won.setamt
  2182. elif won.tier == "a-":
  2183. x.ranking = x.ranking + am/won.setamt
  2184. elif won.tier == "b+":
  2185. x.ranking = x.ranking + bp/won.setamt
  2186. elif won.tier == "b":
  2187. x.ranking = x.ranking + b/won.setamt
  2188. elif won.tier == "b-":
  2189. x.ranking = x.ranking + bm/won.setamt
  2190. elif won.tier == "c+":
  2191. x.ranking = x.ranking + cp/won.setamt
  2192. elif won.tier == "c":
  2193. x.ranking = x.ranking + c/won.setamt
  2194. elif won.tier == "c-":
  2195. x.ranking = x.ranking + cm/won.setamt
  2196. elif won.tier == "d":
  2197. x.ranking = x.ranking + d/won.setamt
  2198. elif won.tier == "u":
  2199. x.ranking = x.ranking + u/won.setamt
  2200.  
  2201. for fif in ff:
  2202. if fif.tier == "s":
  2203. x.ranking = x.ranking + (s/2)/fif.setamt
  2204. elif fif.tier == "a+":
  2205. x.ranking = x.ranking + (ap/2)/fif.setamt
  2206. elif fif.tier == "a":
  2207. x.ranking = x.ranking + (a/2)/fif.setamt
  2208. elif fif.tier == "a-":
  2209. x.ranking = x.ranking + (am/2)/fif.setamt
  2210. elif fif.tier == "b+":
  2211. x.ranking = x.ranking + (bp/2)/fif.setamt
  2212. elif fif.tier == "b":
  2213. x.ranking = x.ranking + (b/2)/fif.setamt
  2214. elif fif.tier == "b-":
  2215. x.ranking = x.ranking + (bm/2)/fif.setamt
  2216. elif fif.tier == "c+":
  2217. x.ranking = x.ranking + (cp/2)/fif.setamt
  2218. elif fif.tier == "c":
  2219. x.ranking = x.ranking + (c/2)/fif.setamt
  2220. elif fif.tier == "c-":
  2221. x.ranking = x.ranking + (cm/2)/fif.setamt
  2222. elif fif.tier == "d":
  2223. x.ranking = x.ranking + (d/2)/fif.setamt
  2224. elif fif.tier == "u":
  2225. x.ranking = x.ranking + (u/2)/fif.setamt
  2226.  
  2227. for x in got_mons_2:
  2228. x.ranking = x.ranking * .75
  2229.  
  2230. rank_mons_2()
  2231.  
  2232. for x in got_mons_2:
  2233. x.ranking = x.ranking + x.ranking2
  2234. i = 0
  2235. while i < len(got_mons):
  2236. on = 0
  2237. best = 0
  2238. highest_mon = got_mons_2[0]
  2239. highest_rank = got_mons_2[0].ranking
  2240. for x in got_mons_2:
  2241. if x.ranking > highest_rank:
  2242. highest_mon = x
  2243. highest_rank = x.ranking
  2244. best = on
  2245. on = on + 1
  2246. print("rank " + str(i + 1) + ": " + highest_mon.name + " " + str(highest_mon.ranking) + "\n")
  2247. got_mons_2.pop(best)
  2248. i = i + 1
  2249.  
  2250. def rank_mons_2():
  2251. for x in pokemon_list:
  2252. x.ranking2 = 0
  2253. no = []
  2254. win = []
  2255. ff = []
  2256. for y in x.lmatchups:
  2257. no.append(y)
  2258. for y in got_mons:
  2259. for z in y.lmatchups:
  2260. if z == x:
  2261. win.append(y)
  2262. no.append(y)
  2263. for z in got_mons:
  2264. same = False
  2265. for l in no:
  2266. if l == z:
  2267. same = True
  2268. if same == False:
  2269. if z.name == x.name:
  2270. same = True
  2271. if same == False:
  2272. ff.append(z)
  2273. for won in win:
  2274. x.ranking2 = x.ranking2 + 1/won.setamt
  2275. for fif in ff:
  2276. x.ranking2 = x.ranking2 + .5/fif.setamt
  2277.  
  2278. #counter list of mons
  2279. def get_users_input_2():
  2280. print("dont use dashes or underscores for megas")
  2281. add = True
  2282. i = 0
  2283. while add:
  2284. mon = input("input the name of a mon you want to beat: ")
  2285. opponent_loss_1.extend(getmon(mon.lower()).lmatchups)
  2286. check = input("do you want to add more mons (y/n)")
  2287. if check != "y" and check != "ye" and check != "yes":
  2288. add = False
  2289. i = i + 1
  2290. for x in pokemon_list:
  2291. double = False
  2292. j = 0
  2293. for y in got_mons:
  2294. if y == x:
  2295. double = True
  2296. break
  2297. else:
  2298. got_mons.append(x)
  2299. if double == False:
  2300. for z in opponent_loss_1:
  2301. if z == x:
  2302. j = j + 1
  2303. if j == i:
  2304. print(x.name + " @ " + x.item + "\nAbility: " + x.ability + "\nEVs: " + x.ev_spread + "\n" + x.nature + " Nature" + "\n- " + x.move1 + "\n- " + x.move2 + "\n- " + x.move3 + "\n- " + x.move4 + "\n \n")
  2305. print("done")
  2306.  
  2307. def spreadsheet():
  2308. print("matchups are based on how the mon on the left does vs the ones across")
  2309. tot = 0
  2310. for poke in pokemon_list:
  2311. tot += 1
  2312. w = "W"
  2313. l = "L"
  2314. m = "M"
  2315. i = 0
  2316. for poke in pokemon_list:
  2317. poke.namelen = len(poke.name)
  2318. if i == 0:
  2319. longnam = poke.namelen
  2320. i += 1
  2321. else:
  2322. if poke.namelen > longnam:
  2323. longnam = poke.namelen
  2324. for sp in range(longnam-1):
  2325. w += " "
  2326. m += " "
  2327. l += " "
  2328. for poke in pokemon_list:
  2329. poke.spacelen = longnam - poke.namelen
  2330. for poke in pokemon_list:
  2331. if poke.spacelen != 0:
  2332. for x in range(poke.spacelen):
  2333. poke.name += " "
  2334. space = ""
  2335. for newsp in range(longnam):
  2336. space += " "
  2337. i = 0
  2338. for poke in pokemon_list:
  2339. if i == 0:
  2340. print(space + "|" + poke.name + "|", end="")
  2341. i += 1
  2342. else:
  2343. print(poke.name + "|", end="")
  2344.  
  2345. for poke in pokemon_list:
  2346. print("\n" + poke.name + "|", end="")
  2347. for nexpoke in pokemon_list:
  2348. iswin = False
  2349. isloss = False
  2350. for loss in nexpoke.lmatchups:
  2351. if loss == poke:
  2352. print(l + "|", end="")
  2353. iswin = True
  2354. break
  2355. if iswin == False:
  2356. for losses in poke.lmatchups:
  2357. if losses == nexpoke:
  2358. print(w + "|", end="")
  2359. isloss = True
  2360. break
  2361. if iswin == False and isloss == False:
  2362. print(m + "|", end="")
  2363.  
  2364. def random_team():
  2365. i = -1
  2366. for x in pokemon_list:
  2367. i += 1
  2368. for zard in pokemon_list:
  2369. if zard.name == "Charizard-Mega-X" or zard.name == "Charizard-Mega-Y":
  2370. zard.name = "Charizard"
  2371. randmon1 = pokemon_list[random.randint(0, i)]
  2372. while True:
  2373. randmon2 = pokemon_list[random.randint(0, i)]
  2374. randmon3 = pokemon_list[random.randint(0, i)]
  2375. if randmon1.name != randmon2.name and randmon1.name != randmon3.name and randmon2.name != randmon3.name:
  2376. print(randmon1.name + " @ " + randmon1.item + "\nAbility: " + randmon1.ability + "\nEVs: " + randmon1.ev_spread + "\n" + randmon1.nature + " Nature" + "\n- " + randmon1.move1 + "\n- " + randmon1.move2 + "\n- " + randmon1.move3 + "\n- " + randmon1.move4 + "\n \n" + randmon2.name + " @ " + randmon2.item + "\nAbility: " + randmon2.ability + "\nEVs: " + randmon2.ev_spread + "\n" + randmon2.nature + " Nature" + "\n- " + randmon2.move1 + "\n- " + randmon2.move2 + "\n- " + randmon2.move3 + "\n- " + randmon2.move4 + "\n \n" + randmon3.name + " @ " + randmon3.item + "\nAbility: " + randmon3.ability + "\nEVs: " + randmon3.ev_spread + "\n" + randmon3.nature + " Nature" + "\n- " + randmon3.move1 + "\n- " + randmon3.move2 + "\n- " + randmon3.move3 + "\n- " + randmon3.move4)
  2377. break
  2378.  
  2379. def add_mon():
  2380. obj = input("mon object name: ")
  2381. name = input("mon name: ")
  2382. item = input("item: ")
  2383. nature = input("nature: ")
  2384. evs = input("evs: ")
  2385. ability = input("ability: ")
  2386. move1 = input("move1: ")
  2387. move2 = input("move2: ")
  2388. move3 = input("move3: ")
  2389. move4 = input("move4: ")
  2390. tier = input("tier: ")
  2391. newmon = pokemon(obj, "", "", "", "", "", "", "", "", "", "")
  2392. loss_list = []
  2393. for mon in pokemon_list:
  2394. while True:
  2395. mu = input("vs " + mon.objn + "; does new mon win/lose or is it not guaranteed (w/l/m): ")
  2396. if mu.lower() == "w":
  2397. mon.lmatchups.append(newmon)
  2398. break
  2399. elif mu.lower() == "l":
  2400. loss_list.append(mon)
  2401. break
  2402. elif mu.lower() == "m":
  2403. l = 0
  2404. break
  2405. else:
  2406. print("invalid input, redo: ")
  2407.  
  2408. print("\n\n" + obj + " = pokemon(\"" + name + "\", \"" + item + "\", \"" + nature + "\", \"" + evs + "\", \"" + ability + "\", \"" + move1 + "\", \"" + move2 + "\", \"" + move3 + "\", \"" + move4 + "\", \"" + tier + "\")")
  2409. for poke in pokemon_list:
  2410. i = 0
  2411. for loss in poke.lmatchups:
  2412. i += 1
  2413. poke.lossnum = i
  2414. for poke in pokemon_list:
  2415. used = False
  2416. for mon in got_mons:
  2417. if poke.name == mon.name:
  2418. used = True
  2419. break
  2420. if used == False:
  2421. print("\n#for all " + poke.name + " sets", end="")
  2422. print("\n" + poke.objn + ".lmatchups = [", end="")
  2423. i = 0
  2424. for loss in poke.lmatchups:
  2425. i += 1
  2426. if i != poke.lossnum:
  2427. print(loss.objn + ", ", end="")
  2428. else:
  2429. print(loss.objn + "]", end="")
  2430. got_mons.append(poke)
  2431. print("\n#for all " + name + " sets")
  2432. print(obj + ".lmatchups = [", end="")
  2433. i = 0
  2434. for loss in loss_list:
  2435. i += 1
  2436. newmon.lossnum = i
  2437. j = 0
  2438. for loss in loss_list:
  2439. j += 1
  2440. if j != newmon.lossnum:
  2441. print(loss.objn + ", ", end="")
  2442. else:
  2443. print(loss.objn + "]", end="")
  2444.  
  2445. #def mu_diff():
  2446.  
  2447.  
  2448. #user choice
  2449. def choice():
  2450. print("\ndeveloped by ryyjyywyy\n")
  2451. choice = input("would you like to have the computer find teams with no 3-0s using current mons and sets programed in (type 1) \nor input a team to find counters (type 2): \nor want to check matchups for a mon (type 3): \nor check what mons on your team counter and what 2.5-0s your team (type 4): ")
  2452. print()
  2453. if choice == "1":
  2454. find_teams()
  2455. elif choice == "2":
  2456. get_users_input()
  2457. elif choice == "all":
  2458. print_all_mons()
  2459. elif choice == "teams?":
  2460. find_teams_2()
  2461. elif choice == "3":
  2462. get_mus()
  2463. elif choice == "4":
  2464. team()
  2465. elif choice == "t?":
  2466. find_teams_3()
  2467. elif choice == "t":
  2468. tour_teams()
  2469. elif choice == "r?":
  2470. rank_new()
  2471. elif choice == "l":
  2472. get_users_input_2()
  2473. elif choice == "rm":
  2474. rank_mons()
  2475. elif choice == "s":
  2476. spreadsheet()
  2477. elif choice == "ran":
  2478. random_team()
  2479. elif choice == "add":
  2480. add_mon()
  2481. choice()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement