@flesh-and-blood/types 5.0.26 → 5.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4,26 +4,18 @@ const identifierExtensionMapping = {
4
4
  // [Release.RhinarBlitzDeck]: "-Blitz",
5
5
  };
6
6
  const suffixOverrides = {
7
- "FAB470-RFB": "-V2",
8
- "FAB470-RFC": "-V3",
9
- "KO_FAB506-MVB": "-V2",
10
- "KO_FAB506-MVC": "-V3",
11
- "OMN203-MVB": "-V2",
12
- "OMN203-MVC": "-V3",
13
- "MPG112-A": "-V2",
14
- "MPG112-B": "-V3",
15
- MPG112_V2: "-V2",
16
- MPG112_V3: "-V3",
17
- "MST158-B": "-V3",
18
- MST158_V3: "-V3",
19
- "ROS162-B": "-V2",
20
- ROS162_V2: "-V2",
21
- "ROS008-MV_V2_BACK": "-V3",
22
- "ROS008-MVA_BACK": "-V3",
23
- SUP009_V3: "-V3",
24
- SUP009_V3_BACK: "-V3",
25
7
  "HER146-ARF": "-ARF"
26
8
  };
9
+ const artLetterMatcher = /-(?:MV|RF|CF)?([A-Z])$/;
10
+ const getArtLetterSuffix = (upperCaseImage) => {
11
+ const imageWithoutBackMarker = upperCaseImage.replace(/_BACK$/, "");
12
+ const artLetter = artLetterMatcher.exec(imageWithoutBackMarker)?.[1];
13
+ let suffix = "";
14
+ if (artLetter) {
15
+ suffix = `-${artLetter}`;
16
+ }
17
+ return suffix;
18
+ };
27
19
  const getPrint = (printing) => {
28
20
  const identifierExtension = identifierExtensionMapping[printing.set] || "";
29
21
  const identifier = `${printing.identifier}${identifierExtension}`;
@@ -31,7 +23,8 @@ const getPrint = (printing) => {
31
23
  const foiling = printing.foiling ? `-${printing.foiling}` : ``;
32
24
  const treatment = printing.treatments?.length ? `-${printing.treatments.sort().join("-")}` : printing.treatment ? `-${printing.treatment}` : ``;
33
25
  const back = printing.image?.toLowerCase().includes("back") ? `-Back` : ``;
34
- const suffix = suffixOverrides[printing.image?.toUpperCase() || ""] || "";
26
+ const upperCaseImage = printing.image?.toUpperCase() || "";
27
+ const suffix = suffixOverrides[upperCaseImage] ?? getArtLetterSuffix(upperCaseImage);
35
28
  return `${identifier}${edition}${foiling}${treatment}${back}${suffix}`;
36
29
  };
37
30
  const orderedFullSetBlackBorderIdentifiers = [
@@ -81,7 +74,7 @@ const SPECIAL_IMAGE_PRINTING_OVERRIDES = {
81
74
  print: "FAB178-Rainbow-Alternate Art-Extended Art"
82
75
  },
83
76
  "spectral-shield": {
84
- print: "MST158-Alternate Art-V3"
77
+ print: "MST158-Alternate Art-B"
85
78
  },
86
79
  "tripwire-trap-red": {
87
80
  print: "LGS150-Rainbow"
@@ -123,7 +116,6 @@ const getSpecialPrinting = (card, printings) => {
123
116
  let alternateText;
124
117
  let coldExtendedArt;
125
118
  let coldFullArt;
126
- let coldFullArt2;
127
119
  let extendedArt;
128
120
  let backFullArt;
129
121
  let frontFullArt;
@@ -157,10 +149,6 @@ const getSpecialPrinting = (card, printings) => {
157
149
  firstFullArt = printing;
158
150
  if (foiling === Foiling.Cold) {
159
151
  coldFullArt = printing;
160
- if (upperCaseImage.includes("_V3")) {
161
- coldFullArt2 = printing;
162
- break;
163
- }
164
152
  }
165
153
  if (upperCaseImage.includes("BACK")) {
166
154
  backFullArt = printing;
@@ -189,7 +177,7 @@ const getSpecialPrinting = (card, printings) => {
189
177
  if (treatments?.includes(Treatment.AT)) {
190
178
  alternateText = printing;
191
179
  }
192
- if ((upperCaseImage.includes("_V2") || upperCaseImage.includes("-MV")) && treatments?.includes(Treatment.FA)) {
180
+ if (upperCaseImage.includes("-MV") && treatments?.includes(Treatment.FA)) {
193
181
  marvel = printing;
194
182
  }
195
183
  if (edition === ReleaseEdition.Alpha) {
@@ -209,7 +197,7 @@ const getSpecialPrinting = (card, printings) => {
209
197
  }
210
198
  }
211
199
  }
212
- const finalFullArt = fullArtAlternateArt || coldFullArt2 || frontFullArt || backFullArt || coldFullArt || firstFullArt;
200
+ const finalFullArt = fullArtAlternateArt || frontFullArt || backFullArt || coldFullArt || firstFullArt;
213
201
  return finalFullArt || coldExtendedArt || marvel || promoExtendedArt || nonFoilExtendedArt || extendedArt || alternateBorder || alternativeArt || alternateText || promoColdFoil || alphaEdition || firstEdition || promoEdition || unlimitedEdition || coldFoil || firstImage;
214
202
  }
215
203
  };
@@ -341,7 +329,6 @@ const getMaxRarityPrinting = (card, printings) => {
341
329
  let alternateText;
342
330
  let coldExtendedArt;
343
331
  let coldFullArt;
344
- let coldFullArt2;
345
332
  let extendedArt;
346
333
  let backFullArt;
347
334
  let frontFullArt;
@@ -373,10 +360,6 @@ const getMaxRarityPrinting = (card, printings) => {
373
360
  firstFullArt = printing;
374
361
  if (foiling === Foiling.Cold) {
375
362
  coldFullArt = printing;
376
- if (upperCaseImage.includes("_V3")) {
377
- coldFullArt2 = printing;
378
- break;
379
- }
380
363
  }
381
364
  if (upperCaseImage.includes("BACK")) {
382
365
  backFullArt = printing;
@@ -405,7 +388,7 @@ const getMaxRarityPrinting = (card, printings) => {
405
388
  if (treatments?.includes(Treatment.AT)) {
406
389
  alternateText = printing;
407
390
  }
408
- if ((upperCaseImage.includes("_V2") || upperCaseImage.includes("-MV")) && treatments?.includes(Treatment.FA)) {
391
+ if (upperCaseImage.includes("-MV") && treatments?.includes(Treatment.FA)) {
409
392
  marvel = printing;
410
393
  }
411
394
  if (edition === ReleaseEdition.Alpha) {
@@ -427,7 +410,7 @@ const getMaxRarityPrinting = (card, printings) => {
427
410
  }
428
411
  }
429
412
  }
430
- const finalFullArt = fullArtAlternateArt || coldFullArt2 || frontFullArt || backFullArt || coldFullArt || firstFullArt;
413
+ const finalFullArt = fullArtAlternateArt || frontFullArt || backFullArt || coldFullArt || firstFullArt;
431
414
  return goldFoil || finalFullArt || coldExtendedArt || marvel || promoColdFoil || promoExtendedArt || coldFoil || nonFoilExtendedArt || extendedArt || alternateBorder || alternativeArt || alternateText || alphaEdition || promoEdition || firstEdition || unlimitedEdition || firstImage;
432
415
  }
433
416
  };
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";var U=Object.defineProperty;var Ie=Object.getOwnPropertyDescriptor;var Se=Object.getOwnPropertyNames;var Pe=Object.prototype.hasOwnProperty;var ve=(s,n)=>{for(var g in n)U(s,g,{get:n[g],enumerable:!0})},ze=(s,n,g,c)=>{if(n&&typeof n=="object"||typeof n=="function")for(let D of Se(n))!Pe.call(s,D)&&D!==g&&U(s,D,{get:()=>n[D],enumerable:!(c=Ie(n,D))||c.enumerable});return s};var Ee=s=>ze(U({},"__esModule",{value:!0}),s);var oa={};ve(oa,{Bond:()=>re,CardRole:()=>ue,Class:()=>ae,Flow:()=>se,Foiling:()=>$,Format:()=>ne,Fusion:()=>ie,Hero:()=>pe,Keyword:()=>fe,Language:()=>Ae,Meta:()=>le,Metatype:()=>ke,Rarity:()=>te,Release:()=>ce,ReleaseEdition:()=>oe,ReleaseType:()=>Be,Shorthand:()=>q,Subtype:()=>De,Talent:()=>de,Trait:()=>ge,Treatment:()=>ee,Type:()=>he,fullSetIdentifiers:()=>W,getBoomerPrinting:()=>ta,getCanAddToDeck:()=>Oe,getCanBeCreated:()=>me,getCanBeExtra:()=>xe,getCardFromGEMCardIdentifier:()=>Ce,getCardIdentifier:()=>_,getCardRole:()=>Ve,getDefaultPrinting:()=>na,getFrontAndBackCardIdentifier:()=>Fe,getIsArenaCard:()=>w,getIsBooster:()=>Ke,getIsDeckCard:()=>N,getIsDraftable:()=>Ze,getIsExtra:()=>E,getIsPreconstructed:()=>Xe,getIsReprint:()=>Je,getMaxRarityPrinting:()=>ca,getPrint:()=>$e,getShouldRotateCardImage:()=>We,getSpecialPrinting:()=>ra,orderedFullSetBlackBorderIdentifiers:()=>qe,releases:()=>Qe,setIdentifierToSetMappings:()=>ye,setToSetIdentifierMappings:()=>je,silverAgeChapters:()=>Ue});module.exports=Ee(oa);var $=(c=>(c.Cold="Cold",c.Gold="Gold",c.Rainbow="Rainbow",c))($||{}),q=(i=>(i.Buffs="Buffs",i.Flick="Flick",i.Poppers="Poppers",i.Sin="Sin",i.Tap="Tap",i.Untap="Untap",i))(q||{}),ee=(t=>(t.AB="Alternate Border",t.AA="Alternate Art",t.AT="Alternate Text",t.EA="Extended Art",t.FA="Full Art",t))(ee||{}),ae=(h=>(h.NotClassed="NotClassed",h.Generic="Generic",h.Adjudicator="Adjudicator",h.Assassin="Assassin",h.Bard="Bard",h.Brute="Brute",h.Guardian="Guardian",h.Illusionist="Illusionist",h.Mechanologist="Mechanologist",h.Merchant="Merchant",h.Necromancer="Necromancer",h.Ninja="Ninja",h.Pirate="Pirate",h.Ranger="Ranger",h.Runeblade="Runeblade",h.Shapeshifter="Shapeshifter",h.Thief="Thief",h.Warrior="Warrior",h.Wizard="Wizard",h))(ae||{}),re=(n=>(n.Earth="Earth",n))(re||{}),se=(n=>(n.Lightning="Lightning",n))(se||{}),ne=(p=>(p.Blitz="Blitz",p.ClassicConstructed="Classic Constructed",p.Draft="Draft",p.GoldenAge="Golden Age",p.LivingLegend="Living Legend",p.Open="Open",p.Sealed="Sealed",p.SilverAge="Silver Age",p.UltimatePitFight="Ultimate Pit Fight",p))(ne||{}),ie=(c=>(c.Earth="Earth",c.Ice="Ice",c.Lightning="Lightning",c))(ie||{}),te=(A=>(A.Basic="Basic",A.Token="Token",A.Common="Common",A.Rare="Rare",A.SuperRare="Super Rare",A.Majestic="Majestic",A.Marvel="Marvel",A.Legendary="Legendary",A.Fabled="Fabled",A.Promo="Promo",A))(te||{}),le=(i=>(i.Arena="Arena",i.Deck="Deck",i.DualClass="Dual class",i.Expansion="Expansion slot",i.Rainbow="Rainbow",i.Reprint="Reprint",i))(le||{}),ce=(e=>(e.ArcaneRising="Arcane Rising",e.BrightLights="Bright Lights",e.CompendiumOfRathe="Compendium of Rathe",e.CrucibleOfWar="Crucible of War",e.DuskTillDawn="Dusk till Dawn",e.Dynasty="Dynasty",e.Everfest="Everfest",e.HeavyHitters="Heavy Hitters",e.HighSeas="High Seas",e.HistoryPack1="History Pack 1",e.Monarch="Monarch",e.OmensOfTheThirdAge="Omens of the Third Age",e.Outsiders="Outsiders",e.PartTheMistveil="Part the Mistveil",e.Rosetta="Rosetta",e.SuperSlam="Super Slam",e.TalesOfAria="Tales of Aria",e.TheHunted="The Hunted",e.Uprising="Uprising",e.UsurpTheShadowThrone="Usurp the Shadow Throne",e.WelcomeToRathe="Welcome to Rathe",e.ArmoryDeckArakni="Armory Deck: Arakni",e.ArmoryDeckAurora="Armory Deck: Aurora",e.ArmoryDeckAzalea="Armory Deck: Azalea",e.ArmoryDeckBoltyn="Armory Deck: Boltyn",e.ArmoryDeckDash="Armory Deck: Dash",e.ArmoryDeckGravyBones="Armory Deck: Gravy Bones",e.ArmoryDeckIra="Armory Deck: Ira",e.ArmoryDeckKayo="Armory Deck: Kayo",e.ArmoryDeckMalice="Armory Deck: Malice",e.ArmoryDeckMaxx="Armory Deck: Maxx",e.ArmoryDeckOlympia="Armory Deck: Olympia",e.ArmoryDeckPleiades="Armory Deck: Pleiades",e.ArmoryDeckRhinar="Armory Deck: Rhinar",e.ArmoryDeckZyggy="Armory Deck: Zyggy",e.ArmoryDeckDrMortimer="Armory Deck: Dr. Mortimer",e.ArmoryDeckOriginsHala="Armory Deck Origins: Hala",e.ArmoryDeckOriginsJarl="Armory Deck Origins: Jarl",e.ArmoryDeckLegendsPrism="Armory Deck Legends: Prism",e.ArmoryDeckLegendsViserai="Armory Deck Legends: Viserai",e.ArakniBlitzDeck="Arakni Blitz Deck",e.ArakniBlitzDeckARK="Arakni Hunted Blitz Deck",e.ArakniWebOfDeceitBlitzDeck="Arakni, Web of Deceit Blitz Deck",e.AuroraBlitzDeck="Aurora Blitz Deck",e.AzaleaBlitzDeck="Azalea Blitz Deck",e.BenjiBlitzDeck="Benji Blitz Deck",e.BetsyBlitzDeck="Betsy Blitz Deck",e.BoltynBlitzDeck="Boltyn Blitz Deck",e.BriarBlitzDeck="Briar Blitz Deck",e.ChaneBlitzDeck="Chane Blitz Deck",e.CindraBlitzDeck="Cindra Blitz Deck",e.DromaiBlitzDeck="Dromai Blitz Deck",e.EnigmaBlitzDeck="Enigma Blitz Deck",e.FaiBlitzDeck="Fai Blitz Deck",e.FangBlitzDeck="Fang Blitz Deck",e.FlorianBlitzDeck="Florian Blitz Deck",e.KassaiBlitzDeck="Kassai Blitz Deck",e.KatsuBlitzDeck="Katsu Blitz Deck",e.KayoBlitzDeck="Kayo Blitz Deck",e.LeviaBlitzDeck="Levia Blitz Deck",e.LexiBlitzDeck="Lexi Blitz Deck",e.NuuBlitzDeck="Nuu Blitz Deck",e.OldhimBlitzDeck="Oldhim Blitz Deck",e.OlympiaBlitzDeck="Olympia Blitz Deck",e.OscilioBlitzDeck="Oscilio Blitz Deck",e.PrismBlitzDeck="Prism Blitz Deck",e.RhinarBlitzDeck="Rhinar Blitz Deck",e.RiptideBlitzDeck="Riptide Blitz Deck",e.UzuriBlitzDeck="Uzuri Blitz Deck",e.VerdanceBlitzDeck="Verdance Blitz Deck",e.VictorBlitzDeck="Victor Blitz Deck",e.ZenBlitzDeck="Zen Blitz Deck",e.FirstStrikeAurora="1st Strike: Aurora",e.FirstStrikeTerra="1st Strike: Terra",e.BravoHeroDeck="Bravo Hero Deck",e.DorintheaHeroDeck="Dorinthea Hero Deck",e.KatsuHeroDeck="Katsu Hero Deck",e.RhinarHeroDeck="Rhinar Hero Deck",e.ArakniSilverAgeDeck="Arakni Silver Age Deck",e.AzaleaSilverAgeDeck="Azalea Silver Age Deck",e.BlazeSilverAgeDeck="Blaze Silver Age Deck",e.BoltynSilverAgeDeck="Boltyn Silver Age Deck",e.BravoSilverAgeDeck="Bravo Silver Age Deck",e.BriarSilverAgeDeck="Briar Silver Age Deck",e.DashSilverAgeDeck="Dash Silver Age Deck",e.DorintheaSilverAgeDeck="Dorinthea Silver Age Deck",e.EnigmaSilverAgeDeck="Enigma Silver Age Deck",e.FaiSilverAgeDeck="Fai Silver Age Deck",e.GravyBonesSilverAgeDeck="Gravy Bones Silver Age Deck",e.IyslanderSilverAgeDeck="Iyslander Silver Age Deck",e.KayoSilverAgeDeck="Kayo Silver Age Deck",e.LyathSilverAgeDeck="Lyath Silver Age Deck",e.ViseraiSilverAgeDeck="Viserai Silver Age Deck",e.PrismSilverAgeDeck="Prism Silver Age Deck",e.ViseraiBetweenWorldsSilverAgeDeck="Viserai Between Worlds Silver Age Deck",e.MasteryPackGuardian="Mastery Pack: Guardian",e.MasteryPackWarrior="Mastery Pack: Warrior",e.MasteryPackAssassin="Mastery Pack: Assassin",e.BravoDemoDeck="Bravo Demo Deck",e.DorintheaDemoDeck="Dorinthea Demo Deck",e.ClassicBattlesRhinarDorinthea="Classic Battles: Rhinar vs Dorinthea",e.IraWelcomeDeck="Ira Welcome Deck",e.RoundTheTable="Round the Table: TCC x LSS",e.SmashPalace="Smash Palace",e.SmashPalaceChorusOfSteel="Smash Palace: Chorus of Steel",e.GEM="GEM",e.Promos="Promos",e.TournamentPack="Tournament Pack",e))(ce||{}),oe=(D=>(D.Alpha="Alpha",D.First="First",D.Unlimited="Unlimited",D.Promo="Promo",D))(oe||{}),de=(d=>(d.Chaos="Chaos",d.Draconic="Draconic",d.Earth="Earth",d.Elemental="Elemental",d.Ice="Ice",d.Light="Light",d.Lightning="Lightning",d.Mystic="Mystic",d.Revered="Revered",d.Reviled="Reviled",d.Royal="Royal",d.Shadow="Shadow",d))(de||{}),ge=(n=>(n.AgentOfChaos="Agent of Chaos",n))(ge||{}),ke=(i=>(i.Arakni="Arakni",i.OmensOfTheThirdAge="Omens of the Third Age",i.Scurv="Scurv",i.HighSeas="High Seas",i.Puffin="Puffin",i.Rosetta="Rosetta",i))(ke||{}),ue=(i=>(i.CardBack="Card back",i.Deck="Deck",i.Extra="Extra",i.Hero="Hero",i.Inventory="Inventory",i.Unknown="Unknown",i))(ue||{}),he=(f=>(f.Action="Action",f.AttackReaction="Attack Reaction",f.Block="Block",f.Companion="Companion",f.DefenseReaction="Defense Reaction",f.DemiHero="Demi-Hero",f.Equipment="Equipment",f.Hero="Hero",f.Instant="Instant",f.Macro="Macro",f.Mentor="Mentor",f.Resource="Resource",f.Token="Token",f.Weapon="Weapon",f))(he||{}),De=(l=>(l.OneHanded="1H",l.TwoHanded="2H",l.Affliction="Affliction",l.Ally="Ally",l.Angel="Angel",l.Arms="Arms",l.Arrow="Arrow",l.Ash="Ash",l.Attack="Attack",l.Aura="Aura",l.Axe="Axe",l.Base="Base",l.Book="Book",l.Bow="Bow",l.Cannon="Cannon",l.Chest="Chest",l.Chi="Chi",l.Claw="Claw",l.Club="Club",l.Construct="Construct",l.Dagger="Dagger",l.Demon="Demon",l.Disease="Disease",l.Dragon="Dragon",l.Evo="Evo",l.Fiddle="Fiddle",l.Figment="Figment",l.Flail="Flail",l.Gem="Gem",l.Gun="Gun",l.Hammer="Hammer",l.Head="Head",l.Invocation="Invocation",l.Item="Item",l.Landmark="Landmark",l.Log="Log",l.Lute="Lute",l.Legs="Legs",l.NonAttack="Non-Attack",l.OffHand="Off-Hand",l.Orb="Orb",l.Pistol="Pistol",l.PitFighter="Pit-Fighter",l.Polearm="Polearm",l.Quiver="Quiver",l.Rock="Rock",l.Shuriken="Shuriken",l.Scepter="Scepter",l.Scroll="Scroll",l.Scythe="Scythe",l.Song="Song",l.Staff="Staff",l.Sword="Sword",l.Trap="Trap",l.Wrench="Wrench",l.Zombie="Zombie",l.Young="Young",l))(De||{}),pe=(r=>(r.Arakni="Arakni",r.Aurora="Aurora",r.Aurora2="Aurora2",r.Azalea="Azalea",r.Baalghor="Baalghor",r.Benji="Benji",r.Betsy="Betsy",r.Blaze="Blaze",r.Bolfar="Bolfar",r.Boltyn="Boltyn",r.Bravo="Bravo",r.Brevant="Brevant",r.Briar="Briar",r.Brutus="Brutus",r.Chane="Chane",r.Cindra="Cindra",r.Crackni="Crackni",r.Crix="Crix",r.Dash="Dash",r.DataDoll="Data Doll",r.Dorinthea="Dorinthea",r.Dromai="Dromai",r.Emperor="Emperor",r.Enigma="Enigma",r.Fai="Fai",r.Fang="Fang",r.Florian="Florian",r.Frankie="Frankie",r.Genis="Genis",r.GravyBones="Gravy Bones",r.Hala="Hala",r.Ira="Ira",r.Iyslander="Iyslander",r.Jarl="Jarl",r.Kano="Kano",r.Kassai="Kassai",r.Katsu="Katsu",r.Kavdaen="Kavdaen",r.Kayo="Kayo",r.Killjoy="Killjoy",r.Kox="Kox",r.Levia="Levia",r.Lexi="Lexi",r.Librarian="Librarian",r.Lyath="Lyath",r.Malice="Malice",r.Marlynn="Marlynn",r.Maxx="Maxx",r.Melody="Melody",r.Mortimer="Mortimer",r.Nuu="Nuu",r.Oldhim="Oldhim",r.Olympia="Olympia",r.Oscilio="Oscilio",r.Broscilio="Broscilio",r.Pleiades="Pleiades",r.Prism="Prism",r.Puffin="Puffin",r.Reya="Reya",r.Rhinar="Rhinar",r.Riptide="Riptide",r.RKO="RKO",r.Ruudi="Ruu'di",r.Shiyana="Shiyana",r.Slippy="Slippy",r.Squizzy="Squizzy",r.Scurv="Scurv",r.Starvo="Starvo",r.Taipanis="Taipanis",r.Taylor="Taylor",r.Teklovossen="Teklovossen",r.Terra="Terra",r.Theryon="Theryon",r.Tuffnut="Tuffnut",r.Uzuri="Uzuri",r.Valda="Valda",r.Verdance="Verdance",r.Victor="Victor",r.Vynnset="Vynnset",r.Viserai="Viserai",r.Viserai2="Viserai2",r.Yorick="Yorick",r.Yoji="Yoji",r.Zane="Zane",r.Zen="Zen",r.Zyggy="Zyggy",r))(pe||{}),fe=(a=>(a.Ambush="Ambush",a.Amp="Amp",a.ArcaneBarrier="Arcane Barrier",a.ArcaneShelter="Arcane Shelter",a.Awaken="Awaken",a.Battleworn="Battleworn",a.BeatChest="Beat Chest",a.Binds="Binds",a.BladeBreak="Blade Break",a.BloodDebt="Blood Debt",a.Boost="Boost",a.Bond="Bond",a.Channel="Channel",a.Charge="Charge",a.Clash="Clash",a.Cloaked="Cloaked",a.Combo="Combo",a.Contract="Contract",a.Crank="Crank",a.TheCrowdBoos="The Crowd Boos",a.TheCrowdCheers="The Crowd Cheers",a.Crush="Crush",a.Cure="Cure",a.Decay="Decay",a.Decompose="Decompose",a.Dominate="Dominate",a.Ephemeral="Ephemeral",a.Essence="Essence",a.EvoUpgrade="Evo Upgrade",a.Flow="Flow",a.Fragment="Fragment",a.Freeze="Freeze",a.Fusion="Fusion",a.Galvanize="Galvanize",a.GoAgain="Go again",a.GoFish="Go Fish",a.Guardwell="Guardwell",a.Heave="Heave",a.Heavy="Heavy",a.HighTide="High Tide",a.Incarnate="Incarnate",a.Intimidate="Intimidate",a.Legendary="Legendary",a.Mark="Mark",a.Material="Material",a.Meld="Meld",a.Modular="Modular",a.Mirage="Mirage",a.Negate="Negate",a.Opt="Opt",a.Overpower="Overpower",a.Pairs="Pairs",a.Piercing="Piercing",a.Phantasm="Phantasm",a.Protect="Protect",a.Quell="Quell",a.Quickstrike="Quickstrike",a.Reload="Reload",a.Reprise="Reprise",a.Retrieve="Retrieve",a.RuneGate="Rune Gate",a.Rupture="Rupture",a.Scrap="Scrap",a.Sharpen="Sharpen",a.Solflare="Solflare",a.Specialization="Specialization",a.Spectra="Spectra",a.Spellvoid="Spellvoid",a.Starfall="Starfall",a.Steal="Steal",a.Stealth="Stealth",a.Surge="Surge",a.Suspense="Suspense",a.Temper="Temper",a.Tower="Tower",a.Transform="Transform",a.Transcend="Transcend",a.Traverse="Traverse",a.Unlimited="Unlimited",a.Universal="Universal",a.Unfreeze="Unfreeze",a.Unique="Unique",a.Unity="Unity",a.Usurp="Usurp",a.Wager="Wager",a.Ward="Ward",a.WateryGrave="Watery Grave",a))(fe||{});var _=(s,n)=>{let{name:g,pitch:c}=s,D=g.trim().toLowerCase().replace("//","-").normalize("NFD").replace(/\p{Diacritic}/gu,"").replace(/ /g,"-").replace("\xF0","d").replace("\u0111","d").replace("\xED","i").replace(/[^a-z0-9 -]/g,"").replace(/--/,"-"),t="";switch(c){case"1":case 1:t=n?"-1":"-red";break;case"2":case 2:t=n?"-2":"-yellow";break;case"3":case 3:t=n?"-3":"-blue";break;case"4":case 4:t=n?"-4":"-purple";break}return`${D}${t}`},Ce=(s,n)=>{let g,c,t=s.split("-").map(i=>["1","2","3","4"].some(y=>y===i)?i.replace("1","red").replace("2","yellow").replace("3","blue").replace("4","purple"):i).join("-");for(let i of n){let{cardIdentifier:u,oppositeSideCardIdentifiers:y}=i;if(u===t){g=i;break}y?.some(T=>`${u}--${T}`===t)&&(c=i)}return g||c},Fe=(s,n,g)=>{let c=_(s,g),D=n?_(n,g):"";return`${c}${D?"--":""}${D}`},Ge=["cracked-bauble-yellow","goldfin-harpoon"],be=["Companion","Demi-Hero","Equipment","Weapon"],Me=["Action","Attack Reaction","Block","Defense Reaction","Instant","Mentor","Resource"],E=({keywords:s,traits:n,types:g})=>{let c=(n||[]).includes("Agent of Chaos"),D=(s||[]).includes("Ephemeral"),t=(s||[]).includes("Incarnate"),i=["Macro","Token"].some(u=>g.includes(u));return c||D||t||i},me=s=>{let n=s.types.includes("Macro");return E(s)&&!n||Ge.includes(s.cardIdentifier)},w=s=>be.some(g=>s.types.includes(g))&&!N(s)&&!E(s),N=s=>Me.some(g=>s.types.includes(g))&&!E(s),xe=s=>{let n=!!s.isCardBack&&s.cardIdentifier!=="inner-chi-blue";return E(s)||me(s)||n},Oe=s=>!s.isCardBack&&(w(s)||N(s)),Ve=s=>{let n="Unknown";return E(s)?n="Extra":s.types.includes("Hero")?n="Hero":w(s)?n="Inventory":N(s)?n="Deck":s.isCardBack&&(n="Card back"),n},We=s=>{let n=s.keywords?.includes("Meld"),c=!s.types?.includes("Macro")&&s.subtypes?.includes("Landmark")||!1;return n||c};var Ae=(i=>(i.English="English",i.French="Fran\xE7ais",i.German="Deutsch",i.Italian="Italiano",i.Japanese="\u65E5\u672C\u8A9E",i.Spanish="Espa\xF1ol",i))(Ae||{}),S=["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],o=["English","Fran\xE7ais","\u65E5\u672C\u8A9E"],Be=(d=>(d.ArmoryDeck="Armory Deck",d.BlitzDeck="Blitz Deck",d.BoxSet="Box Set",d.ClassicBattles="Classic Battles",d.ExpansionBooster="Expansion Booster",d.FirstStrike="1st Strike",d.HistoryPack="History Pack",d.MasteryPack="Mastery Pack",d.RoundTheTable="Round the Table",d.SilverAgeDeck="Silver Age Deck",d.StandaloneBooster="Standalone Booster",d.WelcomeDeck="Welcome Deck",d))(Be||{}),Ne=["Expansion Booster","Standalone Booster"],Ke=s=>Ne.includes(s),Je=s=>s==="History Pack",Ze=s=>s==="Standalone Booster",He=["Armory Deck","Blitz Deck","Classic Battles","1st Strike","Round the Table","Silver Age Deck","Welcome Deck"],Xe=s=>He.includes(s),Qe=[{cards:30,classes:["Ninja"],deckLinks:[{url:"https://fabrary.net/decks/01GJG7Z4WGWSZ95FY74KX4M557"}],heroes:["Ira"],languages:S,release:"Ira Welcome Deck",relatedReleases:[],releaseDate:"2019-08-31 12:00",releaseType:"Welcome Deck",setIdentifiers:["ira"],talents:[]},{cards:226,classes:["Brute","Guardian","Ninja","Warrior"],deckLinks:[],draft:{heroIdentifiers:["bravo","dorinthea","katsu","rhinar"],picksPerPack:15},heroes:["Bravo","Dorinthea","Katsu","Rhinar"],languages:["English"],release:"Welcome to Rathe",relatedReleases:[],releaseDate:"2019-10-11 12:00",releaseType:"Standalone Booster",setIdentifiers:["wtr"],talents:[]},{cards:219,classes:["Mechanologist","Ranger","Runeblade","Wizard"],deckLinks:[],draft:{heroIdentifiers:["azalea","dash","kano","viserai"],picksPerPack:15},heroes:["Azalea","Dash","Kano","Viserai"],languages:["English"],release:"Arcane Rising",relatedReleases:[],releaseDate:"2020-03-27 12:00",releaseType:"Standalone Booster",setIdentifiers:["arc"],talents:[]},{cards:194,classes:["Brute","Guardian","Mechanologist","Merchant","Ninja","Ranger","Runeblade","Warrior","Wizard"],deckLinks:[],heroes:["Benji","Data Doll","Ira","Kassai","Kavdaen","Kayo","Shiyana"],languages:["English"],release:"Crucible of War",relatedReleases:[],releaseDate:"2020-08-28 12:00",releaseType:"Expansion Booster",setIdentifiers:["cru"],talents:[]},{cards:40,classes:["Warrior"],deckLinks:[{url:"https://fabrary.net/decks/01G7FD2B3YQAMR8NJ4B3M58H96"}],heroes:["Boltyn"],languages:["English"],release:"Boltyn Blitz Deck",relatedReleases:[],releaseDate:"2021-05-07 12:00",releaseType:"Blitz Deck",setIdentifiers:["bol"],talents:["Light"]},{cards:40,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01G7FDVRZP35DFWBRK64AG5TKQ"}],heroes:["Chane"],languages:["English"],release:"Chane Blitz Deck",relatedReleases:[],releaseDate:"2021-05-07 12:00",releaseType:"Blitz Deck",setIdentifiers:["chn"],talents:["Shadow"]},{cards:40,classes:["Brute"],languages:["English"],deckLinks:[{url:"https://fabrary.net/decks/01G7B1T1D1M2DAM61K876VJBDK"}],heroes:["Levia"],release:"Levia Blitz Deck",relatedReleases:[],releaseDate:"2021-05-07 12:00",releaseType:"Blitz Deck",setIdentifiers:["lev"],talents:["Shadow"]},{cards:40,classes:["Illusionist"],deckLinks:[{url:"https://fabrary.net/decks/01G7FCP2N7N0MNHWAH6JTP0KFN"}],heroes:["Prism"],languages:["English"],relatedReleases:[],releaseDate:"2021-05-07 12:00",release:"Prism Blitz Deck",releaseType:"Blitz Deck",setIdentifiers:["psm"],talents:["Light"]},{cards:307,classes:["Brute","Illusionist","Runeblade","Warrior"],deckLinks:[],draft:{heroIdentifiers:["boltyn","chane","levia","prism"],picksPerPack:15},heroes:["Boltyn","Chane","Levia","Prism"],languages:["English"],release:"Monarch",relatedReleases:["Boltyn Blitz Deck","Chane Blitz Deck","Levia Blitz Deck","Prism Blitz Deck"],releaseDate:"2021-05-07 12:00",releaseType:"Standalone Booster",setIdentifiers:["mon"],talents:["Light","Shadow"]},{cards:40,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01G7K4D304QQCZZSBT7ABCX4XC"}],heroes:["Briar"],languages:["English"],release:"Briar Blitz Deck",relatedReleases:[],releaseDate:"2021-11-24 12:00",releaseType:"Blitz Deck",talents:["Elemental","Earth","Lightning"],setIdentifiers:["bri"]},{cards:40,classes:["Ranger"],deckLinks:[{url:"https://fabrary.net/decks/01G7K3WGPVKVDXG2J013GXSXNP"}],heroes:["Lexi"],languages:["English"],release:"Lexi Blitz Deck",relatedReleases:[],releaseDate:"2021-11-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["lxi"],talents:["Elemental","Ice","Lightning"]},{cards:40,classes:["Guardian"],deckLinks:[{url:"https://fabrary.net/decks/01G7K464J7VS0K7HKW5E395TBK"}],heroes:["Oldhim"],languages:["English"],release:"Oldhim Blitz Deck",relatedReleases:[],releaseDate:"2021-11-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["old"],talents:["Elemental","Earth","Ice"]},{cards:238,classes:["Guardian","Ranger","Runeblade"],deckLinks:[],draft:{heroIdentifiers:["briar","lexi","oldhim"],picksPerPack:15},heroes:["Briar","Lexi","Oldhim"],languages:["English"],release:"Tales of Aria",relatedReleases:["Briar Blitz Deck","Lexi Blitz Deck","Oldhim Blitz Deck"],releaseDate:"2021-09-24 12:00",releaseType:"Standalone Booster",setIdentifiers:["ele"],talents:["Elemental","Earth","Ice","Lightning"]},{cards:198,classes:["Brute","Guardian","Illusionist","Mechanologist","Merchant","Ninja","Ranger","Runeblade","Warrior","Wizard"],deckLinks:[],heroes:["Genis","Starvo","Valda"],languages:["English"],release:"Everfest",relatedReleases:[],releaseDate:"2022-02-04 12:00",releaseType:"Expansion Booster",setIdentifiers:["evr"],talents:["Elemental","Earth","Ice","Lightning"]},{cards:423,classes:["Brute","Guardian","Mechanologist","Ninja","Ranger","Runeblade","Warrior","Wizard"],deckLinks:[],heroes:["Azalea","Benji","Bravo","Dash","Data Doll","Dorinthea","Ira","Kassai","Katsu","Kayo","Rhinar","Viserai","Kano"],languages:["English"],release:"History Pack 1",relatedReleases:[],releaseDate:"2022-05-06 12:00",releaseType:"History Pack",setIdentifiers:["1hp","hp1"],talents:[]},{cards:80,classes:["Brute","Warrior"],deckLinks:[{name:"Dorinthea",url:"https://fabrary.net/decks/01GA4WTNSD12YTQB4FY8EYYNG5"},{name:"Rhinar",url:"https://fabrary.net/decks/01GA4WZKX9VEWKKPX7Y7H3MG1F"}],heroes:["Dorinthea","Rhinar"],languages:["English"],release:"Classic Battles: Rhinar vs Dorinthea",relatedReleases:[],releaseDate:"2022-05-27 12:00",releaseType:"Classic Battles",setIdentifiers:["dvr","rvd"],talents:[]},{cards:40,classes:["Illusionist"],deckLinks:[{url:"https://fabrary.net/decks/01G76H1R1ERRBRKS7RVCQAB8RX"}],heroes:["Dromai"],languages:["English"],relatedReleases:[],releaseDate:"2022-06-24 12:00",release:"Dromai Blitz Deck",releaseType:"Blitz Deck",setIdentifiers:["dro"],talents:["Draconic"]},{cards:40,classes:["Ninja"],deckLinks:[{url:"https://fabrary.net/decks/01G76H7RG7GN5ZA10F3BJBH740"}],heroes:["Fai"],languages:["English"],release:"Fai Blitz Deck",relatedReleases:[],releaseDate:"2022-06-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["fai"],talents:["Draconic"]},{cards:226,classes:["Illusionist","Ninja","Wizard"],deckLinks:[],draft:{heroIdentifiers:["dromai","fai","iyslander"],picksPerPack:14},heroes:["Dromai","Fai","Iyslander"],languages:["English"],release:"Uprising",relatedReleases:["Dromai Blitz Deck","Fai Blitz Deck"],releaseDate:"2022-06-24 12:00",releaseType:"Standalone Booster",setIdentifiers:["upr"],talents:["Draconic","Elemental","Ice"]},{cards:247,classes:["Assassin","Brute","Guardian","Illusionist","Mechanologist","Ninja","Ranger","Runeblade","Warrior","Wizard"],deckLinks:[],heroes:["Arakni","Emperor","Yoji"],languages:["English"],release:"Dynasty",relatedReleases:[],releaseDate:"2022-11-11 12:00",releaseType:"Expansion Booster",setIdentifiers:["dyn"],talents:["Royal"]},{cards:40,classes:["Assassin"],deckLinks:[{url:"https://fabrary.net/decks/01GW25PNWBW2FPDHRNTPSET0GT"}],heroes:["Arakni"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Arakni Blitz Deck",relatedReleases:[],releaseDate:"2023-03-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["ara"],talents:[]},{cards:40,classes:["Ranger"],deckLinks:[{url:"https://fabrary.net/decks/01GW26RNH1Q1J0S1VFXPN609S2"}],heroes:["Azalea"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Azalea Blitz Deck",relatedReleases:[],releaseDate:"2023-03-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["azl"],talents:[]},{cards:40,classes:["Ninja"],deckLinks:[{url:"https://fabrary.net/decks/01GW28622XSVAK7H9RXZVAVKM0"}],heroes:["Benji"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Benji Blitz Deck",relatedReleases:[],releaseDate:"2023-03-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["ben"],talents:[]},{cards:40,classes:["Ninja"],deckLinks:[{url:"https://fabrary.net/decks/01GW28TF5FXFKJ5CGRNXB84CG6"}],heroes:["Katsu"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Katsu Blitz Deck",relatedReleases:[],releaseDate:"2023-03-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["kat"],talents:[]},{cards:40,classes:["Ranger"],deckLinks:[{url:"https://fabrary.net/decks/01GW29DPNZ3XVBJQHHFQHHHDGN"}],heroes:["Riptide"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Riptide Blitz Deck",relatedReleases:[],releaseDate:"2023-03-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["rip"],talents:[]},{cards:40,classes:["Assassin"],deckLinks:[{url:"https://fabrary.net/decks/01GW2945GHPH2YSX3FTS7HCBT1"}],heroes:["Uzuri"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Uzuri Blitz Deck",relatedReleases:[],releaseDate:"2023-03-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["uzu"],talents:[]},{cards:239,classes:["Assassin","Ranger","Ninja"],deckLinks:[],draft:{heroIdentifiers:["arakni-solitary-confinement","azalea","benji-the-piercing-wind","katsu","riptide","uzuri"],picksPerPack:14},heroes:["Arakni","Azalea","Benji","Katsu","Riptide","Uzuri"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Outsiders",relatedReleases:["Arakni Blitz Deck","Azalea Blitz Deck","Benji Blitz Deck","Katsu Blitz Deck","Riptide Blitz Deck","Uzuri Blitz Deck"],releaseDate:"2023-03-24 12:00",releaseType:"Standalone Booster",setIdentifiers:["out"],talents:[]},{cards:236,classes:["Illusionist","Runeblade","Warrior","Brute"],deckLinks:[],heroes:["Prism","Vynnset","Boltyn","Levia"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Dusk till Dawn",relatedReleases:[],releaseDate:"2023-07-14 12:00",releaseType:"Expansion Booster",setIdentifiers:["dtd"],talents:["Light","Shadow"]},{cards:107,classes:["Mechanologist","Bard","Guardian","Ninja"],deckLinks:[{name:"Brevant",url:"https://fabrary.net/decks/01HAXKPFH7ZHPDEJZH967VNRW6"},{name:"Ira",url:"https://fabrary.net/decks/01HAXKZMTRN4FR7CFTQA11A70N"},{name:"Melody",url:"https://fabrary.net/decks/01HAXKSFPXGCEH99PDZJ32V4N9"},{name:"Teklovossen",url:"https://fabrary.net/decks/01HAXKZMTRN4FR7CFTQA11A70N"}],heroes:["Teklovossen","Melody","Brevant","Ira"],languages:["English"],release:"Round the Table: TCC x LSS",relatedReleases:[],releaseDate:"2023-09-29 12:00",releaseType:"Round the Table",talents:[],setIdentifiers:["tcc"]},{cards:251,classes:["Mechanologist"],deckLinks:[],draft:{heroIdentifiers:["dash-database","maxx-nitro","teklovossen"],picksPerPack:14},heroes:["Dash","Maxx","Teklovossen"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],raritiesExcludedInLimited:["Legendary","Fabled"],release:"Bright Lights",relatedReleases:[],releaseDate:"2023-10-06 12:00",releaseType:"Standalone Booster",setIdentifiers:["evo"],talents:[]},{cards:40,classes:["Guardian"],deckLinks:[{url:"https://fabrary.net/decks/01HN3J1X1NQ9TB9RTVWV42JG46"}],heroes:["Betsy"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Betsy Blitz Deck",relatedReleases:[],releaseDate:"2024-02-02 12:00",releaseType:"Blitz Deck",setIdentifiers:["bet"],talents:[]},{cards:40,classes:["Warrior"],deckLinks:[{url:"https://fabrary.net/decks/01HN3SHBEQBRECYK6ZN1CHRADR"}],heroes:["Kassai"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Kassai Blitz Deck",relatedReleases:[],releaseDate:"2024-02-02 12:00",releaseType:"Blitz Deck",setIdentifiers:["ksi"],talents:[]},{cards:40,classes:["Brute"],deckLinks:[{url:"https://fabrary.net/decks/01HN3HK89NA910SK3FQV84H46Z"}],heroes:["Kayo"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Kayo Blitz Deck",relatedReleases:[],releaseDate:"2024-02-02 12:00",releaseType:"Blitz Deck",setIdentifiers:["kyo"],talents:[]},{cards:40,classes:["Warrior"],deckLinks:[{url:"https://fabrary.net/decks/01HN3GP5ZJ1NRC0XBYNE45XQE8"}],heroes:["Olympia"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Olympia Blitz Deck",relatedReleases:[],releaseDate:"2024-02-02 12:00",releaseType:"Blitz Deck",setIdentifiers:["ola"],talents:[]},{cards:40,classes:["Brute"],deckLinks:[{url:"https://fabrary.net/decks/01HN3Q4GBDMEFSX98HEN9ET308"}],heroes:["Rhinar"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Rhinar Blitz Deck",relatedReleases:[],releaseDate:"2024-02-02 12:00",releaseType:"Blitz Deck",setIdentifiers:["rhi"],talents:[]},{cards:40,classes:["Guardian"],deckLinks:[{url:"https://fabrary.net/decks/01HN3K8ZV7KBRRJKPHW4B13J1K"}],heroes:["Victor"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Victor Blitz Deck",relatedReleases:[],releaseDate:"2024-02-02 12:00",releaseType:"Blitz Deck",setIdentifiers:["vic"],talents:[]},{cards:255,classes:["Brute","Guardian","Warrior"],deckLinks:[],draft:{heroIdentifiers:["kassai","betsy","kayo","olympia","rhinar","victor-goldmane"],picksPerPack:14},heroes:["Kassai","Betsy","Kayo","Olympia","Rhinar","Victor"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],raritiesExcludedInLimited:["Legendary","Fabled"],release:"Heavy Hitters",relatedReleases:["Betsy Blitz Deck","Kassai Blitz Deck","Kayo Blitz Deck","Olympia Blitz Deck","Rhinar Blitz Deck","Victor Blitz Deck"],releaseDate:"2024-02-02 12:00",releaseType:"Standalone Booster",setIdentifiers:["hvy"],talents:[]},{cards:66,classes:["Brute"],deckLinks:[{url:"https://fabrary.net/decks/01HWNCK2BYPVKK6701052YYXMZ"}],heroes:["Kayo"],languages:["English","Fran\xE7ais","Italiano","\u65E5\u672C\u8A9E"],release:"Armory Deck: Kayo",relatedReleases:[],releaseDate:"2024-05-03 12:00",releaseType:"Armory Deck",setIdentifiers:["ako"],talents:[]},{cards:40,classes:["Illusionist"],deckLinks:[{url:"https://fabrary.net/decks/01HX5Z23X2PRQCJ100FP4CAZGK"}],heroes:["Enigma"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Enigma Blitz Deck",relatedReleases:[],releaseDate:"2024-05-31 12:00",releaseType:"Blitz Deck",setIdentifiers:["eng"],talents:["Mystic"]},{cards:40,classes:["Assassin"],deckLinks:[{url:"https://fabrary.net/decks/01HX5Z4BD3TRMS3CP1ME4ZP3T6"}],heroes:["Nuu"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Nuu Blitz Deck",relatedReleases:[],releaseDate:"2024-05-31 12:00",releaseType:"Blitz Deck",setIdentifiers:["nuu"],talents:["Mystic"]},{cards:40,classes:["Ninja"],deckLinks:[{url:"https://fabrary.net/decks/01HX5Z395FD35CM24QCJQKJER1"}],heroes:["Zen"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Zen Blitz Deck",relatedReleases:[],releaseDate:"2024-05-31 12:00",releaseType:"Blitz Deck",setIdentifiers:["zen"],talents:["Mystic"]},{cards:239,classes:["Assassin","Illusionist","Ninja"],deckLinks:[],draft:{heroIdentifiers:["enigma","nuu","zen"],picksPerPack:14},heroes:["Enigma","Nuu","Zen"],languages:S,raritiesExcludedInLimited:["Legendary","Fabled"],release:"Part the Mistveil",relatedReleases:["Enigma Blitz Deck","Nuu Blitz Deck","Zen Blitz Deck"],releaseDate:"2024-05-31 12:00",releaseType:"Standalone Booster",setIdentifiers:["mst"],talents:["Mystic"]},{cards:66,classes:["Warrior"],deckLinks:[{url:"https://fabrary.net/decks/01J202NH0RG8S0V8WXH1FWB2AH"}],heroes:["Boltyn"],languages:["English","Fran\xE7ais","Italiano","\u65E5\u672C\u8A9E"],release:"Armory Deck: Boltyn",relatedReleases:[],releaseDate:"2024-07-12 12:00",releaseType:"Armory Deck",setIdentifiers:["asb"],talents:["Light"]},{cards:40,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01J45SYSM2ZERW6CWY283ZAT1S"}],heroes:["Aurora"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"1st Strike: Aurora",relatedReleases:[],releaseDate:"2024-08-01 12:00",releaseType:"1st Strike",setIdentifiers:["aur"],talents:["Lightning"]},{cards:40,classes:["Guardian"],deckLinks:[{url:"https://fabrary.net/decks/01J45SWXNDV5XD8PTBACAV8NZ1"}],heroes:["Terra"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"1st Strike: Terra",relatedReleases:[],releaseDate:"2024-08-01 12:00",releaseType:"1st Strike",setIdentifiers:["ter"],talents:["Earth"]},{cards:66,classes:["Ranger"],deckLinks:[{url:"https://fabrary.net/decks/01J3GKKSTM773CW7BG3RRJ5FJH"}],heroes:["Azalea"],languages:["English","Fran\xE7ais","Italiano","\u65E5\u672C\u8A9E"],release:"Armory Deck: Azalea",relatedReleases:[],releaseDate:"2024-08-02 12:00",releaseType:"Armory Deck",setIdentifiers:["aaz"],talents:[]},{cards:40,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01J68KF1TFNN62TC0G7M993FTY"}],heroes:["Aurora"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Aurora Blitz Deck",relatedReleases:[],releaseDate:"2024-09-20 12:00",releaseType:"Blitz Deck",setIdentifiers:["aua"],talents:["Lightning"]},{cards:40,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01J68KFRMJFKRQYJJ7THG1GMTB"}],heroes:["Florian"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Florian Blitz Deck",relatedReleases:[],releaseDate:"2024-09-20 12:00",releaseType:"Blitz Deck",setIdentifiers:["flr"],talents:["Earth"]},{cards:40,classes:["Wizard"],deckLinks:[{url:"https://fabrary.net/decks/01J68KGA3JVKFHEXGKYW0441CY"}],heroes:["Oscilio"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Oscilio Blitz Deck",relatedReleases:[],releaseDate:"2024-09-20 12:00",releaseType:"Blitz Deck",setIdentifiers:["osc"],talents:["Lightning"]},{cards:40,classes:["Wizard"],deckLinks:[{url:"https://fabrary.net/decks/01J68KGT3XD3HMVVRFT174QNMF"}],heroes:["Verdance"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Verdance Blitz Deck",relatedReleases:[],releaseDate:"2024-09-20 12:00",releaseType:"Blitz Deck",setIdentifiers:["ver"],talents:["Earth"]},{cards:258,classes:["Runeblade","Wizard"],deckLinks:[],draft:{heroIdentifiers:["aurora","florian","oscilio","verdance"],picksPerPack:14},heroes:["Aurora","Florian","Oscilio","Verdance"],languages:S,raritiesExcludedInLimited:["Legendary","Fabled"],release:"Rosetta",relatedReleases:["Aurora Blitz Deck","Florian Blitz Deck","Oscilio Blitz Deck","Verdance Blitz Deck"],releaseDate:"2024-09-20 12:00",releaseType:"Standalone Booster",setIdentifiers:["ros"],talents:["Elemental","Earth","Lightning"]},{cards:66,classes:["Mechanologist"],deckLinks:[{url:"https://fabrary.net/decks/01J9822H5PANJAFQVMC4TPK4Z1"}],heroes:["Dash"],languages:["English","Fran\xE7ais","Italiano","\u65E5\u672C\u8A9E"],release:"Armory Deck: Dash",relatedReleases:[],releaseDate:"2024-10-18 12:00",releaseType:"Armory Deck",setIdentifiers:["aio"],talents:[]},{cards:30,classes:["Guardian"],deckLinks:[{url:"https://fabrary.net/decks/01JCPPENK52DTRBJZMWQF8S0X2"}],heroes:["Jarl"],languages:["English","Fran\xE7ais","Italiano","\u65E5\u672C\u8A9E"],release:"Armory Deck Origins: Jarl",relatedReleases:[],releaseDate:"2024-11-29 12:00",releaseType:"Armory Deck",setIdentifiers:["ajv"],talents:["Elemental","Earth","Ice"]},{cards:40,classes:["Assassin"],deckLinks:[],heroes:["Arakni"],languages:S,release:"Arakni Hunted Blitz Deck",relatedReleases:[],releaseDate:"2025-01-31 12:00",releaseType:"Blitz Deck",setIdentifiers:["ark"],talents:[]},{cards:40,classes:["Assassin"],deckLinks:[],heroes:["Crackni"],languages:S,release:"Arakni, Web of Deceit Blitz Deck",relatedReleases:[],releaseDate:"2025-01-31 12:00",releaseType:"Blitz Deck",setIdentifiers:["wod"],talents:[]},{cards:40,classes:["Ninja"],deckLinks:[],heroes:["Cindra"],languages:S,release:"Cindra Blitz Deck",relatedReleases:[],releaseDate:"2025-01-31 12:00",releaseType:"Blitz Deck",setIdentifiers:["cin"],talents:["Draconic","Royal"]},{cards:40,classes:["Warrior"],deckLinks:[],heroes:["Fang"],languages:S,release:"Fang Blitz Deck",relatedReleases:[],releaseDate:"2025-01-31 12:00",releaseType:"Blitz Deck",setIdentifiers:["fng"],talents:["Draconic","Royal"]},{cards:265,classes:["Assassin","Ninja","Warrior"],deckLinks:[],draft:{heroIdentifiers:["arakni-web-of-deceit","cindra","fang"],picksPerPack:14},heroes:["Arakni","Cindra","Fang"],heroOverrides:{Arakni:"Crackni"},languages:S,raritiesExcludedInLimited:["Legendary","Fabled"],release:"The Hunted",relatedReleases:["Arakni Hunted Blitz Deck","Arakni, Web of Deceit Blitz Deck","Cindra Blitz Deck","Fang Blitz Deck"],releaseDate:"2025-01-31 12:00",releaseType:"Standalone Booster",setIdentifiers:["hnt"],talents:["Chaos","Draconic","Royal"]},{cards:28,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01JN2DEG4X2V8DVMCWFBWQTTSC"}],heroes:["Aurora"],languages:["English","Fran\xE7ais","\u65E5\u672C\u8A9E"],release:"Armory Deck: Aurora",relatedReleases:[],releaseDate:"2025-03-14 12:00",releaseType:"Armory Deck",setIdentifiers:["ast"],talents:["Elemental","Lightning"]},{cards:28,classes:["Mechanologist"],deckLinks:[{url:"https://fabrary.net/decks/01JRH0631MH5A9JPVGTP3TKJXN"}],heroes:["Maxx"],languages:["English","Fran\xE7ais","\u65E5\u672C\u8A9E"],release:"Armory Deck: Maxx",relatedReleases:[],releaseDate:"2025-04-17 12:00",releaseType:"Armory Deck",setIdentifiers:["amx"],talents:[]},{cards:30,classes:["Necromancer","Pirate"],deckLinks:[{url:"https://fabrary.net/decks/01JVYZ0NCHP49HAP40C23P14E3"}],heroes:["Gravy Bones"],languages:o,release:"Armory Deck: Gravy Bones",relatedReleases:[],releaseDate:"2025-05-30 12:00",releaseType:"Armory Deck",setIdentifiers:["agb"],talents:[]},{cards:265,classes:["Mechanologist","Necromancer","Pirate","Ranger","Thief"],deckLinks:[],draft:{heroIdentifiers:["gravy-bones","marlynn","puffin","scurv-stowaway"],picksPerPack:14},heroes:["Gravy Bones","Marlynn","Puffin","Scurv"],languages:o,raritiesExcludedInLimited:["Fabled","Legendary"],release:"High Seas",relatedReleases:[],releaseDate:"2025-06-06 12:00",releaseType:"Standalone Booster",setIdentifiers:["sea"],talents:[]},{cards:30,classes:["Ninja"],deckLinks:[{url:"https://fabrary.net/decks/01JZ97KZ5TQV8E0FYMAM0XVNX7"}],heroes:["Ira"],languages:o,release:"Armory Deck: Ira",relatedReleases:[],releaseDate:"2025-07-11 12:00",releaseType:"Armory Deck",setIdentifiers:["asr"],talents:[]},{cards:30,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01K0ZQGQYJPH6B90VNT3GJ8C7Q"}],heroes:["Viserai"],languages:o,release:"Armory Deck Legends: Viserai",relatedReleases:[],releaseDate:"2025-07-24 12:00",releaseType:"Armory Deck",setIdentifiers:["avs"],talents:[]},{cards:30,classes:["Illusionist"],deckLinks:[{url:"https://fabrary.net/decks/01K0ZQ8FVR8DQB7YC9N7KAB7N8"}],heroes:["Prism"],languages:o,release:"Armory Deck Legends: Prism",relatedReleases:[],releaseDate:"2025-07-24 12:00",releaseType:"Armory Deck",setIdentifiers:["apr"],talents:["Light"]},{cards:130,classes:["Guardian"],deckLinks:[],heroes:["Valda"],languages:o,release:"Mastery Pack: Guardian",relatedReleases:[],releaseDate:"2025-08-08 12:00",releaseType:"Mastery Pack",setIdentifiers:["mpg"],talents:[]},{cards:30,classes:["Guardian"],deckLinks:[{url:"https://fabrary.net/decks/01K1GBSGB17GT925NVJ0PM0G9Y"}],heroes:["Bravo"],languages:o,release:"Bravo Demo Deck",relatedReleases:[],releaseDate:"2025-08-08 12:00",releaseType:"Welcome Deck",setIdentifiers:["bdd"],talents:[]},{cards:107,classes:["Guardian"],deckLinks:[],heroes:["Bolfar","Bravo","Kox","Crix","Reya","Victor"],languages:["English"],release:"Smash Palace",relatedReleases:[],releaseDate:"2025-09-29 12:00",releaseType:"Box Set",talents:[],setIdentifiers:["smp"]},{cards:276,classes:["Brute","Guardian"],deckLinks:[],draft:{heroIdentifiers:["tuffnut","pleiades","kayo-strong-arm","lyath-goldmane"],picksPerPack:14},heroes:["Kayo","Lyath","Pleiades","Tuffnut"],heroOverrides:{Kayo:"RKO"},languages:o,raritiesExcludedInLimited:["Fabled","Legendary"],release:"Super Slam",relatedReleases:[],releaseDate:"2025-09-26 12:00",releaseType:"Standalone Booster",setIdentifiers:["sup"],talents:["Revered","Reviled"]},{cards:30,classes:["Guardian"],deckLinks:[{url:"https://fabrary.net/decks/01K4XX1ERKXRYW8XHWE9BTAS4W"}],heroes:["Pleiades"],languages:o,release:"Armory Deck: Pleiades",relatedReleases:[],releaseDate:"2025-09-19 12:00",releaseType:"Armory Deck",setIdentifiers:["aps"],talents:["Revered"]},{cards:30,classes:["Brute"],deckLinks:[{url:"https://fabrary.net/decks/01K74RSFG9RTVPVN534DZPJJNQ"}],heroes:["Rhinar"],languages:o,release:"Armory Deck: Rhinar",relatedReleases:[],releaseDate:"2025-11-14 12:00",releaseType:"Armory Deck",setIdentifiers:["arr"],talents:[]},{cards:30,classes:["Assassin"],deckLinks:[{url:"https://fabrary.net/decks/01K74RXDPRPJT9YWGFVAPHECDF"}],heroes:["Slippy"],languages:o,release:"Armory Deck: Arakni",relatedReleases:[],releaseDate:"2025-12-15 12:00",releaseType:"Armory Deck",setIdentifiers:["aac"],talents:["Chaos"]},{cards:348,classes:["Assassin","Brute","Generic","Guardian","Illusionist","Mechanologist","Necromancer","Ninja","Pirate","Ranger","Runeblade","Thief","Warrior","Wizard"],deckLinks:[],heroes:[],languages:o,release:"Compendium of Rathe",relatedReleases:[],releaseDate:"2026-02-13 12:00",releaseType:"Expansion Booster",setIdentifiers:["pen"],talents:["Chaos","Draconic","Earth","Elemental","Ice","Light","Lightning","Mystic","Revered","Reviled","Shadow"]},{cards:40,classes:["Assassin"],deckLinks:[{url:"https://fabrary.net/decks/01KFWFQYASKA6C1FGXXB0E8EGE"}],heroes:["Arakni"],languages:o,release:"Arakni Silver Age Deck",relatedReleases:[],releaseDate:"2026-02-13 12:00",releaseType:"Silver Age Deck",setIdentifiers:["sar"],talents:["Chaos"]},{cards:40,classes:["Ranger"],deckLinks:[{url:"https://fabrary.net/decks/01KFWFSGRBJS7BK87T8YF24FYC"}],heroes:["Azalea"],languages:o,release:"Azalea Silver Age Deck",relatedReleases:[],releaseDate:"2026-02-13 12:00",releaseType:"Silver Age Deck",setIdentifiers:["saz"],talents:[]},{cards:40,classes:["Guardian"],deckLinks:[{url:"https://fabrary.net/decks/01KFWFTPVMBMZ9TT5GVT5QRRRM"}],heroes:["Bravo"],languages:o,release:"Bravo Silver Age Deck",relatedReleases:[],releaseDate:"2026-02-13 12:00",releaseType:"Silver Age Deck",setIdentifiers:["sbr"],talents:[]},{cards:40,classes:["Mechanologist"],deckLinks:[{url:"https://fabrary.net/decks/01KFWFW6EAT7VX44MKN8GCVQSM"}],heroes:["Dash"],languages:o,release:"Dash Silver Age Deck",relatedReleases:[],releaseDate:"2026-02-13 12:00",releaseType:"Silver Age Deck",setIdentifiers:["sda"],talents:[]},{cards:40,classes:["Warrior"],deckLinks:[{url:"https://fabrary.net/decks/01KFWFXK3QM2XEVA08D5Y1R3CF"}],heroes:["Dorinthea"],languages:o,release:"Dorinthea Silver Age Deck",relatedReleases:[],releaseDate:"2026-02-13 12:00",releaseType:"Silver Age Deck",setIdentifiers:["sdo"],talents:[]},{cards:40,classes:["Illusionist"],deckLinks:[{url:"https://fabrary.net/decks/01KFWFYETE5DC1GK586XYXXFE6"}],heroes:["Enigma"],languages:o,release:"Enigma Silver Age Deck",relatedReleases:[],releaseDate:"2026-02-13 12:00",releaseType:"Silver Age Deck",setIdentifiers:["sen"],talents:["Mystic"]},{cards:40,classes:["Ninja"],deckLinks:[{url:"https://fabrary.net/decks/01KFWD89C2CQFA1TA331EJ1Q2K"}],heroes:["Fai"],languages:o,release:"Fai Silver Age Deck",relatedReleases:[],releaseDate:"2026-02-13 12:00",releaseType:"Silver Age Deck",setIdentifiers:["sfa"],talents:["Draconic"]},{cards:40,classes:["Wizard"],deckLinks:[{url:"https://fabrary.net/decks/01KFWD9YWCRZ825T3AK8ZTG0G4"}],heroes:["Iyslander"],languages:o,release:"Iyslander Silver Age Deck",relatedReleases:[],releaseDate:"2026-02-13 12:00",releaseType:"Silver Age Deck",setIdentifiers:["siy"],talents:["Elemental","Ice"]},{cards:40,classes:["Brute"],deckLinks:[{url:"https://fabrary.net/decks/01KFWFZ9Z5W17F0NHKQ44811Q0"}],heroes:["Kayo"],languages:o,release:"Kayo Silver Age Deck",relatedReleases:[],releaseDate:"2026-02-13 12:00",releaseType:"Silver Age Deck",setIdentifiers:["ska"],talents:[]},{cards:40,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01KFWG05XQJT0NRVNGBZ4EJSSP"}],heroes:["Viserai"],languages:o,release:"Viserai Silver Age Deck",relatedReleases:[],releaseDate:"2026-02-13 12:00",releaseType:"Silver Age Deck",setIdentifiers:["svi"],talents:[]},{cards:27,classes:["Warrior"],deckLinks:[{url:"https://fabrary.net/decks/01KNHHE1MY39BC4PXYXMTJVT1M"}],heroes:["Hala"],languages:o,release:"Armory Deck Origins: Hala",relatedReleases:[],releaseDate:"2026-04-17 12:00",releaseType:"Armory Deck",setIdentifiers:["aha"],talents:[]},{cards:251,classes:["Illusionist","Runeblade","Wizard"],deckLinks:[],draft:{heroIdentifiers:["aurora-emissary-of-lightning","oscilio-scion-of-the-third-age","zyggy"],picksPerPack:14},heroes:["Aurora2","Broscilio","Zyggy"],heroOverrides:{Aurora2:"Aurora",Broscilio:"Oscilio"},languages:o,raritiesExcludedInLimited:["Legendary","Fabled"],release:"Omens of the Third Age",relatedReleases:[],releaseDate:"2026-06-05 12:00",releaseType:"Standalone Booster",setIdentifiers:["omn"],talents:["Lightning"]},{cards:40,classes:["Illusionist"],deckLinks:[{url:"https://fabrary.net/decks/01KREWW7RJS0GZ2PCCD4BM47QY"}],heroes:["Zyggy"],languages:o,release:"Armory Deck: Zyggy",relatedReleases:[],releaseDate:"2026-06-05 12:00",releaseType:"Armory Deck",setIdentifiers:["azs"],talents:["Lightning"]},{cards:40,classes:["Wizard"],deckLinks:[{url:"https://fabrary.net/decks/01KP7ZQMB111K73XT88YV5YN7C"}],heroes:["Blaze"],languages:o,release:"Blaze Silver Age Deck",relatedReleases:[],releaseDate:"2026-06-05 12:00",releaseType:"Silver Age Deck",setIdentifiers:["sbz"],talents:[]},{cards:40,classes:["Warrior"],deckLinks:[{url:"https://fabrary.net/decks/01KP7ZQ311EMGC2S97KC79AEX0"}],heroes:["Boltyn"],languages:o,release:"Boltyn Silver Age Deck",relatedReleases:[],releaseDate:"2026-06-05 12:00",releaseType:"Silver Age Deck",setIdentifiers:["sbl"],talents:["Light"]},{cards:40,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01KP7ZP4HXQTBZ2G37PMJ9W20N"}],heroes:["Briar"],languages:o,release:"Briar Silver Age Deck",relatedReleases:[],releaseDate:"2026-06-05 12:00",releaseType:"Silver Age Deck",setIdentifiers:["sba"],talents:["Elemental","Earth","Lightning"]},{cards:40,classes:["Pirate","Necromancer"],deckLinks:[{url:"https://fabrary.net/decks/01KP7ZNJYM2QVMNRS4DQKFZHQ4"}],heroes:["Gravy Bones"],languages:o,release:"Gravy Bones Silver Age Deck",relatedReleases:[],releaseDate:"2026-06-05 12:00",releaseType:"Silver Age Deck",setIdentifiers:["sgb"],talents:[]},{cards:40,classes:["Guardian"],deckLinks:[{url:"https://fabrary.net/decks/01KP7ZMZGHMACW17CRP12E7R45"}],heroes:["Lyath"],languages:o,release:"Lyath Silver Age Deck",relatedReleases:[],releaseDate:"2026-06-05 12:00",releaseType:"Silver Age Deck",setIdentifiers:["sly"],talents:["Reviled"]},{cards:156,classes:["Warrior"],deckLinks:[],heroes:["Dorinthea","Hala","Olympia"],languages:o,release:"Mastery Pack: Warrior",relatedReleases:[],releaseDate:"2026-08-07 12:00",releaseType:"Mastery Pack",setIdentifiers:["mpw"],talents:[]},{cards:30,classes:["Warrior"],deckLinks:[{url:"https://fabrary.net/decks/01KP7ZJNFZZD8YNGP438FT8SFG"}],heroes:["Olympia"],languages:o,release:"Armory Deck: Olympia",relatedReleases:[],releaseDate:"2026-08-07 12:00",releaseType:"Armory Deck",setIdentifiers:["aol"],talents:[]},{cards:30,classes:["Warrior"],deckLinks:[{url:"https://fabrary.net/decks/01KP7ZHK1HMQCVMFH6W62FTVZ2"}],heroes:["Dorinthea"],languages:o,release:"Dorinthea Demo Deck",relatedReleases:[],releaseDate:"2026-08-07 12:00",releaseType:"Welcome Deck",setIdentifiers:["ddd"],talents:[]},{cards:40,classes:["Illusionist"],deckLinks:[{url:"https://fabrary.net/decks/01KYX5AKV8MSXP5310XSYF15DJ"}],heroes:["Prism"],languages:o,release:"Prism Silver Age Deck",relatedReleases:[],releaseDate:"2026-09-18 12:00",releaseType:"Silver Age Deck",setIdentifiers:["sat"],talents:["Light"]},{cards:40,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01M1WWKBXCEF7RGFG9MM4PYRKB"}],heroes:["Viserai2"],languages:o,release:"Viserai Between Worlds Silver Age Deck",relatedReleases:[],releaseDate:"2026-09-18 12:00",releaseType:"Silver Age Deck",setIdentifiers:["sbw"],talents:["Shadow"]},{cards:263,classes:["Brute","Necromancer","Runeblade"],deckLinks:[],draft:{heroIdentifiers:["levia","malice","viserai-between-worlds"],picksPerPack:14},heroes:["Baalghor","Levia","Malice","Viserai2"],heroOverrides:{Viserai2:"Viserai"},languages:o,raritiesExcludedInLimited:["Legendary","Fabled"],release:"Usurp the Shadow Throne",relatedReleases:[],releaseDate:"2026-09-25 12:00",releaseType:"Standalone Booster",setIdentifiers:["iar"],talents:["Shadow"]},{cards:30,classes:["Necromancer"],deckLinks:[{url:"https://fabrary.net/decks/01KXQF1YZHCHP2KAMDBS5WC5Q9"}],heroes:["Malice"],languages:o,release:"Armory Deck: Malice",relatedReleases:[],releaseDate:"2026-09-25 12:00",releaseType:"Armory Deck",setIdentifiers:["ama"],talents:["Shadow"]},{cards:107,classes:["Warrior"],deckLinks:[],heroes:["Killjoy","Zane"],languages:["English"],release:"Smash Palace: Chorus of Steel",relatedReleases:[],releaseDate:"2026-10-30 12:00",releaseType:"Box Set",talents:[],setIdentifiers:["spw"]},{cards:156,classes:["Assassin"],deckLinks:[],heroes:["Arakni","Mortimer","Uzuri"],languages:o,release:"Mastery Pack: Assassin",relatedReleases:[],releaseDate:"2026-11-13 12:00",releaseType:"Mastery Pack",setIdentifiers:["mpa"],talents:[]},{cards:30,classes:["Assassin"],deckLinks:[],heroes:["Mortimer"],languages:o,release:"Armory Deck: Dr. Mortimer",relatedReleases:[],releaseDate:"2026-11-13 12:00",releaseType:"Armory Deck",setIdentifiers:["amo"],talents:[]}],W=new Map(Object.entries({wtr:"Welcome to Rathe",arc:"Arcane Rising",cru:"Crucible of War",mon:"Monarch",ele:"Tales of Aria",evr:"Everfest","1hp":"History Pack 1",hp1:"History Pack 1",upr:"Uprising",dyn:"Dynasty",out:"Outsiders",dtd:"Dusk till Dawn",evo:"Bright Lights",hvy:"Heavy Hitters",mst:"Part the Mistveil",ros:"Rosetta",hnt:"The Hunted",sea:"High Seas",mpg:"Mastery Pack: Guardian",sup:"Super Slam",pen:"Compendium of Rathe",omn:"Omens of the Third Age",mpw:"Mastery Pack: Warrior",iar:"Usurp the Shadow Throne",mpa:"Mastery Pack: Assassin"})),ye=new Map([...W,...Object.entries({aac:"Armory Deck: Arakni",aaz:"Armory Deck: Azalea",asb:"Armory Deck: Boltyn",aio:"Armory Deck: Dash",ako:"Armory Deck: Kayo",ajv:"Armory Deck Origins: Jarl",ast:"Armory Deck: Aurora",amx:"Armory Deck: Maxx",agb:"Armory Deck: Gravy Bones",asr:"Armory Deck: Ira",aps:"Armory Deck: Pleiades",apr:"Armory Deck Legends: Prism",arr:"Armory Deck: Rhinar",avs:"Armory Deck Legends: Viserai",aha:"Armory Deck Origins: Hala",azs:"Armory Deck: Zyggy",aol:"Armory Deck: Olympia",ama:"Armory Deck: Malice",amo:"Armory Deck: Dr. Mortimer",ara:"Arakni Blitz Deck",ark:"Arakni Hunted Blitz Deck",aua:"Aurora Blitz Deck",azl:"Azalea Blitz Deck",ben:"Benji Blitz Deck",bet:"Betsy Blitz Deck",bol:"Boltyn Blitz Deck",bri:"Briar Blitz Deck",chn:"Chane Blitz Deck",cin:"Cindra Blitz Deck",dro:"Dromai Blitz Deck",eng:"Enigma Blitz Deck",fai:"Fai Blitz Deck",fng:"Fang Blitz Deck",flr:"Florian Blitz Deck",kat:"Katsu Blitz Deck",ksi:"Kassai Blitz Deck",kyo:"Kayo Blitz Deck",lev:"Levia Blitz Deck",lxi:"Lexi Blitz Deck",nuu:"Nuu Blitz Deck",old:"Oldhim Blitz Deck",ola:"Olympia Blitz Deck",osc:"Oscilio Blitz Deck",psm:"Prism Blitz Deck",rip:"Riptide Blitz Deck",rhi:"Rhinar Blitz Deck",uzu:"Uzuri Blitz Deck",ver:"Verdance Blitz Deck",vic:"Victor Blitz Deck",zen:"Zen Blitz Deck",wod:"Arakni, Web of Deceit Blitz Deck",aur:"1st Strike: Aurora",ter:"1st Strike: Terra",sar:"Arakni Silver Age Deck",sat:"Prism Silver Age Deck",saz:"Azalea Silver Age Deck",sba:"Briar Silver Age Deck",sbl:"Boltyn Silver Age Deck",sbr:"Bravo Silver Age Deck",sbz:"Blaze Silver Age Deck",sbw:"Viserai Between Worlds Silver Age Deck",sda:"Dash Silver Age Deck",sdo:"Dorinthea Silver Age Deck",sen:"Enigma Silver Age Deck",sfa:"Fai Silver Age Deck",sgb:"Gravy Bones Silver Age Deck",siy:"Iyslander Silver Age Deck",ska:"Kayo Silver Age Deck",sly:"Lyath Silver Age Deck",svi:"Viserai Silver Age Deck",bdd:"Bravo Demo Deck",ddd:"Dorinthea Demo Deck",dvr:"Classic Battles: Rhinar vs Dorinthea",rvd:"Classic Battles: Rhinar vs Dorinthea",ira:"Ira Welcome Deck",tcc:"Round the Table: TCC x LSS",smp:"Smash Palace",spw:"Smash Palace: Chorus of Steel",bvo:"Bravo Hero Deck",tea:"Dorinthea Hero Deck",ksu:"Katsu Hero Deck",rnr:"Rhinar Hero Deck",gem:"GEM",tnp:"Tournament Pack",anq:"Promos",con:"Promos",fab:"Promos",her:"Promos",jdg:"Promos",lgs:"Promos",lss:"Promos",oxo:"Promos",xxx:"Promos",win:"Promos"})]),Ye=()=>{let s=new Map;for(let[n,g]of ye){let c=s.get(g);c?c.push(n):s.set(g,[n])}return s},je=Ye(),Ue=[{chapter:1,name:"Silver Age Chapter 1",relatedReleases:["Bravo Silver Age Deck","Dash Silver Age Deck","Kayo Silver Age Deck","Iyslander Silver Age Deck","Viserai Silver Age Deck"],releaseDate:"2026-02-13 12:00"},{chapter:2,name:"Silver Age Chapter 2",relatedReleases:["Arakni Silver Age Deck","Azalea Silver Age Deck","Dorinthea Silver Age Deck","Enigma Silver Age Deck","Fai Silver Age Deck"],releaseDate:"2026-02-13 12:00"},{chapter:3,name:"Silver Age Chapter 3",relatedReleases:["Blaze Silver Age Deck","Boltyn Silver Age Deck","Briar Silver Age Deck","Gravy Bones Silver Age Deck","Lyath Silver Age Deck"],releaseDate:"2026-06-05 12:00"}];var _e={},we={"FAB470-RFB":"-V2","FAB470-RFC":"-V3","KO_FAB506-MVB":"-V2","KO_FAB506-MVC":"-V3","OMN203-MVB":"-V2","OMN203-MVC":"-V3","MPG112-A":"-V2","MPG112-B":"-V3",MPG112_V2:"-V2",MPG112_V3:"-V3","MST158-B":"-V3",MST158_V3:"-V3","ROS162-B":"-V2",ROS162_V2:"-V2","ROS008-MV_V2_BACK":"-V3","ROS008-MVA_BACK":"-V3",SUP009_V3:"-V3",SUP009_V3_BACK:"-V3","HER146-ARF":"-ARF"},$e=s=>{let n=_e[s.set]||"",g=`${s.identifier}${n}`,c=s.edition?`-${s.edition}`:"",D=s.foiling?`-${s.foiling}`:"",t=s.treatments?.length?`-${s.treatments.sort().join("-")}`:s.treatment?`-${s.treatment}`:"",i=s.image?.toLowerCase().includes("back")?"-Back":"",u=we[s.image?.toUpperCase()||""]||"";return`${g}${c}${D}${t}${i}${u}`},qe=[...W.keys()].filter(s=>!s.toLowerCase().includes("hp")).reverse().map(s=>s.toUpperCase()),ea={"adaptive-plating":{print:"EVO013-Cold"},"command-and-conquer-red":{print:"ANQ009-Rainbow-Alternate Art-Alternate Border-Extended Art"},"cracked-bauble-yellow":{print:"LGS083-Cold"},"dash-io":{print:"HER089-Cold"},"fate-foreseen-red":{print:"FAB024-Rainbow"},"florian-rotwood-harbinger":{print:"ROS001-Cold-Full Art-Back"},"pleiades-superstar":{print:"SUP009-Cold-Full Art"},"pitfall-trap-yellow":{print:"LGS151-Rainbow"},"prism-sculptor-of-arc-light":{print:"HER069-Cold-Full Art-Back"},quicken:{print:"EVO250"},"ravenous-rabble-red":{print:"FAB190-Rainbow-Extended Art"},"rockslide-trap-blue":{print:"LGS152-Rainbow"},"rosetta-thorn":{print:"ROS256-Cold"},"sigil-of-solace-red":{print:"FAB178-Rainbow-Alternate Art-Extended Art"},"spectral-shield":{print:"MST158-Alternate Art-V3"},"tripwire-trap-red":{print:"LGS150-Rainbow"},"viserai-rune-blood":{print:"HER011-Cold"},"wreck-havoc-red":{print:"OUT198"}},Le=["FAB024-Rainbow-Alternate Art","FAB331-Rainbow-Alternate Art-Extended Art","FAB443-Rainbow-Alternate Art-Extended Art","HER161-Rainbow-Alternate Art-Full Art","JDG044-Full Art-Back"],aa=["JA_","KO_"],ra=(s,n)=>{let{cardIdentifier:g}=s,c=Object.entries(ea).find(([t])=>t===g);if(!!c&&n.some(t=>{let[,{print:i}]=c;return t.print===i})){let[,{print:t}]=c;return n.find(u=>u.print===t)||n[0]}else{let t,i,u,y,p,A,T,d,P,f,z,C,F,K,h,G,b,M,x,O,V;for(let m of n){let{edition:k,foiling:L,identifier:v,image:Z,print:H,treatments:R}=m,B=Z?.toUpperCase()||"",I=v.toLowerCase().includes("win"),X=!!B,Q=L==="Gold",Y=B.includes("HP"),j=Le.includes(H)||aa.some(Re=>B.startsWith(Re));if(X&&!I&&!Y&&!j&&!Q){if(t||(t=m),R?.includes("Full Art")){if(z=m,L==="Cold"&&(A=m,B.includes("_V3"))){T=m;break}B.includes("BACK")?P=m:f=m}R?.includes("Extended Art")&&(d=m,L==="Cold"&&(p=m),L||(C=m),k==="Promo"&&(F=m)),R?.includes("Alternate Art")&&(i=m),R?.includes("Alternate Border")&&(u=m),R?.includes("Alternate Text")&&(y=m),(B.includes("_V2")||B.includes("-MV"))&&R?.includes("Full Art")&&(h=m),k==="Alpha"?G=m:k==="First"?b=m:k==="Promo"?M=m:k==="Unlimited"&&(x=m),L==="Cold"&&(O=m,k==="Promo"&&(V=m))}}return K||T||f||P||A||z||p||h||F||C||d||u||i||y||V||G||b||M||x||O||t}},sa={"command-and-conquer-red":{print:"HNT260"},"fyendals-spring-tunic":{print:"EVO249"},might:{print:"TER028"},"pitfall-trap-yellow":{print:"LGS151-Rainbow"},"portside-exchange-blue":{print:"SEA145"},"rockslide-trap-blue":{print:"LGS152-Rainbow"},"rosetta-thorn":{print:"ELE222-First"},"spectral-shield":{print:"MST158"},"tripwire-trap-red":{print:"LGS150-Rainbow"},vigor:{print:"HVY242"},"wreck-havoc-red":{print:"OUT198"}},na=(s,n)=>{let{cardIdentifier:g}=s,c=Object.entries(sa).find(([t])=>t===g);if(!!c&&n.some(t=>{let[,{print:i}]=c;return t.print===i})){let[,{print:t}]=c;return n.find(u=>u.print===t)||n[0]}else{let t,i;for(let u of n){let{edition:y,image:p,treatment:A}=u,T=!!p,d=p?.includes("HP"),P=p?.includes("BACK"),f=(p||"").length>10||p?.includes("width");if(T&&!d&&!P&&!f&&(t||(t=u),!i&&y!=="Promo"&&A!=="Full Art"&&(i=u)),t&&i)break}return i||t||n[0]}},ia={},ta=(s,n)=>{let{cardIdentifier:g}=s,c=Object.entries(ia).find(([t])=>t===g);if(!!c&&n.some(t=>{let[,{print:i}]=c;return t.print===i})){let[,{print:t}]=c;return n.find(u=>u.print===t)||n[0]}else{let t=n.length>0?n[0]:void 0;for(let i of W.values()){let u=n.find(y=>y.set===i);if(u){t=u;break}}return t}},la={},ca=(s,n)=>{let{cardIdentifier:g}=s,c=Object.entries(la).find(([t])=>t===g);if(!!c&&n.some(t=>{let[,{print:i}]=c;return t.print===i})){let[,{print:t}]=c;return n.find(u=>u.print===t)||n[0]}else{let t,i,u,y,p,A,T,d,P,f,z,C,F,K,h,G,b,M,x,O,V,J;for(let k of n){let{edition:L,foiling:v,identifier:Z,image:H,print:R,treatments:B}=k,I=H?.toUpperCase()||"",X=Z.toLowerCase().includes("win"),Q=!!I,Y=I.includes("HP"),j=Le.includes(R);if(Q&&!X&&!Y&&!j){if(t||(t=k),B?.includes("Full Art")){if(z=k,v==="Cold"&&(A=k,I.includes("_V3"))){T=k;break}I.includes("BACK")?P=k:f=k}B?.includes("Extended Art")&&(d=k,v==="Cold"&&(p=k),v||(C=k),L==="Promo"&&(F=k)),B?.includes("Alternate Art")&&(i=k),B?.includes("Alternate Border")&&(u=k),B?.includes("Alternate Text")&&(y=k),(I.includes("_V2")||I.includes("-MV"))&&B?.includes("Full Art")&&(h=k),L==="Alpha"?G=k:L==="First"?b=k:L==="Promo"?M=k:L==="Unlimited"&&(x=k),v==="Cold"?(O=k,L==="Promo"&&(J=k)):v==="Gold"&&(V=k)}}return V||(K||T||f||P||A||z)||p||h||J||F||O||C||d||u||i||y||G||M||b||x||t}};0&&(module.exports={Bond,CardRole,Class,Flow,Foiling,Format,Fusion,Hero,Keyword,Language,Meta,Metatype,Rarity,Release,ReleaseEdition,ReleaseType,Shorthand,Subtype,Talent,Trait,Treatment,Type,fullSetIdentifiers,getBoomerPrinting,getCanAddToDeck,getCanBeCreated,getCanBeExtra,getCardFromGEMCardIdentifier,getCardIdentifier,getCardRole,getDefaultPrinting,getFrontAndBackCardIdentifier,getIsArenaCard,getIsBooster,getIsDeckCard,getIsDraftable,getIsExtra,getIsPreconstructed,getIsReprint,getMaxRarityPrinting,getPrint,getShouldRotateCardImage,getSpecialPrinting,orderedFullSetBlackBorderIdentifiers,releases,setIdentifierToSetMappings,setToSetIdentifierMappings,silverAgeChapters});
1
+ "use strict";var j=Object.defineProperty;var Re=Object.getOwnPropertyDescriptor;var Ie=Object.getOwnPropertyNames;var Se=Object.prototype.hasOwnProperty;var Pe=(s,n)=>{for(var d in n)j(s,d,{get:n[d],enumerable:!0})},ve=(s,n,d,c)=>{if(n&&typeof n=="object"||typeof n=="function")for(let D of Ie(n))!Se.call(s,D)&&D!==d&&j(s,D,{get:()=>n[D],enumerable:!(c=Re(n,D))||c.enumerable});return s};var ze=s=>ve(j({},"__esModule",{value:!0}),s);var da={};Pe(da,{Bond:()=>ae,CardRole:()=>ke,Class:()=>ee,Flow:()=>re,Foiling:()=>w,Format:()=>se,Fusion:()=>ne,Hero:()=>De,Keyword:()=>pe,Language:()=>me,Meta:()=>te,Metatype:()=>ge,Rarity:()=>ie,Release:()=>le,ReleaseEdition:()=>ce,ReleaseType:()=>Ae,Shorthand:()=>$,Subtype:()=>he,Talent:()=>oe,Trait:()=>de,Treatment:()=>q,Type:()=>ue,fullSetIdentifiers:()=>O,getBoomerPrinting:()=>la,getCanAddToDeck:()=>xe,getCanBeCreated:()=>fe,getCanBeExtra:()=>Me,getCardFromGEMCardIdentifier:()=>Ee,getCardIdentifier:()=>U,getCardRole:()=>We,getDefaultPrinting:()=>ia,getFrontAndBackCardIdentifier:()=>Ce,getIsArenaCard:()=>_,getIsBooster:()=>Ve,getIsDeckCard:()=>N,getIsDraftable:()=>Ke,getIsExtra:()=>E,getIsPreconstructed:()=>He,getIsReprint:()=>Je,getMaxRarityPrinting:()=>oa,getPrint:()=>qe,getShouldRotateCardImage:()=>Oe,getSpecialPrinting:()=>sa,orderedFullSetBlackBorderIdentifiers:()=>ea,releases:()=>Xe,setIdentifierToSetMappings:()=>ye,setToSetIdentifierMappings:()=>Ye,silverAgeChapters:()=>je});module.exports=ze(da);var w=(c=>(c.Cold="Cold",c.Gold="Gold",c.Rainbow="Rainbow",c))(w||{}),$=(i=>(i.Buffs="Buffs",i.Flick="Flick",i.Poppers="Poppers",i.Sin="Sin",i.Tap="Tap",i.Untap="Untap",i))($||{}),q=(t=>(t.AB="Alternate Border",t.AA="Alternate Art",t.AT="Alternate Text",t.EA="Extended Art",t.FA="Full Art",t))(q||{}),ee=(h=>(h.NotClassed="NotClassed",h.Generic="Generic",h.Adjudicator="Adjudicator",h.Assassin="Assassin",h.Bard="Bard",h.Brute="Brute",h.Guardian="Guardian",h.Illusionist="Illusionist",h.Mechanologist="Mechanologist",h.Merchant="Merchant",h.Necromancer="Necromancer",h.Ninja="Ninja",h.Pirate="Pirate",h.Ranger="Ranger",h.Runeblade="Runeblade",h.Shapeshifter="Shapeshifter",h.Thief="Thief",h.Warrior="Warrior",h.Wizard="Wizard",h))(ee||{}),ae=(n=>(n.Earth="Earth",n))(ae||{}),re=(n=>(n.Lightning="Lightning",n))(re||{}),se=(p=>(p.Blitz="Blitz",p.ClassicConstructed="Classic Constructed",p.Draft="Draft",p.GoldenAge="Golden Age",p.LivingLegend="Living Legend",p.Open="Open",p.Sealed="Sealed",p.SilverAge="Silver Age",p.UltimatePitFight="Ultimate Pit Fight",p))(se||{}),ne=(c=>(c.Earth="Earth",c.Ice="Ice",c.Lightning="Lightning",c))(ne||{}),ie=(A=>(A.Basic="Basic",A.Token="Token",A.Common="Common",A.Rare="Rare",A.SuperRare="Super Rare",A.Majestic="Majestic",A.Marvel="Marvel",A.Legendary="Legendary",A.Fabled="Fabled",A.Promo="Promo",A))(ie||{}),te=(i=>(i.Arena="Arena",i.Deck="Deck",i.DualClass="Dual class",i.Expansion="Expansion slot",i.Rainbow="Rainbow",i.Reprint="Reprint",i))(te||{}),le=(e=>(e.ArcaneRising="Arcane Rising",e.BrightLights="Bright Lights",e.CompendiumOfRathe="Compendium of Rathe",e.CrucibleOfWar="Crucible of War",e.DuskTillDawn="Dusk till Dawn",e.Dynasty="Dynasty",e.Everfest="Everfest",e.HeavyHitters="Heavy Hitters",e.HighSeas="High Seas",e.HistoryPack1="History Pack 1",e.Monarch="Monarch",e.OmensOfTheThirdAge="Omens of the Third Age",e.Outsiders="Outsiders",e.PartTheMistveil="Part the Mistveil",e.Rosetta="Rosetta",e.SuperSlam="Super Slam",e.TalesOfAria="Tales of Aria",e.TheHunted="The Hunted",e.Uprising="Uprising",e.UsurpTheShadowThrone="Usurp the Shadow Throne",e.WelcomeToRathe="Welcome to Rathe",e.ArmoryDeckArakni="Armory Deck: Arakni",e.ArmoryDeckAurora="Armory Deck: Aurora",e.ArmoryDeckAzalea="Armory Deck: Azalea",e.ArmoryDeckBoltyn="Armory Deck: Boltyn",e.ArmoryDeckDash="Armory Deck: Dash",e.ArmoryDeckGravyBones="Armory Deck: Gravy Bones",e.ArmoryDeckIra="Armory Deck: Ira",e.ArmoryDeckKayo="Armory Deck: Kayo",e.ArmoryDeckMalice="Armory Deck: Malice",e.ArmoryDeckMaxx="Armory Deck: Maxx",e.ArmoryDeckOlympia="Armory Deck: Olympia",e.ArmoryDeckPleiades="Armory Deck: Pleiades",e.ArmoryDeckRhinar="Armory Deck: Rhinar",e.ArmoryDeckZyggy="Armory Deck: Zyggy",e.ArmoryDeckDrMortimer="Armory Deck: Dr. Mortimer",e.ArmoryDeckOriginsHala="Armory Deck Origins: Hala",e.ArmoryDeckOriginsJarl="Armory Deck Origins: Jarl",e.ArmoryDeckLegendsPrism="Armory Deck Legends: Prism",e.ArmoryDeckLegendsViserai="Armory Deck Legends: Viserai",e.ArakniBlitzDeck="Arakni Blitz Deck",e.ArakniBlitzDeckARK="Arakni Hunted Blitz Deck",e.ArakniWebOfDeceitBlitzDeck="Arakni, Web of Deceit Blitz Deck",e.AuroraBlitzDeck="Aurora Blitz Deck",e.AzaleaBlitzDeck="Azalea Blitz Deck",e.BenjiBlitzDeck="Benji Blitz Deck",e.BetsyBlitzDeck="Betsy Blitz Deck",e.BoltynBlitzDeck="Boltyn Blitz Deck",e.BriarBlitzDeck="Briar Blitz Deck",e.ChaneBlitzDeck="Chane Blitz Deck",e.CindraBlitzDeck="Cindra Blitz Deck",e.DromaiBlitzDeck="Dromai Blitz Deck",e.EnigmaBlitzDeck="Enigma Blitz Deck",e.FaiBlitzDeck="Fai Blitz Deck",e.FangBlitzDeck="Fang Blitz Deck",e.FlorianBlitzDeck="Florian Blitz Deck",e.KassaiBlitzDeck="Kassai Blitz Deck",e.KatsuBlitzDeck="Katsu Blitz Deck",e.KayoBlitzDeck="Kayo Blitz Deck",e.LeviaBlitzDeck="Levia Blitz Deck",e.LexiBlitzDeck="Lexi Blitz Deck",e.NuuBlitzDeck="Nuu Blitz Deck",e.OldhimBlitzDeck="Oldhim Blitz Deck",e.OlympiaBlitzDeck="Olympia Blitz Deck",e.OscilioBlitzDeck="Oscilio Blitz Deck",e.PrismBlitzDeck="Prism Blitz Deck",e.RhinarBlitzDeck="Rhinar Blitz Deck",e.RiptideBlitzDeck="Riptide Blitz Deck",e.UzuriBlitzDeck="Uzuri Blitz Deck",e.VerdanceBlitzDeck="Verdance Blitz Deck",e.VictorBlitzDeck="Victor Blitz Deck",e.ZenBlitzDeck="Zen Blitz Deck",e.FirstStrikeAurora="1st Strike: Aurora",e.FirstStrikeTerra="1st Strike: Terra",e.BravoHeroDeck="Bravo Hero Deck",e.DorintheaHeroDeck="Dorinthea Hero Deck",e.KatsuHeroDeck="Katsu Hero Deck",e.RhinarHeroDeck="Rhinar Hero Deck",e.ArakniSilverAgeDeck="Arakni Silver Age Deck",e.AzaleaSilverAgeDeck="Azalea Silver Age Deck",e.BlazeSilverAgeDeck="Blaze Silver Age Deck",e.BoltynSilverAgeDeck="Boltyn Silver Age Deck",e.BravoSilverAgeDeck="Bravo Silver Age Deck",e.BriarSilverAgeDeck="Briar Silver Age Deck",e.DashSilverAgeDeck="Dash Silver Age Deck",e.DorintheaSilverAgeDeck="Dorinthea Silver Age Deck",e.EnigmaSilverAgeDeck="Enigma Silver Age Deck",e.FaiSilverAgeDeck="Fai Silver Age Deck",e.GravyBonesSilverAgeDeck="Gravy Bones Silver Age Deck",e.IyslanderSilverAgeDeck="Iyslander Silver Age Deck",e.KayoSilverAgeDeck="Kayo Silver Age Deck",e.LyathSilverAgeDeck="Lyath Silver Age Deck",e.ViseraiSilverAgeDeck="Viserai Silver Age Deck",e.PrismSilverAgeDeck="Prism Silver Age Deck",e.ViseraiBetweenWorldsSilverAgeDeck="Viserai Between Worlds Silver Age Deck",e.MasteryPackGuardian="Mastery Pack: Guardian",e.MasteryPackWarrior="Mastery Pack: Warrior",e.MasteryPackAssassin="Mastery Pack: Assassin",e.BravoDemoDeck="Bravo Demo Deck",e.DorintheaDemoDeck="Dorinthea Demo Deck",e.ClassicBattlesRhinarDorinthea="Classic Battles: Rhinar vs Dorinthea",e.IraWelcomeDeck="Ira Welcome Deck",e.RoundTheTable="Round the Table: TCC x LSS",e.SmashPalace="Smash Palace",e.SmashPalaceChorusOfSteel="Smash Palace: Chorus of Steel",e.GEM="GEM",e.Promos="Promos",e.TournamentPack="Tournament Pack",e))(le||{}),ce=(D=>(D.Alpha="Alpha",D.First="First",D.Unlimited="Unlimited",D.Promo="Promo",D))(ce||{}),oe=(g=>(g.Chaos="Chaos",g.Draconic="Draconic",g.Earth="Earth",g.Elemental="Elemental",g.Ice="Ice",g.Light="Light",g.Lightning="Lightning",g.Mystic="Mystic",g.Revered="Revered",g.Reviled="Reviled",g.Royal="Royal",g.Shadow="Shadow",g))(oe||{}),de=(n=>(n.AgentOfChaos="Agent of Chaos",n))(de||{}),ge=(i=>(i.Arakni="Arakni",i.OmensOfTheThirdAge="Omens of the Third Age",i.Scurv="Scurv",i.HighSeas="High Seas",i.Puffin="Puffin",i.Rosetta="Rosetta",i))(ge||{}),ke=(i=>(i.CardBack="Card back",i.Deck="Deck",i.Extra="Extra",i.Hero="Hero",i.Inventory="Inventory",i.Unknown="Unknown",i))(ke||{}),ue=(f=>(f.Action="Action",f.AttackReaction="Attack Reaction",f.Block="Block",f.Companion="Companion",f.DefenseReaction="Defense Reaction",f.DemiHero="Demi-Hero",f.Equipment="Equipment",f.Hero="Hero",f.Instant="Instant",f.Macro="Macro",f.Mentor="Mentor",f.Resource="Resource",f.Token="Token",f.Weapon="Weapon",f))(ue||{}),he=(l=>(l.OneHanded="1H",l.TwoHanded="2H",l.Affliction="Affliction",l.Ally="Ally",l.Angel="Angel",l.Arms="Arms",l.Arrow="Arrow",l.Ash="Ash",l.Attack="Attack",l.Aura="Aura",l.Axe="Axe",l.Base="Base",l.Book="Book",l.Bow="Bow",l.Cannon="Cannon",l.Chest="Chest",l.Chi="Chi",l.Claw="Claw",l.Club="Club",l.Construct="Construct",l.Dagger="Dagger",l.Demon="Demon",l.Disease="Disease",l.Dragon="Dragon",l.Evo="Evo",l.Fiddle="Fiddle",l.Figment="Figment",l.Flail="Flail",l.Gem="Gem",l.Gun="Gun",l.Hammer="Hammer",l.Head="Head",l.Invocation="Invocation",l.Item="Item",l.Landmark="Landmark",l.Log="Log",l.Lute="Lute",l.Legs="Legs",l.NonAttack="Non-Attack",l.OffHand="Off-Hand",l.Orb="Orb",l.Pistol="Pistol",l.PitFighter="Pit-Fighter",l.Polearm="Polearm",l.Quiver="Quiver",l.Rock="Rock",l.Shuriken="Shuriken",l.Scepter="Scepter",l.Scroll="Scroll",l.Scythe="Scythe",l.Song="Song",l.Staff="Staff",l.Sword="Sword",l.Trap="Trap",l.Wrench="Wrench",l.Zombie="Zombie",l.Young="Young",l))(he||{}),De=(r=>(r.Arakni="Arakni",r.Aurora="Aurora",r.Aurora2="Aurora2",r.Azalea="Azalea",r.Baalghor="Baalghor",r.Benji="Benji",r.Betsy="Betsy",r.Blaze="Blaze",r.Bolfar="Bolfar",r.Boltyn="Boltyn",r.Bravo="Bravo",r.Brevant="Brevant",r.Briar="Briar",r.Brutus="Brutus",r.Chane="Chane",r.Cindra="Cindra",r.Crackni="Crackni",r.Crix="Crix",r.Dash="Dash",r.DataDoll="Data Doll",r.Dorinthea="Dorinthea",r.Dromai="Dromai",r.Emperor="Emperor",r.Enigma="Enigma",r.Fai="Fai",r.Fang="Fang",r.Florian="Florian",r.Frankie="Frankie",r.Genis="Genis",r.GravyBones="Gravy Bones",r.Hala="Hala",r.Ira="Ira",r.Iyslander="Iyslander",r.Jarl="Jarl",r.Kano="Kano",r.Kassai="Kassai",r.Katsu="Katsu",r.Kavdaen="Kavdaen",r.Kayo="Kayo",r.Killjoy="Killjoy",r.Kox="Kox",r.Levia="Levia",r.Lexi="Lexi",r.Librarian="Librarian",r.Lyath="Lyath",r.Malice="Malice",r.Marlynn="Marlynn",r.Maxx="Maxx",r.Melody="Melody",r.Mortimer="Mortimer",r.Nuu="Nuu",r.Oldhim="Oldhim",r.Olympia="Olympia",r.Oscilio="Oscilio",r.Broscilio="Broscilio",r.Pleiades="Pleiades",r.Prism="Prism",r.Puffin="Puffin",r.Reya="Reya",r.Rhinar="Rhinar",r.Riptide="Riptide",r.RKO="RKO",r.Ruudi="Ruu'di",r.Shiyana="Shiyana",r.Slippy="Slippy",r.Squizzy="Squizzy",r.Scurv="Scurv",r.Starvo="Starvo",r.Taipanis="Taipanis",r.Taylor="Taylor",r.Teklovossen="Teklovossen",r.Terra="Terra",r.Theryon="Theryon",r.Tuffnut="Tuffnut",r.Uzuri="Uzuri",r.Valda="Valda",r.Verdance="Verdance",r.Victor="Victor",r.Vynnset="Vynnset",r.Viserai="Viserai",r.Viserai2="Viserai2",r.Yorick="Yorick",r.Yoji="Yoji",r.Zane="Zane",r.Zen="Zen",r.Zyggy="Zyggy",r))(De||{}),pe=(a=>(a.Ambush="Ambush",a.Amp="Amp",a.ArcaneBarrier="Arcane Barrier",a.ArcaneShelter="Arcane Shelter",a.Awaken="Awaken",a.Battleworn="Battleworn",a.BeatChest="Beat Chest",a.Binds="Binds",a.BladeBreak="Blade Break",a.BloodDebt="Blood Debt",a.Boost="Boost",a.Bond="Bond",a.Channel="Channel",a.Charge="Charge",a.Clash="Clash",a.Cloaked="Cloaked",a.Combo="Combo",a.Contract="Contract",a.Crank="Crank",a.TheCrowdBoos="The Crowd Boos",a.TheCrowdCheers="The Crowd Cheers",a.Crush="Crush",a.Cure="Cure",a.Decay="Decay",a.Decompose="Decompose",a.Dominate="Dominate",a.Ephemeral="Ephemeral",a.Essence="Essence",a.EvoUpgrade="Evo Upgrade",a.Flow="Flow",a.Fragment="Fragment",a.Freeze="Freeze",a.Fusion="Fusion",a.Galvanize="Galvanize",a.GoAgain="Go again",a.GoFish="Go Fish",a.Guardwell="Guardwell",a.Heave="Heave",a.Heavy="Heavy",a.HighTide="High Tide",a.Incarnate="Incarnate",a.Intimidate="Intimidate",a.Legendary="Legendary",a.Mark="Mark",a.Material="Material",a.Meld="Meld",a.Modular="Modular",a.Mirage="Mirage",a.Negate="Negate",a.Opt="Opt",a.Overpower="Overpower",a.Pairs="Pairs",a.Piercing="Piercing",a.Phantasm="Phantasm",a.Protect="Protect",a.Quell="Quell",a.Quickstrike="Quickstrike",a.Reload="Reload",a.Reprise="Reprise",a.Retrieve="Retrieve",a.RuneGate="Rune Gate",a.Rupture="Rupture",a.Scrap="Scrap",a.ShadowResist="Shadow Resist",a.Sharpen="Sharpen",a.Solflare="Solflare",a.Specialization="Specialization",a.Spectra="Spectra",a.Spellvoid="Spellvoid",a.Starfall="Starfall",a.Steal="Steal",a.Stealth="Stealth",a.Surge="Surge",a.Suspense="Suspense",a.Temper="Temper",a.Tower="Tower",a.Transform="Transform",a.Transcend="Transcend",a.Traverse="Traverse",a.Unlimited="Unlimited",a.Universal="Universal",a.Unfreeze="Unfreeze",a.Unique="Unique",a.Unity="Unity",a.Usurp="Usurp",a.Wager="Wager",a.Ward="Ward",a.WateryGrave="Watery Grave",a))(pe||{});var U=(s,n)=>{let{name:d,pitch:c}=s,D=d.trim().toLowerCase().replace("//","-").normalize("NFD").replace(/\p{Diacritic}/gu,"").replace(/ /g,"-").replace("\xF0","d").replace("\u0111","d").replace("\xED","i").replace(/[^a-z0-9 -]/g,"").replace(/--/,"-"),t="";switch(c){case"1":case 1:t=n?"-1":"-red";break;case"2":case 2:t=n?"-2":"-yellow";break;case"3":case 3:t=n?"-3":"-blue";break;case"4":case 4:t=n?"-4":"-purple";break}return`${D}${t}`},Ee=(s,n)=>{let d,c,t=s.split("-").map(i=>["1","2","3","4"].some(y=>y===i)?i.replace("1","red").replace("2","yellow").replace("3","blue").replace("4","purple"):i).join("-");for(let i of n){let{cardIdentifier:k,oppositeSideCardIdentifiers:y}=i;if(k===t){d=i;break}y?.some(T=>`${k}--${T}`===t)&&(c=i)}return d||c},Ce=(s,n,d)=>{let c=U(s,d),D=n?U(n,d):"";return`${c}${D?"--":""}${D}`},Fe=["cracked-bauble-yellow","goldfin-harpoon"],Ge=["Companion","Demi-Hero","Equipment","Weapon"],be=["Action","Attack Reaction","Block","Defense Reaction","Instant","Mentor","Resource"],E=({keywords:s,traits:n,types:d})=>{let c=(n||[]).includes("Agent of Chaos"),D=(s||[]).includes("Ephemeral"),t=(s||[]).includes("Incarnate"),i=["Macro","Token"].some(k=>d.includes(k));return c||D||t||i},fe=s=>{let n=s.types.includes("Macro");return E(s)&&!n||Fe.includes(s.cardIdentifier)},_=s=>Ge.some(d=>s.types.includes(d))&&!N(s)&&!E(s),N=s=>be.some(d=>s.types.includes(d))&&!E(s),Me=s=>{let n=!!s.isCardBack&&s.cardIdentifier!=="inner-chi-blue";return E(s)||fe(s)||n},xe=s=>!s.isCardBack&&(_(s)||N(s)),We=s=>{let n="Unknown";return E(s)?n="Extra":s.types.includes("Hero")?n="Hero":_(s)?n="Inventory":N(s)?n="Deck":s.isCardBack&&(n="Card back"),n},Oe=s=>{let n=s.keywords?.includes("Meld"),c=!s.types?.includes("Macro")&&s.subtypes?.includes("Landmark")||!1;return n||c};var me=(i=>(i.English="English",i.French="Fran\xE7ais",i.German="Deutsch",i.Italian="Italiano",i.Japanese="\u65E5\u672C\u8A9E",i.Spanish="Espa\xF1ol",i))(me||{}),I=["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],o=["English","Fran\xE7ais","\u65E5\u672C\u8A9E"],Ae=(g=>(g.ArmoryDeck="Armory Deck",g.BlitzDeck="Blitz Deck",g.BoxSet="Box Set",g.ClassicBattles="Classic Battles",g.ExpansionBooster="Expansion Booster",g.FirstStrike="1st Strike",g.HistoryPack="History Pack",g.MasteryPack="Mastery Pack",g.RoundTheTable="Round the Table",g.SilverAgeDeck="Silver Age Deck",g.StandaloneBooster="Standalone Booster",g.WelcomeDeck="Welcome Deck",g))(Ae||{}),Ne=["Expansion Booster","Standalone Booster"],Ve=s=>Ne.includes(s),Je=s=>s==="History Pack",Ke=s=>s==="Standalone Booster",Ze=["Armory Deck","Blitz Deck","Classic Battles","1st Strike","Round the Table","Silver Age Deck","Welcome Deck"],He=s=>Ze.includes(s),Xe=[{cards:30,classes:["Ninja"],deckLinks:[{url:"https://fabrary.net/decks/01GJG7Z4WGWSZ95FY74KX4M557"}],heroes:["Ira"],languages:I,release:"Ira Welcome Deck",relatedReleases:[],releaseDate:"2019-08-31 12:00",releaseType:"Welcome Deck",setIdentifiers:["ira"],talents:[]},{cards:226,classes:["Brute","Guardian","Ninja","Warrior"],deckLinks:[],draft:{heroIdentifiers:["bravo","dorinthea","katsu","rhinar"],picksPerPack:15},heroes:["Bravo","Dorinthea","Katsu","Rhinar"],languages:["English"],release:"Welcome to Rathe",relatedReleases:[],releaseDate:"2019-10-11 12:00",releaseType:"Standalone Booster",setIdentifiers:["wtr"],talents:[]},{cards:219,classes:["Mechanologist","Ranger","Runeblade","Wizard"],deckLinks:[],draft:{heroIdentifiers:["azalea","dash","kano","viserai"],picksPerPack:15},heroes:["Azalea","Dash","Kano","Viserai"],languages:["English"],release:"Arcane Rising",relatedReleases:[],releaseDate:"2020-03-27 12:00",releaseType:"Standalone Booster",setIdentifiers:["arc"],talents:[]},{cards:194,classes:["Brute","Guardian","Mechanologist","Merchant","Ninja","Ranger","Runeblade","Warrior","Wizard"],deckLinks:[],heroes:["Benji","Data Doll","Ira","Kassai","Kavdaen","Kayo","Shiyana"],languages:["English"],release:"Crucible of War",relatedReleases:[],releaseDate:"2020-08-28 12:00",releaseType:"Expansion Booster",setIdentifiers:["cru"],talents:[]},{cards:40,classes:["Warrior"],deckLinks:[{url:"https://fabrary.net/decks/01G7FD2B3YQAMR8NJ4B3M58H96"}],heroes:["Boltyn"],languages:["English"],release:"Boltyn Blitz Deck",relatedReleases:[],releaseDate:"2021-05-07 12:00",releaseType:"Blitz Deck",setIdentifiers:["bol"],talents:["Light"]},{cards:40,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01G7FDVRZP35DFWBRK64AG5TKQ"}],heroes:["Chane"],languages:["English"],release:"Chane Blitz Deck",relatedReleases:[],releaseDate:"2021-05-07 12:00",releaseType:"Blitz Deck",setIdentifiers:["chn"],talents:["Shadow"]},{cards:40,classes:["Brute"],languages:["English"],deckLinks:[{url:"https://fabrary.net/decks/01G7B1T1D1M2DAM61K876VJBDK"}],heroes:["Levia"],release:"Levia Blitz Deck",relatedReleases:[],releaseDate:"2021-05-07 12:00",releaseType:"Blitz Deck",setIdentifiers:["lev"],talents:["Shadow"]},{cards:40,classes:["Illusionist"],deckLinks:[{url:"https://fabrary.net/decks/01G7FCP2N7N0MNHWAH6JTP0KFN"}],heroes:["Prism"],languages:["English"],relatedReleases:[],releaseDate:"2021-05-07 12:00",release:"Prism Blitz Deck",releaseType:"Blitz Deck",setIdentifiers:["psm"],talents:["Light"]},{cards:307,classes:["Brute","Illusionist","Runeblade","Warrior"],deckLinks:[],draft:{heroIdentifiers:["boltyn","chane","levia","prism"],picksPerPack:15},heroes:["Boltyn","Chane","Levia","Prism"],languages:["English"],release:"Monarch",relatedReleases:["Boltyn Blitz Deck","Chane Blitz Deck","Levia Blitz Deck","Prism Blitz Deck"],releaseDate:"2021-05-07 12:00",releaseType:"Standalone Booster",setIdentifiers:["mon"],talents:["Light","Shadow"]},{cards:40,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01G7K4D304QQCZZSBT7ABCX4XC"}],heroes:["Briar"],languages:["English"],release:"Briar Blitz Deck",relatedReleases:[],releaseDate:"2021-11-24 12:00",releaseType:"Blitz Deck",talents:["Elemental","Earth","Lightning"],setIdentifiers:["bri"]},{cards:40,classes:["Ranger"],deckLinks:[{url:"https://fabrary.net/decks/01G7K3WGPVKVDXG2J013GXSXNP"}],heroes:["Lexi"],languages:["English"],release:"Lexi Blitz Deck",relatedReleases:[],releaseDate:"2021-11-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["lxi"],talents:["Elemental","Ice","Lightning"]},{cards:40,classes:["Guardian"],deckLinks:[{url:"https://fabrary.net/decks/01G7K464J7VS0K7HKW5E395TBK"}],heroes:["Oldhim"],languages:["English"],release:"Oldhim Blitz Deck",relatedReleases:[],releaseDate:"2021-11-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["old"],talents:["Elemental","Earth","Ice"]},{cards:238,classes:["Guardian","Ranger","Runeblade"],deckLinks:[],draft:{heroIdentifiers:["briar","lexi","oldhim"],picksPerPack:15},heroes:["Briar","Lexi","Oldhim"],languages:["English"],release:"Tales of Aria",relatedReleases:["Briar Blitz Deck","Lexi Blitz Deck","Oldhim Blitz Deck"],releaseDate:"2021-09-24 12:00",releaseType:"Standalone Booster",setIdentifiers:["ele"],talents:["Elemental","Earth","Ice","Lightning"]},{cards:198,classes:["Brute","Guardian","Illusionist","Mechanologist","Merchant","Ninja","Ranger","Runeblade","Warrior","Wizard"],deckLinks:[],heroes:["Genis","Starvo","Valda"],languages:["English"],release:"Everfest",relatedReleases:[],releaseDate:"2022-02-04 12:00",releaseType:"Expansion Booster",setIdentifiers:["evr"],talents:["Elemental","Earth","Ice","Lightning"]},{cards:423,classes:["Brute","Guardian","Mechanologist","Ninja","Ranger","Runeblade","Warrior","Wizard"],deckLinks:[],heroes:["Azalea","Benji","Bravo","Dash","Data Doll","Dorinthea","Ira","Kassai","Katsu","Kayo","Rhinar","Viserai","Kano"],languages:["English"],release:"History Pack 1",relatedReleases:[],releaseDate:"2022-05-06 12:00",releaseType:"History Pack",setIdentifiers:["1hp","hp1"],talents:[]},{cards:80,classes:["Brute","Warrior"],deckLinks:[{name:"Dorinthea",url:"https://fabrary.net/decks/01GA4WTNSD12YTQB4FY8EYYNG5"},{name:"Rhinar",url:"https://fabrary.net/decks/01GA4WZKX9VEWKKPX7Y7H3MG1F"}],heroes:["Dorinthea","Rhinar"],languages:["English"],release:"Classic Battles: Rhinar vs Dorinthea",relatedReleases:[],releaseDate:"2022-05-27 12:00",releaseType:"Classic Battles",setIdentifiers:["dvr","rvd"],talents:[]},{cards:40,classes:["Illusionist"],deckLinks:[{url:"https://fabrary.net/decks/01G76H1R1ERRBRKS7RVCQAB8RX"}],heroes:["Dromai"],languages:["English"],relatedReleases:[],releaseDate:"2022-06-24 12:00",release:"Dromai Blitz Deck",releaseType:"Blitz Deck",setIdentifiers:["dro"],talents:["Draconic"]},{cards:40,classes:["Ninja"],deckLinks:[{url:"https://fabrary.net/decks/01G76H7RG7GN5ZA10F3BJBH740"}],heroes:["Fai"],languages:["English"],release:"Fai Blitz Deck",relatedReleases:[],releaseDate:"2022-06-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["fai"],talents:["Draconic"]},{cards:226,classes:["Illusionist","Ninja","Wizard"],deckLinks:[],draft:{heroIdentifiers:["dromai","fai","iyslander"],picksPerPack:14},heroes:["Dromai","Fai","Iyslander"],languages:["English"],release:"Uprising",relatedReleases:["Dromai Blitz Deck","Fai Blitz Deck"],releaseDate:"2022-06-24 12:00",releaseType:"Standalone Booster",setIdentifiers:["upr"],talents:["Draconic","Elemental","Ice"]},{cards:247,classes:["Assassin","Brute","Guardian","Illusionist","Mechanologist","Ninja","Ranger","Runeblade","Warrior","Wizard"],deckLinks:[],heroes:["Arakni","Emperor","Yoji"],languages:["English"],release:"Dynasty",relatedReleases:[],releaseDate:"2022-11-11 12:00",releaseType:"Expansion Booster",setIdentifiers:["dyn"],talents:["Royal"]},{cards:40,classes:["Assassin"],deckLinks:[{url:"https://fabrary.net/decks/01GW25PNWBW2FPDHRNTPSET0GT"}],heroes:["Arakni"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Arakni Blitz Deck",relatedReleases:[],releaseDate:"2023-03-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["ara"],talents:[]},{cards:40,classes:["Ranger"],deckLinks:[{url:"https://fabrary.net/decks/01GW26RNH1Q1J0S1VFXPN609S2"}],heroes:["Azalea"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Azalea Blitz Deck",relatedReleases:[],releaseDate:"2023-03-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["azl"],talents:[]},{cards:40,classes:["Ninja"],deckLinks:[{url:"https://fabrary.net/decks/01GW28622XSVAK7H9RXZVAVKM0"}],heroes:["Benji"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Benji Blitz Deck",relatedReleases:[],releaseDate:"2023-03-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["ben"],talents:[]},{cards:40,classes:["Ninja"],deckLinks:[{url:"https://fabrary.net/decks/01GW28TF5FXFKJ5CGRNXB84CG6"}],heroes:["Katsu"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Katsu Blitz Deck",relatedReleases:[],releaseDate:"2023-03-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["kat"],talents:[]},{cards:40,classes:["Ranger"],deckLinks:[{url:"https://fabrary.net/decks/01GW29DPNZ3XVBJQHHFQHHHDGN"}],heroes:["Riptide"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Riptide Blitz Deck",relatedReleases:[],releaseDate:"2023-03-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["rip"],talents:[]},{cards:40,classes:["Assassin"],deckLinks:[{url:"https://fabrary.net/decks/01GW2945GHPH2YSX3FTS7HCBT1"}],heroes:["Uzuri"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Uzuri Blitz Deck",relatedReleases:[],releaseDate:"2023-03-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["uzu"],talents:[]},{cards:239,classes:["Assassin","Ranger","Ninja"],deckLinks:[],draft:{heroIdentifiers:["arakni-solitary-confinement","azalea","benji-the-piercing-wind","katsu","riptide","uzuri"],picksPerPack:14},heroes:["Arakni","Azalea","Benji","Katsu","Riptide","Uzuri"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Outsiders",relatedReleases:["Arakni Blitz Deck","Azalea Blitz Deck","Benji Blitz Deck","Katsu Blitz Deck","Riptide Blitz Deck","Uzuri Blitz Deck"],releaseDate:"2023-03-24 12:00",releaseType:"Standalone Booster",setIdentifiers:["out"],talents:[]},{cards:236,classes:["Illusionist","Runeblade","Warrior","Brute"],deckLinks:[],heroes:["Prism","Vynnset","Boltyn","Levia"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Dusk till Dawn",relatedReleases:[],releaseDate:"2023-07-14 12:00",releaseType:"Expansion Booster",setIdentifiers:["dtd"],talents:["Light","Shadow"]},{cards:107,classes:["Mechanologist","Bard","Guardian","Ninja"],deckLinks:[{name:"Brevant",url:"https://fabrary.net/decks/01HAXKPFH7ZHPDEJZH967VNRW6"},{name:"Ira",url:"https://fabrary.net/decks/01HAXKZMTRN4FR7CFTQA11A70N"},{name:"Melody",url:"https://fabrary.net/decks/01HAXKSFPXGCEH99PDZJ32V4N9"},{name:"Teklovossen",url:"https://fabrary.net/decks/01HAXKZMTRN4FR7CFTQA11A70N"}],heroes:["Teklovossen","Melody","Brevant","Ira"],languages:["English"],release:"Round the Table: TCC x LSS",relatedReleases:[],releaseDate:"2023-09-29 12:00",releaseType:"Round the Table",talents:[],setIdentifiers:["tcc"]},{cards:251,classes:["Mechanologist"],deckLinks:[],draft:{heroIdentifiers:["dash-database","maxx-nitro","teklovossen"],picksPerPack:14},heroes:["Dash","Maxx","Teklovossen"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],raritiesExcludedInLimited:["Legendary","Fabled"],release:"Bright Lights",relatedReleases:[],releaseDate:"2023-10-06 12:00",releaseType:"Standalone Booster",setIdentifiers:["evo"],talents:[]},{cards:40,classes:["Guardian"],deckLinks:[{url:"https://fabrary.net/decks/01HN3J1X1NQ9TB9RTVWV42JG46"}],heroes:["Betsy"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Betsy Blitz Deck",relatedReleases:[],releaseDate:"2024-02-02 12:00",releaseType:"Blitz Deck",setIdentifiers:["bet"],talents:[]},{cards:40,classes:["Warrior"],deckLinks:[{url:"https://fabrary.net/decks/01HN3SHBEQBRECYK6ZN1CHRADR"}],heroes:["Kassai"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Kassai Blitz Deck",relatedReleases:[],releaseDate:"2024-02-02 12:00",releaseType:"Blitz Deck",setIdentifiers:["ksi"],talents:[]},{cards:40,classes:["Brute"],deckLinks:[{url:"https://fabrary.net/decks/01HN3HK89NA910SK3FQV84H46Z"}],heroes:["Kayo"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Kayo Blitz Deck",relatedReleases:[],releaseDate:"2024-02-02 12:00",releaseType:"Blitz Deck",setIdentifiers:["kyo"],talents:[]},{cards:40,classes:["Warrior"],deckLinks:[{url:"https://fabrary.net/decks/01HN3GP5ZJ1NRC0XBYNE45XQE8"}],heroes:["Olympia"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Olympia Blitz Deck",relatedReleases:[],releaseDate:"2024-02-02 12:00",releaseType:"Blitz Deck",setIdentifiers:["ola"],talents:[]},{cards:40,classes:["Brute"],deckLinks:[{url:"https://fabrary.net/decks/01HN3Q4GBDMEFSX98HEN9ET308"}],heroes:["Rhinar"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Rhinar Blitz Deck",relatedReleases:[],releaseDate:"2024-02-02 12:00",releaseType:"Blitz Deck",setIdentifiers:["rhi"],talents:[]},{cards:40,classes:["Guardian"],deckLinks:[{url:"https://fabrary.net/decks/01HN3K8ZV7KBRRJKPHW4B13J1K"}],heroes:["Victor"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Victor Blitz Deck",relatedReleases:[],releaseDate:"2024-02-02 12:00",releaseType:"Blitz Deck",setIdentifiers:["vic"],talents:[]},{cards:255,classes:["Brute","Guardian","Warrior"],deckLinks:[],draft:{heroIdentifiers:["kassai","betsy","kayo","olympia","rhinar","victor-goldmane"],picksPerPack:14},heroes:["Kassai","Betsy","Kayo","Olympia","Rhinar","Victor"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],raritiesExcludedInLimited:["Legendary","Fabled"],release:"Heavy Hitters",relatedReleases:["Betsy Blitz Deck","Kassai Blitz Deck","Kayo Blitz Deck","Olympia Blitz Deck","Rhinar Blitz Deck","Victor Blitz Deck"],releaseDate:"2024-02-02 12:00",releaseType:"Standalone Booster",setIdentifiers:["hvy"],talents:[]},{cards:66,classes:["Brute"],deckLinks:[{url:"https://fabrary.net/decks/01HWNCK2BYPVKK6701052YYXMZ"}],heroes:["Kayo"],languages:["English","Fran\xE7ais","Italiano","\u65E5\u672C\u8A9E"],release:"Armory Deck: Kayo",relatedReleases:[],releaseDate:"2024-05-03 12:00",releaseType:"Armory Deck",setIdentifiers:["ako"],talents:[]},{cards:40,classes:["Illusionist"],deckLinks:[{url:"https://fabrary.net/decks/01HX5Z23X2PRQCJ100FP4CAZGK"}],heroes:["Enigma"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Enigma Blitz Deck",relatedReleases:[],releaseDate:"2024-05-31 12:00",releaseType:"Blitz Deck",setIdentifiers:["eng"],talents:["Mystic"]},{cards:40,classes:["Assassin"],deckLinks:[{url:"https://fabrary.net/decks/01HX5Z4BD3TRMS3CP1ME4ZP3T6"}],heroes:["Nuu"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Nuu Blitz Deck",relatedReleases:[],releaseDate:"2024-05-31 12:00",releaseType:"Blitz Deck",setIdentifiers:["nuu"],talents:["Mystic"]},{cards:40,classes:["Ninja"],deckLinks:[{url:"https://fabrary.net/decks/01HX5Z395FD35CM24QCJQKJER1"}],heroes:["Zen"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Zen Blitz Deck",relatedReleases:[],releaseDate:"2024-05-31 12:00",releaseType:"Blitz Deck",setIdentifiers:["zen"],talents:["Mystic"]},{cards:239,classes:["Assassin","Illusionist","Ninja"],deckLinks:[],draft:{heroIdentifiers:["enigma","nuu","zen"],picksPerPack:14},heroes:["Enigma","Nuu","Zen"],languages:I,raritiesExcludedInLimited:["Legendary","Fabled"],release:"Part the Mistveil",relatedReleases:["Enigma Blitz Deck","Nuu Blitz Deck","Zen Blitz Deck"],releaseDate:"2024-05-31 12:00",releaseType:"Standalone Booster",setIdentifiers:["mst"],talents:["Mystic"]},{cards:66,classes:["Warrior"],deckLinks:[{url:"https://fabrary.net/decks/01J202NH0RG8S0V8WXH1FWB2AH"}],heroes:["Boltyn"],languages:["English","Fran\xE7ais","Italiano","\u65E5\u672C\u8A9E"],release:"Armory Deck: Boltyn",relatedReleases:[],releaseDate:"2024-07-12 12:00",releaseType:"Armory Deck",setIdentifiers:["asb"],talents:["Light"]},{cards:40,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01J45SYSM2ZERW6CWY283ZAT1S"}],heroes:["Aurora"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"1st Strike: Aurora",relatedReleases:[],releaseDate:"2024-08-01 12:00",releaseType:"1st Strike",setIdentifiers:["aur"],talents:["Lightning"]},{cards:40,classes:["Guardian"],deckLinks:[{url:"https://fabrary.net/decks/01J45SWXNDV5XD8PTBACAV8NZ1"}],heroes:["Terra"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"1st Strike: Terra",relatedReleases:[],releaseDate:"2024-08-01 12:00",releaseType:"1st Strike",setIdentifiers:["ter"],talents:["Earth"]},{cards:66,classes:["Ranger"],deckLinks:[{url:"https://fabrary.net/decks/01J3GKKSTM773CW7BG3RRJ5FJH"}],heroes:["Azalea"],languages:["English","Fran\xE7ais","Italiano","\u65E5\u672C\u8A9E"],release:"Armory Deck: Azalea",relatedReleases:[],releaseDate:"2024-08-02 12:00",releaseType:"Armory Deck",setIdentifiers:["aaz"],talents:[]},{cards:40,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01J68KF1TFNN62TC0G7M993FTY"}],heroes:["Aurora"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Aurora Blitz Deck",relatedReleases:[],releaseDate:"2024-09-20 12:00",releaseType:"Blitz Deck",setIdentifiers:["aua"],talents:["Lightning"]},{cards:40,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01J68KFRMJFKRQYJJ7THG1GMTB"}],heroes:["Florian"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Florian Blitz Deck",relatedReleases:[],releaseDate:"2024-09-20 12:00",releaseType:"Blitz Deck",setIdentifiers:["flr"],talents:["Earth"]},{cards:40,classes:["Wizard"],deckLinks:[{url:"https://fabrary.net/decks/01J68KGA3JVKFHEXGKYW0441CY"}],heroes:["Oscilio"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Oscilio Blitz Deck",relatedReleases:[],releaseDate:"2024-09-20 12:00",releaseType:"Blitz Deck",setIdentifiers:["osc"],talents:["Lightning"]},{cards:40,classes:["Wizard"],deckLinks:[{url:"https://fabrary.net/decks/01J68KGT3XD3HMVVRFT174QNMF"}],heroes:["Verdance"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Verdance Blitz Deck",relatedReleases:[],releaseDate:"2024-09-20 12:00",releaseType:"Blitz Deck",setIdentifiers:["ver"],talents:["Earth"]},{cards:258,classes:["Runeblade","Wizard"],deckLinks:[],draft:{heroIdentifiers:["aurora","florian","oscilio","verdance"],picksPerPack:14},heroes:["Aurora","Florian","Oscilio","Verdance"],languages:I,raritiesExcludedInLimited:["Legendary","Fabled"],release:"Rosetta",relatedReleases:["Aurora Blitz Deck","Florian Blitz Deck","Oscilio Blitz Deck","Verdance Blitz Deck"],releaseDate:"2024-09-20 12:00",releaseType:"Standalone Booster",setIdentifiers:["ros"],talents:["Elemental","Earth","Lightning"]},{cards:66,classes:["Mechanologist"],deckLinks:[{url:"https://fabrary.net/decks/01J9822H5PANJAFQVMC4TPK4Z1"}],heroes:["Dash"],languages:["English","Fran\xE7ais","Italiano","\u65E5\u672C\u8A9E"],release:"Armory Deck: Dash",relatedReleases:[],releaseDate:"2024-10-18 12:00",releaseType:"Armory Deck",setIdentifiers:["aio"],talents:[]},{cards:30,classes:["Guardian"],deckLinks:[{url:"https://fabrary.net/decks/01JCPPENK52DTRBJZMWQF8S0X2"}],heroes:["Jarl"],languages:["English","Fran\xE7ais","Italiano","\u65E5\u672C\u8A9E"],release:"Armory Deck Origins: Jarl",relatedReleases:[],releaseDate:"2024-11-29 12:00",releaseType:"Armory Deck",setIdentifiers:["ajv"],talents:["Elemental","Earth","Ice"]},{cards:40,classes:["Assassin"],deckLinks:[],heroes:["Arakni"],languages:I,release:"Arakni Hunted Blitz Deck",relatedReleases:[],releaseDate:"2025-01-31 12:00",releaseType:"Blitz Deck",setIdentifiers:["ark"],talents:[]},{cards:40,classes:["Assassin"],deckLinks:[],heroes:["Crackni"],languages:I,release:"Arakni, Web of Deceit Blitz Deck",relatedReleases:[],releaseDate:"2025-01-31 12:00",releaseType:"Blitz Deck",setIdentifiers:["wod"],talents:[]},{cards:40,classes:["Ninja"],deckLinks:[],heroes:["Cindra"],languages:I,release:"Cindra Blitz Deck",relatedReleases:[],releaseDate:"2025-01-31 12:00",releaseType:"Blitz Deck",setIdentifiers:["cin"],talents:["Draconic","Royal"]},{cards:40,classes:["Warrior"],deckLinks:[],heroes:["Fang"],languages:I,release:"Fang Blitz Deck",relatedReleases:[],releaseDate:"2025-01-31 12:00",releaseType:"Blitz Deck",setIdentifiers:["fng"],talents:["Draconic","Royal"]},{cards:265,classes:["Assassin","Ninja","Warrior"],deckLinks:[],draft:{heroIdentifiers:["arakni-web-of-deceit","cindra","fang"],picksPerPack:14},heroes:["Arakni","Cindra","Fang"],heroOverrides:{Arakni:"Crackni"},languages:I,raritiesExcludedInLimited:["Legendary","Fabled"],release:"The Hunted",relatedReleases:["Arakni Hunted Blitz Deck","Arakni, Web of Deceit Blitz Deck","Cindra Blitz Deck","Fang Blitz Deck"],releaseDate:"2025-01-31 12:00",releaseType:"Standalone Booster",setIdentifiers:["hnt"],talents:["Chaos","Draconic","Royal"]},{cards:28,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01JN2DEG4X2V8DVMCWFBWQTTSC"}],heroes:["Aurora"],languages:["English","Fran\xE7ais","\u65E5\u672C\u8A9E"],release:"Armory Deck: Aurora",relatedReleases:[],releaseDate:"2025-03-14 12:00",releaseType:"Armory Deck",setIdentifiers:["ast"],talents:["Elemental","Lightning"]},{cards:28,classes:["Mechanologist"],deckLinks:[{url:"https://fabrary.net/decks/01JRH0631MH5A9JPVGTP3TKJXN"}],heroes:["Maxx"],languages:["English","Fran\xE7ais","\u65E5\u672C\u8A9E"],release:"Armory Deck: Maxx",relatedReleases:[],releaseDate:"2025-04-17 12:00",releaseType:"Armory Deck",setIdentifiers:["amx"],talents:[]},{cards:30,classes:["Necromancer","Pirate"],deckLinks:[{url:"https://fabrary.net/decks/01JVYZ0NCHP49HAP40C23P14E3"}],heroes:["Gravy Bones"],languages:o,release:"Armory Deck: Gravy Bones",relatedReleases:[],releaseDate:"2025-05-30 12:00",releaseType:"Armory Deck",setIdentifiers:["agb"],talents:[]},{cards:265,classes:["Mechanologist","Necromancer","Pirate","Ranger","Thief"],deckLinks:[],draft:{heroIdentifiers:["gravy-bones","marlynn","puffin","scurv-stowaway"],picksPerPack:14},heroes:["Gravy Bones","Marlynn","Puffin","Scurv"],languages:o,raritiesExcludedInLimited:["Fabled","Legendary"],release:"High Seas",relatedReleases:[],releaseDate:"2025-06-06 12:00",releaseType:"Standalone Booster",setIdentifiers:["sea"],talents:[]},{cards:30,classes:["Ninja"],deckLinks:[{url:"https://fabrary.net/decks/01JZ97KZ5TQV8E0FYMAM0XVNX7"}],heroes:["Ira"],languages:o,release:"Armory Deck: Ira",relatedReleases:[],releaseDate:"2025-07-11 12:00",releaseType:"Armory Deck",setIdentifiers:["asr"],talents:[]},{cards:30,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01K0ZQGQYJPH6B90VNT3GJ8C7Q"}],heroes:["Viserai"],languages:o,release:"Armory Deck Legends: Viserai",relatedReleases:[],releaseDate:"2025-07-24 12:00",releaseType:"Armory Deck",setIdentifiers:["avs"],talents:[]},{cards:30,classes:["Illusionist"],deckLinks:[{url:"https://fabrary.net/decks/01K0ZQ8FVR8DQB7YC9N7KAB7N8"}],heroes:["Prism"],languages:o,release:"Armory Deck Legends: Prism",relatedReleases:[],releaseDate:"2025-07-24 12:00",releaseType:"Armory Deck",setIdentifiers:["apr"],talents:["Light"]},{cards:130,classes:["Guardian"],deckLinks:[],heroes:["Valda"],languages:o,release:"Mastery Pack: Guardian",relatedReleases:[],releaseDate:"2025-08-08 12:00",releaseType:"Mastery Pack",setIdentifiers:["mpg"],talents:[]},{cards:30,classes:["Guardian"],deckLinks:[{url:"https://fabrary.net/decks/01K1GBSGB17GT925NVJ0PM0G9Y"}],heroes:["Bravo"],languages:o,release:"Bravo Demo Deck",relatedReleases:[],releaseDate:"2025-08-08 12:00",releaseType:"Welcome Deck",setIdentifiers:["bdd"],talents:[]},{cards:107,classes:["Guardian"],deckLinks:[],heroes:["Bolfar","Bravo","Kox","Crix","Reya","Victor"],languages:["English"],release:"Smash Palace",relatedReleases:[],releaseDate:"2025-09-29 12:00",releaseType:"Box Set",talents:[],setIdentifiers:["smp"]},{cards:276,classes:["Brute","Guardian"],deckLinks:[],draft:{heroIdentifiers:["tuffnut","pleiades","kayo-strong-arm","lyath-goldmane"],picksPerPack:14},heroes:["Kayo","Lyath","Pleiades","Tuffnut"],heroOverrides:{Kayo:"RKO"},languages:o,raritiesExcludedInLimited:["Fabled","Legendary"],release:"Super Slam",relatedReleases:[],releaseDate:"2025-09-26 12:00",releaseType:"Standalone Booster",setIdentifiers:["sup"],talents:["Revered","Reviled"]},{cards:30,classes:["Guardian"],deckLinks:[{url:"https://fabrary.net/decks/01K4XX1ERKXRYW8XHWE9BTAS4W"}],heroes:["Pleiades"],languages:o,release:"Armory Deck: Pleiades",relatedReleases:[],releaseDate:"2025-09-19 12:00",releaseType:"Armory Deck",setIdentifiers:["aps"],talents:["Revered"]},{cards:30,classes:["Brute"],deckLinks:[{url:"https://fabrary.net/decks/01K74RSFG9RTVPVN534DZPJJNQ"}],heroes:["Rhinar"],languages:o,release:"Armory Deck: Rhinar",relatedReleases:[],releaseDate:"2025-11-14 12:00",releaseType:"Armory Deck",setIdentifiers:["arr"],talents:[]},{cards:30,classes:["Assassin"],deckLinks:[{url:"https://fabrary.net/decks/01K74RXDPRPJT9YWGFVAPHECDF"}],heroes:["Slippy"],languages:o,release:"Armory Deck: Arakni",relatedReleases:[],releaseDate:"2025-12-15 12:00",releaseType:"Armory Deck",setIdentifiers:["aac"],talents:["Chaos"]},{cards:348,classes:["Assassin","Brute","Generic","Guardian","Illusionist","Mechanologist","Necromancer","Ninja","Pirate","Ranger","Runeblade","Thief","Warrior","Wizard"],deckLinks:[],heroes:[],languages:o,release:"Compendium of Rathe",relatedReleases:[],releaseDate:"2026-02-13 12:00",releaseType:"Expansion Booster",setIdentifiers:["pen"],talents:["Chaos","Draconic","Earth","Elemental","Ice","Light","Lightning","Mystic","Revered","Reviled","Shadow"]},{cards:40,classes:["Assassin"],deckLinks:[{url:"https://fabrary.net/decks/01KFWFQYASKA6C1FGXXB0E8EGE"}],heroes:["Arakni"],languages:o,release:"Arakni Silver Age Deck",relatedReleases:[],releaseDate:"2026-02-13 12:00",releaseType:"Silver Age Deck",setIdentifiers:["sar"],talents:["Chaos"]},{cards:40,classes:["Ranger"],deckLinks:[{url:"https://fabrary.net/decks/01KFWFSGRBJS7BK87T8YF24FYC"}],heroes:["Azalea"],languages:o,release:"Azalea Silver Age Deck",relatedReleases:[],releaseDate:"2026-02-13 12:00",releaseType:"Silver Age Deck",setIdentifiers:["saz"],talents:[]},{cards:40,classes:["Guardian"],deckLinks:[{url:"https://fabrary.net/decks/01KFWFTPVMBMZ9TT5GVT5QRRRM"}],heroes:["Bravo"],languages:o,release:"Bravo Silver Age Deck",relatedReleases:[],releaseDate:"2026-02-13 12:00",releaseType:"Silver Age Deck",setIdentifiers:["sbr"],talents:[]},{cards:40,classes:["Mechanologist"],deckLinks:[{url:"https://fabrary.net/decks/01KFWFW6EAT7VX44MKN8GCVQSM"}],heroes:["Dash"],languages:o,release:"Dash Silver Age Deck",relatedReleases:[],releaseDate:"2026-02-13 12:00",releaseType:"Silver Age Deck",setIdentifiers:["sda"],talents:[]},{cards:40,classes:["Warrior"],deckLinks:[{url:"https://fabrary.net/decks/01KFWFXK3QM2XEVA08D5Y1R3CF"}],heroes:["Dorinthea"],languages:o,release:"Dorinthea Silver Age Deck",relatedReleases:[],releaseDate:"2026-02-13 12:00",releaseType:"Silver Age Deck",setIdentifiers:["sdo"],talents:[]},{cards:40,classes:["Illusionist"],deckLinks:[{url:"https://fabrary.net/decks/01KFWFYETE5DC1GK586XYXXFE6"}],heroes:["Enigma"],languages:o,release:"Enigma Silver Age Deck",relatedReleases:[],releaseDate:"2026-02-13 12:00",releaseType:"Silver Age Deck",setIdentifiers:["sen"],talents:["Mystic"]},{cards:40,classes:["Ninja"],deckLinks:[{url:"https://fabrary.net/decks/01KFWD89C2CQFA1TA331EJ1Q2K"}],heroes:["Fai"],languages:o,release:"Fai Silver Age Deck",relatedReleases:[],releaseDate:"2026-02-13 12:00",releaseType:"Silver Age Deck",setIdentifiers:["sfa"],talents:["Draconic"]},{cards:40,classes:["Wizard"],deckLinks:[{url:"https://fabrary.net/decks/01KFWD9YWCRZ825T3AK8ZTG0G4"}],heroes:["Iyslander"],languages:o,release:"Iyslander Silver Age Deck",relatedReleases:[],releaseDate:"2026-02-13 12:00",releaseType:"Silver Age Deck",setIdentifiers:["siy"],talents:["Elemental","Ice"]},{cards:40,classes:["Brute"],deckLinks:[{url:"https://fabrary.net/decks/01KFWFZ9Z5W17F0NHKQ44811Q0"}],heroes:["Kayo"],languages:o,release:"Kayo Silver Age Deck",relatedReleases:[],releaseDate:"2026-02-13 12:00",releaseType:"Silver Age Deck",setIdentifiers:["ska"],talents:[]},{cards:40,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01KFWG05XQJT0NRVNGBZ4EJSSP"}],heroes:["Viserai"],languages:o,release:"Viserai Silver Age Deck",relatedReleases:[],releaseDate:"2026-02-13 12:00",releaseType:"Silver Age Deck",setIdentifiers:["svi"],talents:[]},{cards:27,classes:["Warrior"],deckLinks:[{url:"https://fabrary.net/decks/01KNHHE1MY39BC4PXYXMTJVT1M"}],heroes:["Hala"],languages:o,release:"Armory Deck Origins: Hala",relatedReleases:[],releaseDate:"2026-04-17 12:00",releaseType:"Armory Deck",setIdentifiers:["aha"],talents:[]},{cards:251,classes:["Illusionist","Runeblade","Wizard"],deckLinks:[],draft:{heroIdentifiers:["aurora-emissary-of-lightning","oscilio-scion-of-the-third-age","zyggy"],picksPerPack:14},heroes:["Aurora2","Broscilio","Zyggy"],heroOverrides:{Aurora2:"Aurora",Broscilio:"Oscilio"},languages:o,raritiesExcludedInLimited:["Legendary","Fabled"],release:"Omens of the Third Age",relatedReleases:[],releaseDate:"2026-06-05 12:00",releaseType:"Standalone Booster",setIdentifiers:["omn"],talents:["Lightning"]},{cards:40,classes:["Illusionist"],deckLinks:[{url:"https://fabrary.net/decks/01KREWW7RJS0GZ2PCCD4BM47QY"}],heroes:["Zyggy"],languages:o,release:"Armory Deck: Zyggy",relatedReleases:[],releaseDate:"2026-06-05 12:00",releaseType:"Armory Deck",setIdentifiers:["azs"],talents:["Lightning"]},{cards:40,classes:["Wizard"],deckLinks:[{url:"https://fabrary.net/decks/01KP7ZQMB111K73XT88YV5YN7C"}],heroes:["Blaze"],languages:o,release:"Blaze Silver Age Deck",relatedReleases:[],releaseDate:"2026-06-05 12:00",releaseType:"Silver Age Deck",setIdentifiers:["sbz"],talents:[]},{cards:40,classes:["Warrior"],deckLinks:[{url:"https://fabrary.net/decks/01KP7ZQ311EMGC2S97KC79AEX0"}],heroes:["Boltyn"],languages:o,release:"Boltyn Silver Age Deck",relatedReleases:[],releaseDate:"2026-06-05 12:00",releaseType:"Silver Age Deck",setIdentifiers:["sbl"],talents:["Light"]},{cards:40,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01KP7ZP4HXQTBZ2G37PMJ9W20N"}],heroes:["Briar"],languages:o,release:"Briar Silver Age Deck",relatedReleases:[],releaseDate:"2026-06-05 12:00",releaseType:"Silver Age Deck",setIdentifiers:["sba"],talents:["Elemental","Earth","Lightning"]},{cards:40,classes:["Pirate","Necromancer"],deckLinks:[{url:"https://fabrary.net/decks/01KP7ZNJYM2QVMNRS4DQKFZHQ4"}],heroes:["Gravy Bones"],languages:o,release:"Gravy Bones Silver Age Deck",relatedReleases:[],releaseDate:"2026-06-05 12:00",releaseType:"Silver Age Deck",setIdentifiers:["sgb"],talents:[]},{cards:40,classes:["Guardian"],deckLinks:[{url:"https://fabrary.net/decks/01KP7ZMZGHMACW17CRP12E7R45"}],heroes:["Lyath"],languages:o,release:"Lyath Silver Age Deck",relatedReleases:[],releaseDate:"2026-06-05 12:00",releaseType:"Silver Age Deck",setIdentifiers:["sly"],talents:["Reviled"]},{cards:156,classes:["Warrior"],deckLinks:[],heroes:["Dorinthea","Hala","Olympia"],languages:o,release:"Mastery Pack: Warrior",relatedReleases:[],releaseDate:"2026-08-07 12:00",releaseType:"Mastery Pack",setIdentifiers:["mpw"],talents:[]},{cards:30,classes:["Warrior"],deckLinks:[{url:"https://fabrary.net/decks/01KP7ZJNFZZD8YNGP438FT8SFG"}],heroes:["Olympia"],languages:o,release:"Armory Deck: Olympia",relatedReleases:[],releaseDate:"2026-08-07 12:00",releaseType:"Armory Deck",setIdentifiers:["aol"],talents:[]},{cards:30,classes:["Warrior"],deckLinks:[{url:"https://fabrary.net/decks/01KP7ZHK1HMQCVMFH6W62FTVZ2"}],heroes:["Dorinthea"],languages:o,release:"Dorinthea Demo Deck",relatedReleases:[],releaseDate:"2026-08-07 12:00",releaseType:"Welcome Deck",setIdentifiers:["ddd"],talents:[]},{cards:40,classes:["Illusionist"],deckLinks:[{url:"https://fabrary.net/decks/01KYX5AKV8MSXP5310XSYF15DJ"}],heroes:["Prism"],languages:o,release:"Prism Silver Age Deck",relatedReleases:[],releaseDate:"2026-09-18 12:00",releaseType:"Silver Age Deck",setIdentifiers:["sat"],talents:["Light"]},{cards:40,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01M1WWKBXCEF7RGFG9MM4PYRKB"}],heroes:["Viserai2"],languages:o,release:"Viserai Between Worlds Silver Age Deck",relatedReleases:[],releaseDate:"2026-09-18 12:00",releaseType:"Silver Age Deck",setIdentifiers:["sbw"],talents:["Shadow"]},{cards:263,classes:["Brute","Necromancer","Runeblade"],deckLinks:[],draft:{heroIdentifiers:["levia","malice","viserai-between-worlds"],picksPerPack:14},heroes:["Baalghor","Levia","Malice","Viserai2"],heroOverrides:{Viserai2:"Viserai"},languages:o,raritiesExcludedInLimited:["Legendary","Fabled"],release:"Usurp the Shadow Throne",relatedReleases:[],releaseDate:"2026-09-25 12:00",releaseType:"Standalone Booster",setIdentifiers:["iar"],talents:["Shadow"]},{cards:30,classes:["Necromancer"],deckLinks:[{url:"https://fabrary.net/decks/01KXQF1YZHCHP2KAMDBS5WC5Q9"}],heroes:["Malice"],languages:o,release:"Armory Deck: Malice",relatedReleases:[],releaseDate:"2026-09-25 12:00",releaseType:"Armory Deck",setIdentifiers:["ama"],talents:["Shadow"]},{cards:107,classes:["Warrior"],deckLinks:[],heroes:["Killjoy","Zane"],languages:["English"],release:"Smash Palace: Chorus of Steel",relatedReleases:[],releaseDate:"2026-10-30 12:00",releaseType:"Box Set",talents:[],setIdentifiers:["spw"]},{cards:156,classes:["Assassin"],deckLinks:[],heroes:["Arakni","Mortimer","Uzuri"],languages:o,release:"Mastery Pack: Assassin",relatedReleases:[],releaseDate:"2026-11-13 12:00",releaseType:"Mastery Pack",setIdentifiers:["mpa"],talents:[]},{cards:30,classes:["Assassin"],deckLinks:[],heroes:["Mortimer"],languages:o,release:"Armory Deck: Dr. Mortimer",relatedReleases:[],releaseDate:"2026-11-13 12:00",releaseType:"Armory Deck",setIdentifiers:["amo"],talents:[]}],O=new Map(Object.entries({wtr:"Welcome to Rathe",arc:"Arcane Rising",cru:"Crucible of War",mon:"Monarch",ele:"Tales of Aria",evr:"Everfest","1hp":"History Pack 1",hp1:"History Pack 1",upr:"Uprising",dyn:"Dynasty",out:"Outsiders",dtd:"Dusk till Dawn",evo:"Bright Lights",hvy:"Heavy Hitters",mst:"Part the Mistveil",ros:"Rosetta",hnt:"The Hunted",sea:"High Seas",mpg:"Mastery Pack: Guardian",sup:"Super Slam",pen:"Compendium of Rathe",omn:"Omens of the Third Age",mpw:"Mastery Pack: Warrior",iar:"Usurp the Shadow Throne",mpa:"Mastery Pack: Assassin"})),ye=new Map([...O,...Object.entries({aac:"Armory Deck: Arakni",aaz:"Armory Deck: Azalea",asb:"Armory Deck: Boltyn",aio:"Armory Deck: Dash",ako:"Armory Deck: Kayo",ajv:"Armory Deck Origins: Jarl",ast:"Armory Deck: Aurora",amx:"Armory Deck: Maxx",agb:"Armory Deck: Gravy Bones",asr:"Armory Deck: Ira",aps:"Armory Deck: Pleiades",apr:"Armory Deck Legends: Prism",arr:"Armory Deck: Rhinar",avs:"Armory Deck Legends: Viserai",aha:"Armory Deck Origins: Hala",azs:"Armory Deck: Zyggy",aol:"Armory Deck: Olympia",ama:"Armory Deck: Malice",amo:"Armory Deck: Dr. Mortimer",ara:"Arakni Blitz Deck",ark:"Arakni Hunted Blitz Deck",aua:"Aurora Blitz Deck",azl:"Azalea Blitz Deck",ben:"Benji Blitz Deck",bet:"Betsy Blitz Deck",bol:"Boltyn Blitz Deck",bri:"Briar Blitz Deck",chn:"Chane Blitz Deck",cin:"Cindra Blitz Deck",dro:"Dromai Blitz Deck",eng:"Enigma Blitz Deck",fai:"Fai Blitz Deck",fng:"Fang Blitz Deck",flr:"Florian Blitz Deck",kat:"Katsu Blitz Deck",ksi:"Kassai Blitz Deck",kyo:"Kayo Blitz Deck",lev:"Levia Blitz Deck",lxi:"Lexi Blitz Deck",nuu:"Nuu Blitz Deck",old:"Oldhim Blitz Deck",ola:"Olympia Blitz Deck",osc:"Oscilio Blitz Deck",psm:"Prism Blitz Deck",rip:"Riptide Blitz Deck",rhi:"Rhinar Blitz Deck",uzu:"Uzuri Blitz Deck",ver:"Verdance Blitz Deck",vic:"Victor Blitz Deck",zen:"Zen Blitz Deck",wod:"Arakni, Web of Deceit Blitz Deck",aur:"1st Strike: Aurora",ter:"1st Strike: Terra",sar:"Arakni Silver Age Deck",sat:"Prism Silver Age Deck",saz:"Azalea Silver Age Deck",sba:"Briar Silver Age Deck",sbl:"Boltyn Silver Age Deck",sbr:"Bravo Silver Age Deck",sbz:"Blaze Silver Age Deck",sbw:"Viserai Between Worlds Silver Age Deck",sda:"Dash Silver Age Deck",sdo:"Dorinthea Silver Age Deck",sen:"Enigma Silver Age Deck",sfa:"Fai Silver Age Deck",sgb:"Gravy Bones Silver Age Deck",siy:"Iyslander Silver Age Deck",ska:"Kayo Silver Age Deck",sly:"Lyath Silver Age Deck",svi:"Viserai Silver Age Deck",bdd:"Bravo Demo Deck",ddd:"Dorinthea Demo Deck",dvr:"Classic Battles: Rhinar vs Dorinthea",rvd:"Classic Battles: Rhinar vs Dorinthea",ira:"Ira Welcome Deck",tcc:"Round the Table: TCC x LSS",smp:"Smash Palace",spw:"Smash Palace: Chorus of Steel",bvo:"Bravo Hero Deck",tea:"Dorinthea Hero Deck",ksu:"Katsu Hero Deck",rnr:"Rhinar Hero Deck",gem:"GEM",tnp:"Tournament Pack",anq:"Promos",con:"Promos",fab:"Promos",her:"Promos",jdg:"Promos",lgs:"Promos",lss:"Promos",oxo:"Promos",xxx:"Promos",win:"Promos"})]),Qe=()=>{let s=new Map;for(let[n,d]of ye){let c=s.get(d);c?c.push(n):s.set(d,[n])}return s},Ye=Qe(),je=[{chapter:1,name:"Silver Age Chapter 1",relatedReleases:["Bravo Silver Age Deck","Dash Silver Age Deck","Kayo Silver Age Deck","Iyslander Silver Age Deck","Viserai Silver Age Deck"],releaseDate:"2026-02-13 12:00"},{chapter:2,name:"Silver Age Chapter 2",relatedReleases:["Arakni Silver Age Deck","Azalea Silver Age Deck","Dorinthea Silver Age Deck","Enigma Silver Age Deck","Fai Silver Age Deck"],releaseDate:"2026-02-13 12:00"},{chapter:3,name:"Silver Age Chapter 3",relatedReleases:["Blaze Silver Age Deck","Boltyn Silver Age Deck","Briar Silver Age Deck","Gravy Bones Silver Age Deck","Lyath Silver Age Deck"],releaseDate:"2026-06-05 12:00"}];var Ue={},_e={"HER146-ARF":"-ARF"},we=/-(?:MV|RF|CF)?([A-Z])$/,$e=s=>{let n=s.replace(/_BACK$/,""),d=we.exec(n)?.[1],c="";return d&&(c=`-${d}`),c},qe=s=>{let n=Ue[s.set]||"",d=`${s.identifier}${n}`,c=s.edition?`-${s.edition}`:"",D=s.foiling?`-${s.foiling}`:"",t=s.treatments?.length?`-${s.treatments.sort().join("-")}`:s.treatment?`-${s.treatment}`:"",i=s.image?.toLowerCase().includes("back")?"-Back":"",k=s.image?.toUpperCase()||"",y=_e[k]??$e(k);return`${d}${c}${D}${t}${i}${y}`},ea=[...O.keys()].filter(s=>!s.toLowerCase().includes("hp")).reverse().map(s=>s.toUpperCase()),aa={"adaptive-plating":{print:"EVO013-Cold"},"command-and-conquer-red":{print:"ANQ009-Rainbow-Alternate Art-Alternate Border-Extended Art"},"cracked-bauble-yellow":{print:"LGS083-Cold"},"dash-io":{print:"HER089-Cold"},"fate-foreseen-red":{print:"FAB024-Rainbow"},"florian-rotwood-harbinger":{print:"ROS001-Cold-Full Art-Back"},"pleiades-superstar":{print:"SUP009-Cold-Full Art"},"pitfall-trap-yellow":{print:"LGS151-Rainbow"},"prism-sculptor-of-arc-light":{print:"HER069-Cold-Full Art-Back"},quicken:{print:"EVO250"},"ravenous-rabble-red":{print:"FAB190-Rainbow-Extended Art"},"rockslide-trap-blue":{print:"LGS152-Rainbow"},"rosetta-thorn":{print:"ROS256-Cold"},"sigil-of-solace-red":{print:"FAB178-Rainbow-Alternate Art-Extended Art"},"spectral-shield":{print:"MST158-Alternate Art-B"},"tripwire-trap-red":{print:"LGS150-Rainbow"},"viserai-rune-blood":{print:"HER011-Cold"},"wreck-havoc-red":{print:"OUT198"}},Be=["FAB024-Rainbow-Alternate Art","FAB331-Rainbow-Alternate Art-Extended Art","FAB443-Rainbow-Alternate Art-Extended Art","HER161-Rainbow-Alternate Art-Full Art","JDG044-Full Art-Back"],ra=["JA_","KO_"],sa=(s,n)=>{let{cardIdentifier:d}=s,c=Object.entries(aa).find(([t])=>t===d);if(!!c&&n.some(t=>{let[,{print:i}]=c;return t.print===i})){let[,{print:t}]=c;return n.find(k=>k.print===t)||n[0]}else{let t,i,k,y,p,A,T,g,S,f,v,C,V,F,h,G,b,M,x,W;for(let m of n){let{edition:u,foiling:B,identifier:P,image:K,print:Z,treatments:R}=m,L=K?.toUpperCase()||"",z=P.toLowerCase().includes("win"),H=!!L,X=B==="Gold",Q=L.includes("HP"),Y=Be.includes(Z)||ra.some(Te=>L.startsWith(Te));H&&!z&&!Q&&!Y&&!X&&(t||(t=m),R?.includes("Full Art")&&(f=m,B==="Cold"&&(A=m),L.includes("BACK")?g=m:S=m),R?.includes("Extended Art")&&(T=m,B==="Cold"&&(p=m),B||(v=m),u==="Promo"&&(C=m)),R?.includes("Alternate Art")&&(i=m),R?.includes("Alternate Border")&&(k=m),R?.includes("Alternate Text")&&(y=m),L.includes("-MV")&&R?.includes("Full Art")&&(F=m),u==="Alpha"?h=m:u==="First"?G=m:u==="Promo"?b=m:u==="Unlimited"&&(M=m),B==="Cold"&&(x=m,u==="Promo"&&(W=m)))}return V||S||g||A||f||p||F||C||v||T||k||i||y||W||h||G||b||M||x||t}},na={"command-and-conquer-red":{print:"HNT260"},"fyendals-spring-tunic":{print:"EVO249"},might:{print:"TER028"},"pitfall-trap-yellow":{print:"LGS151-Rainbow"},"portside-exchange-blue":{print:"SEA145"},"rockslide-trap-blue":{print:"LGS152-Rainbow"},"rosetta-thorn":{print:"ELE222-First"},"spectral-shield":{print:"MST158"},"tripwire-trap-red":{print:"LGS150-Rainbow"},vigor:{print:"HVY242"},"wreck-havoc-red":{print:"OUT198"}},ia=(s,n)=>{let{cardIdentifier:d}=s,c=Object.entries(na).find(([t])=>t===d);if(!!c&&n.some(t=>{let[,{print:i}]=c;return t.print===i})){let[,{print:t}]=c;return n.find(k=>k.print===t)||n[0]}else{let t,i;for(let k of n){let{edition:y,image:p,treatment:A}=k,T=!!p,g=p?.includes("HP"),S=p?.includes("BACK"),f=(p||"").length>10||p?.includes("width");if(T&&!g&&!S&&!f&&(t||(t=k),!i&&y!=="Promo"&&A!=="Full Art"&&(i=k)),t&&i)break}return i||t||n[0]}},ta={},la=(s,n)=>{let{cardIdentifier:d}=s,c=Object.entries(ta).find(([t])=>t===d);if(!!c&&n.some(t=>{let[,{print:i}]=c;return t.print===i})){let[,{print:t}]=c;return n.find(k=>k.print===t)||n[0]}else{let t=n.length>0?n[0]:void 0;for(let i of O.values()){let k=n.find(y=>y.set===i);if(k){t=k;break}}return t}},ca={},oa=(s,n)=>{let{cardIdentifier:d}=s,c=Object.entries(ca).find(([t])=>t===d);if(!!c&&n.some(t=>{let[,{print:i}]=c;return t.print===i})){let[,{print:t}]=c;return n.find(k=>k.print===t)||n[0]}else{let t,i,k,y,p,A,T,g,S,f,v,C,V,F,h,G,b,M,x,W,J;for(let u of n){let{edition:B,foiling:P,identifier:K,image:Z,print:R,treatments:L}=u,z=Z?.toUpperCase()||"",H=K.toLowerCase().includes("win"),X=!!z,Q=z.includes("HP"),Y=Be.includes(R);X&&!H&&!Q&&!Y&&(t||(t=u),L?.includes("Full Art")&&(f=u,P==="Cold"&&(A=u),z.includes("BACK")?g=u:S=u),L?.includes("Extended Art")&&(T=u,P==="Cold"&&(p=u),P||(v=u),B==="Promo"&&(C=u)),L?.includes("Alternate Art")&&(i=u),L?.includes("Alternate Border")&&(k=u),L?.includes("Alternate Text")&&(y=u),z.includes("-MV")&&L?.includes("Full Art")&&(F=u),B==="Alpha"?h=u:B==="First"?G=u:B==="Promo"?b=u:B==="Unlimited"&&(M=u),P==="Cold"?(x=u,B==="Promo"&&(J=u)):P==="Gold"&&(W=u))}return W||(V||S||g||A||f)||p||F||J||C||x||v||T||k||i||y||h||b||G||M||t}};0&&(module.exports={Bond,CardRole,Class,Flow,Foiling,Format,Fusion,Hero,Keyword,Language,Meta,Metatype,Rarity,Release,ReleaseEdition,ReleaseType,Shorthand,Subtype,Talent,Trait,Treatment,Type,fullSetIdentifiers,getBoomerPrinting,getCanAddToDeck,getCanBeCreated,getCanBeExtra,getCardFromGEMCardIdentifier,getCardIdentifier,getCardRole,getDefaultPrinting,getFrontAndBackCardIdentifier,getIsArenaCard,getIsBooster,getIsDeckCard,getIsDraftable,getIsExtra,getIsPreconstructed,getIsReprint,getMaxRarityPrinting,getPrint,getShouldRotateCardImage,getSpecialPrinting,orderedFullSetBlackBorderIdentifiers,releases,setIdentifierToSetMappings,setToSetIdentifierMappings,silverAgeChapters});
@@ -540,6 +540,7 @@ export declare enum Keyword {
540
540
  RuneGate = "Rune Gate",
541
541
  Rupture = "Rupture",
542
542
  Scrap = "Scrap",
543
+ ShadowResist = "Shadow Resist",
543
544
  Sharpen = "Sharpen",
544
545
  Solflare = "Solflare",
545
546
  Specialization = "Specialization",
@@ -476,6 +476,7 @@ var Keyword = /* @__PURE__ */ ((Keyword2) => {
476
476
  Keyword2["RuneGate"] = "Rune Gate";
477
477
  Keyword2["Rupture"] = "Rupture";
478
478
  Keyword2["Scrap"] = "Scrap";
479
+ Keyword2["ShadowResist"] = "Shadow Resist";
479
480
  Keyword2["Sharpen"] = "Sharpen";
480
481
  Keyword2["Solflare"] = "Solflare";
481
482
  Keyword2["Specialization"] = "Specialization";
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@flesh-and-blood/types",
3
3
  "description": "TypeScript representations of Flesh and Blood card types",
4
- "version": "5.0.26",
4
+ "version": "5.1.0",
5
5
  "type": "module",
6
6
  "sideEffects": false,
7
7
  "main": "dist/index.cjs",
@@ -73,5 +73,5 @@
73
73
  "FAB",
74
74
  "FABTCG"
75
75
  ],
76
- "gitHead": "e16db9abbd21448ea4f26fc3226f5ce2df4a9ee6"
76
+ "gitHead": "907dd133a795d9fd2c5fbd6fd3bed06d4566022a"
77
77
  }