@flesh-and-blood/search 3.6.54 → 3.6.56

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.
Files changed (2) hide show
  1. package/dist/index.js +2 -2
  2. package/package.json +4 -4
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- var Vt=Object.create;var de=Object.defineProperty,Jt=Object.defineProperties,Ut=Object.getOwnPropertyDescriptor,Yt=Object.getOwnPropertyDescriptors,Xt=Object.getOwnPropertyNames,yr=Object.getOwnPropertySymbols,Zt=Object.getPrototypeOf,vr=Object.prototype.hasOwnProperty,Qt=Object.prototype.propertyIsEnumerable;var kr=(e,r,t)=>r in e?de(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,$=(e,r)=>{for(var t in r||(r={}))vr.call(r,t)&&kr(e,t,r[t]);if(yr)for(var t of yr(r))Qt.call(r,t)&&kr(e,t,r[t]);return e},j=(e,r)=>Jt(e,Yt(r));var br=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports),qt=(e,r)=>{for(var t in r)de(e,t,{get:r[t],enumerable:!0})},Dr=(e,r,t,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let i of Xt(r))!vr.call(e,i)&&i!==t&&de(e,i,{get:()=>r[i],enumerable:!(a=Ut(r,i))||a.enumerable});return e};var q=(e,r,t)=>(t=e!=null?Vt(Zt(e)):{},Dr(r||!e||!e.__esModule?de(t,"default",{value:e,enumerable:!0}):t,e)),ea=e=>Dr(de({},"__esModule",{value:!0}),e);var re=br((vs,Ur)=>{var ye=Object.defineProperty,ra=Object.defineProperties,ta=Object.getOwnPropertyDescriptor,aa=Object.getOwnPropertyDescriptors,ia=Object.getOwnPropertyNames,Ar=Object.getOwnPropertySymbols,Mr=Object.prototype.hasOwnProperty,sa=Object.prototype.propertyIsEnumerable,Br=(e,r,t)=>r in e?ye(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,na=(e,r)=>{for(var t in r||(r={}))Mr.call(r,t)&&Br(e,t,r[t]);if(Ar)for(var t of Ar(r))sa.call(r,t)&&Br(e,t,r[t]);return e},oa=(e,r)=>ra(e,aa(r)),la=(e,r)=>{for(var t in r)ye(e,t,{get:r[t],enumerable:!0})},ca=(e,r,t,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let i of ia(r))!Mr.call(e,i)&&i!==t&&ye(e,i,{get:()=>r[i],enumerable:!(a=ta(r,i))||a.enumerable});return e},da=e=>ca(ye({},"__esModule",{value:!0}),e),Cr={};la(Cr,{Bond:()=>Sr,Class:()=>Tr,Flow:()=>xr,Foiling:()=>Fr,Format:()=>Lr,Fusion:()=>Rr,Hero:()=>Wr,Keyword:()=>Kr,Language:()=>jr,Meta:()=>Ir,Metatype:()=>Hr,Rarity:()=>Pr,Release:()=>wr,ReleaseEdition:()=>zr,ReleaseType:()=>Vr,Subtype:()=>Gr,Talent:()=>Nr,Trait:()=>Or,Treatment:()=>Er,Type:()=>_r,coreSetIdentifiers:()=>Da,fullSetIdentifiers:()=>Oe,getCanAddToDeck:()=>pa,getCanCardBeTokenForDeck:()=>ha,getCardIdentifier:()=>ua,getDefaultPrinting:()=>Ia,getIsArenaCard:()=>$r,getIsBooster:()=>ma,getIsCardTokenForDeck:()=>ke,getIsDeckCard:()=>Ne,getIsDraftable:()=>ka,getIsPreconstructed:()=>ba,getIsReprint:()=>ya,getPrint:()=>Ta,getShouldRotateCardImage:()=>fa,getSpecialPrinting:()=>Ra,orderedFullSetBlackBorderIdentifiers:()=>Sa,promoSetIdentifiers:()=>Ba,releases:()=>Ma,setIdentifierToSetMappings:()=>Jr,setToSetIdentifierMappings:()=>Ca,supplementalSetIdentifiers:()=>Aa});Ur.exports=da(Cr);var Fr=(e=>(e.C="Cold",e.G="Gold",e.R="Rainbow",e))(Fr||{}),Er=(e=>(e.AB="Alternate Border",e.AA="Alternate Art",e.AT="Alternate Text",e.EA="Extended Art",e.FA="Full Art",e))(Er||{}),Tr=(e=>(e.NotClassed="NotClassed",e.Generic="Generic",e.Adjudicator="Adjudicator",e.Assassin="Assassin",e.Bard="Bard",e.Brute="Brute",e.Guardian="Guardian",e.Illusionist="Illusionist",e.Mechanologist="Mechanologist",e.Merchant="Merchant",e.Necromancer="Necromancer",e.Ninja="Ninja",e.Pirate="Pirate",e.Ranger="Ranger",e.Runeblade="Runeblade",e.Shapeshifter="Shapeshifter",e.Warrior="Warrior",e.Wizard="Wizard",e))(Tr||{}),Sr=(e=>(e.Earth="Earth",e))(Sr||{}),xr=(e=>(e.Lightning="Lightning",e))(xr||{}),Lr=(e=>(e.Blitz="Blitz",e.BlitzLivingLegend="Blitz (Living Legend)",e.Clash="Clash",e.ClassicConstructed="Classic Constructed",e.ClassicConstructedLivingLegend="Classic Constructed (Living Legend)",e.Commoner="Commoner",e.Draft="Draft",e.Open="Open",e.ProjectBlue="Project Blue",e.Sealed="Sealed",e.UltimatePitFight="Ultimate Pit Fight",e))(Lr||{}),Rr=(e=>(e.Earth="Earth",e.Ice="Ice",e.Lightning="Lightning",e))(Rr||{}),Pr=(e=>(e.Basic="Basic",e.Token="Token",e.Common="Common",e.Rare="Rare",e.SuperRare="Super Rare",e.Majestic="Majestic",e.Marvel="Marvel",e.Legendary="Legendary",e.Fabled="Fabled",e.Promo="Promo",e))(Pr||{}),Ir=(e=>(e.Expansion="Expansion slot",e.Rainbow="Rainbow",e))(Ir||{}),wr=(e=>(e.ArcaneRising="Arcane Rising",e.BrightLights="Bright Lights",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.Outsiders="Outsiders",e.PartTheMistveil="Part the Mistveil",e.Rosetta="Rosetta",e.TalesOfAria="Tales of Aria",e.TheHunted="The Hunted",e.Uprising="Uprising",e.WelcomeToRathe="Welcome to Rathe",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.ArmoryDeckMaxx="Armory Deck: Maxx",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.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.DromaiBlitzDeck="Dromai Blitz Deck",e.EnigmaBlitzDeck="Enigma Blitz Deck",e.FaiBlitzDeck="Fai 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.BravoDemoDeck="Bravo Demo Deck",e.ClassicBattlesRhinarDorinthea="Classic Battles: Rhinar vs Dorinthea",e.MasteryPackGuardian="Mastery Pack: Guardian",e.IraWelcomeDeck="Ira Welcome Deck",e.RoundTheTable="Round the Table: TCC x LSS",e.GEM="GEM",e.Promos="Promos",e))(wr||{}),zr=(e=>(e.Alpha="Alpha",e.First="First",e.Unlimited="Unlimited",e.Promo="Promo",e))(zr||{}),Nr=(e=>(e.Chaos="Chaos",e.Draconic="Draconic",e.Earth="Earth",e.Elemental="Elemental",e.Ice="Ice",e.Light="Light",e.Lightning="Lightning",e.Mystic="Mystic",e.Royal="Royal",e.Shadow="Shadow",e))(Nr||{}),Or=(e=>(e.AgentOfChaos="Agent of Chaos",e))(Or||{}),Hr=(e=>(e.Arakni="Arakni",e.HighSeas="High Seas",e.Puffin="Puffin",e.Rosetta="Rosetta",e))(Hr||{}),_r=(e=>(e.Action="Action",e.AttackReaction="Attack Reaction",e.Block="Block",e.Companion="Companion",e.DefenseReaction="Defense Reaction",e.DemiHero="Demi-Hero",e.Equipment="Equipment",e.Hero="Hero",e.Instant="Instant",e.Macro="Macro",e.Mentor="Mentor",e.Resource="Resource",e.Token="Token",e.Weapon="Weapon",e))(_r||{}),Gr=(e=>(e.OneHanded="1H",e.TwoHanded="2H",e.Affliction="Affliction",e.Ally="Ally",e.Angel="Angel",e.Arms="Arms",e.Arrow="Arrow",e.Ash="Ash",e.Attack="Attack",e.Aura="Aura",e.Axe="Axe",e.Base="Base",e.Book="Book",e.Bow="Bow",e.Cannon="Cannon",e.Chest="Chest",e.Chi="Chi",e.Claw="Claw",e.Club="Club",e.Construct="Construct",e.Dagger="Dagger",e.Demon="Demon",e.Dragon="Dragon",e.Evo="Evo",e.Fiddle="Fiddle",e.Figment="Figment",e.Flail="Flail",e.Gem="Gem",e.Gun="Gun",e.Hammer="Hammer",e.Head="Head",e.Invocation="Invocation",e.Item="Item",e.Landmark="Landmark",e.Lute="Lute",e.Legs="Legs",e.NonAttack="Non-Attack",e.OffHand="Off-Hand",e.Orb="Orb",e.Pistol="Pistol",e.Polearm="Polearm",e.Quiver="Quiver",e.Rock="Rock",e.Shuriken="Shuriken",e.Scepter="Scepter",e.Scroll="Scroll",e.Scythe="Scythe",e.Song="Song",e.Staff="Staff",e.Sword="Sword",e.Trap="Trap",e.Wrench="Wrench",e.Young="Young",e))(Gr||{}),Wr=(e=>(e.Arakni="Arakni",e.Aurora="Aurora",e.Azalea="Azalea",e.Benji="Benji",e.Betsy="Betsy",e.Blaze="Blaze",e.Boltyn="Boltyn",e.Bravo="Bravo",e.Brevant="Brevant",e.Briar="Briar",e.Brutus="Brutus",e.Chane="Chane",e.Cindra="Cindra",e.Crackni="Crackni",e.Dash="Dash",e.DataDoll="Data Doll",e.Dorinthea="Dorinthea",e.Dromai="Dromai",e.Emperor="Emperor",e.Enigma="Enigma",e.Fai="Fai",e.Fang="Fang",e.Florian="Florian",e.Genis="Genis",e.GravyBones="Gravy Bones",e.Ira="Ira",e.Iyslander="Iyslander",e.Jarl="Jarl",e.Kano="Kano",e.Kassai="Kassai",e.Katsu="Katsu",e.Kavdaen="Kavdaen",e.Kayo="Kayo",e.Levia="Levia",e.Lexi="Lexi",e.Marlynn="Marlynn",e.Maxx="Maxx",e.Melody="Melody",e.Nuu="Nuu",e.Oldhim="Oldhim",e.Olympia="Olympia",e.Oscilio="Oscilio",e.Prism="Prism",e.Puffin="Puffin",e.Rhinar="Rhinar",e.Riptide="Riptide",e.Ruudi="Ruu'di",e.Shiyana="Shiyana",e.Slippy="Slippy",e.Squizzy="Squizzy",e.Starvo="Starvo",e.Taipanis="Taipanis",e.Taylor="Taylor",e.Teklovossen="Teklovossen",e.Terra="Terra",e.Theryon="Theryon",e.Uzuri="Uzuri",e.Valda="Valda",e.Verdance="Verdance",e.Victor="Victor",e.Vynnset="Vynnset",e.Viserai="Viserai",e.Yorick="Yorick",e.Yoji="Yoji",e.Zen="Zen",e))(Wr||{}),Kr=(e=>(e.Ambush="Ambush",e.Amp="Amp",e.ArcaneBarrier="Arcane Barrier",e.ArcaneShelter="Arcane Shelter",e.Awaken="Awaken",e.Battleworn="Battleworn",e.BeatChest="Beat Chest",e.BladeBreak="Blade Break",e.BloodDebt="Blood Debt",e.Boost="Boost",e.Bond="Bond",e.Channel="Channel",e.Charge="Charge",e.Clash="Clash",e.Cloaked="Cloaked",e.Combo="Combo",e.Contract="Contract",e.Crank="Crank",e.Crush="Crush",e.Decompose="Decompose",e.Dominate="Dominate",e.Ephemeral="Ephemeral",e.Essence="Essence",e.EvoUpgrade="Evo Upgrade",e.Flow="Flow",e.Freeze="Freeze",e.Fusion="Fusion",e.Galvanize="Galvanize",e.GoAgain="Go again",e.GoFish="Go Fish",e.Guardwell="Guardwell",e.Heave="Heave",e.Heavy="Heavy",e.HighTide="High Tide",e.Intimidate="Intimidate",e.Legendary="Legendary",e.Mark="Mark",e.Material="Material",e.Meld="Meld",e.Modular="Modular",e.Mirage="Mirage",e.Negate="Negate",e.Opt="Opt",e.Overpower="Overpower",e.Pairs="Pairs",e.Piercing="Piercing",e.Phantasm="Phantasm",e.Protect="Protect",e.Quell="Quell",e.Reload="Reload",e.Reprise="Reprise",e.Retrieve="Retrieve",e.RuneGate="Rune Gate",e.Rupture="Rupture",e.Scrap="Scrap",e.Solflare="Solflare",e.Specialization="Specialization",e.Spectra="Spectra",e.Spellvoid="Spellvoid",e.Steal="Steal",e.Stealth="Stealth",e.Surge="Surge",e.Temper="Temper",e.Tower="Tower",e.Transform="Transform",e.Transcend="Transcend",e.Unlimited="Unlimited",e.Universal="Universal",e.Unfreeze="Unfreeze",e.Unity="Unity",e.Wager="Wager",e.Ward="Ward",e.WateryGrave="Watery Grave",e))(Kr||{}),ua=(e,r)=>{let{name:t,pitch:a}=e,i=t.trim().toLowerCase().replace("//","-").normalize("NFD").replace(new RegExp("\\p{Diacritic}","gu"),"").replace(/ /g,"-").replace("\xF0","d").replace("\u0111","d").replace("\xED","i").replace(/[^a-z0-9 -]/g,"").replace(/--/,"-"),s="";switch(a){case"1":case 1:s=r?"-1":"-red";break;case"2":case 2:s=r?"-2":"-yellow";break;case"3":case 3:s=r?"-3":"-blue";break}return`${i}${s}`},$r=({keywords:e,traits:r,types:t})=>{let a=Ne({keywords:e,traits:r,types:t}),i=ke({keywords:e,traits:r,types:t}),s=["Companion","Demi-Hero","Equipment","Weapon"].some(o=>t.includes(o));return!a&&!i&&s},Ne=({keywords:e,traits:r,types:t})=>{let a=["Action","Attack Reaction","Block","Defense Reaction","Instant","Mentor","Resource"].some(s=>t.includes(s)),i=ke({keywords:e,traits:r,types:t});return a&&!i},ke=({keywords:e,traits:r,types:t})=>{let a=!!r&&(r==null?void 0:r.includes("Agent of Chaos")),i=!!e&&e.includes("Ephemeral"),s=["Macro","Token"].some(o=>t.includes(o));return a||i||s},ha=e=>{let r=e.cardIdentifier==="cracked-bauble-yellow",t=ke(e),a=e.isCardBack&&e.cardIdentifier!=="inner-chi-blue";return r||t||a},pa=({isCardBack:e,keywords:r,traits:t,types:a})=>{let i=$r({keywords:r,traits:t,types:a}),s=Ne({keywords:r,traits:t,types:a});return!e&&(i||s)},fa=e=>{var r,t,a;let i=(r=e.keywords)==null?void 0:r.includes("Meld"),s=!((t=e.types)!=null&&t.includes("Macro"))&&((a=e.subtypes)==null?void 0:a.includes("Landmark"));return i||s},jr=(e=>(e.English="English",e.French="Fran\xE7ais",e.German="Deutsch",e.Italian="Italiano",e.Japanese="\u65E5\u672C\u8A9E",e.Spanish="Espa\xF1ol",e))(jr||{}),ue=["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],ee=["English","Fran\xE7ais","\u65E5\u672C\u8A9E"],Vr=(e=>(e.ArmoryDeck="Armory Deck",e.BlitzDeck="Blitz Deck",e.ClassicBattles="Classic Battles",e.ExpansionBooster="Expansion Booster",e.FirstStrike="1st Strike",e.HistoryPack="History Pack",e.MasteryPack="Mastery Pack",e.RoundTheTable="Round the Table",e.StandaloneBooster="Standalone Booster",e.WelcomeDeck="Welcome Deck",e))(Vr||{}),ga=["Expansion Booster","Standalone Booster"],ma=e=>ga.includes(e),ya=e=>e==="History Pack",ka=e=>e==="Standalone Booster",va=["Armory Deck","Blitz Deck","Classic Battles","1st Strike","Round the Table","Welcome Deck"],ba=e=>va.includes(e),Da={wtr:"Welcome to Rathe",arc:"Arcane Rising",mon:"Monarch",ele:"Tales of Aria",upr:"Uprising",out:"Outsiders",evo:"Bright Lights",hvy:"Heavy Hitters",mst:"Part the Mistveil",ros:"Rosetta"},Aa={cru:"Crucible of War",evr:"Everfest","1hp":"History Pack 1",hp1:"History Pack 1",dyn:"Dynasty",dtd:"Dusk till Dawn"},Ba=["fab","her","jdg","lgs","lss","oxo","xxx","win"],Ma=[{cards:30,classes:["Ninja"],deckLinks:[{url:"https://fabrary.net/decks/01GJG7Z4WGWSZ95FY74KX4M557"}],heroes:["Ira"],languages:ue,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:ue,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:ue,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:ue,release:"Arakni Hunted Blitz Deck",relatedReleases:[],releaseDate:"2025-01-31 12:00",releaseType:"Blitz Deck",setIdentifiers:["ark"],talents:["Chaos"]},{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:ue,raritiesExcludedInLimited:["Legendary","Fabled"],release:"The Hunted",relatedReleases:[],releaseDate:"2025-01-31 12:00",releaseType:"Standalone Booster",setIdentifiers:["hnt"],talents:["Chaos","Draconic","Royal"],url:"https://fabtcg.com/en/articles/hnt/"},{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:[],heroes:["Gravy Bones"],languages:ee,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"],deckLinks:[],draft:{heroIdentifiers:["gravy-bones","marlynn","puffin"],picksPerPack:14},heroes:["Gravy Bones","Marlynn","Puffin"],languages:ee,raritiesExcludedInLimited:["Fabled","Legendary"],release:"High Seas",relatedReleases:[],releaseDate:"2025-06-06 12:00",releaseType:"Standalone Booster",setIdentifiers:["sea"],talents:[]},{cards:30,classes:["Ninja"],deckLinks:[],heroes:["Ira"],languages:ee,release:"Armory Deck: Ira",relatedReleases:[],releaseDate:"2025-07-11 12:00",releaseType:"Armory Deck",setIdentifiers:["asr"],talents:[]},{cards:30,classes:["Runeblade"],deckLinks:[],heroes:["Viserai"],languages:ee,release:"Armory Deck Legends: Viserai",relatedReleases:[],releaseDate:"2025-07-24 12:00",releaseType:"Armory Deck",setIdentifiers:["avs"],talents:[]},{cards:30,classes:["Illusionist"],deckLinks:[],heroes:["Prism"],languages:ee,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:ee,release:"Mastery Pack: Guardian",relatedReleases:[],releaseDate:"2025-08-08 12:00",releaseType:"Expansion Booster",setIdentifiers:["mpg"],talents:[]},{cards:30,classes:["Guardian"],deckLinks:[],heroes:["Bravo"],languages:ee,release:"Bravo Demo Deck",relatedReleases:[],releaseDate:"2025-08-08 12:00",releaseType:"Welcome Deck",setIdentifiers:["bdd"],talents:[]}],Oe={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"},Jr=oa(na({},Oe),{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",apr:"Armory Deck Legends: Prism",avs:"Armory Deck Legends: Viserai",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",dro:"Dromai Blitz Deck",eng:"Enigma Blitz Deck",fai:"Fai 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",aur:"1st Strike: Aurora",ter:"1st Strike: Terra",bdd:"Bravo 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",bvo:"Bravo Hero Deck",tea:"Dorinthea Hero Deck",ksu:"Katsu Hero Deck",rnr:"Rhinar Hero Deck",gem:"GEM",fab:"Promos",her:"Promos",jdg:"Promos",lgs:"Promos",lss:"Promos",oxo:"Promos",xxx:"Promos",win:"Promos"}),ze={};for(let[e,r]of Object.entries(Jr)){let t=ze[r];t?t.push(e):ze[r]=[e]}var Ca=ze,Fa={},Ea={MST158_V3:"-V3",ROS162_V2:"-V2","ROS008-MV_V2_BACK":"-V3"},Ta=e=>{var r,t,a;let i=Fa[e.set]||"",s=`${e.identifier}${i}`,o=e.edition?`-${e.edition}`:"",n=e.foiling?`-${e.foiling}`:"",l=(r=e.treatments)!=null&&r.length?`-${e.treatments.sort().join("-")}`:e.treatment?`-${e.treatment}`:"",c=(t=e.image)!=null&&t.toLowerCase().includes("back")?"-Back":"",d=Ea[((a=e.image)==null?void 0:a.toUpperCase())||""]||"";return`${s}${o}${n}${l}${c}${d}`},Sa=Object.keys(Oe).filter(e=>!e.toLowerCase().includes("hp")).reverse().map(e=>e.toUpperCase()),xa={"adaptive-plating":{print:"EVO013-Cold"},"command-and-conquer-red":{print:"DYN000-Cold-Alternate Art-Extended Art"},"cracked-bauble-yellow":{print:"LGS083-Cold"},"fate-foreseen-red":{print:"FAB024-Rainbow"},"pitfall-trap-yellow":{print:"LGS151-Rainbow"},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"}},La=["JDG044-Full Art-Back"],Ra=(e,r)=>{let{cardIdentifier:t}=e,a=Object.entries(xa).find(([i])=>i===t);if(a&&r.some(i=>{let[,{print:s}]=a;return i.print===s})){let[,{print:i}]=a;return r.find(s=>s.print===i)||r[0]}else{let i,s,o,n,l,c,d,u,h,p,f,y,v,D,k,m,b,F,B,x;for(let M of r){let{edition:C,foiling:T,identifier:P,image:R,print:w,treatments:S}=M,z=P.toLowerCase().includes("win"),I=!!R,W=R==null?void 0:R.includes("HP"),G=La.includes(w);if(I&&!z&&!W&&!G){if(i||(i=M),S!=null&&S.includes("Full Art")&&(h=M,T==="Cold"&&(c=M,R.includes("_V3")))){d=M;break}S!=null&&S.includes("Extended Art")&&(u=M,T==="Cold"&&(l=M),T||(p=M),C==="Promo"&&(f=M)),S!=null&&S.includes("Alternate Art")&&(s=M),S!=null&&S.includes("Alternate Border")&&(o=M),S!=null&&S.includes("Alternate Text")&&(n=M),R&&(R.includes("_V2")||R.includes("-MV"))&&S!=null&&S.includes("Full Art")&&(v=M),C==="Alpha"?D=M:C==="First"?k=M:C==="Promo"?m=M:C==="Unlimited"&&(b=M),T==="Cold"?(F=M,C==="Promo"&&(x=M)):T==="Gold"&&(B=M)}}return y||d||c||h||l||v||f||p||u||o||s||n||x||D||k||m||b||B||F||i}},Pa={"command-and-conquer-red":{print:"HNT260"},"pitfall-trap-yellow":{print:"LGS151-Rainbow"},"rockslide-trap-blue":{print:"LGS152-Rainbow"},"rosetta-thorn":{print:"ELE222-First"},"spectral-shield":{print:"MST158"},"tripwire-trap-red":{print:"LGS150-Rainbow"},"wreck-havoc-red":{print:"OUT198"}},Ia=(e,r)=>{let{cardIdentifier:t}=e,a=Object.entries(Pa).find(([i])=>i===t);if(a&&r.some(i=>{let[,{print:s}]=a;return i.print===s})){let[,{print:i}]=a;return r.find(s=>s.print===i)||r[0]}else{let i,s;for(let o of r){let{edition:n,image:l,treatment:c}=o,d=!!l,u=l==null?void 0:l.includes("HP");if(d&&!u&&(i||(i=o),!s&&n!=="Promo"&&c!=="Full Art"&&(s=o)),i&&s)break}return s||i||r[0]}}});var ht=br((bs,ut)=>{"use strict";function Yr(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);r&&(a=a.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),t.push.apply(t,a)}return t}function se(e){for(var r=1;r<arguments.length;r++){var t=arguments[r]!=null?arguments[r]:{};r%2?Yr(Object(t),!0).forEach(function(a){Ge(e,a,t[a])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Yr(Object(t)).forEach(function(a){Object.defineProperty(e,a,Object.getOwnPropertyDescriptor(t,a))})}return e}function _e(e){"@babel/helpers - typeof";return _e=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(r){return typeof r}:function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},_e(e)}function O(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}function Xr(e,r){for(var t=0;t<r.length;t++){var a=r[t];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,a.key,a)}}function H(e,r,t){return r&&Xr(e.prototype,r),t&&Xr(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function Ge(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function Y(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Super expression must either be null or a function");Object.defineProperty(e,"prototype",{value:Object.create(r&&r.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),writable:!1}),r&&We(e,r)}function be(e){return be=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)},be(e)}function We(e,r){return We=Object.setPrototypeOf||function(a,i){return a.__proto__=i,a},We(e,r)}function wa(){if(typeof Reflect=="undefined"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(e){return!1}}function za(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Na(e,r){if(r&&(typeof r=="object"||typeof r=="function"))return r;if(r!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return za(e)}function X(e){var r=wa();return function(){var a=be(e),i;if(r){var s=be(this).constructor;i=Reflect.construct(a,arguments,s)}else i=a.apply(this,arguments);return Na(this,i)}}function ae(e){return Oa(e)||Ha(e)||_a(e)||Ga()}function Oa(e){if(Array.isArray(e))return Ke(e)}function Ha(e){if(typeof Symbol!="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function _a(e,r){if(e){if(typeof e=="string")return Ke(e,r);var t=Object.prototype.toString.call(e).slice(8,-1);if(t==="Object"&&e.constructor&&(t=e.constructor.name),t==="Map"||t==="Set")return Array.from(e);if(t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return Ke(e,r)}}function Ke(e,r){(r==null||r>e.length)&&(r=e.length);for(var t=0,a=new Array(r);t<r;t++)a[t]=e[t];return a}function Ga(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
2
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function U(e){return Array.isArray?Array.isArray(e):it(e)==="[object Array]"}var Wa=1/0;function Ka(e){if(typeof e=="string")return e;var r=e+"";return r=="0"&&1/e==-Wa?"-0":r}function $a(e){return e==null?"":Ka(e)}function V(e){return typeof e=="string"}function tt(e){return typeof e=="number"}function ja(e){return e===!0||e===!1||Va(e)&&it(e)=="[object Boolean]"}function at(e){return _e(e)==="object"}function Va(e){return at(e)&&e!==null}function _(e){return e!=null}function He(e){return!e.trim().length}function it(e){return e==null?e===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}var Ja="Incorrect 'index' type",Ua=function(r){return"Invalid value for key ".concat(r)},Ya=function(r){return"Pattern length exceeds max of ".concat(r,".")},Xa=function(r){return"Missing ".concat(r," property in key")},Za=function(r){return"Property 'weight' in key '".concat(r,"' must be a positive integer")},Zr=Object.prototype.hasOwnProperty,Qa=function(){function e(r){var t=this;O(this,e),this._keys=[],this._keyMap={};var a=0;r.forEach(function(i){var s=st(i);a+=s.weight,t._keys.push(s),t._keyMap[s.id]=s,a+=s.weight}),this._keys.forEach(function(i){i.weight/=a})}return H(e,[{key:"get",value:function(t){return this._keyMap[t]}},{key:"keys",value:function(){return this._keys}},{key:"toJSON",value:function(){return JSON.stringify(this._keys)}}]),e}();function st(e){var r=null,t=null,a=null,i=1,s=null;if(V(e)||U(e))a=e,r=Qr(e),t=$e(e);else{if(!Zr.call(e,"name"))throw new Error(Xa("name"));var o=e.name;if(a=o,Zr.call(e,"weight")&&(i=e.weight,i<=0))throw new Error(Za(o));r=Qr(o),t=$e(o),s=e.getFn}return{path:r,id:t,weight:i,src:a,getFn:s}}function Qr(e){return U(e)?e:e.split(".")}function $e(e){return U(e)?e.join("."):e}function qa(e,r){var t=[],a=!1,i=function s(o,n,l){if(_(o))if(!n[l])t.push(o);else{var c=n[l],d=o[c];if(!_(d))return;if(l===n.length-1&&(V(d)||tt(d)||ja(d)))t.push($a(d));else if(U(d)){a=!0;for(var u=0,h=d.length;u<h;u+=1)s(d[u],n,l+1)}else n.length&&s(d,n,l+1)}};return i(e,V(r)?r.split("."):r,0),a?t:t[0]}var ei={includeMatches:!1,findAllMatches:!1,minMatchCharLength:1},ri={isCaseSensitive:!1,includeScore:!1,keys:[],shouldSort:!0,sortFn:function(r,t){return r.score===t.score?r.idx<t.idx?-1:1:r.score<t.score?-1:1}},ti={location:0,threshold:.6,distance:100},ai={useExtendedSearch:!1,getFn:qa,ignoreLocation:!1,ignoreFieldNorm:!1,fieldNormWeight:1},A=se(se(se(se({},ri),ei),ti),ai),ii=/[^ ]+/g;function si(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:1,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:3,t=new Map,a=Math.pow(10,r);return{get:function(s){var o=s.match(ii).length;if(t.has(o))return t.get(o);var n=1/Math.pow(o,.5*e),l=parseFloat(Math.round(n*a)/a);return t.set(o,l),l},clear:function(){t.clear()}}}var Ye=function(){function e(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=r.getFn,a=t===void 0?A.getFn:t,i=r.fieldNormWeight,s=i===void 0?A.fieldNormWeight:i;O(this,e),this.norm=si(s,3),this.getFn=a,this.isCreated=!1,this.setIndexRecords()}return H(e,[{key:"setSources",value:function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];this.docs=t}},{key:"setIndexRecords",value:function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];this.records=t}},{key:"setKeys",value:function(){var t=this,a=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];this.keys=a,this._keysMap={},a.forEach(function(i,s){t._keysMap[i.id]=s})}},{key:"create",value:function(){var t=this;this.isCreated||!this.docs.length||(this.isCreated=!0,V(this.docs[0])?this.docs.forEach(function(a,i){t._addString(a,i)}):this.docs.forEach(function(a,i){t._addObject(a,i)}),this.norm.clear())}},{key:"add",value:function(t){var a=this.size();V(t)?this._addString(t,a):this._addObject(t,a)}},{key:"removeAt",value:function(t){this.records.splice(t,1);for(var a=t,i=this.size();a<i;a+=1)this.records[a].i-=1}},{key:"getValueForItemAtKeyId",value:function(t,a){return t[this._keysMap[a]]}},{key:"size",value:function(){return this.records.length}},{key:"_addString",value:function(t,a){if(!(!_(t)||He(t))){var i={v:t,i:a,n:this.norm.get(t)};this.records.push(i)}}},{key:"_addObject",value:function(t,a){var i=this,s={i:a,$:{}};this.keys.forEach(function(o,n){var l=o.getFn?o.getFn(t):i.getFn(t,o.path);if(_(l)){if(U(l))(function(){for(var d=[],u=[{nestedArrIndex:-1,value:l}];u.length;){var h=u.pop(),p=h.nestedArrIndex,f=h.value;if(_(f))if(V(f)&&!He(f)){var y={v:f,i:p,n:i.norm.get(f)};d.push(y)}else U(f)&&f.forEach(function(v,D){u.push({nestedArrIndex:D,value:v})})}s.$[n]=d})();else if(V(l)&&!He(l)){var c={v:l,n:i.norm.get(l)};s.$[n]=c}}}),this.records.push(s)}},{key:"toJSON",value:function(){return{keys:this.keys,records:this.records}}}]),e}();function nt(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=t.getFn,i=a===void 0?A.getFn:a,s=t.fieldNormWeight,o=s===void 0?A.fieldNormWeight:s,n=new Ye({getFn:i,fieldNormWeight:o});return n.setKeys(e.map(st)),n.setSources(r),n.create(),n}function ni(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},t=r.getFn,a=t===void 0?A.getFn:t,i=r.fieldNormWeight,s=i===void 0?A.fieldNormWeight:i,o=e.keys,n=e.records,l=new Ye({getFn:a,fieldNormWeight:s});return l.setKeys(o),l.setIndexRecords(n),l}function ve(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},t=r.errors,a=t===void 0?0:t,i=r.currentLocation,s=i===void 0?0:i,o=r.expectedLocation,n=o===void 0?0:o,l=r.distance,c=l===void 0?A.distance:l,d=r.ignoreLocation,u=d===void 0?A.ignoreLocation:d,h=a/e.length;if(u)return h;var p=Math.abs(n-s);return c?h+p/c:p?1:h}function oi(){for(var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:A.minMatchCharLength,t=[],a=-1,i=-1,s=0,o=e.length;s<o;s+=1){var n=e[s];n&&a===-1?a=s:!n&&a!==-1&&(i=s-1,i-a+1>=r&&t.push([a,i]),a=-1)}return e[s-1]&&s-a>=r&&t.push([a,s-1]),t}var te=32;function li(e,r,t){var a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},i=a.location,s=i===void 0?A.location:i,o=a.distance,n=o===void 0?A.distance:o,l=a.threshold,c=l===void 0?A.threshold:l,d=a.findAllMatches,u=d===void 0?A.findAllMatches:d,h=a.minMatchCharLength,p=h===void 0?A.minMatchCharLength:h,f=a.includeMatches,y=f===void 0?A.includeMatches:f,v=a.ignoreLocation,D=v===void 0?A.ignoreLocation:v;if(r.length>te)throw new Error(Ya(te));for(var k=r.length,m=e.length,b=Math.max(0,Math.min(s,m)),F=c,B=b,x=p>1||y,M=x?Array(m):[],C;(C=e.indexOf(r,B))>-1;){var T=ve(r,{currentLocation:C,expectedLocation:b,distance:n,ignoreLocation:D});if(F=Math.min(T,F),B=C+k,x)for(var P=0;P<k;)M[C+P]=1,P+=1}B=-1;for(var R=[],w=1,S=k+m,z=1<<k-1,I=0;I<k;I+=1){for(var W=0,G=S;W<G;){var ce=ve(r,{errors:I,currentLocation:b+G,expectedLocation:b,distance:n,ignoreLocation:D});ce<=F?W=G:S=G,G=Math.floor((S-W)/2+W)}S=G;var fr=Math.max(1,b-G+1),Ie=u?m:Math.min(b+G,m)+k,ie=Array(Ie+2);ie[Ie+1]=(1<<I)-1;for(var K=Ie;K>=fr;K-=1){var me=K-1,gr=t[e.charAt(me)];if(x&&(M[me]=+!!gr),ie[K]=(ie[K+1]<<1|1)&gr,I&&(ie[K]|=(R[K+1]|R[K])<<1|1|R[K+1]),ie[K]&z&&(w=ve(r,{errors:I,currentLocation:me,expectedLocation:b,distance:n,ignoreLocation:D}),w<=F)){if(F=w,B=me,B<=b)break;fr=Math.max(1,2*b-B)}}var jt=ve(r,{errors:I+1,currentLocation:b,expectedLocation:b,distance:n,ignoreLocation:D});if(jt>F)break;R=ie}var we={isMatch:B>=0,score:Math.max(.001,w)};if(x){var mr=oi(M,p);mr.length?y&&(we.indices=mr):we.isMatch=!1}return we}function ci(e){for(var r={},t=0,a=e.length;t<a;t+=1){var i=e.charAt(t);r[i]=(r[i]||0)|1<<a-t-1}return r}var ot=function(){function e(r){var t=this,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=a.location,s=i===void 0?A.location:i,o=a.threshold,n=o===void 0?A.threshold:o,l=a.distance,c=l===void 0?A.distance:l,d=a.includeMatches,u=d===void 0?A.includeMatches:d,h=a.findAllMatches,p=h===void 0?A.findAllMatches:h,f=a.minMatchCharLength,y=f===void 0?A.minMatchCharLength:f,v=a.isCaseSensitive,D=v===void 0?A.isCaseSensitive:v,k=a.ignoreLocation,m=k===void 0?A.ignoreLocation:k;if(O(this,e),this.options={location:s,threshold:n,distance:c,includeMatches:u,findAllMatches:p,minMatchCharLength:y,isCaseSensitive:D,ignoreLocation:m},this.pattern=D?r:r.toLowerCase(),this.chunks=[],!!this.pattern.length){var b=function(P,R){t.chunks.push({pattern:P,alphabet:ci(P),startIndex:R})},F=this.pattern.length;if(F>te){for(var B=0,x=F%te,M=F-x;B<M;)b(this.pattern.substr(B,te),B),B+=te;if(x){var C=F-te;b(this.pattern.substr(C),C)}}else b(this.pattern,0)}}return H(e,[{key:"searchIn",value:function(t){var a=this.options,i=a.isCaseSensitive,s=a.includeMatches;if(i||(t=t.toLowerCase()),this.pattern===t){var o={isMatch:!0,score:0};return s&&(o.indices=[[0,t.length-1]]),o}var n=this.options,l=n.location,c=n.distance,d=n.threshold,u=n.findAllMatches,h=n.minMatchCharLength,p=n.ignoreLocation,f=[],y=0,v=!1;this.chunks.forEach(function(k){var m=k.pattern,b=k.alphabet,F=k.startIndex,B=li(t,m,b,{location:l+F,distance:c,threshold:d,findAllMatches:u,minMatchCharLength:h,includeMatches:s,ignoreLocation:p}),x=B.isMatch,M=B.score,C=B.indices;x&&(v=!0),y+=M,x&&C&&(f=[].concat(ae(f),ae(C)))});var D={isMatch:v,score:v?y/this.chunks.length:1};return v&&s&&(D.indices=f),D}}]),e}(),Z=function(){function e(r){O(this,e),this.pattern=r}return H(e,[{key:"search",value:function(){}}],[{key:"isMultiMatch",value:function(t){return qr(t,this.multiRegex)}},{key:"isSingleMatch",value:function(t){return qr(t,this.singleRegex)}}]),e}();function qr(e,r){var t=e.match(r);return t?t[1]:null}var di=function(e){Y(t,e);var r=X(t);function t(a){return O(this,t),r.call(this,a)}return H(t,[{key:"search",value:function(i){var s=i===this.pattern;return{isMatch:s,score:s?0:1,indices:[0,this.pattern.length-1]}}}],[{key:"type",get:function(){return"exact"}},{key:"multiRegex",get:function(){return/^="(.*)"$/}},{key:"singleRegex",get:function(){return/^=(.*)$/}}]),t}(Z),ui=function(e){Y(t,e);var r=X(t);function t(a){return O(this,t),r.call(this,a)}return H(t,[{key:"search",value:function(i){var s=i.indexOf(this.pattern),o=s===-1;return{isMatch:o,score:o?0:1,indices:[0,i.length-1]}}}],[{key:"type",get:function(){return"inverse-exact"}},{key:"multiRegex",get:function(){return/^!"(.*)"$/}},{key:"singleRegex",get:function(){return/^!(.*)$/}}]),t}(Z),hi=function(e){Y(t,e);var r=X(t);function t(a){return O(this,t),r.call(this,a)}return H(t,[{key:"search",value:function(i){var s=i.startsWith(this.pattern);return{isMatch:s,score:s?0:1,indices:[0,this.pattern.length-1]}}}],[{key:"type",get:function(){return"prefix-exact"}},{key:"multiRegex",get:function(){return/^\^"(.*)"$/}},{key:"singleRegex",get:function(){return/^\^(.*)$/}}]),t}(Z),pi=function(e){Y(t,e);var r=X(t);function t(a){return O(this,t),r.call(this,a)}return H(t,[{key:"search",value:function(i){var s=!i.startsWith(this.pattern);return{isMatch:s,score:s?0:1,indices:[0,i.length-1]}}}],[{key:"type",get:function(){return"inverse-prefix-exact"}},{key:"multiRegex",get:function(){return/^!\^"(.*)"$/}},{key:"singleRegex",get:function(){return/^!\^(.*)$/}}]),t}(Z),fi=function(e){Y(t,e);var r=X(t);function t(a){return O(this,t),r.call(this,a)}return H(t,[{key:"search",value:function(i){var s=i.endsWith(this.pattern);return{isMatch:s,score:s?0:1,indices:[i.length-this.pattern.length,i.length-1]}}}],[{key:"type",get:function(){return"suffix-exact"}},{key:"multiRegex",get:function(){return/^"(.*)"\$$/}},{key:"singleRegex",get:function(){return/^(.*)\$$/}}]),t}(Z),gi=function(e){Y(t,e);var r=X(t);function t(a){return O(this,t),r.call(this,a)}return H(t,[{key:"search",value:function(i){var s=!i.endsWith(this.pattern);return{isMatch:s,score:s?0:1,indices:[0,i.length-1]}}}],[{key:"type",get:function(){return"inverse-suffix-exact"}},{key:"multiRegex",get:function(){return/^!"(.*)"\$$/}},{key:"singleRegex",get:function(){return/^!(.*)\$$/}}]),t}(Z),lt=function(e){Y(t,e);var r=X(t);function t(a){var i,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=s.location,n=o===void 0?A.location:o,l=s.threshold,c=l===void 0?A.threshold:l,d=s.distance,u=d===void 0?A.distance:d,h=s.includeMatches,p=h===void 0?A.includeMatches:h,f=s.findAllMatches,y=f===void 0?A.findAllMatches:f,v=s.minMatchCharLength,D=v===void 0?A.minMatchCharLength:v,k=s.isCaseSensitive,m=k===void 0?A.isCaseSensitive:k,b=s.ignoreLocation,F=b===void 0?A.ignoreLocation:b;return O(this,t),i=r.call(this,a),i._bitapSearch=new ot(a,{location:n,threshold:c,distance:u,includeMatches:p,findAllMatches:y,minMatchCharLength:D,isCaseSensitive:m,ignoreLocation:F}),i}return H(t,[{key:"search",value:function(i){return this._bitapSearch.searchIn(i)}}],[{key:"type",get:function(){return"fuzzy"}},{key:"multiRegex",get:function(){return/^"(.*)"$/}},{key:"singleRegex",get:function(){return/^(.*)$/}}]),t}(Z),ct=function(e){Y(t,e);var r=X(t);function t(a){return O(this,t),r.call(this,a)}return H(t,[{key:"search",value:function(i){for(var s=0,o,n=[],l=this.pattern.length;(o=i.indexOf(this.pattern,s))>-1;)s=o+l,n.push([o,s-1]);var c=!!n.length;return{isMatch:c,score:c?0:1,indices:n}}}],[{key:"type",get:function(){return"include"}},{key:"multiRegex",get:function(){return/^'"(.*)"$/}},{key:"singleRegex",get:function(){return/^'(.*)$/}}]),t}(Z),je=[di,ct,hi,pi,gi,fi,ui,lt],et=je.length,mi=/ +(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)/,yi="|";function ki(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return e.split(yi).map(function(t){for(var a=t.trim().split(mi).filter(function(f){return f&&!!f.trim()}),i=[],s=0,o=a.length;s<o;s+=1){for(var n=a[s],l=!1,c=-1;!l&&++c<et;){var d=je[c],u=d.isMultiMatch(n);u&&(i.push(new d(u,r)),l=!0)}if(!l)for(c=-1;++c<et;){var h=je[c],p=h.isSingleMatch(n);if(p){i.push(new h(p,r));break}}}return i})}var vi=new Set([lt.type,ct.type]),bi=function(){function e(r){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=t.isCaseSensitive,i=a===void 0?A.isCaseSensitive:a,s=t.includeMatches,o=s===void 0?A.includeMatches:s,n=t.minMatchCharLength,l=n===void 0?A.minMatchCharLength:n,c=t.ignoreLocation,d=c===void 0?A.ignoreLocation:c,u=t.findAllMatches,h=u===void 0?A.findAllMatches:u,p=t.location,f=p===void 0?A.location:p,y=t.threshold,v=y===void 0?A.threshold:y,D=t.distance,k=D===void 0?A.distance:D;O(this,e),this.query=null,this.options={isCaseSensitive:i,includeMatches:o,minMatchCharLength:l,findAllMatches:h,ignoreLocation:d,location:f,threshold:v,distance:k},this.pattern=i?r:r.toLowerCase(),this.query=ki(this.pattern,this.options)}return H(e,[{key:"searchIn",value:function(t){var a=this.query;if(!a)return{isMatch:!1,score:1};var i=this.options,s=i.includeMatches,o=i.isCaseSensitive;t=o?t:t.toLowerCase();for(var n=0,l=[],c=0,d=0,u=a.length;d<u;d+=1){var h=a[d];l.length=0,n=0;for(var p=0,f=h.length;p<f;p+=1){var y=h[p],v=y.search(t),D=v.isMatch,k=v.indices,m=v.score;if(D){if(n+=1,c+=m,s){var b=y.constructor.type;vi.has(b)?l=[].concat(ae(l),ae(k)):l.push(k)}}else{c=0,n=0,l.length=0;break}}if(n){var F={isMatch:!0,score:c/n};return s&&(F.indices=l),F}}return{isMatch:!1,score:1}}}],[{key:"condition",value:function(t,a){return a.useExtendedSearch}}]),e}(),De=[];function Di(){De.push.apply(De,arguments)}function Ve(e,r){for(var t=0,a=De.length;t<a;t+=1){var i=De[t];if(i.condition(e,r))return new i(e,r)}return new ot(e,r)}var Ae={AND:"$and",OR:"$or"},Je={PATH:"$path",PATTERN:"$val"},Ue=function(r){return!!(r[Ae.AND]||r[Ae.OR])},Ai=function(r){return!!r[Je.PATH]},Bi=function(r){return!U(r)&&at(r)&&!Ue(r)},rt=function(r){return Ge({},Ae.AND,Object.keys(r).map(function(t){return Ge({},t,r[t])}))};function dt(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=t.auto,i=a===void 0?!0:a,s=function o(n){var l=Object.keys(n),c=Ai(n);if(!c&&l.length>1&&!Ue(n))return o(rt(n));if(Bi(n)){var d=c?n[Je.PATH]:l[0],u=c?n[Je.PATTERN]:n[d];if(!V(u))throw new Error(Ua(d));var h={keyId:$e(d),pattern:u};return i&&(h.searcher=Ve(u,r)),h}var p={children:[],operator:l[0]};return l.forEach(function(f){var y=n[f];U(y)&&y.forEach(function(v){p.children.push(o(v))})}),p};return Ue(e)||(e=rt(e)),s(e)}function Mi(e,r){var t=r.ignoreFieldNorm,a=t===void 0?A.ignoreFieldNorm:t;e.forEach(function(i){var s=1;i.matches.forEach(function(o){var n=o.key,l=o.norm,c=o.score,d=n?n.weight:null;s*=Math.pow(c===0&&d?Number.EPSILON:c,(d||1)*(a?1:l))}),i.score=s})}function Ci(e,r){var t=e.matches;r.matches=[],_(t)&&t.forEach(function(a){if(!(!_(a.indices)||!a.indices.length)){var i=a.indices,s=a.value,o={indices:i,value:s};a.key&&(o.key=a.key.src),a.idx>-1&&(o.refIndex=a.idx),r.matches.push(o)}})}function Fi(e,r){r.score=e.score}function Ei(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=t.includeMatches,i=a===void 0?A.includeMatches:a,s=t.includeScore,o=s===void 0?A.includeScore:s,n=[];return i&&n.push(Ci),o&&n.push(Fi),e.map(function(l){var c=l.idx,d={item:r[c],refIndex:c};return n.length&&n.forEach(function(u){u(l,d)}),d})}var ne=function(){function e(r){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=arguments.length>2?arguments[2]:void 0;O(this,e),this.options=se(se({},A),t),this.options.useExtendedSearch,this._keyStore=new Qa(this.options.keys),this.setCollection(r,a)}return H(e,[{key:"setCollection",value:function(t,a){if(this._docs=t,a&&!(a instanceof Ye))throw new Error(Ja);this._myIndex=a||nt(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight})}},{key:"add",value:function(t){_(t)&&(this._docs.push(t),this._myIndex.add(t))}},{key:"remove",value:function(){for(var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:function(){return!1},a=[],i=0,s=this._docs.length;i<s;i+=1){var o=this._docs[i];t(o,i)&&(this.removeAt(i),i-=1,s-=1,a.push(o))}return a}},{key:"removeAt",value:function(t){this._docs.splice(t,1),this._myIndex.removeAt(t)}},{key:"getIndex",value:function(){return this._myIndex}},{key:"search",value:function(t){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=a.limit,s=i===void 0?-1:i,o=this.options,n=o.includeMatches,l=o.includeScore,c=o.shouldSort,d=o.sortFn,u=o.ignoreFieldNorm,h=V(t)?V(this._docs[0])?this._searchStringList(t):this._searchObjectList(t):this._searchLogical(t);return Mi(h,{ignoreFieldNorm:u}),c&&h.sort(d),tt(s)&&s>-1&&(h=h.slice(0,s)),Ei(h,this._docs,{includeMatches:n,includeScore:l})}},{key:"_searchStringList",value:function(t){var a=Ve(t,this.options),i=this._myIndex.records,s=[];return i.forEach(function(o){var n=o.v,l=o.i,c=o.n;if(_(n)){var d=a.searchIn(n),u=d.isMatch,h=d.score,p=d.indices;u&&s.push({item:n,idx:l,matches:[{score:h,value:n,norm:c,indices:p}]})}}),s}},{key:"_searchLogical",value:function(t){var a=this,i=dt(t,this.options),s=function c(d,u,h){if(!d.children){var p=d.keyId,f=d.searcher,y=a._findMatches({key:a._keyStore.get(p),value:a._myIndex.getValueForItemAtKeyId(u,p),searcher:f});return y&&y.length?[{idx:h,item:u,matches:y}]:[]}for(var v=[],D=0,k=d.children.length;D<k;D+=1){var m=d.children[D],b=c(m,u,h);if(b.length)v.push.apply(v,ae(b));else if(d.operator===Ae.AND)return[]}return v},o=this._myIndex.records,n={},l=[];return o.forEach(function(c){var d=c.$,u=c.i;if(_(d)){var h=s(i,d,u);h.length&&(n[u]||(n[u]={idx:u,item:d,matches:[]},l.push(n[u])),h.forEach(function(p){var f,y=p.matches;(f=n[u].matches).push.apply(f,ae(y))}))}}),l}},{key:"_searchObjectList",value:function(t){var a=this,i=Ve(t,this.options),s=this._myIndex,o=s.keys,n=s.records,l=[];return n.forEach(function(c){var d=c.$,u=c.i;if(_(d)){var h=[];o.forEach(function(p,f){h.push.apply(h,ae(a._findMatches({key:p,value:d[f],searcher:i})))}),h.length&&l.push({idx:u,item:d,matches:h})}}),l}},{key:"_findMatches",value:function(t){var a=t.key,i=t.value,s=t.searcher;if(!_(i))return[];var o=[];if(U(i))i.forEach(function(p){var f=p.v,y=p.i,v=p.n;if(_(f)){var D=s.searchIn(f),k=D.isMatch,m=D.score,b=D.indices;k&&o.push({score:m,key:a,value:f,idx:y,norm:v,indices:b})}});else{var n=i.v,l=i.n,c=s.searchIn(n),d=c.isMatch,u=c.score,h=c.indices;d&&o.push({score:u,key:a,value:n,norm:l,indices:h})}return o}}]),e}();ne.version="6.6.2";ne.createIndex=nt;ne.parseIndex=ni;ne.config=A;ne.parseQuery=dt;Di(bi);var Ti=ne;ut.exports=Ti});var ys={};qt(ys,{FilterProperty:()=>Ze,PUNCTUATION:()=>E,abbreviations:()=>Xe,availableExclusions:()=>Ot,availableModifiers:()=>Nt,default:()=>Gt,filterCard:()=>Wt,filtersToCardPropertyMappings:()=>Le,getAbbreviation:()=>Be,getAbbreviationByCard:()=>Si,getCardByName:()=>lr,getCleanText:()=>cr,getExcludedMetaFilters:()=>qe,getKeywordsAndAppliedFiltersFromText:()=>or,getMetaFilters:()=>Qe,getNormalizedText:()=>pe,getRelatedCards:()=>pr,getRelatedCardsByName:()=>Re,getTokensReferencedByCards:()=>ms,multiWordShorthands:()=>rr,shorthands:()=>er,singleWordShorthands:()=>tr});module.exports=ea(ys);var fe=q(re()),dr=q(ht());var E=/[!"#$%&'’(),./:;<=>?@[\]^_`|~]/g;var g=q(re());var Be=e=>Xe.find(({abbreviations:r})=>r.find(t=>t.toLowerCase()===e)),Si=e=>Xe.find(({card:r})=>r.toLowerCase()===e.name.toLowerCase()),Xe=[{abbreviations:["10k"],card:"10,000 Year Reunion"},{abbreviations:["Pajamas","PJs"],card:"Alluvion Constellas"},{abbreviations:["Slippy","Arakni Slipped Through the Cracks","Arakni, Slipped Through the Cracks"],card:"Arakni, 5L!p3d 7hRu 7h3 cR4X"},{abbreviations:["Dullcap"],card:"Arcanite Skullcap"},{abbreviations:["ALS"],card:"Arc Light Sentinel"},{abbreviations:["AoW"],card:"Art of War"},{abbreviations:["BBD"],card:"Barraging Beatdown"},{abbreviations:["BBS"],card:"Big Blue Sky"},{abbreviations:["Starvo"],card:"Bravo, Star of the Show"},{abbreviations:["BEB"],card:"Bull's Eye Bracers"},{abbreviations:["BLW"],card:"Be Like Water"},{abbreviations:["BoJ"],card:"Balance of Justice"},{abbreviations:["BOHH"],card:"Blood on Her Hands"},{abbreviations:["BRB"],card:"Bloodrush Bellow"},{abbreviations:["Breezies"],card:"Breeze Rider Boots"},{abbreviations:["BTA"],card:"Burn Them All"},{abbreviations:["CStrike","C-Strike","C Strike"],card:"Celestial Cataclysm"},{abbreviations:["CBelly"],card:"Cerebellum Processor"},{abbreviations:["CLF"],card:"Channel Lake Frigid"},{abbreviations:["CLV"],card:"Channel Lightning Valley"},{abbreviations:["CMH"],card:"Channel Mount Heroic"},{abbreviations:["CMI"],card:"Channel Mount Isen"},{abbreviations:["CMT"],card:"Channel the Millennium Tree"},{abbreviations:["CnC","C&C"],card:"Command and Conquer"},{abbreviations:["Sea and Sea"],card:"Conqueror of the High Seas"},{abbreviations:["CYB"],card:"Count Your Blessings"},{abbreviations:["Cat","Kitty"],card:"Crouching Tiger"},{abbreviations:["CoD"],card:"Crown of Dominion"},{abbreviations:["CoP"],card:"Crown of Providence"},{abbreviations:["CtW"],card:"Crush the Weak"},{abbreviations:["DD"],card:"Death Dealer"},{abbreviations:["DnD"],card:"Devotion Never Dies"},{abbreviations:["DIO"],card:"Dash I/O"},{abbreviations:["EBTT"],card:"Even Bigger Than That!"},{abbreviations:["NewNigma"],card:"Enigma, New Moon"},{abbreviations:["EPot","E Pot"],card:"Energy Potion"},{abbreviations:["EStrike","E-Strike","E Strike"],card:"Enlightened Strike"},{abbreviations:["FFS"],card:"Fyendal's Fighting Spirit"},{abbreviations:["FoN"],card:"Force of Nature"},{abbreviations:["Frosty","\u{1F976}","\u{1F9CA}","\u2744\uFE0F"],card:"Frostbite"},{abbreviations:["Yum yum"],card:"Fruits of the Forest"},{abbreviations:["GnT"],card:"Give and Take"},{abbreviations:["Habibi"],card:"Hanabi Blaster"},{abbreviations:["HMH"],card:"Hope Merchant's Hood"},{abbreviations:["HoI"],card:"Heart of Ice"},{abbreviations:["Pumpkin"],card:"Jack-o'-lantern"},{abbreviations:["KKBB"],card:"Knick Knack Bric-a-brac"},{abbreviations:["BStrike"],card:"Levels of Enlightenment"},{abbreviations:["LAG","Twominaris"],card:"Luminaris, Angel's Glow"},{abbreviations:["LCF","Newminaris"],card:"Luminaris, Celestial Fury"},{abbreviations:["LDE"],card:"Last Ditch Effort"},{abbreviations:["LtC"],card:"Lead the Charge"},{abbreviations:["LNW"],card:"Leave No Witnesses"},{abbreviations:["LFaL","L4aL"],card:"Life for a Life"},{abbreviations:["LiT"],card:"Lost in Thought"},{abbreviations:["MMB"],card:"Mage Master Boots"},{abbreviations:["MaxV"],card:"Maximum Velocity"},{abbreviations:["MoM"],card:"Mask of Momentum"},{abbreviations:["MnG"],card:"Meat and Greet"},{abbreviations:["Cake","\u{1F382}"],card:"Ninth Blade of the Blood Oath"},{abbreviations:["PoM"],card:"Peace of Mind"},{abbreviations:["P-Bone"],card:"Performance Bonus"},{abbreviations:["PF","\u{1F525}"],card:"Phoenix Flame"},{abbreviations:["PtW"],card:"Poison the Well"},{abbreviations:["Thanos","Infinity Gauntlet"],card:"Polarity Reversal Script"},{abbreviations:["DPot","D Pot"],card:"Potion of D\xE9j\xE0 Vu"},{abbreviations:["Ponder Run"],card:"Premeditate"},{abbreviations:["Qi Unbound"],card:"Qi Unleashed"},{abbreviations:["RitL"],card:"Red in the Ledger"},{abbreviations:["Cats","Ghost cat","Ghost cats"],card:"Restless Coalescence"},{abbreviations:["SSGB"],card:"Sandscour Greatbow"},{abbreviations:["SSP"],card:"Sand Sketched Plan"},{abbreviations:["SFaS","S4aS"],card:"Scar for a Scar"},{abbreviations:["SWOMB"],card:"Shifting Winds of the Mystic Beast"},{abbreviations:["SWK"],card:"Spinning Wheel Kick"},{abbreviations:["SFTL"],card:"Swing Fist, Think Later"},{abbreviations:["TTT"],card:"Take the Tempo"},{abbreviations:["Ultron"],card:"Teklovossen, the Mechropotent"},{abbreviations:["ToS"],card:"Test of Strength"},{abbreviations:["TAYG"],card:"That All You Got?"},{abbreviations:["TROM"],card:"This Round's on Me"},{abbreviations:["3oak"],card:"Three of a Kind"},{abbreviations:["Pox Malone","Post Malone"],card:"Virulent Touch"},{abbreviations:["Cast Homes"],card:"Visit Goldmane Estate"},{abbreviations:["Frosty Hammer"],card:"Winter's Wail"},{abbreviations:["Wreckless Wing"],card:"War Cry of Bellona"},{abbreviations:["ZTS"],card:"Zero to Sixty"}];var N=q(re());var Ze=(t=>(t.LegalFormats="legalFormats",t.LegalHeroes="legalHeroes",t))(Ze||{}),Ee=Array.from(Array(50).keys()).map(e=>`${e}`),xi=[{format:N.Format.BlitzLivingLegend,nicknames:["blitz ll"]},{format:N.Format.ClassicConstructed,nicknames:["cc","classic"]},{format:N.Format.ClassicConstructedLivingLegend,nicknames:["cc ll","classic constructed ll","ll cc","ll","living legend"]},{format:N.Format.ProjectBlue,nicknames:["pb"]},{format:N.Format.UltimatePitFight,nicknames:["upf"]}],Li=Object.values(N.Format).map(e=>{let r=xi.find(({format:a})=>a===e),t=e.toLowerCase().replaceAll(E,"");return r?j($({},r),{format:t}):{format:t}}),Ri=[{hero:N.Hero.DataDoll,nicknames:["data","datadoll"]},{hero:N.Hero.Dorinthea,nicknames:["dori"]},{hero:N.Hero.Genis,nicknames:["genis"]},{hero:N.Hero.GravyBones,nicknames:["gravy"]},{hero:N.Hero.Iyslander,nicknames:["islander"]}],Pi=Object.values(N.Hero).map(e=>{let r=Ri.find(({hero:a})=>a===e),t=e.toLowerCase().replaceAll(E,"");return r?j($({},r),{hero:t}):{hero:t}}),Me=["common","rare","super rare","majestic","legendary","fabled"],Ii=(e,r,t)=>{let a=[];if(!r)a.push(...e);else for(let i of e)switch(r){case">=":let s=!1;for(let c of Me)s?a.push(c):c===i&&(s=!0,a.push(c));break;case">":let o=!1;for(let c of Me)o?a.push(c):c===i&&(o=!0);break;case"<=":let n=!1;for(let c of Me.slice().reverse())n?a.push(c):c===i&&(n=!0,a.push(c));break;case"<":let l=!1;for(let c of Me.slice().reverse())l?a.push(c):c===i&&(l=!0);break;default:break}return{filterToPropertyMapping:{nestedProperty:"rarity",property:"printings",isArray:!0},isOr:!0,values:a,excluded:t}},wi=(e,r)=>{let t=[],a=[],i=[];for(let s of e){let o=Li.find(({format:n,nicknames:l})=>n===s||!!l&&l.includes(s));if(o)a.push(o.format);else{let n=Pi.find(({hero:l,nicknames:c})=>l===s||!!c&&c.includes(s));n&&i.push(n.hero)}}return a.length>0&&t.push({filterToPropertyMapping:{property:"legalFormats",isArray:!0},values:a,isOr:!0,excluded:r}),i.length>0&&t.push({filterToPropertyMapping:{property:"legalHeroes",isArray:!0},values:i,isOr:!0,excluded:r}),t},Qe=(e,r,t,a)=>{let i=[];return Oi(r)?i.push(...wi(t,e)):_i(r)&&i.push(Ii(t,a,e)),i},oe=[{filterToPropertyMapping:{property:"cost",isNumber:!0},values:Ee,excluded:!0},{filterToPropertyMapping:{property:"specialCost",isString:!0,partialMatch:!0},values:["*","x"],excluded:!0},{filterToPropertyMapping:{property:"types",isArray:!0,partialMatch:!0},values:["equipment","hero","placeholder","token","weapon"],excluded:!0}],J=[{filterToPropertyMapping:{property:"defense",isNumber:!0},values:Ee,excluded:!0},{filterToPropertyMapping:{property:"specialDefense",isString:!0,partialMatch:!0},values:["*","x"],excluded:!0},{filterToPropertyMapping:{property:"types",isArray:!0,partialMatch:!0},values:["hero","placeholder","token","weapon"],excluded:!0}],Ce=[{filterToPropertyMapping:{property:"pitch",isNumber:!0},excluded:!0,values:Ee},{filterToPropertyMapping:{property:"types",isArray:!0,partialMatch:!0},values:["equipment","hero","placeholder","token","weapon"],excluded:!0},{filterToPropertyMapping:{property:"isCardBack",isBoolean:!0},values:["true"],excluded:!0}],Q=[{filterToPropertyMapping:{property:"power",isNumber:!0},excluded:!0,values:Ee},{filterToPropertyMapping:{property:"specialPower",isString:!0,partialMatch:!0},values:["*","x"],excluded:!0},{filterToPropertyMapping:{property:"types",isArray:!0,partialMatch:!0},values:["equipment","hero","placeholder","token"],excluded:!0}],Fe=[{filterToPropertyMapping:{property:"talents",isArray:!0},excluded:!0,values:Object.values(N.Talent).map(e=>e.toLowerCase())}],zi={"!co":oe,"-co":oe,"!cost":oe,"-cost":oe,"!color":oe,"-color":oe,"!b":J,"-b":J,"!block":J,"-block":J,"!d":J,"-d":J,"!def":J,"-def":J,"!defense":J,"-defense":J,"!pitch":Ce,"-pitch":Ce,"!p":Ce,"-p":Ce,"!attack":Q,"-attack":Q,"!power":Q,"-power":Q,"!pwr":Q,"-pwr":Q,"!pow":Q,"-pow":Q,"!talents":Fe,"-talents":Fe,"!tal":Fe,"-tal":Fe},qe=e=>{let r=[],t=zi[e];return t&&r.push(...t),r},Ni=["l","legal","hero"],Oi=e=>Ni.includes(e),Hi=["r","rarity"],_i=e=>Hi.includes(e);var er=[{description:"Attack actions",filters:["st:attack"],shorthands:["AA"]},{description:"Arcane barrier",filters:['k:"arcane barrier"'],shorthands:["AB"]},{description:"Attack reactions",filters:['t:"attack reaction"'],shorthands:["AR"]},{description:"Defense reactions",filters:['t:"defense reaction"'],shorthands:["DR"]},{description:"Flick daggers",filters:["dagger you control deal 1 damage"],shorthands:["Flick","Hurl","Throw"]},{description:"Gain life",filters:["gain {h}"],shorthands:["Gain life","Gains life"]},{description:"Go again",filters:['k:"go again"'],shorthands:["GA"]},{description:"Non-attack actions",filters:["t:action","st:non-attack"],shorthands:["NAA"]},{description:"Plus defense",filters:["+ {d}"],shorthands:["Pump defense","Pumps defense","Buff defense","Buffs defense"]},{description:"Plus power",filters:["+ {p}"],shorthands:["Pumps","Pump","Buff","Buffs","Pump attack","Pump attacks","Pumps attack","Pumps attacks","Buff attack","Buff attacks","Buffs attack","Buffs attacks","Pump power","Pumps power","Buff power","Buffs power"]},{description:"Poppers",filters:["!c:illusionist","st:attack","pwr:>=6","def:>=0"],helper:'6+ power non-Illusionist attacks that can "pop" phantasm attacks when defending',shorthands:["Poppers","Popper"]},{description:"Spellvoid",filters:['k:"spellvoid"'],shorthands:["SV"]},{description:"Tap",filters:["{t}"],shorthands:["Tap"]}],rr=er.filter(({shorthands:e})=>e.some(r=>r.includes(" "))).map(e=>j($({},e),{shorthands:e.shorthands.filter(r=>r.includes(" ")).map(r=>r.toLowerCase()).sort((r,t)=>t.length-r.length)})),tr=er.filter(({shorthands:e})=>e.some(r=>!r.includes(" "))).map(e=>j($({},e),{shorthands:e.shorthands.filter(r=>!r.includes(" ")).map(r=>r.toLowerCase()).sort((r,t)=>t.length-r.length)}));var Nt=[">=",">","<=","<"],Ot=["!","-"],Gi={property:"arcane",specialProperty:"specialArcane",isNumber:!0,partialMatch:!0},ar={property:"artists",isArray:!0,partialMatch:!0},pt={property:"bannedFormats",isArray:!0,partialMatch:!0},ft={property:"bonds",isArray:!0},Wi={property:"n/a"},gt={property:"classes",isArray:!0,partialMatch:!0},mt={property:"cost",specialProperty:"specialCost",isNumber:!0,partialMatch:!0},he={property:"defense",specialProperty:"specialDefense",isNumber:!0},yt={property:"flows",isArray:!0},kt={nestedProperty:"foiling",property:"printings",isArray:!0},vt={property:"fusions",isArray:!0},bt={property:"intellect",isNumber:!0},Dt={property:"keywords",isArray:!0,partialMatch:!0},ir={property:"n/a",isMeta:!0},At={property:"life",specialProperty:"specialLife",isNumber:!0},Bt={property:"meta",isArray:!0},Mt={property:"name",isString:!0,partialMatch:!0},sr={property:"pitch",isNumber:!0},Te={property:"power",specialProperty:"specialPower",isNumber:!0},Ct={property:"n/a",isMeta:!0},Ki={property:"n/a"},$i={property:"n/a"},Ft={property:"sets",isArray:!0,partialMatch:!0},Se={property:"specializations",isArray:!0,partialMatch:!0},Et={property:"subtypes",isArray:!0},Tt={property:"types",isArray:!0},St={property:"talents",isArray:!0},ji={property:"functionalText",isString:!0,partialMatch:!0},Vi={property:"traits",isArray:!0,partialMatch:!0},Ji={property:"typeText",isString:!0,partialMatch:!0},xe={nestedProperty:"treatments",property:"printings",isArray:!0,isNestedPropertyArray:!0},Le={arcane:Gi,a:ar,artist:ar,art:ar,attack:Te,b:he,block:he,banned:pt,bond:ft,bonds:ft,c:gt,class:gt,chain:Wi,co:mt,cost:mt,color:sr,d:he,def:he,defense:he,flow:yt,flows:yt,f:vt,fusion:vt,foil:kt,foiling:kt,i:bt,intellect:bt,is:Bt,k:Dt,keyword:Dt,l:ir,legal:ir,hero:ir,li:At,life:At,meta:Bt,n:Mt,name:Mt,p:sr,pitch:sr,pwr:Te,pow:Te,power:Te,r:Ct,rarity:Ct,referencedby:Ki,references:$i,rf:pt,s:Ft,set:Ft,sp:Se,spec:Se,specialization:Se,specializations:Se,st:Et,subtype:Et,t:Tt,type:Tt,tal:St,talent:St,text:ji,trait:Vi,treat:xe,treatment:xe,var:xe,variation:xe,x:Ji},Ui=[{text:g.Release.ClassicBattlesRhinarDorinthea.toLowerCase(),override:g.Release.ClassicBattlesRhinarDorinthea.toLowerCase().replaceAll(E,"")}],Yi=e=>{var i;let r=[],t=e.replaceAll("\u201D",'"');for(let{text:s,override:o}of Ui)t.includes(s)&&(t=t.replace(s,o));if((i=Be(t))==null?void 0:i.card)r.push(t);else{let s=t.split(/[ ]+/),o="",n=0;for(let l of s)n===2&&(r.push(o.trim().replaceAll('"',"")),o="",n=0),n<2&&l.split('"').length===2?(o+=" "+l,n++):n===0&&o===""?r.push(l):n===1&&(o+=" "+l);n===2&&(r.push(o.trim().replaceAll('"',"")),o="",n=0)}return r},ws=[g.Hero.Briar,g.Hero.Brutus,g.Hero.Emperor,g.Hero.Prism,g.Hero.Shiyana,g.Hero.Taylor,g.Hero.Yorick],or=(e,r)=>{var f;let t=e.trim().toLowerCase();for(let{filters:y,shorthands:v}of rr)for(let D of v)if(t.includes(D)){t=t.replace(D,y.join(" "));break}for(let[y,v]of Object.entries(g.setToSetIdentifierMappings))t.includes(y.toLowerCase())&&(t=t.replace(y.toLowerCase(),v[0]));let a=Yi(t),i=[];for(let y of a){let v=tr.find(({shorthands:D})=>D.includes(y));v?i.push(...v.filters):i.push(y)}let s=[],o=[],n=[],l=[],c=!1,d=[],u=[],h=[],p={isClash:!1};for(let y of i)if(ss(y)){let[v,D]=y.split(":"),{modifier:k,values:m,isAnd:b,isOr:F}=as(D),{filterKey:B,excluded:x,isMeta:M}=is(v);if(M)["rarity","r"].includes(B)&&(d=ts(m),m=d.map(C=>C.toLowerCase())),["legal","l","hero"].includes(B)&&D.includes("clash")&&(p.isClash=!0),s.push(...Qe(x,B,m,k));else{if(["chain"].includes(B)){let C=z=>z.name.toLowerCase().replaceAll(E,""),T=m.map(z=>lr(z,r)).filter(z=>!!z).map(C),P=new Set(T);B="name",F=!0;let R=20,w=0,S=z=>{if(!z.types.includes(g.Type.Hero)){let I=C(z);P.add(I),T.includes(I)||T.push(I)}};for(let z of T){if(w>R)break;let{referencedBy:I,references:W}=Re(z,r);W.forEach(S),w===0&&I.forEach(S),w++}m=Array.from(P)}else if(["referencedby","references"].includes(B)){let C=B,T=[...m].filter(P=>!!P);m=[],B="name",F=!0;for(let P of T){let{referencedBy:R,references:w}=Re(P,r);["referencedby"].includes(C)?m.push(...w.map(({name:S})=>S.toLowerCase().replaceAll(E,""))):["references"].includes(C)&&m.push(...R.map(({name:S})=>S.toLowerCase().replaceAll(E,"")))}}else if(["art","artist"].includes(B))o=m;else if(["is","is","meta"].includes(B)){let C=qi(m);m=C.map(T=>T.toLowerCase().replaceAll(E,"")),C.includes(g.Meta.Expansion)&&!x&&(c=!0)}else["foiling","foil"].includes(B)?(l=es(m),m=l.map(C=>C.toLowerCase())):["treat","treatment","var","variation"].includes(B)?(h=rs(m),m=h.map(C=>C.toLowerCase())):["set","s"].includes(B)?(u=Xi(m),m=u.map(C=>C.toLowerCase().replaceAll(E,""))):["pitch","p","color"].includes(B)&&(m=Qi(m));Le[B]&&s.push({filterToPropertyMapping:Le[B],values:m,isAnd:b,isOr:F,modifier:k,excluded:x})}}else if(y){let v=(f=Be(y))==null?void 0:f.card,D=qe(y);v?n.push(`"${v.toLowerCase().replace(E,"")}"`):D&&D.length>0?s.push(...D):n.push(y.replace(E,""))}return{appliedFilters:s,attributes:{artists:o,foilings:l,isExpansionSlot:c,rarities:d,releases:u,treatments:h},keywords:n,specialConditions:p}},Xi=e=>{let r=[];for(let t of e)r.push(...Zi(t));return r},Zi=e=>{let r=[],t=Object.values(g.Release).find(a=>a.toLowerCase().replaceAll(E,"")===e);if(t&&r.push(t),r.length===0){let a=g.setIdentifierToSetMappings[e];a&&r.push(a)}if(r.length===0){let a=Object.values(g.Release).filter(i=>i.toLowerCase().includes(e));a.length>0&&r.push(...a)}return r},nr={blue:3,yellow:2,red:1,white:0},Qi=e=>{let r=[];for(let t of e)nr[t]||nr[t]===0?r.push(nr[t].toString()):r.push(t);return r},xt={exp:g.Meta.Expansion,expansion:g.Meta.Expansion,expansionSlot:g.Meta.Expansion,rainbow:g.Meta.Rainbow},qi=e=>{let r=[];for(let t of e)xt[t]&&r.push(xt[t]);return r},Lt={r:g.Foiling.R,rf:g.Foiling.R,rainbow:g.Foiling.R,c:g.Foiling.C,cf:g.Foiling.C,cold:g.Foiling.C,g:g.Foiling.G,gf:g.Foiling.G,gold:g.Foiling.G},es=e=>{let r=[];for(let t of e)Lt[t]&&r.push(Lt[t]);return r},Rt=j($({},Object.values(g.Treatment).reduce((e,r)=>(e[r.toLowerCase()]=r,e),{})),{aa:g.Treatment.AA,alt:g.Treatment.AA,"alt art":g.Treatment.AA,ab:g.Treatment.AB,"alt border":g.Treatment.AB,at:g.Treatment.AT,"alt text":g.Treatment.AT,ea:g.Treatment.EA,extended:g.Treatment.EA,"extended art":g.Treatment.EA,fa:g.Treatment.FA,full:g.Treatment.FA,"full art":g.Treatment.FA}),rs=e=>{let r=[];for(let t of e)Rt[t]?r.push(Rt[t]):g.Treatment[t.toUpperCase()]&&r.push(g.Treatment[t.toUpperCase()]);return r},Pt={c:g.Rarity.Common,f:g.Rarity.Fabled,l:g.Rarity.Legendary,m:g.Rarity.Majestic,v:g.Rarity.Marvel,r:g.Rarity.Rare,s:g.Rarity.SuperRare,t:g.Rarity.Token},ts=e=>{let r=[];for(let t of e)Pt[t]?r.push(Pt[t]):r.push(t);return r},as=e=>{let r=[],t,a,i=Nt.find(s=>e.includes(s));if(i){let[,s]=e.split(i);It(s)?(t=!0,r.push(...s.trim().split("+").map(o=>o.replace(E,"")))):wt(s)?(a=!0,r.push(...s.trim().split(",").map(o=>o.replace(E,"")))):r.push(s.trim().replace(E,""))}else It(e)?(t=!0,r.push(...e.trim().split("+").map(s=>s.replace(E,"")))):wt(e)?(a=!0,r.push(...e.trim().split(",").map(s=>s.replace(E,"")))):e.startsWith('"')&&e.endsWith('"')?r.push(e.trim().replaceAll('"',"").replace(E,"")):r.push(e.trim().replace(E,""));return{modifier:i,values:r,isAnd:t,isOr:a}},is=e=>{let r=ns(e);if(r){let[,t]=e.split(r);return{excluded:!0,filterKey:t,isMeta:zt(t)}}else return{excluded:!1,filterKey:e,isMeta:zt(e)}},ss=e=>e.indexOf(":")>=0,It=e=>e.indexOf("+")>=0,wt=e=>e.indexOf(",")>=0,zt=e=>{var r;return!!((r=Le[e])!=null&&r.isMeta)},ns=e=>{var r;return(r=Ot.find(t=>e.includes(t)))==null?void 0:r.slice(0,1)};var L=q(re()),Ht={artists:["Hoodwill"],cardIdentifier:"fangs-a-lot-blue",classes:[L.Class.Generic],defaultImage:"FNG000",functionalText:"If Fangs A Lot is put into your banished zone from your graveyard, instead put it into your hand.",legalFormats:[],legalHeroes:[L.Hero.Kayo,L.Hero.Levia,L.Hero.Rhinar],printings:[{artists:["Hoodwill"],identifier:"FNG000",image:"FNG000",print:"FNG000",rarity:L.Rarity.Rare,set:L.Release.Promos},{artists:["Hoodwill"],identifier:"FNG000",image:"FNG000_Marvel",print:`FNG000-${L.Treatment.FA}`,rarity:L.Rarity.Marvel,set:L.Release.Promos,treatment:L.Treatment.FA}],name:"Fangs A Lot",rarities:[L.Rarity.Rare,L.Rarity.Marvel],rarity:L.Rarity.Rare,sets:[L.Release.Promos],setIdentifiers:["FNG000"],specialImage:"FNG000_Marvel",subtypes:[L.Subtype.Attack],types:[L.Type.Action],typeText:"Generic Action - Attack"},_t=[{keyword:Ht.name.toLowerCase(),card:Ht}];var lr=(e,r)=>{let t=r.find(a=>cr(a.name)===e);return t||(t=r.find(a=>cr(a.name).includes(e))),t},cr=e=>pe(e.toLowerCase().trim().replace(E,"")),pe=e=>e.normalize("NFD").replace(new RegExp("\\p{Diacritic}","gu"),"");var ur=class{constructor(r,t=!1){this.log=(r,...t)=>{this.debug&&console.log(r,...t)};this.search=(r,t)=>{let a,{appliedFilters:i,attributes:s,keywords:o,specialConditions:n}=or(r,this.cards),l=o.join(" "),c=t?_t.filter(k=>k.keyword===l):[];if(c.length>0?a=c.map(({card:k})=>k):o.length?a=this.fuse.search(l).map(k=>k.item):a=[...this.cards],i.length&&(a=a.filter(k=>k&&Wt(k,i,n))),o.length===0){let k="";if(s.releases.length===1)try{let m=s.releases[0];k=fe.setToSetIdentifierMappings[m][0].toUpperCase()}catch(m){console.error("Error getting set identifier from search",m)}k?a.sort((m,b)=>{var x,M;let F=(x=m.setIdentifiers.find(C=>C.includes(k)))==null?void 0:x.replace(k,""),B=(M=b.setIdentifiers.find(C=>C.includes(k)))==null?void 0:M.replace(k,"");return F&&B?F.localeCompare(B):-1}):a.sort((m,b)=>m.name===b.name?`${m.pitch}`.localeCompare(`${b.pitch}`):m.name.localeCompare(b.name))}else{let k=[],m=[],b=o.map(F=>F.toLowerCase().replace(E,"")).join(" ");for(let F of a)F.name.toLowerCase().replace(E,"")===b?k.push(F):m.push(F);a=[...k,...m]}let d,{artists:u,isExpansionSlot:h,foilings:p,releases:f,treatments:y}=s;(u.length>0||h||p.length>0||f.length>0||y.length>0)&&(d=a.map(k=>{let m=k.printings.filter(b=>{let F=!!b.image,B=u.length===0||u.some(R=>b.artists.find(w=>w.replace(E,"").toLowerCase().includes(R))),x=(h||void 0)===b.isExpansionSlot,M=p.length===0||p.includes(b.foiling),C=f.length===0||f.includes(b.set),T=y.length===0||y.includes(b.treatment);return F&&B&&x&&M&&C&&T});return j($({},k),{matchingPrintings:m})}));let D=(d==null?void 0:d.length)>0?d:a;return{appliedFilters:i,attributes:s,keywords:o,searchResults:D}};let a={getFn:(i,s)=>{let o=dr.default.config.getFn(i,s);return o&&(Array.isArray(o)?o.map(n=>pe(n.replace(E,""))):pe(o).replace(E,""))},ignoreLocation:!0,includeScore:!0,keys:[{name:"name",weight:10},{name:"functionalText",weight:6},{name:"setIdentifiers",weight:2},{name:"traits",weight:4},{name:"typeText",weight:6}],threshold:.15,useExtendedSearch:!0};this.cards=[...r],this.debug=t,this.fuse=new dr.default([...r],a)}},Gt=ur,Wt=(e,r,t)=>{let a=!0;for(let i of r){let{isNumber:s,isString:o,isArray:n,isBoolean:l,property:c}=i.filterToPropertyMapping;(s&&!os(e,i)||o&&!ls(e,i)||n&&!cs(e,i,r)||l&&!ds(e,i))&&(a=!1);let d=!!e.legalOverrides&&!!e.legalOverrides[fe.Format.Clash]&&e.legalOverrides[fe.Format.Clash].length>0,u=t.isClash&&d}return a},os=(e,r)=>{var t;if(Pe(r,e)){let{values:a,modifier:i,excluded:s,filterToPropertyMapping:{partialMatch:o}}=r,n=hr(e,r);if(n!=null&&!isNaN(n))if(n=parseInt(n),i)switch(i){case">=":let l=a==null?void 0:a.some(h=>n>=parseInt(h));return s?!l:l;case">":let c=a==null?void 0:a.some(h=>n>parseInt(h));return s?!c:c;case"<=":let d=a==null?void 0:a.some(h=>n<=parseInt(h));return s?!d:d;case"<":let u=a==null?void 0:a.some(h=>n<parseInt(h));return s?!u:u;default:return!1}else{let l=a==null?void 0:a.some(c=>n===parseInt(c));return s?!l:l}else{let l=(t=hs(e,r))==null?void 0:t.toLowerCase(),c=o?a==null?void 0:a.some(d=>l==null?void 0:l.includes(d)):a==null?void 0:a.some(d=>l===d);return s?!c:c}}else return!0},ls=(e,r)=>{var t;if(Pe(r,e)){let{values:a,isAnd:i,excluded:s,filterToPropertyMapping:{partialMatch:o}}=r,n=(t=hr(e,r))==null?void 0:t.replaceAll(E,"");if(o){let l=i?a==null?void 0:a.every(c=>n==null?void 0:n.toLowerCase().includes(c)):a==null?void 0:a.some(c=>n==null?void 0:n.toLowerCase().includes(c));return s?!l:l}else{let l=i?a==null?void 0:a.every(c=>(n==null?void 0:n.toLowerCase())===c):a==null?void 0:a.some(c=>(n==null?void 0:n.toLowerCase())===c);return s?!l:l}}else return!0},cs=(e,r,t)=>{if(Pe(r,e)){let{values:a,isAnd:i,excluded:s,filterToPropertyMapping:{partialMatch:o}}=r,n=us(e,r,t).map(l=>l==null?void 0:l.replaceAll(E,""));if(o){let l=i?a.every(d=>n==null?void 0:n.some(u=>u==null?void 0:u.toLowerCase().includes(d))):a.some(d=>n==null?void 0:n.some(u=>u==null?void 0:u.toLowerCase().includes(d))),c=n.length===0;return s?!l||c:l}else{let l=i?a.every(c=>n==null?void 0:n.some(d=>(d==null?void 0:d.toLowerCase())===c)):a.some(c=>n==null?void 0:n.some(d=>(d==null?void 0:d.toLowerCase())===c));return s?!l:l}}else return!0},ds=(e,r)=>{if(Pe(r,e)){let{excluded:t}=r,a=hr(e,r);return t?!a:a}else return!0},hr=(e,r)=>{let{filterToPropertyMapping:t}=r;return e[t.property]},us=(e,r,t)=>{let{filterToPropertyMapping:{isNestedPropertyArray:a,nestedProperty:i,property:s}}=r,o=e[s]||[],n=[],l=Object.keys(e.legalOverrides||{}).length>0,c=r.filterToPropertyMapping.property==="legalHeroes",d=t.find(({filterToPropertyMapping:h})=>h.property==="legalFormats");if(l&&c&&!!d){let h=new Set;for(let{format:p,heroes:f}of e.legalOverrides||[])if(d.values.includes(p.toLowerCase()))for(let y of f)h.add(y);n=Array.from(h)}if(n.length===0)if(i){let h=new Set;for(let p of o)if(a){let f=p[i]||[];for(let y of f)h.add(y)}else{let f=p[i];f&&h.add(f)}n=Array.from(h)}else n=o;return n},hs=(e,r)=>{let{filterToPropertyMapping:t}=r;return e[t.specialProperty]},Pe=({cardTypes:e},{types:r,subtypes:t})=>!e||(e==null?void 0:e.some(a=>r.map(i=>i.toLowerCase()).includes(a.toLowerCase())||t.map(i=>i.toLowerCase()).includes(a.toLowerCase())));var le=q(re());var ge=q(re()),ps={"Dawnblade, Resplendent":"Dawnblade"},Kt=e=>ps[e.name]||e.name,$t=e=>{var r;return(r=e.functionalText)==null?void 0:r.replaceAll(e.name,"")},Re=(e,r)=>{let t=r.find(a=>a.name.toLowerCase().replace(E,"")===e);return t||(t=r.find(a=>a.name.toLowerCase().replace(E,"").includes(e))),pr(t,r)},pr=(e,r)=>{var s,o,n,l,c;let t=[],a=[],i=[];if(e){let d=[],u=[],h=Kt(e);for(let p of r){let f=Kt(p),y=h===f,v=e.cardIdentifier!==p.cardIdentifier,D=e.pitch!==p.pitch;if(y&&v&&D)t.push(p);else if(!y){let k=e.name==="Seismic Surge",m=(s=p.keywords)==null?void 0:s.includes(ge.Keyword.Heave),b=k&&m,F=e.name==="Marked",B=(o=p.keywords)==null?void 0:o.includes(ge.Keyword.Mark),x=F&&B,M=$t(p),C=(M==null?void 0:M.includes(h))||((n=e.traits)==null?void 0:n.some(ce=>M==null?void 0:M.includes(ce))),T=$t(e);(C||b||x)&&d.push(p);let P=p.traits||[],R=(T==null?void 0:T.includes(f))||P.some(ce=>T==null?void 0:T.includes(ce)),w=p.name==="Seismic Surge",S=(l=e.keywords)==null?void 0:l.includes(ge.Keyword.Heave),z=w&&S,I=p.name==="Marked",W=(c=e.keywords)==null?void 0:c.includes(ge.Keyword.Mark);(R||z||I&&W)&&u.push(p)}}for(let p of d)a.push(p);for(let p of u){let f=p.name;h!==f&&!u.some(y=>{let v=y.name;return v!==f&&(v==null?void 0:v.includes(f))})&&i.push(p)}}return{otherPitches:t,referencedBy:a,references:i}},fs=["cash-in-yellow"],gs={[le.Hero.Crackni]:{traits:[le.Trait.AgentOfChaos]},[le.Hero.Maxx]:{tokens:["hyper-driver"]}},ms=(e,r,t)=>{var i,s;let a=new Set;for(let o of e.filter(({cardIdentifier:n})=>!fs.includes(n))){let{references:n}=pr(o,r);for(let l of n.filter(c=>{let d=c.name==="Hyper Driver",u=t===le.Hero.Maxx;return!d||u}))a.add(l)}if(t){let o=gs[t];if(o){if(o.cards)for(let n of e)(i=o.cards)!=null&&i.includes(n.cardIdentifier)&&a.add(n);if(o.tokens)for(let n of r)(s=o.tokens)!=null&&s.includes(n.cardIdentifier)&&a.add(n)}}return Array.from(a)};0&&(module.exports={FilterProperty,PUNCTUATION,abbreviations,availableExclusions,availableModifiers,filterCard,filtersToCardPropertyMappings,getAbbreviation,getAbbreviationByCard,getCardByName,getCleanText,getExcludedMetaFilters,getKeywordsAndAppliedFiltersFromText,getMetaFilters,getNormalizedText,getRelatedCards,getRelatedCardsByName,getTokensReferencedByCards,multiWordShorthands,shorthands,singleWordShorthands});
1
+ var Vt=Object.create;var de=Object.defineProperty,Jt=Object.defineProperties,Ut=Object.getOwnPropertyDescriptor,Yt=Object.getOwnPropertyDescriptors,Xt=Object.getOwnPropertyNames,yr=Object.getOwnPropertySymbols,Zt=Object.getPrototypeOf,vr=Object.prototype.hasOwnProperty,Qt=Object.prototype.propertyIsEnumerable;var kr=(e,r,t)=>r in e?de(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,$=(e,r)=>{for(var t in r||(r={}))vr.call(r,t)&&kr(e,t,r[t]);if(yr)for(var t of yr(r))Qt.call(r,t)&&kr(e,t,r[t]);return e},j=(e,r)=>Jt(e,Yt(r));var br=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports),qt=(e,r)=>{for(var t in r)de(e,t,{get:r[t],enumerable:!0})},Dr=(e,r,t,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let i of Xt(r))!vr.call(e,i)&&i!==t&&de(e,i,{get:()=>r[i],enumerable:!(a=Ut(r,i))||a.enumerable});return e};var q=(e,r,t)=>(t=e!=null?Vt(Zt(e)):{},Dr(r||!e||!e.__esModule?de(t,"default",{value:e,enumerable:!0}):t,e)),ea=e=>Dr(de({},"__esModule",{value:!0}),e);var re=br((bs,Ur)=>{var ye=Object.defineProperty,ra=Object.defineProperties,ta=Object.getOwnPropertyDescriptor,aa=Object.getOwnPropertyDescriptors,ia=Object.getOwnPropertyNames,Ar=Object.getOwnPropertySymbols,Mr=Object.prototype.hasOwnProperty,sa=Object.prototype.propertyIsEnumerable,Br=(e,r,t)=>r in e?ye(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,na=(e,r)=>{for(var t in r||(r={}))Mr.call(r,t)&&Br(e,t,r[t]);if(Ar)for(var t of Ar(r))sa.call(r,t)&&Br(e,t,r[t]);return e},oa=(e,r)=>ra(e,aa(r)),la=(e,r)=>{for(var t in r)ye(e,t,{get:r[t],enumerable:!0})},ca=(e,r,t,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let i of ia(r))!Mr.call(e,i)&&i!==t&&ye(e,i,{get:()=>r[i],enumerable:!(a=ta(r,i))||a.enumerable});return e},da=e=>ca(ye({},"__esModule",{value:!0}),e),Cr={};la(Cr,{Bond:()=>Sr,Class:()=>Tr,Flow:()=>xr,Foiling:()=>Fr,Format:()=>Lr,Fusion:()=>Rr,Hero:()=>Wr,Keyword:()=>Kr,Language:()=>jr,Meta:()=>Ir,Metatype:()=>Hr,Rarity:()=>Pr,Release:()=>wr,ReleaseEdition:()=>zr,ReleaseType:()=>Vr,Subtype:()=>Gr,Talent:()=>Nr,Trait:()=>Or,Treatment:()=>Er,Type:()=>_r,coreSetIdentifiers:()=>Aa,fullSetIdentifiers:()=>Oe,getCanAddToDeck:()=>fa,getCanCardBeTokenForDeck:()=>pa,getCardIdentifier:()=>ua,getDefaultPrinting:()=>wa,getIsArenaCard:()=>$r,getIsBooster:()=>ya,getIsCardTokenForDeck:()=>ke,getIsDeckCard:()=>Ne,getIsDraftable:()=>va,getIsPreconstructed:()=>Da,getIsReprint:()=>ka,getPrint:()=>Sa,getShouldRotateCardImage:()=>ga,getSpecialPrinting:()=>Pa,orderedFullSetBlackBorderIdentifiers:()=>xa,promoSetIdentifiers:()=>Ma,releases:()=>Ca,setIdentifierToSetMappings:()=>Jr,setToSetIdentifierMappings:()=>Fa,supplementalSetIdentifiers:()=>Ba});Ur.exports=da(Cr);var Fr=(e=>(e.C="Cold",e.G="Gold",e.R="Rainbow",e))(Fr||{}),Er=(e=>(e.AB="Alternate Border",e.AA="Alternate Art",e.AT="Alternate Text",e.EA="Extended Art",e.FA="Full Art",e))(Er||{}),Tr=(e=>(e.NotClassed="NotClassed",e.Generic="Generic",e.Adjudicator="Adjudicator",e.Assassin="Assassin",e.Bard="Bard",e.Brute="Brute",e.Guardian="Guardian",e.Illusionist="Illusionist",e.Mechanologist="Mechanologist",e.Merchant="Merchant",e.Necromancer="Necromancer",e.Ninja="Ninja",e.Pirate="Pirate",e.Ranger="Ranger",e.Runeblade="Runeblade",e.Shapeshifter="Shapeshifter",e.Warrior="Warrior",e.Wizard="Wizard",e))(Tr||{}),Sr=(e=>(e.Earth="Earth",e))(Sr||{}),xr=(e=>(e.Lightning="Lightning",e))(xr||{}),Lr=(e=>(e.Blitz="Blitz",e.BlitzLivingLegend="Blitz (Living Legend)",e.Clash="Clash",e.ClassicConstructed="Classic Constructed",e.ClassicConstructedLivingLegend="Classic Constructed (Living Legend)",e.Commoner="Commoner",e.Draft="Draft",e.Open="Open",e.ProjectBlue="Project Blue",e.Sealed="Sealed",e.UltimatePitFight="Ultimate Pit Fight",e))(Lr||{}),Rr=(e=>(e.Earth="Earth",e.Ice="Ice",e.Lightning="Lightning",e))(Rr||{}),Pr=(e=>(e.Basic="Basic",e.Token="Token",e.Common="Common",e.Rare="Rare",e.SuperRare="Super Rare",e.Majestic="Majestic",e.Marvel="Marvel",e.Legendary="Legendary",e.Fabled="Fabled",e.Promo="Promo",e))(Pr||{}),Ir=(e=>(e.Expansion="Expansion slot",e.Rainbow="Rainbow",e))(Ir||{}),wr=(e=>(e.ArcaneRising="Arcane Rising",e.BrightLights="Bright Lights",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.Outsiders="Outsiders",e.PartTheMistveil="Part the Mistveil",e.Rosetta="Rosetta",e.TalesOfAria="Tales of Aria",e.TheHunted="The Hunted",e.Uprising="Uprising",e.WelcomeToRathe="Welcome to Rathe",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.ArmoryDeckMaxx="Armory Deck: Maxx",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.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.DromaiBlitzDeck="Dromai Blitz Deck",e.EnigmaBlitzDeck="Enigma Blitz Deck",e.FaiBlitzDeck="Fai 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.BravoDemoDeck="Bravo Demo Deck",e.ClassicBattlesRhinarDorinthea="Classic Battles: Rhinar vs Dorinthea",e.MasteryPackGuardian="Mastery Pack: Guardian",e.IraWelcomeDeck="Ira Welcome Deck",e.RoundTheTable="Round the Table: TCC x LSS",e.GEM="GEM",e.Promos="Promos",e))(wr||{}),zr=(e=>(e.Alpha="Alpha",e.First="First",e.Unlimited="Unlimited",e.Promo="Promo",e))(zr||{}),Nr=(e=>(e.Chaos="Chaos",e.Draconic="Draconic",e.Earth="Earth",e.Elemental="Elemental",e.Ice="Ice",e.Light="Light",e.Lightning="Lightning",e.Mystic="Mystic",e.Royal="Royal",e.Shadow="Shadow",e))(Nr||{}),Or=(e=>(e.AgentOfChaos="Agent of Chaos",e))(Or||{}),Hr=(e=>(e.Arakni="Arakni",e.HighSeas="High Seas",e.Puffin="Puffin",e.Rosetta="Rosetta",e))(Hr||{}),_r=(e=>(e.Action="Action",e.AttackReaction="Attack Reaction",e.Block="Block",e.Companion="Companion",e.DefenseReaction="Defense Reaction",e.DemiHero="Demi-Hero",e.Equipment="Equipment",e.Hero="Hero",e.Instant="Instant",e.Macro="Macro",e.Mentor="Mentor",e.Resource="Resource",e.Token="Token",e.Weapon="Weapon",e))(_r||{}),Gr=(e=>(e.OneHanded="1H",e.TwoHanded="2H",e.Affliction="Affliction",e.Ally="Ally",e.Angel="Angel",e.Arms="Arms",e.Arrow="Arrow",e.Ash="Ash",e.Attack="Attack",e.Aura="Aura",e.Axe="Axe",e.Base="Base",e.Book="Book",e.Bow="Bow",e.Cannon="Cannon",e.Chest="Chest",e.Chi="Chi",e.Claw="Claw",e.Club="Club",e.Construct="Construct",e.Dagger="Dagger",e.Demon="Demon",e.Dragon="Dragon",e.Evo="Evo",e.Fiddle="Fiddle",e.Figment="Figment",e.Flail="Flail",e.Gem="Gem",e.Gun="Gun",e.Hammer="Hammer",e.Head="Head",e.Invocation="Invocation",e.Item="Item",e.Landmark="Landmark",e.Lute="Lute",e.Legs="Legs",e.NonAttack="Non-Attack",e.OffHand="Off-Hand",e.Orb="Orb",e.Pistol="Pistol",e.Polearm="Polearm",e.Quiver="Quiver",e.Rock="Rock",e.Shuriken="Shuriken",e.Scepter="Scepter",e.Scroll="Scroll",e.Scythe="Scythe",e.Song="Song",e.Staff="Staff",e.Sword="Sword",e.Trap="Trap",e.Wrench="Wrench",e.Young="Young",e))(Gr||{}),Wr=(e=>(e.Arakni="Arakni",e.Aurora="Aurora",e.Azalea="Azalea",e.Benji="Benji",e.Betsy="Betsy",e.Blaze="Blaze",e.Boltyn="Boltyn",e.Bravo="Bravo",e.Brevant="Brevant",e.Briar="Briar",e.Brutus="Brutus",e.Chane="Chane",e.Cindra="Cindra",e.Crackni="Crackni",e.Dash="Dash",e.DataDoll="Data Doll",e.Dorinthea="Dorinthea",e.Dromai="Dromai",e.Emperor="Emperor",e.Enigma="Enigma",e.Fai="Fai",e.Fang="Fang",e.Florian="Florian",e.Genis="Genis",e.GravyBones="Gravy Bones",e.Ira="Ira",e.Iyslander="Iyslander",e.Jarl="Jarl",e.Kano="Kano",e.Kassai="Kassai",e.Katsu="Katsu",e.Kavdaen="Kavdaen",e.Kayo="Kayo",e.Levia="Levia",e.Lexi="Lexi",e.Marlynn="Marlynn",e.Maxx="Maxx",e.Melody="Melody",e.Nuu="Nuu",e.Oldhim="Oldhim",e.Olympia="Olympia",e.Oscilio="Oscilio",e.Prism="Prism",e.Puffin="Puffin",e.Rhinar="Rhinar",e.Riptide="Riptide",e.Ruudi="Ruu'di",e.Shiyana="Shiyana",e.Slippy="Slippy",e.Squizzy="Squizzy",e.Starvo="Starvo",e.Taipanis="Taipanis",e.Taylor="Taylor",e.Teklovossen="Teklovossen",e.Terra="Terra",e.Theryon="Theryon",e.Uzuri="Uzuri",e.Valda="Valda",e.Verdance="Verdance",e.Victor="Victor",e.Vynnset="Vynnset",e.Viserai="Viserai",e.Yorick="Yorick",e.Yoji="Yoji",e.Zen="Zen",e))(Wr||{}),Kr=(e=>(e.Ambush="Ambush",e.Amp="Amp",e.ArcaneBarrier="Arcane Barrier",e.ArcaneShelter="Arcane Shelter",e.Awaken="Awaken",e.Battleworn="Battleworn",e.BeatChest="Beat Chest",e.BladeBreak="Blade Break",e.BloodDebt="Blood Debt",e.Boost="Boost",e.Bond="Bond",e.Channel="Channel",e.Charge="Charge",e.Clash="Clash",e.Cloaked="Cloaked",e.Combo="Combo",e.Contract="Contract",e.Crank="Crank",e.Crush="Crush",e.Decompose="Decompose",e.Dominate="Dominate",e.Ephemeral="Ephemeral",e.Essence="Essence",e.EvoUpgrade="Evo Upgrade",e.Flow="Flow",e.Freeze="Freeze",e.Fusion="Fusion",e.Galvanize="Galvanize",e.GoAgain="Go again",e.GoFish="Go Fish",e.Guardwell="Guardwell",e.Heave="Heave",e.Heavy="Heavy",e.HighTide="High Tide",e.Intimidate="Intimidate",e.Legendary="Legendary",e.Mark="Mark",e.Material="Material",e.Meld="Meld",e.Modular="Modular",e.Mirage="Mirage",e.Negate="Negate",e.Opt="Opt",e.Overpower="Overpower",e.Pairs="Pairs",e.Piercing="Piercing",e.Phantasm="Phantasm",e.Protect="Protect",e.Quell="Quell",e.Reload="Reload",e.Reprise="Reprise",e.Retrieve="Retrieve",e.RuneGate="Rune Gate",e.Rupture="Rupture",e.Scrap="Scrap",e.Solflare="Solflare",e.Specialization="Specialization",e.Spectra="Spectra",e.Spellvoid="Spellvoid",e.Steal="Steal",e.Stealth="Stealth",e.Surge="Surge",e.Temper="Temper",e.Tower="Tower",e.Transform="Transform",e.Transcend="Transcend",e.Unlimited="Unlimited",e.Universal="Universal",e.Unfreeze="Unfreeze",e.Unity="Unity",e.Wager="Wager",e.Ward="Ward",e.WateryGrave="Watery Grave",e))(Kr||{}),ua=(e,r)=>{let{name:t,pitch:a}=e,i=t.trim().toLowerCase().replace("//","-").normalize("NFD").replace(new RegExp("\\p{Diacritic}","gu"),"").replace(/ /g,"-").replace("\xF0","d").replace("\u0111","d").replace("\xED","i").replace(/[^a-z0-9 -]/g,"").replace(/--/,"-"),s="";switch(a){case"1":case 1:s=r?"-1":"-red";break;case"2":case 2:s=r?"-2":"-yellow";break;case"3":case 3:s=r?"-3":"-blue";break}return`${i}${s}`},$r=({keywords:e,traits:r,types:t})=>{let a=Ne({keywords:e,traits:r,types:t}),i=ke({keywords:e,traits:r,types:t}),s=["Companion","Demi-Hero","Equipment","Weapon"].some(o=>t.includes(o));return!a&&!i&&s},Ne=({keywords:e,traits:r,types:t})=>{let a=["Action","Attack Reaction","Block","Defense Reaction","Instant","Mentor","Resource"].some(s=>t.includes(s)),i=ke({keywords:e,traits:r,types:t});return a&&!i},ke=({keywords:e,traits:r,types:t})=>{let a=!!r&&(r==null?void 0:r.includes("Agent of Chaos")),i=!!e&&e.includes("Ephemeral"),s=["Macro","Token"].some(o=>t.includes(o));return a||i||s},ha=["cracked-bauble-yellow","goldfin-harpoon"],pa=e=>{let r=ha.includes(e.cardIdentifier),t=ke(e),a=e.isCardBack&&e.cardIdentifier!=="inner-chi-blue";return r||t||a},fa=({isCardBack:e,keywords:r,traits:t,types:a})=>{let i=$r({keywords:r,traits:t,types:a}),s=Ne({keywords:r,traits:t,types:a});return!e&&(i||s)},ga=e=>{var r,t,a;let i=(r=e.keywords)==null?void 0:r.includes("Meld"),s=!((t=e.types)!=null&&t.includes("Macro"))&&((a=e.subtypes)==null?void 0:a.includes("Landmark"));return i||s},jr=(e=>(e.English="English",e.French="Fran\xE7ais",e.German="Deutsch",e.Italian="Italiano",e.Japanese="\u65E5\u672C\u8A9E",e.Spanish="Espa\xF1ol",e))(jr||{}),ue=["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],ee=["English","Fran\xE7ais","\u65E5\u672C\u8A9E"],Vr=(e=>(e.ArmoryDeck="Armory Deck",e.BlitzDeck="Blitz Deck",e.ClassicBattles="Classic Battles",e.ExpansionBooster="Expansion Booster",e.FirstStrike="1st Strike",e.HistoryPack="History Pack",e.MasteryPack="Mastery Pack",e.RoundTheTable="Round the Table",e.StandaloneBooster="Standalone Booster",e.WelcomeDeck="Welcome Deck",e))(Vr||{}),ma=["Expansion Booster","Standalone Booster"],ya=e=>ma.includes(e),ka=e=>e==="History Pack",va=e=>e==="Standalone Booster",ba=["Armory Deck","Blitz Deck","Classic Battles","1st Strike","Round the Table","Welcome Deck"],Da=e=>ba.includes(e),Aa={wtr:"Welcome to Rathe",arc:"Arcane Rising",mon:"Monarch",ele:"Tales of Aria",upr:"Uprising",out:"Outsiders",evo:"Bright Lights",hvy:"Heavy Hitters",mst:"Part the Mistveil",ros:"Rosetta"},Ba={cru:"Crucible of War",evr:"Everfest","1hp":"History Pack 1",hp1:"History Pack 1",dyn:"Dynasty",dtd:"Dusk till Dawn"},Ma=["fab","her","jdg","lgs","lss","oxo","xxx","win"],Ca=[{cards:30,classes:["Ninja"],deckLinks:[{url:"https://fabrary.net/decks/01GJG7Z4WGWSZ95FY74KX4M557"}],heroes:["Ira"],languages:ue,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:ue,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:ue,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:ue,release:"Arakni Hunted Blitz Deck",relatedReleases:[],releaseDate:"2025-01-31 12:00",releaseType:"Blitz Deck",setIdentifiers:["ark"],talents:["Chaos"]},{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:ue,raritiesExcludedInLimited:["Legendary","Fabled"],release:"The Hunted",relatedReleases:[],releaseDate:"2025-01-31 12:00",releaseType:"Standalone Booster",setIdentifiers:["hnt"],talents:["Chaos","Draconic","Royal"],url:"https://fabtcg.com/en/articles/hnt/"},{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:[],heroes:["Gravy Bones"],languages:ee,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"],deckLinks:[],draft:{heroIdentifiers:["gravy-bones","marlynn","puffin"],picksPerPack:14},heroes:["Gravy Bones","Marlynn","Puffin"],languages:ee,raritiesExcludedInLimited:["Fabled","Legendary"],release:"High Seas",relatedReleases:[],releaseDate:"2025-06-06 12:00",releaseType:"Standalone Booster",setIdentifiers:["sea"],talents:[]},{cards:30,classes:["Ninja"],deckLinks:[],heroes:["Ira"],languages:ee,release:"Armory Deck: Ira",relatedReleases:[],releaseDate:"2025-07-11 12:00",releaseType:"Armory Deck",setIdentifiers:["asr"],talents:[]},{cards:30,classes:["Runeblade"],deckLinks:[],heroes:["Viserai"],languages:ee,release:"Armory Deck Legends: Viserai",relatedReleases:[],releaseDate:"2025-07-24 12:00",releaseType:"Armory Deck",setIdentifiers:["avs"],talents:[]},{cards:30,classes:["Illusionist"],deckLinks:[],heroes:["Prism"],languages:ee,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:ee,release:"Mastery Pack: Guardian",relatedReleases:[],releaseDate:"2025-08-08 12:00",releaseType:"Expansion Booster",setIdentifiers:["mpg"],talents:[]},{cards:30,classes:["Guardian"],deckLinks:[],heroes:["Bravo"],languages:ee,release:"Bravo Demo Deck",relatedReleases:[],releaseDate:"2025-08-08 12:00",releaseType:"Welcome Deck",setIdentifiers:["bdd"],talents:[]}],Oe={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"},Jr=oa(na({},Oe),{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",apr:"Armory Deck Legends: Prism",avs:"Armory Deck Legends: Viserai",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",dro:"Dromai Blitz Deck",eng:"Enigma Blitz Deck",fai:"Fai 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",aur:"1st Strike: Aurora",ter:"1st Strike: Terra",bdd:"Bravo 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",bvo:"Bravo Hero Deck",tea:"Dorinthea Hero Deck",ksu:"Katsu Hero Deck",rnr:"Rhinar Hero Deck",gem:"GEM",fab:"Promos",her:"Promos",jdg:"Promos",lgs:"Promos",lss:"Promos",oxo:"Promos",xxx:"Promos",win:"Promos"}),ze={};for(let[e,r]of Object.entries(Jr)){let t=ze[r];t?t.push(e):ze[r]=[e]}var Fa=ze,Ea={},Ta={MST158_V3:"-V3",ROS162_V2:"-V2","ROS008-MV_V2_BACK":"-V3"},Sa=e=>{var r,t,a;let i=Ea[e.set]||"",s=`${e.identifier}${i}`,o=e.edition?`-${e.edition}`:"",n=e.foiling?`-${e.foiling}`:"",l=(r=e.treatments)!=null&&r.length?`-${e.treatments.sort().join("-")}`:e.treatment?`-${e.treatment}`:"",c=(t=e.image)!=null&&t.toLowerCase().includes("back")?"-Back":"",d=Ta[((a=e.image)==null?void 0:a.toUpperCase())||""]||"";return`${s}${o}${n}${l}${c}${d}`},xa=Object.keys(Oe).filter(e=>!e.toLowerCase().includes("hp")).reverse().map(e=>e.toUpperCase()),La={"adaptive-plating":{print:"EVO013-Cold"},"command-and-conquer-red":{print:"DYN000-Cold-Alternate Art-Extended Art"},"cracked-bauble-yellow":{print:"LGS083-Cold"},"fate-foreseen-red":{print:"FAB024-Rainbow"},"pitfall-trap-yellow":{print:"LGS151-Rainbow"},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"}},Ra=["JDG044-Full Art-Back"],Pa=(e,r)=>{let{cardIdentifier:t}=e,a=Object.entries(La).find(([i])=>i===t);if(a&&r.some(i=>{let[,{print:s}]=a;return i.print===s})){let[,{print:i}]=a;return r.find(s=>s.print===i)||r[0]}else{let i,s,o,n,l,c,d,u,h,p,f,y,v,D,k,m,b,F,B,x;for(let M of r){let{edition:C,foiling:T,identifier:P,image:R,print:w,treatments:S}=M,z=P.toLowerCase().includes("win"),I=!!R,W=R==null?void 0:R.includes("HP"),G=Ra.includes(w);if(I&&!z&&!W&&!G){if(i||(i=M),S!=null&&S.includes("Full Art")&&(h=M,T==="Cold"&&(c=M,R.includes("_V3")))){d=M;break}S!=null&&S.includes("Extended Art")&&(u=M,T==="Cold"&&(l=M),T||(p=M),C==="Promo"&&(f=M)),S!=null&&S.includes("Alternate Art")&&(s=M),S!=null&&S.includes("Alternate Border")&&(o=M),S!=null&&S.includes("Alternate Text")&&(n=M),R&&(R.includes("_V2")||R.includes("-MV"))&&S!=null&&S.includes("Full Art")&&(v=M),C==="Alpha"?D=M:C==="First"?k=M:C==="Promo"?m=M:C==="Unlimited"&&(b=M),T==="Cold"?(F=M,C==="Promo"&&(x=M)):T==="Gold"&&(B=M)}}return y||d||c||h||l||v||f||p||u||o||s||n||x||D||k||m||b||B||F||i}},Ia={"command-and-conquer-red":{print:"HNT260"},"pitfall-trap-yellow":{print:"LGS151-Rainbow"},"rockslide-trap-blue":{print:"LGS152-Rainbow"},"rosetta-thorn":{print:"ELE222-First"},"spectral-shield":{print:"MST158"},"tripwire-trap-red":{print:"LGS150-Rainbow"},"wreck-havoc-red":{print:"OUT198"}},wa=(e,r)=>{let{cardIdentifier:t}=e,a=Object.entries(Ia).find(([i])=>i===t);if(a&&r.some(i=>{let[,{print:s}]=a;return i.print===s})){let[,{print:i}]=a;return r.find(s=>s.print===i)||r[0]}else{let i,s;for(let o of r){let{edition:n,image:l,treatment:c}=o,d=!!l,u=l==null?void 0:l.includes("HP");if(d&&!u&&(i||(i=o),!s&&n!=="Promo"&&c!=="Full Art"&&(s=o)),i&&s)break}return s||i||r[0]}}});var ht=br((Ds,ut)=>{"use strict";function Yr(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);r&&(a=a.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),t.push.apply(t,a)}return t}function se(e){for(var r=1;r<arguments.length;r++){var t=arguments[r]!=null?arguments[r]:{};r%2?Yr(Object(t),!0).forEach(function(a){Ge(e,a,t[a])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Yr(Object(t)).forEach(function(a){Object.defineProperty(e,a,Object.getOwnPropertyDescriptor(t,a))})}return e}function _e(e){"@babel/helpers - typeof";return _e=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(r){return typeof r}:function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},_e(e)}function O(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}function Xr(e,r){for(var t=0;t<r.length;t++){var a=r[t];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,a.key,a)}}function H(e,r,t){return r&&Xr(e.prototype,r),t&&Xr(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function Ge(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function Y(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Super expression must either be null or a function");Object.defineProperty(e,"prototype",{value:Object.create(r&&r.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),writable:!1}),r&&We(e,r)}function be(e){return be=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)},be(e)}function We(e,r){return We=Object.setPrototypeOf||function(a,i){return a.__proto__=i,a},We(e,r)}function za(){if(typeof Reflect=="undefined"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(e){return!1}}function Na(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Oa(e,r){if(r&&(typeof r=="object"||typeof r=="function"))return r;if(r!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Na(e)}function X(e){var r=za();return function(){var a=be(e),i;if(r){var s=be(this).constructor;i=Reflect.construct(a,arguments,s)}else i=a.apply(this,arguments);return Oa(this,i)}}function ae(e){return Ha(e)||_a(e)||Ga(e)||Wa()}function Ha(e){if(Array.isArray(e))return Ke(e)}function _a(e){if(typeof Symbol!="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function Ga(e,r){if(e){if(typeof e=="string")return Ke(e,r);var t=Object.prototype.toString.call(e).slice(8,-1);if(t==="Object"&&e.constructor&&(t=e.constructor.name),t==="Map"||t==="Set")return Array.from(e);if(t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return Ke(e,r)}}function Ke(e,r){(r==null||r>e.length)&&(r=e.length);for(var t=0,a=new Array(r);t<r;t++)a[t]=e[t];return a}function Wa(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
2
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function U(e){return Array.isArray?Array.isArray(e):it(e)==="[object Array]"}var Ka=1/0;function $a(e){if(typeof e=="string")return e;var r=e+"";return r=="0"&&1/e==-Ka?"-0":r}function ja(e){return e==null?"":$a(e)}function V(e){return typeof e=="string"}function tt(e){return typeof e=="number"}function Va(e){return e===!0||e===!1||Ja(e)&&it(e)=="[object Boolean]"}function at(e){return _e(e)==="object"}function Ja(e){return at(e)&&e!==null}function _(e){return e!=null}function He(e){return!e.trim().length}function it(e){return e==null?e===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}var Ua="Incorrect 'index' type",Ya=function(r){return"Invalid value for key ".concat(r)},Xa=function(r){return"Pattern length exceeds max of ".concat(r,".")},Za=function(r){return"Missing ".concat(r," property in key")},Qa=function(r){return"Property 'weight' in key '".concat(r,"' must be a positive integer")},Zr=Object.prototype.hasOwnProperty,qa=function(){function e(r){var t=this;O(this,e),this._keys=[],this._keyMap={};var a=0;r.forEach(function(i){var s=st(i);a+=s.weight,t._keys.push(s),t._keyMap[s.id]=s,a+=s.weight}),this._keys.forEach(function(i){i.weight/=a})}return H(e,[{key:"get",value:function(t){return this._keyMap[t]}},{key:"keys",value:function(){return this._keys}},{key:"toJSON",value:function(){return JSON.stringify(this._keys)}}]),e}();function st(e){var r=null,t=null,a=null,i=1,s=null;if(V(e)||U(e))a=e,r=Qr(e),t=$e(e);else{if(!Zr.call(e,"name"))throw new Error(Za("name"));var o=e.name;if(a=o,Zr.call(e,"weight")&&(i=e.weight,i<=0))throw new Error(Qa(o));r=Qr(o),t=$e(o),s=e.getFn}return{path:r,id:t,weight:i,src:a,getFn:s}}function Qr(e){return U(e)?e:e.split(".")}function $e(e){return U(e)?e.join("."):e}function ei(e,r){var t=[],a=!1,i=function s(o,n,l){if(_(o))if(!n[l])t.push(o);else{var c=n[l],d=o[c];if(!_(d))return;if(l===n.length-1&&(V(d)||tt(d)||Va(d)))t.push(ja(d));else if(U(d)){a=!0;for(var u=0,h=d.length;u<h;u+=1)s(d[u],n,l+1)}else n.length&&s(d,n,l+1)}};return i(e,V(r)?r.split("."):r,0),a?t:t[0]}var ri={includeMatches:!1,findAllMatches:!1,minMatchCharLength:1},ti={isCaseSensitive:!1,includeScore:!1,keys:[],shouldSort:!0,sortFn:function(r,t){return r.score===t.score?r.idx<t.idx?-1:1:r.score<t.score?-1:1}},ai={location:0,threshold:.6,distance:100},ii={useExtendedSearch:!1,getFn:ei,ignoreLocation:!1,ignoreFieldNorm:!1,fieldNormWeight:1},A=se(se(se(se({},ti),ri),ai),ii),si=/[^ ]+/g;function ni(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:1,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:3,t=new Map,a=Math.pow(10,r);return{get:function(s){var o=s.match(si).length;if(t.has(o))return t.get(o);var n=1/Math.pow(o,.5*e),l=parseFloat(Math.round(n*a)/a);return t.set(o,l),l},clear:function(){t.clear()}}}var Ye=function(){function e(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=r.getFn,a=t===void 0?A.getFn:t,i=r.fieldNormWeight,s=i===void 0?A.fieldNormWeight:i;O(this,e),this.norm=ni(s,3),this.getFn=a,this.isCreated=!1,this.setIndexRecords()}return H(e,[{key:"setSources",value:function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];this.docs=t}},{key:"setIndexRecords",value:function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];this.records=t}},{key:"setKeys",value:function(){var t=this,a=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];this.keys=a,this._keysMap={},a.forEach(function(i,s){t._keysMap[i.id]=s})}},{key:"create",value:function(){var t=this;this.isCreated||!this.docs.length||(this.isCreated=!0,V(this.docs[0])?this.docs.forEach(function(a,i){t._addString(a,i)}):this.docs.forEach(function(a,i){t._addObject(a,i)}),this.norm.clear())}},{key:"add",value:function(t){var a=this.size();V(t)?this._addString(t,a):this._addObject(t,a)}},{key:"removeAt",value:function(t){this.records.splice(t,1);for(var a=t,i=this.size();a<i;a+=1)this.records[a].i-=1}},{key:"getValueForItemAtKeyId",value:function(t,a){return t[this._keysMap[a]]}},{key:"size",value:function(){return this.records.length}},{key:"_addString",value:function(t,a){if(!(!_(t)||He(t))){var i={v:t,i:a,n:this.norm.get(t)};this.records.push(i)}}},{key:"_addObject",value:function(t,a){var i=this,s={i:a,$:{}};this.keys.forEach(function(o,n){var l=o.getFn?o.getFn(t):i.getFn(t,o.path);if(_(l)){if(U(l))(function(){for(var d=[],u=[{nestedArrIndex:-1,value:l}];u.length;){var h=u.pop(),p=h.nestedArrIndex,f=h.value;if(_(f))if(V(f)&&!He(f)){var y={v:f,i:p,n:i.norm.get(f)};d.push(y)}else U(f)&&f.forEach(function(v,D){u.push({nestedArrIndex:D,value:v})})}s.$[n]=d})();else if(V(l)&&!He(l)){var c={v:l,n:i.norm.get(l)};s.$[n]=c}}}),this.records.push(s)}},{key:"toJSON",value:function(){return{keys:this.keys,records:this.records}}}]),e}();function nt(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=t.getFn,i=a===void 0?A.getFn:a,s=t.fieldNormWeight,o=s===void 0?A.fieldNormWeight:s,n=new Ye({getFn:i,fieldNormWeight:o});return n.setKeys(e.map(st)),n.setSources(r),n.create(),n}function oi(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},t=r.getFn,a=t===void 0?A.getFn:t,i=r.fieldNormWeight,s=i===void 0?A.fieldNormWeight:i,o=e.keys,n=e.records,l=new Ye({getFn:a,fieldNormWeight:s});return l.setKeys(o),l.setIndexRecords(n),l}function ve(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},t=r.errors,a=t===void 0?0:t,i=r.currentLocation,s=i===void 0?0:i,o=r.expectedLocation,n=o===void 0?0:o,l=r.distance,c=l===void 0?A.distance:l,d=r.ignoreLocation,u=d===void 0?A.ignoreLocation:d,h=a/e.length;if(u)return h;var p=Math.abs(n-s);return c?h+p/c:p?1:h}function li(){for(var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:A.minMatchCharLength,t=[],a=-1,i=-1,s=0,o=e.length;s<o;s+=1){var n=e[s];n&&a===-1?a=s:!n&&a!==-1&&(i=s-1,i-a+1>=r&&t.push([a,i]),a=-1)}return e[s-1]&&s-a>=r&&t.push([a,s-1]),t}var te=32;function ci(e,r,t){var a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},i=a.location,s=i===void 0?A.location:i,o=a.distance,n=o===void 0?A.distance:o,l=a.threshold,c=l===void 0?A.threshold:l,d=a.findAllMatches,u=d===void 0?A.findAllMatches:d,h=a.minMatchCharLength,p=h===void 0?A.minMatchCharLength:h,f=a.includeMatches,y=f===void 0?A.includeMatches:f,v=a.ignoreLocation,D=v===void 0?A.ignoreLocation:v;if(r.length>te)throw new Error(Xa(te));for(var k=r.length,m=e.length,b=Math.max(0,Math.min(s,m)),F=c,B=b,x=p>1||y,M=x?Array(m):[],C;(C=e.indexOf(r,B))>-1;){var T=ve(r,{currentLocation:C,expectedLocation:b,distance:n,ignoreLocation:D});if(F=Math.min(T,F),B=C+k,x)for(var P=0;P<k;)M[C+P]=1,P+=1}B=-1;for(var R=[],w=1,S=k+m,z=1<<k-1,I=0;I<k;I+=1){for(var W=0,G=S;W<G;){var ce=ve(r,{errors:I,currentLocation:b+G,expectedLocation:b,distance:n,ignoreLocation:D});ce<=F?W=G:S=G,G=Math.floor((S-W)/2+W)}S=G;var fr=Math.max(1,b-G+1),Ie=u?m:Math.min(b+G,m)+k,ie=Array(Ie+2);ie[Ie+1]=(1<<I)-1;for(var K=Ie;K>=fr;K-=1){var me=K-1,gr=t[e.charAt(me)];if(x&&(M[me]=+!!gr),ie[K]=(ie[K+1]<<1|1)&gr,I&&(ie[K]|=(R[K+1]|R[K])<<1|1|R[K+1]),ie[K]&z&&(w=ve(r,{errors:I,currentLocation:me,expectedLocation:b,distance:n,ignoreLocation:D}),w<=F)){if(F=w,B=me,B<=b)break;fr=Math.max(1,2*b-B)}}var jt=ve(r,{errors:I+1,currentLocation:b,expectedLocation:b,distance:n,ignoreLocation:D});if(jt>F)break;R=ie}var we={isMatch:B>=0,score:Math.max(.001,w)};if(x){var mr=li(M,p);mr.length?y&&(we.indices=mr):we.isMatch=!1}return we}function di(e){for(var r={},t=0,a=e.length;t<a;t+=1){var i=e.charAt(t);r[i]=(r[i]||0)|1<<a-t-1}return r}var ot=function(){function e(r){var t=this,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=a.location,s=i===void 0?A.location:i,o=a.threshold,n=o===void 0?A.threshold:o,l=a.distance,c=l===void 0?A.distance:l,d=a.includeMatches,u=d===void 0?A.includeMatches:d,h=a.findAllMatches,p=h===void 0?A.findAllMatches:h,f=a.minMatchCharLength,y=f===void 0?A.minMatchCharLength:f,v=a.isCaseSensitive,D=v===void 0?A.isCaseSensitive:v,k=a.ignoreLocation,m=k===void 0?A.ignoreLocation:k;if(O(this,e),this.options={location:s,threshold:n,distance:c,includeMatches:u,findAllMatches:p,minMatchCharLength:y,isCaseSensitive:D,ignoreLocation:m},this.pattern=D?r:r.toLowerCase(),this.chunks=[],!!this.pattern.length){var b=function(P,R){t.chunks.push({pattern:P,alphabet:di(P),startIndex:R})},F=this.pattern.length;if(F>te){for(var B=0,x=F%te,M=F-x;B<M;)b(this.pattern.substr(B,te),B),B+=te;if(x){var C=F-te;b(this.pattern.substr(C),C)}}else b(this.pattern,0)}}return H(e,[{key:"searchIn",value:function(t){var a=this.options,i=a.isCaseSensitive,s=a.includeMatches;if(i||(t=t.toLowerCase()),this.pattern===t){var o={isMatch:!0,score:0};return s&&(o.indices=[[0,t.length-1]]),o}var n=this.options,l=n.location,c=n.distance,d=n.threshold,u=n.findAllMatches,h=n.minMatchCharLength,p=n.ignoreLocation,f=[],y=0,v=!1;this.chunks.forEach(function(k){var m=k.pattern,b=k.alphabet,F=k.startIndex,B=ci(t,m,b,{location:l+F,distance:c,threshold:d,findAllMatches:u,minMatchCharLength:h,includeMatches:s,ignoreLocation:p}),x=B.isMatch,M=B.score,C=B.indices;x&&(v=!0),y+=M,x&&C&&(f=[].concat(ae(f),ae(C)))});var D={isMatch:v,score:v?y/this.chunks.length:1};return v&&s&&(D.indices=f),D}}]),e}(),Z=function(){function e(r){O(this,e),this.pattern=r}return H(e,[{key:"search",value:function(){}}],[{key:"isMultiMatch",value:function(t){return qr(t,this.multiRegex)}},{key:"isSingleMatch",value:function(t){return qr(t,this.singleRegex)}}]),e}();function qr(e,r){var t=e.match(r);return t?t[1]:null}var ui=function(e){Y(t,e);var r=X(t);function t(a){return O(this,t),r.call(this,a)}return H(t,[{key:"search",value:function(i){var s=i===this.pattern;return{isMatch:s,score:s?0:1,indices:[0,this.pattern.length-1]}}}],[{key:"type",get:function(){return"exact"}},{key:"multiRegex",get:function(){return/^="(.*)"$/}},{key:"singleRegex",get:function(){return/^=(.*)$/}}]),t}(Z),hi=function(e){Y(t,e);var r=X(t);function t(a){return O(this,t),r.call(this,a)}return H(t,[{key:"search",value:function(i){var s=i.indexOf(this.pattern),o=s===-1;return{isMatch:o,score:o?0:1,indices:[0,i.length-1]}}}],[{key:"type",get:function(){return"inverse-exact"}},{key:"multiRegex",get:function(){return/^!"(.*)"$/}},{key:"singleRegex",get:function(){return/^!(.*)$/}}]),t}(Z),pi=function(e){Y(t,e);var r=X(t);function t(a){return O(this,t),r.call(this,a)}return H(t,[{key:"search",value:function(i){var s=i.startsWith(this.pattern);return{isMatch:s,score:s?0:1,indices:[0,this.pattern.length-1]}}}],[{key:"type",get:function(){return"prefix-exact"}},{key:"multiRegex",get:function(){return/^\^"(.*)"$/}},{key:"singleRegex",get:function(){return/^\^(.*)$/}}]),t}(Z),fi=function(e){Y(t,e);var r=X(t);function t(a){return O(this,t),r.call(this,a)}return H(t,[{key:"search",value:function(i){var s=!i.startsWith(this.pattern);return{isMatch:s,score:s?0:1,indices:[0,i.length-1]}}}],[{key:"type",get:function(){return"inverse-prefix-exact"}},{key:"multiRegex",get:function(){return/^!\^"(.*)"$/}},{key:"singleRegex",get:function(){return/^!\^(.*)$/}}]),t}(Z),gi=function(e){Y(t,e);var r=X(t);function t(a){return O(this,t),r.call(this,a)}return H(t,[{key:"search",value:function(i){var s=i.endsWith(this.pattern);return{isMatch:s,score:s?0:1,indices:[i.length-this.pattern.length,i.length-1]}}}],[{key:"type",get:function(){return"suffix-exact"}},{key:"multiRegex",get:function(){return/^"(.*)"\$$/}},{key:"singleRegex",get:function(){return/^(.*)\$$/}}]),t}(Z),mi=function(e){Y(t,e);var r=X(t);function t(a){return O(this,t),r.call(this,a)}return H(t,[{key:"search",value:function(i){var s=!i.endsWith(this.pattern);return{isMatch:s,score:s?0:1,indices:[0,i.length-1]}}}],[{key:"type",get:function(){return"inverse-suffix-exact"}},{key:"multiRegex",get:function(){return/^!"(.*)"\$$/}},{key:"singleRegex",get:function(){return/^!(.*)\$$/}}]),t}(Z),lt=function(e){Y(t,e);var r=X(t);function t(a){var i,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=s.location,n=o===void 0?A.location:o,l=s.threshold,c=l===void 0?A.threshold:l,d=s.distance,u=d===void 0?A.distance:d,h=s.includeMatches,p=h===void 0?A.includeMatches:h,f=s.findAllMatches,y=f===void 0?A.findAllMatches:f,v=s.minMatchCharLength,D=v===void 0?A.minMatchCharLength:v,k=s.isCaseSensitive,m=k===void 0?A.isCaseSensitive:k,b=s.ignoreLocation,F=b===void 0?A.ignoreLocation:b;return O(this,t),i=r.call(this,a),i._bitapSearch=new ot(a,{location:n,threshold:c,distance:u,includeMatches:p,findAllMatches:y,minMatchCharLength:D,isCaseSensitive:m,ignoreLocation:F}),i}return H(t,[{key:"search",value:function(i){return this._bitapSearch.searchIn(i)}}],[{key:"type",get:function(){return"fuzzy"}},{key:"multiRegex",get:function(){return/^"(.*)"$/}},{key:"singleRegex",get:function(){return/^(.*)$/}}]),t}(Z),ct=function(e){Y(t,e);var r=X(t);function t(a){return O(this,t),r.call(this,a)}return H(t,[{key:"search",value:function(i){for(var s=0,o,n=[],l=this.pattern.length;(o=i.indexOf(this.pattern,s))>-1;)s=o+l,n.push([o,s-1]);var c=!!n.length;return{isMatch:c,score:c?0:1,indices:n}}}],[{key:"type",get:function(){return"include"}},{key:"multiRegex",get:function(){return/^'"(.*)"$/}},{key:"singleRegex",get:function(){return/^'(.*)$/}}]),t}(Z),je=[ui,ct,pi,fi,mi,gi,hi,lt],et=je.length,yi=/ +(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)/,ki="|";function vi(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return e.split(ki).map(function(t){for(var a=t.trim().split(yi).filter(function(f){return f&&!!f.trim()}),i=[],s=0,o=a.length;s<o;s+=1){for(var n=a[s],l=!1,c=-1;!l&&++c<et;){var d=je[c],u=d.isMultiMatch(n);u&&(i.push(new d(u,r)),l=!0)}if(!l)for(c=-1;++c<et;){var h=je[c],p=h.isSingleMatch(n);if(p){i.push(new h(p,r));break}}}return i})}var bi=new Set([lt.type,ct.type]),Di=function(){function e(r){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=t.isCaseSensitive,i=a===void 0?A.isCaseSensitive:a,s=t.includeMatches,o=s===void 0?A.includeMatches:s,n=t.minMatchCharLength,l=n===void 0?A.minMatchCharLength:n,c=t.ignoreLocation,d=c===void 0?A.ignoreLocation:c,u=t.findAllMatches,h=u===void 0?A.findAllMatches:u,p=t.location,f=p===void 0?A.location:p,y=t.threshold,v=y===void 0?A.threshold:y,D=t.distance,k=D===void 0?A.distance:D;O(this,e),this.query=null,this.options={isCaseSensitive:i,includeMatches:o,minMatchCharLength:l,findAllMatches:h,ignoreLocation:d,location:f,threshold:v,distance:k},this.pattern=i?r:r.toLowerCase(),this.query=vi(this.pattern,this.options)}return H(e,[{key:"searchIn",value:function(t){var a=this.query;if(!a)return{isMatch:!1,score:1};var i=this.options,s=i.includeMatches,o=i.isCaseSensitive;t=o?t:t.toLowerCase();for(var n=0,l=[],c=0,d=0,u=a.length;d<u;d+=1){var h=a[d];l.length=0,n=0;for(var p=0,f=h.length;p<f;p+=1){var y=h[p],v=y.search(t),D=v.isMatch,k=v.indices,m=v.score;if(D){if(n+=1,c+=m,s){var b=y.constructor.type;bi.has(b)?l=[].concat(ae(l),ae(k)):l.push(k)}}else{c=0,n=0,l.length=0;break}}if(n){var F={isMatch:!0,score:c/n};return s&&(F.indices=l),F}}return{isMatch:!1,score:1}}}],[{key:"condition",value:function(t,a){return a.useExtendedSearch}}]),e}(),De=[];function Ai(){De.push.apply(De,arguments)}function Ve(e,r){for(var t=0,a=De.length;t<a;t+=1){var i=De[t];if(i.condition(e,r))return new i(e,r)}return new ot(e,r)}var Ae={AND:"$and",OR:"$or"},Je={PATH:"$path",PATTERN:"$val"},Ue=function(r){return!!(r[Ae.AND]||r[Ae.OR])},Bi=function(r){return!!r[Je.PATH]},Mi=function(r){return!U(r)&&at(r)&&!Ue(r)},rt=function(r){return Ge({},Ae.AND,Object.keys(r).map(function(t){return Ge({},t,r[t])}))};function dt(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=t.auto,i=a===void 0?!0:a,s=function o(n){var l=Object.keys(n),c=Bi(n);if(!c&&l.length>1&&!Ue(n))return o(rt(n));if(Mi(n)){var d=c?n[Je.PATH]:l[0],u=c?n[Je.PATTERN]:n[d];if(!V(u))throw new Error(Ya(d));var h={keyId:$e(d),pattern:u};return i&&(h.searcher=Ve(u,r)),h}var p={children:[],operator:l[0]};return l.forEach(function(f){var y=n[f];U(y)&&y.forEach(function(v){p.children.push(o(v))})}),p};return Ue(e)||(e=rt(e)),s(e)}function Ci(e,r){var t=r.ignoreFieldNorm,a=t===void 0?A.ignoreFieldNorm:t;e.forEach(function(i){var s=1;i.matches.forEach(function(o){var n=o.key,l=o.norm,c=o.score,d=n?n.weight:null;s*=Math.pow(c===0&&d?Number.EPSILON:c,(d||1)*(a?1:l))}),i.score=s})}function Fi(e,r){var t=e.matches;r.matches=[],_(t)&&t.forEach(function(a){if(!(!_(a.indices)||!a.indices.length)){var i=a.indices,s=a.value,o={indices:i,value:s};a.key&&(o.key=a.key.src),a.idx>-1&&(o.refIndex=a.idx),r.matches.push(o)}})}function Ei(e,r){r.score=e.score}function Ti(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=t.includeMatches,i=a===void 0?A.includeMatches:a,s=t.includeScore,o=s===void 0?A.includeScore:s,n=[];return i&&n.push(Fi),o&&n.push(Ei),e.map(function(l){var c=l.idx,d={item:r[c],refIndex:c};return n.length&&n.forEach(function(u){u(l,d)}),d})}var ne=function(){function e(r){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=arguments.length>2?arguments[2]:void 0;O(this,e),this.options=se(se({},A),t),this.options.useExtendedSearch,this._keyStore=new qa(this.options.keys),this.setCollection(r,a)}return H(e,[{key:"setCollection",value:function(t,a){if(this._docs=t,a&&!(a instanceof Ye))throw new Error(Ua);this._myIndex=a||nt(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight})}},{key:"add",value:function(t){_(t)&&(this._docs.push(t),this._myIndex.add(t))}},{key:"remove",value:function(){for(var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:function(){return!1},a=[],i=0,s=this._docs.length;i<s;i+=1){var o=this._docs[i];t(o,i)&&(this.removeAt(i),i-=1,s-=1,a.push(o))}return a}},{key:"removeAt",value:function(t){this._docs.splice(t,1),this._myIndex.removeAt(t)}},{key:"getIndex",value:function(){return this._myIndex}},{key:"search",value:function(t){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=a.limit,s=i===void 0?-1:i,o=this.options,n=o.includeMatches,l=o.includeScore,c=o.shouldSort,d=o.sortFn,u=o.ignoreFieldNorm,h=V(t)?V(this._docs[0])?this._searchStringList(t):this._searchObjectList(t):this._searchLogical(t);return Ci(h,{ignoreFieldNorm:u}),c&&h.sort(d),tt(s)&&s>-1&&(h=h.slice(0,s)),Ti(h,this._docs,{includeMatches:n,includeScore:l})}},{key:"_searchStringList",value:function(t){var a=Ve(t,this.options),i=this._myIndex.records,s=[];return i.forEach(function(o){var n=o.v,l=o.i,c=o.n;if(_(n)){var d=a.searchIn(n),u=d.isMatch,h=d.score,p=d.indices;u&&s.push({item:n,idx:l,matches:[{score:h,value:n,norm:c,indices:p}]})}}),s}},{key:"_searchLogical",value:function(t){var a=this,i=dt(t,this.options),s=function c(d,u,h){if(!d.children){var p=d.keyId,f=d.searcher,y=a._findMatches({key:a._keyStore.get(p),value:a._myIndex.getValueForItemAtKeyId(u,p),searcher:f});return y&&y.length?[{idx:h,item:u,matches:y}]:[]}for(var v=[],D=0,k=d.children.length;D<k;D+=1){var m=d.children[D],b=c(m,u,h);if(b.length)v.push.apply(v,ae(b));else if(d.operator===Ae.AND)return[]}return v},o=this._myIndex.records,n={},l=[];return o.forEach(function(c){var d=c.$,u=c.i;if(_(d)){var h=s(i,d,u);h.length&&(n[u]||(n[u]={idx:u,item:d,matches:[]},l.push(n[u])),h.forEach(function(p){var f,y=p.matches;(f=n[u].matches).push.apply(f,ae(y))}))}}),l}},{key:"_searchObjectList",value:function(t){var a=this,i=Ve(t,this.options),s=this._myIndex,o=s.keys,n=s.records,l=[];return n.forEach(function(c){var d=c.$,u=c.i;if(_(d)){var h=[];o.forEach(function(p,f){h.push.apply(h,ae(a._findMatches({key:p,value:d[f],searcher:i})))}),h.length&&l.push({idx:u,item:d,matches:h})}}),l}},{key:"_findMatches",value:function(t){var a=t.key,i=t.value,s=t.searcher;if(!_(i))return[];var o=[];if(U(i))i.forEach(function(p){var f=p.v,y=p.i,v=p.n;if(_(f)){var D=s.searchIn(f),k=D.isMatch,m=D.score,b=D.indices;k&&o.push({score:m,key:a,value:f,idx:y,norm:v,indices:b})}});else{var n=i.v,l=i.n,c=s.searchIn(n),d=c.isMatch,u=c.score,h=c.indices;d&&o.push({score:u,key:a,value:n,norm:l,indices:h})}return o}}]),e}();ne.version="6.6.2";ne.createIndex=nt;ne.parseIndex=oi;ne.config=A;ne.parseQuery=dt;Ai(Di);var Si=ne;ut.exports=Si});var ks={};qt(ks,{FilterProperty:()=>Ze,PUNCTUATION:()=>E,abbreviations:()=>Xe,availableExclusions:()=>Ot,availableModifiers:()=>Nt,default:()=>Gt,filterCard:()=>Wt,filtersToCardPropertyMappings:()=>Le,getAbbreviation:()=>Be,getAbbreviationByCard:()=>xi,getCardByName:()=>lr,getCleanText:()=>cr,getExcludedMetaFilters:()=>qe,getKeywordsAndAppliedFiltersFromText:()=>or,getMetaFilters:()=>Qe,getNormalizedText:()=>pe,getRelatedCards:()=>pr,getRelatedCardsByName:()=>Re,getTokensReferencedByCards:()=>ys,multiWordShorthands:()=>rr,shorthands:()=>er,singleWordShorthands:()=>tr});module.exports=ea(ks);var fe=q(re()),dr=q(ht());var E=/[!"#$%&'’(),./:;<=>?@[\]^_`|~]/g;var g=q(re());var Be=e=>Xe.find(({abbreviations:r})=>r.find(t=>t.toLowerCase()===e)),xi=e=>Xe.find(({card:r})=>r.toLowerCase()===e.name.toLowerCase()),Xe=[{abbreviations:["10k"],card:"10,000 Year Reunion"},{abbreviations:["Pajamas","PJs"],card:"Alluvion Constellas"},{abbreviations:["Slippy","Arakni Slipped Through the Cracks","Arakni, Slipped Through the Cracks"],card:"Arakni, 5L!p3d 7hRu 7h3 cR4X"},{abbreviations:["Dullcap"],card:"Arcanite Skullcap"},{abbreviations:["ALS"],card:"Arc Light Sentinel"},{abbreviations:["AoW"],card:"Art of War"},{abbreviations:["BBD"],card:"Barraging Beatdown"},{abbreviations:["BBS"],card:"Big Blue Sky"},{abbreviations:["Starvo"],card:"Bravo, Star of the Show"},{abbreviations:["BEB"],card:"Bull's Eye Bracers"},{abbreviations:["BLW"],card:"Be Like Water"},{abbreviations:["BoJ"],card:"Balance of Justice"},{abbreviations:["BOHH"],card:"Blood on Her Hands"},{abbreviations:["BRB"],card:"Bloodrush Bellow"},{abbreviations:["Breezies"],card:"Breeze Rider Boots"},{abbreviations:["BTA"],card:"Burn Them All"},{abbreviations:["CStrike","C-Strike","C Strike"],card:"Celestial Cataclysm"},{abbreviations:["CBelly"],card:"Cerebellum Processor"},{abbreviations:["CLF"],card:"Channel Lake Frigid"},{abbreviations:["CLV"],card:"Channel Lightning Valley"},{abbreviations:["CMH"],card:"Channel Mount Heroic"},{abbreviations:["CMI"],card:"Channel Mount Isen"},{abbreviations:["CMT"],card:"Channel the Millennium Tree"},{abbreviations:["CnC","C&C"],card:"Command and Conquer"},{abbreviations:["Sea and Sea"],card:"Conqueror of the High Seas"},{abbreviations:["CYB"],card:"Count Your Blessings"},{abbreviations:["Cat","Kitty"],card:"Crouching Tiger"},{abbreviations:["CoD"],card:"Crown of Dominion"},{abbreviations:["CoP"],card:"Crown of Providence"},{abbreviations:["CtW"],card:"Crush the Weak"},{abbreviations:["DD"],card:"Death Dealer"},{abbreviations:["DnD"],card:"Devotion Never Dies"},{abbreviations:["DIO"],card:"Dash I/O"},{abbreviations:["EBTT"],card:"Even Bigger Than That!"},{abbreviations:["NewNigma"],card:"Enigma, New Moon"},{abbreviations:["EPot","E Pot"],card:"Energy Potion"},{abbreviations:["EStrike","E-Strike","E Strike"],card:"Enlightened Strike"},{abbreviations:["FFS"],card:"Fyendal's Fighting Spirit"},{abbreviations:["FoN"],card:"Force of Nature"},{abbreviations:["Frosty","\u{1F976}","\u{1F9CA}","\u2744\uFE0F"],card:"Frostbite"},{abbreviations:["Yum yum"],card:"Fruits of the Forest"},{abbreviations:["GnT"],card:"Give and Take"},{abbreviations:["Habibi"],card:"Hanabi Blaster"},{abbreviations:["HMH"],card:"Hope Merchant's Hood"},{abbreviations:["HoI"],card:"Heart of Ice"},{abbreviations:["Pumpkin"],card:"Jack-o'-lantern"},{abbreviations:["KKBB"],card:"Knick Knack Bric-a-brac"},{abbreviations:["BStrike"],card:"Levels of Enlightenment"},{abbreviations:["LAG","Twominaris"],card:"Luminaris, Angel's Glow"},{abbreviations:["LCF","Newminaris"],card:"Luminaris, Celestial Fury"},{abbreviations:["LDE"],card:"Last Ditch Effort"},{abbreviations:["LtC"],card:"Lead the Charge"},{abbreviations:["LNW"],card:"Leave No Witnesses"},{abbreviations:["LFaL","L4aL"],card:"Life for a Life"},{abbreviations:["LiT"],card:"Lost in Thought"},{abbreviations:["MMB"],card:"Mage Master Boots"},{abbreviations:["MaxV"],card:"Maximum Velocity"},{abbreviations:["MoM"],card:"Mask of Momentum"},{abbreviations:["MnG"],card:"Meat and Greet"},{abbreviations:["Cake","\u{1F382}"],card:"Ninth Blade of the Blood Oath"},{abbreviations:["PoM"],card:"Peace of Mind"},{abbreviations:["P-Bone"],card:"Performance Bonus"},{abbreviations:["PF","\u{1F525}"],card:"Phoenix Flame"},{abbreviations:["PtW"],card:"Poison the Well"},{abbreviations:["Thanos","Infinity Gauntlet"],card:"Polarity Reversal Script"},{abbreviations:["DPot","D Pot"],card:"Potion of D\xE9j\xE0 Vu"},{abbreviations:["Ponder Run"],card:"Premeditate"},{abbreviations:["Qi Unbound"],card:"Qi Unleashed"},{abbreviations:["RitL"],card:"Red in the Ledger"},{abbreviations:["Cats","Ghost cat","Ghost cats"],card:"Restless Coalescence"},{abbreviations:["SSGB"],card:"Sandscour Greatbow"},{abbreviations:["SSP"],card:"Sand Sketched Plan"},{abbreviations:["SFaS","S4aS"],card:"Scar for a Scar"},{abbreviations:["SWOMB"],card:"Shifting Winds of the Mystic Beast"},{abbreviations:["SWK"],card:"Spinning Wheel Kick"},{abbreviations:["SFTL"],card:"Swing Fist, Think Later"},{abbreviations:["TTT"],card:"Take the Tempo"},{abbreviations:["Ultron"],card:"Teklovossen, the Mechropotent"},{abbreviations:["ToS"],card:"Test of Strength"},{abbreviations:["TAYG"],card:"That All You Got?"},{abbreviations:["TROM"],card:"This Round's on Me"},{abbreviations:["3oak"],card:"Three of a Kind"},{abbreviations:["Pox Malone","Post Malone"],card:"Virulent Touch"},{abbreviations:["Cast Homes"],card:"Visit Goldmane Estate"},{abbreviations:["Frosty Hammer"],card:"Winter's Wail"},{abbreviations:["Wreckless Wing"],card:"War Cry of Bellona"},{abbreviations:["ZTS"],card:"Zero to Sixty"}];var N=q(re());var Ze=(t=>(t.LegalFormats="legalFormats",t.LegalHeroes="legalHeroes",t))(Ze||{}),Ee=Array.from(Array(50).keys()).map(e=>`${e}`),Li=[{format:N.Format.BlitzLivingLegend,nicknames:["blitz ll"]},{format:N.Format.ClassicConstructed,nicknames:["cc","classic"]},{format:N.Format.ClassicConstructedLivingLegend,nicknames:["cc ll","classic constructed ll","ll cc","ll","living legend"]},{format:N.Format.ProjectBlue,nicknames:["pb"]},{format:N.Format.UltimatePitFight,nicknames:["upf"]}],Ri=Object.values(N.Format).map(e=>{let r=Li.find(({format:a})=>a===e),t=e.toLowerCase().replaceAll(E,"");return r?j($({},r),{format:t}):{format:t}}),Pi=[{hero:N.Hero.DataDoll,nicknames:["data","datadoll"]},{hero:N.Hero.Dorinthea,nicknames:["dori"]},{hero:N.Hero.Genis,nicknames:["genis"]},{hero:N.Hero.GravyBones,nicknames:["gravy"]},{hero:N.Hero.Iyslander,nicknames:["islander"]}],Ii=Object.values(N.Hero).map(e=>{let r=Pi.find(({hero:a})=>a===e),t=e.toLowerCase().replaceAll(E,"");return r?j($({},r),{hero:t}):{hero:t}}),Me=["common","rare","super rare","majestic","legendary","fabled"],wi=(e,r,t)=>{let a=[];if(!r)a.push(...e);else for(let i of e)switch(r){case">=":let s=!1;for(let c of Me)s?a.push(c):c===i&&(s=!0,a.push(c));break;case">":let o=!1;for(let c of Me)o?a.push(c):c===i&&(o=!0);break;case"<=":let n=!1;for(let c of Me.slice().reverse())n?a.push(c):c===i&&(n=!0,a.push(c));break;case"<":let l=!1;for(let c of Me.slice().reverse())l?a.push(c):c===i&&(l=!0);break;default:break}return{filterToPropertyMapping:{nestedProperty:"rarity",property:"printings",isArray:!0},isOr:!0,values:a,excluded:t}},zi=(e,r)=>{let t=[],a=[],i=[];for(let s of e){let o=Ri.find(({format:n,nicknames:l})=>n===s||!!l&&l.includes(s));if(o)a.push(o.format);else{let n=Ii.find(({hero:l,nicknames:c})=>l===s||!!c&&c.includes(s));n&&i.push(n.hero)}}return a.length>0&&t.push({filterToPropertyMapping:{property:"legalFormats",isArray:!0},values:a,isOr:!0,excluded:r}),i.length>0&&t.push({filterToPropertyMapping:{property:"legalHeroes",isArray:!0},values:i,isOr:!0,excluded:r}),t},Qe=(e,r,t,a)=>{let i=[];return Hi(r)?i.push(...zi(t,e)):Gi(r)&&i.push(wi(t,a,e)),i},oe=[{filterToPropertyMapping:{property:"cost",isNumber:!0},values:Ee,excluded:!0},{filterToPropertyMapping:{property:"specialCost",isString:!0,partialMatch:!0},values:["*","x"],excluded:!0},{filterToPropertyMapping:{property:"types",isArray:!0,partialMatch:!0},values:["equipment","hero","placeholder","token","weapon"],excluded:!0}],J=[{filterToPropertyMapping:{property:"defense",isNumber:!0},values:Ee,excluded:!0},{filterToPropertyMapping:{property:"specialDefense",isString:!0,partialMatch:!0},values:["*","x"],excluded:!0},{filterToPropertyMapping:{property:"types",isArray:!0,partialMatch:!0},values:["hero","placeholder","token","weapon"],excluded:!0}],Ce=[{filterToPropertyMapping:{property:"pitch",isNumber:!0},excluded:!0,values:Ee},{filterToPropertyMapping:{property:"types",isArray:!0,partialMatch:!0},values:["equipment","hero","placeholder","token","weapon"],excluded:!0},{filterToPropertyMapping:{property:"isCardBack",isBoolean:!0},values:["true"],excluded:!0}],Q=[{filterToPropertyMapping:{property:"power",isNumber:!0},excluded:!0,values:Ee},{filterToPropertyMapping:{property:"specialPower",isString:!0,partialMatch:!0},values:["*","x"],excluded:!0},{filterToPropertyMapping:{property:"types",isArray:!0,partialMatch:!0},values:["equipment","hero","placeholder","token"],excluded:!0}],Fe=[{filterToPropertyMapping:{property:"talents",isArray:!0},excluded:!0,values:Object.values(N.Talent).map(e=>e.toLowerCase())}],Ni={"!co":oe,"-co":oe,"!cost":oe,"-cost":oe,"!color":oe,"-color":oe,"!b":J,"-b":J,"!block":J,"-block":J,"!d":J,"-d":J,"!def":J,"-def":J,"!defense":J,"-defense":J,"!pitch":Ce,"-pitch":Ce,"!p":Ce,"-p":Ce,"!attack":Q,"-attack":Q,"!power":Q,"-power":Q,"!pwr":Q,"-pwr":Q,"!pow":Q,"-pow":Q,"!talents":Fe,"-talents":Fe,"!tal":Fe,"-tal":Fe},qe=e=>{let r=[],t=Ni[e];return t&&r.push(...t),r},Oi=["l","legal","hero"],Hi=e=>Oi.includes(e),_i=["r","rarity"],Gi=e=>_i.includes(e);var er=[{description:"Attack actions",filters:["st:attack"],shorthands:["AA"]},{description:"Arcane barrier",filters:['k:"arcane barrier"'],shorthands:["AB"]},{description:"Attack reactions",filters:['t:"attack reaction"'],shorthands:["AR"]},{description:"Defense reactions",filters:['t:"defense reaction"'],shorthands:["DR"]},{description:"Flick daggers",filters:["dagger you control deal 1 damage"],shorthands:["Flick","Hurl","Throw"]},{description:"Gain life",filters:["gain {h}"],shorthands:["Gain life","Gains life"]},{description:"Go again",filters:['k:"go again"'],shorthands:["GA"]},{description:"Non-attack actions",filters:["t:action","st:non-attack"],shorthands:["NAA"]},{description:"Plus defense",filters:["+ {d}"],shorthands:["Pump defense","Pumps defense","Buff defense","Buffs defense"]},{description:"Plus power",filters:["+ {p}"],shorthands:["Pumps","Pump","Buff","Buffs","Pump attack","Pump attacks","Pumps attack","Pumps attacks","Buff attack","Buff attacks","Buffs attack","Buffs attacks","Pump power","Pumps power","Buff power","Buffs power"]},{description:"Poppers",filters:["!c:illusionist","st:attack","pwr:>=6","def:>=0"],helper:'6+ power non-Illusionist attacks that can "pop" phantasm attacks when defending',shorthands:["Poppers","Popper"]},{description:"Spellvoid",filters:['k:"spellvoid"'],shorthands:["SV"]},{description:"Tap",filters:["{t}"],shorthands:["Tap"]}],rr=er.filter(({shorthands:e})=>e.some(r=>r.includes(" "))).map(e=>j($({},e),{shorthands:e.shorthands.filter(r=>r.includes(" ")).map(r=>r.toLowerCase()).sort((r,t)=>t.length-r.length)})),tr=er.filter(({shorthands:e})=>e.some(r=>!r.includes(" "))).map(e=>j($({},e),{shorthands:e.shorthands.filter(r=>!r.includes(" ")).map(r=>r.toLowerCase()).sort((r,t)=>t.length-r.length)}));var Nt=[">=",">","<=","<"],Ot=["!","-"],Wi={property:"arcane",specialProperty:"specialArcane",isNumber:!0,partialMatch:!0},ar={property:"artists",isArray:!0,partialMatch:!0},pt={property:"bannedFormats",isArray:!0,partialMatch:!0},ft={property:"bonds",isArray:!0},Ki={property:"n/a"},gt={property:"classes",isArray:!0,partialMatch:!0},mt={property:"cost",specialProperty:"specialCost",isNumber:!0,partialMatch:!0},he={property:"defense",specialProperty:"specialDefense",isNumber:!0},yt={property:"flows",isArray:!0},kt={nestedProperty:"foiling",property:"printings",isArray:!0},vt={property:"fusions",isArray:!0},bt={property:"intellect",isNumber:!0},Dt={property:"keywords",isArray:!0,partialMatch:!0},ir={property:"n/a",isMeta:!0},At={property:"life",specialProperty:"specialLife",isNumber:!0},Bt={property:"meta",isArray:!0},Mt={property:"name",isString:!0,partialMatch:!0},sr={property:"pitch",isNumber:!0},Te={property:"power",specialProperty:"specialPower",isNumber:!0},Ct={property:"n/a",isMeta:!0},$i={property:"n/a"},ji={property:"n/a"},Ft={property:"sets",isArray:!0,partialMatch:!0},Se={property:"specializations",isArray:!0,partialMatch:!0},Et={property:"subtypes",isArray:!0},Tt={property:"types",isArray:!0},St={property:"talents",isArray:!0},Vi={property:"functionalText",isString:!0,partialMatch:!0},Ji={property:"traits",isArray:!0,partialMatch:!0},Ui={property:"typeText",isString:!0,partialMatch:!0},xe={nestedProperty:"treatments",property:"printings",isArray:!0,isNestedPropertyArray:!0},Le={arcane:Wi,a:ar,artist:ar,art:ar,attack:Te,b:he,block:he,banned:pt,bond:ft,bonds:ft,c:gt,class:gt,chain:Ki,co:mt,cost:mt,color:sr,d:he,def:he,defense:he,flow:yt,flows:yt,f:vt,fusion:vt,foil:kt,foiling:kt,i:bt,intellect:bt,is:Bt,k:Dt,keyword:Dt,l:ir,legal:ir,hero:ir,li:At,life:At,meta:Bt,n:Mt,name:Mt,p:sr,pitch:sr,pwr:Te,pow:Te,power:Te,r:Ct,rarity:Ct,referencedby:$i,references:ji,rf:pt,s:Ft,set:Ft,sp:Se,spec:Se,specialization:Se,specializations:Se,st:Et,subtype:Et,t:Tt,type:Tt,tal:St,talent:St,text:Vi,trait:Ji,treat:xe,treatment:xe,var:xe,variation:xe,x:Ui},Yi=[{text:g.Release.ClassicBattlesRhinarDorinthea.toLowerCase(),override:g.Release.ClassicBattlesRhinarDorinthea.toLowerCase().replaceAll(E,"")}],Xi=e=>{var i;let r=[],t=e.replaceAll("\u201D",'"');for(let{text:s,override:o}of Yi)t.includes(s)&&(t=t.replace(s,o));if((i=Be(t))==null?void 0:i.card)r.push(t);else{let s=t.split(/[ ]+/),o="",n=0;for(let l of s)n===2&&(r.push(o.trim().replaceAll('"',"")),o="",n=0),n<2&&l.split('"').length===2?(o+=" "+l,n++):n===0&&o===""?r.push(l):n===1&&(o+=" "+l);n===2&&(r.push(o.trim().replaceAll('"',"")),o="",n=0)}return r},zs=[g.Hero.Briar,g.Hero.Brutus,g.Hero.Emperor,g.Hero.Prism,g.Hero.Shiyana,g.Hero.Taylor,g.Hero.Yorick],or=(e,r)=>{var f;let t=e.trim().toLowerCase();for(let{filters:y,shorthands:v}of rr)for(let D of v)if(t.includes(D)){t=t.replace(D,y.join(" "));break}for(let[y,v]of Object.entries(g.setToSetIdentifierMappings))t.includes(y.toLowerCase())&&(t=t.replace(y.toLowerCase(),v[0]));let a=Xi(t),i=[];for(let y of a){let v=tr.find(({shorthands:D})=>D.includes(y));v?i.push(...v.filters):i.push(y)}let s=[],o=[],n=[],l=[],c=!1,d=[],u=[],h=[],p={isClash:!1};for(let y of i)if(ns(y)){let[v,D]=y.split(":"),{modifier:k,values:m,isAnd:b,isOr:F}=is(D),{filterKey:B,excluded:x,isMeta:M}=ss(v);if(M)["rarity","r"].includes(B)&&(d=as(m),m=d.map(C=>C.toLowerCase())),["legal","l","hero"].includes(B)&&D.includes("clash")&&(p.isClash=!0),s.push(...Qe(x,B,m,k));else{if(["chain"].includes(B)){let C=z=>z.name.toLowerCase().replaceAll(E,""),T=m.map(z=>lr(z,r)).filter(z=>!!z).map(C),P=new Set(T);B="name",F=!0;let R=20,w=0,S=z=>{if(!z.types.includes(g.Type.Hero)){let I=C(z);P.add(I),T.includes(I)||T.push(I)}};for(let z of T){if(w>R)break;let{referencedBy:I,references:W}=Re(z,r);W.forEach(S),w===0&&I.forEach(S),w++}m=Array.from(P)}else if(["referencedby","references"].includes(B)){let C=B,T=[...m].filter(P=>!!P);m=[],B="name",F=!0;for(let P of T){let{referencedBy:R,references:w}=Re(P,r);["referencedby"].includes(C)?m.push(...w.map(({name:S})=>S.toLowerCase().replaceAll(E,""))):["references"].includes(C)&&m.push(...R.map(({name:S})=>S.toLowerCase().replaceAll(E,"")))}}else if(["art","artist"].includes(B))o=m;else if(["is","is","meta"].includes(B)){let C=es(m);m=C.map(T=>T.toLowerCase().replaceAll(E,"")),C.includes(g.Meta.Expansion)&&!x&&(c=!0)}else["foiling","foil"].includes(B)?(l=rs(m),m=l.map(C=>C.toLowerCase())):["treat","treatment","var","variation"].includes(B)?(h=ts(m),m=h.map(C=>C.toLowerCase())):["set","s"].includes(B)?(u=Zi(m),m=u.map(C=>C.toLowerCase().replaceAll(E,""))):["pitch","p","color"].includes(B)&&(m=qi(m));Le[B]&&s.push({filterToPropertyMapping:Le[B],values:m,isAnd:b,isOr:F,modifier:k,excluded:x})}}else if(y){let v=(f=Be(y))==null?void 0:f.card,D=qe(y);v?n.push(`"${v.toLowerCase().replace(E,"")}"`):D&&D.length>0?s.push(...D):n.push(y.replace(E,""))}return{appliedFilters:s,attributes:{artists:o,foilings:l,isExpansionSlot:c,rarities:d,releases:u,treatments:h},keywords:n,specialConditions:p}},Zi=e=>{let r=[];for(let t of e)r.push(...Qi(t));return r},Qi=e=>{let r=[],t=Object.values(g.Release).find(a=>a.toLowerCase().replaceAll(E,"")===e);if(t&&r.push(t),r.length===0){let a=g.setIdentifierToSetMappings[e];a&&r.push(a)}if(r.length===0){let a=Object.values(g.Release).filter(i=>i.toLowerCase().includes(e));a.length>0&&r.push(...a)}return r},nr={blue:3,yellow:2,red:1,white:0},qi=e=>{let r=[];for(let t of e)nr[t]||nr[t]===0?r.push(nr[t].toString()):r.push(t);return r},xt={exp:g.Meta.Expansion,expansion:g.Meta.Expansion,expansionSlot:g.Meta.Expansion,rainbow:g.Meta.Rainbow},es=e=>{let r=[];for(let t of e)xt[t]&&r.push(xt[t]);return r},Lt={r:g.Foiling.R,rf:g.Foiling.R,rainbow:g.Foiling.R,c:g.Foiling.C,cf:g.Foiling.C,cold:g.Foiling.C,g:g.Foiling.G,gf:g.Foiling.G,gold:g.Foiling.G},rs=e=>{let r=[];for(let t of e)Lt[t]&&r.push(Lt[t]);return r},Rt=j($({},Object.values(g.Treatment).reduce((e,r)=>(e[r.toLowerCase()]=r,e),{})),{aa:g.Treatment.AA,alt:g.Treatment.AA,"alt art":g.Treatment.AA,ab:g.Treatment.AB,"alt border":g.Treatment.AB,at:g.Treatment.AT,"alt text":g.Treatment.AT,ea:g.Treatment.EA,extended:g.Treatment.EA,"extended art":g.Treatment.EA,fa:g.Treatment.FA,full:g.Treatment.FA,"full art":g.Treatment.FA}),ts=e=>{let r=[];for(let t of e)Rt[t]?r.push(Rt[t]):g.Treatment[t.toUpperCase()]&&r.push(g.Treatment[t.toUpperCase()]);return r},Pt={c:g.Rarity.Common,f:g.Rarity.Fabled,l:g.Rarity.Legendary,m:g.Rarity.Majestic,v:g.Rarity.Marvel,r:g.Rarity.Rare,s:g.Rarity.SuperRare,t:g.Rarity.Token},as=e=>{let r=[];for(let t of e)Pt[t]?r.push(Pt[t]):r.push(t);return r},is=e=>{let r=[],t,a,i=Nt.find(s=>e.includes(s));if(i){let[,s]=e.split(i);It(s)?(t=!0,r.push(...s.trim().split("+").map(o=>o.replace(E,"")))):wt(s)?(a=!0,r.push(...s.trim().split(",").map(o=>o.replace(E,"")))):r.push(s.trim().replace(E,""))}else It(e)?(t=!0,r.push(...e.trim().split("+").map(s=>s.replace(E,"")))):wt(e)?(a=!0,r.push(...e.trim().split(",").map(s=>s.replace(E,"")))):e.startsWith('"')&&e.endsWith('"')?r.push(e.trim().replaceAll('"',"").replace(E,"")):r.push(e.trim().replace(E,""));return{modifier:i,values:r,isAnd:t,isOr:a}},ss=e=>{let r=os(e);if(r){let[,t]=e.split(r);return{excluded:!0,filterKey:t,isMeta:zt(t)}}else return{excluded:!1,filterKey:e,isMeta:zt(e)}},ns=e=>e.indexOf(":")>=0,It=e=>e.indexOf("+")>=0,wt=e=>e.indexOf(",")>=0,zt=e=>{var r;return!!((r=Le[e])!=null&&r.isMeta)},os=e=>{var r;return(r=Ot.find(t=>e.includes(t)))==null?void 0:r.slice(0,1)};var L=q(re()),Ht={artists:["Hoodwill"],cardIdentifier:"fangs-a-lot-blue",classes:[L.Class.Generic],defaultImage:"FNG000",functionalText:"If Fangs A Lot is put into your banished zone from your graveyard, instead put it into your hand.",legalFormats:[],legalHeroes:[L.Hero.Kayo,L.Hero.Levia,L.Hero.Rhinar],printings:[{artists:["Hoodwill"],identifier:"FNG000",image:"FNG000",print:"FNG000",rarity:L.Rarity.Rare,set:L.Release.Promos},{artists:["Hoodwill"],identifier:"FNG000",image:"FNG000_Marvel",print:`FNG000-${L.Treatment.FA}`,rarity:L.Rarity.Marvel,set:L.Release.Promos,treatment:L.Treatment.FA}],name:"Fangs A Lot",rarities:[L.Rarity.Rare,L.Rarity.Marvel],rarity:L.Rarity.Rare,sets:[L.Release.Promos],setIdentifiers:["FNG000"],specialImage:"FNG000_Marvel",subtypes:[L.Subtype.Attack],types:[L.Type.Action],typeText:"Generic Action - Attack"},_t=[{keyword:Ht.name.toLowerCase(),card:Ht}];var lr=(e,r)=>{let t=r.find(a=>cr(a.name)===e);return t||(t=r.find(a=>cr(a.name).includes(e))),t},cr=e=>pe(e.toLowerCase().trim().replace(E,"")),pe=e=>e.normalize("NFD").replace(new RegExp("\\p{Diacritic}","gu"),"");var ur=class{constructor(r,t=!1){this.log=(r,...t)=>{this.debug&&console.log(r,...t)};this.search=(r,t)=>{let a,{appliedFilters:i,attributes:s,keywords:o,specialConditions:n}=or(r,this.cards),l=o.join(" "),c=t?_t.filter(k=>k.keyword===l):[];if(c.length>0?a=c.map(({card:k})=>k):o.length?a=this.fuse.search(l).map(k=>k.item):a=[...this.cards],i.length&&(a=a.filter(k=>k&&Wt(k,i,n))),o.length===0){let k="";if(s.releases.length===1)try{let m=s.releases[0];k=fe.setToSetIdentifierMappings[m][0].toUpperCase()}catch(m){console.error("Error getting set identifier from search",m)}k?a.sort((m,b)=>{var x,M;let F=(x=m.setIdentifiers.find(C=>C.includes(k)))==null?void 0:x.replace(k,""),B=(M=b.setIdentifiers.find(C=>C.includes(k)))==null?void 0:M.replace(k,"");return F&&B?F.localeCompare(B):-1}):a.sort((m,b)=>m.name===b.name?`${m.pitch}`.localeCompare(`${b.pitch}`):m.name.localeCompare(b.name))}else{let k=[],m=[],b=o.map(F=>F.toLowerCase().replace(E,"")).join(" ");for(let F of a)F.name.toLowerCase().replace(E,"")===b?k.push(F):m.push(F);a=[...k,...m]}let d,{artists:u,isExpansionSlot:h,foilings:p,releases:f,treatments:y}=s;(u.length>0||h||p.length>0||f.length>0||y.length>0)&&(d=a.map(k=>{let m=k.printings.filter(b=>{let F=!!b.image,B=u.length===0||u.some(R=>b.artists.find(w=>w.replace(E,"").toLowerCase().includes(R))),x=(h||void 0)===b.isExpansionSlot,M=p.length===0||p.includes(b.foiling),C=f.length===0||f.includes(b.set),T=y.length===0||y.includes(b.treatment);return F&&B&&x&&M&&C&&T});return j($({},k),{matchingPrintings:m})}));let D=(d==null?void 0:d.length)>0?d:a;return{appliedFilters:i,attributes:s,keywords:o,searchResults:D}};let a={getFn:(i,s)=>{let o=dr.default.config.getFn(i,s);return o&&(Array.isArray(o)?o.map(n=>pe(n.replace(E,""))):pe(o).replace(E,""))},ignoreLocation:!0,includeScore:!0,keys:[{name:"name",weight:10},{name:"functionalText",weight:6},{name:"setIdentifiers",weight:2},{name:"traits",weight:4},{name:"typeText",weight:6}],threshold:.15,useExtendedSearch:!0};this.cards=[...r],this.debug=t,this.fuse=new dr.default([...r],a)}},Gt=ur,Wt=(e,r,t)=>{let a=!0;for(let i of r){let{isNumber:s,isString:o,isArray:n,isBoolean:l,property:c}=i.filterToPropertyMapping;(s&&!ls(e,i)||o&&!cs(e,i)||n&&!ds(e,i,r)||l&&!us(e,i))&&(a=!1);let d=!!e.legalOverrides&&!!e.legalOverrides[fe.Format.Clash]&&e.legalOverrides[fe.Format.Clash].length>0,u=t.isClash&&d}return a},ls=(e,r)=>{var t;if(Pe(r,e)){let{values:a,modifier:i,excluded:s,filterToPropertyMapping:{partialMatch:o}}=r,n=hr(e,r);if(n!=null&&!isNaN(n))if(n=parseInt(n),i)switch(i){case">=":let l=a==null?void 0:a.some(h=>n>=parseInt(h));return s?!l:l;case">":let c=a==null?void 0:a.some(h=>n>parseInt(h));return s?!c:c;case"<=":let d=a==null?void 0:a.some(h=>n<=parseInt(h));return s?!d:d;case"<":let u=a==null?void 0:a.some(h=>n<parseInt(h));return s?!u:u;default:return!1}else{let l=a==null?void 0:a.some(c=>n===parseInt(c));return s?!l:l}else{let l=(t=ps(e,r))==null?void 0:t.toLowerCase(),c=o?a==null?void 0:a.some(d=>l==null?void 0:l.includes(d)):a==null?void 0:a.some(d=>l===d);return s?!c:c}}else return!0},cs=(e,r)=>{var t;if(Pe(r,e)){let{values:a,isAnd:i,excluded:s,filterToPropertyMapping:{partialMatch:o}}=r,n=(t=hr(e,r))==null?void 0:t.replaceAll(E,"");if(o){let l=i?a==null?void 0:a.every(c=>n==null?void 0:n.toLowerCase().includes(c)):a==null?void 0:a.some(c=>n==null?void 0:n.toLowerCase().includes(c));return s?!l:l}else{let l=i?a==null?void 0:a.every(c=>(n==null?void 0:n.toLowerCase())===c):a==null?void 0:a.some(c=>(n==null?void 0:n.toLowerCase())===c);return s?!l:l}}else return!0},ds=(e,r,t)=>{if(Pe(r,e)){let{values:a,isAnd:i,excluded:s,filterToPropertyMapping:{partialMatch:o}}=r,n=hs(e,r,t).map(l=>l==null?void 0:l.replaceAll(E,""));if(o){let l=i?a.every(d=>n==null?void 0:n.some(u=>u==null?void 0:u.toLowerCase().includes(d))):a.some(d=>n==null?void 0:n.some(u=>u==null?void 0:u.toLowerCase().includes(d))),c=n.length===0;return s?!l||c:l}else{let l=i?a.every(c=>n==null?void 0:n.some(d=>(d==null?void 0:d.toLowerCase())===c)):a.some(c=>n==null?void 0:n.some(d=>(d==null?void 0:d.toLowerCase())===c));return s?!l:l}}else return!0},us=(e,r)=>{if(Pe(r,e)){let{excluded:t}=r,a=hr(e,r);return t?!a:a}else return!0},hr=(e,r)=>{let{filterToPropertyMapping:t}=r;return e[t.property]},hs=(e,r,t)=>{let{filterToPropertyMapping:{isNestedPropertyArray:a,nestedProperty:i,property:s}}=r,o=e[s]||[],n=[],l=Object.keys(e.legalOverrides||{}).length>0,c=r.filterToPropertyMapping.property==="legalHeroes",d=t.find(({filterToPropertyMapping:h})=>h.property==="legalFormats");if(l&&c&&!!d){let h=new Set;for(let{format:p,heroes:f}of e.legalOverrides||[])if(d.values.includes(p.toLowerCase()))for(let y of f)h.add(y);n=Array.from(h)}if(n.length===0)if(i){let h=new Set;for(let p of o)if(a){let f=p[i]||[];for(let y of f)h.add(y)}else{let f=p[i];f&&h.add(f)}n=Array.from(h)}else n=o;return n},ps=(e,r)=>{let{filterToPropertyMapping:t}=r;return e[t.specialProperty]},Pe=({cardTypes:e},{types:r,subtypes:t})=>!e||(e==null?void 0:e.some(a=>r.map(i=>i.toLowerCase()).includes(a.toLowerCase())||t.map(i=>i.toLowerCase()).includes(a.toLowerCase())));var le=q(re());var ge=q(re()),fs={"Dawnblade, Resplendent":"Dawnblade"},Kt=e=>fs[e.name]||e.name,$t=e=>{var r;return(r=e.functionalText)==null?void 0:r.replaceAll(e.name,"")},Re=(e,r)=>{let t=r.find(a=>a.name.toLowerCase().replace(E,"")===e);return t||(t=r.find(a=>a.name.toLowerCase().replace(E,"").includes(e))),pr(t,r)},pr=(e,r)=>{var s,o,n,l,c;let t=[],a=[],i=[];if(e){let d=[],u=[],h=Kt(e);for(let p of r){let f=Kt(p),y=h===f,v=e.cardIdentifier!==p.cardIdentifier,D=e.pitch!==p.pitch;if(y&&v&&D)t.push(p);else if(!y){let k=e.name==="Seismic Surge",m=(s=p.keywords)==null?void 0:s.includes(ge.Keyword.Heave),b=k&&m,F=e.name==="Marked",B=(o=p.keywords)==null?void 0:o.includes(ge.Keyword.Mark),x=F&&B,M=$t(p),C=(M==null?void 0:M.includes(h))||((n=e.traits)==null?void 0:n.some(ce=>M==null?void 0:M.includes(ce))),T=$t(e);(C||b||x)&&d.push(p);let P=p.traits||[],R=(T==null?void 0:T.includes(f))||P.some(ce=>T==null?void 0:T.includes(ce)),w=p.name==="Seismic Surge",S=(l=e.keywords)==null?void 0:l.includes(ge.Keyword.Heave),z=w&&S,I=p.name==="Marked",W=(c=e.keywords)==null?void 0:c.includes(ge.Keyword.Mark);(R||z||I&&W)&&u.push(p)}}for(let p of d)a.push(p);for(let p of u){let f=p.name;h!==f&&!u.some(y=>{let v=y.name;return v!==f&&(v==null?void 0:v.includes(f))})&&i.push(p)}}return{otherPitches:t,referencedBy:a,references:i}},gs=["cash-in-yellow"],ms={[le.Hero.Crackni]:{traits:[le.Trait.AgentOfChaos]},[le.Hero.Maxx]:{tokens:["hyper-driver"]}},ys=(e,r,t)=>{var i,s;let a=new Set;for(let o of e.filter(({cardIdentifier:n})=>!gs.includes(n))){let{references:n}=pr(o,r);for(let l of n.filter(c=>{let d=c.name==="Hyper Driver",u=t===le.Hero.Maxx;return!d||u}))a.add(l)}if(t){let o=ms[t];if(o){if(o.cards)for(let n of e)(i=o.cards)!=null&&i.includes(n.cardIdentifier)&&a.add(n);if(o.tokens)for(let n of r)(s=o.tokens)!=null&&s.includes(n.cardIdentifier)&&a.add(n)}}return Array.from(a)};0&&(module.exports={FilterProperty,PUNCTUATION,abbreviations,availableExclusions,availableModifiers,filterCard,filtersToCardPropertyMappings,getAbbreviation,getAbbreviationByCard,getCardByName,getCleanText,getExcludedMetaFilters,getKeywordsAndAppliedFiltersFromText,getMetaFilters,getNormalizedText,getRelatedCards,getRelatedCardsByName,getTokensReferencedByCards,multiWordShorthands,shorthands,singleWordShorthands});
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@flesh-and-blood/search",
3
3
  "description": "TypeScript search engine for Flesh and Blood cards",
4
- "version": "3.6.54",
4
+ "version": "3.6.56",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
7
7
  "scripts": {
@@ -13,11 +13,11 @@
13
13
  "full": "npm run build"
14
14
  },
15
15
  "dependencies": {
16
- "@flesh-and-blood/types": "^3.6.53",
16
+ "@flesh-and-blood/types": "^3.6.56",
17
17
  "fuse.js": "^6.6.2"
18
18
  },
19
19
  "devDependencies": {
20
- "@flesh-and-blood/cards": "^3.6.54",
20
+ "@flesh-and-blood/cards": "^3.6.56",
21
21
  "@types/jest": "^29.5.11",
22
22
  "@types/node": "^20.10.5",
23
23
  "esbuild": "^0.19.10",
@@ -47,5 +47,5 @@
47
47
  "FAB",
48
48
  "FABTCG"
49
49
  ],
50
- "gitHead": "aba28a9feab3343397b63dab5ba238953a2e4091"
50
+ "gitHead": "b5d3baa2d8d907ccc9e9c7a9a7a6a414a1d3416d"
51
51
  }