Best JavaScript code snippet using playwright-internal
Dicemasters.js
Source:Dicemasters.js  
1var dicemastersCardData = [2  {3    id: 1,4    dieId: 1,5    setAbbr: "AVX",6    name: "Beast",7    subtitle: "Big Boy Blue",8    cost: 2,9    type: "Mask",10    affiliation: "X-Men",11    rarity: "Starter",12    ability: "Beast gets a +1A and +1D (until the end of the turn) when he blocks.",13    "* ability": "He gets +2A and +2D instead.",14    "** ability": "",15    global: "",16    dieLimit: 417  },18  {19    id: 2,20    dieId: 1,21    setAbbr: "AVX",22    name: "Beast",23    subtitle: "Genetic Expert",24    cost: 2,25    type: "Mask",26    affiliation: "X-Men",27    rarity: "Starter",28    ability: "If Beast is knocked out while blocking, you gain 1 life.",29    "* ability": "Your opponent also takes 2 damage.",30    "** ability": "",31    global: "",32    dieLimit: 433  },34  {35    id: 3,36    dieId: 1,37    setAbbr: "AVX",38    name: "Beast",39    subtitle: "Mutate #666",40    cost: 2,41    type: "Mask",42    affiliation: "X-Men",43    rarity: "Starter",44    ability: "When Beast blocks, draw one die and place it in your prep area.",45    "* ability": "Instead draw 2 dice; place one in your prep area and the other in your used pile.",46    "** ability": "",47    global: "",48    dieLimit: 449  },50  {51    id: 4,52    dieId: 2,53    setAbbr: "AVX",54    name: "Captain America",55    subtitle: "American Hero",56    cost: 4,57    type: "Shield",58    affiliation: "Avengers",59    rarity: "Starter",60    ability: "When fielded, you may roll a Sidekick die from your used pile (you cannot select a die that paid to field this one; place the die in your reserve pool).",61    "* ability": "",62    "** ability": "",63    global: "",64    dieLimit: 465  },66  {67    id: 5,68    dieId: 2,69    setAbbr: "AVX",70    name: "Captain America",71    subtitle: "Natural Leader",72    cost: 4,73    type: "Shield",74    affiliation: "Avengers",75    rarity: "Starter",76    ability: "While Captain America is active, your Sidekick characters get +1A and +1D (no matter how many Captain America dice you have fielded).",77    "* ability": "",78    "** ability": "",79    global: "",80    dieLimit: 481  },82  {83    id: 6,84    dieId: 2,85    setAbbr: "AVX",86    name: "Captain America",87    subtitle: "Star-Spangled Avenger",88    cost: 5,89    type: "Shield",90    affiliation: "Avengers",91    rarity: "Starter",92    ability: "When fielded, knock out each of your opponent's Sidekick characters.  Gain 1 life for each Sidekick knocked out this way.",93    "* ability": "",94    "** ability": "",95    global: "",96    dieLimit: 497  },98  {99    id: 7,100    dieId: 3,101    setAbbr: "AVX",102    name: "Hulk",103    subtitle: "Anger Issue",104    cost: 7,105    type: "Fist",106    affiliation: "Avengers",107    rarity: "Starter",108    ability: "While Hulk is active, when either you or Hulk take damage, Hulk gets +2A and +2D (until the end of the turn).",109    "* ability": "Hulk gets +3A and +3D instead.",110    "** ability": "",111    global: "",112    dieLimit: 4113  },114  {115    id: 8,116    dieId: 3,117    setAbbr: "AVX",118    name: "Hulk",119    subtitle: "Annihilator",120    cost: 6,121    type: "Fist",122    affiliation: "Avengers",123    rarity: "Starter",124    ability: "While Hulk is active, when either you or Hulk take damage, move all Hulk dice from your used pile to your prep area.",125    "* ability": "",126    "** ability": "",127    global: "",128    dieLimit: 4129  },130  {131    id: 9,132    dieId: 3,133    setAbbr: "AVX",134    name: "Hulk",135    subtitle: "Jade Giant",136    cost: 6,137    type: "Fist",138    affiliation: "Avengers",139    rarity: "Starter",140    ability: "While Hulk is active, when either you or Hulk take damage, knock out one of your opponent's level 1 characters.",141    "* ability": "Instead knock out one opposing character of any level.",142    "** ability": "",143    global: "",144    dieLimit: 4145  },146  {147    id: 10,148    dieId: 4,149    setAbbr: "AVX",150    name: "Human Torch",151    subtitle: "Flame On!",152    cost: 4,153    type: "Bolt",154    affiliation: "Fantastic Four",155    rarity: "Starter",156    ability: "While Human Torch is active, he deals 1 damage to a character or player each time you field a character (not 1 damage per die).",157    "* ability": "",158    "** ability": "",159    global: "Pay [1 Bolt] when you deal damage with an action die or global ability to deal one extra damage to one target.",160    dieLimit: 4161  },162  {163    id: 11,164    dieId: 4,165    setAbbr: "AVX",166    name: "Human Torch",167    subtitle: "Matchstick",168    cost: 3,169    type: "Bolt",170    affiliation: "Fantastic Four",171    rarity: "Starter",172    ability: "While Human Torch is active, each time you field a character, you may roll one Human Torch from your used pile (not one that paid to field the die).  If you roll a character side, place it in your reserve pool; otherwise place it in your used pile.",173    "* ability": "",174    "** ability": "",175    global: "",176    dieLimit: 4177  },178  {179    id: 12,180    dieId: 4,181    setAbbr: "AVX",182    name: "Human Torch",183    subtitle: "Playing with Fire",184    cost: 2,185    type: "Bolt",186    affiliation: "Fantastic Four",187    rarity: "Starter",188    ability: "The first time you field a character each turn, each Human Torch already in the field gets +1A and +1D (until the end of the turn).",189    "* ability": "",190    "** ability": "",191    global: "",192    dieLimit: 4193  },194  {195    id: 13,196    dieId: 5,197    setAbbr: "AVX",198    name: "Iron Man",199    subtitle: "Inventor",200    cost: 4,201    type: "Shield",202    affiliation: "Avengers",203    rarity: "Starter",204    ability: "Each time Iron Man takes damage, reduce the damage he takes by 1.",205    "* ability": "Reduce the damage by 2 instead.",206    "** ability": "",207    global: "Pay [1 Shield] to redirect 1 damage from you to one of your characters.",208    dieLimit: 4209  },210  {211    id: 14,212    dieId: 5,213    setAbbr: "AVX",214    name: "Iron Man",215    subtitle: "Philanthropist",216    cost: 5,217    type: "Shield",218    affiliation: "Avengers",219    rarity: "Starter",220    ability: "Each time Iron Man takes damage, you gain 1 life.",221    "* ability": "Gain 2 life instead.",222    "** ability": "",223    global: "",224    dieLimit: 4225  },226  {227    id: 15,228    dieId: 5,229    setAbbr: "AVX",230    name: "Iron Man",231    subtitle: "Playboy",232    cost: 4,233    type: "Shield",234    affiliation: "Avengers",235    rarity: "Starter",236    ability: "Each time Iron Man takes damage in the attack step, he deals 3 damage to one opposing character that is attacking or blocking.",237    "* ability": "",238    "** ability": "",239    global: "",240    dieLimit: 4241  },242  {243    id: 16,244    dieId: 6,245    setAbbr: "AVX",246    name: "Spider-Man",247    subtitle: "\"Tiger\"",248    cost: 4,249    type: "Fist",250    affiliation: "None",251    rarity: "Starter",252    ability: "You may pay [1 Fist] to prevent Spider-Man from being affected by an ability or game effect (other than damage from a character engaged with him).",253    "* ability": "",254    "** ability": "",255    global: "",256    dieLimit: 4257  },258  {259    id: 17,260    dieId: 6,261    setAbbr: "AVX",262    name: "Spider-Man",263    subtitle: "Webhead",264    cost: 4,265    type: "Fist",266    affiliation: "None",267    rarity: "Starter",268    ability: "When Spider-Man assigns to attack, you may pay [1 Fist] to give him +4D (you can only do this once per turn per die).",269    "* ability": "",270    "** ability": "",271    global: "",272    dieLimit: 4273  },274  {275    id: 18,276    dieId: 6,277    setAbbr: "AVX",278    name: "Spider-Man",279    subtitle: "Webslinger",280    cost: 5,281    type: "Fist",282    affiliation: "None",283    rarity: "Starter",284    ability: "When Spider-Man assigns to attack, you may pay [1 Fist] to force every opposing character to block him if able.",285    "* ability": "",286    "** ability": "",287    global: "",288    dieLimit: 4289  },290  {291    id: 19,292    dieId: 7,293    setAbbr: "AVX",294    name: "Storm",295    subtitle: "African Priestess",296    cost: 3,297    type: "Mask",298    affiliation: "X-Men",299    rarity: "Starter",300    ability: "When fielded, reroll a target opposing character.  If the result is not a character, place that die in your opponent's used pile.",301    "* ability": "",302    "** ability": "",303    global: "",304    dieLimit: 4305  },306  {307    id: 20,308    dieId: 7,309    setAbbr: "AVX",310    name: "Storm",311    subtitle: "Goddess of the Plains",312    cost: 4,313    type: "Mask",314    affiliation: "X-Men",315    rarity: "Starter",316    ability: "When Storm attacks, reroll each of your opponent's characters. Place any die that does not result in a character in your opponent's prep area.",317    "* ability": "",318    "** ability": "",319    global: "",320    dieLimit: 4321  },322  {323    id: 21,324    dieId: 7,325    setAbbr: "AVX",326    name: "Storm",327    subtitle: "Ro",328    cost: 2,329    type: "Mask",330    affiliation: "X-Men",331    rarity: "Starter",332    ability: "After blockers are assigned, reroll all characters engaged with Storm.  Place each such die that does not show a character in your opponent's prep area.",333    "* ability": "",334    "** ability": "",335    global: "",336    dieLimit: 4337  },338  {339    id: 22,340    dieId: 8,341    setAbbr: "AVX",342    name: "Thor",343    subtitle: "Legendary Warrior",344    cost: 6,345    type: "Bolt",346    affiliation: "Avengers",347    rarity: "Starter",348    ability: "When Thor damages your opponent, knock out an opposing [Fist] character.",349    "* ability": "",350    "** ability": "",351    global: "",352    dieLimit: 4353  },354  {355    id: 23,356    dieId: 8,357    setAbbr: "AVX",358    name: "Thor",359    subtitle: "Lord of Asgard",360    cost: 6,361    type: "Bolt",362    affiliation: "Avengers",363    rarity: "Starter",364    ability: "Thor can't be blocked by [Fist] characters.",365    "* ability": "",366    "** ability": "",367    global: "",368    dieLimit: 4369  },370  {371    id: 24,372    dieId: 8,373    setAbbr: "AVX",374    name: "Thor",375    subtitle: "Odinson",376    cost: 6,377    type: "Bolt",378    affiliation: "Avengers",379    rarity: "Starter",380    ability: "When fielded, capture all opposing [Fist] characters (return them at the end of the turn).",381    "* ability": "",382    "** ability": "",383    global: "",384    dieLimit: 4385  },386  {387    id: 25,388    dieId: 9,389    setAbbr: "AVX",390    name: "Basic Action Card",391    subtitle: "Distraction",392    cost: 4,393    type: "Generic",394    affiliation: "None",395    rarity: "Starter",396    ability: "Your opponent targets two of his or her characters. Those characters cannot block (this turn).",397    "* ability": "",398    "** ability": "",399    global: "Pay [1 Mask] to remove one attacker from the attack zone to the field.",400    dieLimit: 3401  },402  {403    id: 26,404    dieId: 9,405    setAbbr: "AVX",406    name: "Basic Action Card",407    subtitle: "Focus Power",408    cost: 4,409    type: "Generic",410    affiliation: "None",411    rarity: "Starter",412    ability: "Spin one target character up or down one level.",413    "* ability": "Spin a second target character up or down one level.",414    "** ability": "Spin a second target character up or down one level.",415    global: "",416    dieLimit: 3417  },418  {419    id: 27,420    dieId: 9,421    setAbbr: "AVX",422    name: "Basic Action Card",423    subtitle: "Force Beam",424    cost: 3,425    type: "Generic",426    affiliation: "None",427    rarity: "Starter",428    ability: "Deal 1 damage to each character.",429    "* ability": "Deal 1 extra damage to each character.",430    "** ability": "Deal 1 extra damage to each player and each character.",431    global: "",432    dieLimit: 3433  },434  {435    id: 28,436    dieId: 9,437    setAbbr: "AVX",438    name: "Basic Action Card",439    subtitle: "Gearing Up",440    cost: 4,441    type: "Generic",442    affiliation: "None",443    rarity: "Starter",444    ability: "Draw and roll two dice from your bag.",445    "* ability": "",446    "** ability": "",447    global: "",448    dieLimit: 3449  },450  {451    id: 29,452    dieId: 9,453    setAbbr: "AVX",454    name: "Basic Action Card",455    subtitle: "Inner Rage",456    cost: 3,457    type: "Generic",458    affiliation: "None",459    rarity: "Starter",460    ability: "Two of your target characters get +1A and +1D (until the end of the turn).",461    "* ability": "Those characters get an additional +1A and +1D.",462    "** ability": "Those characters get an additional +1A and +1D.",463    global: "",464    dieLimit: 3465  },466  {467    id: 30,468    dieId: 9,469    setAbbr: "AVX",470    name: "Basic Action Card",471    subtitle: "Invulnerability",472    cost: 2,473    type: "Generic",474    affiliation: "None",475    rarity: "Starter",476    ability: "Your attacking characters that are knocked out (this turn) return to the field.",477    "* ability": "",478    "** ability": "",479    global: "Pay [1 Bolt]. One target character gets +1A (until the end of the turn).",480    dieLimit: 3481  },482  {483    id: 31,484    dieId: 9,485    setAbbr: "AVX",486    name: "Basic Action Card",487    subtitle: "Power Bolt",488    cost: 3,489    type: "Generic",490    affiliation: "None",491    rarity: "Starter",492    ability: "Deal 2 damage to one target character or player.",493    "* ability": "",494    "** ability": "",495    global: "",496    dieLimit: 3497  },498  {499    id: 32,500    dieId: 9,501    setAbbr: "AVX",502    name: "Basic Action Card",503    subtitle: "Smash!",504    cost: 3,505    type: "Generic",506    affiliation: "None",507    rarity: "Starter",508    ability: "Knock out a target level 1 character.",509    "* ability": "",510    "** ability": "Knock out a level 2 or lower character instead.",511    global: "Pay [1 Fist].  Target blocked character deals no damage.",512    dieLimit: 3513  },514  {515    id: 33,516    dieId: 9,517    setAbbr: "AVX",518    name: "Basic Action Card",519    subtitle: "Take Cover",520    cost: 3,521    type: "Generic",522    affiliation: "None",523    rarity: "Starter",524    ability: "Your characters get +2D.",525    "* ability": "One character gets an extra +3D.",526    "** ability": "One character gets an extra +3D.",527    global: "Pay [1 Shield]to give one target character +1D (until the end of the turn).",528    dieLimit: 3529  },530  {531    id: 34,532    dieId: 9,533    setAbbr: "AVX",534    name: "Basic Action Card",535    subtitle: "Thrown Car",536    cost: 4,537    type: "Generic",538    affiliation: "None",539    rarity: "Starter",540    ability: "Two of your target characters get +1A.  While attacking, damage that those two characters deal in excess of the total defense of blocking characters is dealt to your opponent.",541    "* ability": "",542    "** ability": "",543    global: "",544    dieLimit: 3545  },546  {547    id: 35,548    dieId: 10,549    setAbbr: "AVX",550    name: "Angel",551    subtitle: "High Ground",552    cost: 3,553    type: "Shield",554    affiliation: "None",555    rarity: "Common",556    ability: "Angel cannot be blocked by a character with a lower level.",557    "* ability": "",558    "** ability": "",559    global: "",560    dieLimit: 4561  },562  {563    id: 36,564    dieId: 11,565    setAbbr: "AVX",566    name: "Black Widow",567    subtitle: "Natural",568    cost: 2,569    type: "Fist",570    affiliation: "Avengers",571    rarity: "Common",572    ability: "At the end of the attack step, spin each character assigned with Black Widow down 1 level (this happens before damage clears).",573    "* ability": "",574    "** ability": "",575    global: "",576    dieLimit: 4577  },578  {579    id: 37,580    dieId: 12,581    setAbbr: "AVX",582    name: "Colossus",583    subtitle: "Unstoppable",584    cost: 6,585    type: "Fist",586    affiliation: "X-Men",587    rarity: "Common",588    ability: "At the end of your turn, spin each of your Colossus in the field up one level.",589    "* ability": "",590    "** ability": "",591    global: "",592    dieLimit: 4593  },594  {595    id: 38,596    dieId: 13,597    setAbbr: "AVX",598    name: "Cyclops",599    subtitle: "Slim",600    cost: 5,601    type: "Bolt",602    affiliation: "X-Men",603    rarity: "Common",604    ability: "When Cyclops is blocked by more than one character, he deals damage equal to his full attack to each character blocking him (instead of having to split it).",605    "* ability": "",606    "** ability": "",607    global: "",608    dieLimit: 4609  },610  {611    id: 39,612    dieId: 14,613    setAbbr: "AVX",614    name: "Deadpool",615    subtitle: "Assassin",616    cost: 4,617    type: "Fist",618    affiliation: "None",619    rarity: "Common",620    ability: "When Deadpool attacks, you may assign an opposing character to block him.",621    "* ability": "",622    "** ability": "",623    global: "",624    dieLimit: 4625  },626  {627    id: 40,628    dieId: 15,629    setAbbr: "AVX",630    name: "Doctor Doom",631    subtitle: "Reed Richard's Rival",632    cost: 5,633    type: "Shield",634    affiliation: "Villains",635    rarity: "Common",636    ability: "While Doctor Doom is active, each non-Villain character gets -1A and -1D (no matter how many Doctor Doom dice you have fielded).",637    "* ability": "",638    "** ability": "",639    global: "",640    dieLimit: 4641  },642  {643    id: 41,644    dieId: 16,645    setAbbr: "AVX",646    name: "Doctor Octopus",647    subtitle: "Megalomaniac",648    cost: 6,649    type: "Shield",650    affiliation: "Villains",651    rarity: "Common",652    ability: "When Doctor Octopus assigns to attack, target an opposing character.  That character cannot block (this turn).",653    "* ability": "",654    "** ability": "",655    global: "",656    dieLimit: 4657  },658  {659    id: 42,660    dieId: 17,661    setAbbr: "AVX",662    name: "Doctor Strange",663    subtitle: "Sorcerer Supreme",664    cost: 7,665    type: "Mask",666    affiliation: "None",667    rarity: "Common",668    ability: "While Doctor Strange is active, you may purchase one action die for free during your main step (not one action die per Doctor Strange die).",669    "* ability": "",670    "** ability": "",671    global: "",672    dieLimit: 4673  },674  {675    id: 43,676    dieId: 18,677    setAbbr: "AVX",678    name: "Gambit",679    subtitle: "Ace in the Hole",680    cost: 3,681    type: "Mask",682    affiliation: "X-Men",683    rarity: "Common",684    ability: "When fielded, you may draw and roll one die (place it in your reserve pool).",685    "* ability": "Instead draw 2 dice, roll one of them and return the other to your bag.",686    "** ability": "",687    global: "",688    dieLimit: 4689  },690  {691    id: 44,692    dieId: 19,693    setAbbr: "AVX",694    name: "Ghost Rider",695    subtitle: "Johnny Blaze",696    cost: 2,697    type: "Bolt",698    affiliation: "None",699    rarity: "Common",700    ability: "(No special effects; just a low-cost die with good numbers.)",701    "* ability": "",702    "** ability": "",703    global: "",704    dieLimit: 4705  },706  {707    id: 45,708    dieId: 20,709    setAbbr: "AVX",710    name: "Green Goblin",711    subtitle: "Goblin-Lord",712    cost: 3,713    type: "Bolt",714    affiliation: "Villains",715    rarity: "Common",716    ability: "While Green Goblin is active, your Sidekick characters get +1A and +1D (no matter how many Green Goblin dice you have fielded).",717    "* ability": "",718    "** ability": "",719    global: "",720    dieLimit: 4721  },722  {723    id: 46,724    dieId: 21,725    setAbbr: "AVX",726    name: "Hawkeye",727    subtitle: "Longbow",728    cost: 4,729    type: "Bolt",730    affiliation: "Avengers",731    rarity: "Common",732    ability: "When fielded, Hawkeye deals his attack value in damage to a target opposing character.",733    "* ability": "",734    "** ability": "",735    global: "",736    dieLimit: 3737  },738  {739    id: 47,740    dieId: 22,741    setAbbr: "AVX",742    name: "Loki",743    subtitle: "Trickster",744    cost: 6,745    type: "Mask",746    affiliation: "Villains",747    rarity: "Common",748    ability: "When fielded, capture an opposing die of equal or lower level (return it to your opponent's field at the end of the turn).",749    "* ability": "",750    "** ability": "",751    global: "",752    dieLimit: 4753  },754  {755    id: 48,756    dieId: 23,757    setAbbr: "AVX",758    name: "Magneto",759    subtitle: "Former Comrade",760    cost: 5,761    type: "Mask",762    affiliation: "Villains",763    rarity: "Common",764    ability: "Magneto gets +2A and +2D when engaged with an X-Men character.",765    "* ability": "",766    "** ability": "",767    global: "",768    dieLimit: 4769  },770  {771    id: 49,772    dieId: 24,773    setAbbr: "AVX",774    name: "Mr. Fantastic",775    subtitle: "Brilliant Scientist",776    cost: 3,777    type: "Mask",778    affiliation: "Fantastic Four",779    rarity: "Common",780    ability: "Mr. Fantastic gets +2A and +2D while blocking.",781    "* ability": "",782    "** ability": "",783    global: "Pay [1 Mask].  Target character must attack this turn.",784    dieLimit: 4785  },786  {787    id: 50,788    dieId: 25,789    setAbbr: "AVX",790    name: "Mystique",791    subtitle: "Unknown",792    cost: 4,793    type: "Mask",794    affiliation: "Villains",795    rarity: "Common",796    ability: "When Mystique is engaged, she copies the die stats and card abilities of one character that she is engaged with.",797    "* ability": "She also gains an extra +1A and +1D.",798    "** ability": "",799    global: "",800    dieLimit: 4801  },802  {803    id: 51,804    dieId: 26,805    setAbbr: "AVX",806    name: "Nick Fury",807    subtitle: "Mr. Anger",808    cost: 2,809    type: "Shield",810    affiliation: "None",811    rarity: "Common",812    ability: "While Nick Fury is active, you may field Avengers characters for free.",813    "* ability": "",814    "** ability": "",815    global: "",816    dieLimit: 4817  },818  {819    id: 52,820    dieId: 27,821    setAbbr: "AVX",822    name: "Nightcrawler",823    subtitle: "Fuzzy Elf",824    cost: 5,825    type: "Fist",826    affiliation: "None",827    rarity: "Common",828    ability: "Nightcrawler cannot be blocked by non-[Mask] characters.",829    "* ability": "",830    "** ability": "",831    global: "",832    dieLimit: 4833  },834  {835    id: 53,836    dieId: 28,837    setAbbr: "AVX",838    name: "Nova",839    subtitle: "Quasar",840    cost: 5,841    type: "Bolt",842    affiliation: "None",843    rarity: "Common",844    ability: "Each time Nova takes damage, you may draw one die and put it in your prep area.",845    "* ability": "",846    "** ability": "",847    global: "",848    dieLimit: 4849  },850  {851    id: 54,852    dieId: 29,853    setAbbr: "AVX",854    name: "Phoenix",855    subtitle: "Ms. Psyche",856    cost: 6,857    type: "Bolt",858    affiliation: "X-Men",859    rarity: "Common",860    ability: "When Phoenix is engaged, she gains +2A and +2D.",861    "* ability": "",862    "** ability": "",863    global: "Pay [1 Bolt].  Target character must attack.",864    dieLimit: 3865  },866  {867    id: 55,868    dieId: 30,869    setAbbr: "AVX",870    name: "Professor X",871    subtitle: "Principal",872    cost: 6,873    type: "Mask",874    affiliation: "X-Men",875    rarity: "Common",876    ability: "While Professor X is active, your opponent cannot reroll dice during the Roll and Reroll Step.  He or she can pay 2 life to prevent this effect for this turn.",877    "* ability": "",878    "** ability": "",879    global: "",880    dieLimit: 3881  },882  {883    id: 56,884    dieId: 31,885    setAbbr: "AVX",886    name: "Punisher",887    subtitle: "McRook",888    cost: 4,889    type: "Bolt",890    affiliation: "None",891    rarity: "Common",892    ability: "When Punisher assigns to attack, knock out one target opposing character.  Your opponent may prevent this effect by paying 2 life.",893    "* ability": "",894    "** ability": "",895    global: "",896    dieLimit: 4897  },898  {899    id: 57,900    dieId: 32,901    setAbbr: "AVX",902    name: "Rogue",903    subtitle: "Anna Raven",904    cost: 4,905    type: "Mask",906    affiliation: "X-Men",907    rarity: "Common",908    ability: "When fielded, you may capture an opposing die in the used pile (return it at the end of the turn).  Spin it to level 1. Rogue copies that die's stats.",909    "* ability": "",910    "** ability": "",911    global: "",912    dieLimit: 4913  },914  {915    id: 58,916    dieId: 33,917    setAbbr: "AVX",918    name: "Silver Surfer",919    subtitle: "Silverado",920    cost: 6,921    type: "Shield",922    affiliation: "None",923    rarity: "Common",924    ability: "At the start of the attack step, if your opponent has more life than you, Silver Surfer gets +2A and +2D.",925    "* ability": "",926    "** ability": "",927    global: "Once during your turn, pay [1 Shield] and take 2 damage to draw one die and place it in your prep area.",928    dieLimit: 4929  },930  {931    id: 59,932    dieId: 34,933    setAbbr: "AVX",934    name: "Thing",935    subtitle: "Ever-Lovin' Blue-Eyed",936    cost: 6,937    type: "Fist",938    affiliation: "Fantastic Four",939    rarity: "Common",940    ability: "At the start of the attack step, if your opponent has more fielded characters than you, Thing can't be blocked and takes no damage while blocking.",941    "* ability": "",942    "** ability": "",943    global: "",944    dieLimit: 4945  },946  {947    id: 60,948    dieId: 35,949    setAbbr: "AVX",950    name: "Venom",951    subtitle: "Eddie Brock",952    cost: 6,953    type: "Fist",954    affiliation: "Villains",955    rarity: "Common",956    ability: "Non-[Fist] characters can't block Venom.",957    "* ability": "",958    "** ability": "",959    global: "Pay [1 Fist] to spin an opponent's [Fist] character down 1 level.",960    dieLimit: 4961  },962  {963    id: 61,964    dieId: 36,965    setAbbr: "AVX",966    name: "War Machine",967    subtitle: "Combat Comrade",968    cost: 5,969    type: "Shield",970    affiliation: "None",971    rarity: "Common",972    ability: "War Machine gets +2A and +2D if you have Iron Man in the field.",973    "* ability": "",974    "** ability": "",975    global: "When one of your [Shield] characters damages your opponent in the attack step, pay [Shield] to gain 1 life.",976    dieLimit: 4977  },978  {979    id: 62,980    dieId: 37,981    setAbbr: "AVX",982    name: "Wolverine",983    subtitle: "Wildboy",984    cost: 5,985    type: "Fist",986    affiliation: "X-Men",987    rarity: "Common",988    ability: "When Wolverine attacks alone, you may spin one opponent's character down one level.",989    "* ability": "",990    "** ability": "",991    global: "",992    dieLimit: 3993  },994  {995    id: 63,996    dieId: 38,997    setAbbr: "AVX",998    name: "Mjolnir",999    subtitle: "Fist of the Righteous",1000    cost: 6,1001    type: "Bolt",1002    affiliation: "None",1003    rarity: "Common",1004    ability: "Deal 6 damage to each villain.",1005    "* ability": "",1006    "** ability": "Deal 8 damage to each villain instead.",1007    global: "Pay [2 Bolt] to deal 1 damage to a target character.",1008    dieLimit: 31009  },1010  {1011    id: 64,1012    dieId: 39,1013    setAbbr: "AVX",1014    name: "Vibranium Shield",1015    subtitle: "One of a Kind",1016    cost: 4,1017    type: "Shield",1018    affiliation: "None",1019    rarity: "Common",1020    ability: "At the start of your attack step, choose an energy type.  This turn, characters of that type take no damage.",1021    "* ability": "",1022    "** ability": "",1023    global: "Pay [1 Shield] to prevent 1 damage to a character or player.",1024    dieLimit: 41025  },1026  {1027    id: 65,1028    dieId: 10,1029    setAbbr: "AVX",1030    name: "Angel",1031    subtitle: "Avenging Angel",1032    cost: 3,1033    type: "Shield",1034    affiliation: "None",1035    rarity: "Uncommon",1036    ability: "If Angel is blocked but is not knocked out, he deals 2 damage to the opposing player.",1037    "* ability": "",1038    "** ability": "",1039    global: "",1040    dieLimit: 41041  },1042  {1043    id: 66,1044    dieId: 1,1045    setAbbr: "AVX",1046    name: "Beast",1047    subtitle: "Kreature",1048    cost: 3,1049    type: "Mask",1050    affiliation: "X-Men",1051    rarity: "Uncommon",1052    ability: "When Beast blocks, spin the blocked character down 1 level.  If it is already level 1, knock it out.",1053    "* ability": "If the blocked character is knocked out by this, gain 2 life.",1054    "** ability": "",1055    global: "",1056    dieLimit: 51057  },1058  {1059    id: 67,1060    dieId: 2,1061    setAbbr: "AVX",1062    name: "Captain America",1063    subtitle: "Sentinel of Liberty",1064    cost: 6,1065    type: "Shield",1066    affiliation: "Avengers",1067    rarity: "Uncommon",1068    ability: "While Captain America is active, your Sidekick characters get +2A, and your opponent's Sidekick characters cost 1 extra energy to field.",1069    "* ability": "",1070    "** ability": "",1071    global: "",1072    dieLimit: 51073  },1074  {1075    id: 68,1076    dieId: 12,1077    setAbbr: "AVX",1078    name: "Colossus",1079    subtitle: "Russian Bear",1080    cost: 7,1081    type: "Fist",1082    affiliation: "X-Men",1083    rarity: "Uncommon",1084    ability: "",1085    "* ability": "If Colossus damaged your opponent, return Colossus to the prep area instead of the used pile.",1086    "** ability": "",1087    global: "",1088    dieLimit: 41089  },1090  {1091    id: 69,1092    dieId: 13,1093    setAbbr: "AVX",1094    name: "Cyclops",1095    subtitle: "If Looks Could Kill",1096    cost: 7,1097    type: "Bolt",1098    affiliation: "X-Men",1099    rarity: "Uncommon",1100    ability: "When Cyclops is assigned to attack, before blockers are assigned, he deals his attack in damage to each opposing character.",1101    "* ability": "",1102    "** ability": "",1103    global: "",1104    dieLimit: 21105  },1106  {1107    id: 70,1108    dieId: 14,1109    setAbbr: "AVX",1110    name: "Deadpool",1111    subtitle: "Jack",1112    cost: 5,1113    type: "Fist",1114    affiliation: "None",1115    rarity: "Uncommon",1116    ability: "When Deadpool attacks, you may assign an opposing character to block him.  At the end of the turn, knock out that character.",1117    "* ability": "",1118    "** ability": "",1119    global: "",1120    dieLimit: 41121  },1122  {1123    id: 71,1124    dieId: 15,1125    setAbbr: "AVX",1126    name: "Doctor Doom",1127    subtitle: "Nemesis",1128    cost: 6,1129    type: "Shield",1130    affiliation: "Villains",1131    rarity: "Uncommon",1132    ability: "Doctor Doom can only be blocked by Villain and Sidekick characters.",1133    "* ability": "",1134    "** ability": "",1135    global: "If you have a Villain fielded, pay [1 Shield] to give a target character -1A and -1D (knock out those with zero defense).",1136    dieLimit: 41137  },1138  {1139    id: 72,1140    dieId: 16,1141    setAbbr: "AVX",1142    name: "Doctor Octopus",1143    subtitle: "Fully Armed",1144    cost: 6,1145    type: "Shield",1146    affiliation: "Villains",1147    rarity: "Uncommon",1148    ability: "When blocked, any damage that Doctor Octopus does in excess of his blocking characters' total defense is dealt to your opponent.",1149    "* ability": "",1150    "** ability": "",1151    global: "",1152    dieLimit: 41153  },1154  {1155    id: 73,1156    dieId: 17,1157    setAbbr: "AVX",1158    name: "Doctor Strange",1159    subtitle: "Master of the Mystic Arts",1160    cost: 6,1161    type: "Mask",1162    affiliation: "None",1163    rarity: "Uncommon",1164    ability: "While Doctor Strange is active, each time you use an action he deals 2 damage to a character or opponent (no matter how many dice are fielded).",1165    "* ability": "",1166    "** ability": "",1167    global: "",1168    dieLimit: 41169  },1170  {1171    id: 74,1172    dieId: 18,1173    setAbbr: "AVX",1174    name: "Gambit",1175    subtitle: "Le Diable Blanc",1176    cost: 5,1177    type: "Mask",1178    affiliation: "X-Men",1179    rarity: "Uncommon",1180    ability: "When fielded, draw and roll 2 dice.  Field characters rolled on those dice for free; place the rest in your used pile.",1181    "* ability": "Instead draw 3 dice, choose two to roll and return the other to your bag.",1182    "** ability": "",1183    global: "",1184    dieLimit: 41185  },1186  {1187    id: 75,1188    dieId: 19,1189    setAbbr: "AVX",1190    name: "Ghost Rider",1191    subtitle: "Spirit of Vengeance",1192    cost: 4,1193    type: "Bolt",1194    affiliation: "None",1195    rarity: "Uncommon",1196    ability: "If Ghost Rider is knocked out while engaged, draw one die from your bag and place it in your prep area.",1197    "* ability": "",1198    "** ability": "",1199    global: "",1200    dieLimit: 41201  },1202  {1203    id: 76,1204    dieId: 21,1205    setAbbr: "AVX",1206    name: "Hawkeye",1207    subtitle: "Br'er Hawkeye",1208    cost: 3,1209    type: "Bolt",1210    affiliation: "Avengers",1211    rarity: "Uncommon",1212    ability: "Spin characters damaged by Hawkeye to level 1.",1213    "* ability": "",1214    "** ability": "",1215    global: "",1216    dieLimit: 41217  },1218  {1219    id: 78,1220    dieId: 4,1221    setAbbr: "AVX",1222    name: "Human Torch",1223    subtitle: "Johnny Storm",1224    cost: 4,1225    type: "Bolt",1226    affiliation: "Fantastic Four",1227    rarity: "Uncommon",1228    ability: "While Human Torch is active, each time you field a character, Human Torch deals 1 damage to your opponent and one to a target character (not 1 damage per Human Torch die).",1229    "* ability": "",1230    "** ability": "",1231    global: "",1232    dieLimit: 51233  },1234  {1235    id: 77,1236    dieId: 3,1237    setAbbr: "AVX",1238    name: "Hulk",1239    subtitle: "Green Goliath",1240    cost: 6,1241    type: "Fist",1242    affiliation: "Avengers",1243    rarity: "Uncommon",1244    ability: "While Hulk is active, whenever either you or Hulk takes damage, Hulk deals 2 damage to each opposing character (no matter how many Hulks are fielded).",1245    "* ability": "He deals 3 damage instead.",1246    "** ability": "",1247    global: "",1248    dieLimit: 51249  },1250  {1251    id: 79,1252    dieId: 5,1253    setAbbr: "AVX",1254    name: "Iron Man",1255    subtitle: "Billionaire",1256    cost: 6,1257    type: "Shield",1258    affiliation: "Avengers",1259    rarity: "Uncommon",1260    ability: "Iron Man takes no damage from non-[Shield] characters.",1261    "* ability": "",1262    "** ability": "",1263    global: "",1264    dieLimit: 51265  },1266  {1267    id: 80,1268    dieId: 22,1269    setAbbr: "AVX",1270    name: "Loki",1271    subtitle: "Illusionist",1272    cost: 7,1273    type: "Mask",1274    affiliation: "Villains",1275    rarity: "Uncommon",1276    ability: "When fielded, take control of an opposing character.  At the end of the turn, knock out that character (place it in your opponent's prep area); it deals damage equal to it's attack to your opponent.",1277    "* ability": "",1278    "** ability": "",1279    global: "",1280    dieLimit: 31281  },1282  {1283    id: 81,1284    dieId: 23,1285    setAbbr: "AVX",1286    name: "Magneto",1287    subtitle: "Holocaust Survivor",1288    cost: 6,1289    type: "Mask",1290    affiliation: "Villains",1291    rarity: "Uncommon",1292    ability: "While Magneto is active, you may pay 2 energy to spin a Villain up one level.",1293    "* ability": "",1294    "** ability": "",1295    global: "Pay [1 Mask] to reroll a Villain die.",1296    dieLimit: 41297  },1298  {1299    id: 82,1300    dieId: 25,1301    setAbbr: "AVX",1302    name: "Mystique",1303    subtitle: "Shapeshifter",1304    cost: 6,1305    type: "Mask",1306    affiliation: "Villains",1307    rarity: "Uncommon",1308    ability: "When fielded, choose an opponent's character card.  Mystique copies that card (except purchase cost and the die faces) until the next Mystique is fielded.",1309    "* ability": "She also copies the die faces (matching level for level).",1310    "** ability": "",1311    global: "",1312    dieLimit: 41313  },1314  {1315    id: 83,1316    dieId: 26,1317    setAbbr: "AVX",1318    name: "Nick Fury",1319    subtitle: "WWII Veteran",1320    cost: 2,1321    type: "Shield",1322    affiliation: "None",1323    rarity: "Uncommon",1324    ability: "While Nick Fury is active, your Avengers characters get +1A and +1D.",1325    "* ability": "",1326    "** ability": "",1327    global: "",1328    dieLimit: 41329  },1330  {1331    id: 84,1332    dieId: 27,1333    setAbbr: "AVX",1334    name: "Nightcrawler",1335    subtitle: "Abandoned",1336    cost: 4,1337    type: "Fist",1338    affiliation: "None",1339    rarity: "Uncommon",1340    ability: "At the end of the attack step, knock out one character that blocked Nightcrawler.",1341    "* ability": "",1342    "** ability": "",1343    global: "",1344    dieLimit: 41345  },1346  {1347    id: 85,1348    dieId: 28,1349    setAbbr: "AVX",1350    name: "Nova",1351    subtitle: "Bucket Head",1352    cost: 6,1353    type: "Bolt",1354    affiliation: "None",1355    rarity: "Uncommon",1356    ability: "The first time Nova takes damage each turn, you may redirect that damage to one target character.",1357    "* ability": "",1358    "** ability": "",1359    global: "",1360    dieLimit: 31361  },1362  {1363    id: 86,1364    dieId: 29,1365    setAbbr: "AVX",1366    name: "Phoenix",1367    subtitle: "Redd",1368    cost: 7,1369    type: "Bolt",1370    affiliation: "X-Men",1371    rarity: "Uncommon",1372    ability: "When Phoenix is engaged, you may spend [2 Bolt] to deal 4 damage to target character or opponent.",1373    "* ability": "",1374    "** ability": "",1375    global: "Pay [1 Bolt].  Target character must attack.",1376    dieLimit: 31377  },1378  {1379    id: 87,1380    dieId: 30,1381    setAbbr: "AVX",1382    name: "Professor X",1383    subtitle: "Powerful Telepath",1384    cost: 5,1385    type: "Mask",1386    affiliation: "X-Men",1387    rarity: "Uncommon",1388    ability: "While Professor X is active, your opponent cannot use actions or global abilities.  He or she can pay 2 life to prevent this effect for the rest of the turn.",1389    "* ability": "",1390    "** ability": "",1391    global: "",1392    dieLimit: 41393  },1394  {1395    id: 88,1396    dieId: 31,1397    setAbbr: "AVX",1398    name: "Punisher",1399    subtitle: "Vigilante",1400    cost: 5,1401    type: "Bolt",1402    affiliation: "None",1403    rarity: "Uncommon",1404    ability: "When Punisher assigns to attack, search your bag for a Punisher die and put it into your prep area.  Your opponent can prevent this by paying 3 life.",1405    "* ability": "",1406    "** ability": "",1407    global: "",1408    dieLimit: 31409  },1410  {1411    id: 89,1412    dieId: 32,1413    setAbbr: "AVX",1414    name: "Rogue",1415    subtitle: "Anna Marie",1416    cost: 5,1417    type: "Mask",1418    affiliation: "X-Men",1419    rarity: "Uncommon",1420    ability: "When fielded, capture an opposing action die from the used pile or reserve pool.  When Rogue attacks, you may use that action for free (with no bursts).  Return it to the used pile after the attack step.",1421    "* ability": "",1422    "** ability": "",1423    global: "",1424    dieLimit: 41425  },1426  {1427    id: 90,1428    dieId: 33,1429    setAbbr: "AVX",1430    name: "Silver Surfer",1431    subtitle: "Sentinel",1432    cost: 6,1433    type: "Shield",1434    affiliation: "None",1435    rarity: "Uncommon",1436    ability: "While Silver Surfer is active, if your opponent has more life than you, draw one extra die each Clear and Draw Step.",1437    "* ability": "",1438    "** ability": "",1439    global: "Once during your turn, pay [1 Shield] and take 2 damage to draw one die and place it in your prep area.",1440    dieLimit: 41441  },1442  {1443    id: 91,1444    dieId: 6,1445    setAbbr: "AVX",1446    name: "Spider-Man",1447    subtitle: "Wall-Crawler",1448    cost: 4,1449    type: "Fist",1450    affiliation: "None",1451    rarity: "Uncommon",1452    ability: "If Spider-Man attacks and is not blocked, you may pay [2 Fist] to change your opponent's life to 10 (before damage is dealt).",1453    "* ability": "",1454    "** ability": "",1455    global: "",1456    dieLimit: 51457  },1458  {1459    id: 92,1460    dieId: 7,1461    setAbbr: "AVX",1462    name: "Storm",1463    subtitle: "Wind-Rider",1464    cost: 5,1465    type: "Mask",1466    affiliation: "X-Men",1467    rarity: "Uncommon",1468    ability: "When fielded, reroll up to 2 opposing characters.  Each die that does not roll a character goes to your opponent's used pile. Storm deals 2 damage to your opponent for each die moved.",1469    "* ability": "",1470    "** ability": "",1471    global: "",1472    dieLimit: 51473  },1474  {1475    id: 93,1476    dieId: 34,1477    setAbbr: "AVX",1478    name: "Thing",1479    subtitle: "Grim Ben",1480    cost: 5,1481    type: "Fist",1482    affiliation: "Fantastic Four",1483    rarity: "Uncommon",1484    ability: "At the start of the attack step, if your opponent has more fielded characters than you, Thing gets +3A and +3D (until the end of the turn).",1485    "* ability": "",1486    "** ability": "",1487    global: "",1488    dieLimit: 41489  },1490  {1491    id: 94,1492    dieId: 8,1493    setAbbr: "AVX",1494    name: "Thor",1495    subtitle: "God of Thunder",1496    cost: 6,1497    type: "Bolt",1498    affiliation: "Avengers",1499    rarity: "Uncommon",1500    ability: "At the start of the attack step, Thor gets +4A and +4D for each opposing [Fist] character in the field (until the end of the turn).",1501    "* ability": "",1502    "** ability": "",1503    global: "",1504    dieLimit: 51505  },1506  {1507    id: 95,1508    dieId: 35,1509    setAbbr: "AVX",1510    name: "Venom",1511    subtitle: "Mac Gargan",1512    cost: 5,1513    type: "Fist",1514    affiliation: "Villains",1515    rarity: "Uncommon",1516    ability: "If Venom blocks and knocks out a non-[Fist] character, he deals 2 damage to your opponent and you gain 1 life.",1517    "* ability": "",1518    "** ability": "",1519    global: "Pay [1 Fist] to spin an opponent's [Fist] character down 1 level.",1520    dieLimit: 41521  },1522  {1523    id: 96,1524    dieId: 36,1525    setAbbr: "AVX",1526    name: "War Machine",1527    subtitle: "Parnell Jacobs",1528    cost: 5,1529    type: "Shield",1530    affiliation: "None",1531    rarity: "Uncommon",1532    ability: "War Machine can't be blocked if you have Iron Man fielded.",1533    "* ability": "",1534    "** ability": "",1535    global: "When one of your [Shield] characters damages your opponent in the attack step, pay [1 Shield] to gain 1 life.",1536    dieLimit: 41537  },1538  {1539    id: 97,1540    dieId: 38,1541    setAbbr: "AVX",1542    name: "Mjolnir",1543    subtitle: "Forged by Odin",1544    cost: 6,1545    type: "Bolt",1546    affiliation: "None",1547    rarity: "Uncommon",1548    ability: "Deal 5 damage to target character.",1549    "* ability": "Deal an extra 1 damage.",1550    "** ability": "Deal an extra 3 damage.",1551    global: "Pay [2 Bolt] to deal 1 damage to a target character.",1552    dieLimit: 31553  },1554  {1555    id: 98,1556    dieId: 39,1557    setAbbr: "AVX",1558    name: "Vibranium Shield",1559    subtitle: "Irreplaceable",1560    cost: 6,1561    type: "Shield",1562    affiliation: "None",1563    rarity: "Uncommon",1564    ability: "Place this die touching an opposing character.  Opposing characters that match that character's type cannot attack or block until the end of your opponent's next turn.  Then place this die in the used pile.",1565    "* ability": "",1566    "** ability": "",1567    global: "Pay [1 Shield] to prevent 1 damage to a character or player.",1568    dieLimit: 41569  },1570  {1571    id: 99,1572    dieId: 10,1573    setAbbr: "AVX",1574    name: "Angel",1575    subtitle: "Soaring",1576    cost: 2,1577    type: "Shield",1578    affiliation: "None",1579    rarity: "Rare",1580    ability: "If you used an action this turn, Angel cannot be blocked.",1581    "* ability": "",1582    "** ability": "",1583    global: "",1584    dieLimit: 41585  },1586  {1587    id: 100,1588    dieId: 11,1589    setAbbr: "AVX",1590    name: "Black Widow",1591    subtitle: "Killer Instinct",1592    cost: 2,1593    type: "Fist",1594    affiliation: "Avengers",1595    rarity: "Rare",1596    ability: "When fielded, spin one target opponent's character down to level 1.",1597    "* ability": "",1598    "** ability": "",1599    global: "",1600    dieLimit: 41601  },1602  {1603    id: 101,1604    dieId: 12,1605    setAbbr: "AVX",1606    name: "Colossus",1607    subtitle: "Piotr Rasputin",1608    cost: 7,1609    type: "Fist",1610    affiliation: "X-Men",1611    rarity: "Rare",1612    ability: "While Colossus is active, at the end of your turn, each of your characters of level 2 or higher deals 2 damage to your opponent (not 2 damage per Colossus die).",1613    "* ability": "",1614    "** ability": "",1615    global: "",1616    dieLimit: 41617  },1618  {1619    id: 102,1620    dieId: 13,1621    setAbbr: "AVX",1622    name: "Cyclops",1623    subtitle: "Scott Summers",1624    cost: 7,1625    type: "Bolt",1626    affiliation: "X-Men",1627    rarity: "Rare",1628    ability: "If Cyclops is blocked, you may have him deal damage to your opponent instead of his blocker(s).  If you do so, he goes to your used pile during cleanup.",1629    "* ability": "",1630    "** ability": "",1631    global: "",1632    dieLimit: 41633  },1634  {1635    id: 103,1636    dieId: 14,1637    setAbbr: "AVX",1638    name: "Deadpool",1639    subtitle: "Chiyonosake",1640    cost: 5,1641    type: "Fist",1642    affiliation: "None",1643    rarity: "Rare",1644    ability: "When Deadpool attacks, you may assign an opposing character to block him.  If he knocks out that character, he deals 2 damage to each opposing character.",1645    "* ability": "",1646    "** ability": "",1647    global: "",1648    dieLimit: 41649  },1650  {1651    id: 104,1652    dieId: 15,1653    setAbbr: "AVX",1654    name: "Doctor Doom",1655    subtitle: "Victor",1656    cost: 6,1657    type: "Shield",1658    affiliation: "Villains",1659    rarity: "Rare",1660    ability: "When fielded, each player must knock out all but one of his or her non-Villain characters (place those knocked out dice in that player's prep area).",1661    "* ability": "",1662    "** ability": "",1663    global: "",1664    dieLimit: 41665  },1666  {1667    id: 105,1668    dieId: 16,1669    setAbbr: "AVX",1670    name: "Doctor Octopus",1671    subtitle: "Mad Scientist",1672    cost: 6,1673    type: "Shield",1674    affiliation: "Villains",1675    rarity: "Rare",1676    ability: "When Doctor Octopus is blocked by more than one character, he deals his full attack value in damage to each character blocking him (instead of having to split it).",1677    "* ability": "",1678    "** ability": "",1679    global: "",1680    dieLimit: 41681  },1682  {1683    id: 106,1684    dieId: 17,1685    setAbbr: "AVX",1686    name: "Doctor Strange",1687    subtitle: "Probably a Charlatan",1688    cost: 7,1689    type: "Mask",1690    affiliation: "None",1691    rarity: "Rare",1692    ability: "When fielded, search your bag for an action die and roll it (place it into your reserve pool).",1693    "* ability": "",1694    "** ability": "",1695    global: "",1696    dieLimit: 41697  },1698  {1699    id: 107,1700    dieId: 18,1701    setAbbr: "AVX",1702    name: "Gambit",1703    subtitle: "Cardsharp",1704    cost: 5,1705    type: "Mask",1706    affiliation: "X-Men",1707    rarity: "Rare",1708    ability: "When fielded, you may draw and roll one die.  If you roll a character side, that character deals damage equal to its attack to your opponent and goes to your used pile (otherwise, the die goes to your reserve pool).",1709    "* ability": "",1710    "** ability": "",1711    global: "",1712    dieLimit: 41713  },1714  {1715    id: 108,1716    dieId: 19,1717    setAbbr: "AVX",1718    name: "Ghost Rider",1719    subtitle: "Brimstone Biker",1720    cost: 4,1721    type: "Bolt",1722    affiliation: "None",1723    rarity: "Rare",1724    ability: "When fielded, select a die from your used pile and place it into your prep area (you cannot select a die that paid to field this die).",1725    "* ability": "",1726    "** ability": "",1727    global: "",1728    dieLimit: 41729  },1730  {1731    id: 109,1732    dieId: 20,1733    setAbbr: "AVX",1734    name: "Green Goblin",1735    subtitle: "Norman Osborn",1736    cost: 4,1737    type: "Bolt",1738    affiliation: "Villains",1739    rarity: "Rare",1740    ability: "When fielded, you may roll up to 2 Sidekick dice from your used pile (you cannot roll dice that paid to field this dice; place rolled dice in your reserve pool).",1741    "* ability": "",1742    "** ability": "",1743    global: "Pay [1 Bolt] and knock out one of your sidekick characters to deal 2 damage to target character.",1744    dieLimit: 41745  },1746  {1747    id: 110,1748    dieId: 21,1749    setAbbr: "AVX",1750    name: "Hawkeye",1751    subtitle: "Robin Hood",1752    cost: 3,1753    type: "Bolt",1754    affiliation: "Avengers",1755    rarity: "Rare",1756    ability: "When assigning damage in an attack step, Hawkeye assigns and resolves his damage before opposing characters.",1757    "* ability": "",1758    "** ability": "",1759    global: "",1760    dieLimit: 41761  },1762  {1763    id: 111,1764    dieId: 22,1765    setAbbr: "AVX",1766    name: "Loki",1767    subtitle: "Gem-Keeper",1768    cost: 5,1769    type: "Mask",1770    affiliation: "Villains",1771    rarity: "Rare",1772    ability: "When fielded, choose an opponent's character card, canceling all previous choices.  Your opponent cannot field that character while Loki is active.  This effect lasts until you field another Loki.",1773    "* ability": "",1774    "** ability": "",1775    global: "",1776    dieLimit: 41777  },1778  {1779    id: 112,1780    dieId: 23,1781    setAbbr: "AVX",1782    name: "Magneto",1783    subtitle: "Sonderkommando",1784    cost: 6,1785    type: "Mask",1786    affiliation: "Villains",1787    rarity: "Rare",1788    ability: "While Magneto is active, your other Villain characters get +2A and +2D (no matter how many Magneto dice you have fielded).",1789    "* ability": "",1790    "** ability": "",1791    global: "Pay [1 Mask] to reroll a Villain die.",1792    dieLimit: 41793  },1794  {1795    id: 113,1796    dieId: 24,1797    setAbbr: "AVX",1798    name: "Mr. Fantastic",1799    subtitle: "The Invincible Man",1800    cost: 5,1801    type: "Mask",1802    affiliation: "Fantastic Four",1803    rarity: "Rare",1804    ability: "While blocking, you may redirect up to 2 damage from Mr. Fantastic to the character he blocks.",1805    "* ability": "",1806    "** ability": "",1807    global: "Pay [1 Mask].  Target character must attack this turn.",1808    dieLimit: 31809  },1810  {1811    id: 114,1812    dieId: 25,1813    setAbbr: "AVX",1814    name: "Mystique",1815    subtitle: "Could Be Anyone",1816    cost: 5,1817    type: "Mask",1818    affiliation: "Villains",1819    rarity: "Rare",1820    ability: "At beginning of your turn, choose an opposing fielded character. Each of your Mystique dice copies the stats on that character's die until your next turn.",1821    "* ability": "She also gains an extra +1A and +1D.",1822    "** ability": "",1823    global: "",1824    dieLimit: 41825  },1826  {1827    id: 115,1828    dieId: 26,1829    setAbbr: "AVX",1830    name: "Nick Fury",1831    subtitle: "Patch",1832    cost: 4,1833    type: "Shield",1834    affiliation: "None",1835    rarity: "Rare",1836    ability: "While Nick Fury is active, your unblocked Avengers characters deal damage to your opponent twice.",1837    "* ability": "",1838    "** ability": "",1839    global: "",1840    dieLimit: 21841  },1842  {1843    id: 116,1844    dieId: 27,1845    setAbbr: "AVX",1846    name: "Nightcrawler",1847    subtitle: "Circus Freak",1848    cost: 4,1849    type: "Fist",1850    affiliation: "None",1851    rarity: "Rare",1852    ability: "After assigning blockers, knock out one character blocking Nightcrawler (before assigning damage).",1853    "* ability": "",1854    "** ability": "",1855    global: "",1856    dieLimit: 41857  },1858  {1859    id: 117,1860    dieId: 28,1861    setAbbr: "AVX",1862    name: "Nova",1863    setAbbr: "AVX",1864    subtitle: "The Human Rocket",1865    cost: 5,1866    type: "Bolt",1867    affiliation: "None",1868    rarity: "Rare",1869    ability: "Whenever Nova takes damage in an attack step, he deals 2 damage to your opponent.",1870    "* ability": "",1871    "** ability": "",1872    global: "",1873    dieLimit: 41874  },1875  {1876    id: 118,1877    dieId: 29,1878    setAbbr: "AVX",1879    name: "Phoenix",1880    subtitle: "Jeannie",1881    cost: 7,1882    type: "Bolt",1883    affiliation: "X-Men",1884    rarity: "Rare",1885    ability: "At the end of the attack step, each character still engaged with Phoenix deals damage equal to its attack to your opponent.  Knock out those characters.",1886    "* ability": "",1887    "** ability": "",1888    global: "Pay [1 Bolt].  Target character must attack.",1889    dieLimit: 31890  },1891  {1892    id: 119,1893    dieId: 30,1894    setAbbr: "AVX",1895    name: "Professor X",1896    subtitle: "Charles Francis Xavier",1897    cost: 6,1898    type: "Mask",1899    affiliation: "X-Men",1900    rarity: "Rare",1901    ability: "While Professor X is active, your opponent cannot field characters.  He or she can pay 2 life to prevent this effect for the rest of this turn.",1902    "* ability": "",1903    "** ability": "",1904    global: "",1905    dieLimit: 41906  },1907  {1908    id: 120,1909    dieId: 31,1910    setAbbr: "AVX",1911    name: "Punisher",1912    subtitle: "Big Nothing",1913    cost: 6,1914    type: "Bolt",1915    affiliation: "None",1916    rarity: "Rare",1917    ability: "When Punisher assigns to attack, he deals 2 damage to each opposing character.  Your opponent can prevent this effect by paying 4 life.",1918    "* ability": "",1919    "** ability": "",1920    global: "",1921    dieLimit: 41922  },1923  {1924    id: 121,1925    dieId: 32,1926    setAbbr: "AVX",1927    name: "Rogue",1928    subtitle: "Can't Touch This",1929    cost: 6,1930    type: "Mask",1931    affiliation: "X-Men",1932    rarity: "Rare",1933    ability: "When fielded, capture an opposing fielded character (until the end of the turn).  Rogue copies that character's stats and abilities.",1934    "* ability": "",1935    "** ability": "",1936    global: "",1937    dieLimit: 41938  },1939  {1940    id: 122,1941    dieId: 33,1942    setAbbr: "AVX",1943    name: "Silver Surfer",1944    subtitle: "Sky-Rider",1945    cost: 7,1946    type: "Shield",1947    affiliation: "None",1948    rarity: "Rare",1949    ability: "At the start of the attack step, if your opponent has more life than you, double Silver Surfer's attack and defense.",1950    "* ability": "",1951    "** ability": "",1952    global: "Once during your turn, pay [1 Shield] and take 2 dmage to draw a die and place it in your prep area.",1953    dieLimit: 41954  },1955  {1956    id: 123,1957    dieId: 34,1958    setAbbr: "AVX",1959    name: "Thing",1960    subtitle: "Idol of Millions",1961    cost: 7,1962    type: "Fist",1963    affiliation: "Fantastic Four",1964    rarity: "Rare",1965    ability: "When fielded, if your opponent has more fielded characters than you, draw and roll 3 dice (place them in your reserve pool).",1966    "* ability": "",1967    "** ability": "",1968    global: "",1969    dieLimit: 41970  },1971  {1972    id: 124,1973    dieId: 35,1974    setAbbr: "AVX",1975    name: "Venom",1976    subtitle: "Angelo Fortunato",1977    cost: 6,1978    type: "Fist",1979    affiliation: "Villains",1980    rarity: "Rare",1981    ability: "While Venom is active, your opponent's non-[Fist] characters get -2A and -2D.",1982    "* ability": "Your [Fist] characters get +1A and +1D.",1983    "** ability": "",1984    global: "Pay [1 Fist] to spin an opponent's [Fist] character down 1 level.",1985    dieLimit: 41986  },1987  {1988    id: 125,1989    dieId: 36,1990    setAbbr: "AVX",1991    name: "War Machine",1992    subtitle: "James Rhodes",1993    cost: 5,1994    type: "Shield",1995    affiliation: "None",1996    rarity: "Rare",1997    ability: "When fielded, if you have Iron Man fielded, knock out an opponent's character.",1998    "* ability": "",1999    "** ability": "",2000    global: "When one of your [Shield] characters damages your opponent in the attack step, pay [1 Shield] to gain 1 life.",2001    dieLimit: 42002  },2003  {2004    id: 126,2005    dieId: 37,2006    setAbbr: "AVX",2007    name: "Wolverine",2008    subtitle: "Formerly Weapon Ten",2009    cost: 4,2010    type: "Fist",2011    affiliation: "X-Men",2012    rarity: "Rare",2013    ability: "When Wolverine attacks alone, he gains +4A and +4D.",2014    "* ability": "",2015    "** ability": "",2016    global: "",2017    dieLimit: 42018  },2019  {2020    id: 127,2021    dieId: 38,2022    setAbbr: "AVX",2023    name: "Mjolnir",2024    subtitle: "Thor's Hammer",2025    cost: 4,2026    type: "Bolt",2027    affiliation: "None",2028    rarity: "Rare",2029    ability: "Deal 4 damage to all characters other than Thor (yours and your opponent's).",2030    "* ability": "Deal 5 instead.",2031    "** ability": "",2032    global: "Pay [2 Bolt] to deal one damage to a target character.",2033    dieLimit: 32034  },2035  {2036    id: 128,2037    dieId: 39,2038    setAbbr: "AVX",2039    name: "Vibranium Shield",2040    subtitle: "Cap's Protection",2041    cost: 5,2042    type: "Shield",2043    affiliation: "None",2044    rarity: "Rare",2045    ability: "Place this die touching your target character.  It does not go to your used pile.  You may place this die in the used pile at any time to prevent all damage to the character for the rest of the turn.",2046    "* ability": "",2047    "** ability": "",2048    global: "Pay [1 Shield] to prevent 1 damage to a character or player.",2049    dieLimit: 42050  },2051  {2052    id: 129,2053    dieId: 11,2054    setAbbr: "AVX",2055    name: "Black Widow",2056    subtitle: "Tsarina",2057    cost: 2,2058    type: "Fist",2059    affiliation: "Avengers",2060    rarity: "Super-Rare",2061    ability: "When Black Widow attacks, she deals 2 damage to your opponent. Your opponent can prevent this by spinning one of his or her characters down one level.",2062    "* ability": "",2063    "** ability": "",2064    global: "",2065    dieLimit: 42066  },2067  {2068    id: 130,2069    dieId: 20,2070    setAbbr: "AVX",2071    name: "Green Goblin",2072    subtitle: "\"Gobby\"",2073    cost: 3,2074    type: "Bolt",2075    affiliation: "Villains",2076    rarity: "Super-Rare",2077    ability: "When fielded, Green Goblin deals 1 damage to your opponent for each Sidekick in the field (count your Sidekicks only).",2078    "* ability": "",2079    "** ability": "",2080    global: "",2081    dieLimit: 42082  },2083  {2084    id: 131,2085    dieId: 24,2086    setAbbr: "AVX",2087    name: "Mr. Fantastic",2088    subtitle: "Elastic",2089    cost: 4,2090    type: "Mask",2091    affiliation: "Fantastic Four",2092    rarity: "Super-Rare",2093    ability: "You may spin Mr. Fantastic down 1 level to allow him to block an additional character (or 2 levels to block two additional characters).",2094    "* ability": "",2095    "** ability": "",2096    global: "",2097    dieLimit: 42098  },2099  {2100    id: 132,2101    dieId: 37,2102    setAbbr: "AVX",2103    name: "Wolverine",2104    subtitle: "Canucklehead",2105    cost: 6,2106    type: "Fist",2107    affiliation: "X-Men",2108    rarity: "Super-Rare",2109    ability: "When Wolverine attacks alone, he cannot be blocked.",2110    "* ability": "",2111    "** ability": "",2112    global: "",2113    dieLimit: 42114  },2115  {2116    id: 1,2117    dieId: 1,2118    setAbbr: "UX",2119    name: "Angel",2120    subtitle: "Air Transport",2121    cost: 3,2122    type: "Shield",2123    affiliation: "X-Men",2124    rarity: "Starter",2125    ability: "When fielded, you may field a Sidekick die from your used pile (spin it to its character side).",2126    "* ability": "",2127    "** ability": "",2128    global: "",2129    dieLimit: 42130  },2131  {2132    id: 2,2133    dieId: 1,2134    setAbbr: "UX",2135    name: "Angel",2136    subtitle: "Inspiring",2137    cost: 3,2138    type: "Shield",2139    affiliation: "X-Men",2140    rarity: "Starter",2141    ability: "When Angel attacks, your Sidekicks get +1A and +1D (no matter how many Angel dice attack).",2142    "* ability": "",2143    "** ability": "",2144    global: "",2145    dieLimit: 42146  },2147  {2148    id: 3,2149    dieId: 1,2150    setAbbr: "UX",2151    name: "Angel",2152    subtitle: "Superhero",2153    cost: 3,2154    type: "Shield",2155    affiliation: "X-Men",2156    rarity: "Starter",2157    ability: "Heroic: When fielded, Angel may pair up with a different Heroic character until the start of your next turn. Once per turn while Angel is paired up, you may pay  [1 Shield] to give Angel and his partner each +2D.",2158    "* ability": "",2159    "** ability": "",2160    global: "",2161    dieLimit: 42162  },2163  {2164    id: 4,2165    dieId: 2,2166    setAbbr: "UX",2167    name: "Cyclops",2168    subtitle: "Optic Blast",2169    cost: 6,2170    type: "Bolt",2171    affiliation: "X-Men",2172    rarity: "Starter",2173    ability: "When fielded, Cyclops deals 3 damage to an opposing character. Your opponent may pay 3 life to prevent this.",2174    "* ability": "",2175    "** ability": "",2176    global: "",2177    dieLimit: 42178  },2179  {2180    id: 5,2181    dieId: 2,2182    setAbbr: "UX",2183    name: "Cyclops",2184    subtitle: "Overlook",2185    cost: 6,2186    type: "Bolt",2187    affiliation: "X-Men",2188    rarity: "Starter",2189    ability: "When fielded, Cyclops deals 1 damage to your opponent and each opposing character.",2190    "* ability": "",2191    "** ability": "",2192    global: "",2193    dieLimit: 42194  },2195  {2196    id: 6,2197    dieId: 2,2198    setAbbr: "UX",2199    name: "Cyclops",2200    subtitle: "Superhero",2201    cost: 5,2202    type: "Bolt",2203    affiliation: "X-Men",2204    rarity: "Starter",2205    ability: "Heroic: When fielded, Cyclops may pair up with a different Heroic character until the start of your next turn. While Cyclops is paired up, he and his partner each deal 1 damage to the opponent when assigned to attack.",2206    "* ability": "",2207    "** ability": "",2208    global: "",2209    dieLimit: 42210  },2211  {2212    id: 7,2213    dieId: 3,2214    setAbbr: "UX",2215    name: "Iceman",2216    subtitle: "Cryokinetic",2217    cost: 4,2218    type: "Bolt",2219    affiliation: "X-Men",2220    rarity: "Starter",2221    ability: "",2222    "* ability": "",2223    "** ability": "",2224    global: "",2225    dieLimit: 42226  },2227  {2228    id: 8,2229    dieId: 3,2230    setAbbr: "UX",2231    name: "Iceman",2232    subtitle: "Robert Louis Drake",2233    cost: 5,2234    type: "Bolt",2235    affiliation: "X-Men",2236    rarity: "Starter",2237    ability: "You may pay  [1 Bolt]  to give Iceman +1A and +1D.",2238    "* ability": "",2239    "** ability": "",2240    global: "",2241    dieLimit: 42242  },2243  {2244    id: 9,2245    dieId: 3,2246    setAbbr: "UX",2247    name: "Iceman",2248    subtitle: "Too Cool for Words",2249    cost: 5,2250    type: "Bolt",2251    affiliation: "X-Men",2252    rarity: "Starter",2253    ability: "Once per turn, you may pay  [1 Bolt]  to double Iceman's attack.",2254    "* ability": "",2255    "** ability": "",2256    global: "Global: Pay  [1 Bolt]  to spin any number of your Sidekick dice to their  [Bolt] side (if active, move them to your reserve pool).",2257    dieLimit: 42258  },2259  {2260    id: 10,2261    dieId: 4,2262    setAbbr: "UX",2263    name: "Juggernaut",2264    subtitle: "Cain Marko",2265    cost: 6,2266    type: "Shield",2267    affiliation: "Villains",2268    rarity: "Starter",2269    ability: "When Juggernaut takes damage, you may move any or all of your Sidekicks to your used pile. Prevent up to 3 damage to Juggernaut per Sidekick moved.",2270    "* ability": "",2271    "** ability": "",2272    global: "",2273    dieLimit: 42274  },2275  {2276    id: 11,2277    dieId: 4,2278    setAbbr: "UX",2279    name: "Juggernaut",2280    subtitle: "Unstoppable",2281    cost: 7,2282    type: "Shield",2283    affiliation: "Villains",2284    rarity: "Starter",2285    ability: "Once per turn, you may move one of your Sidekicks to your used pile to give Juggernaut +4A and +4D.",2286    "* ability": "",2287    "** ability": "",2288    global: "",2289    dieLimit: 42290  },2291  {2292    id: 12,2293    dieId: 4,2294    setAbbr: "UX",2295    name: "Juggernaut",2296    subtitle: "Archvillain",2297    cost: 6,2298    type: "Shield",2299    affiliation: "Villains",2300    rarity: "Starter",2301    ability: "When fielded, if your opponent has no Villains in the field, you may move one of your Sidekicks to your used pile to deal 1 damage to your opponent and gain 1 life.",2302    "* ability": "",2303    "** ability": "",2304    global: "",2305    dieLimit: 42306  },2307  {2308    id: 13,2309    dieId: 5,2310    setAbbr: "UX",2311    name: "Kitty Pryde",2312    subtitle: "Ariel",2313    cost: 2,2314    type: "Mask",2315    affiliation: "X-Men",2316    rarity: "Starter",2317    ability: "",2318    "* ability": "",2319    "** ability": "",2320    global: "",2321    dieLimit: 42322  },2323  {2324    id: 14,2325    dieId: 5,2326    setAbbr: "UX",2327    name: "Kitty Pryde",2328    subtitle: "Sprite",2329    cost: 3,2330    type: "Mask",2331    affiliation: "X-Men",2332    rarity: "Starter",2333    ability: "Kitty Pryde cannot be blocked by Sidekicks.",2334    "* ability": "",2335    "** ability": "",2336    global: "",2337    dieLimit: 42338  },2339  {2340    id: 15,2341    dieId: 5,2342    setAbbr: "UX",2343    name: "Kitty Pryde",2344    subtitle: "Shadowcat",2345    cost: 4,2346    type: "Mask",2347    affiliation: "X-Men",2348    rarity: "Starter",2349    ability: "Kitty Pryde cannot be blocked on the turn she is fielded.",2350    "* ability": "",2351    "** ability": "",2352    global: "Global: Pay  [1 Mask] . Target character cannot attack this turn unless its owner pays 1 life.",2353    dieLimit: 42354  },2355  {2356    id: 16,2357    dieId: 6,2358    setAbbr: "UX",2359    name: "Magneto",2360    subtitle: "Field Control",2361    cost: 6,2362    type: "Mask",2363    affiliation: "Villains",2364    rarity: "Starter",2365    ability: "When fielded, you may pay   [2 Mask] to move a character from the field or reserve pool to its owner's prep area.",2366    "* ability": "",2367    "** ability": "",2368    global: "",2369    dieLimit: 42370  },2371  {2372    id: 17,2373    dieId: 6,2374    setAbbr: "UX",2375    name: "Magneto",2376    subtitle: "Will to Live",2377    cost: 5,2378    type: "Mask",2379    affiliation: "Villains",2380    rarity: "Starter",2381    ability: "If Magneto leaves the field, he goes to your prep area instead of the used pile or dice bag.",2382    "* ability": "",2383    "** ability": "",2384    global: "",2385    dieLimit: 42386  },2387  {2388    id: 18,2389    dieId: 6,2390    setAbbr: "UX",2391    name: "Magneto",2392    subtitle: "Archvillain",2393    cost: 6,2394    type: "Mask",2395    affiliation: "Villains",2396    rarity: "Starter",2397    ability: "If your opponent has no Villains in the field, Magneto gains +3A and +3D.",2398    "* ability": "",2399    "** ability": "",2400    global: "",2401    dieLimit: 42402  },2403  {2404    id: 19,2405    dieId: 7,2406    setAbbr: "UX",2407    name: "Quicksilver",2408    subtitle: "Pietro Maximoff",2409    cost: 3,2410    type: "Bolt",2411    affiliation: "X-Men",2412    rarity: "Starter",2413    ability: "When fielded, Quicksilver deals 1 damage to one opposing character.",2414    "* ability": "",2415    "** ability": "",2416    global: "",2417    dieLimit: 42418  },2419  {2420    id: 20,2421    dieId: 7,2422    setAbbr: "UX",2423    name: "Quicksilver",2424    subtitle: "Thanks to Isotope E",2425    cost: 4,2426    type: "Bolt",2427    affiliation: "X-Men",2428    rarity: "Starter",2429    ability: "When fielded, Quicksilver deals 1 damage to each opposing Sidekick.",2430    "* ability": "",2431    "** ability": "",2432    global: "",2433    dieLimit: 42434  },2435  {2436    id: 21,2437    dieId: 7,2438    setAbbr: "UX",2439    name: "Quicksilver",2440    subtitle: "Former Villain",2441    cost: 4,2442    type: "Bolt",2443    affiliation: "X-Men",2444    rarity: "Starter",2445    ability: "When Quicksilver is blocked, he deals 1 damage to each opposing character (this extra damage resolves before normal combat damage is assigned).",2446    "* ability": "",2447    "** ability": "",2448    global: "",2449    dieLimit: 42450  },2451  {2452    id: 22,2453    dieId: 8,2454    setAbbr: "UX",2455    name: "Wolverine",2456    subtitle: "The Best There Is",2457    cost: 5,2458    type: "Fist",2459    affiliation: "X-Men",2460    rarity: "Starter",2461    ability: "Wolverine deals double damage to characters that block him.",2462    "* ability": "",2463    "** ability": "",2464    global: "",2465    dieLimit: 42466  },2467  {2468    id: 23,2469    dieId: 8,2470    setAbbr: "UX",2471    name: "Wolverine",2472    subtitle: "Not Very Nice",2473    cost: 6,2474    type: "Fist",2475    affiliation: "X-Men",2476    rarity: "Starter",2477    ability: "When Wolverine is blocked, you may pay   [2 Fist] to have him deal damage equal to his attack to one character blocking him (this extra damage resolves before normal combat damage is assigned).",2478    "* ability": "",2479    "** ability": "",2480    global: "",2481    dieLimit: 42482  },2483  {2484    id: 24,2485    dieId: 8,2486    setAbbr: "UX",2487    name: "Wolverine",2488    subtitle: "Superhero",2489    cost: 6,2490    type: "Fist",2491    affiliation: "X-Men",2492    rarity: "Starter",2493    ability: "Heroic: When fielded, Wolverine may pair up with a different Heroic character until the start of your next turn. While Wolverine is paired up, he and his partner can only be blocked by two or more characters (each).",2494    "* ability": "",2495    "** ability": "",2496    global: "",2497    dieLimit: 42498  },2499  {2500    id: 25,2501    dieId: 9,2502    setAbbr: "UX",2503    name: "Basic Action Card",2504    subtitle: "Ambush",2505    cost: 3,2506    type: "Generic",2507    affiliation: "None",2508    rarity: "Starter",2509    ability: "One of your characters gets +1A for each character your opponent has in the field.",2510    "* ability": "",2511    "** ability": "",2512    global: "",2513    dieLimit: 32514  },2515  {2516    id: 26,2517    dieId: 9,2518    setAbbr: "UX",2519    name: "Basic Action Card",2520    subtitle: "Enrage",2521    cost: 3,2522    type: "Generic",2523    affiliation: "None",2524    rarity: "Starter",2525    ability: "Choose a character. That character must attack at its next opportunity. Spin that character up one level (if able).",2526    "* ability": "",2527    "** ability": "",2528    global: "Global: Pay  [1 Bolt] . Give one character +1A.",2529    dieLimit: 32530  },2531  {2532    id: 27,2533    dieId: 9,2534    setAbbr: "UX",2535    name: "Basic Action Card",2536    subtitle: "Feedback",2537    cost: 3,2538    type: "Generic",2539    affiliation: "None",2540    rarity: "Starter",2541    ability: "Deal 1 damage to your opponent for each of his characters that is knocked out for the rest of this turn.",2542    "* ability": "",2543    "** ability": "",2544    global: "",2545    dieLimit: 32546  },2547  {2548    id: 28,2549    dieId: 9,2550    setAbbr: "UX",2551    name: "Basic Action Card",2552    subtitle: "Imprisoned",2553    cost: 4,2554    type: "Generic",2555    affiliation: "None",2556    rarity: "Starter",2557    ability: "This die captures any number of opposing characters with a total fielding cost of 2 or less. This effect lasts until canceled or you damage your opponent (return the captured die to the field).",2558    "* ability": "",2559    "** ability": "",2560    global: "",2561    dieLimit: 32562  },2563  {2564    id: 29,2565    dieId: 9,2566    setAbbr: "UX",2567    name: "Basic Action Card",2568    subtitle: "Possession",2569    cost: 4,2570    type: "Generic",2571    affiliation: "None",2572    rarity: "Starter",2573    ability: "At the start of your attack step, take control of an opposing character with a level lower than one of your characters. Attack with it.",2574    "* ability": "",2575    "** ability": "** Instead, take control of an opposing character with an equal or lower level.",2576    global: "",2577    dieLimit: 32578  },2579  {2580    id: 30,2581    dieId: 9,2582    setAbbr: "UX",2583    name: "Basic Action Card",2584    subtitle: "Reckless Melee",2585    cost: 3,2586    type: "Generic",2587    affiliation: "None",2588    rarity: "Starter",2589    ability: "Deal 1 damage to each character (including yours).",2590    "* ability": "* Instead, deal 1 damage to each player.",2591    "** ability": "** Instead, deal 1 damage to each player and 1 damage to each character.",2592    global: "",2593    dieLimit: 32594  },2595  {2596    id: 31,2597    dieId: 9,2598    setAbbr: "UX",2599    name: "Basic Action Card",2600    subtitle: "Relentless",2601    cost: 4,2602    type: "Generic",2603    affiliation: "None",2604    rarity: "Starter",2605    ability: "Spin this die to a generic energy side. Reroll a character or Sidekick die from your reserve pool.",2606    "* ability": "",2607    "** ability": "",2608    global: "Global: Pay  [1 Mask] . Target character cannot block.",2609    dieLimit: 32610  },2611  {2612    id: 32,2613    dieId: 9,2614    setAbbr: "UX",2615    name: "Basic Action Card",2616    subtitle: "Selective Shield",2617    cost: 4,2618    type: "Generic",2619    affiliation: "None",2620    rarity: "Starter",2621    ability: "Choose an energy type. Characters of that type cannot attack until your next turn.",2622    "* ability": "",2623    "** ability": "** Also choose one character of that type. That character cannot block until your next turn.",2624    global: "Global: Pay  [1 Fist] . Target blocked character deals no damage.",2625    dieLimit: 32626  },2627  {2628    id: 33,2629    dieId: 9,2630    setAbbr: "UX",2631    name: "Basic Action Card",2632    subtitle: "Take That, Villain!",2633    cost: 3,2634    type: "Generic",2635    affiliation: "None",2636    rarity: "Starter",2637    ability: "Deal 3 damage to a Villain.",2638    "* ability": "",2639    "** ability": "** Deal an extra 1 damage to that Villain.",2640    global: "",2641    dieLimit: 32642  },2643  {2644    id: 34,2645    dieId: 9,2646    setAbbr: "UX",2647    name: "Basic Action Card",2648    subtitle: "Transfer Power",2649    cost: 3,2650    type: "Generic",2651    affiliation: "None",2652    rarity: "Starter",2653    ability: "Roll a character die from your used pile. If it rolls a character face, field it at no cost. Otherwise, place it in your bag.",2654    "* ability": "",2655    "** ability": "",2656    global: "Global: Pay  [1 Shield] . Swap the attack value of one of your characters with that of one opposing character.",2657    dieLimit: 32658  },2659  {2660    id: 35,2661    dieId: 10,2662    setAbbr: "UX",2663    name: "Ant-Man",2664    subtitle: "Biophysicist",2665    cost: 2,2666    type: "Fist",2667    affiliation: "Avengers",2668    rarity: "Common",2669    ability: "",2670    "* ability": "",2671    "** ability": "",2672    global: "",2673    dieLimit: 42674  },2675  {2676    id: 36,2677    dieId: 11,2678    setAbbr: "UX",2679    name: "Apocalypse",2680    subtitle: "Awakened",2681    cost: 6,2682    type: "Bolt",2683    affiliation: "Villains",2684    rarity: "Common",2685    ability: "Apocalypse gets +5D on the turn he is fielded.",2686    "* ability": "",2687    "** ability": "",2688    global: "",2689    dieLimit: 42690  },2691  {2692    id: 37,2693    dieId: 12,2694    setAbbr: "UX",2695    name: "Bishop",2696    subtitle: "Omega Squad",2697    cost: 5,2698    type: "Shield",2699    affiliation: "X-Men",2700    rarity: "Common",2701    ability: "Bishop cannot be damaged by [Bolt] characters.",2702    "* ability": "",2703    "** ability": "",2704    global: "",2705    dieLimit: 42706  },2707  {2708    id: 38,2709    dieId: 13,2710    setAbbr: "UX",2711    name: "Black Panther",2712    subtitle: "Wakanda Chief",2713    cost: 4,2714    type: "Fist",2715    affiliation: "Avengers",2716    rarity: "Common",2717    ability: "Black Panther can only attack if your opponent has a character in the field.",2718    "* ability": "",2719    "** ability": "",2720    global: "",2721    dieLimit: 42722  },2723  {2724    id: 39,2725    dieId: 14,2726    setAbbr: "UX",2727    name: "Cable",2728    subtitle: "Man of Action",2729    cost: 4,2730    type: "Bolt",2731    affiliation: "None",2732    rarity: "Common",2733    ability: "When Cable is blocked, deal 1 damage to an enemy character.",2734    "* ability": "",2735    "** ability": "",2736    global: "Global: Pay   [2 Bolt] . Deal 1 damage to target enemy character. That character must block this turn (if able).",2737    dieLimit: 42738  },2739  {2740    id: 40,2741    dieId: 15,2742    setAbbr: "UX",2743    name: "Captain America",2744    subtitle: "Special Ops",2745    cost: 5,2746    type: "Shield",2747    affiliation: "Avengers",2748    rarity: "Common",2749    ability: "When fielded, move an opposing Villain to the prep area.",2750    "* ability": "",2751    "** ability": "",2752    global: "",2753    dieLimit: 42754  },2755  {2756    id: 41,2757    dieId: 16,2758    setAbbr: "UX",2759    name: "Emma Frost",2760    subtitle: "Archvillain",2761    cost: 5,2762    type: "Shield",2763    affiliation: "Villains",2764    rarity: "Common",2765    ability: "If your opponent has no Villain characters active, prevent all damage to Emma Frost from  [Fist]  characters.",2766    "* ability": "",2767    "** ability": "",2768    global: "",2769    dieLimit: 42770  },2771  {2772    id: 42,2773    dieId: 17,2774    setAbbr: "UX",2775    name: "Falcon",2776    subtitle: "Samuel Wilson",2777    cost: 2,2778    type: "Fist",2779    affiliation: "Avengers",2780    rarity: "Common",2781    ability: "",2782    "* ability": "",2783    "** ability": "",2784    global: "",2785    dieLimit: 42786  },2787  {2788    id: 43,2789    dieId: 18,2790    setAbbr: "UX",2791    name: "Iron Man",2792    subtitle: "Upright",2793    cost: 5,2794    type: "Shield",2795    affiliation: "Avengers",2796    rarity: "Common",2797    ability: "Iron Man takes 1 less damage from Villains.",2798    "* ability": "",2799    "** ability": "* Iron Man takes 2 less damage instead.",2800    global: "Global: Pay  [1 Shield] . Target character gains the Villain affiliation.",2801    dieLimit: 42802  },2803  {2804    id: 44,2805    dieId: 19,2806    setAbbr: "UX",2807    name: "Magik",2808    subtitle: "Illyana Rasputina",2809    cost: 4,2810    type: "Mask",2811    affiliation: "None",2812    rarity: "Common",2813    ability: "When Magik is knocked out, reroll her die. If you roll a character face, return Magik to the field.",2814    "* ability": "",2815    "** ability": "",2816    global: "",2817    dieLimit: 42818  },2819  {2820    id: 45,2821    dieId: 20,2822    setAbbr: "UX",2823    name: "Marvel Girl",2824    subtitle: "Telekinetic",2825    cost: 6,2826    type: "Bolt",2827    affiliation: "X-Men",2828    rarity: "Common",2829    ability: "When fielded, spin each opposing character down one level (if able).",2830    "* ability": "",2831    "** ability": "",2832    global: "",2833    dieLimit: 42834  },2835  {2836    id: 46,2837    dieId: 21,2838    setAbbr: "UX",2839    name: "Mister Sinister",2840    subtitle: "Archvillain",2841    cost: 6,2842    type: "Bolt",2843    affiliation: "Villains",2844    rarity: "Common",2845    ability: "While Mr. Sinister is active, if your opponent has no Villain characters fielded, each of your characters gains +2D.",2846    "* ability": "",2847    "** ability": "",2848    global: "",2849    dieLimit: 42850  },2851  {2852    id: 47,2853    dieId: 22,2854    setAbbr: "UX",2855    name: "Mystique",2856    subtitle: "Ageless",2857    cost: 3,2858    type: "Mask",2859    affiliation: "Villains",2860    rarity: "Common",2861    ability: "Mystique gets +1A and +1D for each die in your prep area.",2862    "* ability": "",2863    "** ability": "",2864    global: "",2865    dieLimit: 42866  },2867  {2868    id: 48,2869    dieId: 23,2870    setAbbr: "UX",2871    name: "Namor",2872    subtitle: "The Sub-Mariner",2873    cost: 5,2874    type: "Shield",2875    affiliation: "X-Men",2876    rarity: "Common",2877    ability: "If you have at least two other characters fielded, Namor cannot be blocked.",2878    "* ability": "",2879    "** ability": "",2880    global: "",2881    dieLimit: 42882  },2883  {2884    id: 49,2885    dieId: 24,2886    setAbbr: "UX",2887    name: "Professor X",2888    subtitle: "Recruiting Young Mutants",2889    cost: 6,2890    type: "Mask",2891    affiliation: "X-Men",2892    rarity: "Common",2893    ability: "When fielded, search your bag for up to 2 Sidekick dice and roll them.",2894    "* ability": "",2895    "** ability": "",2896    global: "Global: Pay  [1 Mask] . Move up to 2 Sidekick dice from your used pile to your prep area.",2897    dieLimit: 42898  },2899  {2900    id: 50,2901    dieId: 25,2902    setAbbr: "UX",2903    name: "Psylocke",2904    subtitle: "Betsy Braddock",2905    cost: 4,2906    type: "Mask",2907    affiliation: "X-Men",2908    rarity: "Common",2909    ability: "When fielded, move one opposing character with cost 2 or less, including Sidekicks, to the used pile.",2910    "* ability": "",2911    "** ability": "",2912    global: "",2913    dieLimit: 42914  },2915  {2916    id: 51,2917    dieId: 26,2918    setAbbr: "UX",2919    name: "Pyro",2920    subtitle: "Saint-John Allerdyce",2921    cost: 4,2922    type: "Bolt",2923    affiliation: "Villains",2924    rarity: "Common",2925    ability: "When Pyro is blocked, he deals 1 damage to your opponent.",2926    "* ability": "",2927    "** ability": "",2928    global: "",2929    dieLimit: 42930  },2931  {2932    id: 52,2933    dieId: 27,2934    setAbbr: "UX",2935    name: "Red Hulk",2936    subtitle: "Thunderbolt Ross",2937    cost: 6,2938    type: "Fist",2939    affiliation: "None",2940    rarity: "Common",2941    ability: "* If Red Hulk is damaged in an attack phase but not knocked out, spin him up one level at the end of the turn.",2942    "* ability": "",2943    "** ability": "",2944    global: "",2945    dieLimit: 42946  },2947  {2948    id: 53,2949    dieId: 28,2950    setAbbr: "UX",2951    name: "Sabretooth",2952    subtitle: "Something to Prove",2953    cost: 4,2954    type: "Fist",2955    affiliation: "Villains",2956    rarity: "Common",2957    ability: "At the beginning of your turn, spin each of your fielded Sabretooth dice up one level.",2958    "* ability": "",2959    "** ability": "",2960    global: "",2961    dieLimit: 42962  },2963  {2964    id: 54,2965    dieId: 29,2966    setAbbr: "UX",2967    name: "Scarlet Witch",2968    subtitle: "Wanda Maximoff",2969    cost: 3,2970    type: "Bolt",2971    affiliation: "Villains",2972    rarity: "Common",2973    ability: "When fielded, Scarlet Witch deals 1 damage to each opposing X-Men character for each other Villain you have in the field.",2974    "* ability": "",2975    "** ability": "",2976    global: "",2977    dieLimit: 42978  },2979  {2980    id: 55,2981    dieId: 30,2982    setAbbr: "UX",2983    name: "Sentinel",2984    subtitle: "Mutant Hunter",2985    cost: 6,2986    type: "Shield",2987    affiliation: "Villains",2988    rarity: "Common",2989    ability: "When Sentinel attacks, you can force one X-Men character to block it (if able).",2990    "* ability": "",2991    "** ability": "",2992    global: "",2993    dieLimit: 42994  },2995  {2996    id: 56,2997    dieId: 31,2998    setAbbr: "UX",2999    name: "She-Hulk",3000    subtitle: "Jennifer Walters",3001    cost: 5,3002    type: "Fist",3003    affiliation: "Avengers",3004    rarity: "Common",3005    ability: "If She-Hulk is blocked, spin her up one level (this happens before damage is assigned).",3006    "* ability": "",3007    "** ability": "",3008    global: "",3009    dieLimit: 43010  },3011  {3012    id: 57,3013    dieId: 32,3014    setAbbr: "UX",3015    name: "Spider-Man",3016    subtitle: "Hero for Hire",3017    cost: 5,3018    type: "Fist",3019    affiliation: "None",3020    rarity: "Common",3021    ability: "When Spider-Man attacks, choose one opposing character. That character cannot block.",3022    "* ability": "",3023    "** ability": "",3024    global: "",3025    dieLimit: 43026  },3027  {3028    id: 58,3029    dieId: 33,3030    setAbbr: "UX",3031    name: "Storm",3032    subtitle: "Weather Witch",3033    cost: 2,3034    type: "Mask",3035    affiliation: "X-Men",3036    rarity: "Common",3037    ability: "Storm takes no damage from action dice.",3038    "* ability": "",3039    "** ability": "",3040    global: "Global: Pay  [1 Mask] . Change the target of an action die that targets a character die to the character die of your choice.",3041    dieLimit: 43042  },3043  {3044    id: 59,3045    dieId: 34,3046    setAbbr: "UX",3047    name: "Toad",3048    subtitle: "Tongue Lashing",3049    cost: 5,3050    type: "Fist",3051    affiliation: "Villains",3052    rarity: "Common",3053    ability: "While Toad is active, each opposing non-Sidekick character must attack (if legal).",3054    "* ability": "",3055    "** ability": "* Opposing characters take 2 damage when they attack.",3056    global: "",3057    dieLimit: 43058  },3059  {3060    id: 60,3061    dieId: 35,3062    setAbbr: "UX",3063    name: "Vision",3064    subtitle: "Density Control",3065    cost: 4,3066    type: "Mask",3067    affiliation: "Avengers",3068    rarity: "Common",3069    ability: "When Vision blocks, you may spin him up one level.",3070    "* ability": "",3071    "** ability": "",3072    global: "",3073    dieLimit: 43074  },3075  {3076    id: 61,3077    dieId: 36,3078    setAbbr: "UX",3079    name: "X-23",3080    subtitle: "Scent of Murder",3081    cost: 4,3082    type: "Fist",3083    affiliation: "None",3084    rarity: "Common",3085    ability: "X-23 cannot block.",3086    "* ability": "",3087    "** ability": "",3088    global: "",3089    dieLimit: 43090  },3091  {3092    id: 62,3093    dieId: 37,3094    setAbbr: "UX",3095    name: "Cerebro",3096    subtitle: "Cybernetic Intelligence",3097    cost: 5,3098    type: "Mask",3099    affiliation: "None",3100    rarity: "Common",3101    ability: "Place Cerebro on an X-Men die's card. It remains there until you or a card effect removes it (it is still in the field). When you field a die from that card, knock out one opposing die.",3102    "* ability": "",3103    "** ability": "",3104    global: "",3105    dieLimit: 13106  },3107  {3108    id: 63,3109    dieId: 1,3110    setAbbr: "UX",3111    name: "Angel",3112    subtitle: "Flying High",3113    cost: 3,3114    type: "Shield",3115    affiliation: "X-Men",3116    rarity: "Uncommon",3117    ability: "When Angel attacks, all other  [Shield]  characters must be blocked before Angel dice can be blocked.",3118    "* ability": "",3119    "** ability": "",3120    global: "",3121    dieLimit: 43122  },3123  {3124    id: 64,3125    dieId: 10,3126    setAbbr: "UX",3127    name: "Ant-Man",3128    subtitle: "Pym Particles",3129    cost: 3,3130    type: "Fist",3131    affiliation: "Avengers",3132    rarity: "Uncommon",3133    ability: "Ant-Man gets +2D while attacking.",3134    "* ability": "",3135    "** ability": "",3136    global: "Global: Pay  [1 Fist] . Switch the A and D values of one of your characters.",3137    dieLimit: 43138  },3139  {3140    id: 65,3141    dieId: 11,3142    setAbbr: "UX",3143    name: "Apocalypse",3144    subtitle: "Archvillain",3145    cost: 6,3146    type: "Bolt",3147    affiliation: "Villains",3148    rarity: "Uncommon",3149    ability: "While your opponent has no Villain characters fielded, prevent all damage to Apocalypse.",3150    "* ability": "",3151    "** ability": "",3152    global: "",3153    dieLimit: 23154  },3155  {3156    id: 66,3157    dieId: 12,3158    setAbbr: "UX",3159    name: "Bishop",3160    subtitle: "Branded a Mutant",3161    cost: 4,3162    type: "Shield",3163    affiliation: "None",3164    rarity: "Uncommon",3165    ability: "Bishop gets +2A when engaged with a [Bolt] character.",3166    "* ability": "",3167    "** ability": "",3168    global: "",3169    dieLimit: 43170  },3171  {3172    id: 67,3173    dieId: 13,3174    setAbbr: "UX",3175    name: "Black Panther",3176    subtitle: "T'Challa",3177    cost: 5,3178    type: "Fist",3179    affiliation: "None",3180    rarity: "Uncommon",3181    ability: "Black Panther gets +2A when attacking alone.",3182    "* ability": "",3183    "** ability": "",3184    global: "",3185    dieLimit: 43186  },3187  {3188    id: 68,3189    dieId: 14,3190    setAbbr: "UX",3191    name: "Cable",3192    subtitle: "Techno-Organic",3193    cost: 5,3194    type: "Bolt",3195    affiliation: "None",3196    rarity: "Uncommon",3197    ability: "When Cable is blocked, deal 2 damage to each enemy character.",3198    "* ability": "",3199    "** ability": "",3200    global: "Global: Pay   [2 Bolt] . Deal 1 damage to target enemy character. That character must block this turn (if able).",3201    dieLimit: 43202  },3203  {3204    id: 69,3205    dieId: 15,3206    setAbbr: "UX",3207    name: "Captain America",3208    subtitle: "'Follow Me!'",3209    cost: 4,3210    type: "Shield",3211    affiliation: "Avengers",3212    rarity: "Uncommon",3213    ability: "When fielded, the next character you field this turn can be fielded for free.",3214    "* ability": "",3215    "** ability": "",3216    global: "",3217    dieLimit: 43218  },3219  {3220    id: 70,3221    dieId: 2,3222    setAbbr: "UX",3223    name: "Cyclops",3224    subtitle: "Field Leader",3225    cost: 5,3226    type: "Bolt",3227    affiliation: "X-Men",3228    rarity: "Uncommon",3229    ability: "While Cyclops is active, whenever one of your  [Bolt]  characters deals damage, increase that damage by one (no matter how many Cyclops dice you have fielded).",3230    "* ability": "",3231    "** ability": "",3232    global: "",3233    dieLimit: 43234  },3235  {3236    id: 71,3237    dieId: 17,3238    setAbbr: "UX",3239    name: "Falcon",3240    subtitle: "Recon",3241    cost: 3,3242    type: "Fist",3243    affiliation: "None",3244    rarity: "Uncommon",3245    ability: "When Falcon attacks, your Sidekicks can't be blocked.",3246    "* ability": "",3247    "** ability": "",3248    global: "",3249    dieLimit: 43250  },3251  {3252    id: 72,3253    dieId: 3,3254    setAbbr: "UX",3255    name: "Iceman",3256    subtitle: "Mister Friese",3257    cost: 4,3258    type: "Bolt",3259    affiliation: "X-Men",3260    rarity: "Uncommon",3261    ability: "The first time each turn you field another character, Iceman gains +3A (no matter how many Iceman dice you have fielded).",3262    "* ability": "",3263    "** ability": "",3264    global: "",3265    dieLimit: 43266  },3267  {3268    id: 73,3269    dieId: 4,3270    setAbbr: "UX",3271    name: "Juggernaut",3272    subtitle: "Kuurth",3273    cost: 5,3274    type: "Shield",3275    affiliation: "Villains",3276    rarity: "Uncommon",3277    ability: "If your opponent has no Villains in the field, each Juggernaut die can block one additional opposing die (no matter how many Juggernaut dice you have fielded).",3278    "* ability": "",3279    "** ability": "",3280    global: "",3281    dieLimit: 43282  },3283  {3284    id: 74,3285    dieId: 5,3286    setAbbr: "UX",3287    name: "Kitty Pryde",3288    subtitle: "Just a Phase",3289    cost: 5,3290    type: "Mask",3291    affiliation: "X-Men",3292    rarity: "Uncommon",3293    ability: "When Kitty Pryde is blocked, you may pay  [1 Mask]  to move one character blocking her out of the attack zone (it remains in the field; Kitty Pryde remains blocked).",3294    "* ability": "",3295    "** ability": "",3296    global: "",3297    dieLimit: 43298  },3299  {3300    id: 75,3301    dieId: 19,3302    setAbbr: "UX",3303    name: "Magik",3304    subtitle: "Lightchylde",3305    cost: 4,3306    type: "Mask",3307    affiliation: "X-Men",3308    rarity: "Uncommon",3309    ability: "When Magik blocks, draw a die from your bag. If it is not a Sidekick, remove Magik and the attacker from the attack zone (they remain in the field). Return the drawn die to your bag.",3310    "* ability": "",3311    "** ability": "",3312    global: "",3313    dieLimit: 43314  },3315  {3316    id: 76,3317    dieId: 6,3318    setAbbr: "UX",3319    name: "Magneto",3320    subtitle: "Hellfire Club",3321    cost: 7,3322    type: "Mask",3323    affiliation: "Villains",3324    rarity: "Uncommon",3325    ability: "While Magneto is active, if your opponent has no Villains in the field, he takes 2 damage each time he draws one or more dice from his bag.",3326    global: "",3327    dieLimit: 43328  },3329  {3330    id: 77,3331    dieId: 20,3332    setAbbr: "UX",3333    name: "Marvel Girl",3334    subtitle: "Superhero",3335    cost: 5,3336    type: "Bolt",3337    affiliation: "X-Men",3338    rarity: "Uncommon",3339    ability: "Heroic: When fielded, Marvel Girl may pair up with a different Heroic character until the start of your next turn. While Marvel Girl is paired up, when she or her partner attacks, you may spin down one non-Heroic character and gain 1 life.",3340    "* ability": "",3341    "** ability": "",3342    global: "",3343    dieLimit: 43344  },3345  {3346    id: 78,3347    dieId: 21,3348    setAbbr: "UX",3349    name: "Mister Sinister",3350    subtitle: "Nasty Boy",3351    cost: 5,3352    type: "Bolt",3353    affiliation: "Villains",3354    rarity: "Uncommon",3355    ability: "While Mr. Sinister is active, whenever a Villain is knocked out (either player's), deal 1 damage to your opponent.",3356    "* ability": "",3357    "** ability": "",3358    global: "Global: Pay   [2 Bolt] . Each player chooses one of his characters to take 3 damage.",3359    dieLimit: 43360  },3361  {3362    id: 79,3363    dieId: 22,3364    setAbbr: "UX",3365    name: "Mystique",3366    subtitle: "Raven Darkholme",3367    cost: 3,3368    type: "Mask",3369    affiliation: "Villains",3370    rarity: "Uncommon",3371    ability: "Mystique gets +1A and +1D for each other Villain in the field (both players').",3372    "* ability": "",3373    "** ability": "",3374    global: "",3375    dieLimit: 43376  },3377  {3378    id: 80,3379    dieId: 23,3380    setAbbr: "UX",3381    name: "Namor",3382    subtitle: "Atlantean",3383    cost: 4,3384    type: "Shield",3385    affiliation: "Avengers",3386    rarity: "Uncommon",3387    ability: "When Namor blocks, you may cancel one active action effect. Move that action die to its owner's used pile if necessary.",3388    "* ability": "",3389    "** ability": "",3390    global: "",3391    dieLimit: 43392  },3393  {3394    id: 81,3395    dieId: 24,3396    setAbbr: "UX",3397    name: "Professor X",3398    subtitle: "Founder",3399    cost: 6,3400    type: "Mask",3401    affiliation: "X-Men",3402    rarity: "Uncommon",3403    ability: "Heroic: When fielded, Professor X may pair up with a different Heroic character until the start of your next turn. While Professor X is paired up, gain 1 life when either he and/or his partner attack.",3404    "* ability": "",3405    "** ability": "",3406    global: "",3407    dieLimit: 43408  },3409  {3410    id: 82,3411    dieId: 25,3412    setAbbr: "UX",3413    name: "Psylocke",3414    subtitle: "Ninjutsu",3415    cost: 3,3416    type: "Mask",3417    affiliation: "None",3418    rarity: "Uncommon",3419    ability: "When fielded, choose one opposing Sidekick or character with a purchase cost of 2 or less. If it is at level one, knock it out. Otherwise, spin it down one level.",3420    "* ability": "",3421    "** ability": "",3422    global: "",3423    dieLimit: 43424  },3425  {3426    id: 83,3427    dieId: 26,3428    setAbbr: "UX",3429    name: "Pyro",3430    subtitle: "Pyrokinetic",3431    cost: 4,3432    type: "Bolt",3433    affiliation: "Villains",3434    rarity: "Uncommon",3435    ability: "When Pyro attacks, pay up to   [2 Bolts] . Deal 1 damage to your opponent for each  [Bolt] spent.",3436    "* ability": "",3437    "** ability": "",3438    global: "Global: Pay  [1 Bolt] . Draw and roll 2 dice from your bag. Keep any  [Bolt] results rolled. Return the rest to your bag.",3439    dieLimit: 43440  },3441  {3442    id: 84,3443    dieId: 7,3444    setAbbr: "UX",3445    name: "Quicksilver",3446    subtitle: "Villainous",3447    cost: 4,3448    type: "Bolt",3449    affiliation: "Villains",3450    rarity: "Uncommon",3451    ability: "When Quicksilver is fielded or knocked out, deal 2 damage to each X-Men character in play (including yours).",3452    "* ability": "",3453    "** ability": "",3454    global: "",3455    dieLimit: 43456  },3457  {3458    id: 85,3459    dieId: 27,3460    setAbbr: "UX",3461    name: "Red Hulk",3462    subtitle: "a.k.a. Rulk",3463    cost: 7,3464    type: "Fist",3465    affiliation: "None",3466    rarity: "Uncommon",3467    ability: "While Red Hulk is active, when an opposing Sidekick is knocked out, your opponent loses 1 life (no matter how many Red Hulk dice you have fielded).",3468    "* ability": "* If Red Hulk knocks out a Sidekick, your opponent loses 2 additional life.",3469    "** ability": "",3470    global: "",3471    dieLimit: 43472  },3473  {3474    id: 86,3475    dieId: 28,3476    setAbbr: "UX",3477    name: "Sabretooth",3478    subtitle: "Survivor",3479    cost: 4,3480    type: "Fist",3481    affiliation: "Villains",3482    rarity: "Uncommon",3483    ability: "When Sabretooth takes enough damage to knock him out while he is at level 2 or 3, spin him down one level and reduce the damage he has taken to zero.",3484    "* ability": "",3485    "** ability": "",3486    global: "",3487    dieLimit: 43488  },3489  {3490    id: 87,3491    dieId: 30,3492    setAbbr: "UX",3493    name: "Sentinel",3494    subtitle: "Archvillain",3495    cost: 7,3496    type: "Shield",3497    affiliation: "Villains",3498    rarity: "Uncommon",3499    ability: "When fielded, if your opponent has no Villains fielded, knock out all opposing X-Men characters. Your opponent takes 1 damage for each character knocked out in this way.",3500    "* ability": "",3501    "** ability": "",3502    global: "Global: Pay  [1 Shield] . One X-Men character must block this turn (if able).",3503    dieLimit: 23504  },3505  {3506    id: 88,3507    dieId: 31,3508    setAbbr: "UX",3509    name: "She-Hulk",3510    subtitle: "Lady Liberator",3511    cost: 5,3512    type: "Fist",3513    affiliation: "None",3514    rarity: "Uncommon",3515    ability: "She-Hulk can only be blocked by two or more characters.",3516    "* ability": "",3517    "** ability": "",3518    global: "",3519    dieLimit: 43520  },3521  {3522    id: 89,3523    dieId: 31,3524    setAbbr: "UX",3525    name: "Storm",3526    subtitle: "Superhero",3527    cost: 3,3528    type: "Mask",3529    affiliation: "X-Men",3530    rarity: "Uncommon",3531    ability: "Heroic: When fielded, Storm may pair up with a different Heroic character until the start of your next turn. While Storm is paired up, she and her partner can't be targeted by action dice.",3532    "* ability": "",3533    "** ability": "",3534    global: "",3535    dieLimit: 43536  },3537  {3538    id: 90,3539    dieId: 32,3540    setAbbr: "UX",3541    name: "Toad",3542    subtitle: "Sniveling Servant",3543    cost: 4,3544    type: "Fist",3545    affiliation: "Villains",3546    rarity: "Uncommon",3547    ability: "While Toad is active, when your opponent commits a character to attack, choose one opposing character who must also attack. If Toad blocks that character, cut its attack value in half (round down).",3548    "* ability": "",3549    "** ability": "",3550    global: "",3551    dieLimit: 43552  },3553  {3554    id: 91,3555    dieId: 35,3556    setAbbr: "UX",3557    name: "Vision",3558    subtitle: "Android",3559    cost: 4,3560    type: "Mask",3561    affiliation: "Avengers",3562    rarity: "Uncommon",3563    ability: "Vision takes no damage from  [Mask] characters.",3564    "* ability": "",3565    "** ability": "",3566    global: "",3567    dieLimit: 43568  },3569  {3570    id: 92,3571    dieId: 8,3572    setAbbr: "UX",3573    name: "Wolverine",3574    subtitle: "Antihero",3575    cost: 5,3576    type: "Fist",3577    affiliation: "None",3578    rarity: "Uncommon",3579    ability: "Heroic: When fielded, Wolverine may pair up with a different Heroic character until the start of your next turn. While Wolverine is paired up, prevent all damage to him and his partner from [Fist] and [Shield] dice.",3580    "* ability": "",3581    "** ability": "",3582    global: "",3583    dieLimit: 43584  },3585  {3586    id: 93,3587    dieId: 36,3588    setAbbr: "UX",3589    name: "X-23",3590    subtitle: "Assassin",3591    cost: 6,3592    type: "Fist",3593    affiliation: "None",3594    rarity: "Uncommon",3595    ability: "When X-23 attacks, choose a  [Fist]  or  [Bolt]  character. That character must block her (if able).",3596    "* ability": "",3597    "** ability": "",3598    global: "",3599    dieLimit: 43600  },3601  {3602    id: 94,3603    dieId: 37,3604    setAbbr: "UX",3605    name: "Cerebro",3606    subtitle: "Supercomputer",3607    cost: 3,3608    type: "Mask",3609    affiliation: "None",3610    rarity: "Uncommon",3611    ability: "Place Cerebro on a character card. It remains there until you or a card effect removes it (it is still in the field). Your opponent's dice from that card cost a minimum of 2 energy to field. This cost can't be reduced.",3612    "* ability": "",3613    "** ability": "",3614    global: "",3615    dieLimit: 33616  },3617  {3618    id: 95,3619    dieId: 10,3620    setAbbr: "UX",3621    name: "Ant-Man",3622    subtitle: "The Insect World",3623    cost: 3,3624    type: "Fist",3625    affiliation: "Avengers",3626    rarity: "Rare",3627    ability: "When fielded, you may pay 1 life to spin Ant-Man up one level.",3628    "* ability": "",3629    "** ability": "",3630    global: "Global: Pay  [1 Fist] . Switch the A and D values of one of your characters.",3631    dieLimit: 43632  },3633  {3634    id: 96,3635    dieId: 11,3636    setAbbr: "UX",3637    name: "Apocalypse",3638    subtitle: "Time of Testing",3639    cost: 6,3640    type: "Bolt",3641    affiliation: "Villains",3642    rarity: "Rare",3643    ability: "* After Apocalypse is knocked out, return him to the field and spin him down one level.",3644    "* ability": "",3645    "** ability": "",3646    global: "",3647    dieLimit: 43648  },3649  {3650    id: 97,3651    dieId: 12,3652    setAbbr: "UX",3653    name: "Bishop",3654    subtitle: "XSE",3655    cost: 5,3656    type: "Shield",3657    affiliation: "None",3658    rarity: "Rare",3659    ability: "For each 2 damage dealt to Bishop in combat, deal 1 damage to an opposing character.",3660    "* ability": "",3661    "** ability": "",3662    global: "",3663    dieLimit: 43664  },3665  {3666    id: 98,3667    dieId: 13,3668    setAbbr: "UX",3669    name: "Black Panther",3670    subtitle: "Diversion",3671    cost: 5,3672    type: "Fist",3673    affiliation: "Avengers",3674    rarity: "Rare",3675    ability: "If Black Panther does not attack, you may choose an opposing non- [Fist] character. That character cannot block.",3676    "* ability": "",3677    "** ability": "",3678    global: "",3679    dieLimit: 43680  },3681  {3682    id: 99,3683    dieId: 14,3684    setAbbr: "UX",3685    name: "Cable",3686    subtitle: "Time Traveler",3687    cost: 5,3688    type: "Bolt",3689    affiliation: "X-Men",3690    rarity: "Rare",3691    ability: "When Cable is blocked, you may pay   [2 Bolt] to have him damage your opponent (instead of his blockers) as though he were not blocked.",3692    "* ability": "",3693    "** ability": "",3694    global: "Global: Pay   [2 Bolt] . Deal 1 damage to target enemy character. That character must block this turn (if able).",3695    dieLimit: 43696  },3697  {3698    id: 100,3699    dieId: 15,3700    setAbbr: "UX",3701    name: "Captain America",3702    subtitle: "Superhero",3703    cost: 5,3704    type: "Shield",3705    affiliation: "Avengers",3706    rarity: "Rare",3707    ability: "Heroic: When fielded, Captain America may pair up with a different Heroic character until the start of your next turn. While Captain America is paired up, he and his partner each gain +4A and +4D.",3708    "* ability": "",3709    "** ability": "",3710    global: "",3711    dieLimit: 43712  },3713  {3714    id: 101,3715    dieId: 16,3716    setAbbr: "UX",3717    name: "Emma Frost",3718    subtitle: "Graceful",3719    cost: 4,3720    type: "Shield",3721    affiliation: "X-Men",3722    rarity: "Rare",3723    ability: "While Emma Frost is active, opposing  [Fist]  characters get -1A (no matter how many Emma Frost dice you have fielded).",3724    "* ability": "",3725    "** ability": "",3726    global: "",3727    dieLimit: 43728  },3729  {3730    id: 102,3731    dieId: 17,3732    setAbbr: "UX",3733    name: "Falcon",3734    subtitle: "Air Strike",3735    cost: 3,3736    type: "Fist",3737    affiliation: "None",3738    rarity: "Rare",3739    ability: "When fielded, you may move one of your Sidekicks to your used pile to deal 2 damage to an opposing character.",3740    "* ability": "",3741    "** ability": "",3742    global: "",3743    dieLimit: 43744  },3745  {3746    id: 103,3747    dieId: 18,3748    setAbbr: "UX",3749    name: "Iron Man",3750    subtitle: "Superhero",3751    cost: 5,3752    type: "Shield",3753    affiliation: "Avengers",3754    rarity: "Rare",3755    ability: "Heroic: When fielded, Iron Man may pair up with a different Heroic character until the start of your next turn. While Iron Man is paired up, prevent the first 2 damage dealt to Iron Man and his partner.",3756    "* ability": "",3757    "** ability": "",3758    global: "",3759    dieLimit: 43760  },3761  {3762    id: 104,3763    dieId: 19,3764    setAbbr: "UX",3765    name: "Magik",3766    subtitle: "Redflag #133",3767    cost: 5,3768    type: "Mask",3769    affiliation: "None",3770    rarity: "Rare",3771    ability: "After Magik damages an opponent, reroll her die until you roll a  [Mask] face. Deal 1 damage to your opponent for each character face you rolled before rolling a  [Mask] . Place Magik in your used pile.",3772    "* ability": "",3773    "** ability": "",3774    global: "",3775    dieLimit: 43776  },3777  {3778    id: 105,3779    dieId: 20,3780    setAbbr: "UX",3781    name: "Marvel Girl",3782    subtitle: "Telepath",3783    cost: 5,3784    type: "Bolt",3785    affiliation: "X-Men",3786    rarity: "Rare",3787    ability: "When fielded, you may pay  [1 Bolt]  to spin one character down a level and spin Marvel Girl up one level (you must do both).",3788    "* ability": "",3789    "** ability": "",3790    global: "",3791    dieLimit: 43792  },3793  {3794    id: 106,3795    dieId: 21,3796    setAbbr: "UX",3797    name: "Mister Sinister",3798    subtitle: "Nathaniel Essex",3799    cost: 5,3800    type: "Bolt",3801    affiliation: "Villains",3802    rarity: "Rare",3803    ability: "If Mr. Sinister and one of your Sidekicks are knocked out in the same turn, return Mr. Sinister to the field (at his same level).",3804    "* ability": "",3805    "** ability": "",3806    global: "Global: Pay   [2 Bolt] . Each player chooses one of his characters to take 3 damage.",3807    dieLimit: 43808  },3809  {3810    id: 107,3811    dieId: 22,3812    setAbbr: "UX",3813    name: "Mystique",3814    subtitle: "Alias: You",3815    cost: 4,3816    type: "Mask",3817    affiliation: "Villains",3818    rarity: "Rare",3819    ability: "When Mystique attacks, she gains the attack value and all assigning and attacking abilities of one opposing character.",3820    global: "",3821    dieLimit: 43822  },3823  {3824    id: 108,3825    dieId: 23,3826    setAbbr: "UX",3827    name: "Namor",3828    subtitle: "Imperius Rex",3829    cost: 4,3830    type: "Shield",3831    affiliation: "None",3832    rarity: "Rare",3833    ability: "If Namor is the only character in your field at the end of any turn, field up to two Sidekick dice from your used pile or prep area (spin them to their character face).",3834    "* ability": "",3835    "** ability": "",3836    global: "",3837    dieLimit: 43838  },3839  {3840    id: 109,3841    dieId: 24,3842    setAbbr: "UX",3843    name: "Professor X",3844    subtitle: "Trainer",3845    cost: 5,3846    type: "Mask",3847    affiliation: "X-Men",3848    rarity: "Rare",3849    ability: "While Professor X is active, your Sidekicks get +1A and +1D (no matter how many Professor X dice you have fielded).",3850    "* ability": "",3851    "** ability": "",3852    global: "Global: Pay  [1 Mask] . Move up to 2 Sidekick dice from your used pile to your prep area.",3853    dieLimit: 43854  },3855  {3856    id: 110,3857    dieId: 25,3858    setAbbr: "UX",3859    name: "Psylocke",3860    subtitle: "Kwannon the Assassin",3861    cost: 2,3862    type: "Mask",3863    affiliation: "None",3864    rarity: "Rare",3865    ability: "When fielded, you may pay   [2 Masks] to knock out one character.",3866    "* ability": "",3867    "** ability": "",3868    global: "",3869    dieLimit: 43870  },3871  {3872    id: 111,3873    dieId: 26,3874    setAbbr: "UX",3875    name: "Pyro",3876    subtitle: "Uncontrolled",3877    cost: 5,3878    type: "Bolt",3879    affiliation: "Villains",3880    rarity: "Rare",3881    ability: "When Pyro attacks, roll all the dice in your used pile. Deal 1 damage to your opponent for each  [Bolt]  rolled. Return the dice to your used pile.",3882    "* ability": "",3883    "** ability": "",3884    global: "Global: Pay   [2 Bolts] . Draw and roll 2 dice from your bag. Keep any  [Bolt] results rolled. Return the rest to your bag.",3885    dieLimit: 43886  },3887  {3888    id: 112,3889    dieId: 27,3890    setAbbr: "UX",3891    name: "Red Hulk",3892    subtitle: "Superhero",3893    cost: 7,3894    type: "Fist",3895    affiliation: "Avengers",3896    rarity: "Rare",3897    ability: "Heroic: When fielded, Red Hulk may pair up with a different Heroic character until the start of your next turn. While Red Hulk is paired up, he and his partner each gain +3A.",3898    "* ability": "",3899    "** ability": "",3900    global: "",3901    dieLimit: 43902  },3903  {3904    id: 113,3905    dieId: 28,3906    setAbbr: "UX",3907    name: "Sabretooth",3908    subtitle: "Superpowered",3909    cost: 5,3910    type: "Fist",3911    affiliation: "Villains",3912    rarity: "Rare",3913    ability: "Heroic: When fielded, Sabretooth may pair up with a different Heroic character until the start of your next turn. While Sabretooth is paired up, spin him and his partner to level 3 at the end of your turn.",3914    "* ability": "",3915    "** ability": "",3916    global: "",3917    dieLimit: 43918  },3919  {3920    id: 114,3921    dieId: 29,3922    setAbbr: "UX",3923    name: "Scarlet Witch",3924    subtitle: "Unity Squad",3925    cost: 3,3926    type: "Bolt",3927    affiliation: "Avengers",3928    rarity: "Rare",3929    ability: "On the turn after Scarlet Witch is fielded, you may make your opponent reroll one die from his initial roll (before he rerolls dice).",3930    "* ability": "",3931    "** ability": "",3932    global: "",3933    dieLimit: 43934  },3935  {3936    id: 115,3937    dieId: 30,3938    setAbbr: "UX",3939    name: "Sentinel",3940    subtitle: "Robot",3941    cost: 6,3942    type: "Shield",3943    affiliation: "Villains",3944    rarity: "Rare",3945    ability: "Sentinel gets +1A and +1D for each X-Men character your opponent has in the field.",3946    "* ability": "",3947    "** ability": "",3948    global: "Global: Pay  [1 Shield] . One X-Men character must block this turn (if able).",3949    dieLimit: 43950  },3951  {3952    id: 116,3953    dieId: 31,3954    setAbbr: "UX",3955    name: "She-Hulk",3956    subtitle: "Superhero",3957    cost: 6,3958    type: "Fist",3959    affiliation: "None",3960    rarity: "Rare",3961    ability: "Heroic: When fielded, She-Hulk may pair up with a different Heroic character until the start of your next turn. While She-Hulk is paired up, gain 2 life each time she and/or her partner is blocked.",3962    "* ability": "",3963    "** ability": "",3964    global: "",3965    dieLimit: 43966  },3967  {3968    id: 117,3969    dieId: 32,3970    setAbbr: "UX",3971    name: "Spider-Man",3972    subtitle: "Spider Sense",3973    cost: 4,3974    type: "Fist",3975    affiliation: "None",3976    rarity: "Rare",3977    ability: "Spider-Man takes half damage (rounded down) from  [Fist]  characters.",3978    "* ability": "",3979    "** ability": "",3980    global: "",3981    dieLimit: 43982  },3983  {3984    id: 118,3985    dieId: 33,3986    setAbbr: "UX",3987    name: "Storm",3988    subtitle: "Lady Liberator",3989    cost: 3,3990    type: "Mask",3991    affiliation: "X-Men",3992    rarity: "Rare",3993    ability: "Each turn, you may redirect the first 2 damage dealt to Storm by action dice to your opponent.",3994    "* ability": "",3995    "** ability": "",3996    global: "Global: Pay  [1 Mask] . Change the target of an action die that targets a character die to the character die of your choice.",3997    dieLimit: 43998  },3999  {4000    id: 119,4001    dieId: 34,4002    setAbbr: "UX",4003    name: "Toad",4004    subtitle: "Mortimer Toynbee",4005    cost: 4,4006    type: "Fist",4007    affiliation: "Villains",4008    rarity: "Rare",4009    ability: "While Toad is active, when your opponent ends his main step, choose one opposing character who must attack this turn.",4010    "* ability": "* That character takes 2 damage.",4011    "** ability": "",4012    global: "",4013    dieLimit: 44014  },4015  {4016    id: 120,4017    dieId: 35,4018    setAbbr: "UX",4019    name: "Vision",4020    subtitle: "Victor Shade",4021    cost: 5,4022    type: "Mask",4023    affiliation: "Avengers",4024    rarity: "Rare",4025    ability: "If an attacking  [Mask]  or  [Fist]  character deals damage to Vision, Vision deals an equal amount of damage to that attacker (in addition to his normal blocking damage).",4026    "* ability": "",4027    "** ability": "",4028    global: "",4029    dieLimit: 44030  },4031  {4032    id: 121,4033    dieId: 36,4034    setAbbr: "UX",4035    name: "X-23",4036    subtitle: "Killing Machine",4037    cost: 5,4038    type: "Fist",4039    affiliation: "None",4040    rarity: "Rare",4041    ability: "X-23 must attack if your opponent has a character of cost 5 or higher fielded. X-23 gets +1D when attacking.",4042    "* ability": "",4043    "** ability": "",4044    global: "",4045    dieLimit: 44046  },4047  {4048    id: 122,4049    dieId: 37,4050    setAbbr: "UX",4051    name: "Cerebro",4052    subtitle: "Mutant Hunter",4053    cost: 4,4054    type: "Mask",4055    affiliation: "None",4056    rarity: "Rare",4057    ability: "Place Cerebro on a die's card. It remains there until you or a card effect removes it (it is still in the field). At the start of your turn, you may move Cerebro to your used pile to search your bag for a die from that card and roll it.",4058    "* ability": "",4059    "** ability": "",4060    global: "",4061    dieLimit: 24062  },4063  {4064    id: 123,4065    dieId: 16,4066    setAbbr: "UX",4067    name: "Emma Frost",4068    subtitle: "Hellfire Club",4069    cost: 5,4070    type: "Shield",4071    affiliation: "Villains",4072    rarity: "Super-Rare",4073    ability: "Whenever Emma Frost is damaged by a  [Fist]  character, redirect the first 1 damage from her to your opponent.",4074    "* ability": "",4075    "** ability": "",4076    global: "",4077    dieLimit: 44078  },4079  {4080    id: 124,4081    dieId: 18,4082    setAbbr: "UX",4083    name: "Iron Man",4084    subtitle: "Industrialist",4085    cost: 6,4086    type: "Shield",4087    affiliation: "Avengers",4088    rarity: "Super-Rare",4089    ability: "Cancel all damage that Villains deal to Iron Man.",4090    "* ability": "* Double Iron Man's attack value while he is engaged with a Villain.",4091    "** ability": "",4092    global: "Global: Pay  [1 Shield] . Target character gains the Villain affiliation.",4093    dieLimit: 44094  },4095  {4096    id: 125,4097    dieId: 29,4098    setAbbr: "UX",4099    name: "Scarlet Witch",4100    subtitle: "Controls Probability",4101    cost: 4,4102    type: "Bolt",4103    affiliation: "X-Men",4104    rarity: "Super-Rare",4105    ability: "While Scarlet Witch is active, you may reroll any or all of your dice one additional time during the roll and reroll step.",4106    "* ability": "",4107    "** ability": "",4108    global: "",4109    dieLimit: 44110  },4111  {4112    id: 126,4113    dieId: 32,4114    setAbbr: "UX",4115    name: "Spider-Man",4116    subtitle: "Superhero",4117    cost: 5,4118    type: "Fist",4119    affiliation: "None",4120    rarity: "Super-Rare",4121    ability: "Heroic: When fielded, Spider-Man may pair up with a different Heroic character until the start of your next turn. While Spider-Man is paired up, when he and/or his partner are knocked out, each may deal its attack in damage to a  [Bolt]  or  [Mask]  character.",4122    "* ability": "",4123    "** ability": "",4124    global: "",4125    dieLimit: 44126  }4127];4128var dicemastersDieData = [4129  {4130    id: 1,4131    setAbbr: "AVX",4132    name: "Beast",4133    faces: ["[1 Mask]", "[2 Mask]", "[2 Mask]", "[0/1/2/*]", "[0/2/3/-]", "[1/2/4/-]"]4134  },4135  {4136    id: 2,4137    setAbbr: "AVX",4138    name: "Captain America",4139    faces: ["[1 Shield]", "[2 Shield]", "[2 Shield]", "[1/3/3/-]", "[2/5/4/-]", "[2/5/5/-]"]4140  },4141  {4142    id: 3,4143    setAbbr: "AVX",4144    name: "Hulk",4145    faces: ["[1 Fist]", "[2 Fist]", "[2 Fist]", "[1/6/5/*]", "[2/7/7/*]", "[3/8/8/-]"]4146  },4147  {4148    id: 4,4149    setAbbr: "AVX",4150    name: "Human Torch",4151    faces: ["[1 Bolt]", "[2 Bolt]", "[2 Bolt]", "[0/2/2/-]", "[1/3/3/-]", "[2/4/4/-]"]4152  },4153  {4154    id: 5,4155    setAbbr: "AVX",4156    name: "Iron Man",4157    faces: ["[1 Shield]", "[2 Shield]", "[2 Shield]", "[1/3/5/-]", "[1/4/6/-]", "[2/5/7/*]"]4158  },4159  {4160    id: 6,4161    setAbbr: "AVX",4162    name: "Spider-Man",4163    faces: ["[1 Fist]", "[2 Fist]", "[2 Fist]", "[0/3/3/-]", "[1/4/4/-]", "[1/5/5/-]"]4164  },4165  {4166    id: 7,4167    setAbbr: "AVX",4168    name: "Storm",4169    faces: ["[1 Mask]", "[2 Mask]", "[2 Mask]", "[0/2/1/-]", "[1/2/2/-]", "[1/3/2/-]"]4170  },4171  {4172    id: 8,4173    setAbbr: "AVX",4174    name: "Thor",4175    faces: ["[1 Bolt]", "[2 Bolt]", "[2 Bolt]", "[1/5/6/-]", "[2/6/8/-]", "[3/8/8/-]"]4176  },4177  {4178    id: 9,4179    setAbbr: "AVX",4180    name: "Basic Action Card",4181    faces: ["[2 Generic]", "[2 Generic]", "[2 Generic]", "[-/-/-/-]", "[-/-/-/*]", "[-/-/-/**]"]4182  },4183  {4184    id: 10,4185    setAbbr: "AVX",4186    name: "Angel",4187    faces: ["[1 Shield]", "[2 Shield]", "[2 Shield]", "[0/2/3/-]", "[1/3/3/-]", "[1/3/4/-]"]4188  },4189  {4190    id: 11,4191    setAbbr: "AVX",4192    name: "Black Widow",4193    faces: ["[1 Fist]", "[2 Fist]", "[2 Fist]", "[0/2/1/-]", "[0/2/2/-]", "[1/3/3/-]"]4194  },4195  {4196    id: 12,4197    setAbbr: "AVX",4198    name: "Colossus",4199    faces: ["[1 Fist]", "[2 Fist]", "[2 Fist]", "[1/4/4/-]", "[1/6/5/*]", "[2/8/7/*]"]4200  },4201  {4202    id: 13,4203    setAbbr: "AVX",4204    name: "Cyclops",4205    faces: ["[1 Bolt]", "[2 Bolt]", "[2 Bolt]", "[1/4/2/-]", "[1/5/3/-]", "[1/6/4/-]"]4206  },4207  {4208    id: 14,4209    setAbbr: "AVX",4210    name: "Deadpool",4211    faces: ["[1 Fist]", "[2 Fist]", "[2 Fist]", "[0/2/4/-]", "[0/2/5/-]", "[1/3/7/-]"]4212  },4213  {4214    id: 15,4215    setAbbr: "AVX",4216    name: "Doctor Doom",4217    faces: ["[1 Shield]", "[2 Shield]", "[2 Shield]", "[1/3/6/-]", "[2/4/7/-]", "[3/5/8/-]"]4218  },4219  {4220    id: 16,4221    setAbbr: "AVX",4222    name: "Doctor Octopus",4223    faces: ["[1 Shield]", "[2 Shield]", "[2 Shield]", "[1/4/4/-]", "[2/4/8/-]", "[3/8/8/-]"]4224  },4225  {4226    id: 17,4227    setAbbr: "AVX",4228    name: "Doctor Strange",4229    faces: ["[1 Mask]", "[2 Mask]", "[2 Mask]", "[1/4/6/-]", "[2/5/8/-]", "[3/8/9/-]"]4230  },4231  {4232    id: 18,4233    setAbbr: "AVX",4234    name: "Gambit",4235    faces: ["[1 Mask]", "[2 Mask]", "[2 Mask]", "[1/1/1/*]", "[1/2/2/*]", "[2/4/4/-]"]4236  },4237  {4238    id: 19,4239    setAbbr: "AVX",4240    name: "Ghost Rider",4241    faces: ["[1 Bolt]", "[2 Bolt]", "[2 Bolt]", "[1/2/3/-]", "[2/3/4/-]", "[3/5/5/-]"]4242  },4243  {4244    id: 20,4245    setAbbr: "AVX",4246    name: "Green Goblin",4247    faces: ["[1 Bolt]", "[2 Bolt]", "[2 Bolt]", "[0/2/2/-]", "[1/3/3/-]", "[1/5/5/-]"]4248  },4249  {4250    id: 21,4251    setAbbr: "AVX",4252    name: "Hawkeye",4253    faces: ["[1 Bolt]", "[2 Bolt]", "[2 Bolt]", "[0/3/1/-]", "[0/4/1/-]", "[1/4/2/-]"]4254  },4255  {4256    id: 22,4257    setAbbr: "AVX",4258    name: "Loki",4259    faces: ["[1 Mask]", "[2 Mask]", "[2 Mask]", "[1/1/5/-]", "[1/1/7/-]", "[2/2/8/-]"]4260  },4261  {4262    id: 23,4263    setAbbr: "AVX",4264    name: "Magneto",4265    faces: ["[1 Mask]", "[2 Mask]", "[2 Mask]", "[1/4/4/-]", "[2/5/7/-]", "[3/6/8/-]"]4266  },4267  {4268    id: 24,4269    setAbbr: "AVX",4270    name: "Mr. Fantastic",4271    faces: ["[1 Mask]", "[2 Mask]", "[2 Mask]", "[1/1/5/-]", "[2/2/6/-]", "[2/2/7/-]"]4272  },4273  {4274    id: 25,4275    setAbbr: "AVX",4276    name: "Mystique",4277    faces: ["[1 Mask]", "[2 Mask]", "[2 Mask]", "[1/1/1/-]", "[0/1/1/-]", "[2/1/1/*]"]4278  },4279  {4280    id: 26,4281    setAbbr: "AVX",4282    name: "Nick Fury",4283    faces: ["[1 Shield]", "[2 Shield]", "[2 Shield]", "[0/1/3/-]", "[1/2/4/-]", "[1/2/5/-]"]4284  },4285  {4286    id: 27,4287    setAbbr: "AVX",4288    name: "Nightcrawler",4289    faces: ["[1 Fist]", "[2 Fist]", "[2 Fist]", "[1/2/4/-]", "[1/3/6/-]", "[2/5/6/-]"]4290  },4291  {4292    id: 28,4293    setAbbr: "AVX",4294    name: "Nova",4295    faces: ["[1 Bolt]", "[2 Bolt]", "[2 Bolt]", "[1/4/4/-]", "[2/5/6/-]", "[2/7/7/-]"]4296  },4297  {4298    id: 29,4299    setAbbr: "AVX",4300    name: "Phoenix",4301    faces: ["[1 Bolt]", "[2 Bolt]", "[2 Bolt]", "[1/5/5/-]", "[2/7/7/-]", "[3/8/8/-]"]4302  },4303  {4304    id: 30,4305    setAbbr: "AVX",4306    name: "Professor X",4307    faces: ["[1 Mask]", "[2 Mask]", "[2 Mask]", "[1/1/5/-]", "[2/1/7/-]", "[3/1/9/-]"]4308  },4309  {4310    id: 31,4311    setAbbr: "AVX",4312    name: "Punisher",4313    faces: ["[1 Bolt]", "[2 Bolt]", "[2 Bolt]", "[1/4/1/-]", "[1/5/2/-]", "[2/6/3/-]"]4314  },4315  {4316    id: 32,4317    setAbbr: "AVX",4318    name: "Rogue",4319    faces: ["[1 Mask]", "[2 Mask]", "[2 Mask]", "[1/2/3/-]", "[2/4/5/-]", "[2/5/6/-]"]4320  },4321  {4322    id: 33,4323    setAbbr: "AVX",4324    name: "Silver Surfer",4325    faces: ["[1 Shield]", "[2 Shield]", "[2 Shield]", "[1/5/5/-]", "[2/7/5/-]", "[3/8/7/-]"]4326  },4327  {4328    id: 34,4329    setAbbr: "AVX",4330    name: "Thing",4331    faces: ["[1 Fist]", "[2 Fist]", "[2 Fist]", "[1/3/3/-]", "[2/5/5/-]", "[3/8/6/-]"]4332  },4333  {4334    id: 35,4335    setAbbr: "AVX",4336    name: "Venom",4337    faces: ["[1 Fist]", "[2 Fist]", "[2 Fist]", "[1/4/4/-]", "[1/5/5/*]", "[2/6/6/*]"]4338  },4339  {4340    id: 36,4341    setAbbr: "AVX",4342    name: "War Machine",4343    faces: ["[1 Shield]", "[2 Shield]", "[2 Shield]", "[1/3/4/-]", "[1/4/5/-]", "[2/5/6/-]"]4344  },4345  {4346    id: 37,4347    setAbbr: "AVX",4348    name: "Wolverine",4349    faces: ["[1 Fist]", "[2 Fist]", "[2 Fist]", "[1/5/2/*]", "[2/6/3/*]", "[3/8/4/-]"]4350  },4351  {4352    id: 38,4353    setAbbr: "AVX",4354    name: "Mjolnir",4355    faces: ["[1 Bolt]", "[2 Bolt]", "[2 Bolt]", "[-/-/-/-]", "[-/-/-/*]", "[-/-/-/**]"]4356  },4357  {4358    id: 39,4359    setAbbr: "AVX",4360    name: "Vibranium Shield",4361    faces: ["[1 Shield]", "[2 Shield]", "[2 Shield]", "[-/-/-/-]", "[-/-/-/*]", "[-/-/-/**]"]4362  },4363  {4364    id: 1,4365    setAbbr: "UX",4366    name: "Angel",4367    faces: ["[1 Shield]", "[2 Shield]", "[2 Shield]", "[0/2/2/-]", "[1/3/3/-]", "[1/3/4/-]"]4368  },4369  {4370    id: 2,4371    setAbbr: "UX",4372    name: "Cyclops",4373    faces: ["[1 Bolt]", "[2 Bolt]", "[2 Bolt]", "[1/4/2/-]", "[1/5/3/-]", "[1/6/4/-]"]4374  },4375  {4376    id: 3,4377    setAbbr: "UX",4378    name: "Iceman",4379    faces: ["[1 Bolt]", "[2 Bolt]", "[2 Bolt]", "[1/2/4/-]", "[1/3/6/-]", "[1/4/6/-]"]4380  },4381  {4382    id: 4,4383    setAbbr: "UX",4384    name: "Juggernaut",4385    faces: ["[1 Shield]", "[2 Shield]", "[2 Shield]", "[1/6/3/-]", "[2/7/4/-]", "[3/7/6/-]"]4386  },4387  {4388    id: 5,4389    setAbbr: "UX",4390    name: "Kitty Pryde",4391    faces: ["[1 Mask]", "[2 Mask]", "[2 Mask]", "[0/2/2/-]", "[0/3/2/-]", "[1/3/3/-]"]4392  },4393  {4394    id: 6,4395    setAbbr: "UX",4396    name: "Magneto",4397    faces: ["[1 Mask]", "[2 Mask]", "[2 Mask]", "[1/4/4/-]", "[2/5/7-]", "[3/6/8/-]"]4398  },4399  {4400    id: 7,4401    setAbbr: "UX",4402    name: "Quicksilver",4403    faces: ["[1 Bolt]", "[2 Bolt]", "[2 Bolt]", "[0/3/1/-]", "[1/3/2/-]", "[1/4/3/-]"]4404  },4405  {4406    id: 8,4407    setAbbr: "UX",4408    name: "Wolverine",4409    faces: ["[1 Fist]", "[2 Fist]", "[2 Fist]", "[1/5/2/*]", "[2/6/3/*]", "[3/8/4/-]"]4410  },4411  {4412    id: 9,4413    setAbbr: "UX",4414    name: "Basic Action Card",4415    faces: ["[2 Generic]", "[2 Generic]", "[2 Generic]", "[-/-/-/-]", "[-/-/-/*]", "[-/-/-/**]"]4416  },4417  {4418    id: 10,4419    setAbbr: "UX",4420    name: "Ant-Man",4421    faces: ["[1 Fist]", "[2 Fist]", "[2 Fist]", "[0/2/1/-]", "[0/3/1/-]", "[1/5/2/-]"]4422  },4423  {4424    id: 11,4425    setAbbr: "UX",4426    name: "Apocalypse",4427    faces: ["[1 Bolt]", "[2 Bolt]", "[2 Bolt]", "[1/3/5/-]", "[2/5/6/*]", "[2/6/7/*]"]4428  },4429  {4430    id: 12,4431    setAbbr: "UX",4432    name: "Bishop",4433    faces: ["[1 Shield]", "[2 Shield]", "[2 Shield]", "[1/2/5/-]", "[1/3/6/-]", "[2/5/6/-]"]4434  },4435  {4436    id: 13,4437    setAbbr: "UX",4438    name: "Black Panther",4439    faces: ["[1 Fist]", "[2 Fist]", "[2 Fist]", "[0/4/2/-]", "[1/5/2/-]", "[1/8/2/-]"]4440  },4441  {4442    id: 14,4443    setAbbr: "UX",4444    name: "Cable",4445    faces: ["[1 Bolt]", "[2 Bolt]", "[2 Bolt]", "[1/3/2/-]", "[2/3/3/-]", "[2/5/5/-]"]4446  },4447  {4448    id: 15,4449    setAbbr: "UX",4450    name: "Captain America",4451    faces: ["[1 Shield]", "[2 Shield]", "[2 Shield]", "[1/3/3/-]", "[2/5/4/-]", "[2/5/5/-]"]4452  },4453  {4454    id: 16,4455    setAbbr: "UX",4456    name: "Emma Frost",4457    faces: ["[1 Shield]", "[2 Shield]", "[2 Shield]", "[1/3/5/-]", "[1/4/6/-]", "[2/5/7/-]"]4458  },4459  {4460    id: 17,4461    setAbbr: "UX",4462    name: "Falcon",4463    faces: ["[1 Fist]", "[2 Fist]", "[2 Fist]", "[0/2/2/-]", "[1/3/3/-]", "[1/4/3/-]"]4464  },4465  {4466    id: 18,4467    setAbbr: "UX",4468    name: "Iron Man",4469    faces: ["[1 Shield]", "[2 Shield]", "[2 Shield]", "[1/3/5/-]", "[1/4/6/-]", "[2/5/7/*]"]4470  },4471  {4472    id: 19,4473    setAbbr: "UX",4474    name: "Magik",4475    faces: ["[1 Mask]", "[2 Mask]", "[2 Mask]", "[0/1/4-]", "[0/1/6/-]", "[1/2/7/-]"]4476  },4477  {4478    id: 20,4479    setAbbr: "UX",4480    name: "Marvel Girl",4481    faces: ["[1 Bolt]", "[2 Bolt]", "[2 Bolt]", "[1/3/3/-]", "[2/5/5/-]", "[3/6/6/-]"]4482  },4483  {4484    id: 21,4485    setAbbr: "UX",4486    name: "Mister Sinister",4487    faces: ["[1 Bolt]", "[2 Bolt]", "[2 Bolt]", "[1/4/1/-]", "[2/5/2/-]", "[2/6/3/-]"]4488  },4489  {4490    id: 22,4491    setAbbr: "UX",4492    name: "Mystique",4493    faces: ["[1 Mask]", "[2 Mask]", "[2 Mask]", "[1/1/1/-]", "[0/1/1/-]", "[2/1/1/-]"]4494  },4495  {4496    id: 23,4497    setAbbr: "UX",4498    name: "Namor",4499    faces: ["[1 Shield]", "[2 Shield]", "[2 Shield]", "[0/3/3/-]", "[1/4/4/-]", "[2/5/5/-]"]4500  },4501  {4502    id: 24,4503    setAbbr: "UX",4504    name: "Professor X",4505    faces: ["[1 Mask]", "[2 Mask]", "[2 Mask]", "[1/1/5/-]", "[2/1/7/-]", "[3/1/9/-]"]4506  },4507  {4508    id: 25,4509    setAbbr: "UX",4510    name: "Psylocke",4511    faces: ["[1 Mask]", "[2 Mask]", "[2 Mask]", "[0/1/2/-]", "[0/2/2/-]", "[1/3/3/-]"]4512  },4513  {4514    id: 26,4515    setAbbr: "UX",4516    name: "Pyro",4517    faces: ["[1 Bolt]", "[2 Bolt]", "[2 Bolt]", "[0/3/1/-]", "[1/4/2/-]", "[1/5/2/-]"]4518  },4519  {4520    id: 27,4521    setAbbr: "UX",4522    name: "Red Hulk",4523    faces: ["[1 Fist]", "[2 Fist]", "[2 Fist]", "[1/6/6/*]", "[2/7/7/*]", "[3/8/8/-]"]4524  },4525  {4526    id: 28,4527    setAbbr: "UX",4528    name: "Sabretooth",4529    faces: ["[1 Fist]", "[2 Fist]", "[2 Fist]", "[1/3/3/-]", "[1/4/4/-]", "[2/5/4/-]"]4530  },4531  {4532    id: 29,4533    setAbbr: "UX",4534    name: "Scarlet Witch",4535    faces: ["[1 Bolt]", "[2 Bolt]", "[2 Bolt]", "[0/1/3/-]", "[0/3/3/-]", "[1/5/3/-]"]4536  },4537  {4538    id: 30,4539    setAbbr: "UX",4540    name: "Sentinel",4541    faces: ["[1 Shield]", "[2 Shield]", "[2 Shield]", "[1/5/5/-]", "[2/6/6/-]", "[3/8/8/-]"]4542  },4543  {4544    id: 31,4545    setAbbr: "UX",4546    name: "She-Hulk",4547    faces: ["[1 Fist]", "[2 Fist]", "[2 Fist]", "[1/5/4/-]", "[2/6/6/-]", "[3/7/7/-]"]4548  },4549  {4550    id: 32,4551    setAbbr: "UX",4552    name: "Spider-Man",4553    faces: ["[1 Fist]", "[2 Fist]", "[2 Fist]", "[0/3/3/-]", "[1/4/4/-]", "[1/5/5/-]"]4554  },4555  {4556    id: 33,4557    setAbbr: "UX",4558    name: "Storm",4559    faces: ["[1 Mask]", "[2 Mask]", "[2 Mask]", "[0/2/1/-]", "[1/2/2/-]", "[1/3/2/-]"]4560  },4561  {4562    id: 34,4563    setAbbr: "UX",4564    name: "Toad",4565    faces: ["[1 Fist]", "[2 Fist]", "[2 Fist]", "[1/2/1/*]", "[2/3/2/*]", "[2/4/4/-]"]4566  },4567  {4568    id: 35,4569    setAbbr: "UX",4570    name: "Vision",4571    faces: ["[1 Mask]", "[2 Mask]", "[2 Mask]", "[0/1/4/-]", "[1/2/6/-]", "[2/4/7/-]"]4572  },4573  {4574    id: 36,4575    setAbbr: "UX",4576    name: "X-23",4577    faces: ["[1 Fist]", "[2 Fist]", "[2 Fist]", "[1/5/2/-]", "[2/6/2/-]", "[2/7/3/-]"]4578  },4579  {4580    id: 37,4581    setAbbr: "UX",4582    name: "Cerebro",4583    faces: ["[1 Mask]", "[2 Mask]", "[2 Mask]", "[-/-/-/-]", "[-/-/-/*]", "[-/-/-/**]"]4584  }...data.service.js
Source:data.service.js  
1angular.module('mdmApp')2    .service('dataSvc', function ($log, $localStorage) {3      $localStorage.$default({4        myCollection: { name: 'My Collection', version: 2, cards: [ ], dice: [ ], slug: 'My-Collection' }5      });6      var dataSvc = this;7      var myCollection = $localStorage.myCollection;8      this.filters = {9        sets: _.pluck(_.uniq(dicemastersCardData, 'setAbbr'), 'setAbbr'),10        affiliations: _.pluck(_.uniq(dicemastersCardData, 'affiliation'), 'affiliation'),11        costs: _.sortBy(_.pluck(_.uniq(dicemastersCardData, 'cost'), 'cost')),12        types: _.sortBy(_.pluck(_.uniq(dicemastersCardData, 'type'), 'type')),13        rarities: _.pluck(_.uniq(dicemastersCardData, 'rarity'), 'rarity'),14        dieLimits: _.sortBy(_.pluck(_.uniq(dicemastersCardData, 'dieLimit'), 'dieLimit'))15      };16      // These are the various filters the user may set which effect the filtering that filteredCards() does.17      this.cardOwned = false;18      this.cardUnowned = false;19      this.sets = [ ];20      this.affiliations = [ ];21      this.costs = [ ];22      this.types = [ ];23      this.rarities = [ ];24      this.dieLimits = [ ];25      // Expose the complete list of cards to consumers of the service.26      this.allCards = updateCardList(dicemastersCardData);27      // Expose the special team that represents my collection of cards and dice.28      this.myCollection = updateTeam(myCollection);29      // If we updated the collection, make sure that's the version we're keeping for the future.30      $localStorage.myCollection = this.myCollection;31      this.filterOn = function (filterArray, item) {32        return (filterArray.indexOf(item) > -1);33      };34      this.toggleFilter = function (filterArray, item) {35        var idx = filterArray.indexOf(item);36        // is currently selected37        if (idx > -1) {38          filterArray.splice(idx, 1);39        } else {40          filterArray.push(item);41        }42      };43      //////////////////////////////////////////////////////////////////////////////////////////////////////////////////44      //                                                                                       Manipulate Selected Cards45      //////////////////////////////////////////////////////////////////////////////////////////////////////////////////46      this.selectAll = function (cardList) {47        _.each(cardList, function (card) {48          card.selected = true;49        });50      };51      this.selectNone = function (cardList) {52        _.each(cardList, function (card) {53          card.selected = false;54        });55      };56      this.invertSelection = function (cardList) {57        _.each(cardList, function (card) {58          card.selected = !card.selected;59        })60      };61      this.addCardToSelected = function (cardList, team) {62        _.each(selectedCards(cardList), function (card) {63          dataSvc.addCardToTeam(card.id, card.setAbbr, team);64        });65      };66      this.removeCardFromSelected = function (cardList, team) {67        _.each(selectedCards(cardList), function (card) {68          dataSvc.removeCardFromTeam(card.id, card.setAbbr, team);69        });70      };71      this.addDieToSelected = function (cardList, team) {72        // Get a list of all the unique dice represented by the selected cards. Find them within the team (or add73        // records if needed) and increment the count.74        _.each(_.uniq(_.pluck(selectedCards(cardList), 'dieId')), function (dieId) {75          dataSvc.addDieToTeam(dieId, team);76        });77      };78      this.removeDieFromSelected = function (cardList, team) {79        // Get a list of all the unique dice represented by the selected cards. Find them within the team (or add80        // records if needed) and decrement the count.81        _.each(_.uniq(_.pluck(selectedCards(cardList), 'dieId')), function (dieId) {82          dataSvc.removeDieFromTeam(dieId, team);83        });84      };85      this.addCardToTeam = function (cardId, setAbbr, team) {86        // Find the team record for this card (or add one if needed) and increment its count.87        var teamCard = _.find(team.cards, { id: cardId, setAbbr: setAbbr });88        if (teamCard) {89          teamCard.count++;90        } else {91          team.cards.push({ id: cardId, setAbbr: setAbbr, count: 1 });92        }93      };94      this.removeCardFromTeam = function (cardId, setAbbr, team) {95        // Find the team record for this card (or add one if needed) and decrement its count.96        var teamCard = _.find(team.cards, { id: cardId, setAbbr: setAbbr });97        if (teamCard) {98          if (teamCard.count > 0) {99            teamCard.count--;100          }101        } else {102          team.cards.push({ id: cardId, setAbbr: setAbbr, count: 0 });103        }104      };105      this.addDieToTeam = function (dieId, team) {106        // Find the team record for this die (if any).107        var teamDie = _.find(team.dice, { id: dieId });108        // If we did find a record, increment it, otherwise add a new record and give it an initial value (already109        // incremented.110        if (teamDie) {111          teamDie.count++;112        } else {113          team.dice.push({ id: dieId, count: 1 });114        }115      };116      this.removeDieFromTeam = function (dieId, team) {117        // Find the team record for this die (if any).118        var teamDie = _.find(team.dice, { id: dieId });119        if (teamDie) {120          if (teamDie.count > 0) {121            teamDie.count--;122          }123        } else {124          team.dice.push({ id: dieId, count: 0 });125        }126      };127      function selectedCards(cardList) {128        return _.filter(cardList, { selected: true });129      }130      //////////////////////////////////////////////////////////////////////////////////////////////////////////////////131      //                                                                                   Get Card Data (Based On Team)132      //////////////////////////////////////////////////////////////////////////////////////////////////////////////////133      this.numCards = function(cardId, setAbbr, team) {134        var teamCardRecord = _.find(team.cards, { id: cardId, setAbbr: setAbbr });135        if (teamCardRecord) {136          return teamCardRecord.count;137        } else {138          return 0;139        }140      };141      this.numDice = function (cardId, setAbbr, team) {142        var teamCardRecord = _.find(dataSvc.allCards, { id: cardId, setAbbr: setAbbr });143        if (teamCardRecord) {144          var teamDiceRecord = _.find(team.dice, { id: teamCardRecord.dieId });145          if (teamDiceRecord) {146            return teamDiceRecord.count;147          } else {148            return 0;149          }150        } else {151          return 0;152        }153      };154      this.filteredCards = function (cardList, team) {155        var setsList = _.compact(this.sets);156        var affiliationsList = _.compact(this.affiliations);157        var costsList = _.compact(_.map(this.costs, function (cost) { return parseInt(cost); }));158        var typesList = _.compact(this.types);159        var raritiesList = _.compact(this.rarities);160        var dieLimitsList = _.compact(_.map(this.dieLimits, function (dieLimit) { return parseInt(dieLimit); }));161        return _.filter(cardList, function (card) {162          if (setsList.length > 0) {163            if (!_.contains(setsList, card.setAbbr)) {164              return false;165            }166          }167          // If an affiliation is selected, see if the affiliate for this card matches any of the selected affiliates.168          if (affiliationsList.length > 0) {169            if (!_.contains(affiliationsList, card.affiliation)) {170              return false;171            }172          }173          // If a cost is selected, see if the cost for this card matches any of the selected costs.174          if (costsList.length > 0) {175            if (!_.contains(costsList, card.cost)) {176              return false;177            }178          }179          // If a type is selected, see if the type for this card matches any of the selected types.180          if (typesList.length > 0) {181            if (!_.contains(typesList, card.type)) {182              return false;183            }184          }185          // If a rarity is selected, see if the rarity for this card matches any of the selected rarities.186          if (raritiesList.length > 0) {187            if (!_.contains(raritiesList, card.rarity)) {188              return false;189            }190          }191          // If a dieLimit is selected, see if the dieLimit for this card matches any of the selected dieLimits.192          if (dieLimitsList.length > 0) {193            if (!_.contains(dieLimitsList, card.dieLimit)) {194              return false;195            }196          }197          // If they want both owned and unowned cards, that's all cards. We don't even have to do a test. If they don't198          // care about either, again, that's all cards.199          if ((this.cardOwned || this.cardUnowned) && !(this.cardOwned && this.cardUnowned)) {200            // Not having any cards when they want owned ones fails the card in question (at least for this team or201            // collection.202            if (this.cardOwned && this.numCards(card.id, card.setAbbr, team) === 0) {203              return false;204            }205            // Also, wanting only unowned cards and finding they have one or more excludes this card.206            if (this.cardUnowned && this.numCards(card.id, card.setAbbr, team) > 0) {207              return false;208            }209          }210          return true;211        }, this);212      };213      this.findCardBySlug = function (slug) {214        return (_.find(this.allCards, { slug: slug }));215      };216      this.findDieById = function (dieId, setAbbr) {217        return (_.find(dicemastersDieData, { id: dieId, setAbbr: setAbbr }));218      };219      this.setName = function (setAbbreviation) {220        switch (setAbbreviation) {221          case 'AVX':222            return 'Avengers vs. X-Men';223          case 'UX':224            return 'Uncanny X-Men';225          default:226            return 'Unknown';227        }228      };229      //////////////////////////////////////////////////////////////////////////////////////////////////////////////////230      //                                                                                                         Helpers231      //////////////////////////////////////////////////////////////////////////////////////////////////////////////////232      /**233       * Make sure that the user's collection has a count of cards and dice owned for every card available. Since new234       * cards/dice will be released over time, this collection should update automatically when new ones become235       * available.236       *237       * @param team238       */239      function updateTeam(team) {240        if (team.version === undefined) {241          // Upgrade the collection from version 1 to version 2.242          var newTeam = { name: 'My Collection', version: 2, cards: [ ], dice: [ ], slug: 'My-Collection' };243          // Add a record to the dice array for every card for which they said they own dice.244          var cardsWithDice = _.filter(team, function (card) {245            return (card.dice > 0);246          });247          var dieList = _.groupBy(cardsWithDice, function (card) {248            return _.find(dataSvc.allCards, { id: card.id, setAbbr: card.setAbbr }).dieId;249          });250          newTeam.dice = _.map(dieList, function (cardList, dieId) {251            return ({ id: parseInt(dieId, 10), count: _.max(_.pluck(cardList, 'dice')) });252          });253          // Add a record to the cards array for every card they said they owned before.254          _.each(team, function (card) {255            if (card.cards > 0) {256              newTeam.cards.push({ id : card.id, count: card.cards });257            }258          });259          return newTeam;260        }261        return team;262      }263      function updateCardList(cardList) {264        _.each(cardList, function (card) {265          // Generate a URL friendly slug and add it to the card.266          card.slug = generateSlug(card);267        }, this);268        return cardList;269      }270      function generateSlug(card) {271        var sluggedName = card.name.replace(/\s/g, '-').replace(/[^A-Za-z0-9\-]/g, '');272        var sluggedSubtitle = card.subtitle.replace(/\s/g, '-').replace(/[^A-Za-z0-9\-]/g, '');273        return (sluggedName + '-' + sluggedSubtitle);274      }275      // Expose the function externally for testing.276      this._updateTeam = updateTeam;...gameView.js
Source:gameView.js  
1export default class GameView {2    constructor(controller) {3        this.controller = controller;4        this.diceContainer = document.getElementById('dice-container');5        this.textContainer = document.getElementById('text-container');6        this.rollButton = document.getElementById('roll-button');7    }8    renderForHumanDraw() {9        this.firstDie = document.createElement('die-block');10        // this.firstDie.onRoll = (value) => this.controller.setPlayerInitialNumber(value);11        this.diceContainer.appendChild(this.firstDie);12        this.rollButton.onclick = () => {13            this.firstDie.roll();14            setTimeout(() => this.controller.setPlayerInitialNumber(),  1500);15        }16        this.rollButton.innerText = 'Roll to draw';17    }18    renderForAiDraw() {19        // this.firstDie.onRoll = (value) => this.controller.setAiInitialNumber(value);20        this.rollButton.disabled = true;21        this.firstDie.roll();22        setTimeout(() => {23            this.controller.setAiInitialNumber(this.firstDie.value);24        },  1500);25    }26    prepareForGame() {27        this.firstDie.onclick = () => this.onDieClicked(0);28        this.secondDie = document.createElement('die-block');29        this.secondDie.onclick = () => this.onDieClicked(1);30        this.thirdDie = document.createElement('die-block');31        this.thirdDie.onclick = () => this.onDieClicked(2);32        this.dice = [this.firstDie, this.secondDie, this.thirdDie];33        this.diceContainer.append(this.secondDie, this.thirdDie);34        this.textContainer.innerHTML = `<p>Point number: <span id="point-number"></span></p>35        <p>Human's score: <span id="human-score"></p>36        <p>AI's score: <span id="ai-score"></p>37        <p>Current player: <span id="current-player"></span></p>`;38        this.humanScore = document.getElementById('human-score');39        this.aiScore = document.getElementById('ai-score');40        this.currentPlayer = document.getElementById('current-player');41        this.pointNumber = document.getElementById('point-number');42        this.heldDice = [false, false, false]; // dice held by player43        this.rollButton.onclick = () => {44            this.rollDice(this.heldDice.map(value => !value));45        };46        this.rollButton.innerText = 'Roll';47    }48    updateState() {49        const $ = this.controller;50        this.rollButton.disabled = $.currentPlayer === $.aiPlayer || $.winner;51        this.humanScore.innerText = $.humanPlayer.score;52        this.aiScore.innerText = $.aiPlayer.score;53        this.currentPlayer.innerText = $.currentPlayer.name;54        this.pointNumber.innerText = $.pointNumber;55        if ($.winner) {56            const winnerText = document.createElement('p');57            winnerText.innerText = `WINNER: ${$.winner.name}`;58            this.textContainer.appendChild(winnerText);59        }60    }61    onDiceRolled() {62        const die1 = this.firstDie.value;63        const die2 = this.secondDie.value;64        const die3 = this.thirdDie.value;65        this.controller.makeMove(die1, die2, die3);66    }67    rollAllDice() {68        this.thirdDie.roll();69        this.secondDie.roll();70        this.firstDie.roll();71        setTimeout(() => this.onDiceRolled(), 2000);72    }73    rollDice(move) {74        const dice = [this.firstDie, this.secondDie, this.thirdDie];75        for (let i = 0; i < 3; i++) {76            if (move[i]) {77                dice[i].makeBigger();78                dice[i].roll();79            } else {80                dice[i].makeSmaller();81            }82        }83        setTimeout(() => this.onDiceRolled(), 2000);84    }85    getDiceValues() {86        const die1 = this.firstDie.value;87        const die2 = this.secondDie.value;88        const die3 = this.thirdDie.value;89        return [die1, die2, die3];90    }91    resetDieHold() {92        for (const die of this.dice) {93            die.makeBigger();94        }95        this.heldDice = [false, false, false];96    }97    onDieClicked(index) {98        if (this.controller.currentPlayer === this.controller.humanPlayer99            && this.controller.humanPlayer.consecutiveMoves > 0) {100            this.heldDice[index] = !this.heldDice[index];101            if (this.heldDice[index] === true) {102                this.dice[index].makeSmaller();103            } else this.dice[index].makeBigger();104        }105    }...resource.js
Source:resource.js  
1const { YZEmbed } = require('../utils/embeds');2const YZRoll = require('../yearzero/YZRoll');3const { emojifyRoll } = require('../Sebedius');4const { __ } = require('../lang/locales');5const ARTIFACT_DIE_REGEX = /^d(6|8|10|12)$/i;6module.exports = {7	name: 'resource',8	aliases: ['res', 'ressource', 'resources', 'ressources'],9	category: 'fbl',10	description: 'cresource-description',11	guildOnly: false,12	args: true,13	usage: '<d6|d8|d10|d12> [name] [-lang <language_code>]',14	async run(args, ctx) {15		// Parses arguments.16		const argv = require('yargs-parser')(args, {17			string: ['lang'],18			alias: {19				lang: ['lng', 'language'],20			},21			default: {22				lang: null,23			},24			configuration: ctx.bot.config.yargs,25		});26		const lang = await ctx.bot.getValidLanguageCode(argv.lang, ctx);27		const resourceDieArgument = argv._.shift();28		if (ARTIFACT_DIE_REGEX.test(resourceDieArgument)) {29			const [, size] = resourceDieArgument.match(ARTIFACT_DIE_REGEX);30			const resTitle = argv._.length ? argv._.join(' ') : __('resource', lang);31			const roll = new YZRoll('fbl', ctx.author, resTitle, lang)32				.addDice('arto', 1, size);33			sendMessageForResourceDie(roll, ctx);34		}35		else {36			ctx.reply(`â ï¸ ${__('cresource-invalid-dice', lang)}.`);37		}38	},39};40/**41 * Sends a Message for the corresponding Resource Die42 * @param {YZRoll} roll The Resource Die roll43 * @param {*} ctx The Message's context44 */45function sendMessageForResourceDie(roll, ctx) {46	if (roll.size > ctx.bot.config.commands.roll.max) return ctx.reply(__('cresource-too-many-dice', roll.lang));47	const die = roll.dice[0];48	const desc = `**\`D${die.range}\`** ${__('resource-die', roll.lang)}: **${die.result}**`;49	const embed = new YZEmbed(roll.name, desc, ctx, true);50	const text = emojifyRoll(roll, ctx.bot.config.commands.roll.options[roll.game]);51	if (die.result <= 2) {52		const resSizes = [0, 6, 8, 10, 12];53		const newSize = resSizes[resSizes.indexOf(die.range) - 1];54		if (newSize > 0) {55			embed.addField(56				`⬠${__('cresource-decreased-title', roll.lang)}`,57				`${__('cresource-decreased-text', roll.lang)} **\`D${newSize}\`**.`,58			);59		}60		else {61			embed.addField(62				`ð« ${__('cresource-exhausted-title', roll.lang)}`,63				__('cresource-exhausted-text', roll.lang),64			);65		}66	}67	else {68		embed.addField(69			`â
 ${__('cresource-unchanged-title', roll.lang)}`,70			__('cresource-unchanged-text', roll.lang),71		);72	}73	ctx.send(text, embed);...App.js
Source:App.js  
1import React, { useState, useEffect } from 'react';2import './App.css';3import Die from './components/Die';4import { nanoid } from 'nanoid'5import UIfx from 'uifx'6import Roll from './assets/dice06.wav'7function App() {8  const [dice, setDice] = useState(allDiceNums())9  const [tenzies, setTenzies] = useState(false)10  const rollSound = new UIfx(Roll)11  // Checks if all the dice are Equal and Held12  useEffect(() => {13    const allHeld = dice.every(die => die.isHeld)14    const allEqual = dice.every((die, index, arr)=> {15     return index === 0 || die.value === arr[index - 1].value? true :16     false;17    })18    if (allHeld && allEqual) setTenzies(prevTenzies => !prevTenzies) 19  },[dice])20  function generateDice() {21        return {22        value: Math.ceil(Math.random() * 6), 23        isHeld: false,24        dieId: nanoid()25      }26  }27  // gets an array of random dice28  function allDiceNums() {29    let allDice = []30    for (let i = 0; i < 10; i++) {31      allDice.push(generateDice())32    }33    return allDice34  }35  function holdDice(id) {36    setDice(prevDice => prevDice.map(die => {37      return die.dieId === id? {...die, isHeld: !die.isHeld} :38      die39    }))40  }41  // maps over the dice array creating a Die component for each index 42  // const diceElements = dice.map((die) => <Die key={die.dieId} value={die.value} held={die.isHeld}/>)43  const diceElements = dice.map((die) => 44  <Die 45  key={die.dieId} 46  value={die} 47  holdDice={() => holdDice(die.dieId)}48  />)49  // triggers new dice values if not held or game complete50  function handleClick() {51    if (tenzies) {52      setDice(allDiceNums)53      setTenzies(prevTenzies => !prevTenzies)54    } else {55    rollSound.play()  56    setDice(prevDice => prevDice.map(dieItem => {57       return dieItem.isHeld? dieItem:58      generateDice()59    }))60    }61  }62  return (63    <main className="App">64      <h1 className='title'>Tenzies</h1>65      <p className="instructions">Roll until all dice are the same</p>66      <p className="instructions">Click each die to freeze it at its current value between rolls</p>67      <div className="dice-container">68        {diceElements}69      </div>70      <button onClick={handleClick} >{tenzies? "New Game" : "Roll"}</button>71      {tenzies && <h1 className='win'>Winner!</h1>}72    </main>73  );74}...Roll.js
Source:Roll.js  
1import React, { Component } from 'react';2import './Roll.css'; // Tell webpack that Button.js uses these styles3import { playToString } from './utils';4class Roll extends Component {5  render() {6    console.log(`Rolls Left in Roll: this.props = ${this.props.rollsLeft}`)7    this.die = ["\u2680","\u2681","\u2682","\u2683","\u2684","\u2685"]8      // You can use them as regular CSS styles9      //make the following dice a react element10    this.rl = this.props.rollsLeft11    // make it clearer that the turn is over12    if(this.rl === 3){13      this.rl = "\nTurn Over"14    }15      return <>16            <div className="roll">17                <div className="dieTitle"><b>Roll</b></div>18                <div className="diePlay"><i>{playToString(this.props.currentPlay)}</i></div>19                <div className="rollsRemaining">Left: {this.rl}</div>20                <div class={`die ${this.props.keepmask[0] == false ? "reroll" : ""}`}>21                  {this.die[this.props.currentRoll[0]-1]}22                </div>23                <div class={`die ${this.props.keepmask[1] == false ? "reroll" : ""}`}>24                  {this.die[this.props.currentRoll[1]-1]}25                </div>26                <div class={`die ${this.props.keepmask[2] == false ? "reroll" : ""}`}>27                  {this.die[this.props.currentRoll[2]-1]}28                </div>29                <div class={`die ${this.props.keepmask[3] == false ? "reroll" : ""}`}>30                  {this.die[this.props.currentRoll[3]-1]}31                </div>32                <div class={`die ${this.props.keepmask[4] == false ? "reroll" : ""}`}>33                  {this.die[this.props.currentRoll[4]-1]}34                </div>35            </div>36      </>;37  }38}...de.js
Source:de.js  
1// Validation errors messages for Parsley2import Parsley from '../parsley';3Parsley.addMessages('de', {4  defaultMessage: "Die Eingabe scheint nicht korrekt zu sein.",5  type: {6    email:        "Die Eingabe muss eine gültige E-Mail-Adresse sein.",7    url:          "Die Eingabe muss eine gültige URL sein.",8    number:       "Die Eingabe muss eine Zahl sein.",9    integer:      "Die Eingabe muss eine Zahl sein.",10    digits:       "Die Eingabe darf nur Ziffern enthalten.",11    alphanum:     "Die Eingabe muss alphanumerisch sein."12  },13  notblank:       "Die Eingabe darf nicht leer sein.",14  required:       "Dies ist ein Pflichtfeld.",15  pattern:        "Die Eingabe scheint ungültig zu sein.",16  min:            "Die Eingabe muss gröÃer oder gleich %s sein.",17  max:            "Die Eingabe muss kleiner oder gleich %s sein.",18  range:          "Die Eingabe muss zwischen %s und %s liegen.",19  minlength:      "Die Eingabe ist zu kurz. Es müssen mindestens %s Zeichen eingegeben werden.",20  maxlength:      "Die Eingabe ist zu lang. Es dürfen höchstens %s Zeichen eingegeben werden.",21  length:         "Die Länge der Eingabe ist ungültig. Es müssen zwischen %s und %s Zeichen eingegeben werden.",22  mincheck:       "Wählen Sie mindestens %s Angaben aus.",23  maxcheck:       "Wählen Sie maximal %s Angaben aus.",24  check:          "Wählen Sie zwischen %s und %s Angaben.",25  equalto:        "Dieses Feld muss dem anderen entsprechen."26});...Goal.js
Source:Goal.js  
1import React, { Component } from 'react';2import './Roll.css'; // Tell webpack that Button.js uses these styles3import { playToString } from './utils';4class Goal extends Component {5  render() {6    console.log(`Goal: this.props = ${JSON.stringify(this.props)}`)7    this.die = ["\u2680","\u2681","\u2682","\u2683","\u2684","\u2685"]8      return <>9            <div className={`roll ${this.props.rollsLeft == 3 ? "final" : ""}`}>10                <div className={`dieTitle ${this.props.rollsLeft == 3 ? "final" : ""}`}><b>{this.props.rollsLeft == 3 ? "Final" : "Goal"}</b></div>11                <div className="diePlay"><i>{playToString(this.props.goalPlay)}</i></div>12                <div className="dieTitle"><br/></div>13                <div className="die">{this.die[this.props.goalRoll[0]-1]}</div>14                <div className="die">{this.die[this.props.goalRoll[1]-1]}</div>15                <div className="die">{this.die[this.props.goalRoll[2]-1]}</div>16                <div className="die">{this.die[this.props.goalRoll[3]-1]}</div>17                <div className="die">{this.die[this.props.goalRoll[4]-1]}</div>18            </div>19      </>;20  }21}...Using AI Code Generation
1const { chromium } = require('playwright');2(async () => {3  const browser = await chromium.launch({ headless: false });4  const context = await browser.newContext();5  const page = await context.newPage();6  await page.die();7  await browser.close();8})();Using AI Code Generation
1const { chromium } = require('playwright');2(async () => {3  const browser = await chromium.launch();4  const page = await browser.newPage();5  await page.die();6  await browser.close();7})();Using AI Code Generation
1const { chromium } = require('playwright');2(async () => {3  const browser = await chromium.launch();4  const context = await browser.newContext();5  const page = await context.newPage();6  await page.die();7  await browser.close();8})();9const { chromium } = require('playwright');10(async () => {11  const browser = await chromium.launch();12  const context = await browser.newContext();13  const page = await context.newPage();14  await page.die();15  await browser.close();16})();Using AI Code Generation
1const { chromium } = require('playwright');2(async () => {3  const browser = await chromium.launch({ headless: false });4  const page = await browser.newPage();5  await page.screenshot({ path: 'google.png' });6  await page.die();7  await browser.close();8})();9    at CDPSession.send (/Users/username/Projects/playwright-test/node_modules/playwright/lib/cjs/pw10    at async Page.die (/Users/username/Projects/playwright-test/node_modules/playwright/lib/cjs/pw11    at async Object.<anonymous> (/Users/username/Projects/playwright-test/test.js:10:5)12const { chromium } = require('playwright');13(async () => {14  const browser = await chromium.launch({ headless: false });15  const page = await browser.newPage();16  await page.screenshot({ path: 'google.png' });17  await page.die();18  await browser.close();19  process.exit(0);20})();21    at CDPSession.send (/Users/username/Projects/playwright-test/node_modules/playwright/lib/cjs/pw22    at async Page.die (/Users/username/Projects/playwright-testUsing AI Code Generation
1const { chromium } = require('playwright');2const { die } = require('playwright/lib/server/browserType');3(async () => {4  const browser = await chromium.launch();5  const context = await browser.newContext();6  const page = await context.newPage();7  await die();8})();9const { chromium } = require('playwright');10const { die } = require('playwright/lib/server/browserType');11(async () => {12  const browser = await chromium.launch();13  const context = await browser.newContext();14  const page = await context.newPage();15  await die();16})();17const { chromium } = require('playwright');18const { die } = require('playwright/lib/server/browserType');19(async () => {20  const browser = await chromium.launch();21  const context = await browser.newContext();22  const page = await context.newPage();23  await die();24})();25const { chromium } = require('playwright');26const { die } = require('playwright/lib/server/browserType');27(async () => {28  const browser = await chromium.launch();29  const context = await browser.newContext();30  const page = await context.newPage();31  await die();32})();33const { chromium } = require('playwright');34const { die } = require('playwright/lib/server/browserType');35(async () => {36  const browser = await chromium.launch();37  const context = await browser.newContext();38  const page = await context.newPage();39  await die();40})();41const { chromium } = require('playwright');42const { die } = require('playwright/lib/server/browserType');43(async () => {44  const browser = await chromium.launch();45  const context = await browser.newContext();46  const page = await context.newPage();47  await die();48})();49const { chromium } =Using AI Code Generation
1const playwright = require('playwright');2const path = require('path');3const { chromium } = playwright;4(async () => {5  const browser = await chromium.launch({ headless: false });6  const context = await browser.newContext();7  const page = await context.newPage();8  await page.die();9  await browser.close();10})();11    at Page._onClose (D:\Playwright\Playwright\playwright\lib\server\page.js:214:19)12    at CDPSession.Page._client.on (D:\Playwright\Playwright\playwright\lib\server\page.js:80:61)13    at CDPSession.emit (events.js:315:20)14    at CDPSession._onMessage (D:\Playwright\Playwright\playwright\lib\connection.js:200:12)15    at WebSocketTransport._ws.addEventListener (D:\Playwright\Playwright\playwright\lib\connection.js:320:49)16    at WebSocket.onMessage (D:\Playwright\Playwright\playwright\lib\websocketTransport.js:14:14)17    at WebSocket.emit (events.js:315:20)18    at Receiver.receiverOnMessage (D:\Playwright\Playwright\playwright\node_modules\ws\lib\websocket.js:795:20)19    at Receiver.emit (events.js:315:20)20    at Receiver.dataMessage (D:\Playwright\Playwright\playwright\node_modules\ws\lib\receiver.js:422:14)Using AI Code Generation
1const { _electron: electron } = require('playwright');2const { app } = electron;3app.die();4const { _electron: electron } = require('playwright');5const { app } = electron;6app.die();7const { _electron: electron } = require('playwright');8const { app } = electron;9app.die();10const { _electron: electron } = require('playwright');11const { app } = electron;12app.die();13const { _electron: electron } = require('playwright');14const { app } = electron;15app.die();16const { _electron: electron } = require('playwright');17const { app } = electron;18app.die();19const { _electron: electron } = require('playwright');20const { app } = electron;21app.die();22const { _electron: electron } = require('playwright');23const { app } = electron;24app.die();25const { _electron: electron } = require('playwright');26const { app } = electron;27app.die();28const { _electron: electron } = require('playwright');29const { app } = electron;30app.die();31const { _electron: electron } = require('playwright');32const { app } = electron;33app.die();34const { _electron: electron } = require('playwright');35const { app } = electron;36app.die();Using AI Code Generation
1const { die } = require('playwright-core/lib/server/browserServer');2die(new Error('error message'));3const { die } = require('playwright-core/lib/server/browserServer');4die(new Error('error message'));5const { die } = require('playwright-core/lib/server/browserServer');6die(new Error('error message'));7const { die } = require('playwright-core/lib/server/browserServer');8die(new Error('error message'));9const { die } = require('playwright-core/lib/server/browserServer');10die(new Error('error message'));11const { die } = require('playwright-core/lib/server/browserServer');12die(new Error('error message'));13const { die } = require('playwright-core/lib/server/browserServer');14die(new Error('error message'));15const { die } = require('playwright-core/lib/server/browserServer');16die(new Error('error message'));17const { die } = require('playwright-core/lib/server/browserServer');18die(new Error('error message'));19const { die } = require('playwright-core/lib/server/browserServer');20die(new Error('error message'));21const { die } = require('playwright-core/lib/server/browserServer');22die(new Error('error message'));23const { die } = require('playwright-core/lib/server/browserServer');24die(new Error('error message'));25const { die } = require('playwright-core/lib/server/browserServer');26die(new Error('error message'));27const { die } = require('playwright-core/lib/server/browserServer');28die(new Error('error message'));29const { die } = require('playwright-core/lib/server/browserServer');30die(new Error('error messageUsing AI Code Generation
1const { InternalAPI } = require('playwright');2InternalAPI.die('My custom error message');3const { test } = require('playwright');4test.die('My custom error message');5const { TestRunner } = require('playwright');6const runner = new TestRunner();7runner.die('My custom error message');8const { PlaywrightTest } = require('playwright');9const runner = new PlaywrightTest();10runner.die('My custom error message');11const { PlaywrightTestRunner } = require('playwright');12const runner = new PlaywrightTestRunner();13runner.die('My custom error message');14const { PlaywrightTestConfig } = require('playwright');15const runner = new PlaywrightTestConfig();16runner.die('My custom error message');17const { PlaywrightTestFixtures } = require('playwright');18const runner = new PlaywrightTestFixtures();19runner.die('My custom error message');20const { PlaywrightTestWorker } = require('playwright');21const runner = new PlaywrightTestWorker();22runner.die('My custom error message');23const { PlaywrightTestReporter } = require('playwright');24const runner = new PlaywrightTestReporter();25runner.die('My custom error message');26const { PlaywrightTestReporterBase } = require('playwright');27const runner = new PlaywrightTestReporterBase();28runner.die('My custom error message');29const { PlaywrightTestReporterEvent } = require('playwright');30const runner = new PlaywrightTestReporterEvent();31runner.die('My custom error message');32const { PlaywrightTestReporterTest } = require('playwright');33const runner = new PlaywrightTestReporterTest();34runner.die('My custom error message');LambdaTest’s Playwright tutorial will give you a broader idea about the Playwright automation framework, its unique features, and use cases with examples to exceed your understanding of Playwright testing. This tutorial will give A to Z guidance, from installing the Playwright framework to some best practices and advanced concepts.
Get 100 minutes of automation test minutes FREE!!
