diablo2-web/src/loot.ts

2138 lines
231 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/**
* Diablo II Drop Simulator & Exact Probability Calculator (Issue #110).
*
* Provides:
* - Real production Monte Carlo simulation using rollTreasureClass, D2Rng, and ItemRatio.
* - Non-blocking chunked simulation loop with live progress bar and cancellation.
* - Exact analytic drop probability table recursively expanding the TC tree.
* - Player count scaling for NoDrop (computeScaledNoDrop).
* - Compound probability 1 - (1 - p)^picks for multiple picks.
* - Reverse lookup search indexing all eligible items to their source TCs.
*/
import { D2Rng } from './game/d2-rng.ts'
import {
rollTreasureClass,
computeEffectivePlayers,
computeScaledNoDrop,
type DroppedItemEntry,
} from './game/treasure-engine.ts'
import {
parseTreasureClassTable,
type TreasureClassTable,
type TreasureClassNode,
} from './game/treasure-class.ts'
import { parseTable } from './game/acts.ts'
import {
mergeAutoTreasureClasses,
autoTcToTreasureClassNode,
type AutoTcNode,
} from './game/auto-tc.ts'
import {
createItemRatioTable,
rollItemQuality,
type ItemRatioTable,
type ItemRatioRow,
type ItemQualityTier,
} from './game/item-ratio.ts'
// --- Canonical 1.13c Data Embedded ------------------------------------------
export const CANONICAL_TC_EX_TXT: string = "Treasure Class\tgroup\tlevel\tPicks\tUnique\tSet\tRare\tMagic\tNoDrop\tItem1\tProb1\tItem2\tProb2\tItem3\tProb3\tItem4\tProb4\tItem5\tProb5\tItem6\tProb6\tItem7\tProb7\tItem8\tProb8\tItem9\tProb9\tItem10\tProb10\tSumItems\tTotalProb\tDropChance\tTerm\r\nGold\t\t\t1\t\t\t\t\t\tgld\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nJewelry A\t\t\t1\t\t\t\t\t\trin\t8\tamu\t4\tjew\t2\tcm3\t2\tcm2\t2\tcm1\t2\t\t\t\t\t\t\t\t\t\t\t\t0\r\nJewelry B\t\t\t1\t\t\t\t\t\trin\t8\tamu\t4\tjew\t2\tcm3\t2\tcm2\t2\tcm1\t2\t\t\t\t\t\t\t\t\t\t\t\t0\r\nJewelry C\t\t\t1\t\t\t\t\t\trin\t8\tamu\t4\tjew\t2\tcm3\t2\tcm2\t2\tcm1\t2\t\t\t\t\t\t\t\t\t\t\t\t0\r\nChipped Gem\t\t\t1\t\t\t\t\t\tgcv\t3\tgcy\t3\tgcb\t3\tgcg\t3\tgcr\t3\tgcw\t3\tskc\t2\t\t\t\t\t\t\t\t\t\t0\r\nFlawed Gem\t\t\t1\t\t\t\t\t\tgfv\t3\tgfy\t3\tgfb\t3\tgfg\t3\tgfr\t3\tgfw\t3\tskf\t2\t\t\t\t\t\t\t\t\t\t0\r\nNormal Gem\t\t\t1\t\t\t\t\t\tgsv\t3\tgsy\t3\tgsb\t3\tgsg\t3\tgsr\t3\tgsw\t3\tsku\t2\t\t\t\t\t\t\t\t\t\t0\r\nFlawless Gem\t\t\t1\t\t\t\t\t\tgzv\t3\tgly\t3\tglb\t3\tglg\t3\tglr\t3\tglw\t3\tskl\t2\t\t\t\t\t\t\t\t\t\t0\r\nPerfect Gem\t\t\t1\t\t\t\t\t\tgpv\t3\tgpy\t3\tgpb\t3\tgpg\t3\tgpr\t3\tgpw\t3\tskz\t2\t\t\t\t\t\t\t\t\t\t0\r\nAmmo\t\t\t1\t\t\t\t\t\taqv\t1\tcqv\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nMisc 0\t\t\t1\t\t\t\t\t\tkey\t3\ttsc\t3\tisc\t3\topl\t2\tgpl\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nMisc 1\t\t\t1\t\t\t\t\t\tkey\t3\ttsc\t3\tisc\t3\topm\t2\tgpm\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nMisc 2\t\t\t1\t\t\t\t\t\tkey\t3\ttsc\t3\tisc\t3\tops\t2\tgps\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nHpotion 1\t\t\t1\t\t\t\t\t\thp1\t8\thp2\t3\tmp1\t3\tmp2\t2\trvs\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nHpotion 2\t\t\t1\t\t\t\t\t\thp1\t1\thp2\t4\thp3\t3\tmp2\t2\tmp3\t2\trvs\t1\t\t\t\t\t\t\t\t\t\t\t\t0\r\nHpotion 3\t\t\t1\t\t\t\t\t\thp2\t1\thp3\t4\thp4\t3\tmp3\t2\tmp4\t2\trvs\t1\t\t\t\t\t\t\t\t\t\t\t\t0\r\nHpotion 4\t\t\t1\t\t\t\t\t\thp3\t1\thp4\t4\thp5\t3\tmp4\t2\tmp5\t2\trvs\t1\t\t\t\t\t\t\t\t\t\t\t\t0\r\nHpotion 5\t\t\t1\t\t\t\t\t\thp3\t1\thp4\t4\thp5\t4\tmp5\t4\trvs\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nHpotion 6\t\t\t1\t\t\t\t\t\thp4\t4\thp5\t6\tmp4\t2\tmp5\t4\trvs\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nPotion 1\t\t\t1\t\t\t\t\t\thp1\t12\thp2\t4\tmp1\t5\tmp2\t4\trvs\t1\tvps\t4\t\t\t\t\t\t\t\t\t\t\t\t0\r\nPotion 2\t\t\t1\t\t\t\t\t\thp1\t4\thp2\t8\thp3\t5\tmp2\t2\tmp3\t5\trvs\t1\tvps\t2\typs\t3\twms\t1\t\t\t\t\t\t0\r\nPotion 3\t\t\t1\t\t\t\t\t\thp2\t6\thp3\t6\thp4\t4\tmp3\t3\tmp4\t3\trvs\t1\tvps\t2\typs\t2\twms\t1\t\t\t\t\t\t0\r\nPotion 4\t\t\t1\t\t\t\t\t\thp3\t6\thp4\t6\thp5\t4\tmp4\t3\tmp5\t3\trvs\t1\tvps\t2\typs\t2\twms\t1\t\t\t\t\t\t0\r\nPotion 5\t\t\t1\t\t\t\t\t\thp3\t4\thp4\t6\thp5\t6\tmp5\t5\trvs\t1\tvps\t2\typs\t2\twms\t1\t\t\t\t\t\t\t\t0\r\nPotion 6\t\t\t1\t\t\t\t\t\thp4\t6\thp5\t8\tmp4\t1\tmp5\t5\trvs\t1\tvps\t2\typs\t2\twms\t1\t\t\t\t\t\t\t\t0\r\nRunes 1\t\t\t1\t\t\t\t\t\tr01\t3\tr02\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nRunes 2\t\t\t1\t\t\t\t\t\tr03\t3\tr04\t2\tRunes 1\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nRunes 3\t\t\t1\t\t\t\t\t\tr05\t3\tr06\t2\tRunes 2\t5\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nRunes 4\t\t\t1\t\t\t\t\t\tr07\t3\tr08\t2\tRunes 3\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nRunes 5\t\t\t1\t\t\t\t\t\tr09\t3\tr10\t2\tRunes 4\t12\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nRunes 6\t\t\t1\t\t\t\t\t\tr11\t3\tr12\t2\tRunes 5\t22\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nRunes 7\t\t\t1\t\t\t\t\t\tr13\t3\tr14\t2\tRunes 6\t45\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nRunes 8\t\t\t1\t\t\t\t\t\tr15\t3\tr16\t2\tRunes 7\t90\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nRunes 9\t\t\t1\t\t\t\t\t\tr17\t3\tr18\t2\tRunes 8\t180\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nRunes 10\t\t\t1\t\t\t\t\t\tr19\t3\tr20\t2\tRunes 9\t360\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nRunes 11\t\t\t1\t\t\t\t\t\tr21\t3\tr22\t2\tRunes 10\t720\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nRunes 12\t\t\t1\t\t\t\t\t\tr23\t3\tr24\t2\tRunes 11\t1066\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nRunes 13\t\t\t1\t\t\t\t\t\tr25\t3\tr26\t2\tRunes 12\t1519\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nRunes 14\t\t\t1\t\t\t\t\t\tr27\t3\tr28\t2\tRunes 13\t2170\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nRunes 15\t\t\t1\t\t\t\t\t\tr29\t3\tr30\t2\tRunes 14\t2941\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nRunes 16\t\t\t1\t\t\t\t\t\tr31\t3\tr32\t2\tRunes 15\t3957\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nRunes 17\t\t\t1\t\t\t\t\t\tr33\t1\tRunes 16\t5170\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Junk\t\t\t1\t\t\t\t\t\tPotion 1\t8\tMisc 0\t4\tAmmo\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Junk\t\t\t1\t\t\t\t\t\tAct 1 Junk\t2\tPotion 2\t8\tMisc 0\t4\tAmmo\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Junk\t\t\t1\t\t\t\t\t\tAct 2 Junk\t2\tPotion 3\t8\tMisc 1\t4\tAmmo\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 Junk\t\t\t1\t\t\t\t\t\tAct 3 Junk\t2\tPotion 4\t8\tMisc 1\t4\tAmmo\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Junk\t\t\t1\t\t\t\t\t\tAct 4 Junk\t2\tPotion 5\t8\tMisc 2\t4\tAmmo\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Junk\t\t\t1\t\t\t\t\t\tAct 5 Junk\t2\tPotion 6\t8\tMisc 2\t4\tAmmo\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Junk\t\t\t1\t\t\t\t\t\tAct 5 Junk\t2\tPotion 6\t8\tMisc 2\t4\tAmmo\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Junk\t\t\t1\t\t\t\t\t\tAct 5 Junk\t2\tPotion 6\t8\tMisc 2\t4\tAmmo\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) Junk\t\t\t1\t\t\t\t\t\tAct 5 Junk\t2\tPotion 6\t8\tMisc 2\t4\tAmmo\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Junk\t\t\t1\t\t\t\t\t\tAct 5 Junk\t2\tPotion 6\t8\tMisc 2\t4\tAmmo\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Junk\t\t\t1\t\t\t\t\t\tAct 5 Junk\t2\tPotion 6\t8\tMisc 2\t4\tAmmo\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Junk\t\t\t1\t\t\t\t\t\tAct 5 Junk\t2\tPotion 6\t8\tMisc 2\t4\tAmmo\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Junk\t\t\t1\t\t\t\t\t\tAct 5 Junk\t2\tPotion 6\t8\tMisc 2\t4\tAmmo\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) Junk\t\t\t1\t\t\t\t\t\tAct 5 Junk\t2\tPotion 6\t8\tMisc 2\t4\tAmmo\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Junk\t\t\t1\t\t\t\t\t\tAct 5 Junk\t2\tPotion 6\t8\tMisc 2\t4\tAmmo\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Equip A\t1\t0\t1\t\t\t\t\t\tweap3\t7\tarmo3\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Equip B\t1\t5\t1\t\t\t\t\t\tweap3\t3\tarmo3\t3\tweap6\t7\tarmo6\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Equip C\t1\t9\t1\t\t\t\t\t\tweap3\t2\tarmo3\t1\tweap6\t6\tarmo6\t3\tweap9\t14\tarmo9\t7\tweap12\t2\tarmo12\t1\t\t\t\t\t\t\t\t0\r\nAct 2 Equip A\t1\t12\t1\t\t\t\t\t\tweap6\t2\tarmo6\t1\tweap9\t6\tarmo9\t3\tweap12\t14\tarmo12\t7\tweap15\t2\tarmo15\t1\tAct 1 Equip C\t30\t\t\t36\t66\t0.4545\t0\r\nAct 2 Equip B\t1\t15\t1\t\t\t\t\t\tweap9\t2\tarmo9\t1\tweap12\t6\tarmo12\t3\tweap15\t14\tarmo15\t7\tweap18\t2\tarmo18\t1\tAct 2 Equip A\t60\t\t\t36\t96\t0.6250\t0\r\nAct 2 Equip C\t1\t18\t1\t\t\t\t\t\tweap12\t2\tarmo12\t1\tweap15\t6\tarmo15\t3\tweap18\t14\tarmo18\t7\tweap21\t2\tarmo21\t1\tAct 2 Equip B\t80\t\t\t36\t116\t0.6897\t0\r\nAct 3 Equip A\t1\t20\t1\t\t\t\t\t\tweap15\t2\tarmo15\t1\tweap18\t6\tarmo18\t3\tweap21\t14\tarmo21\t7\tweap24\t2\tarmo24\t1\tAct 2 Equip C\t100\t\t\t36\t136\t0.7353\t0\r\nAct 3 Equip B\t1\t22\t1\t\t\t\t\t\tweap18\t2\tarmo18\t1\tweap21\t6\tarmo21\t3\tweap24\t14\tarmo24\t7\tweap27\t2\tarmo27\t1\tAct 3 Equip A\t200\t\t\t36\t236\t0.8475\t0\r\nAct 3 Equip C\t1\t24\t1\t\t\t\t\t\tweap21\t2\tarmo21\t1\tweap24\t6\tarmo24\t3\tweap27\t14\tarmo27\t7\tweap30\t2\tarmo30\t1\tAct 3 Equip B\t340\t\t\t36\t376\t0.9043\t0\r\nAct 4 Equip A\t1\t26\t1\t\t\t\t\t\tweap24\t2\tarmo24\t1\tweap27\t6\tarmo27\t3\tweap30\t14\tarmo30\t4\tweap33\t2\tarmo33\t1\tAct 3 Equip C\t430\t\t\t33\t463\t0.9287\t0\r\nAct 4 Equip B\t1\t29\t1\t\t\t\t\t\tweap27\t2\tarmo27\t1\tweap30\t6\tarmo30\t3\tweap33\t14\tarmo33\t3\tweap36\t2\tarmo36\t1\tAct 4 Equip A\t500\t\t\t32\t532\t0.9398\t0\r\nAct 5 Equip A\t1\t32\t1\t\t\t\t\t\tweap27\t2\tarmo27\t1\tweap30\t6\tarmo30\t3\tweap33\t14\tarmo33\t3\tweap36\t7\tarmo36\t5\tAct 4 Equip B\t629\t\t\t41\t670\t0.9388\t0\r\nAct 5 Equip B\t1\t34\t1\t\t\t\t\t\tweap30\t2\tarmo30\t1\tweap33\t6\tarmo33\t2\tweap36\t14\tarmo36\t7\tweap39\t2\tarmo39\t1\tAct 5 Equip A\t731\t\t\t35\t766\t0.9543\t0\r\nAct 5 Equip C\t1\t36\t1\t\t\t\t\t\tweap30\t2\tarmo30\t1\tweap33\t6\tarmo33\t2\tweap36\t14\tarmo36\t7\tweap39\t2\tarmo39\t1\tAct 5 Equip B\t833\t\t\t35\t868\t0.9597\t0\r\nAct 1 (N) Equip A\t1\t38\t1\t\t\t\t\t\tweap33\t2\tarmo33\t1\tweap36\t6\tarmo36\t3\tweap39\t14\tarmo39\t7\tweap42\t2\tarmo42\t1\tAct 5 Equip C\t935\t\t\t36\t971\t0.9629\t0\r\nAct 1 (N) Equip B\t1\t40\t1\t\t\t\t\t\tweap33\t2\tarmo33\t1\tweap36\t6\tarmo36\t3\tweap39\t14\tarmo39\t7\tweap42\t6\tarmo42\t3\tAct 1 (N) Equip A\t1105\t\t\t42\t1147\t0.9634\t0\r\nAct 1 (N) Equip C\t1\t42\t1\t\t\t\t\t\tweap36\t2\tarmo36\t1\tweap39\t6\tarmo39\t3\tweap42\t14\tarmo42\t7\tweap45\t2\tarmo45\t1\tAct 1 (N) Equip A\t1020\t\t\t36\t1056\t0.9659\t0\r\nAct 2 (N) Equip A\t1\t44\t1\t\t\t\t\t\tweap36\t2\tarmo36\t1\tweap39\t6\tarmo39\t3\tweap42\t14\tarmo42\t7\tweap45\t6\tarmo45\t3\tAct 1 (N) Equip B\t1233\t\t\t42\t1275\t0.9671\t0\r\nAct 2 (N) Equip B\t1\t46\t1\t\t\t\t\t\tweap39\t2\tarmo39\t1\tweap42\t6\tarmo42\t3\tweap45\t14\tarmo45\t7\tweap48\t2\tarmo48\t1\tAct 2 (N) Equip A\t1105\t\t\t36\t1141\t0.9684\t0\r\nAct 2 (N) Equip C\t1\t48\t1\t\t\t\t\t\tweap39\t2\tarmo39\t1\tweap42\t6\tarmo42\t3\tweap45\t14\tarmo45\t7\tweap48\t6\tarmo48\t3\tAct 2 (N) Equip A\t1318\t\t\t42\t1360\t0.9691\t0\r\nAct 3 (N) Equip A\t1\t50\t1\t\t\t\t\t\tweap42\t2\tarmo42\t1\tweap45\t6\tarmo45\t3\tweap48\t14\tarmo48\t7\tweap51\t2\tarmo51\t1\tAct 2 (N) Equip B\t1190\t\t\t36\t1226\t0.9706\t0\r\nAct 3 (N) Equip B\t1\t52\t1\t\t\t\t\t\tweap42\t2\tarmo42\t1\tweap45\t6\tarmo45\t3\tweap48\t14\tarmo48\t7\tweap51\t6\tarmo51\t3\tAct 3 (N) Equip A\t1445\t\t\t42\t1487\t0.9718\t0\r\nAct 3 (N) Equip C\t1\t54\t1\t\t\t\t\t\tweap45\t2\tarmo45\t1\tweap48\t6\tarmo48\t3\tweap51\t14\tarmo51\t7\tweap54\t2\tarmo54\t1\tAct 3 (N) Equip A\t1275\t\t\t36\t1311\t0.9725\t0\r\nAct 4 (N) Equip A\t1\t56\t1\t\t\t\t\t\tweap45\t2\tarmo45\t1\tweap48\t6\tarmo48\t3\tweap51\t14\tarmo51\t7\tweap54\t6\tarmo54\t3\tAct 3 (N) Equip B\t1530\t\t\t42\t1572\t0.9733\t0\r\nAct 4 (N) Equip B\t1\t58\t1\t\t\t\t\t\tweap48\t2\tarmo48\t1\tweap51\t6\tarmo51\t3\tweap54\t14\tarmo54\t7\tweap57\t2\tarmo57\t1\tAct 4 (N) Equip A\t1360\t\t\t36\t1396\t0.9742\t0\r\nAct 4 (N) Equip C\t1\t60\t1\t\t\t\t\t\tweap48\t2\tarmo48\t1\tweap51\t6\tarmo51\t3\tweap54\t14\tarmo54\t7\tweap57\t6\tarmo57\t3\tAct 4 (N) Equip A\t1658\t\t\t42\t1700\t0.9753\t0\r\nAct 5 (N) Equip A\t1\t62\t1\t\t\t\t\t\tweap51\t2\tarmo51\t1\tweap54\t6\tarmo54\t3\tweap57\t14\tarmo57\t7\tweap60\t2\tarmo60\t1\tAct 4 (N) Equip B\t1445\t\t\t36\t1481\t0.9757\t0\r\nAct 5 (N) Equip B\t1\t64\t1\t\t\t\t\t\tweap51\t2\tarmo51\t1\tweap54\t6\tarmo54\t3\tweap57\t14\tarmo57\t7\tweap60\t6\tarmo60\t3\tAct 5 (N) Equip A\t1743\t\t\t42\t1785\t0.9765\t0\r\nAct 5 (N) Equip C\t1\t66\t1\t\t\t\t\t\tweap54\t2\tarmo54\t1\tweap57\t6\tarmo57\t3\tweap60\t14\tarmo60\t7\tweap63\t2\tarmo63\t1\tAct 5 (N) Equip B\t1530\t\t\t36\t1566\t0.9770\t0\r\nAct 1 (H) Equip A\t1\t68\t1\t\t\t\t\t\tweap54\t2\tarmo54\t1\tweap57\t6\tarmo57\t3\tweap60\t14\tarmo60\t7\tweap63\t6\tarmo63\t3\tAct 5 (N) Equip C\t1785\t\t\t42\t1827\t0.9770\t0\r\nAct 1 (H) Equip B\t1\t70\t1\t\t\t\t\t\tweap57\t2\tarmo57\t1\tweap60\t6\tarmo60\t3\tweap63\t14\tarmo63\t7\tweap66\t2\tarmo66\t1\tAct 1 (H) Equip A\t1530\t\t\t36\t1566\t0.9770\t0\r\nAct 1 (H) Equip C\t1\t71\t1\t\t\t\t\t\tweap57\t2\tarmo57\t1\tweap60\t6\tarmo60\t3\tweap63\t14\tarmo63\t7\tweap66\t6\tarmo66\t3\tAct 1 (H) Equip A\t1785\t\t\t42\t1827\t0.9770\t0\r\nAct 2 (H) Equip A\t1\t73\t1\t\t\t\t\t\tweap60\t2\tarmo60\t1\tweap63\t6\tarmo63\t3\tweap66\t14\tarmo66\t7\tweap69\t2\tarmo69\t1\tAct 1 (H) Equip B\t1530\t\t\t36\t1566\t0.9770\t0\r\nAct 2 (H) Equip B\t1\t75\t1\t\t\t\t\t\tweap60\t2\tarmo60\t1\tweap63\t6\tarmo63\t3\tweap66\t14\tarmo66\t7\tweap69\t6\tarmo69\t3\tAct 2 (H) Equip A\t1785\t\t\t42\t1827\t0.9770\t0\r\nAct 2 (H) Equip C\t1\t76\t1\t\t\t\t\t\tweap63\t2\tarmo63\t1\tweap66\t6\tarmo66\t3\tweap69\t14\tarmo69\t7\tweap72\t2\tarmo72\t1\tAct 2 (H) Equip A\t1530\t\t\t36\t1566\t0.9770\t0\r\nAct 3 (H) Equip A\t1\t77\t1\t\t\t\t\t\tweap63\t2\tarmo63\t1\tweap66\t6\tarmo66\t3\tweap69\t14\tarmo69\t7\tweap72\t6\tarmo72\t3\tAct 2 (H) Equip B\t1785\t\t\t42\t1827\t0.9770\t0\r\nAct 3 (H) Equip B\t1\t78\t1\t\t\t\t\t\tweap66\t2\tarmo66\t1\tweap69\t6\tarmo69\t3\tweap72\t14\tarmo72\t7\tweap75\t2\tarmo75\t1\tAct 3 (H) Equip A\t1530\t\t\t36\t1566\t0.9770\t0\r\nAct 3 (H) Equip C\t1\t79\t1\t\t\t\t\t\tweap66\t2\tarmo66\t1\tweap69\t6\tarmo69\t3\tweap72\t14\tarmo72\t7\tweap75\t6\tarmo75\t3\tAct 3 (H) Equip A\t1785\t\t\t42\t1827\t0.9770\t0\r\nAct 4 (H) Equip A\t1\t80\t1\t\t\t\t\t\tweap69\t2\tarmo69\t1\tweap72\t6\tarmo72\t3\tweap75\t14\tarmo75\t7\tweap78\t2\tarmo78\t1\tAct 3 (H) Equip B\t1530\t\t\t36\t1566\t0.9770\t0\r\nAct 4 (H) Equip B\t1\t81\t1\t\t\t\t\t\tweap69\t2\tarmo69\t1\tweap72\t6\tarmo72\t3\tweap75\t14\tarmo75\t7\tweap78\t6\tarmo78\t3\tAct 4 (H) Equip A\t1785\t\t\t42\t1827\t0.9770\t0\r\nAct 4 (H) Equip C\t1\t82\t1\t\t\t\t\t\tweap72\t2\tarmo72\t1\tweap75\t6\tarmo75\t3\tweap78\t14\tarmo78\t7\tweap81\t2\tarmo81\t1\tAct 4 (H) Equip A\t1530\t\t\t36\t1566\t0.9770\t0\r\nAct 5 (H) Equip A\t1\t83\t1\t\t\t\t\t\tweap75\t2\tarmo75\t1\tweap78\t6\tarmo78\t3\tweap81\t14\tarmo81\t7\tweap84\t2\tarmo84\t1\tAct 4 (H) Equip B\t1530\t\t\t36\t1566\t0.9770\t0\r\nAct 5 (H) Equip B\t1\t84\t1\t\t\t\t\t\tweap78\t2\tarmo78\t1\tweap81\t6\tarmo81\t3\tweap84\t14\tarmo84\t7\tweap87\t2\tarmo87\t1\tAct 5 (H) Equip A\t1530\t\t\t36\t1566\t0.9770\t0\r\nAct 5 (H) Equip C\t1\t85\t1\t\t\t\t\t\tweap81\t2\tarmo81\t1\tweap84\t6\tarmo84\t3\tweap87\t14\tarmo87\t7\tweap87\t1\tarmo87\t1\tAct 5 (H) Equip B\t1530\t\t\t35\t1565\t0.9776\t0\r\nAct 1 Melee A\t2\t0\t1\t\t\t\t\t\tmele3\t7\tarmo3\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Melee B\t2\t5\t1\t\t\t\t\t\tmele3\t3\tarmo3\t3\tmele6\t7\tarmo6\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Melee C\t2\t9\t1\t\t\t\t\t\tmele3\t2\tarmo3\t1\tmele6\t6\tarmo6\t3\tmele9\t14\tarmo9\t7\tmele12\t2\tarmo12\t1\t\t\t\t\t\t\t\t0\r\nAct 2 Melee A\t2\t12\t1\t\t\t\t\t\tmele6\t2\tarmo6\t1\tmele9\t6\tarmo9\t3\tmele12\t14\tarmo12\t7\tmele15\t2\tarmo15\t1\tAct 1 Melee C\t30\t\t\t36\t66\t0.4545\t0\r\nAct 2 Melee B\t2\t15\t1\t\t\t\t\t\tmele9\t2\tarmo9\t1\tmele12\t6\tarmo12\t3\tmele15\t14\tarmo15\t7\tmele18\t2\tarmo18\t1\tAct 2 Melee A\t60\t\t\t36\t96\t0.6250\t0\r\nAct 2 Melee C\t2\t18\t1\t\t\t\t\t\tmele12\t2\tarmo12\t1\tmele15\t6\tarmo15\t3\tmele18\t14\tarmo18\t7\tmele21\t2\tarmo21\t1\tAct 2 Melee B\t90\t\t\t36\t126\t0.7143\t0\r\nAct 3 Melee A\t2\t20\t1\t\t\t\t\t\tmele15\t2\tarmo15\t1\tmele18\t6\tarmo18\t3\tmele21\t14\tarmo21\t7\tmele24\t2\tarmo24\t1\tAct 2 Melee C\t120\t\t\t36\t156\t0.7692\t0\r\nAct 3 Melee B\t2\t22\t1\t\t\t\t\t\tmele18\t2\tarmo18\t1\tmele21\t6\tarmo21\t3\tmele24\t14\tarmo24\t7\tmele27\t2\tarmo27\t1\tAct 3 Melee A\t150\t\t\t36\t186\t0.8065\t0\r\nAct 3 Melee C\t2\t24\t1\t\t\t\t\t\tmele21\t2\tarmo21\t1\tmele24\t6\tarmo24\t3\tmele27\t14\tarmo27\t7\tmele30\t2\tarmo30\t1\tAct 3 Melee B\t180\t\t\t36\t216\t0.8333\t0\r\nAct 4 Melee A\t2\t26\t1\t\t\t\t\t\tmele24\t2\tarmo24\t1\tmele27\t6\tarmo27\t3\tmele30\t14\tarmo30\t4\tmele33\t2\tarmo33\t1\tAct 3 Melee C\t210\t\t\t33\t243\t0.8642\t0\r\nAct 4 Melee B\t2\t29\t1\t\t\t\t\t\tmele27\t2\tarmo27\t1\tmele30\t6\tarmo30\t3\tmele33\t14\tarmo33\t3\tmele36\t2\tarmo36\t1\tAct 4 Melee A\t260\t\t\t32\t292\t0.8904\t0\r\nAct 5 Melee A\t2\t32\t1\t\t\t\t\t\tmele27\t2\tarmo27\t1\tmele30\t6\tarmo30\t3\tmele33\t14\tarmo33\t3\tmele36\t7\tarmo36\t5\tAct 4 Melee B\t400\t\t\t41\t441\t0.9070\t0\r\nAct 5 Melee B\t2\t34\t1\t\t\t\t\t\tmele30\t2\tarmo30\t1\tmele33\t6\tarmo33\t2\tmele36\t14\tarmo36\t7\tmele39\t2\tarmo39\t1\tAct 5 Melee A\t489\t\t\t35\t524\t0.9332\t0\r\nAct 5 Melee C\t2\t36\t1\t\t\t\t\t\tmele30\t2\tarmo30\t1\tmele33\t6\tarmo33\t2\tmele36\t14\tarmo36\t7\tmele39\t2\tarmo39\t1\tAct 5 Melee B\t629\t\t\t35\t664\t0.9473\t0\r\nAct 1 (N) Melee A\t2\t38\t1\t\t\t\t\t\tweap33\t2\tarmo33\t1\tweap36\t6\tarmo36\t3\tweap39\t14\tarmo39\t7\tweap42\t2\tarmo42\t1\tAct 5 Melee C\t769\t\t\t36\t805\t0.9553\t0\r\nAct 1 (N) Melee B\t2\t40\t1\t\t\t\t\t\tweap36\t2\tarmo36\t1\tweap39\t6\tarmo39\t3\tweap42\t14\tarmo42\t7\tweap45\t2\tarmo45\t1\tAct 1 (N) Melee A\t935\t\t\t36\t971\t0.9629\t0\r\nAct 2 (N) Melee A\t2\t42\t1\t\t\t\t\t\tweap36\t2\tarmo36\t1\tweap39\t6\tarmo39\t3\tweap42\t14\tarmo42\t7\tweap45\t6\tarmo45\t3\tAct 1 (N) Melee B\t1148\t\t\t42\t1190\t0.9647\t0\r\nAct 2 (N) Melee B\t2\t44\t1\t\t\t\t\t\tweap39\t2\tarmo39\t1\tweap42\t6\tarmo42\t3\tweap45\t14\tarmo45\t7\tweap48\t2\tarmo48\t1\tAct 2 (N) Melee A\t1020\t\t\t36\t1056\t0.9659\t0\r\nAct 3 (N) Melee A\t2\t46\t1\t\t\t\t\t\tweap42\t2\tarmo42\t1\tweap45\t6\tarmo45\t3\tweap48\t14\tarmo48\t7\tweap51\t2\tarmo51\t1\tAct 2 (N) Melee B\t1063\t\t\t36\t1099\t0.9672\t0\r\nAct 3 (N) Melee B\t2\t48\t1\t\t\t\t\t\tweap45\t2\tarmo45\t1\tweap48\t6\tarmo48\t3\tweap51\t14\tarmo51\t7\tweap54\t2\tarmo54\t1\tAct 3 (N) Melee A\t1105\t\t\t36\t1141\t0.9684\t0\r\nAct 4 (N) Melee A\t2\t51\t1\t\t\t\t\t\tweap45\t2\tarmo45\t1\tweap48\t6\tarmo48\t3\tweap51\t14\tarmo51\t7\tweap54\t6\tarmo54\t3\tAct 3 (N) Melee B\t1339\t\t\t42\t1381\t0.9696\t0\r\nAct 4 (N) Melee B\t2\t54\t1\t\t\t\t\t\tweap48\t2\tarmo48\t1\tweap51\t6\tarmo51\t3\tweap54\t14\tarmo54\t7\tweap57\t2\tarmo57\t1\tAct 4 (N) Melee A\t1190\t\t\t36\t1226\t0.9706\t0\r\nAct 5 (N) Melee A\t2\t57\t1\t\t\t\t\t\tweap51\t2\tarmo51\t1\tweap54\t6\tarmo54\t3\tweap57\t14\tarmo57\t7\tweap60\t2\tarmo60\t1\tAct 4 (N) Melee B\t1275\t\t\t36\t1311\t0.9725\t0\r\nAct 5 (N) Melee B\t2\t60\t1\t\t\t\t\t\tweap51\t2\tarmo51\t1\tweap54\t6\tarmo54\t3\tweap57\t14\tarmo57\t7\tweap60\t6\tarmo60\t3\tAct 5 (N) Melee A\t1743\t\t\t42\t1785\t0.9765\t0\r\nAct 5 (N) Melee C\t2\t63\t1\t\t\t\t\t\tweap54\t2\tarmo54\t1\tweap57\t6\tarmo57\t3\tweap60\t14\tarmo60\t7\tweap63\t2\tarmo63\t1\tAct 5 (N) Melee B\t1530\t\t\t36\t1566\t0.9770\t0\r\nAct 1 (H) Melee A\t2\t66\t1\t\t\t\t\t\tweap54\t2\tarmo54\t1\tweap57\t6\tarmo57\t3\tweap60\t14\tarmo60\t7\tweap63\t6\tarmo63\t3\tAct 5 (N) Melee C\t1781\t\t\t42\t1823\t0.9770\t0\r\nAct 1 (H) Melee B\t2\t68\t1\t\t\t\t\t\tweap57\t2\tarmo57\t1\tweap60\t6\tarmo60\t3\tweap63\t14\tarmo63\t7\tweap66\t2\tarmo66\t1\tAct 1 (H) Melee A\t1530\t\t\t36\t1566\t0.9770\t0\r\nAct 2 (H) Melee A\t2\t71\t1\t\t\t\t\t\tweap60\t2\tarmo60\t1\tweap63\t6\tarmo63\t3\tweap66\t14\tarmo66\t7\tweap69\t2\tarmo69\t1\tAct 1 (H) Melee B\t1530\t\t\t36\t1566\t0.9770\t0\r\nAct 2 (H) Melee B\t2\t73\t1\t\t\t\t\t\tweap63\t2\tarmo63\t1\tweap66\t6\tarmo66\t3\tweap69\t14\tarmo69\t7\tweap72\t2\tarmo72\t1\tAct 2 (H) Melee A\t1530\t\t\t36\t1566\t0.9770\t0\r\nAct 3 (H) Melee A\t2\t75\t1\t\t\t\t\t\tweap63\t2\tarmo63\t1\tweap66\t6\tarmo66\t3\tweap69\t14\tarmo69\t7\tweap72\t6\tarmo72\t3\tAct 2 (H) Melee B\t1781\t\t\t42\t1823\t0.9770\t0\r\nAct 3 (H) Melee B\t2\t77\t1\t\t\t\t\t\tweap66\t2\tarmo66\t1\tweap69\t6\tarmo69\t3\tweap72\t14\tarmo72\t7\tweap75\t2\tarmo75\t1\tAct 3 (H) Melee A\t1530\t\t\t36\t1566\t0.9770\t0\r\nAct 4 (H) Melee A\t2\t79\t1\t\t\t\t\t\tweap69\t2\tarmo69\t1\tweap72\t6\tarmo72\t3\tweap75\t14\tarmo75\t7\tweap78\t2\tarmo78\t1\tAct 3 (H) Melee B\t1530\t\t\t36\t1566\t0.9770\t0\r\nAct 4 (H) Melee B\t2\t80\t1\t\t\t\t\t\tweap72\t2\tarmo72\t1\tweap75\t6\tarmo75\t3\tweap78\t14\tarmo78\t7\tweap81\t2\tarmo81\t1\tAct 4 (H) Melee A\t1530\t\t\t36\t1566\t0.9770\t0\r\nAct 5 (H) Melee A\t2\t81\t1\t\t\t\t\t\tweap75\t2\tarmo75\t1\tweap78\t6\tarmo78\t3\tweap81\t14\tarmo81\t7\tweap84\t2\tarmo84\t1\tAct 4 (H) Melee B\t1530\t\t\t36\t1566\t0.9770\t0\r\nAct 5 (H) Melee B\t2\t83\t1\t\t\t\t\t\tweap78\t2\tarmo78\t1\tweap81\t6\tarmo81\t3\tweap84\t14\tarmo84\t7\tweap87\t2\tarmo87\t1\tAct 5 (H) Melee A\t1530\t\t\t36\t1566\t0.9770\t0\r\nAct 5 (H) Melee C\t2\t85\t1\t\t\t\t\t\tweap81\t2\tarmo81\t1\tweap84\t6\tarmo84\t3\tweap87\t14\tarmo87\t7\tweap87\t1\tarmo87\t1\tAct 5 (H) Melee B\t1530\t\t\t35\t1565\t0.9776\t0\r\nAct 1 Bow A\t3\t0\t1\t\t\t\t\t\tbow3\t36\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Bow B\t3\t5\t1\t\t\t\t\t\tbow3\t20\tbow6\t16\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Bow C\t3\t9\t1\t\t\t\t\t\tbow3\t10\tbow6\t16\tbow9\t10\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Bow A\t3\t12\t1\t\t\t\t\t\tbow3\t3\tbow6\t15\tbow9\t15\tbow12\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Bow B\t3\t15\t1\t\t\t\t\t\tbow3\t1\tbow6\t7\tbow9\t20\tbow12\t7\tbow15\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Bow C\t3\t18\t1\t\t\t\t\t\tbow3\t1\tbow6\t3\tbow9\t14\tbow12\t14\tbow15\t3\tbow18\t1\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Bow A\t3\t20\t1\t\t\t\t\t\tbow3\t1\tbow6\t3\tbow9\t6\tbow12\t12\tbow15\t6\tbow18\t3\tbow21\t1\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Bow B\t3\t22\t1\t\t\t\t\t\tbow3\t1\tbow6\t3\tbow9\t6\tbow12\t8\tbow15\t8\tbow18\t6\tbow21\t3\tbow24\t1\t\t\t\t\t\t\t\t0\r\nAct 3 Bow C\t3\t24\t1\t\t\t\t\t\tbow3\t1\tbow6\t2\tbow9\t5\tbow12\t7\tbow15\t8\tbow18\t7\tbow21\t4\tbow24\t2\t\t\t\t\t\t\t\t0\r\nAct 4 Bow A\t3\t26\t1\t\t\t\t\t\tbow6\t1\tbow9\t3\tbow12\t6\tbow15\t8\tbow18\t8\tbow21\t6\tbow24\t3\tbow27\t1\tAct 3 Bow C\t110\t\t\t36\t146\t0.7534\t0\r\nAct 4 Bow B\t3\t29\t1\t\t\t\t\t\tbow6\t1\tbow9\t2\tbow12\t5\tbow15\t7\tbow18\t8\tbow21\t7\tbow24\t4\tbow27\t2\tAct 4 Bow A\t180\t\t\t36\t216\t0.8333\t0\r\nAct 5 Bow A\t3\t32\t1\t\t\t\t\t\tbow9\t1\tbow12\t3\tbow15\t6\tbow18\t8\tbow21\t8\tbow24\t6\tbow27\t3\tbow30\t1\tAct 4 Bow B\t270\t\t\t36\t306\t0.8824\t0\r\nAct 5 Bow B\t3\t34\t1\t\t\t\t\t\tbow9\t1\tbow12\t2\tbow15\t5\tbow18\t7\tbow21\t8\tbow24\t7\tbow27\t4\tbow30\t2\tAct 5 Bow A\t380\t\t\t36\t416\t0.9135\t0\r\nAct 5 Bow C\t3\t36\t1\t\t\t\t\t\tbow9\t1\tbow12\t2\tbow15\t5\tbow18\t7\tbow21\t8\tbow24\t7\tbow27\t4\tbow30\t2\tAct 5 Bow B\t500\t\t\t36\t536\t0.9328\t0\r\nAct 1 (N) Bow A\t3\t38\t1\t\t\t\t\t\tbow12\t1\tbow15\t2\tbow18\t5\tbow21\t7\tbow24\t8\tbow27\t7\tbow30\t4\tbow33\t2\tAct 5 Bow C\t630\t\t\t36\t666\t0.9459\t0\r\nAct 1 (N) Bow B\t3\t40\t1\t\t\t\t\t\tbow15\t1\tbow18\t2\tbow21\t5\tbow24\t7\tbow27\t8\tbow30\t7\tbow33\t4\tbow36\t2\tAct 1 (N) Bow A\t770\t\t\t36\t806\t0.9553\t0\r\nAct 2 (N) Bow A\t3\t42\t1\t\t\t\t\t\tbow18\t1\tbow21\t2\tbow24\t5\tbow27\t7\tbow30\t8\tbow33\t7\tbow36\t4\tbow39\t2\tAct 1 (N) Bow B\t920\t\t\t36\t956\t0.9623\t0\r\nAct 2 (N) Bow B\t3\t44\t1\t\t\t\t\t\tbow21\t1\tbow24\t2\tbow27\t5\tbow30\t7\tbow33\t8\tbow36\t7\tbow39\t4\tbow42\t2\tAct 2 (N) Bow A\t1070\t\t\t36\t1106\t0.9675\t0\r\nAct 3 (N) Bow A\t3\t46\t1\t\t\t\t\t\tbow24\t1\tbow27\t2\tbow30\t5\tbow33\t7\tbow36\t8\tbow39\t7\tbow42\t4\tbow45\t2\tAct 2 (N) Bow B\t1220\t\t\t36\t1256\t0.9713\t0\r\nAct 3 (N) Bow B\t3\t48\t1\t\t\t\t\t\tbow27\t1\tbow30\t2\tbow33\t5\tbow36\t7\tbow39\t8\tbow42\t7\tbow45\t4\tbow48\t2\tAct 3 (N) Bow A\t1370\t\t\t36\t1406\t0.9744\t0\r\nAct 4 (N) Bow A\t3\t51\t1\t\t\t\t\t\tbow30\t1\tbow33\t2\tbow36\t5\tbow39\t7\tbow42\t8\tbow45\t7\tbow48\t4\tbow51\t2\tAct 3 (N) Bow B\t1520\t\t\t36\t1556\t0.9769\t0\r\nAct 4 (N) Bow B\t3\t54\t1\t\t\t\t\t\tbow33\t1\tbow36\t2\tbow39\t5\tbow42\t7\tbow45\t8\tbow48\t7\tbow51\t4\tbow54\t2\tAct 4 (N) Bow A\t1670\t\t\t36\t1706\t0.9789\t0\r\nAct 5 (N) Bow A\t3\t57\t1\t\t\t\t\t\tbow36\t1\tbow39\t2\tbow42\t5\tbow45\t7\tbow48\t8\tbow51\t7\tbow54\t4\tbow57\t2\tAct 4 (N) Bow B\t1820\t\t\t36\t1856\t0.9806\t0\r\nAct 5 (N) Bow B\t3\t60\t1\t\t\t\t\t\tbow39\t1\tbow42\t2\tbow45\t5\tbow48\t7\tbow51\t8\tbow54\t7\tbow57\t4\tbow60\t2\tAct 5 (N) Bow A\t1970\t\t\t36\t2006\t0.9821\t0\r\nAct 5 (N) Bow C\t3\t63\t1\t\t\t\t\t\tbow42\t1\tbow45\t2\tbow48\t5\tbow51\t7\tbow54\t8\tbow57\t7\tbow60\t4\tbow63\t2\tAct 5 (N) Bow B\t2120\t\t\t36\t2156\t0.9833\t0\r\nAct 1 (H) Bow A\t3\t66\t1\t\t\t\t\t\tbow45\t1\tbow48\t2\tbow51\t5\tbow54\t7\tbow57\t8\tbow60\t7\tbow63\t4\tbow66\t2\tAct 5 (N) Bow C\t2270\t\t\t36\t2306\t0.9844\t0\r\nAct 1 (H) Bow B\t3\t69\t1\t\t\t\t\t\tbow48\t1\tbow51\t2\tbow54\t5\tbow57\t7\tbow60\t8\tbow63\t7\tbow66\t4\tbow69\t2\tAct 1 (H) Bow A\t2270\t\t\t36\t2306\t0.9844\t0\r\nAct 2 (H) Bow A\t3\t71\t1\t\t\t\t\t\tbow51\t1\tbow54\t2\tbow57\t5\tbow60\t7\tbow63\t8\tbow66\t7\tbow69\t4\tbow72\t2\tAct 1 (H) Bow B\t2270\t\t\t36\t2306\t0.9844\t0\r\nAct 2 (H) Bow B\t3\t73\t1\t\t\t\t\t\tbow54\t1\tbow57\t2\tbow60\t5\tbow63\t7\tbow66\t8\tbow69\t7\tbow72\t4\tbow75\t2\tAct 2 (H) Bow A\t2270\t\t\t36\t2306\t0.9844\t0\r\nAct 3 (H) Bow A\t3\t75\t1\t\t\t\t\t\tbow57\t1\tbow60\t2\tbow63\t5\tbow66\t7\tbow69\t8\tbow72\t7\tbow75\t4\tbow78\t2\tAct 2 (H) Bow B\t2270\t\t\t36\t2306\t0.9844\t0\r\nAct 3 (H) Bow B\t3\t77\t1\t\t\t\t\t\tbow60\t1\tbow63\t2\tbow66\t5\tbow69\t7\tbow72\t8\tbow75\t7\tbow78\t4\tbow81\t2\tAct 3 (H) Bow A\t2270\t\t\t36\t2306\t0.9844\t0\r\nAct 4 (H) Bow A\t3\t79\t1\t\t\t\t\t\tbow63\t1\tbow66\t2\tbow69\t5\tbow72\t7\tbow75\t8\tbow78\t7\tbow81\t4\tbow84\t2\tAct 3 (H) Bow B\t2270\t\t\t36\t2306\t0.9844\t0\r\nAct 4 (H) Bow B\t3\t80\t1\t\t\t\t\t\tbow66\t1\tbow69\t2\tbow72\t5\tbow75\t7\tbow78\t8\tbow81\t7\tbow84\t2\tbow84\t1\tAct 4 (H) Bow A\t2080\t\t\t33\t2113\t0.9844\t0\r\nAct 5 (H) Bow A\t3\t82\t1\t\t\t\t\t\tbow69\t1\tbow72\t2\tbow75\t5\tbow78\t7\tbow81\t8\tbow84\t7\tbow87\t2\tbow87\t1\tAct 4 (H) Bow B\t2080\t\t\t33\t2113\t0.9844\t0\r\nAct 5 (H) Bow B\t3\t83\t1\t\t\t\t\t\tbow72\t1\tbow75\t2\tbow78\t5\tbow81\t7\tbow84\t8\tbow87\t7\tbow87\t2\tbow87\t1\tAct 5 (H) Bow A\t2080\t\t\t33\t2113\t0.9844\t0\r\nAct 5 (H) Bow C\t3\t85\t1\t\t\t\t\t\tbow75\t1\tbow78\t2\tbow81\t5\tbow84\t7\tbow87\t8\tbow87\t1\tbow87\t1\tbow87\t1\tAct 5 (H) Bow B\t1655\t\t\t26\t1681\t0.9845\t0\r\nAct 1 Magic A\t4\t0\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp1\t6\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Magic B\t4\t5\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp1\t4\tmp2\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Magic C\t4\t9\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp1\t2\tmp2\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Magic A\t4\t12\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp1\t1\tmp2\t4\tmp3\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Magic B\t4\t15\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp1\t1\tmp2\t3\tmp3\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Magic C\t4\t18\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp2\t2\tmp3\t3\tmp4\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Magic A\t4\t20\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp3\t4\tmp4\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Magic B\t4\t22\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp3\t3\tmp4\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Magic C\t4\t24\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp3\t2\tmp4\t3\tmp5\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 Magic A\t4\t26\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp3\t1\tmp4\t4\tmp5\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 Magic B\t4\t29\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp4\t4\tmp5\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Magic A\t4\t32\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp4\t3\tmp5\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Magic B\t4\t34\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp4\t2\tmp5\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Magic C\t4\t36\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp4\t2\tmp5\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Magic A\t4\t38\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp4\t2\tmp5\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Magic B\t4\t40\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp4\t2\tmp5\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Magic A\t4\t42\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp4\t2\tmp5\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Magic B\t4\t44\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp4\t2\tmp5\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Magic A\t4\t46\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp4\t2\tmp5\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Magic B\t4\t48\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp4\t2\tmp5\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) Magic A\t4\t51\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp4\t2\tmp5\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) Magic B\t4\t54\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp4\t2\tmp5\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Magic A\t4\t57\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp4\t2\tmp5\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Magic B\t4\t60\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp4\t2\tmp5\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Magic C\t4\t63\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp4\t2\tmp5\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Magic A\t4\t66\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp4\t2\tmp5\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Magic B\t4\t69\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp4\t2\tmp5\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Magic A\t4\t71\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp4\t2\tmp5\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Magic B\t4\t73\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp4\t2\tmp5\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Magic A\t4\t75\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp4\t2\tmp5\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Magic B\t4\t77\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp4\t2\tmp5\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) Magic A\t4\t79\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp4\t2\tmp5\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) Magic B\t4\t80\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp4\t2\tmp5\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Magic A\t4\t82\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp4\t2\tmp5\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Magic B\t4\t83\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp4\t2\tmp5\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Magic C\t4\t85\t1\t\t\t\t\t\ttsc\t2\tisc\t4\tmp4\t2\tmp5\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Good\t5\t0\t1\t\t\t\t\t\tJewelry A\t5\tChipped Gem\t5\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Good\t5\t12\t1\t\t\t\t\t\tJewelry B\t20\tChipped Gem\t12\tFlawed Gem\t4\tRunes 1\t3\tRunes 2\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Good\t5\t18\t1\t\t\t\t\t\tJewelry C\t20\tChipped Gem\t8\tFlawed Gem\t8\tRunes 3\t3\tRunes 4\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 Good\t5\t26\t1\t\t\t\t\t\tJewelry C\t50\tChipped Gem\t14\tFlawed Gem\t28\tNormal Gem\t42\tRunes 5\t14\tRunes 6\t7\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Good\t5\t32\t1\t\t\t\t\t\tJewelry C\t50\tChipped Gem\t6\tFlawed Gem\t8\tNormal Gem\t24\tFlawless Gem\t4\tRunes 7\t10\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Good\t5\t38\t1\t\t\t\t\t\tJewelry C\t60\tChipped Gem\t6\tFlawed Gem\t8\tNormal Gem\t28\tFlawless Gem\t14\tRunes 8\t14\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Good\t5\t42\t1\t\t\t\t\t\tJewelry C\t60\tChipped Gem\t4\tFlawed Gem\t10\tNormal Gem\t14\tFlawless Gem\t28\tRunes 9\t14\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Good\t5\t46\t1\t\t\t\t\t\tJewelry C\t60\tChipped Gem\t4\tFlawed Gem\t10\tNormal Gem\t14\tFlawless Gem\t28\tRunes 10\t14\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) Good\t5\t51\t1\t\t\t\t\t\tJewelry C\t60\tChipped Gem\t4\tFlawed Gem\t10\tNormal Gem\t14\tFlawless Gem\t28\tRunes 11\t14\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Good\t5\t57\t1\t\t\t\t\t\tJewelry C\t60\tChipped Gem\t4\tFlawed Gem\t10\tNormal Gem\t14\tFlawless Gem\t28\tRunes 12\t14\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Good\t5\t66\t1\t\t\t\t\t\tJewelry C\t60\tChipped Gem\t4\tFlawed Gem\t10\tNormal Gem\t14\tFlawless Gem\t28\tRunes 13\t14\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Good\t5\t72\t1\t\t\t\t\t\tJewelry C\t60\tChipped Gem\t4\tFlawed Gem\t10\tNormal Gem\t14\tFlawless Gem\t28\tRunes 14\t14\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Good\t5\t78\t1\t\t\t\t\t\tJewelry C\t60\tChipped Gem\t4\tFlawed Gem\t10\tNormal Gem\t14\tFlawless Gem\t28\tRunes 15\t14\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) Good\t5\t82\t1\t\t\t\t\t\tJewelry C\t60\tChipped Gem\t4\tFlawed Gem\t10\tNormal Gem\t14\tFlawless Gem\t28\tRunes 16\t14\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Good\t5\t85\t1\t\t\t\t\t\tJewelry C\t60\tChipped Gem\t4\tFlawed Gem\t10\tNormal Gem\t14\tFlawless Gem\t28\tRunes 17\t14\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Chest A\t6\t0\t4\t\t\t\t\t100\tgld\t15\tAct 1 Junk\t15\tAct 1 Equip A\t10\tAct 1 Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Chest B\t6\t5\t4\t\t\t\t\t100\tgld\t15\tAct 1 Junk\t15\tAct 1 Equip B\t10\tAct 1 Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Chest C\t6\t9\t4\t\t\t\t\t100\tgld\t15\tAct 1 Junk\t12\tAct 2 Junk\t3\tAct 1 Equip C\t15\tAct 1 Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Chest A\t6\t12\t4\t\t\t\t\t100\tgld\t15\tAct 2 Junk\t15\tAct 2 Equip A\t10\tAct 2 Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Chest B\t6\t15\t4\t\t\t\t\t100\tgld\t15\tAct 2 Junk\t15\tAct 2 Equip B\t10\tAct 2 Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Chest C\t6\t18\t4\t\t\t\t\t100\tgld\t15\tAct 2 Junk\t12\tAct 3 Junk\t3\tAct 2 Equip C\t15\tAct 2 Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Chest A\t6\t20\t4\t\t\t\t\t100\tgld\t15\tAct 3 Junk\t15\tAct 3 Equip A\t10\tAct 3 Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Chest B\t6\t22\t4\t\t\t\t\t100\tgld\t15\tAct 3 Junk\t15\tAct 3 Equip B\t10\tAct 3 Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Chest C\t6\t24\t4\t\t\t\t\t100\tgld\t15\tAct 3 Junk\t15\tAct 3 Equip C\t10\tAct 3 Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 Chest A\t6\t26\t4\t\t\t\t\t100\tgld\t15\tAct 4 Junk\t15\tAct 4 Equip A\t10\tAct 4 Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 Chest B\t6\t28\t4\t\t\t\t\t100\tgld\t15\tAct 4 Junk\t15\tAct 4 Equip B\t10\tAct 4 Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 Chest C\t6\t30\t4\t\t\t\t\t100\tgld\t15\tAct 4 Junk\t15\tAct 4 Equip B\t10\tAct 4 Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Chest A\t6\t32\t4\t\t\t\t\t100\tgld\t15\tAct 5 Junk\t15\tAct 5 Equip A\t10\tAct 5 Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Chest B\t6\t34\t4\t\t\t\t\t100\tgld\t15\tAct 5 Junk\t15\tAct 5 Equip B\t10\tAct 5 Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Chest C\t6\t36\t4\t\t\t\t\t100\tgld\t15\tAct 5 Junk\t15\tAct 5 Equip B\t10\tAct 5 Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Chest A\t6\t38\t4\t\t\t\t\t100\tgld\t15\tAct 1 (N) Junk\t15\tAct 1 (N) Equip A\t10\tAct 1 (N) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Chest B\t6\t40\t4\t\t\t\t\t100\tgld\t15\tAct 1 (N) Junk\t15\tAct 1 (N) Equip B\t10\tAct 1 (N) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Chest C\t6\t42\t4\t\t\t\t\t100\tgld\t15\tAct 1 (N) Junk\t15\tAct 1 (N) Equip B\t10\tAct 1 (N) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Chest A\t6\t44\t4\t\t\t\t\t100\tgld\t15\tAct 2 (N) Junk\t15\tAct 2 (N) Equip A\t10\tAct 2 (N) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Chest B\t6\t46\t4\t\t\t\t\t100\tgld\t15\tAct 2 (N) Junk\t15\tAct 2 (N) Equip B\t10\tAct 2 (N) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Chest C\t6\t48\t4\t\t\t\t\t100\tgld\t15\tAct 2 (N) Junk\t15\tAct 2 (N) Equip B\t10\tAct 2 (N) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Chest A\t6\t50\t4\t\t\t\t\t100\tgld\t15\tAct 3 (N) Junk\t15\tAct 3 (N) Equip A\t10\tAct 3 (N) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Chest B\t6\t52\t4\t\t\t\t\t100\tgld\t15\tAct 3 (N) Junk\t15\tAct 3 (N) Equip B\t10\tAct 3 (N) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Chest C\t6\t54\t4\t\t\t\t\t100\tgld\t15\tAct 3 (N) Junk\t15\tAct 3 (N) Equip B\t10\tAct 3 (N) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) Chest A\t6\t56\t4\t\t\t\t\t100\tgld\t15\tAct 4 (N) Junk\t15\tAct 4 (N) Equip A\t10\tAct 4 (N) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) Chest B\t6\t58\t4\t\t\t\t\t100\tgld\t15\tAct 4 (N) Junk\t15\tAct 4 (N) Equip B\t10\tAct 4 (N) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) Chest C\t6\t60\t4\t\t\t\t\t100\tgld\t15\tAct 4 (N) Junk\t15\tAct 4 (N) Equip C\t10\tAct 4 (N) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Chest A\t6\t62\t4\t\t\t\t\t100\tgld\t15\tAct 5 (N) Junk\t15\tAct 5 (N) Equip A\t10\tAct 5 (N) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Chest B\t6\t64\t4\t\t\t\t\t100\tgld\t15\tAct 5 (N) Junk\t15\tAct 5 (N) Equip B\t10\tAct 5 (N) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Chest C\t6\t66\t4\t\t\t\t\t100\tgld\t15\tAct 5 (N) Junk\t15\tAct 5 (N) Equip B\t10\tAct 5 (N) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Chest A\t6\t68\t4\t\t\t\t\t100\tgld\t15\tAct 1 (H) Junk\t15\tAct 1 (H) Equip A\t10\tAct 1 (H) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Chest B\t6\t70\t4\t\t\t\t\t100\tgld\t15\tAct 1 (H) Junk\t15\tAct 1 (H) Equip B\t10\tAct 1 (H) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Chest C\t6\t71\t4\t\t\t\t\t100\tgld\t15\tAct 1 (H) Junk\t15\tAct 1 (H) Equip B\t10\tAct 1 (H) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Chest A\t6\t72\t4\t\t\t\t\t100\tgld\t15\tAct 2 (H) Junk\t15\tAct 2 (H) Equip A\t10\tAct 2 (H) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Chest B\t6\t74\t4\t\t\t\t\t100\tgld\t15\tAct 2 (H) Junk\t15\tAct 2 (H) Equip B\t10\tAct 2 (H) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Chest C\t6\t75\t4\t\t\t\t\t100\tgld\t15\tAct 2 (H) Junk\t15\tAct 2 (H) Equip B\t10\tAct 2 (H) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Chest A\t6\t76\t4\t\t\t\t\t100\tgld\t15\tAct 3 (H) Junk\t15\tAct 3 (H) Equip A\t10\tAct 3 (H) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Chest B\t6\t78\t4\t\t\t\t\t100\tgld\t15\tAct 3 (H) Junk\t15\tAct 3 (H) Equip B\t10\tAct 3 (H) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Chest C\t6\t79\t4\t\t\t\t\t100\tgld\t15\tAct 3 (H) Junk\t15\tAct 3 (H) Equip B\t10\tAct 3 (H) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) Chest A\t6\t80\t4\t\t\t\t\t100\tgld\t15\tAct 4 (H) Junk\t15\tAct 4 (H) Equip A\t10\tAct 4 (H) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) Chest B\t6\t81\t4\t\t\t\t\t100\tgld\t15\tAct 4 (H) Junk\t15\tAct 4 (H) Equip B\t10\tAct 4 (H) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) Chest C\t6\t82\t4\t\t\t\t\t100\tgld\t15\tAct 4 (H) Junk\t15\tAct 4 (H) Equip B\t10\tAct 4 (H) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Chest A\t6\t83\t4\t\t\t\t\t100\tgld\t15\tAct 5 (H) Junk\t15\tAct 5 (H) Equip A\t10\tAct 5 (H) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Chest B\t6\t84\t4\t\t\t\t\t100\tgld\t15\tAct 5 (H) Junk\t15\tAct 5 (H) Equip B\t10\tAct 5 (H) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Chest C\t6\t85\t4\t\t\t\t\t100\tgld\t15\tAct 5 (H) Junk\t15\tAct 5 (H) Equip B\t10\tAct 5 (H) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 H2H A\t7\t0\t1\t\t\t\t\t100\tgld\t21\tAct 1 Equip A\t16\tAct 1 Junk\t21\tAct 1 Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 H2H B\t7\t5\t1\t\t\t\t\t100\tgld\t21\tAct 1 Equip B\t16\tAct 1 Junk\t21\tAct 1 Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 H2H C\t7\t9\t1\t\t\t\t\t100\tgld\t21\tAct 1 Equip C\t16\tAct 1 Junk\t21\tAct 1 Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 H2H A\t7\t12\t1\t\t\t\t\t100\tgld\t21\tAct 2 Equip A\t16\tAct 2 Junk\t21\tAct 2 Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 H2H B\t7\t15\t1\t\t\t\t\t100\tgld\t21\tAct 2 Equip B\t16\tAct 2 Junk\t21\tAct 2 Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 H2H C\t7\t18\t1\t\t\t\t\t100\tgld\t21\tAct 2 Equip C\t16\tAct 2 Junk\t21\tAct 3 Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 H2H A\t7\t20\t1\t\t\t\t\t100\tgld\t21\tAct 3 Equip A\t16\tAct 3 Junk\t21\tAct 3 Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 H2H B\t7\t22\t1\t\t\t\t\t100\tgld\t21\tAct 3 Equip B\t16\tAct 3 Junk\t21\tAct 3 Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 H2H C\t7\t24\t1\t\t\t\t\t100\tgld\t21\tAct 3 Equip C\t16\tAct 3 Junk\t21\tAct 3 Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 H2H A\t7\t26\t1\t\t\t\t\t100\tgld\t21\tAct 4 Equip A\t16\tAct 4 Junk\t21\tAct 4 Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 H2H B\t7\t29\t1\t\t\t\t\t100\tgld\t21\tAct 4 Equip B\t16\tAct 4 Junk\t21\tAct 4 Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 H2H A\t7\t32\t1\t\t\t\t\t100\tgld\t21\tAct 5 Equip A\t16\tAct 5 Junk\t21\tAct 5 Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 H2H B\t7\t34\t1\t\t\t\t\t100\tgld\t21\tAct 5 Equip B\t16\tAct 5 Junk\t21\tAct 5 Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 H2H C\t7\t36\t1\t\t\t\t\t100\tgld\t21\tAct 5 Equip C\t16\tAct 5 Junk\t21\tAct 5 Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) H2H A\t7\t38\t1\t\t\t\t\t100\tgld\t21\tAct 1 (N) Equip A\t16\tAct 1 (N) Junk\t21\tAct 1 (N) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) H2H B\t7\t40\t1\t\t\t\t\t100\tgld\t21\tAct 1 (N) Equip B\t16\tAct 1 (N) Junk\t21\tAct 1 (N) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) H2H C\t7\t41\t1\t\t\t\t\t100\tgld\t21\tAct 1 (N) Equip B\t16\tAct 1 (N) Junk\t21\tAct 1 (N) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) H2H A\t7\t42\t1\t\t\t\t\t100\tgld\t21\tAct 2 (N) Equip A\t16\tAct 2 (N) Junk\t21\tAct 2 (N) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) H2H B\t7\t44\t1\t\t\t\t\t100\tgld\t21\tAct 2 (N) Equip B\t16\tAct 2 (N) Junk\t21\tAct 2 (N) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) H2H C\t7\t45\t1\t\t\t\t\t100\tgld\t21\tAct 2 (N) Equip B\t16\tAct 2 (N) Junk\t21\tAct 2 (N) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) H2H A\t7\t46\t1\t\t\t\t\t100\tgld\t21\tAct 3 (N) Equip A\t16\tAct 3 (N) Junk\t21\tAct 3 (N) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) H2H B\t7\t48\t1\t\t\t\t\t100\tgld\t21\tAct 3 (N) Equip B\t16\tAct 3 (N) Junk\t21\tAct 3 (N) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) H2H C\t7\t50\t1\t\t\t\t\t100\tgld\t21\tAct 3 (N) Equip B\t16\tAct 3 (N) Junk\t21\tAct 3 (N) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) H2H A\t7\t51\t1\t\t\t\t\t100\tgld\t21\tAct 4 (N) Equip A\t16\tAct 4 (N) Junk\t21\tAct 4 (N) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) H2H B\t7\t54\t1\t\t\t\t\t100\tgld\t21\tAct 4 (N) Equip B\t16\tAct 4 (N) Junk\t21\tAct 4 (N) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) H2H A\t7\t57\t1\t\t\t\t\t100\tgld\t21\tAct 5 (N) Equip A\t16\tAct 5 (N) Junk\t21\tAct 5 (N) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) H2H B\t7\t60\t1\t\t\t\t\t100\tgld\t21\tAct 5 (N) Equip B\t16\tAct 5 (N) Junk\t21\tAct 5 (N) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) H2H C\t7\t62\t1\t\t\t\t\t100\tgld\t21\tAct 5 (N) Equip C\t16\tAct 5 (N) Junk\t21\tAct 5 (N) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) H2H A\t7\t63\t1\t\t\t\t\t100\tgld\t21\tAct 1 (H) Equip A\t16\tAct 1 (H) Junk\t21\tAct 1 (H) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) H2H B\t7\t66\t1\t\t\t\t\t100\tgld\t21\tAct 1 (H) Equip B\t16\tAct 1 (H) Junk\t21\tAct 1 (H) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) H2H C\t7\t68\t1\t\t\t\t\t100\tgld\t21\tAct 1 (H) Equip B\t16\tAct 1 (H) Junk\t21\tAct 1 (H) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) H2H A\t7\t69\t1\t\t\t\t\t100\tgld\t21\tAct 2 (H) Equip A\t16\tAct 1 (H) Junk\t21\tAct 2 (H) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) H2H B\t7\t71\t1\t\t\t\t\t100\tgld\t21\tAct 2 (H) Equip B\t16\tAct 1 (H) Junk\t21\tAct 2 (H) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) H2H C\t7\t73\t1\t\t\t\t\t100\tgld\t21\tAct 2 (H) Equip B\t16\tAct 1 (H) Junk\t21\tAct 2 (H) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) H2H A\t7\t74\t1\t\t\t\t\t100\tgld\t21\tAct 3 (H) Equip A\t16\tAct 1 (H) Junk\t21\tAct 3 (H) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) H2H B\t7\t76\t1\t\t\t\t\t100\tgld\t21\tAct 3 (H) Equip B\t16\tAct 1 (H) Junk\t21\tAct 3 (H) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) H2H C\t7\t77\t1\t\t\t\t\t100\tgld\t21\tAct 3 (H) Equip B\t16\tAct 1 (H) Junk\t21\tAct 3 (H) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) H2H A\t7\t79\t1\t\t\t\t\t100\tgld\t21\tAct 4 (H) Equip A\t16\tAct 1 (H) Junk\t21\tAct 4 (H) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) H2H B\t7\t80\t1\t\t\t\t\t100\tgld\t21\tAct 4 (H) Equip B\t16\tAct 1 (H) Junk\t21\tAct 4 (H) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) H2H A\t7\t82\t1\t\t\t\t\t100\tgld\t21\tAct 5 (H) Equip A\t16\tAct 1 (H) Junk\t21\tAct 5 (H) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) H2H B\t7\t83\t1\t\t\t\t\t100\tgld\t21\tAct 5 (H) Equip B\t16\tAct 1 (H) Junk\t21\tAct 5 (H) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) H2H C\t7\t85\t1\t\t\t\t\t100\tgld\t21\tAct 5 (H) Equip C\t16\tAct 1 (H) Junk\t21\tAct 5 (H) Good\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Cast A\t8\t0\t1\t\t\t\t\t100\tgld\t18\tAct 1 Equip A\t15\tAct 1 Junk\t18\tAct 1 Good\t2\tAct 1 Magic A\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Cast B\t8\t5\t1\t\t\t\t\t100\tgld\t18\tAct 1 Equip B\t15\tAct 1 Junk\t18\tAct 1 Good\t2\tAct 1 Magic B\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Cast C\t8\t9\t1\t\t\t\t\t100\tgld\t18\tAct 1 Equip C\t15\tAct 1 Junk\t18\tAct 1 Good\t2\tAct 1 Magic C\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Cast A\t8\t12\t1\t\t\t\t\t100\tgld\t18\tAct 2 Equip A\t15\tAct 2 Junk\t18\tAct 2 Good\t2\tAct 2 Magic A\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Cast B\t8\t15\t1\t\t\t\t\t100\tgld\t18\tAct 2 Equip B\t15\tAct 2 Junk\t18\tAct 2 Good\t2\tAct 2 Magic B\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Cast C\t8\t18\t1\t\t\t\t\t100\tgld\t18\tAct 2 Equip C\t15\tAct 2 Junk\t18\tAct 3 Good\t2\tAct 2 Magic C\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Cast A\t8\t20\t1\t\t\t\t\t100\tgld\t18\tAct 3 Equip A\t15\tAct 3 Junk\t18\tAct 3 Good\t2\tAct 3 Magic A\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Cast B\t8\t22\t1\t\t\t\t\t100\tgld\t18\tAct 3 Equip B\t15\tAct 3 Junk\t18\tAct 3 Good\t2\tAct 3 Magic B\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Cast C\t8\t24\t1\t\t\t\t\t100\tgld\t18\tAct 3 Equip C\t15\tAct 3 Junk\t18\tAct 3 Good\t2\tAct 3 Magic C\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 Cast A\t8\t26\t1\t\t\t\t\t100\tgld\t18\tAct 4 Equip A\t15\tAct 4 Junk\t18\tAct 4 Good\t2\tAct 4 Magic A\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 Cast B\t8\t29\t1\t\t\t\t\t100\tgld\t18\tAct 4 Equip B\t15\tAct 4 Junk\t18\tAct 4 Good\t2\tAct 4 Magic B\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Cast A\t8\t32\t1\t\t\t\t\t100\tgld\t18\tAct 5 Equip A\t15\tAct 5 Junk\t18\tAct 5 Good\t2\tAct 5 Magic A\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Cast B\t8\t34\t1\t\t\t\t\t100\tgld\t18\tAct 5 Equip B\t15\tAct 5 Junk\t18\tAct 5 Good\t2\tAct 5 Magic B\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Cast C\t8\t36\t1\t\t\t\t\t100\tgld\t18\tAct 5 Equip C\t15\tAct 5 Junk\t18\tAct 5 Good\t2\tAct 5 Magic C\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Cast A\t8\t38\t1\t\t\t\t\t100\tgld\t18\tAct 1 (N) Equip A\t15\tAct 1 (N) Junk\t18\tAct 1 (N) Good\t2\tAct 1 (N) Magic A\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Cast B\t8\t40\t1\t\t\t\t\t100\tgld\t18\tAct 1 (N) Equip B\t15\tAct 1 (N) Junk\t18\tAct 1 (N) Good\t2\tAct 1 (N) Magic B\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Cast C\t8\t41\t1\t\t\t\t\t100\tgld\t18\tAct 1 (N) Equip B\t15\tAct 1 (N) Junk\t18\tAct 1 (N) Good\t2\tAct 1 (N) Magic B\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Cast A\t8\t42\t1\t\t\t\t\t100\tgld\t18\tAct 2 (N) Equip A\t15\tAct 2 (N) Junk\t18\tAct 2 (N) Good\t2\tAct 2 (N) Magic A\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Cast B\t8\t44\t1\t\t\t\t\t100\tgld\t18\tAct 2 (N) Equip B\t15\tAct 2 (N) Junk\t18\tAct 2 (N) Good\t2\tAct 2 (N) Magic B\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Cast C\t8\t45\t1\t\t\t\t\t100\tgld\t18\tAct 2 (N) Equip B\t15\tAct 2 (N) Junk\t18\tAct 2 (N) Good\t2\tAct 2 (N) Magic B\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Cast A\t8\t46\t1\t\t\t\t\t100\tgld\t18\tAct 3 (N) Equip A\t15\tAct 3 (N) Junk\t18\tAct 3 (N) Good\t2\tAct 3 (N) Magic A\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Cast B\t8\t48\t1\t\t\t\t\t100\tgld\t18\tAct 3 (N) Equip B\t15\tAct 3 (N) Junk\t18\tAct 3 (N) Good\t2\tAct 3 (N) Magic B\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Cast C\t8\t50\t1\t\t\t\t\t100\tgld\t18\tAct 3 (N) Equip B\t15\tAct 3 (N) Junk\t18\tAct 3 (N) Good\t2\tAct 3 (N) Magic B\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) Cast A\t8\t51\t1\t\t\t\t\t100\tgld\t18\tAct 4 (N) Equip A\t15\tAct 4 (N) Junk\t18\tAct 4 (N) Good\t2\tAct 4 (N) Magic A\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) Cast B\t8\t54\t1\t\t\t\t\t100\tgld\t18\tAct 4 (N) Equip B\t15\tAct 4 (N) Junk\t18\tAct 4 (N) Good\t2\tAct 4 (N) Magic B\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Cast A\t8\t57\t1\t\t\t\t\t100\tgld\t18\tAct 5 (N) Equip A\t15\tAct 5 (N) Junk\t18\tAct 5 (N) Good\t2\tAct 5 (N) Magic A\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Cast B\t8\t60\t1\t\t\t\t\t100\tgld\t18\tAct 5 (N) Equip B\t15\tAct 5 (N) Junk\t18\tAct 5 (N) Good\t2\tAct 5 (N) Magic B\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Cast C\t8\t62\t1\t\t\t\t\t100\tgld\t18\tAct 5 (N) Equip C\t15\tAct 5 (N) Junk\t18\tAct 5 (N) Good\t2\tAct 5 (N) Magic B\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Cast A\t8\t63\t1\t\t\t\t\t100\tgld\t18\tAct 1 (H) Equip A\t15\tAct 1 (H) Junk\t18\tAct 1 (H) Good\t2\tAct 1 (H) Magic A\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Cast B\t8\t66\t1\t\t\t\t\t100\tgld\t18\tAct 1 (H) Equip B\t15\tAct 1 (H) Junk\t18\tAct 1 (H) Good\t2\tAct 1 (H) Magic B\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Cast C\t8\t68\t1\t\t\t\t\t100\tgld\t18\tAct 1 (H) Equip B\t15\tAct 1 (H) Junk\t18\tAct 1 (H) Good\t2\tAct 1 (H) Magic B\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Cast A\t8\t69\t1\t\t\t\t\t100\tgld\t18\tAct 2 (H) Equip A\t15\tAct 1 (H) Junk\t18\tAct 2 (H) Good\t2\tAct 2 (H) Magic A\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Cast B\t8\t71\t1\t\t\t\t\t100\tgld\t18\tAct 2 (H) Equip B\t15\tAct 1 (H) Junk\t18\tAct 2 (H) Good\t2\tAct 2 (H) Magic B\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Cast C\t8\t72\t1\t\t\t\t\t100\tgld\t18\tAct 2 (H) Equip B\t15\tAct 1 (H) Junk\t18\tAct 2 (H) Good\t2\tAct 2 (H) Magic B\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Cast A\t8\t74\t1\t\t\t\t\t100\tgld\t18\tAct 3 (H) Equip A\t15\tAct 1 (H) Junk\t18\tAct 3 (H) Good\t2\tAct 3 (H) Magic A\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Cast B\t8\t75\t1\t\t\t\t\t100\tgld\t18\tAct 3 (H) Equip B\t15\tAct 1 (H) Junk\t18\tAct 3 (H) Good\t2\tAct 3 (H) Magic B\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Cast C\t8\t77\t1\t\t\t\t\t100\tgld\t18\tAct 3 (H) Equip B\t15\tAct 1 (H) Junk\t18\tAct 3 (H) Good\t2\tAct 3 (H) Magic B\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) Cast A\t8\t78\t1\t\t\t\t\t100\tgld\t18\tAct 4 (H) Equip A\t15\tAct 1 (H) Junk\t18\tAct 4 (H) Good\t2\tAct 4 (H) Magic A\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) Cast B\t8\t80\t1\t\t\t\t\t100\tgld\t18\tAct 4 (H) Equip B\t15\tAct 1 (H) Junk\t18\tAct 4 (H) Good\t2\tAct 4 (H) Magic B\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Cast A\t8\t81\t1\t\t\t\t\t100\tgld\t18\tAct 5 (H) Equip A\t15\tAct 1 (H) Junk\t18\tAct 5 (H) Good\t2\tAct 5 (H) Magic A\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Cast B\t8\t83\t1\t\t\t\t\t100\tgld\t18\tAct 5 (H) Equip B\t15\tAct 1 (H) Junk\t18\tAct 5 (H) Good\t2\tAct 5 (H) Magic B\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Cast C\t8\t85\t1\t\t\t\t\t100\tgld\t18\tAct 5 (H) Equip C\t15\tAct 1 (H) Junk\t18\tAct 5 (H) Good\t2\tAct 5 (H) Magic B\t7\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Miss A\t9\t0\t1\t\t\t\t\t100\tgld\t18\tAct 1 Equip A\t13\tAct 1 Junk\t18\tAct 1 Good\t2\tAct 1 Bow A\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Miss B\t9\t5\t1\t\t\t\t\t100\tgld\t18\tAct 1 Equip B\t13\tAct 1 Junk\t18\tAct 1 Good\t2\tAct 1 Bow B\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Miss C\t9\t9\t1\t\t\t\t\t100\tgld\t18\tAct 1 Equip C\t13\tAct 1 Junk\t18\tAct 1 Good\t2\tAct 1 Bow C\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Miss A\t9\t12\t1\t\t\t\t\t100\tgld\t18\tAct 2 Equip A\t13\tAct 2 Junk\t18\tAct 2 Good\t2\tAct 2 Bow A\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Miss B\t9\t15\t1\t\t\t\t\t100\tgld\t18\tAct 2 Equip B\t13\tAct 2 Junk\t18\tAct 2 Good\t2\tAct 2 Bow B\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Miss C\t9\t18\t1\t\t\t\t\t100\tgld\t18\tAct 2 Equip C\t13\tAct 2 Junk\t18\tAct 3 Good\t2\tAct 2 Bow C\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Miss A\t9\t20\t1\t\t\t\t\t100\tgld\t18\tAct 3 Equip A\t13\tAct 3 Junk\t18\tAct 3 Good\t2\tAct 3 Bow A\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Miss B\t9\t22\t1\t\t\t\t\t100\tgld\t18\tAct 3 Equip B\t13\tAct 3 Junk\t18\tAct 3 Good\t2\tAct 3 Bow B\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Miss C\t9\t24\t1\t\t\t\t\t100\tgld\t18\tAct 3 Equip C\t13\tAct 3 Junk\t18\tAct 3 Good\t2\tAct 3 Bow C\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 Miss A\t9\t26\t1\t\t\t\t\t100\tgld\t18\tAct 4 Equip A\t13\tAct 4 Junk\t18\tAct 4 Good\t2\tAct 4 Bow A\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 Miss B\t9\t29\t1\t\t\t\t\t100\tgld\t18\tAct 4 Equip B\t13\tAct 4 Junk\t18\tAct 4 Good\t2\tAct 4 Bow B\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Miss A\t9\t32\t1\t\t\t\t\t100\tgld\t18\tAct 5 Equip A\t13\tAct 5 Junk\t18\tAct 5 Good\t2\tAct 5 Bow A\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Miss B\t9\t34\t1\t\t\t\t\t100\tgld\t18\tAct 5 Equip B\t13\tAct 5 Junk\t18\tAct 5 Good\t2\tAct 5 Bow B\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Miss C\t9\t36\t1\t\t\t\t\t100\tgld\t18\tAct 5 Equip C\t13\tAct 5 Junk\t18\tAct 5 Good\t2\tAct 5 Bow B\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Miss A\t9\t38\t1\t\t\t\t\t100\tgld\t18\tAct 1 (N) Equip A\t13\tAct 1 (N) Junk\t18\tAct 1 (N) Good\t2\tAct 1 (N) Bow A\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Miss B\t9\t40\t1\t\t\t\t\t100\tgld\t18\tAct 1 (N) Equip B\t13\tAct 1 (N) Junk\t18\tAct 1 (N) Good\t2\tAct 1 (N) Bow B\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Miss C\t9\t41\t1\t\t\t\t\t100\tgld\t18\tAct 1 (N) Equip B\t13\tAct 1 (N) Junk\t18\tAct 1 (N) Good\t2\tAct 1 (N) Bow B\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Miss A\t9\t42\t1\t\t\t\t\t100\tgld\t18\tAct 2 (N) Equip A\t13\tAct 2 (N) Junk\t18\tAct 2 (N) Good\t2\tAct 2 (N) Bow A\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Miss B\t9\t44\t1\t\t\t\t\t100\tgld\t18\tAct 2 (N) Equip B\t13\tAct 2 (N) Junk\t18\tAct 2 (N) Good\t2\tAct 2 (N) Bow B\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Miss C\t9\t45\t1\t\t\t\t\t100\tgld\t18\tAct 2 (N) Equip B\t13\tAct 2 (N) Junk\t18\tAct 2 (N) Good\t2\tAct 2 (N) Bow B\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Miss A\t9\t46\t1\t\t\t\t\t100\tgld\t18\tAct 3 (N) Equip A\t13\tAct 3 (N) Junk\t18\tAct 3 (N) Good\t2\tAct 3 (N) Bow A\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Miss B\t9\t48\t1\t\t\t\t\t100\tgld\t18\tAct 3 (N) Equip B\t13\tAct 3 (N) Junk\t18\tAct 3 (N) Good\t2\tAct 3 (N) Bow B\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Miss C\t9\t50\t1\t\t\t\t\t100\tgld\t18\tAct 3 (N) Equip B\t13\tAct 3 (N) Junk\t18\tAct 3 (N) Good\t2\tAct 3 (N) Bow B\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) Miss A\t9\t51\t1\t\t\t\t\t100\tgld\t18\tAct 4 (N) Equip A\t13\tAct 4 (N) Junk\t18\tAct 4 (N) Good\t2\tAct 4 (N) Bow A\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) Miss B\t9\t54\t1\t\t\t\t\t100\tgld\t18\tAct 4 (N) Equip B\t13\tAct 4 (N) Junk\t18\tAct 4 (N) Good\t2\tAct 4 (N) Bow B\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Miss A\t9\t57\t1\t\t\t\t\t100\tgld\t18\tAct 5 (N) Equip A\t13\tAct 5 (N) Junk\t18\tAct 5 (N) Good\t2\tAct 5 (N) Bow A\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Miss B\t9\t60\t1\t\t\t\t\t100\tgld\t18\tAct 5 (N) Equip B\t13\tAct 5 (N) Junk\t18\tAct 5 (N) Good\t2\tAct 5 (N) Bow B\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Miss C\t9\t62\t1\t\t\t\t\t100\tgld\t18\tAct 5 (N) Equip C\t13\tAct 5 (N) Junk\t18\tAct 5 (N) Good\t2\tAct 5 (N) Bow B\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Miss A\t9\t63\t1\t\t\t\t\t100\tgld\t18\tAct 1 (H) Equip A\t13\tAct 1 (H) Junk\t18\tAct 1 (H) Good\t2\tAct 1 (H) Bow A\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Miss B\t9\t66\t1\t\t\t\t\t100\tgld\t18\tAct 1 (H) Equip B\t13\tAct 1 (H) Junk\t18\tAct 1 (H) Good\t2\tAct 1 (H) Bow B\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Miss C\t9\t68\t1\t\t\t\t\t100\tgld\t18\tAct 1 (H) Equip B\t13\tAct 1 (H) Junk\t18\tAct 1 (H) Good\t2\tAct 1 (H) Bow B\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Miss A\t9\t69\t1\t\t\t\t\t100\tgld\t18\tAct 2 (H) Equip A\t13\tAct 1 (H) Junk\t18\tAct 2 (H) Good\t2\tAct 2 (H) Bow A\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Miss B\t9\t71\t1\t\t\t\t\t100\tgld\t18\tAct 2 (H) Equip B\t13\tAct 1 (H) Junk\t18\tAct 2 (H) Good\t2\tAct 2 (H) Bow B\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Miss C\t9\t72\t1\t\t\t\t\t100\tgld\t18\tAct 2 (H) Equip B\t13\tAct 1 (H) Junk\t18\tAct 2 (H) Good\t2\tAct 2 (H) Bow B\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Miss A\t9\t74\t1\t\t\t\t\t100\tgld\t18\tAct 3 (H) Equip A\t13\tAct 1 (H) Junk\t18\tAct 3 (H) Good\t2\tAct 3 (H) Bow A\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Miss B\t9\t75\t1\t\t\t\t\t100\tgld\t18\tAct 3 (H) Equip B\t13\tAct 1 (H) Junk\t18\tAct 3 (H) Good\t2\tAct 3 (H) Bow B\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Miss C\t9\t77\t1\t\t\t\t\t100\tgld\t18\tAct 3 (H) Equip B\t13\tAct 1 (H) Junk\t18\tAct 3 (H) Good\t2\tAct 3 (H) Bow B\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) Miss A\t9\t78\t1\t\t\t\t\t100\tgld\t18\tAct 4 (H) Equip A\t13\tAct 1 (H) Junk\t18\tAct 4 (H) Good\t2\tAct 4 (H) Bow A\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) Miss B\t9\t80\t1\t\t\t\t\t100\tgld\t18\tAct 4 (H) Equip B\t13\tAct 1 (H) Junk\t18\tAct 4 (H) Good\t2\tAct 4 (H) Bow B\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Miss A\t9\t81\t1\t\t\t\t\t100\tgld\t18\tAct 5 (H) Equip A\t13\tAct 1 (H) Junk\t18\tAct 5 (H) Good\t2\tAct 5 (H) Bow A\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Miss B\t9\t83\t1\t\t\t\t\t100\tgld\t18\tAct 5 (H) Equip B\t13\tAct 1 (H) Junk\t18\tAct 5 (H) Good\t2\tAct 5 (H) Bow B\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Miss C\t9\t85\t1\t\t\t\t\t100\tgld\t18\tAct 5 (H) Equip C\t13\tAct 1 (H) Junk\t18\tAct 5 (H) Good\t2\tAct 5 (H) Bow B\t6\tAmmo\t3\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Wraith A\t10\t0\t1\t\t\t\t\t75\tAct 1 Good\t4\tAct 1 Magic A\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Wraith B\t10\t5\t1\t\t\t\t\t75\tAct 1 Good\t4\tAct 1 Magic B\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Wraith C\t10\t9\t1\t\t\t\t\t75\tAct 1 Good\t4\tAct 1 Magic C\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Wraith A\t10\t12\t1\t\t\t\t\t75\tAct 2 Good\t4\tAct 2 Magic A\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Wraith B\t10\t15\t1\t\t\t\t\t75\tAct 2 Good\t4\tAct 2 Magic B\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Wraith C\t10\t18\t1\t\t\t\t\t75\tAct 3 Good\t4\tAct 2 Magic C\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Wraith A\t10\t20\t1\t\t\t\t\t75\tAct 3 Good\t4\tAct 3 Magic A\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Wraith B\t10\t22\t1\t\t\t\t\t75\tAct 3 Good\t4\tAct 3 Magic B\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Wraith C\t10\t24\t1\t\t\t\t\t75\tAct 3 Good\t4\tAct 3 Magic C\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 Wraith A\t10\t26\t1\t\t\t\t\t75\tAct 4 Good\t4\tAct 4 Magic A\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 Wraith B\t10\t29\t1\t\t\t\t\t75\tAct 4 Good\t4\tAct 4 Magic B\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Wraith A\t10\t32\t1\t\t\t\t\t75\tAct 5 Good\t4\tAct 5 Magic A\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Wraith B\t10\t34\t1\t\t\t\t\t75\tAct 5 Good\t4\tAct 5 Magic B\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Wraith C\t10\t36\t1\t\t\t\t\t75\tAct 5 Good\t4\tAct 5 Magic C\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Wraith A\t10\t38\t1\t\t\t\t\t75\tAct 1 (N) Good\t4\tAct 1 (N) Magic A\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Wraith B\t10\t40\t1\t\t\t\t\t75\tAct 1 (N) Good\t4\tAct 1 (N) Magic B\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Wraith C\t10\t41\t1\t\t\t\t\t75\tAct 1 (N) Good\t4\tAct 1 (N) Magic B\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Wraith A\t10\t42\t1\t\t\t\t\t75\tAct 2 (N) Good\t4\tAct 2 (N) Magic A\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Wraith B\t10\t44\t1\t\t\t\t\t75\tAct 2 (N) Good\t4\tAct 2 (N) Magic B\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Wraith C\t10\t45\t1\t\t\t\t\t75\tAct 2 (N) Good\t4\tAct 2 (N) Magic B\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Wraith A\t10\t46\t1\t\t\t\t\t75\tAct 3 (N) Good\t4\tAct 3 (N) Magic A\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Wraith B\t10\t48\t1\t\t\t\t\t75\tAct 3 (N) Good\t4\tAct 3 (N) Magic B\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Wraith C\t10\t50\t1\t\t\t\t\t75\tAct 3 (N) Good\t4\tAct 3 (N) Magic B\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) Wraith A\t10\t51\t1\t\t\t\t\t75\tAct 4 (N) Good\t4\tAct 4 (N) Magic A\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) Wraith B\t10\t54\t1\t\t\t\t\t75\tAct 4 (N) Good\t4\tAct 4 (N) Magic B\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Wraith A\t10\t57\t1\t\t\t\t\t75\tAct 5 (N) Good\t4\tAct 5 (N) Magic A\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Wraith B\t10\t60\t1\t\t\t\t\t75\tAct 5 (N) Good\t4\tAct 5 (N) Magic B\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Wraith C\t10\t62\t1\t\t\t\t\t75\tAct 5 (N) Good\t4\tAct 5 (N) Magic C\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Wraith A\t10\t63\t1\t\t\t\t\t75\tAct 1 (H) Good\t4\tAct 1 (H) Magic A\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Wraith B\t10\t66\t1\t\t\t\t\t75\tAct 1 (H) Good\t4\tAct 1 (H) Magic B\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Wraith C\t10\t68\t1\t\t\t\t\t75\tAct 1 (H) Good\t4\tAct 1 (H) Magic B\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Wraith A\t10\t69\t1\t\t\t\t\t75\tAct 2 (H) Good\t4\tAct 2 (H) Magic A\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Wraith B\t10\t71\t1\t\t\t\t\t75\tAct 2 (H) Good\t4\tAct 2 (H) Magic B\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Wraith C\t10\t72\t1\t\t\t\t\t75\tAct 2 (H) Good\t4\tAct 2 (H) Magic B\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Wraith A\t10\t74\t1\t\t\t\t\t75\tAct 3 (H) Good\t4\tAct 3 (H) Magic A\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Wraith B\t10\t75\t1\t\t\t\t\t75\tAct 3 (H) Good\t4\tAct 3 (H) Magic B\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Wraith C\t10\t77\t1\t\t\t\t\t75\tAct 3 (H) Good\t4\tAct 3 (H) Magic B\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) Wraith A\t10\t78\t1\t\t\t\t\t75\tAct 4 (H) Good\t4\tAct 4 (H) Magic A\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) Wraith B\t10\t80\t1\t\t\t\t\t75\tAct 4 (H) Good\t4\tAct 4 (H) Magic B\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Wraith A\t10\t81\t1\t\t\t\t\t75\tAct 5 (H) Good\t4\tAct 5 (H) Magic A\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Wraith B\t10\t83\t1\t\t\t\t\t75\tAct 5 (H) Good\t4\tAct 5 (H) Magic B\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Wraith C\t10\t85\t1\t\t\t\t\t75\tAct 5 (H) Good\t4\tAct 5 (H) Magic C\t25\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Citem A\t11\t0\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 1 Equip A\t37\tAct 1 Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Citem B\t11\t5\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 1 Equip B\t37\tAct 1 Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Citem C\t11\t9\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 1 Equip C\t37\tAct 1 Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Citem A\t11\t12\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 2 Equip A\t37\tAct 2 Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Citem B\t11\t15\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 2 Equip B\t37\tAct 2 Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Citem C\t11\t18\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 2 Equip C\t37\tAct 3 Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Citem A\t11\t20\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 3 Equip A\t37\tAct 3 Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Citem B\t11\t22\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 3 Equip B\t37\tAct 3 Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Citem C\t11\t24\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 3 Equip C\t37\tAct 3 Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 Citem A\t11\t26\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 4 Equip A\t37\tAct 4 Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 Citem B\t11\t29\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 4 Equip B\t37\tAct 4 Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Citem A\t11\t32\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 5 Equip A\t37\tAct 5 Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Citem B\t11\t34\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 5 Equip B\t37\tAct 5 Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Citem C\t11\t36\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 5 Equip C\t37\tAct 5 Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Citem A\t11\t38\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 1 (N) Equip A\t37\tAct 1 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Citem B\t11\t40\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 1 (N) Equip B\t37\tAct 1 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Citem C\t11\t41\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 1 (N) Equip B\t37\tAct 1 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Citem A\t11\t42\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 2 (N) Equip A\t37\tAct 2 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Citem B\t11\t44\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 2 (N) Equip B\t37\tAct 2 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Citem C\t11\t45\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 2 (N) Equip B\t37\tAct 2 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Citem A\t11\t46\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 3 (N) Equip A\t37\tAct 3 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Citem B\t11\t48\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 3 (N) Equip B\t37\tAct 3 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Citem C\t11\t50\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 3 (N) Equip B\t37\tAct 3 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) Citem A\t11\t51\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 4 (N) Equip A\t37\tAct 4 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) Citem B\t11\t54\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 4 (N) Equip B\t37\tAct 4 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Citem A\t11\t57\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 5 (N) Equip A\t37\tAct 5 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Citem B\t11\t60\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 5 (N) Equip B\t37\tAct 5 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Citem C\t11\t62\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 5 (N) Equip C\t37\tAct 5 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Citem A\t11\t63\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 1 (H) Equip A\t37\tAct 1 (H) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Citem B\t11\t66\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 1 (H) Equip B\t37\tAct 1 (H) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Citem C\t11\t68\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 1 (H) Equip B\t37\tAct 1 (H) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Citem A\t11\t69\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 2 (H) Equip A\t37\tAct 2 (H) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Citem B\t11\t71\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 2 (H) Equip B\t37\tAct 2 (H) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Citem C\t11\t72\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 2 (H) Equip B\t37\tAct 2 (H) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Citem A\t11\t74\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 3 (H) Equip A\t37\tAct 3 (H) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Citem B\t11\t75\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 3 (H) Equip B\t37\tAct 3 (H) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Citem C\t11\t77\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 3 (H) Equip B\t37\tAct 3 (H) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) Citem A\t11\t78\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 4 (H) Equip A\t37\tAct 4 (H) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) Citem B\t11\t80\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 4 (H) Equip B\t37\tAct 4 (H) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Citem A\t11\t81\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 5 (H) Equip A\t37\tAct 5 (H) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Citem B\t11\t83\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 5 (H) Equip B\t37\tAct 5 (H) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Citem C\t11\t85\t1\t800\t800\t800\t1024\t0\t\"gld,mul=1280\"\t60\tAct 5 (H) Equip C\t37\tAct 5 (H) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Cpot A\t12\t0\t2\t\t\t\t\t0\tHpotion 1\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Cpot B\t12\t5\t2\t\t\t\t\t0\tHpotion 1\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Cpot C\t12\t9\t2\t\t\t\t\t0\tHpotion 1\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Cpot A\t12\t12\t2\t\t\t\t\t0\tHpotion 2\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Cpot B\t12\t15\t2\t\t\t\t\t0\tHpotion 2\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Cpot C\t12\t18\t2\t\t\t\t\t0\tHpotion 2\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Cpot A\t12\t20\t2\t\t\t\t\t0\tHpotion 3\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Cpot B\t12\t22\t2\t\t\t\t\t0\tHpotion 3\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Cpot C\t12\t24\t2\t\t\t\t\t0\tHpotion 3\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 Cpot A\t12\t26\t2\t\t\t\t\t0\tHpotion 3\t1\tHpotion 4\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 Cpot B\t12\t29\t2\t\t\t\t\t0\tHpotion 3\t1\tHpotion 4\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Cpot A\t12\t32\t2\t\t\t\t\t0\tHpotion 4\t1\tHpotion 5\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Cpot B\t12\t34\t2\t\t\t\t\t0\tHpotion 4\t1\tHpotion 5\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Cpot C\t12\t36\t2\t\t\t\t\t0\tHpotion 4\t1\tHpotion 5\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Cpot A\t12\t38\t2\t\t\t\t\t0\tHpotion 4\t1\tHpotion 5\t2\tHpotion 6\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Cpot B\t12\t40\t2\t\t\t\t\t0\tHpotion 4\t1\tHpotion 5\t2\tHpotion 6\t4\t\t\t\t\t\t7\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Cpot C\t12\t41\t2\t\t\t\t\t0\tHpotion 4\t1\tHpotion 5\t2\tHpotion 6\t4\t\t\t\t\t\t7\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Cpot A\t12\t42\t2\t\t\t\t\t0\tHpotion 4\t1\tHpotion 5\t2\tHpotion 6\t4\t\t\t\t\t\t7\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Cpot B\t12\t44\t2\t\t\t\t\t0\tHpotion 4\t1\tHpotion 5\t2\tHpotion 6\t4\t\t\t\t\t\t7\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Cpot C\t12\t45\t2\t\t\t\t\t0\tHpotion 4\t1\tHpotion 5\t2\tHpotion 6\t4\t\t\t\t\t\t7\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Cpot A\t12\t46\t2\t\t\t\t\t0\trvs\t1\tHpotion 4\t2\tHpotion 5\t4\tHpotion 6\t8\t\t\t\t7\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Cpot B\t12\t48\t2\t\t\t\t\t0\trvs\t1\tHpotion 4\t2\tHpotion 5\t4\tHpotion 6\t8\t\t\t\t7\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Cpot C\t12\t50\t2\t\t\t\t\t0\trvs\t1\tHpotion 4\t2\tHpotion 5\t4\tHpotion 6\t8\t\t\t\t7\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) Cpot A\t12\t51\t2\t\t\t\t\t0\trvs\t1\tHpotion 4\t2\tHpotion 5\t4\tHpotion 6\t8\t\t\t\t7\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) Cpot B\t12\t54\t2\t\t\t\t\t0\trvs\t1\tHpotion 4\t2\tHpotion 5\t4\tHpotion 6\t8\t\t\t\t7\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Cpot A\t12\t57\t2\t\t\t\t\t0\trvs\t1\tHpotion 4\t2\tHpotion 5\t4\tHpotion 6\t8\t\t\t\t7\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Cpot B\t12\t60\t2\t\t\t\t\t0\trvs\t1\tHpotion 4\t2\tHpotion 5\t4\tHpotion 6\t8\t\t\t\t7\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Cpot C\t12\t62\t2\t\t\t\t\t0\trvs\t1\tHpotion 4\t2\tHpotion 5\t4\tHpotion 6\t8\t\t\t\t7\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Cpot A\t12\t63\t2\t\t\t\t\t0\trvl\t1\tHpotion 4\t2\tHpotion 5\t4\tHpotion 6\t8\t\t\t\t7\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Cpot B\t12\t66\t2\t\t\t\t\t0\trvl\t1\tHpotion 4\t2\tHpotion 5\t4\tHpotion 6\t8\t\t\t\t7\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Cpot C\t12\t68\t2\t\t\t\t\t0\trvl\t1\tHpotion 4\t2\tHpotion 5\t4\tHpotion 6\t8\t\t\t\t7\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Cpot A\t12\t69\t2\t\t\t\t\t0\trvl\t1\tHpotion 4\t2\tHpotion 5\t4\tHpotion 6\t8\t\t\t\t7\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Cpot B\t12\t71\t2\t\t\t\t\t0\trvl\t1\tHpotion 4\t2\tHpotion 5\t4\tHpotion 6\t8\t\t\t\t7\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Cpot C\t12\t72\t2\t\t\t\t\t0\trvl\t1\tHpotion 4\t2\tHpotion 5\t4\tHpotion 6\t8\t\t\t\t7\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Cpot A\t12\t74\t2\t\t\t\t\t0\trvl\t1\tHpotion 4\t2\tHpotion 5\t4\tHpotion 6\t8\t\t\t\t7\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Cpot B\t12\t75\t2\t\t\t\t\t0\trvl\t1\tHpotion 4\t2\tHpotion 5\t4\tHpotion 6\t8\t\t\t\t7\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Cpot C\t12\t77\t2\t\t\t\t\t0\trvl\t1\tHpotion 4\t2\tHpotion 5\t4\tHpotion 6\t8\t\t\t\t7\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) Cpot A\t12\t78\t2\t\t\t\t\t0\trvl\t1\tHpotion 4\t2\tHpotion 5\t4\tHpotion 6\t8\t\t\t\t7\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) Cpot B\t12\t80\t2\t\t\t\t\t0\trvl\t1\tHpotion 4\t2\tHpotion 5\t4\tHpotion 6\t8\t\t\t\t7\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Cpot A\t12\t81\t2\t\t\t\t\t0\trvl\t1\tHpotion 4\t2\tHpotion 5\t4\tHpotion 6\t8\t\t\t\t7\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Cpot B\t12\t83\t2\t\t\t\t\t0\trvl\t1\tHpotion 4\t2\tHpotion 5\t4\tHpotion 6\t8\t\t\t\t7\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Cpot C\t12\t85\t2\t\t\t\t\t0\trvl\t1\tHpotion 4\t2\tHpotion 5\t4\tHpotion 6\t8\t\t\t\t7\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Champ A\t13\t0\t-2\t\t\t\t\t0\tAct 1 Citem A\t1\tAct 1 Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Champ B\t13\t5\t-2\t\t\t\t\t0\tAct 1 Citem B\t1\tAct 1 Cpot B\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Champ C\t13\t9\t-2\t\t\t\t\t0\tAct 1 Citem C\t1\tAct 1 Cpot C\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Champ A\t13\t12\t-2\t\t\t\t\t0\tAct 2 Citem A\t1\tAct 2 Cpot A\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Champ B\t13\t15\t-2\t\t\t\t\t0\tAct 2 Citem B\t1\tAct 2 Cpot B\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Champ C\t13\t18\t-2\t\t\t\t\t0\tAct 2 Citem C\t1\tAct 2 Cpot C\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Champ A\t13\t20\t-2\t\t\t\t\t0\tAct 3 Citem A\t1\tAct 3 Cpot A\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Champ B\t13\t22\t-2\t\t\t\t\t0\tAct 3 Citem B\t1\tAct 3 Cpot B\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Champ C\t13\t24\t-2\t\t\t\t\t0\tAct 3 Citem C\t1\tAct 3 Cpot C\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 Champ A\t13\t26\t-2\t\t\t\t\t0\tAct 4 Citem A\t1\tAct 4 Cpot A\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 Champ B\t13\t29\t-2\t\t\t\t\t0\tAct 4 Citem B\t1\tAct 4 Cpot B\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Champ A\t13\t32\t-2\t\t\t\t\t0\tAct 5 Citem A\t1\tAct 5 Cpot A\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Champ B\t13\t34\t-2\t\t\t\t\t0\tAct 5 Citem B\t1\tAct 5 Cpot B\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Champ C\t13\t36\t-2\t\t\t\t\t0\tAct 5 Citem C\t1\tAct 5 Cpot C\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Champ A\t13\t38\t-2\t\t\t\t\t0\tAct 1 (N) Citem A\t1\tAct 1 (N) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Champ B\t13\t40\t-2\t\t\t\t\t0\tAct 1 (N) Citem B\t1\tAct 1 (N) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Champ C\t13\t41\t-2\t\t\t\t\t0\tAct 1 (N) Citem C\t1\tAct 1 (N) Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Champ A\t13\t42\t-2\t\t\t\t\t0\tAct 2 (N) Citem A\t1\tAct 2 (N) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Champ B\t13\t44\t-2\t\t\t\t\t0\tAct 2 (N) Citem B\t1\tAct 2 (N) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Champ C\t13\t45\t-2\t\t\t\t\t0\tAct 2 (N) Citem C\t1\tAct 2 (N) Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Champ A\t13\t46\t-2\t\t\t\t\t0\tAct 3 (N) Citem A\t1\tAct 3 (N) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Champ B\t13\t48\t-2\t\t\t\t\t0\tAct 3 (N) Citem B\t1\tAct 3 (N) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Champ C\t13\t50\t-2\t\t\t\t\t0\tAct 3 (N) Citem C\t1\tAct 3 (N) Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) Champ A\t13\t51\t-2\t\t\t\t\t0\tAct 4 (N) Citem A\t1\tAct 4 (N) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) Champ B\t13\t54\t-2\t\t\t\t\t0\tAct 4 (N) Citem B\t1\tAct 4 (N) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) Champ C\t13\t56\t-2\t\t\t\t\t0\tAct 4 (N) Citem B\t1\tAct 4 (N) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\nAct 5 (N) Champ A\t13\t57\t-2\t\t\t\t\t0\tAct 5 (N) Citem A\t1\tAct 5 (N) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Champ B\t13\t60\t-2\t\t\t\t\t0\tAct 5 (N) Citem B\t1\tAct 5 (N) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Champ C\t13\t62\t-2\t\t\t\t\t0\tAct 5 (N) Citem C\t1\tAct 5 (N) Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\nAct 1 (H) Champ A\t13\t63\t-2\t\t\t\t\t0\tAct 1 (H) Citem A\t1\tAct 1 (H) Cpot A\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Champ B\t13\t66\t-2\t\t\t\t\t0\tAct 1 (H) Citem B\t1\tAct 1 (H) Cpot B\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Champ C\t13\t68\t-2\t\t\t\t\t0\tAct 1 (H) Citem C\t1\tAct 1 (H) Cpot C\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Champ A\t13\t69\t-2\t\t\t\t\t0\tAct 2 (H) Citem A\t1\tAct 2 (H) Cpot A\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Champ B\t13\t71\t-2\t\t\t\t\t0\tAct 2 (H) Citem B\t1\tAct 2 (H) Cpot B\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Champ C\t13\t72\t-2\t\t\t\t\t0\tAct 2 (H) Citem C\t1\tAct 2 (H) Cpot C\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Champ A\t13\t74\t-2\t\t\t\t\t0\tAct 3 (H) Citem A\t1\tAct 3 (H) Cpot A\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Champ B\t13\t75\t-2\t\t\t\t\t0\tAct 3 (H) Citem B\t1\tAct 3 (H) Cpot B\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Champ C\t13\t77\t-2\t\t\t\t\t0\tAct 3 (H) Citem C\t1\tAct 3 (H) Cpot C\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) Champ A\t13\t78\t-2\t\t\t\t\t0\tAct 4 (H) Citem A\t1\tAct 4 (H) Cpot A\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) Champ B\t13\t80\t-2\t\t\t\t\t0\tAct 4 (H) Citem B\t1\tAct 4 (H) Cpot B\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Champ A\t13\t81\t-2\t\t\t\t\t0\tAct 5 (H) Citem A\t1\tAct 5 (H) Cpot A\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Champ B\t13\t83\t-2\t\t\t\t\t0\tAct 5 (H) Citem B\t1\tAct 5 (H) Cpot B\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Champ C\t13\t85\t-2\t\t\t\t\t0\tAct 5 (H) Citem C\t1\tAct 5 (H) Cpot C\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Uitem A\t14\t0\t1\t800\t800\t800\t1024\t0\tAct 1 Equip A\t58\tAct 1 Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Uitem B\t14\t5\t1\t800\t800\t800\t1024\t0\tAct 1 Equip B\t58\tAct 1 Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Uitem C\t14\t9\t1\t800\t800\t800\t1024\t0\tAct 1 Equip C\t58\tAct 1 Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Uitem A\t14\t12\t1\t800\t800\t800\t1024\t0\tAct 2 Equip A\t58\tAct 2 Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Uitem B\t14\t15\t1\t800\t800\t800\t1024\t0\tAct 2 Equip B\t58\tAct 2 Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Uitem C\t14\t18\t1\t800\t800\t800\t1024\t0\tAct 2 Equip C\t58\tAct 3 Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Uitem A\t14\t20\t1\t800\t800\t800\t1024\t0\tAct 3 Equip A\t58\tAct 3 Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Uitem B\t14\t22\t1\t800\t800\t800\t1024\t0\tAct 3 Equip B\t58\tAct 3 Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Uitem C\t14\t24\t1\t800\t800\t800\t1024\t0\tAct 3 Equip C\t58\tAct 3 Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 Uitem A\t14\t26\t1\t800\t800\t800\t1024\t0\tAct 4 Equip A\t58\tAct 4 Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 Uitem B\t14\t29\t1\t800\t800\t800\t1024\t0\tAct 4 Equip B\t58\tAct 4 Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Uitem A\t14\t32\t1\t800\t800\t800\t1024\t0\tAct 5 Equip A\t58\tAct 5 Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Uitem B\t14\t34\t1\t800\t800\t800\t1024\t0\tAct 5 Equip B\t58\tAct 5 Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Uitem C\t14\t36\t1\t800\t800\t800\t1024\t0\tAct 5 Equip C\t58\tAct 5 Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Uitem A\t14\t38\t1\t800\t800\t800\t1024\t0\tAct 1 (N) Equip A\t58\tAct 1 (N) Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Uitem B\t14\t40\t1\t800\t800\t800\t1024\t0\tAct 1 (N) Equip B\t58\tAct 1 (N) Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Uitem C\t14\t41\t1\t800\t800\t800\t1024\t0\tAct 1 (N) Equip B\t58\tAct 1 (N) Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Uitem A\t14\t42\t1\t800\t800\t800\t1024\t0\tAct 2 (N) Equip A\t58\tAct 2 (N) Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Uitem B\t14\t44\t1\t800\t800\t800\t1024\t0\tAct 2 (N) Equip B\t58\tAct 2 (N) Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Uitem C\t14\t45\t1\t800\t800\t800\t1024\t0\tAct 2 (N) Equip B\t58\tAct 2 (N) Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Uitem A\t14\t46\t1\t800\t800\t800\t1024\t0\tAct 3 (N) Equip A\t58\tAct 3 (N) Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Uitem B\t14\t48\t1\t800\t800\t800\t1024\t0\tAct 3 (N) Equip B\t58\tAct 3 (N) Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Uitem C\t14\t50\t1\t800\t800\t800\t1024\t0\tAct 3 (N) Equip B\t58\tAct 3 (N) Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) Uitem A\t14\t51\t1\t800\t800\t800\t1024\t0\tAct 4 (N) Equip A\t58\tAct 4 (N) Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) Uitem B\t14\t54\t1\t800\t800\t800\t1024\t0\tAct 4 (N) Equip B\t58\tAct 4 (N) Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Uitem A\t14\t57\t1\t800\t800\t800\t1024\t0\tAct 5 (N) Equip A\t58\tAct 5 (N) Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Uitem B\t14\t60\t1\t800\t800\t800\t1024\t0\tAct 5 (N) Equip B\t58\tAct 5 (N) Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Uitem C\t14\t62\t1\t800\t800\t800\t1024\t0\tAct 5 (N) Equip C\t58\tAct 5 (N) Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Uitem A\t14\t63\t1\t800\t800\t800\t1024\t0\tAct 1 (H) Equip A\t58\tAct 1 (H) Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Uitem B\t14\t66\t1\t800\t800\t800\t1024\t0\tAct 1 (H) Equip B\t58\tAct 1 (H) Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Uitem C\t14\t68\t1\t800\t800\t800\t1024\t0\tAct 1 (H) Equip B\t58\tAct 1 (H) Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Uitem A\t14\t69\t1\t800\t800\t800\t1024\t0\tAct 2 (H) Equip A\t58\tAct 2 (H) Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Uitem B\t14\t71\t1\t800\t800\t800\t1024\t0\tAct 2 (H) Equip B\t58\tAct 2 (H) Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Uitem C\t14\t72\t1\t800\t800\t800\t1024\t0\tAct 2 (H) Equip B\t58\tAct 2 (H) Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Uitem A\t14\t74\t1\t800\t800\t800\t1024\t0\tAct 3 (H) Equip A\t58\tAct 3 (H) Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Uitem B\t14\t75\t1\t800\t800\t800\t1024\t0\tAct 3 (H) Equip B\t58\tAct 3 (H) Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Uitem C\t14\t77\t1\t800\t800\t800\t1024\t0\tAct 3 (H) Equip B\t58\tAct 3 (H) Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) Uitem A\t14\t78\t1\t800\t800\t800\t1024\t0\tAct 4 (H) Equip A\t58\tAct 4 (H) Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) Uitem B\t14\t80\t1\t800\t800\t800\t1024\t0\tAct 4 (H) Equip B\t58\tAct 4 (H) Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Uitem A\t14\t81\t1\t800\t800\t800\t1024\t0\tAct 5 (H) Equip A\t58\tAct 5 (H) Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Uitem B\t14\t83\t1\t800\t800\t800\t1024\t0\tAct 5 (H) Equip B\t58\tAct 5 (H) Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Uitem C\t14\t85\t1\t800\t800\t800\t1024\t0\tAct 5 (H) Equip C\t58\tAct 5 (H) Good\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Unique A\t15\t0\t-3\t\t\t\t\t0\tAct 1 Uitem A\t1\tAct 1 Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Unique B\t15\t5\t-3\t\t\t\t\t0\tAct 1 Uitem B\t1\tAct 1 Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Unique C\t15\t9\t-3\t\t\t\t\t0\tAct 1 Uitem C\t1\tAct 1 Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Unique A\t15\t12\t-3\t\t\t\t\t0\tAct 2 Uitem A\t1\tAct 2 Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Unique B\t15\t15\t-3\t\t\t\t\t0\tAct 2 Uitem B\t1\tAct 2 Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Unique C\t15\t18\t-3\t\t\t\t\t0\tAct 2 Uitem C\t1\tAct 2 Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Unique A\t15\t20\t-3\t\t\t\t\t0\tAct 3 Uitem A\t1\tAct 3 Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Unique B\t15\t22\t-3\t\t\t\t\t0\tAct 3 Uitem B\t1\tAct 3 Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Unique C\t15\t24\t-3\t\t\t\t\t0\tAct 3 Uitem C\t1\tAct 3 Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 Unique A\t15\t26\t-3\t\t\t\t\t0\tAct 4 Uitem A\t1\tAct 4 Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 Unique B\t15\t29\t-3\t\t\t\t\t0\tAct 4 Uitem B\t1\tAct 4 Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Unique A\t15\t32\t-3\t\t\t\t\t0\tAct 5 Uitem A\t1\tAct 5 Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Unique B\t15\t34\t-3\t\t\t\t\t0\tAct 5 Uitem B\t1\tAct 5 Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Unique C\t15\t36\t-3\t\t\t\t\t0\tAct 5 Uitem C\t1\tAct 5 Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Unique A\t15\t38\t-3\t\t\t\t\t0\tAct 1 (N) Uitem A\t1\tAct 1 (N) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Unique B\t15\t40\t-3\t\t\t\t\t0\tAct 1 (N) Uitem B\t1\tAct 1 (N) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Unique C\t15\t41\t-3\t\t\t\t\t0\tAct 1 (N) Uitem C\t1\tAct 1 (N) Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Unique A\t15\t42\t-3\t\t\t\t\t0\tAct 2 (N) Uitem A\t1\tAct 2 (N) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Unique B\t15\t44\t-3\t\t\t\t\t0\tAct 2 (N) Uitem B\t1\tAct 2 (N) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Unique C\t15\t45\t-3\t\t\t\t\t0\tAct 2 (N) Uitem C\t1\tAct 2 (N) Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Unique A\t15\t46\t-3\t\t\t\t\t0\tAct 3 (N) Uitem A\t1\tAct 3 (N) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Unique B\t15\t48\t-3\t\t\t\t\t0\tAct 3 (N) Uitem B\t1\tAct 3 (N) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Unique C\t15\t50\t-3\t\t\t\t\t0\tAct 3 (N) Uitem C\t1\tAct 3 (N) Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) Unique A\t15\t51\t-3\t\t\t\t\t0\tAct 4 (N) Uitem A\t1\tAct 4 (N) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) Unique B\t15\t54\t-3\t\t\t\t\t0\tAct 4 (N) Uitem B\t1\tAct 4 (N) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Unique A\t15\t57\t-3\t\t\t\t\t0\tAct 5 (N) Uitem A\t1\tAct 5 (N) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Unique B\t15\t60\t-3\t\t\t\t\t0\tAct 5 (N) Uitem B\t1\tAct 5 (N) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Unique C\t15\t62\t-3\t\t\t\t\t0\tAct 5 (N) Uitem C\t1\tAct 5 (N) Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Unique A\t15\t63\t-3\t\t\t\t\t0\tAct 1 (H) Uitem A\t1\tAct 1 (H) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Unique B\t15\t66\t-3\t\t\t\t\t0\tAct 1 (H) Uitem B\t1\tAct 1 (H) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Unique C\t15\t68\t-3\t\t\t\t\t0\tAct 1 (H) Uitem C\t1\tAct 1 (H) Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Unique A\t15\t69\t-3\t\t\t\t\t0\tAct 2 (H) Uitem A\t1\tAct 2 (H) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Unique B\t15\t71\t-3\t\t\t\t\t0\tAct 2 (H) Uitem B\t1\tAct 2 (H) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Unique C\t15\t72\t-3\t\t\t\t\t0\tAct 2 (H) Uitem C\t1\tAct 2 (H) Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Unique A\t15\t74\t-3\t\t\t\t\t0\tAct 3 (H) Uitem A\t1\tAct 3 (H) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Unique B\t15\t75\t-3\t\t\t\t\t0\tAct 3 (H) Uitem B\t1\tAct 3 (H) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Unique C\t15\t77\t-3\t\t\t\t\t0\tAct 3 (H) Uitem C\t1\tAct 3 (H) Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) Unique A\t15\t78\t-3\t\t\t\t\t0\tAct 4 (H) Uitem A\t1\tAct 4 (H) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) Unique B\t15\t80\t-3\t\t\t\t\t0\tAct 4 (H) Uitem B\t1\tAct 4 (H) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Unique A\t15\t81\t-3\t\t\t\t\t0\tAct 5 (H) Uitem A\t1\tAct 5 (H) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Unique B\t15\t83\t-3\t\t\t\t\t0\tAct 5 (H) Uitem B\t1\tAct 5 (H) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Unique C\t15\t85\t-3\t\t\t\t\t0\tAct 5 (H) Uitem C\t1\tAct 5 (H) Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nQuill 1\t16\t0\t1\t\t\t\t\t125\tgld\t19\tAct 1 Junk\t19\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nQuill 2\t16\t4\t1\t\t\t\t\t125\tgld\t19\tAct 1 Junk\t19\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nQuill 3\t16\t8\t1\t\t\t\t\t125\tgld\t19\tAct 1 Junk\t19\tAct 1 Good\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nQuill 4\t16\t12\t1\t\t\t\t\t125\tgld\t19\tAct 1 Junk\t19\tAct 1 Good\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nQuill 5\t16\t20\t1\t\t\t\t\t125\tgld\t19\tAct 3 Junk\t19\tAct 3 Good\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nQuill 1 (N)\t16\t32\t1\t\t\t\t\t125\tgld\t19\tAct 1 (N) Junk\t19\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nQuill 2 (N)\t16\t35\t1\t\t\t\t\t125\tgld\t19\tAct 1 (N) Junk\t19\tAct 1 (N) Good\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nQuill 3 (N)\t16\t38\t1\t\t\t\t\t125\tgld\t19\tAct 1 (N) Junk\t19\tAct 1 (N) Good\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nQuill 4 (N)\t16\t40\t1\t\t\t\t\t125\tgld\t19\tAct 1 (N) Junk\t19\tAct 1 (N) Good\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nQuill 5 (N)\t16\t46\t1\t\t\t\t\t125\tgld\t19\tAct 3 (N) Junk\t19\tAct 3 (N) Good\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nQuill 1 (H)\t16\t60\t1\t\t\t\t\t125\tgld\t19\tAct 1 (H) Junk\t19\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nQuill 2 (H)\t16\t62\t1\t\t\t\t\t125\tgld\t19\tAct 1 (H) Junk\t19\tAct 1 (H) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nQuill 3 (H)\t16\t65\t1\t\t\t\t\t125\tgld\t19\tAct 1 (H) Junk\t19\tAct 1 (H) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nQuill 4 (H)\t16\t68\t1\t\t\t\t\t125\tgld\t19\tAct 1 (H) Junk\t19\tAct 1 (H) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nQuill 5 (H)\t16\t85\t1\t\t\t\t\t125\tgld\t19\tAct 3 (H) Junk\t19\tAct 3 (H) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nSwarm 1\t17\t0\t1\t\t\t\t\t125\tPotion 2\t12\tMisc 1\t6\tAct 2 Good\t1\tAct 2 Magic A\t6\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nSwarm 2\t17\t20\t1\t\t\t\t\t125\tPotion 3\t12\tMisc 2\t6\tAct 3 Good\t1\tAct 3 Magic A\t6\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nSwarm 1 (N)\t17\t40\t1\t\t\t\t\t125\tPotion 6\t12\tMisc 2\t6\tAct 2 (N) Good\t1\tAct 2 (N) Magic A\t6\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nSwarm 2 (N)\t17\t46\t1\t\t\t\t\t125\tPotion 6\t12\tMisc 2\t6\tAct 3 (N) Good\t1\tAct 3 (N) Magic A\t6\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nSwarm 1 (H)\t17\t68\t1\t\t\t\t\t125\tPotion 6\t12\tMisc 2\t6\tAct 2 (H) Good\t1\tAct 2 (H) Magic A\t6\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nSwarm 2 (H)\t17\t74\t1\t\t\t\t\t125\tPotion 6\t12\tMisc 2\t6\tAct 3 (H) Good\t1\tAct 3 (H) Magic A\t6\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAndariel\t\t\t7\t983\t983\t983\t1024\t19\t\"gld,mul=1280\"\t11\tAct 2 Equip A\t19\tAct 2 Junk\t15\tAct 2 Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAndariel (N)\t\t\t7\t983\t983\t983\t1024\t19\t\"gld,mul=1536\"\t11\tAct 2 (N) Equip A\t19\tAct 2 (N) Junk\t15\tAct 2 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAndariel (H)\t\t\t7\t983\t983\t983\t1024\t19\t\"gld,mul=2048\"\t11\tAct 2 (H) Equip A\t19\tAct 2 (H) Junk\t15\tAct 2 (H) Good\t3\ttes\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAndarielq\t\t\t7\t995\t995\t1024\t1024\t19\tAct 2 Equip A\t19\tAct 2 Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAndarielq (N)\t\t\t7\t995\t995\t1024\t1024\t19\tAct 2 (N) Equip A\t19\tAct 2 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAndarielq (H)\t\t\t7\t995\t995\t1024\t1024\t19\tAct 2 (H) Equip A\t19\tAct 2 (H) Good\t3\ttes\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nDuriel - Base\t\t\t7\t983\t983\t983\t1024\t19\t\"gld,mul=1280\"\t11\tAct 3 Equip A\t19\tAct 3 Junk\t15\tAct 3 Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nDuriel (N) - Base\t\t\t7\t983\t983\t983\t1024\t19\t\"gld,mul=1536\"\t11\tAct 3 (N) Equip A\t19\tAct 3 (N) Junk\t15\tAct 3 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nDuriel (H) - Base\t\t\t7\t983\t983\t983\t1024\t19\t\"gld,mul=2048\"\t11\tAct 3 (H) Equip A\t19\tAct 3 (H) Junk\t15\tAct 3 (H) Good\t3\ttes\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nDurielq - Base\t\t\t7\t993\t993\t1024\t1024\t19\tAct 3 Equip A\t19\tAct 3 Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nDurielq (N) - Base\t\t\t7\t993\t993\t1024\t1024\t19\tAct 3 (N) Equip A\t19\tAct 3 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nDurielq (H) - Base\t\t\t7\t993\t993\t1024\t1024\t19\tAct 3 (H) Equip A\t19\tAct 3 (H) Good\t3\ttes\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nRadament\t\t\t5\t900\t900\t900\t1024\t19\t\"gld,mul=1280\"\t11\tAct 3 Equip B\t19\tAct 3 Junk\t15\tAct 3 Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nRadament (N)\t\t\t5\t900\t900\t900\t1024\t19\t\"gld,mul=1536\"\t11\tAct 3 (N) Equip B\t19\tAct 3 (N) Junk\t15\tAct 3 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nRadament (H)\t\t\t5\t900\t900\t900\t1024\t19\t\"gld,mul=2048\"\t11\tAct 3 (H) Equip C\t19\tAct 3 (H) Junk\t15\tAct 3 (H) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nFlying Scimitar\t\t\t1\t\t\t\t\t100\tAct 2 Good\t3\tscm\t57\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nFlying Scimitar (N)\t\t\t1\t\t\t\t\t100\tAct 2 (N) Good\t3\tscm\t25\t9sm\t32\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nFlying Scimitar (H)\t\t\t1\t\t\t\t\t100\tAct 2 (H) Good\t3\tscm\t7\t9sm\t18\t7sm\t32\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nMephisto\t\t\t7\t983\t983\t983\t1024\t15\t\"gld,mul=1280\"\t5\tAct 4 Equip A\t52\tAct 4 Junk\t5\tAct 4 Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nMephisto (N)\t\t\t7\t983\t983\t983\t1024\t15\t\"gld,mul=1536\"\t5\tAct 4 (N) Equip A\t52\tAct 4 (N) Junk\t5\tAct 4 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nMephisto (H)\t\t\t7\t983\t983\t983\t1024\t15\t\"gld,mul=2048\"\t5\tAct 4 (H) Equip A\t52\tAct 4 (H) Junk\t5\tAct 4 (H) Good\t3\tceh\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nMephistoq\t\t\t7\t993\t993\t1024\t1024\t15\tAct 4 Equip A\t52\tAct 4 Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nMephistoq (N)\t\t\t7\t993\t993\t1024\t1024\t15\tAct 4 (N) Equip A\t52\tAct 4 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nMephistoq (H)\t\t\t7\t993\t993\t1024\t1024\t15\tAct 4 (H) Equip A\t52\tAct 4 (H) Good\t3\tceh\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nDiablo\t\t\t7\t983\t983\t983\t1024\t15\t\"gld,mul=1280\"\t5\tAct 5 Equip A\t52\tAct 5 Junk\t5\tAct 5 Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nDiablo (N)\t\t\t7\t983\t983\t983\t1024\t15\t\"gld,mul=1536\"\t5\tAct 5 (N) Equip A\t52\tAct 5 (N) Junk\t5\tAct 5 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nDiablo (H)\t\t\t7\t983\t983\t983\t1024\t15\t\"gld,mul=2048\"\t5\tAct 5 (H) Equip A\t52\tAct 5 (H) Junk\t5\tAct 5 (H) Good\t3\tbet\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nDiabloq\t\t\t7\t993\t993\t1024\t1024\t15\tAct 5 Equip A\t52\tAct 5 Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nDiabloq (N)\t\t\t7\t993\t993\t1024\t1024\t15\tAct 5 (N) Equip A\t52\tAct 5 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nDiabloq (H)\t\t\t7\t993\t993\t1024\t1024\t15\tAct 5 (H) Equip A\t52\tAct 5 (H) Good\t3\tbet\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nSummoner\t\t\t5\t900\t900\t972\t1024\t19\t\"gld,mul=1280\"\t9\tAct 2 Equip C\t15\tAct 3 Junk\t5\tAct 2 Good\t3\tAct 3 Magic A\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nSummoner (N)\t\t\t5\t900\t900\t972\t1024\t19\t\"gld,mul=1536\"\t9\tAct 2 (N) Equip C\t15\tAct 3 (N) Junk\t5\tAct 2 (N) Good\t3\tAct 3 (N) Magic A\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nSummoner (H)\t\t\t5\t900\t900\t972\t1024\t19\t\"gld,mul=2048\"\t9\tAct 2 (H) Equip C\t15\tAct 3 (H) Junk\t5\tAct 2 (H) Good\t3\tAct 3 (H) Magic A\t4\tpk2\t1\t\t\t\t\t\t\t\t\t\t\t\t0\r\nCouncil\t\t\t3\t650\t800\t800\t1024\t19\t\"gld,mul=1280\"\t9\tAct 4 Equip A\t15\tAct 4 Junk\t5\tAct 4 Good\t3\tAct 4 Magic A\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nCouncil (N)\t\t\t3\t650\t800\t800\t1024\t19\t\"gld,mul=1536\"\t9\tAct 4 (N) Equip A\t15\tAct 4 (N) Junk\t5\tAct 4 (N) Good\t3\tAct 4 (N) Magic A\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nCouncil (H)\t\t\t3\t650\t800\t800\t1024\t19\t\"gld,mul=2048\"\t9\tAct 4 (H) Equip A\t15\tAct 4 (H) Junk\t5\tAct 4 (H) Good\t3\tAct 4 (H) Magic A\t4\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nGriswold\t\t\t-3\t\t\t\t\t0\tAct 1 Uitem C\t1\tAct 1 Melee B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nGriswold (N)\t\t\t-3\t\t\t\t\t0\tAct 1 (H) Uitem C\t1\tAct 1 (N) Melee B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nGriswold (H)\t\t\t-3\t\t\t\t\t0\tAct 1 (H) Uitem C\t1\tAct 1 (H) Melee B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nCow\t\t\t1\t\t\t\t\t100\tgld\t19\tAct 5 Equip A\t19\tAct 5 Junk\t19\tAct 5 Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nCow (N)\t\t\t1\t\t\t\t\t100\tgld\t19\tAct 5 (N) Equip A\t19\tAct 5 (N) Junk\t19\tAct 5 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nCow (H)\t\t\t1\t\t\t\t\t100\tgld\t19\tAct 5 (H) Equip B\t19\tAct 5 (H) Junk\t19\tAct 5 (H) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nTrapped Soul\t\t\t1\t\t\t\t\t100\tgld\t19\tAct 4 Equip A\t8\tAct 4 Junk\t33\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nTrapped Soul (N)\t\t\t1\t\t\t\t\t100\tgld\t19\tAct 4 (N) Equip A\t8\tAct 4 (N) Junk\t33\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nTrapped Soul (H)\t\t\t1\t\t\t\t\t100\tgld\t19\tAct 4 (H) Equip A\t8\tAct 4 (H) Junk\t33\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nHaphesto\t\t\t5\t800\t800\t900\t1024\t19\t\"gld,mul=1280\"\t14\tAct 5 Equip A\t19\tAct 5 Junk\t5\tAct 5 Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nHaphesto (N)\t\t\t5\t800\t800\t900\t1024\t19\t\"gld,mul=1536\"\t14\tAct 5 (N) Equip A\t19\tAct 5 (N) Junk\t5\tAct 5 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nHaphesto (H)\t\t\t5\t800\t800\t900\t1024\t19\t\"gld,mul=2048\"\t14\tAct 5 (H) Equip A\t19\tAct 5 (H) Junk\t5\tAct 5 (H) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nNihlathak\t\t\t5\t900\t900\t900\t1024\t19\t\"gld,mul=1280\"\t14\tAct 5 Equip B\t19\tAct 5 Junk\t5\tAct 5 Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nNihlathak (N)\t\t\t5\t900\t900\t900\t1024\t19\t\"gld,mul=1536\"\t14\tAct 5 (N) Equip B\t19\tAct 5 (N) Junk\t5\tAct 5 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nNihlathak (H)\t\t\t5\t900\t900\t900\t1024\t19\t\"gld,mul=2048\"\t14\tAct 5 (H) Equip B\t19\tAct 5 (H) Junk\t5\tAct 5 (H) Good\t3\tpk3\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nBaal\t\t\t7\t983\t983\t983\t1024\t15\t\"gld,mul=1280\"\t5\tAct 1 (N) Equip A\t52\tAct 1 (N) Junk\t5\tAct 1 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nBaal (N)\t\t\t7\t983\t983\t983\t1024\t15\t\"gld,mul=1536\"\t5\tAct 1 (H) Equip A\t52\tAct 1 (H) Junk\t5\tAct 1 (H) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nBaal (H)\t\t\t7\t983\t983\t983\t1024\t15\t\"gld,mul=2048\"\t5\tAct 5 (H) Equip B\t52\tAct 5 (H) Junk\t5\tAct 5 (H) Good\t3\tfed\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nBaalq\t\t\t7\t993\t993\t1024\t1024\t15\tAct 1 (N) Equip A\t52\tAct 1 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nBaalq (N)\t\t\t7\t993\t993\t1024\t1024\t15\tAct 1 (H) Equip A\t52\tAct 1 (H) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nBaalq (H)\t\t\t7\t993\t993\t1024\t1024\t15\tAct 5 (H) Equip B\t52\tAct 5 (H) Good\t3\tfed\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nBlood Raven\t\t\t5\t800\t800\t972\t1024\t19\t\"gld,mul=1280\"\t14\tAct 1 Equip B\t19\tAct 1 Junk\t5\tAct 1 Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nBlood Raven (N)\t\t\t5\t800\t800\t972\t1024\t19\t\"gld,mul=1536\"\t14\tAct 1 (N) Equip B\t19\tAct 1 (N) Junk\t5\tAct 1 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nBlood Raven (H)\t\t\t5\t800\t800\t972\t1024\t19\t\"gld,mul=2048\"\t14\tAct 1 (H) Equip B\t19\tAct 1 (H) Junk\t5\tAct 1 (H) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nSmith\t\t\t-3\t\t\t\t\t0\tAct 1 Uitem C\t1\tAct 1 Melee B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nSmith (N)\t\t\t-3\t\t\t\t\t0\tAct 1 (H) Uitem C\t1\tAct 1 (N) Melee B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nSmith (H)\t\t\t-3\t\t\t\t\t0\tAct 1 (H) Uitem C\t1\tAct 1 (H) Melee B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nIzual\t\t\t5\t800\t800\t972\t1024\t19\t\"gld,mul=1280\"\t14\tAct 4 Equip B\t19\tAct 4 Junk\t5\tAct 4 Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nIzual (N)\t\t\t5\t800\t800\t972\t1024\t19\t\"gld,mul=1536\"\t14\tAct 4 (N) Equip B\t19\tAct 4 (N) Junk\t5\tAct 4 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nIzual (H)\t\t\t5\t800\t800\t972\t1024\t19\t\"gld,mul=2048\"\t14\tAct 4 (H) Equip B\t19\tAct 4 (H) Junk\t5\tAct 4 (H) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Super A\t18\t0\t-4\t800\t800\t972\t1024\t0\tAct 1 Uitem A\t2\tAct 1 Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Super B\t18\t5\t-4\t800\t800\t972\t1024\t0\tAct 1 Uitem B\t2\tAct 1 Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Super C\t18\t9\t-4\t800\t800\t972\t1024\t0\tAct 1 Uitem C\t2\tAct 1 Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Super A\t18\t12\t-4\t800\t800\t972\t1024\t0\tAct 2 Uitem A\t2\tAct 2 Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Super B\t18\t15\t-4\t800\t800\t972\t1024\t0\tAct 2 Uitem B\t2\tAct 2 Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Super C\t18\t18\t-4\t800\t800\t972\t1024\t0\tAct 2 Uitem C\t2\tAct 2 Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Super A\t18\t20\t-4\t800\t800\t972\t1024\t0\tAct 3 Uitem A\t2\tAct 3 Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Super B\t18\t22\t-4\t800\t800\t972\t1024\t0\tAct 3 Uitem B\t2\tAct 3 Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Super C\t18\t24\t-4\t800\t800\t972\t1024\t0\tAct 3 Uitem C\t2\tAct 3 Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 Super A\t18\t26\t-4\t800\t800\t972\t1024\t0\tAct 4 Uitem A\t2\tAct 4 Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 Super B\t18\t29\t-4\t800\t800\t972\t1024\t0\tAct 4 Uitem B\t2\tAct 4 Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 Super C\t18\t32\t-4\t800\t800\t972\t1024\t0\tAct 4 Uitem B\t2\tAct 4 Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Super A\t18\t34\t-4\t800\t800\t972\t1024\t0\tAct 5 Uitem A\t2\tAct 5 Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Super B\t18\t36\t-4\t800\t800\t972\t1024\t0\tAct 5 Uitem B\t2\tAct 5 Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Super C\t18\t38\t-4\t800\t800\t972\t1024\t0\tAct 5 Uitem C\t2\tAct 5 Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Super A\t18\t40\t-4\t800\t800\t972\t1024\t0\tAct 1 (N) Uitem A\t2\tAct 1 (N) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Super B\t18\t41\t-4\t800\t800\t972\t1024\t0\tAct 1 (N) Uitem B\t2\tAct 1 (N) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Super C\t18\t42\t-4\t800\t800\t972\t1024\t0\tAct 1 (N) Uitem C\t2\tAct 1 (N) Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Super A\t18\t44\t-4\t800\t800\t972\t1024\t0\tAct 2 (N) Uitem A\t2\tAct 2 (N) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Super B\t18\t45\t-4\t800\t800\t972\t1024\t0\tAct 2 (N) Uitem B\t2\tAct 2 (N) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Super C\t18\t46\t-4\t800\t800\t972\t1024\t0\tAct 2 (N) Uitem C\t2\tAct 2 (N) Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Super A\t18\t48\t-4\t800\t800\t972\t1024\t0\tAct 3 (N) Uitem A\t2\tAct 3 (N) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Super B\t18\t50\t-4\t800\t800\t972\t1024\t0\tAct 3 (N) Uitem B\t2\tAct 3 (N) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Super C\t18\t51\t-4\t800\t800\t972\t1024\t0\tAct 3 (N) Uitem C\t2\tAct 3 (N) Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) Super A\t18\t54\t-4\t800\t800\t972\t1024\t0\tAct 4 (N) Uitem A\t2\tAct 4 (N) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) Super B\t18\t57\t-4\t800\t800\t972\t1024\t0\tAct 4 (N) Uitem B\t2\tAct 4 (N) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) Super C\t18\t60\t-4\t800\t800\t972\t1024\t0\tAct 4 (N) Uitem B\t2\tAct 4 (N) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Super A\t18\t62\t-4\t800\t800\t972\t1024\t0\tAct 5 (N) Uitem A\t2\tAct 5 (N) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Super B\t18\t63\t-4\t800\t800\t972\t1024\t0\tAct 5 (N) Uitem B\t2\tAct 5 (N) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Super C\t18\t66\t-4\t800\t800\t972\t1024\t0\tAct 5 (N) Uitem C\t2\tAct 5 (N) Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Super A\t18\t67\t-4\t800\t800\t972\t1024\t0\tAct 1 (H) Uitem A\t2\tAct 1 (H) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Super B\t18\t67\t-4\t800\t800\t972\t1024\t0\tAct 1 (H) Uitem B\t2\tAct 1 (H) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Super C\t18\t68\t-4\t800\t800\t972\t1024\t0\tAct 1 (H) Uitem C\t2\tAct 1 (H) Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Super A\t18\t68\t-4\t800\t800\t972\t1024\t0\tAct 2 (H) Uitem A\t2\tAct 2 (H) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Super B\t18\t69\t-4\t800\t800\t972\t1024\t0\tAct 2 (H) Uitem B\t2\tAct 2 (H) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Super C\t18\t72\t-4\t800\t800\t972\t1024\t0\tAct 2 (H) Uitem C\t2\tAct 2 (H) Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Super A\t18\t73\t-4\t800\t800\t972\t1024\t0\tAct 3 (H) Uitem A\t2\tAct 3 (H) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Super B\t18\t75\t-4\t800\t800\t972\t1024\t0\tAct 3 (H) Uitem B\t2\tAct 3 (H) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Super C\t18\t78\t-4\t800\t800\t972\t1024\t0\tAct 3 (H) Uitem C\t2\tAct 3 (H) Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) Super A\t18\t81\t-4\t800\t800\t972\t1024\t0\tAct 4 (H) Uitem A\t2\tAct 4 (H) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) Super B\t18\t84\t-4\t800\t800\t972\t1024\t0\tAct 4 (H) Uitem B\t2\tAct 4 (H) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) Super C\t18\t87\t-4\t800\t800\t972\t1024\t0\tAct 4 (H) Uitem B\t2\tAct 4 (H) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Super A\t18\t90\t-4\t800\t800\t972\t1024\t0\tAct 5 (H) Uitem A\t2\tAct 5 (H) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Super B\t18\t93\t-4\t800\t800\t972\t1024\t0\tAct 5 (H) Uitem B\t2\tAct 5 (H) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Super C\t18\t96\t-4\t800\t800\t972\t1024\t0\tAct 5 (H) Uitem C\t2\tAct 5 (H) Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Super Ax\t18\t0\t-4\t512\t654\t972\t1024\t0\tAct 1 Uitem A\t2\tAct 1 Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Super Bx\t18\t5\t-4\t512\t654\t972\t1024\t0\tAct 1 Uitem B\t2\tAct 1 Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 Super Cx\t18\t9\t-4\t512\t654\t972\t1024\t0\tAct 1 Uitem C\t2\tAct 1 Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Super Ax\t18\t12\t-4\t512\t654\t972\t1024\t0\tAct 2 Uitem A\t2\tAct 2 Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Super Bx\t18\t15\t-4\t512\t654\t972\t1024\t0\tAct 2 Uitem B\t2\tAct 2 Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 Super Cx\t18\t18\t-4\t512\t654\t972\t1024\t0\tAct 2 Uitem C\t2\tAct 2 Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Super Ax\t18\t20\t-4\t512\t654\t972\t1024\t0\tAct 3 Uitem A\t2\tAct 3 Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Super Bx\t18\t22\t-4\t512\t654\t972\t1024\t0\tAct 3 Uitem B\t2\tAct 3 Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 Super Cx\t18\t24\t-4\t512\t654\t972\t1024\t0\tAct 3 Uitem C\t2\tAct 3 Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 Super Ax\t18\t26\t-4\t512\t654\t972\t1024\t0\tAct 4 Uitem A\t2\tAct 4 Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 Super Bx\t18\t29\t-4\t512\t654\t972\t1024\t0\tAct 4 Uitem B\t2\tAct 4 Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 Super Cx\t18\t32\t-4\t512\t654\t972\t1024\t0\tAct 4 Uitem B\t2\tAct 4 Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Super Ax\t18\t34\t-4\t512\t654\t972\t1024\t0\tAct 5 Uitem A\t2\tAct 5 Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Super Bx\t18\t36\t-4\t512\t654\t972\t1024\t0\tAct 5 Uitem B\t2\tAct 5 Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 Super Cx\t18\t38\t-4\t512\t654\t972\t1024\t0\tAct 5 Uitem C\t2\tAct 5 Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Super Ax\t18\t40\t-4\t512\t654\t972\t1024\t0\tAct 1 (N) Uitem A\t2\tAct 1 (N) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Super Bx\t18\t41\t-4\t512\t654\t972\t1024\t0\tAct 1 (N) Uitem B\t2\tAct 1 (N) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (N) Super Cx\t18\t42\t-4\t512\t654\t972\t1024\t0\tAct 1 (N) Uitem C\t2\tAct 1 (N) Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Super Ax\t18\t44\t-4\t512\t654\t972\t1024\t0\tAct 2 (N) Uitem A\t2\tAct 2 (N) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Super Bx\t18\t45\t-4\t512\t654\t972\t1024\t0\tAct 2 (N) Uitem B\t2\tAct 2 (N) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (N) Super Cx\t18\t46\t-4\t512\t654\t972\t1024\t0\tAct 2 (N) Uitem C\t2\tAct 2 (N) Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Super Ax\t18\t48\t-4\t512\t654\t972\t1024\t0\tAct 3 (N) Uitem A\t2\tAct 3 (N) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Super Bx\t18\t50\t-4\t512\t654\t972\t1024\t0\tAct 3 (N) Uitem B\t2\tAct 3 (N) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (N) Super Cx\t18\t51\t-4\t512\t654\t972\t1024\t0\tAct 3 (N) Uitem C\t2\tAct 3 (N) Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) Super Ax\t18\t54\t-4\t512\t654\t972\t1024\t0\tAct 4 (N) Uitem A\t2\tAct 4 (N) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) Super Bx\t18\t57\t-4\t512\t654\t972\t1024\t0\tAct 4 (N) Uitem B\t2\tAct 4 (N) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (N) Super Cx\t18\t60\t-4\t512\t654\t972\t1024\t0\tAct 4 (N) Uitem B\t2\tAct 4 (N) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Super Ax\t18\t62\t-4\t512\t654\t972\t1024\t0\tAct 5 (N) Uitem A\t2\tAct 5 (N) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Super Bx\t18\t63\t-4\t512\t654\t972\t1024\t0\tAct 5 (N) Uitem B\t2\tAct 5 (N) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (N) Super Cx\t18\t66\t-4\t512\t654\t972\t1024\t0\tAct 5 (N) Uitem C\t2\tAct 5 (N) Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Super Ax\t18\t67\t-4\t512\t654\t972\t1024\t0\tAct 1 (H) Uitem A\t2\tAct 1 (H) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Super Bx\t18\t67\t-4\t512\t654\t972\t1024\t0\tAct 1 (H) Uitem B\t2\tAct 1 (H) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 1 (H) Super Cx\t18\t68\t-4\t512\t654\t972\t1024\t0\tAct 1 (H) Uitem C\t2\tAct 1 (H) Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Super Ax\t18\t68\t-4\t512\t654\t972\t1024\t0\tAct 2 (H) Uitem A\t2\tAct 2 (H) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Super Bx\t18\t69\t-4\t512\t654\t972\t1024\t0\tAct 2 (H) Uitem B\t2\tAct 2 (H) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 2 (H) Super Cx\t18\t72\t-4\t512\t654\t972\t1024\t0\tAct 2 (H) Uitem C\t2\tAct 2 (H) Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Super Ax\t18\t73\t-4\t512\t654\t972\t1024\t0\tAct 3 (H) Uitem A\t2\tAct 3 (H) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Super Bx\t18\t75\t-4\t512\t654\t972\t1024\t0\tAct 3 (H) Uitem B\t2\tAct 3 (H) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 3 (H) Super Cx\t18\t78\t-4\t512\t654\t972\t1024\t0\tAct 3 (H) Uitem C\t2\tAct 3 (H) Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) Super Ax\t18\t81\t-4\t512\t654\t972\t1024\t0\tAct 4 (H) Uitem A\t2\tAct 4 (H) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) Super Bx\t18\t84\t-4\t512\t654\t972\t1024\t0\tAct 4 (H) Uitem B\t2\tAct 4 (H) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 4 (H) Super Cx\t18\t87\t-4\t512\t654\t972\t1024\t0\tAct 4 (H) Uitem B\t2\tAct 4 (H) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Super Ax\t18\t90\t-4\t512\t654\t972\t1024\t0\tAct 5 (H) Uitem A\t2\tAct 5 (H) Cpot A\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Super Bx\t18\t93\t-4\t512\t654\t972\t1024\t0\tAct 5 (H) Uitem B\t2\tAct 5 (H) Cpot B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nAct 5 (H) Super Cx\t18\t96\t-4\t512\t654\t972\t1024\t0\tAct 5 (H) Uitem C\t2\tAct 5 (H) Cpot C\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nCow King\t\t\t5\t850\t983\t983\t1024\t0\tAct 1 Uitem C\t1\tAct 1 Melee B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nCow King (N)\t\t\t5\t850\t983\t983\t1024\t0\tAct 1 (H) Uitem C\t1\tAct 1 (N) Melee B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nCow King (H)\t\t\t5\t850\t983\t983\t1024\t0\tAct 1 (H) Uitem C\t1\tAct 1 (H) Melee B\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nDuriel\t\t\t5\t\t\t\t\t0\ttsc\t1\tDuriel - Base\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nDuriel (N)\t\t\t5\t\t\t\t\t0\ttsc\t1\tDuriel (N) - Base\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nDuriel (H)\t\t\t5\t\t\t\t\t0\ttsc\t1\tDuriel (H) - Base\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nDurielq\t\t\t5\t\t\t\t\t0\ttsc\t1\tDurielq - Base\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nDurielq (N)\t\t\t5\t\t\t\t\t0\ttsc\t1\tDurielq (N) - Base\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nDurielq (H)\t\t\t5\t\t\t\t\t0\ttsc\t1\tDurielq (H) - Base\t2\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nROP\t\t\t1\t1024\t\t\t\t0\tDiablo\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nROP (N)\t\t\t1\t1024\t\t\t\t0\tDiablo (N)\t4\tAnnihilus\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nROP (H)\t\t\t1\t1024\t\t\t\t0\tAnnihilus\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nCountess Rune\t\t\t3\t\t\t\t\t5\tRunes 4\t15\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nCountess Rune (N)\t\t\t3\t\t\t\t\t5\tRunes 8\t15\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nCountess Rune (H)\t\t\t3\t\t\t\t\t5\tRunes 12\t15\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nCountess Item\t\t\t5\t\t\t\t\t19\t\"gld,mul=1280\"\t11\tAct 1 Equip C\t19\tAct 2 Junk\t15\tAct 2 Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nCountess Item (N)\t\t\t5\t\t\t\t\t19\t\"gld,mul=1536\"\t11\tAct 1 (N) Equip C\t19\tAct 2 (N) Junk\t15\tAct 2 (N) Good\t3\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nCountess Item (H)\t\t\t5\t\t\t\t\t19\t\"gld,mul=2048\"\t11\tAct 1 (H) Equip C\t19\tAct 2 (H) Junk\t15\tAct 2 (H) Good\t3\tpk1\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nCountess\t\t\t-2\t883\t883\t883\t1024\t0\tCountess Item\t1\tCountess Rune\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nCountess (N)\t\t\t-2\t883\t883\t983\t1024\t0\tCountess Item (N)\t1\tCountess Rune (N)\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nCountess (H)\t\t\t-2\t883\t883\t983\t1024\t0\tCountess Item (H)\t1\tCountess Rune (H)\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nUber Andariel\t\t\t1\t1024\t\t\t\t0\tdhn\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nUber Duriel\t\t\t1\t1024\t\t\t\t0\tbey\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nUber Izual\t\t\t1\t1024\t\t\t\t0\tmbr\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nPandemonium Key A\t\t\t1\t1024\t\t\t\t0\tpk1\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nPandemonium Key B\t\t\t1\t1024\t\t\t\t0\tpk2\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\nPandemonium Key C\t\t\t1\t1024\t\t\t\t0\tpk3\t1\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\r\n";
export const CANONICAL_AUTO_TCS_DATA: readonly {
readonly name: string;
readonly level: number;
readonly picks: number;
readonly totalProb: number;
readonly entries: readonly { readonly itemCode: string; readonly prob: number }[];
}[] = [{"name":"weap3","level":3,"picks":1,"totalProb":26,"entries":[{"itemCode":"hax","prob":3},{"itemCode":"wnd","prob":1},{"itemCode":"clb","prob":1},{"itemCode":"scp","prob":2},{"itemCode":"ssd","prob":3},{"itemCode":"dgr","prob":2},{"itemCode":"tkf","prob":2},{"itemCode":"jav","prob":4},{"itemCode":"sst","prob":2},{"itemCode":"sbw","prob":2},{"itemCode":"ktr","prob":2},{"itemCode":"ob1","prob":2}]},{"name":"weap6","level":6,"picks":1,"totalProb":22,"entries":[{"itemCode":"lax","prob":4},{"itemCode":"spc","prob":3},{"itemCode":"scm","prob":3},{"itemCode":"spr","prob":4},{"itemCode":"bar","prob":4},{"itemCode":"hbw","prob":2},{"itemCode":"lxb","prob":2}]},{"name":"weap9","level":9,"picks":1,"totalProb":28,"entries":[{"itemCode":"axe","prob":4},{"itemCode":"mac","prob":4},{"itemCode":"sbr","prob":3},{"itemCode":"dir","prob":2},{"itemCode":"tax","prob":2},{"itemCode":"tri","prob":4},{"itemCode":"lst","prob":2},{"itemCode":"lbw","prob":2},{"itemCode":"wrb","prob":2},{"itemCode":"ob2","prob":3}]},{"name":"weap12","level":12,"picks":1,"totalProb":32,"entries":[{"itemCode":"bax","prob":4},{"itemCode":"ywn","prob":1},{"itemCode":"flc","prob":4},{"itemCode":"crs","prob":2},{"itemCode":"2hs","prob":4},{"itemCode":"pil","prob":4},{"itemCode":"vou","prob":4},{"itemCode":"cst","prob":2},{"itemCode":"cbw","prob":2},{"itemCode":"axf","prob":2},{"itemCode":"ob3","prob":3}]},{"name":"weap15","level":15,"picks":1,"totalProb":30,"entries":[{"itemCode":"2ax","prob":4},{"itemCode":"gsc","prob":4},{"itemCode":"mst","prob":4},{"itemCode":"bsd","prob":4},{"itemCode":"bkf","prob":2},{"itemCode":"ssp","prob":4},{"itemCode":"scy","prob":4},{"itemCode":"mxb","prob":2},{"itemCode":"ces","prob":2}]},{"name":"weap18","level":18,"picks":1,"totalProb":33,"entries":[{"itemCode":"btx","prob":4},{"itemCode":"bwn","prob":1},{"itemCode":"clm","prob":4},{"itemCode":"kri","prob":2},{"itemCode":"bal","prob":2},{"itemCode":"brn","prob":4},{"itemCode":"bst","prob":2},{"itemCode":"sbb","prob":2},{"itemCode":"clw","prob":2},{"itemCode":"ob4","prob":4},{"itemCode":"am1","prob":3},{"itemCode":"am3","prob":3}]},{"name":"weap21","level":21,"picks":1,"totalProb":34,"entries":[{"itemCode":"mpi","prob":4},{"itemCode":"wsp","prob":4},{"itemCode":"fla","prob":4},{"itemCode":"mau","prob":4},{"itemCode":"lsd","prob":4},{"itemCode":"gis","prob":4},{"itemCode":"spt","prob":4},{"itemCode":"pax","prob":4},{"itemCode":"btl","prob":2}]},{"name":"weap24","level":24,"picks":1,"totalProb":35,"entries":[{"itemCode":"gax","prob":4},{"itemCode":"bsw","prob":4},{"itemCode":"bld","prob":3},{"itemCode":"glv","prob":4},{"itemCode":"pik","prob":4},{"itemCode":"wst","prob":2},{"itemCode":"lbb","prob":2},{"itemCode":"hxb","prob":2},{"itemCode":"skr","prob":2},{"itemCode":"ob5","prob":5},{"itemCode":"am5","prob":3}]},{"name":"weap27","level":27,"picks":1,"totalProb":29,"entries":[{"itemCode":"wax","prob":4},{"itemCode":"gix","prob":4},{"itemCode":"gwn","prob":1},{"itemCode":"whm","prob":4},{"itemCode":"wsd","prob":4},{"itemCode":"flb","prob":4},{"itemCode":"swb","prob":2},{"itemCode":"am2","prob":3},{"itemCode":"am4","prob":3}]},{"name":"weap30","level":30,"picks":1,"totalProb":22,"entries":[{"itemCode":"tsp","prob":4},{"itemCode":"hal","prob":4},{"itemCode":"9cl","prob":1},{"itemCode":"9ss","prob":3},{"itemCode":"9ja","prob":4},{"itemCode":"8ss","prob":2},{"itemCode":"8sb","prob":2},{"itemCode":"9ar","prob":2}]},{"name":"weap33","level":33,"picks":1,"totalProb":38,"entries":[{"itemCode":"gma","prob":3},{"itemCode":"gsd","prob":4},{"itemCode":"lwb","prob":2},{"itemCode":"rxb","prob":2},{"itemCode":"9ha","prob":3},{"itemCode":"9wn","prob":1},{"itemCode":"9sc","prob":2},{"itemCode":"9sp","prob":3},{"itemCode":"9dg","prob":2},{"itemCode":"9tk","prob":2},{"itemCode":"9sr","prob":4},{"itemCode":"9b7","prob":4},{"itemCode":"8hb","prob":2},{"itemCode":"9wb","prob":2},{"itemCode":"ob6","prob":2}]},{"name":"weap36","level":36,"picks":1,"totalProb":41,"entries":[{"itemCode":"wsc","prob":3},{"itemCode":"9ax","prob":4},{"itemCode":"9la","prob":4},{"itemCode":"9ma","prob":4},{"itemCode":"9sb","prob":3},{"itemCode":"9di","prob":2},{"itemCode":"9ta","prob":2},{"itemCode":"9tr","prob":4},{"itemCode":"9pa","prob":4},{"itemCode":"8ls","prob":2},{"itemCode":"8lb","prob":2},{"itemCode":"8lx","prob":2},{"itemCode":"9xf","prob":2},{"itemCode":"ama","prob":3}]},{"name":"weap39","level":39,"picks":1,"totalProb":43,"entries":[{"itemCode":"92a","prob":4},{"itemCode":"9ba","prob":4},{"itemCode":"9yw","prob":1},{"itemCode":"9mt","prob":4},{"itemCode":"9fc","prob":4},{"itemCode":"9cr","prob":2},{"itemCode":"92h","prob":4},{"itemCode":"9bk","prob":2},{"itemCode":"9pi","prob":4},{"itemCode":"9vo","prob":4},{"itemCode":"8cs","prob":2},{"itemCode":"8cb","prob":2},{"itemCode":"ob7","prob":3},{"itemCode":"am6","prob":3}]},{"name":"weap42","level":42,"picks":1,"totalProb":41,"entries":[{"itemCode":"9bt","prob":4},{"itemCode":"9qs","prob":4},{"itemCode":"9bs","prob":4},{"itemCode":"9cm","prob":4},{"itemCode":"9kr","prob":2},{"itemCode":"9b8","prob":2},{"itemCode":"9s9","prob":4},{"itemCode":"9br","prob":4},{"itemCode":"9s8","prob":4},{"itemCode":"8bs","prob":2},{"itemCode":"8mx","prob":2},{"itemCode":"9cs","prob":2},{"itemCode":"ob8","prob":3}]},{"name":"weap45","level":45,"picks":1,"totalProb":39,"entries":[{"itemCode":"9mp","prob":4},{"itemCode":"9bw","prob":1},{"itemCode":"9ws","prob":4},{"itemCode":"9fl","prob":4},{"itemCode":"9m9","prob":4},{"itemCode":"9sm","prob":3},{"itemCode":"9ls","prob":4},{"itemCode":"9gs","prob":4},{"itemCode":"9st","prob":4},{"itemCode":"8s8","prob":2},{"itemCode":"9lw","prob":2},{"itemCode":"am8","prob":3}]},{"name":"weap48","level":48,"picks":1,"totalProb":40,"entries":[{"itemCode":"9wa","prob":4},{"itemCode":"9ga","prob":4},{"itemCode":"9wh","prob":4},{"itemCode":"9b9","prob":4},{"itemCode":"9bl","prob":3},{"itemCode":"9gl","prob":4},{"itemCode":"9p9","prob":4},{"itemCode":"8ws","prob":2},{"itemCode":"8l8","prob":2},{"itemCode":"8hx","prob":2},{"itemCode":"ob9","prob":4},{"itemCode":"am7","prob":3}]},{"name":"weap51","level":51,"picks":1,"totalProb":33,"entries":[{"itemCode":"9gi","prob":4},{"itemCode":"9gw","prob":1},{"itemCode":"9wd","prob":4},{"itemCode":"9fb","prob":4},{"itemCode":"9ts","prob":4},{"itemCode":"9h9","prob":4},{"itemCode":"8sw","prob":2},{"itemCode":"9tw","prob":2},{"itemCode":"oba","prob":5},{"itemCode":"am9","prob":3}]},{"name":"weap54","level":54,"picks":1,"totalProb":24,"entries":[{"itemCode":"9gm","prob":3},{"itemCode":"9gd","prob":4},{"itemCode":"8lw","prob":2},{"itemCode":"8rx","prob":2},{"itemCode":"9qr","prob":2},{"itemCode":"7ha","prob":3},{"itemCode":"7cl","prob":1},{"itemCode":"7ja","prob":4},{"itemCode":"amb","prob":3}]},{"name":"weap57","level":57,"picks":1,"totalProb":20,"entries":[{"itemCode":"9wc","prob":3},{"itemCode":"7la","prob":4},{"itemCode":"7wn","prob":1},{"itemCode":"7sp","prob":3},{"itemCode":"7ss","prob":3},{"itemCode":"7ta","prob":2},{"itemCode":"6sb","prob":2},{"itemCode":"6lx","prob":2}]},{"name":"weap60","level":60,"picks":1,"totalProb":22,"entries":[{"itemCode":"7ar","prob":2},{"itemCode":"72h","prob":4},{"itemCode":"7dg","prob":2},{"itemCode":"7sr","prob":4},{"itemCode":"7o7","prob":4},{"itemCode":"6ss","prob":2},{"itemCode":"6hb","prob":2},{"itemCode":"obb","prob":2}]},{"name":"weap63","level":63,"picks":1,"totalProb":27,"entries":[{"itemCode":"7wb","prob":2},{"itemCode":"7ax","prob":4},{"itemCode":"7sc","prob":2},{"itemCode":"7ma","prob":4},{"itemCode":"7sm","prob":3},{"itemCode":"7sb","prob":3},{"itemCode":"7pi","prob":4},{"itemCode":"6lb","prob":2},{"itemCode":"amd","prob":3}]},{"name":"weap66","level":66,"picks":1,"totalProb":24,"entries":[{"itemCode":"7ba","prob":4},{"itemCode":"7yw","prob":1},{"itemCode":"7cm","prob":4},{"itemCode":"7tk","prob":2},{"itemCode":"7tr","prob":4},{"itemCode":"7vo","prob":4},{"itemCode":"6ls","prob":2},{"itemCode":"amf","prob":3}]},{"name":"weap69","level":69,"picks":1,"totalProb":17,"entries":[{"itemCode":"7xf","prob":2},{"itemCode":"7m7","prob":4},{"itemCode":"7fc","prob":4},{"itemCode":"6cb","prob":2},{"itemCode":"6mx","prob":2},{"itemCode":"obc","prob":3}]},{"name":"weap72","level":72,"picks":1,"totalProb":24,"entries":[{"itemCode":"72a","prob":4},{"itemCode":"7mt","prob":4},{"itemCode":"7gs","prob":4},{"itemCode":"7di","prob":2},{"itemCode":"7s7","prob":4},{"itemCode":"7s8","prob":4},{"itemCode":"6s7","prob":2}]},{"name":"weap75","level":75,"picks":1,"totalProb":20,"entries":[{"itemCode":"7cs","prob":2},{"itemCode":"7bt","prob":4},{"itemCode":"7bw","prob":1},{"itemCode":"7cr","prob":2},{"itemCode":"7br","prob":4},{"itemCode":"6cs","prob":2},{"itemCode":"6hx","prob":2},{"itemCode":"obd","prob":3}]},{"name":"weap78","level":78,"picks":1,"totalProb":25,"entries":[{"itemCode":"7lw","prob":2},{"itemCode":"7qs","prob":4},{"itemCode":"7fl","prob":4},{"itemCode":"7bs","prob":4},{"itemCode":"7b7","prob":4},{"itemCode":"7bk","prob":2},{"itemCode":"6l7","prob":2},{"itemCode":"amc","prob":3}]},{"name":"weap81","level":81,"picks":1,"totalProb":25,"entries":[{"itemCode":"7tw","prob":2},{"itemCode":"7mp","prob":4},{"itemCode":"7fb","prob":4},{"itemCode":"7b8","prob":2},{"itemCode":"7gl","prob":4},{"itemCode":"7pa","prob":4},{"itemCode":"6sw","prob":2},{"itemCode":"ame","prob":3}]},{"name":"weap84","level":84,"picks":1,"totalProb":30,"entries":[{"itemCode":"7ga","prob":4},{"itemCode":"7wh","prob":4},{"itemCode":"7ls","prob":4},{"itemCode":"7kr","prob":2},{"itemCode":"7st","prob":4},{"itemCode":"7h7","prob":4},{"itemCode":"6bs","prob":2},{"itemCode":"6rx","prob":2},{"itemCode":"obe","prob":4}]},{"name":"weap87","level":87,"picks":1,"totalProb":49,"entries":[{"itemCode":"7qr","prob":2},{"itemCode":"7wa","prob":4},{"itemCode":"7gi","prob":4},{"itemCode":"7gw","prob":1},{"itemCode":"7ws","prob":4},{"itemCode":"7gm","prob":3},{"itemCode":"7wd","prob":4},{"itemCode":"7gd","prob":4},{"itemCode":"7bl","prob":3},{"itemCode":"7ts","prob":4},{"itemCode":"7p7","prob":4},{"itemCode":"7wc","prob":3},{"itemCode":"6ws","prob":2},{"itemCode":"6lw","prob":2},{"itemCode":"obf","prob":5}]},{"name":"armo3","level":3,"picks":1,"totalProb":9,"entries":[{"itemCode":"cap","prob":1},{"itemCode":"qui","prob":1},{"itemCode":"lea","prob":2},{"itemCode":"buc","prob":2},{"itemCode":"lgl","prob":1},{"itemCode":"lbt","prob":1},{"itemCode":"lbl","prob":1}]},{"name":"armo6","level":6,"picks":1,"totalProb":16,"entries":[{"itemCode":"skp","prob":4},{"itemCode":"hla","prob":3},{"itemCode":"sml","prob":3},{"itemCode":"dr1","prob":1},{"itemCode":"ba1","prob":2},{"itemCode":"pa1","prob":2},{"itemCode":"ne1","prob":1}]},{"name":"armo9","level":9,"picks":1,"totalProb":13,"entries":[{"itemCode":"stu","prob":4},{"itemCode":"vgl","prob":1},{"itemCode":"vbt","prob":1},{"itemCode":"vbl","prob":1},{"itemCode":"dr2","prob":1},{"itemCode":"ba2","prob":2},{"itemCode":"pa2","prob":2},{"itemCode":"ne2","prob":1}]},{"name":"armo12","level":12,"picks":1,"totalProb":21,"entries":[{"itemCode":"hlm","prob":4},{"itemCode":"rng","prob":4},{"itemCode":"lrg","prob":4},{"itemCode":"mgl","prob":2},{"itemCode":"mbt","prob":2},{"itemCode":"mbl","prob":2},{"itemCode":"spk","prob":3}]},{"name":"armo15","level":15,"picks":1,"totalProb":16,"entries":[{"itemCode":"fhl","prob":4},{"itemCode":"scl","prob":4},{"itemCode":"chn","prob":4},{"itemCode":"kit","prob":4}]},{"name":"armo18","level":18,"picks":1,"totalProb":10,"entries":[{"itemCode":"brs","prob":4},{"itemCode":"dr3","prob":1},{"itemCode":"ba3","prob":2},{"itemCode":"pa3","prob":2},{"itemCode":"ne3","prob":1}]},{"name":"armo21","level":21,"picks":1,"totalProb":24,"entries":[{"itemCode":"msk","prob":4},{"itemCode":"spl","prob":4},{"itemCode":"tgl","prob":3},{"itemCode":"tbt","prob":3},{"itemCode":"tbl","prob":2},{"itemCode":"bsh","prob":2},{"itemCode":"dr4","prob":1},{"itemCode":"ba4","prob":2},{"itemCode":"pa4","prob":2},{"itemCode":"ne4","prob":1}]},{"name":"armo24","level":24,"picks":1,"totalProb":21,"entries":[{"itemCode":"ghm","prob":4},{"itemCode":"plt","prob":4},{"itemCode":"tow","prob":4},{"itemCode":"bhm","prob":2},{"itemCode":"dr5","prob":1},{"itemCode":"ba5","prob":2},{"itemCode":"pa5","prob":2},{"itemCode":"ne5","prob":1},{"itemCode":"ci0","prob":1}]},{"name":"armo27","level":27,"picks":1,"totalProb":11,"entries":[{"itemCode":"hgl","prob":4},{"itemCode":"hbt","prob":4},{"itemCode":"hbl","prob":3}]},{"name":"armo30","level":30,"picks":1,"totalProb":12,"entries":[{"itemCode":"crn","prob":4},{"itemCode":"fld","prob":4},{"itemCode":"gts","prob":4}]},{"name":"armo33","level":33,"picks":1,"totalProb":8,"entries":[{"itemCode":"gth","prob":4},{"itemCode":"xlg","prob":1},{"itemCode":"ba6","prob":2},{"itemCode":"ne6","prob":1}]},{"name":"armo36","level":36,"picks":1,"totalProb":15,"entries":[{"itemCode":"ltp","prob":4},{"itemCode":"xap","prob":1},{"itemCode":"xui","prob":1},{"itemCode":"xea","prob":2},{"itemCode":"xuc","prob":2},{"itemCode":"xlb","prob":1},{"itemCode":"zlb","prob":1},{"itemCode":"dr6","prob":1},{"itemCode":"pa6","prob":2}]},{"name":"armo39","level":39,"picks":1,"totalProb":20,"entries":[{"itemCode":"ful","prob":4},{"itemCode":"xkp","prob":4},{"itemCode":"xla","prob":3},{"itemCode":"xml","prob":3},{"itemCode":"xvg","prob":1},{"itemCode":"xvb","prob":1},{"itemCode":"zvb","prob":1},{"itemCode":"ba7","prob":2},{"itemCode":"ne7","prob":1}]},{"name":"armo42","level":42,"picks":1,"totalProb":26,"entries":[{"itemCode":"aar","prob":4},{"itemCode":"xlm","prob":4},{"itemCode":"xtu","prob":4},{"itemCode":"xng","prob":4},{"itemCode":"xrg","prob":4},{"itemCode":"xpk","prob":3},{"itemCode":"dr7","prob":1},{"itemCode":"pa7","prob":2}]},{"name":"armo45","level":45,"picks":1,"totalProb":25,"entries":[{"itemCode":"xhl","prob":4},{"itemCode":"xcl","prob":4},{"itemCode":"xhn","prob":4},{"itemCode":"xit","prob":4},{"itemCode":"xmg","prob":2},{"itemCode":"xmb","prob":2},{"itemCode":"zmb","prob":2},{"itemCode":"ba8","prob":2},{"itemCode":"ne8","prob":1}]},{"name":"armo48","level":48,"picks":1,"totalProb":13,"entries":[{"itemCode":"xsk","prob":4},{"itemCode":"xrs","prob":4},{"itemCode":"xsh","prob":2},{"itemCode":"dr8","prob":1},{"itemCode":"pa8","prob":2}]},{"name":"armo51","level":51,"picks":1,"totalProb":28,"entries":[{"itemCode":"xhm","prob":4},{"itemCode":"xpl","prob":4},{"itemCode":"xow","prob":4},{"itemCode":"xtg","prob":3},{"itemCode":"xtb","prob":3},{"itemCode":"ztb","prob":2},{"itemCode":"xh9","prob":2},{"itemCode":"dr9","prob":1},{"itemCode":"ba9","prob":2},{"itemCode":"pa9","prob":2},{"itemCode":"ne9","prob":1}]},{"name":"armo54","level":54,"picks":1,"totalProb":23,"entries":[{"itemCode":"xlt","prob":4},{"itemCode":"xhg","prob":4},{"itemCode":"xhb","prob":4},{"itemCode":"zhb","prob":3},{"itemCode":"ci1","prob":1},{"itemCode":"uhl","prob":4},{"itemCode":"baa","prob":2},{"itemCode":"nea","prob":1}]},{"name":"armo57","level":57,"picks":1,"totalProb":16,"entries":[{"itemCode":"xrn","prob":4},{"itemCode":"xld","prob":4},{"itemCode":"xts","prob":4},{"itemCode":"ulg","prob":1},{"itemCode":"dra","prob":1},{"itemCode":"paa","prob":2}]},{"name":"armo60","level":60,"picks":1,"totalProb":15,"entries":[{"itemCode":"xth","prob":4},{"itemCode":"xtp","prob":4},{"itemCode":"uap","prob":1},{"itemCode":"uuc","prob":2},{"itemCode":"ulb","prob":1},{"itemCode":"bab","prob":2},{"itemCode":"neb","prob":1}]},{"name":"armo63","level":63,"picks":1,"totalProb":20,"entries":[{"itemCode":"xul","prob":4},{"itemCode":"ukp","prob":4},{"itemCode":"uhn","prob":4},{"itemCode":"uml","prob":3},{"itemCode":"uvg","prob":1},{"itemCode":"ulc","prob":1},{"itemCode":"drb","prob":1},{"itemCode":"pab","prob":2}]},{"name":"armo66","level":66,"picks":1,"totalProb":13,"entries":[{"itemCode":"xar","prob":4},{"itemCode":"uui","prob":1},{"itemCode":"urg","prob":4},{"itemCode":"uvb","prob":1},{"itemCode":"bac","prob":2},{"itemCode":"ned","prob":1}]},{"name":"armo69","level":69,"picks":1,"totalProb":17,"entries":[{"itemCode":"ulm","prob":4},{"itemCode":"uea","prob":2},{"itemCode":"ula","prob":3},{"itemCode":"umg","prob":2},{"itemCode":"uvc","prob":1},{"itemCode":"upk","prob":3},{"itemCode":"drc","prob":1},{"itemCode":"neg","prob":1}]},{"name":"armo72","level":72,"picks":1,"totalProb":17,"entries":[{"itemCode":"ci2","prob":1},{"itemCode":"utu","prob":4},{"itemCode":"ung","prob":4},{"itemCode":"uit","prob":4},{"itemCode":"umb","prob":2},{"itemCode":"pac","prob":2}]},{"name":"armo75","level":75,"picks":1,"totalProb":18,"entries":[{"itemCode":"usk","prob":4},{"itemCode":"ucl","prob":4},{"itemCode":"urs","prob":4},{"itemCode":"umc","prob":2},{"itemCode":"bad","prob":2},{"itemCode":"pad","prob":2}]},{"name":"armo78","level":78,"picks":1,"totalProb":14,"entries":[{"itemCode":"upl","prob":4},{"itemCode":"ult","prob":4},{"itemCode":"utg","prob":3},{"itemCode":"ush","prob":2},{"itemCode":"drd","prob":1}]},{"name":"armo81","level":81,"picks":1,"totalProb":18,"entries":[{"itemCode":"uhm","prob":4},{"itemCode":"uld","prob":4},{"itemCode":"uow","prob":4},{"itemCode":"utb","prob":3},{"itemCode":"bae","prob":2},{"itemCode":"nee","prob":1}]},{"name":"armo84","level":84,"picks":1,"totalProb":23,"entries":[{"itemCode":"uth","prob":4},{"itemCode":"uul","prob":4},{"itemCode":"utp","prob":4},{"itemCode":"uts","prob":4},{"itemCode":"utc","prob":2},{"itemCode":"uh9","prob":2},{"itemCode":"dre","prob":1},{"itemCode":"pae","prob":2}]},{"name":"armo87","level":87,"picks":1,"totalProb":26,"entries":[{"itemCode":"ci3","prob":1},{"itemCode":"urn","prob":4},{"itemCode":"uar","prob":4},{"itemCode":"uhg","prob":4},{"itemCode":"uhb","prob":4},{"itemCode":"uhc","prob":3},{"itemCode":"drf","prob":1},{"itemCode":"baf","prob":2},{"itemCode":"paf","prob":2},{"itemCode":"nef","prob":1}]},{"name":"bow3","level":3,"picks":1,"totalProb":2,"entries":[{"itemCode":"sbw","prob":2}]},{"name":"bow6","level":6,"picks":1,"totalProb":2,"entries":[{"itemCode":"hbw","prob":2}]},{"name":"bow9","level":9,"picks":1,"totalProb":2,"entries":[{"itemCode":"lbw","prob":2}]},{"name":"bow12","level":12,"picks":1,"totalProb":2,"entries":[{"itemCode":"cbw","prob":2}]},{"name":"bow15","level":15,"picks":1,"totalProb":0,"entries":[]},{"name":"bow18","level":18,"picks":1,"totalProb":5,"entries":[{"itemCode":"sbb","prob":2},{"itemCode":"am1","prob":3}]},{"name":"bow21","level":21,"picks":1,"totalProb":0,"entries":[]},{"name":"bow24","level":24,"picks":1,"totalProb":2,"entries":[{"itemCode":"lbb","prob":2}]},{"name":"bow27","level":27,"picks":1,"totalProb":5,"entries":[{"itemCode":"swb","prob":2},{"itemCode":"am2","prob":3}]},{"name":"bow30","level":30,"picks":1,"totalProb":2,"entries":[{"itemCode":"8sb","prob":2}]},{"name":"bow33","level":33,"picks":1,"totalProb":4,"entries":[{"itemCode":"lwb","prob":2},{"itemCode":"8hb","prob":2}]},{"name":"bow36","level":36,"picks":1,"totalProb":2,"entries":[{"itemCode":"8lb","prob":2}]},{"name":"bow39","level":39,"picks":1,"totalProb":5,"entries":[{"itemCode":"8cb","prob":2},{"itemCode":"am6","prob":3}]},{"name":"bow42","level":42,"picks":1,"totalProb":0,"entries":[]},{"name":"bow45","level":45,"picks":1,"totalProb":2,"entries":[{"itemCode":"8s8","prob":2}]},{"name":"bow48","level":48,"picks":1,"totalProb":5,"entries":[{"itemCode":"8l8","prob":2},{"itemCode":"am7","prob":3}]},{"name":"bow51","level":51,"picks":1,"totalProb":2,"entries":[{"itemCode":"8sw","prob":2}]},{"name":"bow54","level":54,"picks":1,"totalProb":5,"entries":[{"itemCode":"8lw","prob":2},{"itemCode":"amb","prob":3}]},{"name":"bow57","level":57,"picks":1,"totalProb":2,"entries":[{"itemCode":"6sb","prob":2}]},{"name":"bow60","level":60,"picks":1,"totalProb":2,"entries":[{"itemCode":"6hb","prob":2}]},{"name":"bow63","level":63,"picks":1,"totalProb":2,"entries":[{"itemCode":"6lb","prob":2}]},{"name":"bow66","level":66,"picks":1,"totalProb":0,"entries":[]},{"name":"bow69","level":69,"picks":1,"totalProb":2,"entries":[{"itemCode":"6cb","prob":2}]},{"name":"bow72","level":72,"picks":1,"totalProb":2,"entries":[{"itemCode":"6s7","prob":2}]},{"name":"bow75","level":75,"picks":1,"totalProb":0,"entries":[]},{"name":"bow78","level":78,"picks":1,"totalProb":5,"entries":[{"itemCode":"6l7","prob":2},{"itemCode":"amc","prob":3}]},{"name":"bow81","level":81,"picks":1,"totalProb":2,"entries":[{"itemCode":"6sw","prob":2}]},{"name":"bow84","level":84,"picks":1,"totalProb":0,"entries":[]},{"name":"bow87","level":87,"picks":1,"totalProb":2,"entries":[{"itemCode":"6lw","prob":2}]},{"name":"mele3","level":3,"picks":1,"totalProb":22,"entries":[{"itemCode":"hax","prob":3},{"itemCode":"wnd","prob":1},{"itemCode":"clb","prob":1},{"itemCode":"scp","prob":2},{"itemCode":"ssd","prob":3},{"itemCode":"dgr","prob":2},{"itemCode":"tkf","prob":2},{"itemCode":"jav","prob":4},{"itemCode":"sst","prob":2},{"itemCode":"ktr","prob":2}]},{"name":"mele6","level":6,"picks":1,"totalProb":18,"entries":[{"itemCode":"lax","prob":4},{"itemCode":"spc","prob":3},{"itemCode":"scm","prob":3},{"itemCode":"spr","prob":4},{"itemCode":"bar","prob":4}]},{"name":"mele9","level":9,"picks":1,"totalProb":23,"entries":[{"itemCode":"axe","prob":4},{"itemCode":"mac","prob":4},{"itemCode":"sbr","prob":3},{"itemCode":"dir","prob":2},{"itemCode":"tax","prob":2},{"itemCode":"tri","prob":4},{"itemCode":"lst","prob":2},{"itemCode":"wrb","prob":2}]},{"name":"mele12","level":12,"picks":1,"totalProb":27,"entries":[{"itemCode":"bax","prob":4},{"itemCode":"ywn","prob":1},{"itemCode":"flc","prob":4},{"itemCode":"crs","prob":2},{"itemCode":"2hs","prob":4},{"itemCode":"pil","prob":4},{"itemCode":"vou","prob":4},{"itemCode":"cst","prob":2},{"itemCode":"axf","prob":2}]},{"name":"mele15","level":15,"picks":1,"totalProb":28,"entries":[{"itemCode":"2ax","prob":4},{"itemCode":"gsc","prob":4},{"itemCode":"mst","prob":4},{"itemCode":"bsd","prob":4},{"itemCode":"bkf","prob":2},{"itemCode":"ssp","prob":4},{"itemCode":"scy","prob":4},{"itemCode":"ces","prob":2}]},{"name":"mele18","level":18,"picks":1,"totalProb":24,"entries":[{"itemCode":"btx","prob":4},{"itemCode":"bwn","prob":1},{"itemCode":"clm","prob":4},{"itemCode":"kri","prob":2},{"itemCode":"bal","prob":2},{"itemCode":"brn","prob":4},{"itemCode":"bst","prob":2},{"itemCode":"clw","prob":2},{"itemCode":"am3","prob":3}]},{"name":"mele21","level":21,"picks":1,"totalProb":34,"entries":[{"itemCode":"mpi","prob":4},{"itemCode":"wsp","prob":4},{"itemCode":"fla","prob":4},{"itemCode":"mau","prob":4},{"itemCode":"lsd","prob":4},{"itemCode":"gis","prob":4},{"itemCode":"spt","prob":4},{"itemCode":"pax","prob":4},{"itemCode":"btl","prob":2}]},{"name":"mele24","level":24,"picks":1,"totalProb":26,"entries":[{"itemCode":"gax","prob":4},{"itemCode":"bsw","prob":4},{"itemCode":"bld","prob":3},{"itemCode":"glv","prob":4},{"itemCode":"pik","prob":4},{"itemCode":"wst","prob":2},{"itemCode":"skr","prob":2},{"itemCode":"am5","prob":3}]},{"name":"mele27","level":27,"picks":1,"totalProb":24,"entries":[{"itemCode":"wax","prob":4},{"itemCode":"gix","prob":4},{"itemCode":"gwn","prob":1},{"itemCode":"whm","prob":4},{"itemCode":"wsd","prob":4},{"itemCode":"flb","prob":4},{"itemCode":"am4","prob":3}]},{"name":"mele30","level":30,"picks":1,"totalProb":20,"entries":[{"itemCode":"tsp","prob":4},{"itemCode":"hal","prob":4},{"itemCode":"9cl","prob":1},{"itemCode":"9ss","prob":3},{"itemCode":"9ja","prob":4},{"itemCode":"8ss","prob":2},{"itemCode":"9ar","prob":2}]},{"name":"mele33","level":33,"picks":1,"totalProb":30,"entries":[{"itemCode":"gma","prob":3},{"itemCode":"gsd","prob":4},{"itemCode":"9ha","prob":3},{"itemCode":"9wn","prob":1},{"itemCode":"9sc","prob":2},{"itemCode":"9sp","prob":3},{"itemCode":"9dg","prob":2},{"itemCode":"9tk","prob":2},{"itemCode":"9sr","prob":4},{"itemCode":"9b7","prob":4},{"itemCode":"9wb","prob":2}]},{"name":"mele36","level":36,"picks":1,"totalProb":37,"entries":[{"itemCode":"wsc","prob":3},{"itemCode":"9ax","prob":4},{"itemCode":"9la","prob":4},{"itemCode":"9ma","prob":4},{"itemCode":"9sb","prob":3},{"itemCode":"9di","prob":2},{"itemCode":"9ta","prob":2},{"itemCode":"9tr","prob":4},{"itemCode":"9pa","prob":4},{"itemCode":"8ls","prob":2},{"itemCode":"9xf","prob":2},{"itemCode":"ama","prob":3}]},{"name":"mele39","level":39,"picks":1,"totalProb":35,"entries":[{"itemCode":"92a","prob":4},{"itemCode":"9ba","prob":4},{"itemCode":"9yw","prob":1},{"itemCode":"9mt","prob":4},{"itemCode":"9fc","prob":4},{"itemCode":"9cr","prob":2},{"itemCode":"92h","prob":4},{"itemCode":"9bk","prob":2},{"itemCode":"9pi","prob":4},{"itemCode":"9vo","prob":4},{"itemCode":"8cs","prob":2}]}];
export const CANONICAL_ITEM_NAMES: Readonly<Record<string, string>> = {"cap":"Cap (便帽)","skp":"Skull Cap","hlm":"Helm","fhl":"Full Helm","ghm":"Great Helm","crn":"Crown","msk":"Mask","qui":"Quilted Armor","lea":"Leather Armor","hla":"Hard Leather Armor","stu":"Studded Leather","rng":"Ring Mail","scl":"Scale Mail","chn":"Chain Mail","brs":"Breast Plate","spl":"Splint Mail","plt":"Plate Mail","fld":"Field Plate","gth":"Gothic Plate","ful":"Full Plate Mail","aar":"Ancient Armor","ltp":"Light Plate","buc":"Buckler","sml":"Small Shield","lrg":"Large Shield","kit":"Kite Shield","tow":"Tower Shield","gts":"Gothic Shield","lgl":"Gloves(L)","vgl":"Heavy Gloves","mgl":"Bracers(M)","tgl":"Light Gauntlets","hgl":"Gaunlets(H)","lbt":"Leather Boots","vbt":"Heavy Boots","mbt":"Chain Boots","tbt":"Light Plate Boots","hbt":"Plate Boots","lbl":"Sash(L)","vbl":"Light Belt","mbl":"Belt(M)","tbl":"Heavy Belt","hbl":"Girdle(H)","bhm":"Bone Helm","bsh":"Bone Shield","spk":"Spiked Shield","xap":"War Hat","xkp":"Sallet","xlm":"Casque","xhl":"Basinet","xhm":"Winged Helm","xrn":"Grand Crown","xsk":"Death Mask","xui":"Ghost Armor","xea":"Serpentskin Armor","xla":"Demonhide Armor","xtu":"Trellised Armor","xng":"Linked Mail","xcl":"Tigulated Mail","xhn":"Mesh Armor","xrs":"Cuirass","xpl":"Russet Armor","xlt":"Templar Coat","xld":"Sharktooth Armor","xth":"Embossed Plate","xul":"Chaos Armor","xar":"Ornate Armor","xtp":"Mage Plate","xuc":"Defender","xml":"Round Shield","xrg":"Scutum","xit":"Dragon Shield","xow":"Pavise","xts":"Ancient Shield","xlg":"Demonhide Gloves","xvg":"Sharkskin Gloves","xmg":"Heavy Bracers","xtg":"Battle Gauntlets","xhg":"War Gauntlets","xlb":"Demonhide Boots","xvb":"Sharkskin Boots","xmb":"Mesh Boots","xtb":"Battle Boots","xhb":"War Boots","zlb":"Demonhide Sash","zvb":"Sharkskin Belt","zmb":"Mesh Belt","ztb":"Battle Belt","zhb":"War Belt","xh9":"Grim Helm","xsh":"Grim Shield","xpk":"Barbed Shield","dr1":"Wolf Head","dr2":"Hawk Helm","dr3":"Antlers","dr4":"Falcon Mask","dr5":"Spirit Mask","ba1":"Jawbone Cap","ba2":"Fanged Helm","ba3":"Horned Helm","ba4":"Assault Helmet","ba5":"Avenger Guard","pa1":"Targe","pa2":"Rondache","pa3":"Heraldic Shield","pa4":"Aerin Shield","pa5":"Crown Shield","ne1":"Preserved Head","ne2":"Zombie Head","ne3":"Unraveller Head","ne4":"Gargoyle Head","ne5":"Demon Head","ci0":"Circlet","ci1":"Coronet","ci2":"Tiara","ci3":"Diadem","uap":"Shako (军帽)","ukp":"Hydraskull","ulm":"Armet","uhl":"Giant Conch","uhm":"Spired Helm","urn":"Corona","usk":"Demonhead","uui":"Dusk Shroud","uea":"Wyrmhide","ula":"Scarab Husk","utu":"Wire Fleece","ung":"Diamond Mail","ucl":"Loricated Mail","uhn":"Boneweave","urs":"Great Hauberk","upl":"Balrog Skin","ult":"Hellforged Plate","uld":"Kraken Shell","uth":"Lacquered Plate","uul":"Shadow Plate","uar":"Sacred Armor","utp":"Archon Plate","uuc":"Heater","uml":"Luna","urg":"Hyperion","uit":"Monarch","uow":"Aegis","uts":"Ward","ulg":"Bramble Mitts","uvg":"Vampirebone Gloves","umg":"Vambraces","utg":"Crusader Gauntlets","uhg":"Ogre Gauntlets","ulb":"Wyrmhide Boots","uvb":"Scarabshell Boots","umb":"Boneweave Boots","utb":"Mirrored Boots","uhb":"Myrmidon Greaves","ulc":"Spiderweb Sash","uvc":"Vampirefang Belt","umc":"Mithril Coil","utc":"Troll Belt","uhc":"Colossus Girdle","uh9":"Bone Visage","ush":"Troll Nest","upk":"Blade Barrier","dr6":"Alpha Helm","dr7":"Griffon Headress","dr8":"Hunter's Guise","dr9":"Sacred Feathers","dra":"Totemic Mask","ba6":"Jawbone Visor","ba7":"Lion Helm","ba8":"Rage Mask","ba9":"Savage Helmet","baa":"Slayer Guard","pa6":"Akaran Targe","pa7":"Akaran Rondache","pa8":"Protector Shield","pa9":"Guilded Shield","paa":"Royal Shield","ne6":"Mummified Trophy","ne7":"Fetish Trophy","ne8":"Sexton Trophy","ne9":"Cantor Trophy","nea":"Heirophant Trophy","drb":"Blood Spirt","drc":"Sun Spirit","drd":"Earth Spirit","dre":"Sky Spirit","drf":"Dream Spirit","bab":"Carnage Helm","bac":"Fury Visor","bad":"Destroyer Helm","bae":"Conquerer Crown","baf":"Guardian Crown","pab":"Sacred Targe","pac":"Sacred Rondache","pad":"Ancient Shield","pae":"Zakarum Shield","paf":"Vortex Shield","neb":"Minion Skull","neg":"Hellspawn Skull","ned":"Overseer Skull","nee":"Succubae Skull","nef":"Bloodlord Skull","hax":"Hand Axe","axe":"Axe","2ax":"Double Axe","mpi":"Military Pick","wax":"War Axe","lax":"Large Axe","bax":"Broad Axe","btx":"Battle Axe","gax":"Great Axe","gix":"Giant Axe","wnd":"Wand","ywn":"Yew Wand","bwn":"Bone Wand","gwn":"Grim Wand","clb":"Club","scp":"Scepter","gsc":"Grand Scepter","wsp":"War Scepter","spc":"Spiked Club","mac":"Mace","mst":"Morning Star","fla":"Flail","whm":"War Hammer","mau":"Maul","gma":"Great Maul","ssd":"Short Sword","scm":"Scimitar","sbr":"Saber","flc":"Falchion","crs":"Crystal Sword","bsd":"Broad Sword","lsd":"Long Sword","wsd":"War Sword","2hs":"Two-Handed Sword","clm":"Claymore","gis":"Giant Sword","bsw":"Bastard Sword","flb":"Flamberge","gsd":"Great Sword","dgr":"Dagger","dir":"Dirk","kri":"Kriss","bld":"Blade","tkf":"Throwing Knife","tax":"Throwing Axe","bkf":"Balanced Knife","bal":"Balanced Axe","jav":"Javelin","pil":"Pilum","ssp":"Short Spear","glv":"Glaive","tsp":"Throwing Spear","spr":"Spear","tri":"Trident","brn":"Brandistock","spt":"Spetum","pik":"Pike","bar":"Bardiche","vou":"Voulge","scy":"Scythe","pax":"Poleaxe","hal":"Halberd","wsc":"War Scythe","sst":"Short Staff","lst":"Long Staff","cst":"Gnarled Staff","bst":"Battle Staff","wst":"War Staff","sbw":"Short Bow","hbw":"Hunter's Bow","lbw":"Long Bow","cbw":"Composite Bow","sbb":"Short Battle Bow","lbb":"Long Battle Bow","swb":"Short War Bow","lwb":"Long War Bow","lxb":"Light Crossbow","mxb":"Crossbow","hxb":"Heavy Crossbow","rxb":"Repeating Crossbow","gps":"Rancid Gas Potion","ops":"Oil Potion","gpm":"Choking Gas Potion","opm":"Exploding Potion","gpl":"Strangling Gas Potion","opl":"Fulminating Potion","d33":"decoy dagger","g33":"Gidbinn","leg":"Wirt's Leg","hdm":"Horadric Malus","hfh":"Hellforge Hammer","hst":"Horadric Staff","msf":"Staff of the Kings","9ha":"Hatchet","9ax":"Cleaver","92a":"Twin Axe","9mp":"Crowbill","9wa":"Naga","9la":"Military Axe","9ba":"Bearded Axe","9bt":"Tabar","9ga":"Gothic Axe","9gi":"Ancient Axe","9wn":"Burnt Wand","9yw":"Petrified Wand","9bw":"Tomb Wand","9gw":"Grave Wand","9cl":"Cudgel","9sc":"Rune Scepter","9qs":"Holy Water Sprinkler","9ws":"Divine Scepter","9sp":"Barbed Club","9ma":"Flanged Mace","9mt":"Jagged Star","9fl":"Knout","9wh":"Battle Hammer","9m9":"War Club","9gm":"Martel de Fer","9ss":"Gladius","9sm":"Cutlass","9sb":"Shamshir","9fc":"Tulwar","9cr":"Dimensional Blade","9bs":"Battle Sword","9ls":"Rune Sword","9wd":"Ancient Sword","92h":"Espadon","9cm":"Dacian Falx","9gs":"Tusk Sword","9b9":"Gothic Sword","9fb":"Zweihander","9gd":"Executioner Sword","9dg":"Poignard","9di":"Rondel","9kr":"Cinquedeas","9bl":"Stilleto","9tk":"Battle Dart","9ta":"Francisca","9bk":"War Dart","9b8":"Hurlbat","9ja":"War Javelin","9pi":"Great Pilum","9s9":"Simbilan","9gl":"Spiculum","9ts":"Harpoon","9sr":"War Spear","9tr":"Fuscina","9br":"War Fork","9st":"Yari","9p9":"Lance","9b7":"Lochaber Axe","9vo":"Bill","9s8":"Battle Scythe","9pa":"Partizan","9h9":"Bec-de-Corbin","9wc":"Grim Scythe","8ss":"Jo Staff","8ls":"Quarterstaff","8cs":"Cedar Staff","8bs":"Gothic Staff","8ws":"Rune Staff","8sb":"Edge Bow","8hb":"Razor Bow","8lb":"Cedar Bow","8cb":"Double Bow","8s8":"Short Siege Bow","8l8":"Long Siege Bow","8sw":"Rune Bow","8lw":"Gothic Bow","8lx":"Arbalest","8mx":"Siege Crossbow","8hx":"Balista","8rx":"Chu-Ko-Nu","qf1":"KhalimFlail","qf2":"SuperKhalimFlail","ktr":"Katar","wrb":"Wrist Blade","axf":"Hatchet Hands","ces":"Cestus","clw":"Claws","btl":"Blade Talons","skr":"Scissors Katar","9ar":"Quhab","9wb":"Wrist Spike","9xf":"Fascia","9cs":"Hand Scythe","9lw":"Greater Claws","9tw":"Greater Talons","9qr":"Scissors Quhab","7ar":"Suwayyah","7wb":"Wrist Sword","7xf":"War Fist","7cs":"Battle Cestus","7lw":"Feral Claws","7tw":"Runic Talons","7qr":"Scissors Suwayyah","7ha":"Tomahawk","7ax":"Small Crescent","72a":"Ettin Axe","7mp":"War Spike","7wa":"Berserker Axe","7la":"Feral Axe","7ba":"Silver Edged Axe","7bt":"Decapitator","7ga":"Champion Axe","7gi":"Glorious Axe","7wn":"Polished Wand","7yw":"Ghost Wand","7bw":"Lich Wand","7gw":"Unearthed Wand","7cl":"Truncheon","7sc":"Mighty Scepter","7qs":"Seraph Rod","7ws":"Caduceus","7sp":"Tyrant Club","7ma":"Reinforced Mace","7mt":"Devil Star","7fl":"Scourge","7wh":"Legendary Mallet","7m7":"Ogre Maul","7gm":"Thunder Maul","7ss":"Falcata","7sm":"Ataghan","7sb":"Elegant Blade","7fc":"Hydra Edge","7cr":"Phase Blade","7bs":"Conquest Sword","7ls":"Cryptic Sword","7wd":"Mythical Sword","72h":"Legend Sword","7cm":"Highland Blade","7gs":"Balrog Blade","7b7":"Champion Sword","7fb":"Colossal Sword","7gd":"Colossus Blade","7dg":"Bone Knife","7di":"Mithral Point","7kr":"Fanged Knife","7bl":"Legend Spike","7tk":"Flying Knife","7ta":"Flying Axe","7bk":"Winged Knife","7b8":"Winged Axe","7ja":"Hyperion Javelin","7pi":"Stygian Pilum","7s7":"Balrog Spear","7gl":"Ghost Glaive","7ts":"Winged Harpoon","7sr":"Hyperion Spear","7tr":"Stygian Pike","7br":"Mancatcher","7st":"Ghost Spear","7p7":"War Pike","7o7":"Ogre Axe","7vo":"Colossus Voulge","7s8":"Thresher","7pa":"Cryptic Axe","7h7":"Great Poleaxe","7wc":"Giant Thresher","6ss":"Walking Stick","6ls":"Stalagmite","6cs":"Elder Staff","6bs":"Shillelah","6ws":"Archon Staff","6sb":"Spider Bow","6hb":"Blade Bow","6lb":"Shadow Bow","6cb":"Great Bow","6s7":"Diamond Bow","6l7":"Crusader Bow","6sw":"Ward Bow","6lw":"Hydra Bow","6lx":"Pellet Bow","6mx":"Gorgon Crossbow","6hx":"Colossus Crossbow","6rx":"Demon Crossbow","ob1":"Eagle Orb","ob2":"Sacred Globe","ob3":"Smoked Sphere","ob4":"Clasped Orb","ob5":"Dragon Stone","am1":"Stag Bow","am2":"Reflex Bow","am3":"Maiden Spear","am4":"Maiden Pike","am5":"Maiden Javelin","ob6":"Glowing Orb","ob7":"Crystalline Globe","ob8":"Cloudy Sphere","ob9":"Sparkling Ball","oba":"Swirling Crystal","am6":"Ashwood Bow","am7":"Ceremonial Bow","am8":"Ceremonial Spear","am9":"Ceremonial Pike","ama":"Ceremonial Javelin","obb":"Heavenly Stone","obc":"Eldritch Orb","obd":"Demon Heart","obe":"Vortex Orb","obf":"Dimensional Shard","amb":"Matriarchal Bow","amc":"Grand Matron Bow","amd":"Matriarchal Spear","ame":"Matriarchal Pike","amf":"MatriarchalJavelin","elx":"elixir","hpo":"Healing Potion","mpo":"Mana Potion","hpf":"Full Healing Potion","mpf":"Full Mana Potion","vps":"Stamina Potion","yps":"Antidote Potion","rvs":"Rejuv Potion","rvl":"Full Rejuv Potion","wms":"Thawing Potion","tbk":"Town Portal Book","ibk":"Identify Book","amu":"amulet","vip":"viper amulet","rin":"ring","gld":"Gold (金币)","bks":"Bark Scroll","bkd":"deciphered Bark Scroll","aqv":"Arrows","tch":"Torch","cqv":"Bolts","tsc":"Town Portal Scroll","isc":"Identify Scroll","hrt":"Not used","brz":"Not used","jaw":"Not used","eyz":"Not used","hrn":"Not used","tal":"Not used","flg":"Not used","fng":"Not used","qll":"Not used","sol":"Not used","scz":"Not used","spe":"Not used","key":"Skeleton Key","luv":"Mephisto Key","xyz":"scroll of self resurrect","j34":"jade figurine","g34":"gold bird","bbb":"lam esen's tome","box":"Horadric Cube","tr1":"Scroll of Horadric Quest Info","mss":"Mephisto SoulStone","ass":"Book of Skill","qey":"KhalimEye","qhr":"KhalimHeart","qbr":"KhalimBrain","ear":"Player Ear","gcv":"Chipped Amethyst","gfv":"Flawed Amethyst","gsv":"Amethyst","gzv":"Flawless Amethyst","gpv":"Perfect Amethyst","gcy":"Chipped Topaz","gfy":"Flawed Topaz","gsy":"Topaz","gly":"Flawless Topaz","gpy":"Perfect Topaz","gcb":"Chipped Saphire","gfb":"Flawed Saphire","gsb":"Saphire","glb":"Flawless Saphire","gpb":"Perfect Saphire","gcg":"Chipped Emerald","gfg":"Flawed Emerald","gsg":"Emerald","glg":"Flawless Emerald","gpg":"Perfect Emerald","gcr":"Chipped Ruby","gfr":"Flawed Ruby","gsr":"Ruby","glr":"Flawless Ruby","gpr":"Perfect Ruby","gcw":"Chipped Diamond","gfw":"Flawed Diamond","gsw":"Diamond","glw":"Flawless Diamond","gpw":"Perfect Diamond","hp1":"Lesser Healing Potion","hp2":"Light Healing Potion","hp3":"Healing Potion","hp4":"Strong Healing Potion","hp5":"Greater Healing Potion","mp1":"Lesser Mana Potion","mp2":"Light Mana Potion","mp3":"Mana Potion","mp4":"Strong Mana Potion","mp5":"Greater Mana Potion","skc":"Chipped Skull","skf":"Flawed Skull","sku":"Skull","skl":"Flawless Skull","skz":"Perfect Skull","hrb":"herb","cm1":"Charm Small","cm2":"Charm Medium","cm3":"Charm Large","rps":"Small Red Potion","rpl":"Large Red Potion","bps":"Small Blue Potion","bpl":"Large Blue Potion","r01":"El Rune","r02":"Eld Rune","r03":"Tir Rune","r04":"Nef Rune","r05":"Eth Rune","r06":"Ith Rune","r07":"Tal Rune","r08":"Ral Rune","r09":"Ort Rune","r10":"Thul Rune","r11":"Amn Rune","r12":"Sol Rune","r13":"Shael Rune","r14":"Dol Rune","r15":"Hel Rune","r16":"Io Rune","r17":"Lum Rune","r18":"Ko Rune","r19":"Fal Rune","r20":"Lem Rune (20# 蓝姆)","r21":"Pul Rune (21# 普尔)","r22":"Um Rune (22# 乌姆)","r23":"Mal Rune (23# 马尔)","r24":"Ist Rune (24# 伊司特)","r25":"Gul Rune (25# 古尔)","r26":"Vex Rune (26# 伐克斯)","r27":"Ohm Rune (27# 欧姆)","r28":"Lo Rune (28# 罗)","r29":"Sur Rune (29# 瑟)","r30":"Ber Rune (30# 贝)","r31":"Jah Rune (31# 乔)","r32":"Cham Rune (32# 查姆)","r33":"Zod Rune (33# 萨德)","jew":"Jewel","ice":"Maguffin","0sc":"Scroll","tr2":"Scroll of Malah - Boost Resistances","pk1":"Key of Terror (恐惧之钥)","pk2":"Key of Hate (憎恨之钥)","pk3":"Key of Destruction (毁灭之钥)","dhn":"Charged Essence of Hatred (憎恨之精华)","bey":"Baal's Eye","mbr":"Twisted Essence of Suffering (痛苦之精华)","toa":"Token of Absolution","tes":"Token of Absolution (赦免徽章)","ceh":"Standard of Heroes (英雄旗帜)","bet":"Burning Essence of Terror (恐惧之精华)","fed":"Festering Essence of Destruction (毁灭之精华)","std":"Standard","Annihilus":"Annihilus (毁灭小护身符)"};
export const CANONICAL_ITEM_RATIO_ROWS: readonly ItemRatioRow[] = [
{ function: 'Ratio', version: 0, uber: 0, classSpecific: 0, unique: 400, uniqueDiv: 2, uniqueMin: 6400, rare: 160, rareDiv: 3, rareMin: 3200, set: 125, setDiv: 6, setMin: 5600, magic: 30, magicDiv: 16, magicMin: 192, hiQual: 12, hiQualDiv: 16, normal: 4, normalDiv: 8 },
{ function: 'Uber', version: 0, uber: 1, classSpecific: 0, unique: 240, uniqueDiv: 2, uniqueMin: 6400, rare: 96, rareDiv: 3, rareMin: 3200, set: 96, setDiv: 6, setMin: 5600, magic: 3, magicDiv: 100, magicMin: 192, hiQual: 4, hiQualDiv: 16, normal: 1, normalDiv: 8 },
{ function: 'Ratio Exp', version: 1, uber: 0, classSpecific: 0, unique: 400, uniqueDiv: 1, uniqueMin: 6400, rare: 100, rareDiv: 2, rareMin: 3200, set: 160, setDiv: 2, setMin: 5600, magic: 34, magicDiv: 3, magicMin: 192, hiQual: 12, hiQualDiv: 8, normal: 2, normalDiv: 2 },
{ function: 'Uber Exp', version: 1, uber: 1, classSpecific: 0, unique: 400, uniqueDiv: 1, uniqueMin: 6400, rare: 100, rareDiv: 2, rareMin: 3200, set: 160, setDiv: 2, setMin: 5600, magic: 34, magicDiv: 3, magicMin: 192, hiQual: 12, hiQualDiv: 8, normal: 1, normalDiv: 1 },
{ function: 'Class Specific', version: 1, uber: 0, classSpecific: 1, unique: 240, uniqueDiv: 3, uniqueMin: 6400, rare: 80, rareDiv: 3, rareMin: 3200, set: 120, setDiv: 3, setMin: 5600, magic: 17, magicDiv: 6, magicMin: 192, hiQual: 9, hiQualDiv: 8, normal: 2, normalDiv: 2 },
{ function: 'Class Specific Uber', version: 1, uber: 1, classSpecific: 1, unique: 240, uniqueDiv: 3, uniqueMin: 6400, rare: 80, rareDiv: 3, rareMin: 3200, set: 120, setDiv: 3, setMin: 5600, magic: 17, magicDiv: 6, magicMin: 192, hiQual: 9, hiQualDiv: 8, normal: 1, normalDiv: 1 },
];
let _cachedTcTable: TreasureClassTable | undefined;
let _cachedAutoTcs: Map<string, AutoTcNode> | undefined;
/**
* Loads the default canonical 1.13c TreasureClassTable and merged auto-TCs.
*/
export function loadCanonicalTreasureClasses(): {
tcTable: TreasureClassTable;
autoTcs: Map<string, AutoTcNode>;
} {
if (_cachedTcTable && _cachedAutoTcs) {
return { tcTable: _cachedTcTable, autoTcs: _cachedAutoTcs };
}
const bytes = new TextEncoder().encode(CANONICAL_TC_EX_TXT);
const tcTable = parseTreasureClassTable(parseTable(bytes));
const autoTcs = new Map<string, AutoTcNode>();
for (const a of CANONICAL_AUTO_TCS_DATA) {
autoTcs.set(a.name, {
name: a.name,
group: 0,
level: a.level,
picks: a.picks as 1,
totalProb: a.totalProb,
entries: a.entries,
});
}
mergeAutoTreasureClasses(tcTable, autoTcs);
_cachedTcTable = tcTable;
_cachedAutoTcs = autoTcs;
return { tcTable, autoTcs };
}
// --- Interfaces & Calculation Helpers ----------------------------------------
export interface DirectProbabilities {
readonly tcName: string;
readonly picks: number;
readonly noDrop: number;
readonly totalWeight: number;
readonly probabilities: ReadonlyMap<string, number>;
}
export interface AnalyticItemDrop {
readonly item: string;
readonly name: string;
readonly singleProbability: number;
readonly compoundProbability: number;
readonly expectedDrops: number;
readonly oneInOdds: number;
readonly isGold: boolean;
readonly isRune: boolean;
}
export interface AnalyticTcResult {
readonly tcName: string;
readonly picks: number;
readonly effectivePlayers: number;
readonly noDropSingleProb: number;
readonly noDropCompoundProb: number;
readonly direct: ReadonlyMap<string, number>;
readonly leaves: readonly AnalyticItemDrop[];
readonly leafMap: ReadonlyMap<string, AnalyticItemDrop>;
}
export interface ReverseLookupEntry {
readonly tcName: string;
readonly picks: number;
readonly singleProbability: number;
readonly compoundProbability: number;
readonly oneInOdds: number;
}
export interface ReverseLookupResult {
readonly query: string;
readonly matchedCode: string;
readonly matchedName: string;
readonly entries: readonly ReverseLookupEntry[];
}
export interface QualityCounts {
normal: number;
superior: number;
magic: number;
rare: number;
set: number;
unique: number;
gold: number;
rune: number;
noDrop: number;
}
export interface DroppedItemSummary {
readonly code: string;
readonly name: string;
readonly quality: string;
readonly count: number;
readonly percentage: number;
}
export interface SimulationOptions {
readonly tcName: string;
readonly runs: number;
readonly gamePlayers?: number | undefined;
readonly partyPlayers?: number | undefined;
readonly magicFind?: number | undefined;
readonly difficulty?: 'normal' | 'nightmare' | 'hell' | undefined;
readonly isQuestDrop?: boolean | undefined;
readonly seed?: number | undefined;
readonly chunkSize?: number | undefined;
readonly tcTable?: TreasureClassTable | undefined;
readonly autoTcs?: Map<string, AutoTcNode> | undefined;
readonly itemRatioTable?: ItemRatioTable | undefined;
}
export interface SimulationProgress {
readonly completedRuns: number;
readonly totalRuns: number;
readonly itemsDropped: number;
readonly qualityCounts: QualityCounts;
readonly isFinished: boolean;
readonly isPaused: boolean;
}
export interface SimulationResult {
readonly totalRuns: number;
readonly itemsDropped: number;
readonly emptyRuns: number;
readonly averageDropsPerRun: number;
readonly qualityCounts: QualityCounts;
readonly itemSummaries: readonly DroppedItemSummary[];
}
/**
* Calculates compound probability 1 - (1 - p)^picks for picks >= 1.
* Guaranteed to be within [0, 1].
*/
export function calculateCompoundProbability(singleProbability: number, picks: number): number {
if (singleProbability <= 0) return 0;
if (singleProbability >= 1) return 1;
if (picks <= 0) return 1; // deterministic enumeration
if (picks === 1) return singleProbability;
const compound = 1 - Math.pow(1 - singleProbability, picks);
return Math.min(1, Math.max(0, compound));
}
/**
* Calculates direct 1-step probabilities of immediate children in a TreasureClass,
* including NoDrop and direct sub-TCs.
*/
export function calculateDirectProbabilities(
tcName: string,
options?: {
tcTable?: TreasureClassTable | undefined;
autoTcs?: Map<string, AutoTcNode> | undefined;
gamePlayers?: number | undefined;
partyPlayers?: number | undefined;
} | undefined,
): DirectProbabilities {
const table = options?.tcTable ?? loadCanonicalTreasureClasses().tcTable;
const autoMap = options?.autoTcs ?? loadCanonicalTreasureClasses().autoTcs;
let node: TreasureClassNode | undefined = table.get(tcName);
if (!node && autoMap.has(tcName)) {
node = autoTcToTreasureClassNode(autoMap.get(tcName)!);
}
if (!node) {
return {
tcName,
picks: 0,
noDrop: 0,
totalWeight: 0,
probabilities: new Map(),
};
}
const picks = node.picks ?? 1;
const probs = new Map<string, number>();
if (picks < 0) {
let sumWeights = 0;
for (const it of node.items) {
const prob = (it as any).prob ?? 0;
if (prob <= 0) continue;
sumWeights += prob;
const key = typeof it === 'string' ? it : it.item;
probs.set(key, (probs.get(key) ?? 0) + 1.0);
}
return {
tcName,
picks,
noDrop: 0,
totalWeight: sumWeights,
probabilities: probs,
};
}
const effectivePlayers = computeEffectivePlayers(options?.gamePlayers, options?.partyPlayers);
const baseNoDrop = node.noDrop ?? 0;
const totalProb = (node as any).totalProbExpansion ?? (node as any).totalProb ?? 0;
const scaledNoDrop = computeScaledNoDrop(baseNoDrop, totalProb, effectivePlayers);
const totalWeight = scaledNoDrop + totalProb;
if (totalWeight <= 0) {
return {
tcName,
picks,
noDrop: baseNoDrop,
totalWeight: 0,
probabilities: probs,
};
}
if (scaledNoDrop > 0) {
probs.set('NoDrop', scaledNoDrop / totalWeight);
}
for (const it of node.items) {
const prob = (it as any).prob ?? 0;
if (prob <= 0) continue;
const key = typeof it === 'string' ? it : it.item;
probs.set(key, (probs.get(key) ?? 0) + prob / totalWeight);
}
return {
tcName,
picks,
noDrop: scaledNoDrop,
totalWeight,
probabilities: probs,
};
}
/**
* Recursively expands a TreasureClass tree to calculate exact leaf item probabilities.
*/
export function calculateAnalyticProbabilities(
tcName: string,
options?: {
tcTable?: TreasureClassTable | undefined;
autoTcs?: Map<string, AutoTcNode> | undefined;
gamePlayers?: number | undefined;
partyPlayers?: number | undefined;
isExpansion?: boolean | undefined;
} | undefined,
): AnalyticTcResult {
const table = options?.tcTable ?? loadCanonicalTreasureClasses().tcTable;
const autoMap = options?.autoTcs ?? loadCanonicalTreasureClasses().autoTcs;
let rootNode: TreasureClassNode | undefined = table.get(tcName);
if (!rootNode && autoMap.has(tcName)) {
rootNode = autoTcToTreasureClassNode(autoMap.get(tcName)!);
}
const directResult = calculateDirectProbabilities(tcName, options);
const effectivePlayers = computeEffectivePlayers(options?.gamePlayers, options?.partyPlayers);
if (!rootNode) {
return {
tcName,
picks: 0,
effectivePlayers,
noDropSingleProb: 1.0,
noDropCompoundProb: 1.0,
direct: directResult.probabilities,
leaves: [],
leafMap: new Map(),
};
}
const rootPicks = rootNode.picks ?? 1;
const leafSingleProb = new Map<string, number>();
let noDropSingleProb = 0;
function expandNode(name: string, probWeight: number, depth: number) {
if (probWeight <= 0 || depth > 32) return;
const tc = table.get(name);
if (tc) {
if (tc.picks < 0) {
for (const it of tc.items) {
const p = (it as any).prob ?? 0;
if (p <= 0) continue;
for (let k = 0; k < p; k++) {
expandNode(it.item, probWeight, depth + 1);
}
}
return;
}
const baseNoDrop = tc.noDrop ?? 0;
const totalProb = tc.totalProbExpansion ?? (tc as any).totalProb ?? 0;
const scaledNoDrop = computeScaledNoDrop(baseNoDrop, totalProb, effectivePlayers);
const totalWeight = scaledNoDrop + totalProb;
if (totalWeight <= 0) return;
if (scaledNoDrop > 0) {
const pNoDrop = (scaledNoDrop / totalWeight) * probWeight;
noDropSingleProb += pNoDrop;
}
for (const it of tc.items) {
const p = (it as any).prob ?? 0;
if (p <= 0) continue;
const branchProb = (p / totalWeight) * probWeight;
expandNode(it.item, branchProb, depth + 1);
}
return;
}
const autoNode = autoMap.get(name);
if (autoNode) {
const totalProb = autoNode.totalProb ?? 0;
if (totalProb <= 0) return;
for (const entry of autoNode.entries) {
const branchProb = (entry.prob / totalProb) * probWeight;
expandNode(entry.itemCode, branchProb, depth + 1);
}
return;
}
let leafCode = name.trim();
if (leafCode.startsWith('gld,mul=')) {
leafCode = 'gld';
}
leafSingleProb.set(leafCode, (leafSingleProb.get(leafCode) ?? 0) + probWeight);
}
expandNode(tcName, 1.0, 0);
const leaves: AnalyticItemDrop[] = [];
const leafMap = new Map<string, AnalyticItemDrop>();
for (const [code, pSingle] of leafSingleProb) {
const compound = rootPicks < 0 ? Math.min(1, pSingle) : calculateCompoundProbability(pSingle, rootPicks);
const expected = (rootPicks < 0 ? 1 : rootPicks) * pSingle;
const odds = compound > 0 ? 1 / compound : Infinity;
const isGold = code === 'gld';
const isRune = /^r(?:0[1-9]|[12]\d|3[0-3])$/.test(code);
const name = CANONICAL_ITEM_NAMES[code] ?? code;
const itemDrop: AnalyticItemDrop = {
item: code,
name,
singleProbability: pSingle,
compoundProbability: compound,
expectedDrops: expected,
oneInOdds: odds,
isGold,
isRune,
};
leaves.push(itemDrop);
leafMap.set(code, itemDrop);
}
leaves.sort((a, b) => b.compoundProbability - a.compoundProbability);
const noDropCompoundProb = rootPicks < 0 ? 0 : Math.pow(Math.min(1, Math.max(0, noDropSingleProb)), rootPicks);
return {
tcName,
picks: rootPicks,
effectivePlayers,
noDropSingleProb,
noDropCompoundProb,
direct: directResult.probabilities,
leaves,
leafMap,
};
}
/**
* Builds reverse lookup index mapping item code to all dropping TreasureClasses.
*/
export function buildReverseLookupIndex(
tcTable: TreasureClassTable,
autoTcs?: Map<string, AutoTcNode> | undefined,
options?: { gamePlayers?: number | undefined; partyPlayers?: number | undefined } | undefined,
): Map<string, ReverseLookupEntry[]> {
const autoMap = autoTcs ?? loadCanonicalTreasureClasses().autoTcs;
const index = new Map<string, ReverseLookupEntry[]>();
for (const tc of tcTable.all) {
const result = calculateAnalyticProbabilities(tc.name, {
tcTable,
autoTcs: autoMap,
...(options?.gamePlayers !== undefined ? { gamePlayers: options.gamePlayers } : {}),
...(options?.partyPlayers !== undefined ? { partyPlayers: options.partyPlayers } : {}),
});
for (const leaf of result.leaves) {
if (leaf.item === 'NoDrop') continue;
let list = index.get(leaf.item);
if (!list) {
list = [];
index.set(leaf.item, list);
}
list.push({
tcName: tc.name,
picks: tc.picks,
singleProbability: leaf.singleProbability,
compoundProbability: leaf.compoundProbability,
oneInOdds: leaf.oneInOdds,
});
}
}
for (const list of index.values()) {
list.sort((a, b) => b.compoundProbability - a.compoundProbability);
}
return index;
}
/**
* Performs reverse lookup query for an item code or name.
*/
export function reverseLookup(
index: Map<string, ReverseLookupEntry[]>,
query: string,
itemNames?: Record<string, string>,
): ReverseLookupResult[] {
const names = itemNames ?? CANONICAL_ITEM_NAMES;
const q = query.trim().toLowerCase();
if (!q) return [];
const matchedCodes = new Set<string>();
if (index.has(q)) {
matchedCodes.add(q);
}
for (const [code, name] of Object.entries(names)) {
const lowerName = name.toLowerCase();
if (code.toLowerCase() === q || lowerName.includes(q)) {
if (index.has(code)) {
matchedCodes.add(code);
}
}
}
if (q === 'shako' && index.has('uap')) matchedCodes.add('uap');
if (q === 'zod' && index.has('r33')) matchedCodes.add('r33');
if (q === 'ber' && index.has('r30')) matchedCodes.add('r30');
if (q === 'jah' && index.has('r31')) matchedCodes.add('r31');
if (q === 'soj' && index.has('rin')) matchedCodes.add('rin');
const results: ReverseLookupResult[] = [];
for (const code of matchedCodes) {
const entries = index.get(code) ?? [];
results.push({
query,
matchedCode: code,
matchedName: names[code] ?? code,
entries,
});
}
return results;
}
const QUALITY_RANK: Record<string, number> = {
unique: 6,
set: 5,
rare: 4,
magic: 3,
superior: 2,
normal: 1,
gold: 0,
rune: 7,
};
export async function runMonteCarloSimulation(
options: SimulationOptions,
onProgress?: (progress: SimulationProgress) => void | Promise<void>,
): Promise<SimulationResult> {
const tcTable = options.tcTable ?? loadCanonicalTreasureClasses().tcTable;
const autoTcs = options.autoTcs ?? loadCanonicalTreasureClasses().autoTcs;
if (options.tcTable && options.autoTcs) {
mergeAutoTreasureClasses(tcTable, autoTcs);
}
const itemRatio = options.itemRatioTable ?? createItemRatioTable(CANONICAL_ITEM_RATIO_ROWS);
const ratioRow = itemRatio.getRow(1, 0, 0) ?? CANONICAL_ITEM_RATIO_ROWS[2]!;
let effectiveTcName = options.tcName;
if (options.isQuestDrop) {
const questTc = effectiveTcName.replace(/^(Andariel|Duriel|Mephisto|Diablo|Baal)(.*)$/, '$1q$2');
if (tcTable.get(questTc)) {
effectiveTcName = questTc;
}
}
// Critical fix: When seed is undefined or 0, initialize with non-zero pseudorandom 32-bit integer
// to avoid D2 LCG (0 * multiplier + 0 = 0) permanent zero lock.
const initialSeed = (options.seed !== undefined && options.seed !== 0)
? options.seed
: ((Math.floor(Math.random() * 0x7fffffff) + 1) >>> 0);
const rng = new D2Rng(initialSeed);
const totalRuns = options.runs;
const chunkSize = options.chunkSize ?? Math.max(100, Math.min(5000, Math.floor(totalRuns / 20)));
const qualityCounts: QualityCounts = {
normal: 0,
superior: 0,
magic: 0,
rare: 0,
set: 0,
unique: 0,
gold: 0,
rune: 0,
noDrop: 0,
};
const itemCounts = new Map<string, { count: number; quality: string }>();
let totalDropped = 0;
let emptyRuns = 0;
let mlvl = 85;
if (options.difficulty === 'normal') mlvl = 20;
else if (options.difficulty === 'nightmare') mlvl = 55;
let completedRuns = 0;
while (completedRuns < totalRuns) {
const currentChunk = Math.min(chunkSize, totalRuns - completedRuns);
for (let i = 0; i < currentChunk; i++) {
const drops = rollTreasureClass(effectiveTcName, {
rng,
tcTable,
gamePlayers: options.gamePlayers ?? 1,
partyPlayers: options.partyPlayers ?? 1,
isExpansion: true,
});
if (drops.length === 0) {
emptyRuns++;
qualityCounts.noDrop++;
continue;
}
for (const drop of drops) {
totalDropped++;
const code = drop.code;
let quality = 'normal';
if (drop.isGold) {
quality = 'gold';
qualityCounts.gold++;
} else if (/^r(?:0[1-9]|[12]\d|3[0-3])$/.test(code)) {
quality = 'rune';
qualityCounts.rune++;
} else if (drop.forcedUnique) {
quality = 'unique';
qualityCounts.unique++;
} else if (drop.forcedSet) {
quality = 'set';
qualityCounts.set++;
} else {
const tier = rollItemQuality({
ilvl: mlvl,
qlvl: 10,
magicFind: options.magicFind ?? 0,
row: ratioRow,
tcFactors: {
unique: drop.qualityFactors[0],
set: drop.qualityFactors[1],
rare: drop.qualityFactors[2],
magic: drop.qualityFactors[3],
},
rng,
});
quality = tier === 'low' ? 'normal' : tier;
if (quality === 'unique') qualityCounts.unique++;
else if (quality === 'set') qualityCounts.set++;
else if (quality === 'rare') qualityCounts.rare++;
else if (quality === 'magic') qualityCounts.magic++;
else if (quality === 'superior') qualityCounts.superior++;
else qualityCounts.normal++;
}
const existing = itemCounts.get(code);
if (existing) {
existing.count++;
if ((QUALITY_RANK[quality] ?? 0) > (QUALITY_RANK[existing.quality] ?? 0)) {
existing.quality = quality;
}
} else {
itemCounts.set(code, { count: 1, quality });
}
}
}
completedRuns += currentChunk;
if (onProgress) {
await onProgress({
completedRuns,
totalRuns,
itemsDropped: totalDropped,
qualityCounts: { ...qualityCounts },
isFinished: completedRuns >= totalRuns,
isPaused: false,
});
await new Promise(r => setTimeout(r, 0));
}
}
const itemSummaries: DroppedItemSummary[] = [];
for (const [code, data] of itemCounts) {
itemSummaries.push({
code,
name: CANONICAL_ITEM_NAMES[code] ?? code,
quality: data.quality,
count: data.count,
percentage: (data.count / totalRuns) * 100,
});
}
itemSummaries.sort((a, b) => b.count - a.count);
return {
totalRuns,
itemsDropped: totalDropped,
emptyRuns,
averageDropsPerRun: totalRuns > 0 ? totalDropped / totalRuns : 0,
qualityCounts,
itemSummaries,
};
}
// --- Maxroll-Inspired Monster Selector & Rich Item Presentation --------------
export type MonsterCategory = 'boss' | 'superunique' | 'farm' | 'chest' | 'normal';
export interface MonsterPreset {
readonly id: string;
readonly nameCn: string;
readonly nameEn: string;
readonly category: MonsterCategory;
readonly act: 1 | 2 | 3 | 4 | 5;
readonly areaCn: string;
readonly areaEn: string;
readonly mlvl: { normal: number; nightmare: number; hell: number };
readonly tc: { normal: string; nightmare: string; hell: string };
readonly questTc?: { normal: string; nightmare: string; hell: string };
readonly picks: number;
readonly baseNoDrop: number;
readonly icon: string;
readonly descCn: string;
}
export const MONSTER_PRESETS: readonly MonsterPreset[] = [
// --- Act Bosses ---
{
id: 'andariel',
nameCn: '安达利尔 (Andariel)',
nameEn: 'Maiden of Anguish',
category: 'boss',
act: 1,
areaCn: '地下墓穴第四层 (Catacombs L4)',
areaEn: 'Catacombs Level 4',
mlvl: { normal: 12, nightmare: 49, hell: 75 },
tc: { normal: 'Andariel', nightmare: 'Andariel (N)', hell: 'Andariel (H)' },
questTc: { normal: 'Andarielq', nightmare: 'Andarielq (N)', hell: 'Andarielq (H)' },
picks: 7,
baseNoDrop: 19,
icon: '🕷️',
descCn: '第一幕关底首领,弱火(-50%火抗),Bug首杀热门目标,乔丹之石 (SOJ) 与暗金首饰核心掉落源。',
},
{
id: 'duriel',
nameCn: '督瑞尔 (Duriel)',
nameEn: 'Lord of Pain',
category: 'boss',
act: 2,
areaCn: '塔·拉夏的古墓 (Tal Rasha Chamber)',
areaEn: "Tal Rasha's Chamber",
mlvl: { normal: 22, nightmare: 55, hell: 88 },
tc: { normal: 'Duriel', nightmare: 'Duriel (N)', hell: 'Duriel (H)' },
questTc: { normal: 'Durielq', nightmare: 'Durielq (N)', hell: 'Durielq (H)' },
picks: 7,
baseNoDrop: 19,
icon: '🐛',
descCn: '第二幕关底首领,神圣冰冻光环,回城卷轴与日用品暗金出处。',
},
{
id: 'mephisto',
nameCn: '墨菲斯托 (Mephisto)',
nameEn: 'Lord of Hatred',
category: 'boss',
act: 3,
areaCn: '憎恨囚牢第三层 (Durance of Hate L3)',
areaEn: 'Durance of Hate Level 3',
mlvl: { normal: 26, nightmare: 59, hell: 87 },
tc: { normal: 'Mephisto', nightmare: 'Mephisto (N)', hell: 'Mephisto (H)' },
questTc: { normal: 'Mephistoq', nightmare: 'Mephistoq (N)', hell: 'Mephistoq (H)' },
picks: 7,
baseNoDrop: 15,
icon: '💀',
descCn: '第三幕关底首领,全游戏刷军帽、暴风之盾、眼球、海蛇皮等中高级暗金最高效目标。',
},
{
id: 'diablo',
nameCn: '暗黑破坏神 (Diablo)',
nameEn: 'Lord of Terror',
category: 'boss',
act: 4,
areaCn: '混沌避难所 (Chaos Sanctuary)',
areaEn: 'Chaos Sanctuary',
mlvl: { normal: 40, nightmare: 62, hell: 94 },
tc: { normal: 'Diablo', nightmare: 'Diablo (N)', hell: 'Diablo (H)' },
questTc: { normal: 'Diabloq', nightmare: 'Diabloq (N)', hell: 'Diabloq (H)' },
picks: 7,
baseNoDrop: 15,
icon: '👹',
descCn: '第四幕关底首领,红色闪电地狱火,mlvl高达94,掉落大君之怒、马拉等顶级首饰。',
},
{
id: 'baal',
nameCn: '巴尔 (Baal)',
nameEn: 'Lord of Destruction',
category: 'boss',
act: 5,
areaCn: '世界之石大厅 (Worldstone Chamber)',
areaEn: 'Worldstone Chamber',
mlvl: { normal: 60, nightmare: 75, hell: 99 },
tc: { normal: 'Baal', nightmare: 'Baal (N)', hell: 'Baal (H)' },
questTc: { normal: 'Baalq', nightmare: 'Baalq (N)', hell: 'Baalq (H)' },
picks: 7,
baseNoDrop: 15,
icon: '👿',
descCn: '第五幕关底终极首领,全游戏最高等级(mlvl 99),TC 87全解锁,可掉落全游戏所有暗金底模。',
},
// --- Superuniques ---
{
id: 'countess',
nameCn: '女伯爵 (The Countess)',
nameEn: 'The Countess',
category: 'superunique',
act: 1,
areaCn: '遗忘之塔第五层 (Tower Cellar L5)',
areaEn: 'Tower Cellar Level 5',
mlvl: { normal: 12, nightmare: 45, hell: 82 },
tc: { normal: 'Countess', nightmare: 'Countess (N)', hell: 'Countess (H)' },
picks: 5,
baseNoDrop: 19,
icon: '🏰',
descCn: '符文之王,拥有独立符文特殊掉落池(最高掉落28#罗),掉落1#恐惧之钥 (Key of Terror)。',
},
{
id: 'summoner',
nameCn: '召唤者 (The Summoner)',
nameEn: 'The Summoner',
category: 'superunique',
act: 2,
areaCn: '神秘避难所 (Arcane Sanctuary)',
areaEn: 'Arcane Sanctuary',
mlvl: { normal: 18, nightmare: 55, hell: 80 },
tc: { normal: 'Summoner', nightmare: 'Summoner (N)', hell: 'Summoner (H)' },
picks: 5,
baseNoDrop: 19,
icon: '🔮',
descCn: '神秘避难所尽头守护者,赫拉迪克真理追寻者,掉落2#憎恨之钥 (Key of Hate)。',
},
{
id: 'nihlathak',
nameCn: '尼拉塞克 (Nihlathak)',
nameEn: 'Nihlathak',
category: 'superunique',
act: 5,
areaCn: '瓦特之厅 (Halls of Vaught)',
areaEn: 'Halls of Vaught',
mlvl: { normal: 65, nightmare: 70, hell: 95 },
tc: { normal: 'Nihlathak', nightmare: 'Nihlathak (N)', hell: 'Nihlathak (H)' },
picks: 5,
baseNoDrop: 19,
icon: '☠️',
descCn: '哈洛加斯背叛者,极速尸体爆炸致命,mlvl高达95,掉落3#毁灭之钥 (Key of Destruction)。',
},
{
id: 'pindleskin',
nameCn: '暴躁外皮 / 皮叔 (Pindleskin)',
nameEn: 'Pindleskin',
category: 'superunique',
act: 5,
areaCn: '尼拉塞克神殿红门 (Nihlathak Temple)',
areaEn: "Nihlathak's Temple",
mlvl: { normal: 68, nightmare: 73, hell: 86 },
tc: { normal: 'Act 5 Super Ax', nightmare: 'Act 5 (N) Super Ax', hell: 'Act 5 (H) Super Cx' },
picks: 2,
baseNoDrop: 0,
icon: '🧟',
descCn: '红门十五秒速刷首选,除了泰瑞尔之力、蜘蛛之网等少数外可出几乎一切暗金。',
},
{
id: 'council',
nameCn: '崔凡克最高议会 (Travincal Council)',
nameEn: 'High Council',
category: 'superunique',
act: 3,
areaCn: '崔凡克神殿 (Travincal)',
areaEn: 'Travincal',
mlvl: { normal: 28, nightmare: 57, hell: 85 },
tc: { normal: 'Council', nightmare: 'Council (N)', hell: 'Council (H)' },
picks: 3,
baseNoDrop: 19,
icon: '🪙',
descCn: '瘸子群,打钱野蛮人圣地,极高的高级符文(最高至33#萨德)产出率。',
},
{
id: 'shenk_eldritch',
nameCn: '督军山克与亚瑞克 (Shenk & Eldritch)',
nameEn: 'Shenk & Eldritch',
category: 'superunique',
act: 5,
areaCn: '冰冻高地小站 (Frigid Highlands)',
areaEn: 'Frigid Highlands',
mlvl: { normal: 65, nightmare: 71, hell: 84 },
tc: { normal: 'Act 5 Super A', nightmare: 'Act 5 (N) Super A', hell: 'Act 5 (H) Super Cx' },
picks: 2,
baseNoDrop: 0,
icon: '⚔️',
descCn: '冰冻高地小站上下两侧,出门即打,起步速刷固定暗金怪双雄。',
},
{
id: 'cow_king',
nameCn: '母牛之王 / 牛王 (Cow King)',
nameEn: 'The Cow King',
category: 'superunique',
act: 1,
areaCn: '秘密母牛关 (Secret Cow Level)',
areaEn: 'The Secret Cow Level',
mlvl: { normal: 31, nightmare: 67, hell: 84 },
tc: { normal: 'Cow King', nightmare: 'Cow King (N)', hell: 'Cow King (H)' },
picks: 5,
baseNoDrop: 19,
icon: '🐮',
descCn: '母牛之王,掉落牛王皮靴、牛王生皮、牛王之角专属套装。',
},
{
id: 'radament',
nameCn: '罗达门特 (Radament)',
nameEn: 'Radament',
category: 'superunique',
act: 2,
areaCn: '下水道第三层 (Sewers L3)',
areaEn: 'Sewers Level 3',
mlvl: { normal: 16, nightmare: 49, hell: 83 },
tc: { normal: 'Radament', nightmare: 'Radament (N)', hell: 'Radament (H)' },
picks: 5,
baseNoDrop: 19,
icon: '📜',
descCn: '复活木乃伊群首领,技能之书任务目标。',
},
{
id: 'izual',
nameCn: '衣卒尔 (Izual)',
nameEn: 'Izual',
category: 'superunique',
act: 4,
areaCn: '绝望平原 (Plains of Despair)',
areaEn: 'Plains of Despair',
mlvl: { normal: 29, nightmare: 60, hell: 86 },
tc: { normal: 'Izual', nightmare: 'Izual (N)', hell: 'Izual (H)' },
picks: 5,
baseNoDrop: 19,
icon: '👼',
descCn: '被诅咒的堕落天使,击杀奖励2点珍贵技能点。',
},
{
id: 'hephasto',
nameCn: '海法斯特盔甲制作者 (Hephasto)',
nameEn: 'Hephasto the Armorer',
category: 'superunique',
act: 4,
areaCn: '地狱熔炉 (River of Flame)',
areaEn: 'River of Flame',
mlvl: { normal: 28, nightmare: 59, hell: 88 },
tc: { normal: 'Act 4 Super C', nightmare: 'Act 4 (N) Super C', hell: 'Act 4 (H) Super C' },
picks: 2,
baseNoDrop: 0,
icon: '⚒️',
descCn: '地狱熔炉铁锤守护者,极高物理攻击与狂热灵气。',
},
// --- Farming Areas ---
{
id: 'cows',
nameCn: '秘密母牛关 母牛群 (Hell Bovine)',
nameEn: 'Hell Bovine',
category: 'farm',
act: 1,
areaCn: '秘密母牛关 (Secret Cow Level)',
areaEn: 'The Secret Cow Level',
mlvl: { normal: 28, nightmare: 64, hell: 81 },
tc: { normal: 'Cow', nightmare: 'Cow (N)', hell: 'Cow (H)' },
picks: 1,
baseNoDrop: 100,
icon: '🐄',
descCn: '超大密度怪物群,标马与尸爆死灵最爱,极佳的符文之语白色底模与高级符文出产地。',
},
{
id: 'wraith_farm',
nameCn: '幽灵怪 / 恶灵 / 鬼火 (Ghosts & Wraiths)',
nameEn: 'Ghosts & Wraiths',
category: 'farm',
act: 2,
areaCn: '神秘避难所 / 世界之石要塞',
areaEn: 'Arcane Sanctuary & Worldstone',
mlvl: { normal: 15, nightmare: 45, hell: 83 },
tc: { normal: 'Act 1 Wraith A', nightmare: 'Act 3 (N) Wraith C', hell: 'Act 5 (H) Wraith C' },
picks: 1,
baseNoDrop: 100,
icon: '👻',
descCn: '物理免疫浮空怪,剔除了绝大部分普通装备杂质,高级符文产出期望比常规小怪高约3.5倍!',
},
{
id: 'pit_unique',
nameCn: '85级场景 随机暗金首领 (Level 85 Area Unique)',
nameEn: 'Level 85 Area Boss',
category: 'farm',
act: 1,
areaCn: '地穴 / 古代通道 / 混沌避难所',
areaEn: 'The Pit, Ancient Tunnels, Chaos',
mlvl: { normal: 20, nightmare: 60, hell: 88 },
tc: { normal: 'Act 5 Unique A', nightmare: 'Act 5 (N) Unique A', hell: 'Act 5 (H) Unique C' },
picks: 2,
baseNoDrop: 0,
icon: '👑',
descCn: 'TC 87 全解锁,mlvl 88,可以掉落全游戏包括风之力、格利风之眼在内的所有暗金神器。',
},
{
id: 'pit_champion',
nameCn: '85级场景 冠军蓝怪 (Level 85 Area Champion)',
nameEn: 'Level 85 Area Champion',
category: 'farm',
act: 1,
areaCn: '地穴 / 古代通道 / 混沌避难所',
areaEn: 'Level 85 Zones',
mlvl: { normal: 19, nightmare: 59, hell: 87 },
tc: { normal: 'Act 5 Champ A', nightmare: 'Act 5 (N) Champ A', hell: 'Act 5 (H) Champ C' },
picks: -2,
baseNoDrop: 0,
icon: '🔷',
descCn: '85场景蓝怪小队,确定性掉落2次,丰厚经验值与高级底模出产地。',
},
// --- Chests ---
{
id: 'lk_superchests',
nameCn: '库拉斯特下层 超级宝箱 (LK Superchests)',
nameEn: 'LK Superchests',
category: 'chest',
act: 3,
areaCn: '库拉斯特下层 (Lower Kurast)',
areaEn: 'Lower Kurast',
mlvl: { normal: 22, nightmare: 52, hell: 80 },
tc: { normal: 'Act 3 Chest A', nightmare: 'Act 3 (N) Chest C', hell: 'Act 3 (H) Chest C' },
picks: 4,
baseNoDrop: 100,
icon: '📦',
descCn: '著名LK双营火6箱子速开,单人模式下高级符文(最高至30#贝)与技能大板的最高效出处。',
},
// --- Normal Mobs ---
{
id: 'act1_h2h',
nameCn: '第一幕 近战小怪 (Act 1 Melee)',
nameEn: 'Act 1 Fallen / Zombie',
category: 'normal',
act: 1,
areaCn: '鲜血荒地至修道院',
areaEn: 'Blood Moor to Monastery',
mlvl: { normal: 3, nightmare: 38, hell: 68 },
tc: { normal: 'Act 1 H2H A', nightmare: 'Act 1 (N) H2H A', hell: 'Act 1 (H) H2H A' },
picks: 1,
baseNoDrop: 100,
icon: '🗡️',
descCn: '沉沦魔、僵尸等第一幕近战小怪基准掉落。',
},
{
id: 'act5_h2h',
nameCn: '第五幕 近战小怪 (Act 5 Melee)',
nameEn: 'Act 5 Minions',
category: 'normal',
act: 5,
areaCn: '毁灭王座与世界之石要塞',
areaEn: 'Worldstone Keep',
mlvl: { normal: 36, nightmare: 62, hell: 85 },
tc: { normal: 'Act 5 H2H C', nightmare: 'Act 5 (N) H2H C', hell: 'Act 5 (H) H2H C' },
picks: 1,
baseNoDrop: 100,
icon: '🛡️',
descCn: '第五幕毁灭王座强力近战小怪基准掉落。',
},
];
/**
* Resolves the effective TreasureClass name for a given monster preset, difficulty, and quest drop status.
* If customOverride is provided, customOverride takes precedence.
*/
export function getMonsterPresetTc(
monster: MonsterPreset,
difficulty: 'normal' | 'nightmare' | 'hell',
quest: boolean = false,
customOverride?: string | null,
): string {
if (customOverride && customOverride.trim()) {
return customOverride.trim();
}
if (quest && monster.questTc) {
return monster.questTc[difficulty];
}
return monster.tc[difficulty];
}
export type ItemCategoryFilter = 'all' | 'unique' | 'set' | 'rune' | 'base' | 'charm_gem' | 'misc';
export const FAMOUS_ITEMS_META: Readonly<Record<string, { famousTitle: string; itemTypeCn: string; qlvl?: number }>> = {
uap: { famousTitle: '谐角之冠 (Harlequin Crest) · 军帽', itemTypeCn: '防具 · 头盔', qlvl: 69 },
uit: { famousTitle: '暴风之盾 (Stormshield) · 统御者大盾', itemTypeCn: '防具 · 盾牌', qlvl: 77 },
ci3: { famousTitle: "格利风之眼 (Griffon's Eye) · 权冠", itemTypeCn: '防具 · 头环', qlvl: 85 },
ci2: { famousTitle: "奇拉的守护 (Kira's Guardian) · 头饰", itemTypeCn: '防具 · 头环', qlvl: 77 },
utp: { famousTitle: '执政官铠甲 · 极品谜团/刚毅轻甲底模', itemTypeCn: '防具 · 铠甲', qlvl: 84 },
xtp: { famousTitle: '法师铠甲 · 主流3孔谜团底模', itemTypeCn: '防具 · 铠甲', qlvl: 60 },
uar: { famousTitle: "泰瑞尔之力 (Tyrael's Might) · 最稀有暗金", itemTypeCn: '防具 · 重甲', qlvl: 87 },
xea: { famousTitle: '蛇魔法师之皮 (Skin of the Vipermagi) · 海蛇皮', itemTypeCn: '防具 · 铠甲', qlvl: 37 },
xsk: { famousTitle: "塔·拉夏的赫拉迪克纹章 · 死亡面具", itemTypeCn: '防具 · 头盔', qlvl: 42 },
xui: { famousTitle: "诗寇蒂的愤怒 (Skullder's Ire) · 幽灵战甲", itemTypeCn: '防具 · 铠甲', qlvl: 50 },
urn: { famousTitle: '年纪之冠 (Crown of Ages) · 日冕之冠', itemTypeCn: '防具 · 头盔', qlvl: 86 },
ulc: { famousTitle: '蜘蛛之网 (Arachnid Mesh) · 蛛网腰带 (技能腰)', itemTypeCn: '防具 · 腰带', qlvl: 87 },
umc: { famousTitle: "维尔登戈的心结 (Verdungo's Hearty Cord) · 秘银腰带", itemTypeCn: '防具 · 腰带', qlvl: 71 },
xtb: { famousTitle: '战争之旅 (War Traveler) · 战旅50MF打宝靴', itemTypeCn: '防具 · 靴子', qlvl: 50 },
xhb: { famousTitle: '蚀肉骑士 (Gore Rider) · 骑士靴 (CB/DS/OW)', itemTypeCn: '防具 · 靴子', qlvl: 55 },
uvb: { famousTitle: '沙暴之旅 (Sandstorm Trek) · 蛛网之靴', itemTypeCn: '防具 · 靴子', qlvl: 74 },
umb: { famousTitle: '骨髓行走 (Marrowwalk) · 骸骨之靴', itemTypeCn: '防具 · 靴子', qlvl: 74 },
tgl: { famousTitle: '法师之拳 (Magefist) · 轻型铁手套 (20FCR)', itemTypeCn: '防具 · 手套', qlvl: 31 },
'7cr': { famousTitle: '碧蓝怒火 / 悔恨/最后希望 极品幻化之刃底模', itemTypeCn: '武器 · 单手剑', qlvl: 73 },
'7wa': { famousTitle: '狂战士斧 · 死亡之刀 / 悔恨/野兽顶级底模', itemTypeCn: '武器 · 单手斧', qlvl: 86 },
'7pa': { famousTitle: '神秘之斧 · 佣兵眼光/无限 极品长柄底模', itemTypeCn: '武器 · 长柄武器', qlvl: 79 },
'7vo': { famousTitle: '巨神之斧 · 必出4孔 佣兵眼光/无限底模', itemTypeCn: '武器 · 长柄武器', qlvl: 84 },
'7s8': { famousTitle: "死神的丧钟 (The Reaper's Toll) · 锐利之斧", itemTypeCn: '武器 · 长柄武器', qlvl: 71 },
'7wc': { famousTitle: '巨神长柄斧 · 攻速底模', itemTypeCn: '武器 · 长柄武器', qlvl: 86 },
amc: { famousTitle: '大院长之弓 · +3技能 信心 (Faith) 毕业底模', itemTypeCn: '武器 · 亚马逊弓', qlvl: 78 },
'6lw': { famousTitle: '风之力 (Windforce) · 九头蛇弓', itemTypeCn: '武器 · 弓', qlvl: 85 },
oba: { famousTitle: '眼球 (The Oculus) · 涡流水晶', itemTypeCn: '武器 · 法师球', qlvl: 50 },
obf: { famousTitle: "死亡深度 (Death's Fathom) · 次元碎片", itemTypeCn: '武器 · 法师球', qlvl: 85 },
'7gw': { famousTitle: "破隐一击 (Death's Web) · 破隐法杖", itemTypeCn: '武器 · 死灵法杖', qlvl: 86 },
baa: { famousTitle: "亚瑞特的面容 (Arreat's Face) · 飞机头", itemTypeCn: '野蛮人专属', qlvl: 50 },
dra: { famousTitle: "加尔的长发 (Jalal's Mane) · 狼头", itemTypeCn: '德鲁伊专属', qlvl: 50 },
pa9: { famousTitle: '撒卡兰姆使者 (Herald of Zakarum) · 饰金盾', itemTypeCn: '圣骑士专属', qlvl: 50 },
pab: { famousTitle: '神圣小盾 · 极品45全抗 流亡/精神底模', itemTypeCn: '圣骑士专属', qlvl: 63 },
ne9: { famousTitle: '侏儒 (Homunculus) · 圣堂总管之颅', itemTypeCn: '死灵法师专属', qlvl: 50 },
rin: { famousTitle: '乔丹之石 (SOJ) / 乌鸦之霜 / 婚戒', itemTypeCn: '珠宝首饰 · 戒指', qlvl: 1 },
amu: { famousTitle: '马拉的万花筒 / 大君之怒 / 塔拉夏护身符', itemTypeCn: '珠宝首饰 · 护身符', qlvl: 1 },
jew: { famousTitle: '彩虹刻面 (Rainbow Facet) / 40增伤15攻速宝珠', itemTypeCn: '珠宝首饰 · 珠宝', qlvl: 1 },
cm1: { famousTitle: '小护身符 · 20生命5全抗 / 毁灭 (Annihilus)', itemTypeCn: '护身符 · 小护身符', qlvl: 1 },
cm2: { famousTitle: '中护身符 · 地狱火炬 (Hellfire Torch)', itemTypeCn: '护身符 · 中护身符', qlvl: 1 },
cm3: { famousTitle: '超大护身符 · 职业+1技能板 / 吉黑德的运气', itemTypeCn: '护身符 · 超大护身符', qlvl: 1 },
pk1: { famousTitle: '恐惧之钥 (Key of Terror) · 女伯爵掉落', itemTypeCn: '任务道具 · 钥匙', qlvl: 80 },
pk2: { famousTitle: '憎恨之钥 (Key of Hate) · 召唤者掉落', itemTypeCn: '任务道具 · 钥匙', qlvl: 80 },
pk3: { famousTitle: '毁灭之钥 (Key of Destruction) · 尼拉塞克掉落', itemTypeCn: '任务道具 · 钥匙', qlvl: 80 },
mbr: { famousTitle: '痛苦之精华 · 安姐/督瑞尔掉落', itemTypeCn: '洗点材料 · 精华', qlvl: 80 },
dhn: { famousTitle: '憎恨之精华 · 劳模掉落', itemTypeCn: '洗点材料 · 精华', qlvl: 80 },
bet: { famousTitle: '恐惧之精华 · 大菠萝掉落', itemTypeCn: '洗点材料 · 精华', qlvl: 80 },
fed: { famousTitle: '毁灭之精华 · 巴尔掉落', itemTypeCn: '洗点材料 · 精华', qlvl: 80 },
tes: { famousTitle: '赦免徽章 (Token of Absolution) · 4色精华洗点水', itemTypeCn: '重置道具', qlvl: 80 },
r20: { famousTitle: '20# 蓝姆 (Lem) · 财富/打钱蛮子', itemTypeCn: '高级符文 · 20#', qlvl: 43 },
r21: { famousTitle: '21# 普尔 (Pul) · 誓约/石块', itemTypeCn: '高级符文 · 21#', qlvl: 45 },
r22: { famousTitle: '22# 乌姆 (Um) · 强制/盔甲镶嵌22全抗', itemTypeCn: '高级符文 · 22#', qlvl: 47 },
r23: { famousTitle: '23# 马尔 (Mal) · 战争召唤/弑君者', itemTypeCn: '高级符文 · 23#', qlvl: 49 },
r24: { famousTitle: '24# 伊司特 (Ist) · 战争召唤/25MF打宝神珠', itemTypeCn: '高级符文 · 24#', qlvl: 51 },
r25: { famousTitle: '25# 古尔 (Gul) · 死亡之呼吸/橡树之心', itemTypeCn: '高级符文 · 25#', qlvl: 53 },
r26: { famousTitle: '26# 伐克斯 (Vex) · 橡树之心 (HOTO)/凤凰', itemTypeCn: '大号符文 · 26#', qlvl: 55 },
r27: { famousTitle: '27# 欧姆 (Ohm) · 战争召唤 (CTA)/混沌', itemTypeCn: '大号符文 · 27#', qlvl: 57 },
r28: { famousTitle: '28# 罗 (Lo) · 刚毅 (Fortitude)/悔恨 (Grief)', itemTypeCn: '大号符文 · 28#', qlvl: 59 },
r29: { famousTitle: '29# 瑟 (Sur) · 双瑟合贝/最后希望', itemTypeCn: '大号符文 · 29#', qlvl: 61 },
r30: { famousTitle: '30# 贝 (Ber) · 谜团 (Enigma)/无限 (Infinity)/野兽', itemTypeCn: '核心神级符文 · 30#', qlvl: 63 },
r31: { famousTitle: '31# 乔 (Jah) · 谜团 (Enigma)/最后希望/信仰', itemTypeCn: '核心神级符文 · 31#', qlvl: 65 },
r32: { famousTitle: '32# 查姆 (Cham) · 傲慢/末日/不灭神珠', itemTypeCn: '大号符文 · 32#', qlvl: 67 },
r33: { famousTitle: '33# 萨德 (Zod) · 死亡之呼吸 (BOTD)/无法破坏', itemTypeCn: '终极符文 · 33#', qlvl: 69 },
};
export function classifyItemCategory(code: string, quality?: string): ItemCategoryFilter {
if (code.startsWith('r') && /^r(?:0[1-9]|[12]\d|3[0-3])$/.test(code)) {
return 'rune';
}
if (['jew', 'cm1', 'cm2', 'cm3', 'rin', 'amu'].includes(code)) {
return 'charm_gem';
}
if (/^g[cfszpy][vrbygw]$/.test(code) || /^sk[cfulz]$/.test(code)) {
return 'charm_gem';
}
if (
['pk1', 'pk2', 'pk3', 'dhn', 'mbr', 'bet', 'fed', 'tes', 'ceh', 'std', 'gld', 'key', 'tsc', 'isc'].includes(code) ||
/^[hm]p[1-5]$/.test(code) ||
['rvs', 'rvl', 'vps', 'yps', 'wms'].includes(code)
) {
return 'misc';
}
if (quality === 'unique') return 'unique';
if (quality === 'set') return 'set';
return 'base';
}
// --- Browser DOM Controller --------------------------------------------------
if (typeof document !== 'undefined') {
window.addEventListener('DOMContentLoaded', () => {
initLootUi();
});
}
export function initLootUi(): void {
const { tcTable, autoTcs } = loadCanonicalTreasureClasses();
// State
let currentDifficulty: 'normal' | 'nightmare' | 'hell' = 'hell';
let currentMonster: MonsterPreset = MONSTER_PRESETS.find(m => m.id === 'baal') ?? MONSTER_PRESETS[0]!;
let isQuestDrop = false;
let customTcOverride: string | null = null;
let activeMonsterCategory: MonsterCategory | 'all' = 'all';
let activeItemCategory: ItemCategoryFilter = 'all';
let currentSortOrder: 'odds-desc' | 'odds-asc' | 'quality' | 'name' | 'qlvl' = 'odds-desc';
let activeViewTab: 'exact' | 'sim' | 'reverse' = 'exact';
let itemSearchQuery = '';
let isSimRunning = false;
let isSimPaused = false;
let abortRequested = false;
let currentAnalyticResult: AnalyticTcResult | null = null;
let currentSimResult: SimulationResult | null = null;
let latestSummaries: DroppedItemSummary[] = [];
// DOM Elements - Navigation & Difficulty
const diffButtons = document.querySelectorAll<HTMLButtonElement>('.diff-btn');
const difficultySelect = document.getElementById('difficulty') as HTMLSelectElement | null;
// Monster Selector Elements
const monsterSearchInput = document.getElementById('monster-search-input') as HTMLInputElement | null;
const monsterCatChips = document.querySelectorAll<HTMLButtonElement>('.monster-cat-chip');
const monsterListContainer = document.getElementById('monster-list');
const presetSelect = document.getElementById('tc-preset') as HTMLSelectElement | null;
// Monster Spec Card Elements
const monsterCardIcon = document.getElementById('monster-card-icon');
const monsterCardTitle = document.getElementById('monster-card-title');
const monsterCardBadge = document.getElementById('monster-card-badge');
const monsterCardArea = document.getElementById('monster-card-area');
const monsterCardMlvl = document.getElementById('monster-card-mlvl');
const monsterCardPicks = document.getElementById('monster-card-picks');
const monsterCardNodrop = document.getElementById('monster-card-nodrop');
const monsterCardTc = document.getElementById('monster-card-tc');
const monsterCardDesc = document.getElementById('monster-card-desc');
const questDropToggle = document.getElementById('quest-drop-toggle') as HTMLInputElement | null;
const questDropCheckbox = document.getElementById('quest-drop') as HTMLInputElement | null;
const questDropBanner = document.getElementById('quest-drop-banner');
const tcInput = document.getElementById('tc-input') as HTMLInputElement | null;
const btnApplyCustomTc = document.getElementById('btn-apply-custom-tc') as HTMLButtonElement | null;
// Settings
const gamePlayersInput = document.getElementById('game-players') as HTMLInputElement | null;
const partyPlayersInput = document.getElementById('party-players') as HTMLInputElement | null;
const playerChips = document.querySelectorAll<HTMLButtonElement>('.player-chip');
const mfInput = document.getElementById('magic-find') as HTMLInputElement | null;
const mfChips = document.querySelectorAll<HTMLButtonElement>('.mf-chip');
const effectivePlayersHint = document.getElementById('effective-players-hint');
// Simulation Controls
const runsSelect = document.getElementById('sim-runs') as HTMLSelectElement | null;
const seedInput = document.getElementById('sim-seed') as HTMLInputElement | null;
const btnStart = document.getElementById('btn-start') as HTMLButtonElement | null;
const btnPause = document.getElementById('btn-pause') as HTMLButtonElement | null;
const btnStop = document.getElementById('btn-stop') as HTMLButtonElement | null;
const btnCalcExact = document.getElementById('btn-calc-exact') as HTMLButtonElement | null;
const progressBar = document.getElementById('sim-progress-bar') as HTMLElement | null;
const progressText = document.getElementById('sim-progress-text') as HTMLElement | null;
// View Switcher & Toolbar
const viewTabButtons = document.querySelectorAll<HTMLButtonElement>('.view-tab-btn');
const viewPanes = document.querySelectorAll<HTMLElement>('.view-pane');
const itemCatTabs = document.querySelectorAll<HTMLButtonElement>('.item-cat-tab');
const itemSearchInput = document.getElementById('item-search-input') as HTMLInputElement | null;
const itemSortSelect = document.getElementById('item-sort-select') as HTMLSelectElement | null;
const btnExportCsv = document.getElementById('btn-export-csv') as HTMLButtonElement | null;
// Stats Bar Elements
const statTargetName = document.getElementById('stat-target-name');
const statCurrentTc = document.getElementById('stat-current-tc');
const statEffPlayers = document.getElementById('stat-eff-players');
const statTotalItems = document.getElementById('stat-total-items');
const statNoDropPct = document.getElementById('stat-nodrop-pct');
const statAvgDrops = document.getElementById('stat-avg-drops');
// Results Containers
const exactContainer = document.getElementById('exact-items-container');
const simContainer = document.getElementById('sim-items-container');
const exactTbody = document.getElementById('exact-tbody');
const itemsTbody = document.getElementById('items-tbody');
const qualityTbody = document.getElementById('quality-tbody');
const exactTcInfo = document.getElementById('exact-tc-info');
// Reverse Search Elements
const reverseInput = document.getElementById('reverse-search-input') as HTMLInputElement | null;
const reverseTbody = document.getElementById('reverse-tbody');
const reverseMatchCount = document.getElementById('reverse-match-count');
function getEffectiveTcName(): string {
return getMonsterPresetTc(currentMonster, currentDifficulty, isQuestDrop, customTcOverride);
}
function getEffectivePlayers(): number {
const g = parseInt(gamePlayersInput?.value || '1', 10) || 1;
const p = parseInt(partyPlayersInput?.value || '1', 10) || 1;
return computeEffectivePlayers(g, p);
}
// --- Render Monster List ----------------------------------------------------
function renderMonsterList() {
if (!monsterListContainer) return;
const query = monsterSearchInput?.value.trim().toLowerCase() || '';
const filtered = MONSTER_PRESETS.filter(m => {
if (activeMonsterCategory !== 'all' && m.category !== activeMonsterCategory) {
return false;
}
if (!query) return true;
return (
m.nameCn.toLowerCase().includes(query) ||
m.nameEn.toLowerCase().includes(query) ||
m.areaCn.toLowerCase().includes(query) ||
m.areaEn.toLowerCase().includes(query) ||
m.id.toLowerCase().includes(query)
);
});
if (filtered.length === 0) {
monsterListContainer.innerHTML = `<div style="padding: 14px; text-align: center; color: var(--text-dim); font-size: 11px;">无匹配的怪物</div>`;
return;
}
const html = filtered
.map(m => {
const isSelected = m.id === currentMonster.id;
const currentMlvl = m.mlvl[currentDifficulty];
const categoryBadge = m.category === 'boss' ? '幕首领' : m.category === 'superunique' ? '固定暗金' : m.category === 'chest' ? '宝箱' : m.category === 'farm' ? '刷宝' : '常规';
return `
<div class="monster-item-card ${isSelected ? 'selected' : ''}" data-mon-id="${m.id}">
<div class="mon-icon">${m.icon}</div>
<div class="mon-info">
<div class="mon-name-row">
<span class="mon-name">${m.nameCn}</span>
<span class="mon-cat-badge badge-${m.category}">${categoryBadge}</span>
</div>
<div class="mon-meta">${m.areaCn} · mlvl ${currentMlvl} · ${m.picks} picks</div>
</div>
</div>
`;
})
.join('');
monsterListContainer.innerHTML = html;
monsterListContainer.querySelectorAll('.monster-item-card').forEach(el => {
el.addEventListener('click', () => {
const id = el.getAttribute('data-mon-id');
const m = MONSTER_PRESETS.find(x => x.id === id);
if (m) {
customTcOverride = null;
currentMonster = m;
if (tcInput) tcInput.value = getEffectiveTcName();
renderMonsterList();
updateMonsterSpecCard();
updateExactTable();
}
});
});
}
function updateMonsterSpecCard() {
const mlvl = currentMonster.mlvl[currentDifficulty];
const tc = getEffectiveTcName();
const hasQuestDrop = Boolean(currentMonster.questTc);
if (monsterCardIcon) monsterCardIcon.textContent = currentMonster.icon;
if (monsterCardTitle) monsterCardTitle.textContent = currentMonster.nameCn;
if (monsterCardBadge) {
monsterCardBadge.textContent =
currentMonster.category === 'boss'
? `第 ${currentMonster.act} 幕 · 幕关底首领`
: currentMonster.category === 'superunique'
? `第 ${currentMonster.act} 幕 · 固定暗金怪`
: currentMonster.category === 'chest'
? `第 ${currentMonster.act} 幕 · 超级宝箱`
: currentMonster.category === 'farm'
? `高收益刷宝圣地`
: `普通怪物`;
}
if (monsterCardArea) monsterCardArea.textContent = currentMonster.areaCn;
if (monsterCardMlvl) monsterCardMlvl.textContent = String(mlvl);
if (monsterCardPicks) {
const node = tcTable.get(tc);
const picks = node ? Math.abs(node.picks) : currentMonster.picks;
monsterCardPicks.textContent = `${picks} 次`;
}
if (monsterCardNodrop) {
const g = parseInt(gamePlayersInput?.value || '1', 10) || 1;
const p = parseInt(partyPlayersInput?.value || '1', 10) || 1;
const eff = computeEffectivePlayers(g, p);
const node = tcTable.get(tc);
if (node && node.noDrop > 0) {
const totalProb = node.totalProbExpansion;
const scaledNoDrop = computeScaledNoDrop(node.noDrop, totalProb, eff);
const singleNoDrop = scaledNoDrop / (scaledNoDrop + totalProb);
const compoundNoDrop = node.picks > 0 ? Math.pow(singleNoDrop, node.picks) : 0;
monsterCardNodrop.textContent = `${(singleNoDrop * 100).toFixed(1)}%`;
monsterCardNodrop.title = `单次 NoDrop: ${(singleNoDrop * 100).toFixed(2)}%, 全空概率: ${(compoundNoDrop * 100).toFixed(2)}%`;
} else {
monsterCardNodrop.textContent = '0.00%';
monsterCardNodrop.title = 'NoDrop 为 0 (必定掉落)';
}
}
if (monsterCardTc) {
monsterCardTc.textContent = tc;
monsterCardTc.title = customTcOverride ? `自定义 TC: ${tc}` : `标准 TC: ${tc}`;
}
if (monsterCardDesc) monsterCardDesc.textContent = currentMonster.descCn;
if (questDropToggle) {
questDropToggle.checked = isQuestDrop;
questDropToggle.disabled = !hasQuestDrop;
}
if (questDropCheckbox) {
questDropCheckbox.checked = isQuestDrop;
questDropCheckbox.disabled = !hasQuestDrop;
}
if (questDropBanner) {
questDropBanner.style.display = isQuestDrop && hasQuestDrop ? 'flex' : 'none';
}
if (effectivePlayersHint) {
const eff = getEffectivePlayers();
effectivePlayersHint.textContent = `当前有效掉落人数: ${eff} 人 (NoDrop 缩减已生效)`;
}
if (statTargetName) statTargetName.textContent = customTcOverride ? `${currentMonster.nameCn} (自定义TC)` : currentMonster.nameCn;
if (statCurrentTc) statCurrentTc.textContent = tc;
if (statEffPlayers) statEffPlayers.textContent = `${getEffectivePlayers()} P`;
}
// --- Difficulty Switcher ----------------------------------------------------
function setDifficulty(diff: 'normal' | 'nightmare' | 'hell') {
currentDifficulty = diff;
customTcOverride = null;
diffButtons.forEach(btn => {
btn.classList.toggle('active', btn.getAttribute('data-diff') === diff);
});
if (difficultySelect) {
difficultySelect.value = diff;
}
if (tcInput) tcInput.value = getEffectiveTcName();
renderMonsterList();
updateMonsterSpecCard();
updateExactTable();
}
diffButtons.forEach(btn => {
btn.addEventListener('click', () => {
const diff = btn.getAttribute('data-diff') as any;
if (diff === 'normal' || diff === 'nightmare' || diff === 'hell') {
setDifficulty(diff);
}
});
});
difficultySelect?.addEventListener('change', () => {
setDifficulty(difficultySelect.value as any);
});
// --- Monster Filters --------------------------------------------------------
monsterCatChips.forEach(chip => {
chip.addEventListener('click', () => {
monsterCatChips.forEach(c => c.classList.remove('active'));
chip.classList.add('active');
activeMonsterCategory = chip.getAttribute('data-cat') as any;
renderMonsterList();
});
});
monsterSearchInput?.addEventListener('input', () => {
renderMonsterList();
});
// Quest Drop toggle
function setQuestDrop(val: boolean) {
isQuestDrop = val;
customTcOverride = null;
if (questDropToggle) questDropToggle.checked = val;
if (questDropCheckbox) questDropCheckbox.checked = val;
if (tcInput) tcInput.value = getEffectiveTcName();
updateMonsterSpecCard();
updateExactTable();
}
questDropToggle?.addEventListener('change', () => {
setQuestDrop(questDropToggle.checked);
});
questDropCheckbox?.addEventListener('change', () => {
setQuestDrop(questDropCheckbox.checked);
});
// Custom TC input
btnApplyCustomTc?.addEventListener('click', () => {
const val = tcInput?.value.trim();
if (val) {
customTcOverride = val;
} else {
customTcOverride = null;
if (tcInput) tcInput.value = getEffectiveTcName();
}
updateMonsterSpecCard();
updateExactTable();
});
presetSelect?.addEventListener('change', () => {
const val = presetSelect.value;
if (val) {
customTcOverride = val;
if (tcInput) tcInput.value = val;
updateMonsterSpecCard();
updateExactTable();
}
});
tcInput?.addEventListener('keydown', (e: KeyboardEvent) => {
if (e.key === 'Enter') {
e.preventDefault();
btnApplyCustomTc?.click();
}
});
// Player counts & MF
gamePlayersInput?.addEventListener('change', () => {
if (gamePlayersInput && partyPlayersInput) {
const g = parseInt(gamePlayersInput.value, 10) || 1;
const p = parseInt(partyPlayersInput.value, 10) || 1;
if (p > g) partyPlayersInput.value = String(g);
}
updateMonsterSpecCard();
updateExactTable();
});
partyPlayersInput?.addEventListener('change', () => {
if (gamePlayersInput && partyPlayersInput) {
const g = parseInt(gamePlayersInput.value, 10) || 1;
const p = parseInt(partyPlayersInput.value, 10) || 1;
if (p > g) partyPlayersInput.value = String(g);
}
updateMonsterSpecCard();
updateExactTable();
});
playerChips.forEach(chip => {
chip.addEventListener('click', () => {
playerChips.forEach(c => c.classList.remove('active'));
chip.classList.add('active');
const p = chip.getAttribute('data-players');
if (p && gamePlayersInput) {
gamePlayersInput.value = p;
if (partyPlayersInput) partyPlayersInput.value = '1';
updateMonsterSpecCard();
updateExactTable();
}
});
});
mfChips.forEach(chip => {
chip.addEventListener('click', () => {
mfChips.forEach(c => c.classList.remove('active'));
chip.classList.add('active');
const mf = chip.getAttribute('data-mf');
if (mf && mfInput) {
mfInput.value = mf;
updateExactTable();
}
});
});
// --- Category Tabs & View Switching ----------------------------------------
viewTabButtons.forEach(btn => {
btn.addEventListener('click', () => {
viewTabButtons.forEach(b => b.classList.remove('active'));
viewPanes.forEach(p => p.classList.remove('active'));
btn.classList.add('active');
const view = btn.getAttribute('data-view') as 'exact' | 'sim' | 'reverse';
activeViewTab = view;
document.getElementById(`view-${view}`)?.classList.add('active');
renderDropList();
});
});
itemCatTabs.forEach(tab => {
tab.addEventListener('click', () => {
itemCatTabs.forEach(t => t.classList.remove('active'));
tab.classList.add('active');
activeItemCategory = tab.getAttribute('data-cat') as ItemCategoryFilter;
renderDropList();
});
});
itemSearchInput?.addEventListener('input', () => {
itemSearchQuery = itemSearchInput.value.trim().toLowerCase();
renderDropList();
});
itemSortSelect?.addEventListener('change', () => {
currentSortOrder = itemSortSelect.value as any;
renderDropList();
});
// --- CSV Export ------------------------------------------------------------
btnExportCsv?.addEventListener('click', () => {
exportCurrentDataCsv();
});
function exportCurrentDataCsv() {
const tcName = getEffectiveTcName();
let csv = '\uFEFF'; // UTF-8 BOM
if (activeViewTab === 'sim' && currentSimResult) {
csv += '物品代码,物品名称,掉落品质,实测掉落数,每轮占比(%)\n';
for (const s of latestSummaries) {
csv += `"${s.code}","${s.name.replace(/"/g, '""')}","${s.quality}",${s.count},${s.percentage.toFixed(4)}\n`;
}
} else if (currentAnalyticResult) {
csv += '排名,物品代码,物品名称,分类,单次概率(%),综合概率(%),掉落几率比(1 in X),每轮期望掉落数\n';
currentAnalyticResult.leaves.forEach((l, idx) => {
const cat = classifyItemCategory(l.item);
const singlePct = (l.singleProbability * 100).toFixed(6);
const compPct = (l.compoundProbability * 100).toFixed(6);
const odds = l.oneInOdds < 1000000 ? l.oneInOdds.toFixed(1) : Math.round(l.oneInOdds);
csv += `${idx + 1},"${l.item}","${l.name.replace(/"/g, '""')}","${cat}",${singlePct},${compPct},"1 in ${odds}",${l.expectedDrops.toFixed(6)}\n`;
});
} else {
alert('暂无数据可导出');
return;
}
const blob = new Blob([csv], { type: 'text/csv;charset=utf-8;' });
const url = URL.createObjectURL(blob);
const a = document.createElement('a');
a.href = url;
a.download = `d2_drop_${tcName.replace(/[^a-zA-Z0-9_-]/g, '_')}_${Date.now()}.csv`;
a.click();
URL.revokeObjectURL(url);
}
// --- Calculate & Update Exact Odds -----------------------------------------
function updateExactTable() {
const tcName = getEffectiveTcName();
const g = parseInt(gamePlayersInput?.value || '1', 10) || 1;
const p = parseInt(partyPlayersInput?.value || '1', 10) || 1;
const result = calculateAnalyticProbabilities(tcName, {
tcTable,
autoTcs,
gamePlayers: g,
partyPlayers: p,
});
currentAnalyticResult = result;
if (result.leaves.length === 0 && !tcTable.get(tcName) && !autoTcs.has(tcName)) {
if (exactTcInfo) {
exactTcInfo.innerHTML = `<span style="color: #ff8080;">⚠️ 未找到名为 "<strong>${tcName}</strong>" 的 TreasureClass。请检查名称拼写或从左侧预设选择。</span>`;
}
if (exactContainer) {
exactContainer.innerHTML = `<div style="text-align: center; color: #ff8080; padding: 40px;">未找到名为 "${tcName}" 的 TreasureClass,请检查拼写</div>`;
}
return;
}
if (statTotalItems) statTotalItems.textContent = String(result.leaves.length);
if (statNoDropPct) statNoDropPct.textContent = `${(result.noDropCompoundProb * 100).toFixed(1)}%`;
if (statAvgDrops) statAvgDrops.textContent = `${(result.picks * (1 - result.noDropSingleProb)).toFixed(2)}`;
updateCategoryCounts();
renderDropList();
}
function updateCategoryCounts() {
if (!currentAnalyticResult) return;
const counts: Record<ItemCategoryFilter, number> = {
all: 0,
unique: 0,
set: 0,
rune: 0,
base: 0,
charm_gem: 0,
misc: 0,
};
if (activeViewTab === 'sim' && currentSimResult) {
counts.all = latestSummaries.length;
for (const s of latestSummaries) {
const cat = classifyItemCategory(s.code, s.quality);
counts[cat]++;
}
} else {
counts.all = currentAnalyticResult.leaves.length;
for (const l of currentAnalyticResult.leaves) {
const cat = classifyItemCategory(l.item);
counts[cat]++;
// If has famous unique meta, increment unique count
if (FAMOUS_ITEMS_META[l.item]) {
counts.unique++;
}
}
}
itemCatTabs.forEach(tab => {
const cat = tab.getAttribute('data-cat') as ItemCategoryFilter;
const badge = tab.querySelector('.cat-count');
if (badge) {
badge.textContent = String(counts[cat] || 0);
}
});
}
// --- Render Maxroll-Style Drop List ----------------------------------------
function renderDropList() {
if (activeViewTab === 'exact') {
renderExactDropCards();
} else if (activeViewTab === 'sim') {
renderSimDropCards();
}
}
function renderExactDropCards() {
if (!exactContainer || !currentAnalyticResult) return;
const leaves = currentAnalyticResult.leaves;
if (leaves.length === 0) {
exactContainer.innerHTML = `<div style="text-align: center; color: var(--text-dim); padding: 40px;">暂无掉落数据</div>`;
return;
}
// Maximum compound probability for relative bar width
const maxProb = Math.max(...leaves.map(l => l.compoundProbability), 0.0001);
// Filter
let filtered = leaves.filter(l => {
const cat = classifyItemCategory(l.item);
const isFamousUnique = Boolean(FAMOUS_ITEMS_META[l.item]);
if (activeItemCategory !== 'all') {
if (activeItemCategory === 'unique' && !isFamousUnique) return false;
if (activeItemCategory !== 'unique' && cat !== activeItemCategory) return false;
}
if (!itemSearchQuery) return true;
const meta = FAMOUS_ITEMS_META[l.item];
const matchText = `${l.item} ${l.name} ${meta?.famousTitle || ''} ${meta?.itemTypeCn || ''}`.toLowerCase();
return matchText.includes(itemSearchQuery);
});
// Sort
filtered = [...filtered].sort((a, b) => {
if (currentSortOrder === 'odds-desc') return b.compoundProbability - a.compoundProbability;
if (currentSortOrder === 'odds-asc') return a.compoundProbability - b.compoundProbability;
if (currentSortOrder === 'name') return a.name.localeCompare(b.name);
if (currentSortOrder === 'qlvl') {
const qA = FAMOUS_ITEMS_META[a.item]?.qlvl || 0;
const qB = FAMOUS_ITEMS_META[b.item]?.qlvl || 0;
return qB - qA;
}
if (currentSortOrder === 'quality') {
const catA = classifyItemCategory(a.item);
const catB = classifyItemCategory(b.item);
return catA.localeCompare(catB);
}
return 0;
});
if (filtered.length === 0) {
exactContainer.innerHTML = `<div style="text-align: center; color: var(--text-dim); padding: 40px;">没有符合条件的物品</div>`;
return;
}
const cardsHtml = filtered.slice(0, 250).map((l, index) => {
const meta = FAMOUS_ITEMS_META[l.item];
const cat = classifyItemCategory(l.item);
const pct = (l.compoundProbability * 100).toFixed(4);
const odds = l.oneInOdds < 1000000 ? l.oneInOdds.toFixed(1) : Math.round(l.oneInOdds).toLocaleString();
const barWidth = Math.max(2, Math.min(100, (l.compoundProbability / maxProb) * 100));
let qualityTagClass = 'tag-base';
let qualityTagName = '装备底模';
let qualityColor = '#e8dcc8';
if (l.isRune) {
qualityTagClass = 'tag-rune';
qualityTagName = '符文';
qualityColor = '#ff8000';
} else if (l.isGold) {
qualityTagClass = 'tag-gold';
qualityTagName = '金币';
qualityColor = '#ffd700';
} else if (cat === 'charm_gem') {
qualityTagClass = 'tag-gem';
qualityTagName = '护身符/珠宝';
qualityColor = '#d880ff';
} else if (cat === 'misc') {
qualityTagClass = 'tag-misc';
qualityTagName = '杂项/材料';
qualityColor = '#ffd700';
} else if (meta?.famousTitle) {
qualityTagClass = 'tag-unique';
qualityTagName = '暗金底模';
qualityColor = '#c8a15a';
}
return `
<div class="maxroll-item-card ${qualityTagClass}">
<div class="card-left">
<span class="card-rank">#${index + 1}</span>
<span class="card-quality-tag ${qualityTagClass}">${qualityTagName}</span>
<div class="card-title-group">
<div class="card-main-title" style="color: ${qualityColor};">
${meta?.famousTitle || l.name}
</div>
<div class="card-sub-meta">
<span class="item-code-badge">${l.item}</span>
<span>${meta?.itemTypeCn || (l.isRune ? '符文' : '物品底模')}</span>
${meta?.qlvl ? `<span>· qlvl ${meta.qlvl}</span>` : ''}
</div>
</div>
</div>
<div class="card-center">
<div class="odds-bar-track">
<div class="odds-bar-fill ${qualityTagClass}" style="width: ${barWidth}%;"></div>
</div>
<div class="odds-bar-labels">
<span class="odds-pct">${pct}%</span>
<span class="odds-expected">单次: ${(l.singleProbability * 100).toFixed(4)}%</span>
</div>
</div>
<div class="card-right">
<div class="odds-ratio-pill ${qualityTagClass}">1 : ${odds}</div>
<div class="runs-estimate">平均 ~${odds} 轮 / 件</div>
</div>
</div>
`;
}).join('');
exactContainer.innerHTML = cardsHtml;
}
function renderSimDropCards() {
if (!simContainer) return;
if (!currentSimResult || latestSummaries.length === 0) {
simContainer.innerHTML = `<div style="text-align: center; color: var(--text-dim); padding: 40px;">暂无模拟结果,请点击左侧「开始模拟」运行 Monte Carlo 抽样</div>`;
return;
}
const totalRuns = currentSimResult.totalRuns;
const maxCount = Math.max(...latestSummaries.map(s => s.count), 1);
// Filter
let filtered = latestSummaries.filter(s => {
const cat = classifyItemCategory(s.code, s.quality);
if (activeItemCategory !== 'all' && cat !== activeItemCategory) return false;
if (!itemSearchQuery) return true;
const meta = FAMOUS_ITEMS_META[s.code];
const matchText = `${s.code} ${s.name} ${meta?.famousTitle || ''} ${s.quality}`.toLowerCase();
return matchText.includes(itemSearchQuery);
});
if (filtered.length === 0) {
simContainer.innerHTML = `<div style="text-align: center; color: var(--text-dim); padding: 40px;">没有符合条件的模拟物品</div>`;
return;
}
const cardsHtml = filtered.slice(0, 250).map((s, index) => {
const meta = FAMOUS_ITEMS_META[s.code];
const barWidth = Math.max(2, Math.min(100, (s.count / maxCount) * 100));
const pct = s.percentage.toFixed(4);
const expectedOdds = s.count > 0 ? (totalRuns / s.count).toFixed(1) : '∞';
let qualityTagClass = 'tag-base';
let qualityColor = '#e8dcc8';
if (s.quality === 'unique') {
qualityTagClass = 'tag-unique';
qualityColor = '#c8a15a';
} else if (s.quality === 'set') {
qualityTagClass = 'tag-set';
qualityColor = '#00ff00';
} else if (s.quality === 'rare') {
qualityTagClass = 'tag-rare';
qualityColor = '#ffff60';
} else if (s.quality === 'magic') {
qualityTagClass = 'tag-magic';
qualityColor = '#4880ff';
} else if (s.quality === 'rune') {
qualityTagClass = 'tag-rune';
qualityColor = '#ff8000';
} else if (s.quality === 'gold') {
qualityTagClass = 'tag-gold';
qualityColor = '#ffd700';
}
return `
<div class="maxroll-item-card ${qualityTagClass}">
<div class="card-left">
<span class="card-rank">#${index + 1}</span>
<span class="card-quality-tag ${qualityTagClass}">${s.quality.toUpperCase()}</span>
<div class="card-title-group">
<div class="card-main-title" style="color: ${qualityColor};">
${meta?.famousTitle || s.name}
</div>
<div class="card-sub-meta">
<span class="item-code-badge">${s.code}</span>
<span>${meta?.itemTypeCn || '掉落物'}</span>
</div>
</div>
</div>
<div class="card-center">
<div class="odds-bar-track">
<div class="odds-bar-fill ${qualityTagClass}" style="width: ${barWidth}%;"></div>
</div>
<div class="odds-bar-labels">
<span class="odds-pct">${pct}% / 轮</span>
<span class="odds-expected">实测掉落: ${s.count.toLocaleString()} 件</span>
</div>
</div>
<div class="card-right">
<div class="odds-ratio-pill ${qualityTagClass}">实测 1 : ${expectedOdds}</div>
<div class="runs-estimate">${s.count.toLocaleString()} 件 / ${totalRuns.toLocaleString()} 轮</div>
</div>
</div>
`;
}).join('');
simContainer.innerHTML = cardsHtml;
}
// --- Simulation Execution --------------------------------------------------
btnStart?.addEventListener('click', async () => {
if (isSimRunning) return;
const tcName = getEffectiveTcName();
if (!tcTable.get(tcName) && !autoTcs.has(tcName)) {
alert(`未找到名为 "${tcName}" 的 TreasureClass,请检查名称拼写!`);
return;
}
const runs = parseInt(runsSelect?.value || '10000', 10) || 10000;
const g = parseInt(gamePlayersInput?.value || '1', 10) || 1;
const p = parseInt(partyPlayersInput?.value || '1', 10) || 1;
const mf = parseInt(mfInput?.value || '0', 10) || 0;
const diff = currentDifficulty;
const seedVal = seedInput?.value.trim() ? parseInt(seedInput.value, 10) : undefined;
isSimRunning = true;
isSimPaused = false;
abortRequested = false;
if (btnStart) btnStart.disabled = true;
if (btnPause) {
btnPause.disabled = false;
btnPause.textContent = '⏸ 暂停';
}
if (btnStop) btnStop.disabled = false;
// Switch to simulation view automatically
viewTabButtons.forEach(b => b.classList.toggle('active', b.getAttribute('data-view') === 'sim'));
viewPanes.forEach(pane => pane.classList.toggle('active', pane.id === 'view-sim'));
activeViewTab = 'sim';
try {
const result = await runMonteCarloSimulation(
{
tcName,
runs,
gamePlayers: g,
partyPlayers: p,
magicFind: mf,
difficulty: diff,
seed: seedVal,
tcTable,
autoTcs,
},
async progress => {
if (abortRequested) throw new Error('Simulation aborted');
while (isSimPaused && !abortRequested) {
if (progressText) {
progressText.textContent = `已暂停 (${progress.completedRuns.toLocaleString()} / ${progress.totalRuns.toLocaleString()}) - 点击「继续」恢复`;
}
await new Promise(r => setTimeout(r, 50));
}
if (abortRequested) throw new Error('Simulation aborted');
renderProgress(progress);
},
);
currentSimResult = result;
latestSummaries = [...result.itemSummaries];
updateCategoryCounts();
renderFinalResults(result);
} catch (err: any) {
if (err.message === 'Simulation aborted') {
if (progressText) progressText.textContent = '模拟已中止';
} else {
console.error(err);
}
} finally {
isSimRunning = false;
isSimPaused = false;
if (btnStart) btnStart.disabled = false;
if (btnPause) {
btnPause.disabled = true;
btnPause.textContent = '⏸ 暂停';
}
if (btnStop) btnStop.disabled = true;
}
});
btnPause?.addEventListener('click', () => {
isSimPaused = !isSimPaused;
if (btnPause) {
btnPause.textContent = isSimPaused ? '▶ 继续' : '⏸ 暂停';
}
if (progressText && isSimPaused) {
progressText.textContent = '已暂停 - 点击「继续」恢复';
}
});
btnStop?.addEventListener('click', () => {
abortRequested = true;
});
btnCalcExact?.addEventListener('click', () => {
updateExactTable();
});
function renderProgress(p: SimulationProgress) {
const pct = ((p.completedRuns / p.totalRuns) * 100).toFixed(1);
if (progressBar) progressBar.style.width = `${pct}%`;
if (progressText) {
progressText.textContent = `模拟进度: ${p.completedRuns.toLocaleString()} / ${p.totalRuns.toLocaleString()} (${pct}%) · 掉落 ${p.itemsDropped.toLocaleString()} 件`;
}
renderQualityTable(p.qualityCounts, p.completedRuns, p.itemsDropped);
}
function renderFinalResults(r: SimulationResult) {
renderProgress({
completedRuns: r.totalRuns,
totalRuns: r.totalRuns,
itemsDropped: r.itemsDropped,
qualityCounts: r.qualityCounts,
isFinished: true,
isPaused: false,
});
renderSimDropCards();
}
function renderQualityTable(q: QualityCounts, runs: number, totalDrops: number) {
if (!qualityTbody) return;
const items = [
{ name: 'Unique (暗金)', count: q.unique, color: '#c8a15a' },
{ name: 'Set (套装)', count: q.set, color: '#00ff00' },
{ name: 'Rare (稀有)', count: q.rare, color: '#ffff60' },
{ name: 'Magic (魔法)', count: q.magic, color: '#4880ff' },
{ name: 'Rune (符文)', count: q.rune, color: '#ff8000' },
{ name: 'Normal / Sup (底模)', count: q.normal + q.superior, color: '#e8e8e8' },
{ name: 'Gold (金币)', count: q.gold, color: '#ffd700' },
{ name: 'NoDrop (空掉落轮数)', count: q.noDrop, color: '#666666' },
];
const rows = items.map(it => {
const denominator = it.name.startsWith('NoDrop') ? runs : totalDrops;
const pct = denominator > 0 ? ((it.count / denominator) * 100).toFixed(2) : '0.00';
return `
<tr>
<td style="color: ${it.color}; font-weight: bold;">${it.name}</td>
<td style="font-variant-numeric: tabular-nums;">${it.count.toLocaleString()}</td>
<td style="font-variant-numeric: tabular-nums;">${pct}%</td>
<td>
<div style="background: #1c1813; border-radius: 3px; height: 8px; width: 100%; overflow: hidden;">
<div style="background: ${it.color}; height: 100%; width: ${pct}%;"></div>
</div>
</td>
</tr>
`;
});
qualityTbody.innerHTML = rows.join('');
}
// --- Reverse Lookup --------------------------------------------------------
let reverseIndex: Map<string, ReverseLookupEntry[]> | undefined;
function getReverseIndex(): Map<string, ReverseLookupEntry[]> {
if (!reverseIndex) {
reverseIndex = buildReverseLookupIndex(tcTable, autoTcs);
}
return reverseIndex;
}
reverseInput?.addEventListener('input', () => {
const query = reverseInput.value.trim();
if (!query) {
if (reverseTbody) reverseTbody.innerHTML = '';
if (reverseMatchCount) reverseMatchCount.textContent = '0 项匹配';
return;
}
const results = reverseLookup(getReverseIndex(), query);
renderReverseLookupResults(results);
});
function renderReverseLookupResults(results: ReverseLookupResult[]) {
if (!reverseTbody) return;
let totalMatches = 0;
const allMatches: { res: ReverseLookupResult; entry: ReverseLookupEntry }[] = [];
for (const res of results) {
for (const entry of res.entries) {
allMatches.push({ res, entry });
}
}
allMatches.sort((a, b) => b.entry.compoundProbability - a.entry.compoundProbability);
const rows: string[] = [];
for (const m of allMatches) {
totalMatches++;
const res = m.res;
const entry = m.entry;
const pct = (entry.compoundProbability * 100).toFixed(4) + '%';
const odds = entry.oneInOdds < 1000000 ? '1 in ' + entry.oneInOdds.toFixed(1) : '1 in ' + Math.round(entry.oneInOdds).toLocaleString();
rows.push(`
<tr>
<td style="color: var(--gold-primary); font-weight: bold;">${entry.tcName}</td>
<td>${res.matchedCode} (${res.matchedName})</td>
<td>${entry.picks}</td>
<td>${(entry.singleProbability * 100).toFixed(4)}%</td>
<td style="color: #a5d6a7; font-weight: bold;">${pct}</td>
<td style="color: var(--gold-light); font-variant-numeric: tabular-nums;">${odds}</td>
</tr>
`);
}
reverseTbody.innerHTML = rows.slice(0, 200).join('');
if (reverseMatchCount) {
reverseMatchCount.textContent = `找到 ${totalMatches} 条掉落记录${totalMatches > 200 ? ' (展示前 200 条)' : ''}`;
}
}
// Initial render
renderMonsterList();
updateMonsterSpecCard();
updateExactTable();
}