mooket II

mooket2 银河奶牛历史价格(包含强化物品)history(enhancement included) price for milkywayidle

您需要先安裝使用者腳本管理器擴展,如 TampermonkeyGreasemonkeyViolentmonkey 之後才能安裝該腳本。

You will need to install an extension such as Tampermonkey to install this script.

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyUserscripts 後才能安裝該腳本。

你需要先安裝一款使用者腳本管理器擴展,比如 Tampermonkey,才能安裝此腳本

您需要先安裝使用者腳本管理器擴充功能後才能安裝該腳本。

(我已經安裝了使用者腳本管理器,讓我安裝!)

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

(我已經安裝了使用者樣式管理器,讓我安裝!)

// ==UserScript==
// @name           mooket II
// @name:en        mooket II
// @namespace      http://tampermonkey.net/
// @version        20260401.0.15.1
// @description    mooket2 银河奶牛历史价格(包含强化物品)history(enhancement included) price for milkywayidle
// @description:en history(enhancement included) price for milkywayidle,This powerful market tool combines historical price tracking with in-depth order book analysis. It supports flexible sorting and direct navigation for up to 99 custom-selected securities. By calculating the average transaction price and the volume of the best bid and ask prices using official data, it helps you gain comprehensive control over your trading opportunities.
// @author       Q7
// @match        https://www.milkywayidle.com/*
// @match        https://www.milkywayidlecn.com/*
// @icon         https://www.milkywayidle.com/favicon.svg
// @grant        none
// @require      https://cdn.jsdelivr.net/npm/[email protected]/dist/chart.umd.min.js
// @require      https://cdn.jsdelivr.net/npm/[email protected]/dist/chartjs-adapter-date-fns.bundle.min.js
// @require      https://cdn.jsdelivr.net/npm/[email protected]/dist/chartjs-plugin-crosshair.min.js
// @require      https://cdn.jsdelivr.net/npm/[email protected]/libs/lz-string.min.js
// @run-at       document-start
// @license      MIT
// ==/UserScript==

(function () {
    'use strict';
    let injectSpace = "mwi";
    if (window[injectSpace]) return;

    // ================= 核心配置区 =================
    const MY_API_HOST = "https://q7.nainai.eu.org";
    const NATIVE_API_URL = window.location.origin + "/game_data/marketplace.json";
    // ==============================================

    // 【核心修复 1】主动清理旧版本遗留的庞大缓存,防止 LocalStorage 爆仓引发游戏崩溃
    try { localStorage.removeItem("MYAPI_LATEST_CACHE"); } catch(e) {}

    const observer = new MutationObserver(() => {
        const el = document.querySelector('[class^="GamePage"]');
        if (el) {
            observer.disconnect();
            patchScript();
        }
    });
    observer.observe(document, { childList: true, subtree: true });

    let mwi = {
        version: "0.15.1",
        MWICoreInitialized: false,
        game: null,
        lang: null,
        coreMarket: null,
        initCharacterData: null,
        initClientData: null,
        get character() { return this.game?.state?.character || this.initCharacterData?.character },
        isZh: true,
        itemNameToHridDict: null,

        ensureItemHrid: function (itemHridOrName) {
            let itemHrid = this.itemNameToHridDict[itemHridOrName];
            if (itemHrid) return itemHrid;
            if (itemHridOrName?.startsWith("/items/")) return itemHridOrName;
            return null;
        },
        getItemDetail: function (itemHrid) {
            return this.initClientData?.itemDetailMap && this.initClientData.itemDetailMap[itemHrid];
        },
        hookMessage: hookMessage,
        hookCallback: hookCallback,
        fetchWithTimeout: fetchWithTimeout,
    };
    window[injectSpace] = mwi;

    try {
        let decData = LZString.decompressFromUTF16(localStorage.getItem("initClientData"));
        mwi.initClientData = JSON.parse(decData);
    } catch {
        mwi.initClientData = JSON.parse("{}");
    }
    mwi.isZh = localStorage.getItem("i18nextLng")?.startsWith("zh");

    // 【核心修复 2】安全的 localStorage 拦截器,绝不阻断游戏的正常存盘
    const originalSetItem = localStorage.setItem;
    localStorage.setItem = function (key, value) {
        originalSetItem.apply(this, arguments);
        try {
            const event = new Event('localStorageChanged');
            event.key = key;
            event.newValue = value;
            dispatchEvent(event);
        } catch(e) {}
    };

    addEventListener('localStorageChanged', function (event) {
        if (event.key === "i18nextLng") {
            mwi.isZh = event.newValue?.startsWith("zh");
            dispatchEvent(new Event("MWILangChanged"));
        }
    });

    async function patchScript() {
        try {
            window[injectSpace].game = (e => e?.[Reflect.ownKeys(e).find(k => k.startsWith('__reactFiber$'))]?.return?.stateNode)(document.querySelector('[class^="GamePage"]'));
            window[injectSpace].lang = window[injectSpace].game.props.i18n.options.resources;
        } catch (error) { }
    }

    function hookWS() {
        const dataProperty = Object.getOwnPropertyDescriptor(MessageEvent.prototype, "data");
        const oriGet = dataProperty.get;
        dataProperty.get = hookedGet;
        Object.defineProperty(MessageEvent.prototype, "data", dataProperty);

        function hookedGet() {
            const socket = this.currentTarget;
            if (!(socket instanceof WebSocket)) return oriGet.call(this);
            if (socket.url.indexOf("api.milkywayidle.com/ws") <= -1 && socket.url.indexOf("api.milkywayidlecn.com/ws") <= -1) return oriGet.call(this);

            const message = oriGet.call(this);
            // 【核心修复 3】安全的事件属性劫持防抛错
            try { Object.defineProperty(this, "data", { value: message }); } catch(e) {}

            try {
                let obj = JSON.parse(message);
                if (obj?.type) {
                    if (obj.type === "init_character_data") mwi.initCharacterData = obj;
                    else if (obj.type === "init_client_data") mwi.initClientData = obj;
                    dispatchEvent(new CustomEvent("MWI_" + obj.type, { detail: obj }));
                }
            } catch { }

            return message;
        }
    }
    hookWS();

    function hookMessage(messageType, beforeFunc) {
        if (messageType && beforeFunc) {
            addEventListener("MWI_" + messageType, (e) => beforeFunc(e.detail));
        }
    }

    function hookCallback(callbackProp, beforeFunc, afterFunc) {
        if (callbackProp && mwi?.game) {
            const targetObj = mwi.game;
            const originalCallback = targetObj[callbackProp];
            if (!originalCallback) return;

            targetObj[callbackProp] = function (...args) {
                try { if (beforeFunc) beforeFunc(...args); } catch { }
                const result = originalCallback.apply(this, args);
                try { if (afterFunc) afterFunc(result, ...args); } catch { }
                return result;
            };
            return () => { targetObj[callbackProp] = originalCallback; };
        }
    }

    function fetchWithTimeout(url, options = {}, timeout = 10000) {
        const controller = new AbortController();
        const timeoutId = setTimeout(() => controller.abort(new Error(`Timeout`)), timeout);
        return fetch(url, { ...options, signal: controller.signal })
            .then(res => { clearTimeout(timeoutId); return res; })
            .catch(err => { clearTimeout(timeoutId); throw err; });
    }

    function staticInit() {
        mwi.lang = {
            en: { translation: { itemNames: {
                "/items/coin": "Coin",
                "/items/task_token": "Task Token",
                "/items/labyrinth_token": "Labyrinth Token",
                "/items/chimerical_token": "Chimerical Token",
                "/items/sinister_token": "Sinister Token",
                "/items/enchanted_token": "Enchanted Token",
                "/items/pirate_token": "Pirate Token",
                "/items/cowbell": "Cowbell",
                "/items/bag_of_10_cowbells": "Bag Of 10 Cowbells",
                "/items/purples_gift": "Purple's Gift",
                "/items/small_meteorite_cache": "Small Meteorite Cache",
                "/items/medium_meteorite_cache": "Medium Meteorite Cache",
                "/items/large_meteorite_cache": "Large Meteorite Cache",
                "/items/small_artisans_crate": "Small Artisan's Crate",
                "/items/medium_artisans_crate": "Medium Artisan's Crate",
                "/items/large_artisans_crate": "Large Artisan's Crate",
                "/items/small_treasure_chest": "Small Treasure Chest",
                "/items/medium_treasure_chest": "Medium Treasure Chest",
                "/items/large_treasure_chest": "Large Treasure Chest",
                "/items/chimerical_chest": "Chimerical Chest",
                "/items/chimerical_refinement_chest": "Chimerical Refinement Chest",
                "/items/sinister_chest": "Sinister Chest",
                "/items/sinister_refinement_chest": "Sinister Refinement Chest",
                "/items/enchanted_chest": "Enchanted Chest",
                "/items/enchanted_refinement_chest": "Enchanted Refinement Chest",
                "/items/pirate_chest": "Pirate Chest",
                "/items/pirate_refinement_chest": "Pirate Refinement Chest",
                "/items/purdoras_box_skilling": "Purdora's Box (Skilling)",
                "/items/purdoras_box_combat": "Purdora's Box (Combat)",
                "/items/labyrinth_refinement_chest": "Labyrinth Refinement Chest",
                "/items/seal_of_gathering": "Scroll Of Gathering",
                "/items/seal_of_gourmet": "Scroll Of Gourmet",
                "/items/seal_of_processing": "Scroll Of Processing",
                "/items/seal_of_efficiency": "Scroll Of Efficiency",
                "/items/seal_of_action_speed": "Scroll Of Action Speed",
                "/items/seal_of_combat_drop": "Scroll Of Combat Drop",
                "/items/seal_of_attack_speed": "Scroll Of Attack Speed",
                "/items/seal_of_cast_speed": "Scroll Of Cast Speed",
                "/items/seal_of_damage": "Scroll Of Damage",
                "/items/seal_of_critical_rate": "Scroll Of Critical Rate",
                "/items/seal_of_wisdom": "Scroll Of Wisdom",
                "/items/seal_of_rare_find": "Scroll Of Rare Find",
                "/items/blue_key_fragment": "Blue Key Fragment",
                "/items/green_key_fragment": "Green Key Fragment",
                "/items/purple_key_fragment": "Purple Key Fragment",
                "/items/white_key_fragment": "White Key Fragment",
                "/items/orange_key_fragment": "Orange Key Fragment",
                "/items/brown_key_fragment": "Brown Key Fragment",
                "/items/stone_key_fragment": "Stone Key Fragment",
                "/items/dark_key_fragment": "Dark Key Fragment",
                "/items/burning_key_fragment": "Burning Key Fragment",
                "/items/chimerical_entry_key": "Chimerical Entry Key",
                "/items/chimerical_chest_key": "Chimerical Chest Key",
                "/items/sinister_entry_key": "Sinister Entry Key",
                "/items/sinister_chest_key": "Sinister Chest Key",
                "/items/enchanted_entry_key": "Enchanted Entry Key",
                "/items/enchanted_chest_key": "Enchanted Chest Key",
                "/items/pirate_entry_key": "Pirate Entry Key",
                "/items/pirate_chest_key": "Pirate Chest Key",
                "/items/donut": "Donut",
                "/items/blueberry_donut": "Blueberry Donut",
                "/items/blackberry_donut": "Blackberry Donut",
                "/items/strawberry_donut": "Strawberry Donut",
                "/items/mooberry_donut": "Mooberry Donut",
                "/items/marsberry_donut": "Marsberry Donut",
                "/items/spaceberry_donut": "Spaceberry Donut",
                "/items/cupcake": "Cupcake",
                "/items/blueberry_cake": "Blueberry Cake",
                "/items/blackberry_cake": "Blackberry Cake",
                "/items/strawberry_cake": "Strawberry Cake",
                "/items/mooberry_cake": "Mooberry Cake",
                "/items/marsberry_cake": "Marsberry Cake",
                "/items/spaceberry_cake": "Spaceberry Cake",
                "/items/gummy": "Gummy",
                "/items/apple_gummy": "Apple Gummy",
                "/items/orange_gummy": "Orange Gummy",
                "/items/plum_gummy": "Plum Gummy",
                "/items/peach_gummy": "Peach Gummy",
                "/items/dragon_fruit_gummy": "Dragon Fruit Gummy",
                "/items/star_fruit_gummy": "Star Fruit Gummy",
                "/items/yogurt": "Yogurt",
                "/items/apple_yogurt": "Apple Yogurt",
                "/items/orange_yogurt": "Orange Yogurt",
                "/items/plum_yogurt": "Plum Yogurt",
                "/items/peach_yogurt": "Peach Yogurt",
                "/items/dragon_fruit_yogurt": "Dragon Fruit Yogurt",
                "/items/star_fruit_yogurt": "Star Fruit Yogurt",
                "/items/milking_tea": "Milking Tea",
                "/items/foraging_tea": "Foraging Tea",
                "/items/woodcutting_tea": "Woodcutting Tea",
                "/items/cooking_tea": "Cooking Tea",
                "/items/brewing_tea": "Brewing Tea",
                "/items/alchemy_tea": "Alchemy Tea",
                "/items/enhancing_tea": "Enhancing Tea",
                "/items/cheesesmithing_tea": "Cheesesmithing Tea",
                "/items/crafting_tea": "Crafting Tea",
                "/items/tailoring_tea": "Tailoring Tea",
                "/items/super_milking_tea": "Super Milking Tea",
                "/items/super_foraging_tea": "Super Foraging Tea",
                "/items/super_woodcutting_tea": "Super Woodcutting Tea",
                "/items/super_cooking_tea": "Super Cooking Tea",
                "/items/super_brewing_tea": "Super Brewing Tea",
                "/items/super_alchemy_tea": "Super Alchemy Tea",
                "/items/super_enhancing_tea": "Super Enhancing Tea",
                "/items/super_cheesesmithing_tea": "Super Cheesesmithing Tea",
                "/items/super_crafting_tea": "Super Crafting Tea",
                "/items/super_tailoring_tea": "Super Tailoring Tea",
                "/items/ultra_milking_tea": "Ultra Milking Tea",
                "/items/ultra_foraging_tea": "Ultra Foraging Tea",
                "/items/ultra_woodcutting_tea": "Ultra Woodcutting Tea",
                "/items/ultra_cooking_tea": "Ultra Cooking Tea",
                "/items/ultra_brewing_tea": "Ultra Brewing Tea",
                "/items/ultra_alchemy_tea": "Ultra Alchemy Tea",
                "/items/ultra_enhancing_tea": "Ultra Enhancing Tea",
                "/items/ultra_cheesesmithing_tea": "Ultra Cheesesmithing Tea",
                "/items/ultra_crafting_tea": "Ultra Crafting Tea",
                "/items/ultra_tailoring_tea": "Ultra Tailoring Tea",
                "/items/gathering_tea": "Gathering Tea",
                "/items/gourmet_tea": "Gourmet Tea",
                "/items/wisdom_tea": "Wisdom Tea",
                "/items/processing_tea": "Processing Tea",
                "/items/efficiency_tea": "Efficiency Tea",
                "/items/artisan_tea": "Artisan Tea",
                "/items/catalytic_tea": "Catalytic Tea",
                "/items/blessed_tea": "Blessed Tea",
                "/items/stamina_coffee": "Stamina Coffee",
                "/items/intelligence_coffee": "Intelligence Coffee",
                "/items/defense_coffee": "Defense Coffee",
                "/items/attack_coffee": "Attack Coffee",
                "/items/melee_coffee": "Melee Coffee",
                "/items/ranged_coffee": "Ranged Coffee",
                "/items/magic_coffee": "Magic Coffee",
                "/items/super_stamina_coffee": "Super Stamina Coffee",
                "/items/super_intelligence_coffee": "Super Intelligence Coffee",
                "/items/super_defense_coffee": "Super Defense Coffee",
                "/items/super_attack_coffee": "Super Attack Coffee",
                "/items/super_melee_coffee": "Super Melee Coffee",
                "/items/super_ranged_coffee": "Super Ranged Coffee",
                "/items/super_magic_coffee": "Super Magic Coffee",
                "/items/ultra_stamina_coffee": "Ultra Stamina Coffee",
                "/items/ultra_intelligence_coffee": "Ultra Intelligence Coffee",
                "/items/ultra_defense_coffee": "Ultra Defense Coffee",
                "/items/ultra_attack_coffee": "Ultra Attack Coffee",
                "/items/ultra_melee_coffee": "Ultra Melee Coffee",
                "/items/ultra_ranged_coffee": "Ultra Ranged Coffee",
                "/items/ultra_magic_coffee": "Ultra Magic Coffee",
                "/items/wisdom_coffee": "Wisdom Coffee",
                "/items/lucky_coffee": "Lucky Coffee",
                "/items/swiftness_coffee": "Swiftness Coffee",
                "/items/channeling_coffee": "Channeling Coffee",
                "/items/critical_coffee": "Critical Coffee",
                "/items/poke": "Poke",
                "/items/impale": "Impale",
                "/items/puncture": "Puncture",
                "/items/penetrating_strike": "Penetrating Strike",
                "/items/scratch": "Scratch",
                "/items/cleave": "Cleave",
                "/items/maim": "Maim",
                "/items/crippling_slash": "Crippling Slash",
                "/items/smack": "Smack",
                "/items/sweep": "Sweep",
                "/items/stunning_blow": "Stunning Blow",
                "/items/fracturing_impact": "Fracturing Impact",
                "/items/shield_bash": "Shield Bash",
                "/items/quick_shot": "Quick Shot",
                "/items/aqua_arrow": "Aqua Arrow",
                "/items/flame_arrow": "Flame Arrow",
                "/items/rain_of_arrows": "Rain Of Arrows",
                "/items/silencing_shot": "Silencing Shot",
                "/items/steady_shot": "Steady Shot",
                "/items/pestilent_shot": "Pestilent Shot",
                "/items/penetrating_shot": "Penetrating Shot",
                "/items/water_strike": "Water Strike",
                "/items/ice_spear": "Ice Spear",
                "/items/frost_surge": "Frost Surge",
                "/items/mana_spring": "Mana Spring",
                "/items/entangle": "Entangle",
                "/items/toxic_pollen": "Toxic Pollen",
                "/items/natures_veil": "Nature's Veil",
                "/items/life_drain": "Life Drain",
                "/items/fireball": "Fireball",
                "/items/flame_blast": "Flame Blast",
                "/items/firestorm": "Firestorm",
                "/items/smoke_burst": "Smoke Burst",
                "/items/minor_heal": "Minor Heal",
                "/items/heal": "Heal",
                "/items/quick_aid": "Quick Aid",
                "/items/rejuvenate": "Rejuvenate",
                "/items/taunt": "Taunt",
                "/items/provoke": "Provoke",
                "/items/toughness": "Toughness",
                "/items/elusiveness": "Elusiveness",
                "/items/precision": "Precision",
                "/items/berserk": "Berserk",
                "/items/elemental_affinity": "Elemental Affinity",
                "/items/frenzy": "Frenzy",
                "/items/spike_shell": "Spike Shell",
                "/items/retribution": "Retribution",
                "/items/vampirism": "Vampirism",
                "/items/revive": "Revive",
                "/items/insanity": "Insanity",
                "/items/invincible": "Invincible",
                "/items/speed_aura": "Speed Aura",
                "/items/guardian_aura": "Guardian Aura",
                "/items/fierce_aura": "Fierce Aura",
                "/items/critical_aura": "Critical Aura",
                "/items/mystic_aura": "Mystic Aura",
                "/items/gobo_stabber": "Gobo Stabber",
                "/items/gobo_slasher": "Gobo Slasher",
                "/items/gobo_smasher": "Gobo Smasher",
                "/items/spiked_bulwark": "Spiked Bulwark",
                "/items/werewolf_slasher": "Werewolf Slasher",
                "/items/griffin_bulwark": "Griffin Bulwark",
                "/items/griffin_bulwark_refined": "Griffin Bulwark (R)",
                "/items/gobo_shooter": "Gobo Shooter",
                "/items/vampiric_bow": "Vampiric Bow",
                "/items/cursed_bow": "Cursed Bow",
                "/items/cursed_bow_refined": "Cursed Bow (R)",
                "/items/gobo_boomstick": "Gobo Boomstick",
                "/items/cheese_bulwark": "Cheese Bulwark",
                "/items/verdant_bulwark": "Verdant Bulwark",
                "/items/azure_bulwark": "Azure Bulwark",
                "/items/burble_bulwark": "Burble Bulwark",
                "/items/crimson_bulwark": "Crimson Bulwark",
                "/items/rainbow_bulwark": "Rainbow Bulwark",
                "/items/holy_bulwark": "Holy Bulwark",
                "/items/wooden_bow": "Wooden Bow",
                "/items/birch_bow": "Birch Bow",
                "/items/cedar_bow": "Cedar Bow",
                "/items/purpleheart_bow": "Purpleheart Bow",
                "/items/ginkgo_bow": "Ginkgo Bow",
                "/items/redwood_bow": "Redwood Bow",
                "/items/arcane_bow": "Arcane Bow",
                "/items/stalactite_spear": "Stalactite Spear",
                "/items/granite_bludgeon": "Granite Bludgeon",
                "/items/furious_spear": "Furious Spear",
                "/items/furious_spear_refined": "Furious Spear (R)",
                "/items/regal_sword": "Regal Sword",
                "/items/regal_sword_refined": "Regal Sword (R)",
                "/items/chaotic_flail": "Chaotic Flail",
                "/items/chaotic_flail_refined": "Chaotic Flail (R)",
                "/items/soul_hunter_crossbow": "Soul Hunter Crossbow",
                "/items/sundering_crossbow": "Sundering Crossbow",
                "/items/sundering_crossbow_refined": "Sundering Crossbow (R)",
                "/items/frost_staff": "Frost Staff",
                "/items/infernal_battlestaff": "Infernal Battlestaff",
                "/items/jackalope_staff": "Jackalope Staff",
                "/items/rippling_trident": "Rippling Trident",
                "/items/rippling_trident_refined": "Rippling Trident (R)",
                "/items/blooming_trident": "Blooming Trident",
                "/items/blooming_trident_refined": "Blooming Trident (R)",
                "/items/blazing_trident": "Blazing Trident",
                "/items/blazing_trident_refined": "Blazing Trident (R)",
                "/items/cheese_sword": "Cheese Sword",
                "/items/verdant_sword": "Verdant Sword",
                "/items/azure_sword": "Azure Sword",
                "/items/burble_sword": "Burble Sword",
                "/items/crimson_sword": "Crimson Sword",
                "/items/rainbow_sword": "Rainbow Sword",
                "/items/holy_sword": "Holy Sword",
                "/items/cheese_spear": "Cheese Spear",
                "/items/verdant_spear": "Verdant Spear",
                "/items/azure_spear": "Azure Spear",
                "/items/burble_spear": "Burble Spear",
                "/items/crimson_spear": "Crimson Spear",
                "/items/rainbow_spear": "Rainbow Spear",
                "/items/holy_spear": "Holy Spear",
                "/items/cheese_mace": "Cheese Mace",
                "/items/verdant_mace": "Verdant Mace",
                "/items/azure_mace": "Azure Mace",
                "/items/burble_mace": "Burble Mace",
                "/items/crimson_mace": "Crimson Mace",
                "/items/rainbow_mace": "Rainbow Mace",
                "/items/holy_mace": "Holy Mace",
                "/items/wooden_crossbow": "Wooden Crossbow",
                "/items/birch_crossbow": "Birch Crossbow",
                "/items/cedar_crossbow": "Cedar Crossbow",
                "/items/purpleheart_crossbow": "Purpleheart Crossbow",
                "/items/ginkgo_crossbow": "Ginkgo Crossbow",
                "/items/redwood_crossbow": "Redwood Crossbow",
                "/items/arcane_crossbow": "Arcane Crossbow",
                "/items/wooden_water_staff": "Wooden Water Staff",
                "/items/birch_water_staff": "Birch Water Staff",
                "/items/cedar_water_staff": "Cedar Water Staff",
                "/items/purpleheart_water_staff": "Purpleheart Water Staff",
                "/items/ginkgo_water_staff": "Ginkgo Water Staff",
                "/items/redwood_water_staff": "Redwood Water Staff",
                "/items/arcane_water_staff": "Arcane Water Staff",
                "/items/wooden_nature_staff": "Wooden Nature Staff",
                "/items/birch_nature_staff": "Birch Nature Staff",
                "/items/cedar_nature_staff": "Cedar Nature Staff",
                "/items/purpleheart_nature_staff": "Purpleheart Nature Staff",
                "/items/ginkgo_nature_staff": "Ginkgo Nature Staff",
                "/items/redwood_nature_staff": "Redwood Nature Staff",
                "/items/arcane_nature_staff": "Arcane Nature Staff",
                "/items/wooden_fire_staff": "Wooden Fire Staff",
                "/items/birch_fire_staff": "Birch Fire Staff",
                "/items/cedar_fire_staff": "Cedar Fire Staff",
                "/items/purpleheart_fire_staff": "Purpleheart Fire Staff",
                "/items/ginkgo_fire_staff": "Ginkgo Fire Staff",
                "/items/redwood_fire_staff": "Redwood Fire Staff",
                "/items/arcane_fire_staff": "Arcane Fire Staff",
                "/items/eye_watch": "Eye Watch",
                "/items/snake_fang_dirk": "Snake Fang Dirk",
                "/items/vision_shield": "Vision Shield",
                "/items/gobo_defender": "Gobo Defender",
                "/items/vampire_fang_dirk": "Vampire Fang Dirk",
                "/items/knights_aegis": "Knight's Aegis",
                "/items/knights_aegis_refined": "Knight's Aegis (R)",
                "/items/treant_shield": "Treant Shield",
                "/items/manticore_shield": "Manticore Shield",
                "/items/tome_of_healing": "Tome Of Healing",
                "/items/tome_of_the_elements": "Tome Of The Elements",
                "/items/watchful_relic": "Watchful Relic",
                "/items/bishops_codex": "Bishop's Codex",
                "/items/bishops_codex_refined": "Bishop's Codex (R)",
                "/items/cheese_buckler": "Cheese Buckler",
                "/items/verdant_buckler": "Verdant Buckler",
                "/items/azure_buckler": "Azure Buckler",
                "/items/burble_buckler": "Burble Buckler",
                "/items/crimson_buckler": "Crimson Buckler",
                "/items/rainbow_buckler": "Rainbow Buckler",
                "/items/holy_buckler": "Holy Buckler",
                "/items/wooden_shield": "Wooden Shield",
                "/items/birch_shield": "Birch Shield",
                "/items/cedar_shield": "Cedar Shield",
                "/items/purpleheart_shield": "Purpleheart Shield",
                "/items/ginkgo_shield": "Ginkgo Shield",
                "/items/redwood_shield": "Redwood Shield",
                "/items/arcane_shield": "Arcane Shield",
                "/items/gatherer_cape": "Gatherer Cape",
                "/items/gatherer_cape_refined": "Gatherer Cape (R)",
                "/items/artificer_cape": "Artificer Cape",
                "/items/artificer_cape_refined": "Artificer Cape (R)",
                "/items/culinary_cape": "Culinary Cape",
                "/items/culinary_cape_refined": "Culinary Cape (R)",
                "/items/chance_cape": "Chance Cape",
                "/items/chance_cape_refined": "Chance Cape (R)",
                "/items/sinister_cape": "Sinister Cape",
                "/items/sinister_cape_refined": "Sinister Cape (R)",
                "/items/chimerical_quiver": "Chimerical Quiver",
                "/items/chimerical_quiver_refined": "Chimerical Quiver (R)",
                "/items/enchanted_cloak": "Enchanted Cloak",
                "/items/enchanted_cloak_refined": "Enchanted Cloak (R)",
                "/items/red_culinary_hat": "Red Culinary Hat",
                "/items/snail_shell_helmet": "Snail Shell Helmet",
                "/items/vision_helmet": "Vision Helmet",
                "/items/fluffy_red_hat": "Fluffy Red Hat",
                "/items/corsair_helmet": "Corsair Helmet",
                "/items/corsair_helmet_refined": "Corsair Helmet (R)",
                "/items/acrobatic_hood": "Acrobatic Hood",
                "/items/acrobatic_hood_refined": "Acrobatic Hood (R)",
                "/items/magicians_hat": "Magician's Hat",
                "/items/magicians_hat_refined": "Magician's Hat (R)",
                "/items/cheese_helmet": "Cheese Helmet",
                "/items/verdant_helmet": "Verdant Helmet",
                "/items/azure_helmet": "Azure Helmet",
                "/items/burble_helmet": "Burble Helmet",
                "/items/crimson_helmet": "Crimson Helmet",
                "/items/rainbow_helmet": "Rainbow Helmet",
                "/items/holy_helmet": "Holy Helmet",
                "/items/rough_hood": "Rough Hood",
                "/items/reptile_hood": "Reptile Hood",
                "/items/gobo_hood": "Gobo Hood",
                "/items/beast_hood": "Beast Hood",
                "/items/umbral_hood": "Umbral Hood",
                "/items/cotton_hat": "Cotton Hat",
                "/items/linen_hat": "Linen Hat",
                "/items/bamboo_hat": "Bamboo Hat",
                "/items/silk_hat": "Silk Hat",
                "/items/radiant_hat": "Radiant Hat",
                "/items/dairyhands_top": "Dairyhand's Top",
                "/items/foragers_top": "Forager's Top",
                "/items/lumberjacks_top": "Lumberjack's Top",
                "/items/cheesemakers_top": "Cheesemaker's Top",
                "/items/crafters_top": "Crafter's Top",
                "/items/tailors_top": "Tailor's Top",
                "/items/chefs_top": "Chef's Top",
                "/items/brewers_top": "Brewer's Top",
                "/items/alchemists_top": "Alchemist's Top",
                "/items/enhancers_top": "Enhancer's Top",
                "/items/gator_vest": "Gator Vest",
                "/items/turtle_shell_body": "Turtle Shell Body",
                "/items/colossus_plate_body": "Colossus Plate Body",
                "/items/demonic_plate_body": "Demonic Plate Body",
                "/items/anchorbound_plate_body": "Anchorbound Plate Body",
                "/items/anchorbound_plate_body_refined": "Anchorbound Plate Body (R)",
                "/items/maelstrom_plate_body": "Maelstrom Plate Body",
                "/items/maelstrom_plate_body_refined": "Maelstrom Plate Body (R)",
                "/items/marine_tunic": "Marine Tunic",
                "/items/revenant_tunic": "Revenant Tunic",
                "/items/griffin_tunic": "Griffin Tunic",
                "/items/kraken_tunic": "Kraken Tunic",
                "/items/kraken_tunic_refined": "Kraken Tunic (R)",
                "/items/icy_robe_top": "Icy Robe Top",
                "/items/flaming_robe_top": "Flaming Robe Top",
                "/items/luna_robe_top": "Luna Robe Top",
                "/items/royal_water_robe_top": "Royal Water Robe Top",
                "/items/royal_water_robe_top_refined": "Royal Water Robe Top (R)",
                "/items/royal_nature_robe_top": "Royal Nature Robe Top",
                "/items/royal_nature_robe_top_refined": "Royal Nature Robe Top (R)",
                "/items/royal_fire_robe_top": "Royal Fire Robe Top",
                "/items/royal_fire_robe_top_refined": "Royal Fire Robe Top (R)",
                "/items/cheese_plate_body": "Cheese Plate Body",
                "/items/verdant_plate_body": "Verdant Plate Body",
                "/items/azure_plate_body": "Azure Plate Body",
                "/items/burble_plate_body": "Burble Plate Body",
                "/items/crimson_plate_body": "Crimson Plate Body",
                "/items/rainbow_plate_body": "Rainbow Plate Body",
                "/items/holy_plate_body": "Holy Plate Body",
                "/items/rough_tunic": "Rough Tunic",
                "/items/reptile_tunic": "Reptile Tunic",
                "/items/gobo_tunic": "Gobo Tunic",
                "/items/beast_tunic": "Beast Tunic",
                "/items/umbral_tunic": "Umbral Tunic",
                "/items/cotton_robe_top": "Cotton Robe Top",
                "/items/linen_robe_top": "Linen Robe Top",
                "/items/bamboo_robe_top": "Bamboo Robe Top",
                "/items/silk_robe_top": "Silk Robe Top",
                "/items/radiant_robe_top": "Radiant Robe Top",
                "/items/dairyhands_bottoms": "Dairyhand's Bottoms",
                "/items/foragers_bottoms": "Forager's Bottoms",
                "/items/lumberjacks_bottoms": "Lumberjack's Bottoms",
                "/items/cheesemakers_bottoms": "Cheesemaker's Bottoms",
                "/items/crafters_bottoms": "Crafter's Bottoms",
                "/items/tailors_bottoms": "Tailor's Bottoms",
                "/items/chefs_bottoms": "Chef's Bottoms",
                "/items/brewers_bottoms": "Brewer's Bottoms",
                "/items/alchemists_bottoms": "Alchemist's Bottoms",
                "/items/enhancers_bottoms": "Enhancer's Bottoms",
                "/items/turtle_shell_legs": "Turtle Shell Legs",
                "/items/colossus_plate_legs": "Colossus Plate Legs",
                "/items/demonic_plate_legs": "Demonic Plate Legs",
                "/items/anchorbound_plate_legs": "Anchorbound Plate Legs",
                "/items/anchorbound_plate_legs_refined": "Anchorbound Plate Legs (R)",
                "/items/maelstrom_plate_legs": "Maelstrom Plate Legs",
                "/items/maelstrom_plate_legs_refined": "Maelstrom Plate Legs (R)",
                "/items/marine_chaps": "Marine Chaps",
                "/items/revenant_chaps": "Revenant Chaps",
                "/items/griffin_chaps": "Griffin Chaps",
                "/items/kraken_chaps": "Kraken Chaps",
                "/items/kraken_chaps_refined": "Kraken Chaps (R)",
                "/items/icy_robe_bottoms": "Icy Robe Bottoms",
                "/items/flaming_robe_bottoms": "Flaming Robe Bottoms",
                "/items/luna_robe_bottoms": "Luna Robe Bottoms",
                "/items/royal_water_robe_bottoms": "Royal Water Robe Bottoms",
                "/items/royal_water_robe_bottoms_refined": "Royal Water Robe Bottoms (R)",
                "/items/royal_nature_robe_bottoms": "Royal Nature Robe Bottoms",
                "/items/royal_nature_robe_bottoms_refined": "Royal Nature Robe Bottoms (R)",
                "/items/royal_fire_robe_bottoms": "Royal Fire Robe Bottoms",
                "/items/royal_fire_robe_bottoms_refined": "Royal Fire Robe Bottoms (R)",
                "/items/cheese_plate_legs": "Cheese Plate Legs",
                "/items/verdant_plate_legs": "Verdant Plate Legs",
                "/items/azure_plate_legs": "Azure Plate Legs",
                "/items/burble_plate_legs": "Burble Plate Legs",
                "/items/crimson_plate_legs": "Crimson Plate Legs",
                "/items/rainbow_plate_legs": "Rainbow Plate Legs",
                "/items/holy_plate_legs": "Holy Plate Legs",
                "/items/rough_chaps": "Rough Chaps",
                "/items/reptile_chaps": "Reptile Chaps",
                "/items/gobo_chaps": "Gobo Chaps",
                "/items/beast_chaps": "Beast Chaps",
                "/items/umbral_chaps": "Umbral Chaps",
                "/items/cotton_robe_bottoms": "Cotton Robe Bottoms",
                "/items/linen_robe_bottoms": "Linen Robe Bottoms",
                "/items/bamboo_robe_bottoms": "Bamboo Robe Bottoms",
                "/items/silk_robe_bottoms": "Silk Robe Bottoms",
                "/items/radiant_robe_bottoms": "Radiant Robe Bottoms",
                "/items/enchanted_gloves": "Enchanted Gloves",
                "/items/pincer_gloves": "Pincer Gloves",
                "/items/panda_gloves": "Panda Gloves",
                "/items/magnetic_gloves": "Magnetic Gloves",
                "/items/dodocamel_gauntlets": "Dodocamel Gauntlets",
                "/items/dodocamel_gauntlets_refined": "Dodocamel Gauntlets (R)",
                "/items/sighted_bracers": "Sighted Bracers",
                "/items/marksman_bracers": "Marksman Bracers",
                "/items/marksman_bracers_refined": "Marksman Bracers (R)",
                "/items/chrono_gloves": "Chrono Gloves",
                "/items/cheese_gauntlets": "Cheese Gauntlets",
                "/items/verdant_gauntlets": "Verdant Gauntlets",
                "/items/azure_gauntlets": "Azure Gauntlets",
                "/items/burble_gauntlets": "Burble Gauntlets",
                "/items/crimson_gauntlets": "Crimson Gauntlets",
                "/items/rainbow_gauntlets": "Rainbow Gauntlets",
                "/items/holy_gauntlets": "Holy Gauntlets",
                "/items/rough_bracers": "Rough Bracers",
                "/items/reptile_bracers": "Reptile Bracers",
                "/items/gobo_bracers": "Gobo Bracers",
                "/items/beast_bracers": "Beast Bracers",
                "/items/umbral_bracers": "Umbral Bracers",
                "/items/cotton_gloves": "Cotton Gloves",
                "/items/linen_gloves": "Linen Gloves",
                "/items/bamboo_gloves": "Bamboo Gloves",
                "/items/silk_gloves": "Silk Gloves",
                "/items/radiant_gloves": "Radiant Gloves",
                "/items/collectors_boots": "Collector's Boots",
                "/items/shoebill_shoes": "Shoebill Shoes",
                "/items/black_bear_shoes": "Black Bear Shoes",
                "/items/grizzly_bear_shoes": "Grizzly Bear Shoes",
                "/items/polar_bear_shoes": "Polar Bear Shoes",
                "/items/pathbreaker_boots": "Pathbreaker Boots",
                "/items/pathbreaker_boots_refined": "Pathbreaker Boots (R)",
                "/items/centaur_boots": "Centaur Boots",
                "/items/pathfinder_boots": "Pathfinder Boots",
                "/items/pathfinder_boots_refined": "Pathfinder Boots (R)",
                "/items/sorcerer_boots": "Sorcerer Boots",
                "/items/pathseeker_boots": "Pathseeker Boots",
                "/items/pathseeker_boots_refined": "Pathseeker Boots (R)",
                "/items/cheese_boots": "Cheese Boots",
                "/items/verdant_boots": "Verdant Boots",
                "/items/azure_boots": "Azure Boots",
                "/items/burble_boots": "Burble Boots",
                "/items/crimson_boots": "Crimson Boots",
                "/items/rainbow_boots": "Rainbow Boots",
                "/items/holy_boots": "Holy Boots",
                "/items/rough_boots": "Rough Boots",
                "/items/reptile_boots": "Reptile Boots",
                "/items/gobo_boots": "Gobo Boots",
                "/items/beast_boots": "Beast Boots",
                "/items/umbral_boots": "Umbral Boots",
                "/items/cotton_boots": "Cotton Boots",
                "/items/linen_boots": "Linen Boots",
                "/items/bamboo_boots": "Bamboo Boots",
                "/items/silk_boots": "Silk Boots",
                "/items/radiant_boots": "Radiant Boots",
                "/items/small_pouch": "Small Pouch",
                "/items/medium_pouch": "Medium Pouch",
                "/items/large_pouch": "Large Pouch",
                "/items/giant_pouch": "Giant Pouch",
                "/items/gluttonous_pouch": "Gluttonous Pouch",
                "/items/guzzling_pouch": "Guzzling Pouch",
                "/items/necklace_of_efficiency": "Necklace Of Efficiency",
                "/items/fighter_necklace": "Fighter Necklace",
                "/items/ranger_necklace": "Ranger Necklace",
                "/items/wizard_necklace": "Wizard Necklace",
                "/items/necklace_of_wisdom": "Necklace Of Wisdom",
                "/items/necklace_of_speed": "Necklace Of Speed",
                "/items/philosophers_necklace": "Philosopher's Necklace",
                "/items/earrings_of_gathering": "Earrings Of Gathering",
                "/items/earrings_of_essence_find": "Earrings Of Essence Find",
                "/items/earrings_of_armor": "Earrings Of Armor",
                "/items/earrings_of_regeneration": "Earrings Of Regeneration",
                "/items/earrings_of_resistance": "Earrings Of Resistance",
                "/items/earrings_of_rare_find": "Earrings Of Rare Find",
                "/items/earrings_of_critical_strike": "Earrings Of Critical Strike",
                "/items/philosophers_earrings": "Philosopher's Earrings",
                "/items/ring_of_gathering": "Ring Of Gathering",
                "/items/ring_of_essence_find": "Ring Of Essence Find",
                "/items/ring_of_armor": "Ring Of Armor",
                "/items/ring_of_regeneration": "Ring Of Regeneration",
                "/items/ring_of_resistance": "Ring Of Resistance",
                "/items/ring_of_rare_find": "Ring Of Rare Find",
                "/items/ring_of_critical_strike": "Ring Of Critical Strike",
                "/items/philosophers_ring": "Philosopher's Ring",
                "/items/trainee_milking_charm": "Trainee Milking Charm",
                "/items/basic_milking_charm": "Basic Milking Charm",
                "/items/advanced_milking_charm": "Advanced Milking Charm",
                "/items/expert_milking_charm": "Expert Milking Charm",
                "/items/master_milking_charm": "Master Milking Charm",
                "/items/grandmaster_milking_charm": "Grandmaster Milking Charm",
                "/items/trainee_foraging_charm": "Trainee Foraging Charm",
                "/items/basic_foraging_charm": "Basic Foraging Charm",
                "/items/advanced_foraging_charm": "Advanced Foraging Charm",
                "/items/expert_foraging_charm": "Expert Foraging Charm",
                "/items/master_foraging_charm": "Master Foraging Charm",
                "/items/grandmaster_foraging_charm": "Grandmaster Foraging Charm",
                "/items/trainee_woodcutting_charm": "Trainee Woodcutting Charm",
                "/items/basic_woodcutting_charm": "Basic Woodcutting Charm",
                "/items/advanced_woodcutting_charm": "Advanced Woodcutting Charm",
                "/items/expert_woodcutting_charm": "Expert Woodcutting Charm",
                "/items/master_woodcutting_charm": "Master Woodcutting Charm",
                "/items/grandmaster_woodcutting_charm": "Grandmaster Woodcutting Charm",
                "/items/trainee_cheesesmithing_charm": "Trainee Cheesesmithing Charm",
                "/items/basic_cheesesmithing_charm": "Basic Cheesesmithing Charm",
                "/items/advanced_cheesesmithing_charm": "Advanced Cheesesmithing Charm",
                "/items/expert_cheesesmithing_charm": "Expert Cheesesmithing Charm",
                "/items/master_cheesesmithing_charm": "Master Cheesesmithing Charm",
                "/items/grandmaster_cheesesmithing_charm": "Grandmaster Cheesesmithing Charm",
                "/items/trainee_crafting_charm": "Trainee Crafting Charm",
                "/items/basic_crafting_charm": "Basic Crafting Charm",
                "/items/advanced_crafting_charm": "Advanced Crafting Charm",
                "/items/expert_crafting_charm": "Expert Crafting Charm",
                "/items/master_crafting_charm": "Master Crafting Charm",
                "/items/grandmaster_crafting_charm": "Grandmaster Crafting Charm",
                "/items/trainee_tailoring_charm": "Trainee Tailoring Charm",
                "/items/basic_tailoring_charm": "Basic Tailoring Charm",
                "/items/advanced_tailoring_charm": "Advanced Tailoring Charm",
                "/items/expert_tailoring_charm": "Expert Tailoring Charm",
                "/items/master_tailoring_charm": "Master Tailoring Charm",
                "/items/grandmaster_tailoring_charm": "Grandmaster Tailoring Charm",
                "/items/trainee_cooking_charm": "Trainee Cooking Charm",
                "/items/basic_cooking_charm": "Basic Cooking Charm",
                "/items/advanced_cooking_charm": "Advanced Cooking Charm",
                "/items/expert_cooking_charm": "Expert Cooking Charm",
                "/items/master_cooking_charm": "Master Cooking Charm",
                "/items/grandmaster_cooking_charm": "Grandmaster Cooking Charm",
                "/items/trainee_brewing_charm": "Trainee Brewing Charm",
                "/items/basic_brewing_charm": "Basic Brewing Charm",
                "/items/advanced_brewing_charm": "Advanced Brewing Charm",
                "/items/expert_brewing_charm": "Expert Brewing Charm",
                "/items/master_brewing_charm": "Master Brewing Charm",
                "/items/grandmaster_brewing_charm": "Grandmaster Brewing Charm",
                "/items/trainee_alchemy_charm": "Trainee Alchemy Charm",
                "/items/basic_alchemy_charm": "Basic Alchemy Charm",
                "/items/advanced_alchemy_charm": "Advanced Alchemy Charm",
                "/items/expert_alchemy_charm": "Expert Alchemy Charm",
                "/items/master_alchemy_charm": "Master Alchemy Charm",
                "/items/grandmaster_alchemy_charm": "Grandmaster Alchemy Charm",
                "/items/trainee_enhancing_charm": "Trainee Enhancing Charm",
                "/items/basic_enhancing_charm": "Basic Enhancing Charm",
                "/items/advanced_enhancing_charm": "Advanced Enhancing Charm",
                "/items/expert_enhancing_charm": "Expert Enhancing Charm",
                "/items/master_enhancing_charm": "Master Enhancing Charm",
                "/items/grandmaster_enhancing_charm": "Grandmaster Enhancing Charm",
                "/items/trainee_stamina_charm": "Trainee Stamina Charm",
                "/items/basic_stamina_charm": "Basic Stamina Charm",
                "/items/advanced_stamina_charm": "Advanced Stamina Charm",
                "/items/expert_stamina_charm": "Expert Stamina Charm",
                "/items/master_stamina_charm": "Master Stamina Charm",
                "/items/grandmaster_stamina_charm": "Grandmaster Stamina Charm",
                "/items/trainee_intelligence_charm": "Trainee Intelligence Charm",
                "/items/basic_intelligence_charm": "Basic Intelligence Charm",
                "/items/advanced_intelligence_charm": "Advanced Intelligence Charm",
                "/items/expert_intelligence_charm": "Expert Intelligence Charm",
                "/items/master_intelligence_charm": "Master Intelligence Charm",
                "/items/grandmaster_intelligence_charm": "Grandmaster Intelligence Charm",
                "/items/trainee_attack_charm": "Trainee Attack Charm",
                "/items/basic_attack_charm": "Basic Attack Charm",
                "/items/advanced_attack_charm": "Advanced Attack Charm",
                "/items/expert_attack_charm": "Expert Attack Charm",
                "/items/master_attack_charm": "Master Attack Charm",
                "/items/grandmaster_attack_charm": "Grandmaster Attack Charm",
                "/items/trainee_defense_charm": "Trainee Defense Charm",
                "/items/basic_defense_charm": "Basic Defense Charm",
                "/items/advanced_defense_charm": "Advanced Defense Charm",
                "/items/expert_defense_charm": "Expert Defense Charm",
                "/items/master_defense_charm": "Master Defense Charm",
                "/items/grandmaster_defense_charm": "Grandmaster Defense Charm",
                "/items/trainee_melee_charm": "Trainee Melee Charm",
                "/items/basic_melee_charm": "Basic Melee Charm",
                "/items/advanced_melee_charm": "Advanced Melee Charm",
                "/items/expert_melee_charm": "Expert Melee Charm",
                "/items/master_melee_charm": "Master Melee Charm",
                "/items/grandmaster_melee_charm": "Grandmaster Melee Charm",
                "/items/trainee_ranged_charm": "Trainee Ranged Charm",
                "/items/basic_ranged_charm": "Basic Ranged Charm",
                "/items/advanced_ranged_charm": "Advanced Ranged Charm",
                "/items/expert_ranged_charm": "Expert Ranged Charm",
                "/items/master_ranged_charm": "Master Ranged Charm",
                "/items/grandmaster_ranged_charm": "Grandmaster Ranged Charm",
                "/items/trainee_magic_charm": "Trainee Magic Charm",
                "/items/basic_magic_charm": "Basic Magic Charm",
                "/items/advanced_magic_charm": "Advanced Magic Charm",
                "/items/expert_magic_charm": "Expert Magic Charm",
                "/items/master_magic_charm": "Master Magic Charm",
                "/items/grandmaster_magic_charm": "Grandmaster Magic Charm",
                "/items/basic_task_badge": "Basic Task Badge",
                "/items/advanced_task_badge": "Advanced Task Badge",
                "/items/expert_task_badge": "Expert Task Badge",
                "/items/celestial_brush": "Celestial Brush",
                "/items/cheese_brush": "Cheese Brush",
                "/items/verdant_brush": "Verdant Brush",
                "/items/azure_brush": "Azure Brush",
                "/items/burble_brush": "Burble Brush",
                "/items/crimson_brush": "Crimson Brush",
                "/items/rainbow_brush": "Rainbow Brush",
                "/items/holy_brush": "Holy Brush",
                "/items/celestial_shears": "Celestial Shears",
                "/items/cheese_shears": "Cheese Shears",
                "/items/verdant_shears": "Verdant Shears",
                "/items/azure_shears": "Azure Shears",
                "/items/burble_shears": "Burble Shears",
                "/items/crimson_shears": "Crimson Shears",
                "/items/rainbow_shears": "Rainbow Shears",
                "/items/holy_shears": "Holy Shears",
                "/items/celestial_hatchet": "Celestial Hatchet",
                "/items/cheese_hatchet": "Cheese Hatchet",
                "/items/verdant_hatchet": "Verdant Hatchet",
                "/items/azure_hatchet": "Azure Hatchet",
                "/items/burble_hatchet": "Burble Hatchet",
                "/items/crimson_hatchet": "Crimson Hatchet",
                "/items/rainbow_hatchet": "Rainbow Hatchet",
                "/items/holy_hatchet": "Holy Hatchet",
                "/items/celestial_hammer": "Celestial Hammer",
                "/items/cheese_hammer": "Cheese Hammer",
                "/items/verdant_hammer": "Verdant Hammer",
                "/items/azure_hammer": "Azure Hammer",
                "/items/burble_hammer": "Burble Hammer",
                "/items/crimson_hammer": "Crimson Hammer",
                "/items/rainbow_hammer": "Rainbow Hammer",
                "/items/holy_hammer": "Holy Hammer",
                "/items/celestial_chisel": "Celestial Chisel",
                "/items/cheese_chisel": "Cheese Chisel",
                "/items/verdant_chisel": "Verdant Chisel",
                "/items/azure_chisel": "Azure Chisel",
                "/items/burble_chisel": "Burble Chisel",
                "/items/crimson_chisel": "Crimson Chisel",
                "/items/rainbow_chisel": "Rainbow Chisel",
                "/items/holy_chisel": "Holy Chisel",
                "/items/celestial_needle": "Celestial Needle",
                "/items/cheese_needle": "Cheese Needle",
                "/items/verdant_needle": "Verdant Needle",
                "/items/azure_needle": "Azure Needle",
                "/items/burble_needle": "Burble Needle",
                "/items/crimson_needle": "Crimson Needle",
                "/items/rainbow_needle": "Rainbow Needle",
                "/items/holy_needle": "Holy Needle",
                "/items/celestial_spatula": "Celestial Spatula",
                "/items/cheese_spatula": "Cheese Spatula",
                "/items/verdant_spatula": "Verdant Spatula",
                "/items/azure_spatula": "Azure Spatula",
                "/items/burble_spatula": "Burble Spatula",
                "/items/crimson_spatula": "Crimson Spatula",
                "/items/rainbow_spatula": "Rainbow Spatula",
                "/items/holy_spatula": "Holy Spatula",
                "/items/celestial_pot": "Celestial Pot",
                "/items/cheese_pot": "Cheese Pot",
                "/items/verdant_pot": "Verdant Pot",
                "/items/azure_pot": "Azure Pot",
                "/items/burble_pot": "Burble Pot",
                "/items/crimson_pot": "Crimson Pot",
                "/items/rainbow_pot": "Rainbow Pot",
                "/items/holy_pot": "Holy Pot",
                "/items/celestial_alembic": "Celestial Alembic",
                "/items/cheese_alembic": "Cheese Alembic",
                "/items/verdant_alembic": "Verdant Alembic",
                "/items/azure_alembic": "Azure Alembic",
                "/items/burble_alembic": "Burble Alembic",
                "/items/crimson_alembic": "Crimson Alembic",
                "/items/rainbow_alembic": "Rainbow Alembic",
                "/items/holy_alembic": "Holy Alembic",
                "/items/celestial_enhancer": "Celestial Enhancer",
                "/items/cheese_enhancer": "Cheese Enhancer",
                "/items/verdant_enhancer": "Verdant Enhancer",
                "/items/azure_enhancer": "Azure Enhancer",
                "/items/burble_enhancer": "Burble Enhancer",
                "/items/crimson_enhancer": "Crimson Enhancer",
                "/items/rainbow_enhancer": "Rainbow Enhancer",
                "/items/holy_enhancer": "Holy Enhancer",
                "/items/milk": "Milk",
                "/items/verdant_milk": "Verdant Milk",
                "/items/azure_milk": "Azure Milk",
                "/items/burble_milk": "Burble Milk",
                "/items/crimson_milk": "Crimson Milk",
                "/items/rainbow_milk": "Rainbow Milk",
                "/items/holy_milk": "Holy Milk",
                "/items/cheese": "Cheese",
                "/items/verdant_cheese": "Verdant Cheese",
                "/items/azure_cheese": "Azure Cheese",
                "/items/burble_cheese": "Burble Cheese",
                "/items/crimson_cheese": "Crimson Cheese",
                "/items/rainbow_cheese": "Rainbow Cheese",
                "/items/holy_cheese": "Holy Cheese",
                "/items/log": "Log",
                "/items/birch_log": "Birch Log",
                "/items/cedar_log": "Cedar Log",
                "/items/purpleheart_log": "Purpleheart Log",
                "/items/ginkgo_log": "Ginkgo Log",
                "/items/redwood_log": "Redwood Log",
                "/items/arcane_log": "Arcane Log",
                "/items/lumber": "Lumber",
                "/items/birch_lumber": "Birch Lumber",
                "/items/cedar_lumber": "Cedar Lumber",
                "/items/purpleheart_lumber": "Purpleheart Lumber",
                "/items/ginkgo_lumber": "Ginkgo Lumber",
                "/items/redwood_lumber": "Redwood Lumber",
                "/items/arcane_lumber": "Arcane Lumber",
                "/items/rough_hide": "Rough Hide",
                "/items/reptile_hide": "Reptile Hide",
                "/items/gobo_hide": "Gobo Hide",
                "/items/beast_hide": "Beast Hide",
                "/items/umbral_hide": "Umbral Hide",
                "/items/rough_leather": "Rough Leather",
                "/items/reptile_leather": "Reptile Leather",
                "/items/gobo_leather": "Gobo Leather",
                "/items/beast_leather": "Beast Leather",
                "/items/umbral_leather": "Umbral Leather",
                "/items/cotton": "Cotton",
                "/items/flax": "Flax",
                "/items/bamboo_branch": "Bamboo Branch",
                "/items/cocoon": "Cocoon",
                "/items/radiant_fiber": "Radiant Fiber",
                "/items/cotton_fabric": "Cotton Fabric",
                "/items/linen_fabric": "Linen Fabric",
                "/items/bamboo_fabric": "Bamboo Fabric",
                "/items/silk_fabric": "Silk Fabric",
                "/items/radiant_fabric": "Radiant Fabric",
                "/items/egg": "Egg",
                "/items/wheat": "Wheat",
                "/items/sugar": "Sugar",
                "/items/blueberry": "Blueberry",
                "/items/blackberry": "Blackberry",
                "/items/strawberry": "Strawberry",
                "/items/mooberry": "Mooberry",
                "/items/marsberry": "Marsberry",
                "/items/spaceberry": "Spaceberry",
                "/items/apple": "Apple",
                "/items/orange": "Orange",
                "/items/plum": "Plum",
                "/items/peach": "Peach",
                "/items/dragon_fruit": "Dragon Fruit",
                "/items/star_fruit": "Star Fruit",
                "/items/arabica_coffee_bean": "Arabica Coffee Bean",
                "/items/robusta_coffee_bean": "Robusta Coffee Bean",
                "/items/liberica_coffee_bean": "Liberica Coffee Bean",
                "/items/excelsa_coffee_bean": "Excelsa Coffee Bean",
                "/items/fieriosa_coffee_bean": "Fieriosa Coffee Bean",
                "/items/spacia_coffee_bean": "Spacia Coffee Bean",
                "/items/green_tea_leaf": "Green Tea Leaf",
                "/items/black_tea_leaf": "Black Tea Leaf",
                "/items/burble_tea_leaf": "Burble Tea Leaf",
                "/items/moolong_tea_leaf": "Moolong Tea Leaf",
                "/items/red_tea_leaf": "Red Tea Leaf",
                "/items/emp_tea_leaf": "Emp Tea Leaf",
                "/items/catalyst_of_coinification": "Catalyst Of Coinification",
                "/items/catalyst_of_decomposition": "Catalyst Of Decomposition",
                "/items/catalyst_of_transmutation": "Catalyst Of Transmutation",
                "/items/prime_catalyst": "Prime Catalyst",
                "/items/snake_fang": "Snake Fang",
                "/items/shoebill_feather": "Shoebill Feather",
                "/items/snail_shell": "Snail Shell",
                "/items/crab_pincer": "Crab Pincer",
                "/items/turtle_shell": "Turtle Shell",
                "/items/marine_scale": "Marine Scale",
                "/items/treant_bark": "Treant Bark",
                "/items/centaur_hoof": "Centaur Hoof",
                "/items/luna_wing": "Luna Wing",
                "/items/gobo_rag": "Gobo Rag",
                "/items/goggles": "Goggles",
                "/items/magnifying_glass": "Magnifying Glass",
                "/items/eye_of_the_watcher": "Eye Of The Watcher",
                "/items/icy_cloth": "Icy Cloth",
                "/items/flaming_cloth": "Flaming Cloth",
                "/items/sorcerers_sole": "Sorcerer's Sole",
                "/items/chrono_sphere": "Chrono Sphere",
                "/items/frost_sphere": "Frost Sphere",
                "/items/panda_fluff": "Panda Fluff",
                "/items/black_bear_fluff": "Black Bear Fluff",
                "/items/grizzly_bear_fluff": "Grizzly Bear Fluff",
                "/items/polar_bear_fluff": "Polar Bear Fluff",
                "/items/red_panda_fluff": "Red Panda Fluff",
                "/items/magnet": "Magnet",
                "/items/stalactite_shard": "Stalactite Shard",
                "/items/living_granite": "Living Granite",
                "/items/colossus_core": "Colossus Core",
                "/items/vampire_fang": "Vampire Fang",
                "/items/werewolf_claw": "Werewolf Claw",
                "/items/revenant_anima": "Revenant Anima",
                "/items/soul_fragment": "Soul Fragment",
                "/items/infernal_ember": "Infernal Ember",
                "/items/demonic_core": "Demonic Core",
                "/items/griffin_leather": "Griffin Leather",
                "/items/manticore_sting": "Manticore Sting",
                "/items/jackalope_antler": "Jackalope Antler",
                "/items/dodocamel_plume": "Dodocamel Plume",
                "/items/griffin_talon": "Griffin Talon",
                "/items/chimerical_refinement_shard": "Chimerical Refinement Shard",
                "/items/acrobats_ribbon": "Acrobat's Ribbon",
                "/items/magicians_cloth": "Magician's Cloth",
                "/items/chaotic_chain": "Chaotic Chain",
                "/items/cursed_ball": "Cursed Ball",
                "/items/sinister_refinement_shard": "Sinister Refinement Shard",
                "/items/royal_cloth": "Royal Cloth",
                "/items/knights_ingot": "Knight's Ingot",
                "/items/bishops_scroll": "Bishop's Scroll",
                "/items/regal_jewel": "Regal Jewel",
                "/items/sundering_jewel": "Sundering Jewel",
                "/items/enchanted_refinement_shard": "Enchanted Refinement Shard",
                "/items/marksman_brooch": "Marksman Brooch",
                "/items/corsair_crest": "Corsair Crest",
                "/items/damaged_anchor": "Damaged Anchor",
                "/items/maelstrom_plating": "Maelstrom Plating",
                "/items/kraken_leather": "Kraken Leather",
                "/items/kraken_fang": "Kraken Fang",
                "/items/pirate_refinement_shard": "Pirate Refinement Shard",
                "/items/pathbreaker_lodestone": "Pathbreaker Lodestone",
                "/items/pathfinder_lodestone": "Pathfinder Lodestone",
                "/items/pathseeker_lodestone": "Pathseeker Lodestone",
                "/items/labyrinth_refinement_shard": "Labyrinth Refinement Shard",
                "/items/butter_of_proficiency": "Butter Of Proficiency",
                "/items/thread_of_expertise": "Thread Of Expertise",
                "/items/branch_of_insight": "Branch Of Insight",
                "/items/gluttonous_energy": "Gluttonous Energy",
                "/items/guzzling_energy": "Guzzling Energy",
                "/items/milking_essence": "Milking Essence",
                "/items/foraging_essence": "Foraging Essence",
                "/items/woodcutting_essence": "Woodcutting Essence",
                "/items/cheesesmithing_essence": "Cheesesmithing Essence",
                "/items/crafting_essence": "Crafting Essence",
                "/items/tailoring_essence": "Tailoring Essence",
                "/items/cooking_essence": "Cooking Essence",
                "/items/brewing_essence": "Brewing Essence",
                "/items/alchemy_essence": "Alchemy Essence",
                "/items/enhancing_essence": "Enhancing Essence",
                "/items/swamp_essence": "Swamp Essence",
                "/items/aqua_essence": "Aqua Essence",
                "/items/jungle_essence": "Jungle Essence",
                "/items/gobo_essence": "Gobo Essence",
                "/items/eyessence": "Eyessence",
                "/items/sorcerer_essence": "Sorcerer Essence",
                "/items/bear_essence": "Bear Essence",
                "/items/golem_essence": "Golem Essence",
                "/items/twilight_essence": "Twilight Essence",
                "/items/abyssal_essence": "Abyssal Essence",
                "/items/chimerical_essence": "Chimerical Essence",
                "/items/sinister_essence": "Sinister Essence",
                "/items/enchanted_essence": "Enchanted Essence",
                "/items/pirate_essence": "Pirate Essence",
                "/items/labyrinth_essence": "Labyrinth Essence",
                "/items/task_crystal": "Task Crystal",
                "/items/star_fragment": "Star Fragment",
                "/items/pearl": "Pearl",
                "/items/amber": "Amber",
                "/items/garnet": "Garnet",
                "/items/jade": "Jade",
                "/items/amethyst": "Amethyst",
                "/items/moonstone": "Moonstone",
                "/items/sunstone": "Sunstone",
                "/items/philosophers_stone": "Philosopher's Stone",
                "/items/crushed_pearl": "Crushed Pearl",
                "/items/crushed_amber": "Crushed Amber",
                "/items/crushed_garnet": "Crushed Garnet",
                "/items/crushed_jade": "Crushed Jade",
                "/items/crushed_amethyst": "Crushed Amethyst",
                "/items/crushed_moonstone": "Crushed Moonstone",
                "/items/crushed_sunstone": "Crushed Sunstone",
                "/items/crushed_philosophers_stone": "Crushed Philosopher's Stone",
                "/items/shard_of_protection": "Shard Of Protection",
                "/items/mirror_of_protection": "Mirror Of Protection",
                "/items/philosophers_mirror": "Philosopher's Mirror",
                "/items/basic_torch": "Basic Torch",
                "/items/advanced_torch": "Advanced Torch",
                "/items/expert_torch": "Expert Torch",
                "/items/basic_shroud": "Basic Shroud",
                "/items/advanced_shroud": "Advanced Shroud",
                "/items/expert_shroud": "Expert Shroud",
                "/items/basic_beacon": "Basic Beacon",
                "/items/advanced_beacon": "Advanced Beacon",
                "/items/expert_beacon": "Expert Beacon",
                "/items/basic_food_crate": "Basic Food Crate",
                "/items/advanced_food_crate": "Advanced Food Crate",
                "/items/expert_food_crate": "Expert Food Crate",
                "/items/basic_tea_crate": "Basic Tea Crate",
                "/items/advanced_tea_crate": "Advanced Tea Crate",
                "/items/expert_tea_crate": "Expert Tea Crate",
                "/items/basic_coffee_crate": "Basic Coffee Crate",
                "/items/advanced_coffee_crate": "Advanced Coffee Crate",
                "/items/expert_coffee_crate": "Expert Coffee Crate"
            } } },
            zh: { translation: { itemNames: {
                "/items/coin": "\u91d1\u5e01",
                "/items/task_token": "\u4efb\u52a1\u4ee3\u5e01",
                "/items/labyrinth_token": "\u8ff7\u5bab\u4ee3\u5e01",
                "/items/chimerical_token": "\u5947\u5e7b\u4ee3\u5e01",
                "/items/sinister_token": "\u9634\u68ee\u4ee3\u5e01",
                "/items/enchanted_token": "\u79d8\u6cd5\u4ee3\u5e01",
                "/items/pirate_token": "\u6d77\u76d7\u4ee3\u5e01",
                "/items/cowbell": "\u725b\u94c3",
                "/items/bag_of_10_cowbells": "\u725b\u94c3\u888b (10\u4e2a)",
                "/items/purples_gift": "\u5c0f\u7d2b\u725b\u7684\u793c\u7269",
                "/items/small_meteorite_cache": "\u5c0f\u9668\u77f3\u8231",
                "/items/medium_meteorite_cache": "\u4e2d\u9668\u77f3\u8231",
                "/items/large_meteorite_cache": "\u5927\u9668\u77f3\u8231",
                "/items/small_artisans_crate": "\u5c0f\u5de5\u5320\u5323",
                "/items/medium_artisans_crate": "\u4e2d\u5de5\u5320\u5323",
                "/items/large_artisans_crate": "\u5927\u5de5\u5320\u5323",
                "/items/small_treasure_chest": "\u5c0f\u5b9d\u7bb1",
                "/items/medium_treasure_chest": "\u4e2d\u5b9d\u7bb1",
                "/items/large_treasure_chest": "\u5927\u5b9d\u7bb1",
                "/items/chimerical_chest": "\u5947\u5e7b\u5b9d\u7bb1",
                "/items/chimerical_refinement_chest": "\u5947\u5e7b\u7cbe\u70bc\u5b9d\u7bb1",
                "/items/sinister_chest": "\u9634\u68ee\u5b9d\u7bb1",
                "/items/sinister_refinement_chest": "\u9634\u68ee\u7cbe\u70bc\u5b9d\u7bb1",
                "/items/enchanted_chest": "\u79d8\u6cd5\u5b9d\u7bb1",
                "/items/enchanted_refinement_chest": "\u79d8\u6cd5\u7cbe\u70bc\u5b9d\u7bb1",
                "/items/pirate_chest": "\u6d77\u76d7\u5b9d\u7bb1",
                "/items/pirate_refinement_chest": "\u6d77\u76d7\u7cbe\u70bc\u5b9d\u7bb1",
                "/items/purdoras_box_skilling": "\u7d2b\u591a\u62c9\u4e4b\u76d2\uff08\u751f\u6d3b\uff09",
                "/items/purdoras_box_combat": "\u7d2b\u591a\u62c9\u4e4b\u76d2\uff08\u6218\u6597\uff09",
                "/items/labyrinth_refinement_chest": "\u8ff7\u5bab\u7cbe\u70bc\u5b9d\u7bb1",
                "/items/seal_of_gathering": "\u91c7\u96c6\u5377\u8f74",
                "/items/seal_of_gourmet": "\u7f8e\u98df\u5377\u8f74",
                "/items/seal_of_processing": "\u52a0\u5de5\u5377\u8f74",
                "/items/seal_of_efficiency": "\u6548\u7387\u5377\u8f74",
                "/items/seal_of_action_speed": "\u884c\u52a8\u901f\u5ea6\u5377\u8f74",
                "/items/seal_of_combat_drop": "\u6218\u6597\u6389\u843d\u5377\u8f74",
                "/items/seal_of_attack_speed": "\u653b\u51fb\u901f\u5ea6\u5377\u8f74",
                "/items/seal_of_cast_speed": "\u65bd\u6cd5\u901f\u5ea6\u5377\u8f74",
                "/items/seal_of_damage": "\u4f24\u5bb3\u5377\u8f74",
                "/items/seal_of_critical_rate": "\u66b4\u51fb\u7387\u5377\u8f74",
                "/items/seal_of_wisdom": "\u7ecf\u9a8c\u5377\u8f74",
                "/items/seal_of_rare_find": "\u7a00\u6709\u53d1\u73b0\u5377\u8f74",
                "/items/blue_key_fragment": "\u84dd\u8272\u94a5\u5319\u788e\u7247",
                "/items/green_key_fragment": "\u7eff\u8272\u94a5\u5319\u788e\u7247",
                "/items/purple_key_fragment": "\u7d2b\u8272\u94a5\u5319\u788e\u7247",
                "/items/white_key_fragment": "\u767d\u8272\u94a5\u5319\u788e\u7247",
                "/items/orange_key_fragment": "\u6a59\u8272\u94a5\u5319\u788e\u7247",
                "/items/brown_key_fragment": "\u68d5\u8272\u94a5\u5319\u788e\u7247",
                "/items/stone_key_fragment": "\u77f3\u5934\u94a5\u5319\u788e\u7247",
                "/items/dark_key_fragment": "\u9ed1\u6697\u94a5\u5319\u788e\u7247",
                "/items/burning_key_fragment": "\u71c3\u70e7\u94a5\u5319\u788e\u7247",
                "/items/chimerical_entry_key": "\u5947\u5e7b\u94a5\u5319",
                "/items/chimerical_chest_key": "\u5947\u5e7b\u5b9d\u7bb1\u94a5\u5319",
                "/items/sinister_entry_key": "\u9634\u68ee\u94a5\u5319",
                "/items/sinister_chest_key": "\u9634\u68ee\u5b9d\u7bb1\u94a5\u5319",
                "/items/enchanted_entry_key": "\u79d8\u6cd5\u94a5\u5319",
                "/items/enchanted_chest_key": "\u79d8\u6cd5\u5b9d\u7bb1\u94a5\u5319",
                "/items/pirate_entry_key": "\u6d77\u76d7\u94a5\u5319",
                "/items/pirate_chest_key": "\u6d77\u76d7\u5b9d\u7bb1\u94a5\u5319",
                "/items/donut": "\u751c\u751c\u5708",
                "/items/blueberry_donut": "\u84dd\u8393\u751c\u751c\u5708",
                "/items/blackberry_donut": "\u9ed1\u8393\u751c\u751c\u5708",
                "/items/strawberry_donut": "\u8349\u8393\u751c\u751c\u5708",
                "/items/mooberry_donut": "\u54de\u8393\u751c\u751c\u5708",
                "/items/marsberry_donut": "\u706b\u661f\u8393\u751c\u751c\u5708",
                "/items/spaceberry_donut": "\u592a\u7a7a\u8393\u751c\u751c\u5708",
                "/items/cupcake": "\u7eb8\u676f\u86cb\u7cd5",
                "/items/blueberry_cake": "\u84dd\u8393\u86cb\u7cd5",
                "/items/blackberry_cake": "\u9ed1\u8393\u86cb\u7cd5",
                "/items/strawberry_cake": "\u8349\u8393\u86cb\u7cd5",
                "/items/mooberry_cake": "\u54de\u8393\u86cb\u7cd5",
                "/items/marsberry_cake": "\u706b\u661f\u8393\u86cb\u7cd5",
                "/items/spaceberry_cake": "\u592a\u7a7a\u8393\u86cb\u7cd5",
                "/items/gummy": "\u8f6f\u7cd6",
                "/items/apple_gummy": "\u82f9\u679c\u8f6f\u7cd6",
                "/items/orange_gummy": "\u6a59\u5b50\u8f6f\u7cd6",
                "/items/plum_gummy": "\u674e\u5b50\u8f6f\u7cd6",
                "/items/peach_gummy": "\u6843\u5b50\u8f6f\u7cd6",
                "/items/dragon_fruit_gummy": "\u706b\u9f99\u679c\u8f6f\u7cd6",
                "/items/star_fruit_gummy": "\u6768\u6843\u8f6f\u7cd6",
                "/items/yogurt": "\u9178\u5976",
                "/items/apple_yogurt": "\u82f9\u679c\u9178\u5976",
                "/items/orange_yogurt": "\u6a59\u5b50\u9178\u5976",
                "/items/plum_yogurt": "\u674e\u5b50\u9178\u5976",
                "/items/peach_yogurt": "\u6843\u5b50\u9178\u5976",
                "/items/dragon_fruit_yogurt": "\u706b\u9f99\u679c\u9178\u5976",
                "/items/star_fruit_yogurt": "\u6768\u6843\u9178\u5976",
                "/items/milking_tea": "\u6324\u5976\u8336",
                "/items/foraging_tea": "\u91c7\u6458\u8336",
                "/items/woodcutting_tea": "\u4f10\u6728\u8336",
                "/items/cooking_tea": "\u70f9\u996a\u8336",
                "/items/brewing_tea": "\u51b2\u6ce1\u8336",
                "/items/alchemy_tea": "\u70bc\u91d1\u8336",
                "/items/enhancing_tea": "\u5f3a\u5316\u8336",
                "/items/cheesesmithing_tea": "\u5976\u916a\u953b\u9020\u8336",
                "/items/crafting_tea": "\u5236\u4f5c\u8336",
                "/items/tailoring_tea": "\u7f1d\u7eab\u8336",
                "/items/super_milking_tea": "\u8d85\u7ea7\u6324\u5976\u8336",
                "/items/super_foraging_tea": "\u8d85\u7ea7\u91c7\u6458\u8336",
                "/items/super_woodcutting_tea": "\u8d85\u7ea7\u4f10\u6728\u8336",
                "/items/super_cooking_tea": "\u8d85\u7ea7\u70f9\u996a\u8336",
                "/items/super_brewing_tea": "\u8d85\u7ea7\u51b2\u6ce1\u8336",
                "/items/super_alchemy_tea": "\u8d85\u7ea7\u70bc\u91d1\u8336",
                "/items/super_enhancing_tea": "\u8d85\u7ea7\u5f3a\u5316\u8336",
                "/items/super_cheesesmithing_tea": "\u8d85\u7ea7\u5976\u916a\u953b\u9020\u8336",
                "/items/super_crafting_tea": "\u8d85\u7ea7\u5236\u4f5c\u8336",
                "/items/super_tailoring_tea": "\u8d85\u7ea7\u7f1d\u7eab\u8336",
                "/items/ultra_milking_tea": "\u7a76\u6781\u6324\u5976\u8336",
                "/items/ultra_foraging_tea": "\u7a76\u6781\u91c7\u6458\u8336",
                "/items/ultra_woodcutting_tea": "\u7a76\u6781\u4f10\u6728\u8336",
                "/items/ultra_cooking_tea": "\u7a76\u6781\u70f9\u996a\u8336",
                "/items/ultra_brewing_tea": "\u7a76\u6781\u51b2\u6ce1\u8336",
                "/items/ultra_alchemy_tea": "\u7a76\u6781\u70bc\u91d1\u8336",
                "/items/ultra_enhancing_tea": "\u7a76\u6781\u5f3a\u5316\u8336",
                "/items/ultra_cheesesmithing_tea": "\u7a76\u6781\u5976\u916a\u953b\u9020\u8336",
                "/items/ultra_crafting_tea": "\u7a76\u6781\u5236\u4f5c\u8336",
                "/items/ultra_tailoring_tea": "\u7a76\u6781\u7f1d\u7eab\u8336",
                "/items/gathering_tea": "\u91c7\u96c6\u8336",
                "/items/gourmet_tea": "\u7f8e\u98df\u8336",
                "/items/wisdom_tea": "\u7ecf\u9a8c\u8336",
                "/items/processing_tea": "\u52a0\u5de5\u8336",
                "/items/efficiency_tea": "\u6548\u7387\u8336",
                "/items/artisan_tea": "\u5de5\u5320\u8336",
                "/items/catalytic_tea": "\u50ac\u5316\u8336",
                "/items/blessed_tea": "\u798f\u6c14\u8336",
                "/items/stamina_coffee": "\u8010\u529b\u5496\u5561",
                "/items/intelligence_coffee": "\u667a\u529b\u5496\u5561",
                "/items/defense_coffee": "\u9632\u5fa1\u5496\u5561",
                "/items/attack_coffee": "\u653b\u51fb\u5496\u5561",
                "/items/melee_coffee": "\u8fd1\u6218\u5496\u5561",
                "/items/ranged_coffee": "\u8fdc\u7a0b\u5496\u5561",
                "/items/magic_coffee": "\u9b54\u6cd5\u5496\u5561",
                "/items/super_stamina_coffee": "\u8d85\u7ea7\u8010\u529b\u5496\u5561",
                "/items/super_intelligence_coffee": "\u8d85\u7ea7\u667a\u529b\u5496\u5561",
                "/items/super_defense_coffee": "\u8d85\u7ea7\u9632\u5fa1\u5496\u5561",
                "/items/super_attack_coffee": "\u8d85\u7ea7\u653b\u51fb\u5496\u5561",
                "/items/super_melee_coffee": "\u8d85\u7ea7\u8fd1\u6218\u5496\u5561",
                "/items/super_ranged_coffee": "\u8d85\u7ea7\u8fdc\u7a0b\u5496\u5561",
                "/items/super_magic_coffee": "\u8d85\u7ea7\u9b54\u6cd5\u5496\u5561",
                "/items/ultra_stamina_coffee": "\u7a76\u6781\u8010\u529b\u5496\u5561",
                "/items/ultra_intelligence_coffee": "\u7a76\u6781\u667a\u529b\u5496\u5561",
                "/items/ultra_defense_coffee": "\u7a76\u6781\u9632\u5fa1\u5496\u5561",
                "/items/ultra_attack_coffee": "\u7a76\u6781\u653b\u51fb\u5496\u5561",
                "/items/ultra_melee_coffee": "\u7a76\u6781\u8fd1\u6218\u5496\u5561",
                "/items/ultra_ranged_coffee": "\u7a76\u6781\u8fdc\u7a0b\u5496\u5561",
                "/items/ultra_magic_coffee": "\u7a76\u6781\u9b54\u6cd5\u5496\u5561",
                "/items/wisdom_coffee": "\u7ecf\u9a8c\u5496\u5561",
                "/items/lucky_coffee": "\u5e78\u8fd0\u5496\u5561",
                "/items/swiftness_coffee": "\u8fc5\u6377\u5496\u5561",
                "/items/channeling_coffee": "\u541f\u5531\u5496\u5561",
                "/items/critical_coffee": "\u66b4\u51fb\u5496\u5561",
                "/items/poke": "\u7834\u80c6\u4e4b\u523a",
                "/items/impale": "\u900f\u9aa8\u4e4b\u523a",
                "/items/puncture": "\u7834\u7532\u4e4b\u523a",
                "/items/penetrating_strike": "\u8d2f\u5fc3\u4e4b\u523a",
                "/items/scratch": "\u722a\u5f71\u65a9",
                "/items/cleave": "\u5206\u88c2\u65a9",
                "/items/maim": "\u8840\u5203\u65a9",
                "/items/crippling_slash": "\u81f4\u6b8b\u65a9",
                "/items/smack": "\u91cd\u78be",
                "/items/sweep": "\u91cd\u626b",
                "/items/stunning_blow": "\u91cd\u9524",
                "/items/fracturing_impact": "\u788e\u88c2\u51b2\u51fb",
                "/items/shield_bash": "\u76fe\u51fb",
                "/items/quick_shot": "\u5feb\u901f\u5c04\u51fb",
                "/items/aqua_arrow": "\u6d41\u6c34\u7bad",
                "/items/flame_arrow": "\u70c8\u7130\u7bad",
                "/items/rain_of_arrows": "\u7bad\u96e8",
                "/items/silencing_shot": "\u6c89\u9ed8\u4e4b\u7bad",
                "/items/steady_shot": "\u7a33\u5b9a\u5c04\u51fb",
                "/items/pestilent_shot": "\u75ab\u75c5\u5c04\u51fb",
                "/items/penetrating_shot": "\u8d2f\u7a7f\u5c04\u51fb",
                "/items/water_strike": "\u6d41\u6c34\u51b2\u51fb",
                "/items/ice_spear": "\u51b0\u67aa\u672f",
                "/items/frost_surge": "\u51b0\u971c\u7206\u88c2",
                "/items/mana_spring": "\u6cd5\u529b\u55b7\u6cc9",
                "/items/entangle": "\u7f20\u7ed5",
                "/items/toxic_pollen": "\u5267\u6bd2\u7c89\u5c18",
                "/items/natures_veil": "\u81ea\u7136\u83cc\u5e55",
                "/items/life_drain": "\u751f\u547d\u5438\u53d6",
                "/items/fireball": "\u706b\u7403",
                "/items/flame_blast": "\u7194\u5ca9\u7206\u88c2",
                "/items/firestorm": "\u706b\u7130\u98ce\u66b4",
                "/items/smoke_burst": "\u70df\u7206\u706d\u5f71",
                "/items/minor_heal": "\u521d\u7ea7\u81ea\u6108\u672f",
                "/items/heal": "\u81ea\u6108\u672f",
                "/items/quick_aid": "\u5feb\u901f\u6cbb\u7597\u672f",
                "/items/rejuvenate": "\u7fa4\u4f53\u6cbb\u7597\u672f",
                "/items/taunt": "\u5632\u8bbd",
                "/items/provoke": "\u6311\u8845",
                "/items/toughness": "\u575a\u97e7",
                "/items/elusiveness": "\u95ea\u907f",
                "/items/precision": "\u7cbe\u786e",
                "/items/berserk": "\u72c2\u66b4",
                "/items/elemental_affinity": "\u5143\u7d20\u589e\u5e45",
                "/items/frenzy": "\u72c2\u901f",
                "/items/spike_shell": "\u5c16\u523a\u9632\u62a4",
                "/items/retribution": "\u60e9\u6212",
                "/items/vampirism": "\u5438\u8840",
                "/items/revive": "\u590d\u6d3b",
                "/items/insanity": "\u75af\u72c2",
                "/items/invincible": "\u65e0\u654c",
                "/items/speed_aura": "\u901f\u5ea6\u5149\u73af",
                "/items/guardian_aura": "\u5b88\u62a4\u5149\u73af",
                "/items/fierce_aura": "\u7269\u7406\u5149\u73af",
                "/items/critical_aura": "\u66b4\u51fb\u5149\u73af",
                "/items/mystic_aura": "\u5143\u7d20\u5149\u73af",
                "/items/gobo_stabber": "\u54e5\u5e03\u6797\u957f\u5251",
                "/items/gobo_slasher": "\u54e5\u5e03\u6797\u5173\u5200",
                "/items/gobo_smasher": "\u54e5\u5e03\u6797\u72fc\u7259\u68d2",
                "/items/spiked_bulwark": "\u5c16\u523a\u91cd\u76fe",
                "/items/werewolf_slasher": "\u72fc\u4eba\u5173\u5200",
                "/items/griffin_bulwark": "\u72ee\u9e6b\u91cd\u76fe",
                "/items/griffin_bulwark_refined": "\u72ee\u9e6b\u91cd\u76fe\uff08\u7cbe\uff09",
                "/items/gobo_shooter": "\u54e5\u5e03\u6797\u5f39\u5f13",
                "/items/vampiric_bow": "\u5438\u8840\u5f13",
                "/items/cursed_bow": "\u5492\u6028\u4e4b\u5f13",
                "/items/cursed_bow_refined": "\u5492\u6028\u4e4b\u5f13\uff08\u7cbe\uff09",
                "/items/gobo_boomstick": "\u54e5\u5e03\u6797\u706b\u68cd",
                "/items/cheese_bulwark": "\u5976\u916a\u91cd\u76fe",
                "/items/verdant_bulwark": "\u7fe0\u7eff\u91cd\u76fe",
                "/items/azure_bulwark": "\u851a\u84dd\u91cd\u76fe",
                "/items/burble_bulwark": "\u6df1\u7d2b\u91cd\u76fe",
                "/items/crimson_bulwark": "\u7edb\u7ea2\u91cd\u76fe",
                "/items/rainbow_bulwark": "\u5f69\u8679\u91cd\u76fe",
                "/items/holy_bulwark": "\u795e\u5723\u91cd\u76fe",
                "/items/wooden_bow": "\u6728\u5f13",
                "/items/birch_bow": "\u6866\u6728\u5f13",
                "/items/cedar_bow": "\u96ea\u677e\u5f13",
                "/items/purpleheart_bow": "\u7d2b\u5fc3\u5f13",
                "/items/ginkgo_bow": "\u94f6\u674f\u5f13",
                "/items/redwood_bow": "\u7ea2\u6749\u5f13",
                "/items/arcane_bow": "\u795e\u79d8\u5f13",
                "/items/stalactite_spear": "\u77f3\u949f\u957f\u67aa",
                "/items/granite_bludgeon": "\u82b1\u5c97\u5ca9\u5927\u68d2",
                "/items/furious_spear": "\u72c2\u6012\u957f\u67aa",
                "/items/furious_spear_refined": "\u72c2\u6012\u957f\u67aa\uff08\u7cbe\uff09",
                "/items/regal_sword": "\u541b\u738b\u4e4b\u5251",
                "/items/regal_sword_refined": "\u541b\u738b\u4e4b\u5251\uff08\u7cbe\uff09",
                "/items/chaotic_flail": "\u6df7\u6c8c\u8fde\u67b7",
                "/items/chaotic_flail_refined": "\u6df7\u6c8c\u8fde\u67b7\uff08\u7cbe\uff09",
                "/items/soul_hunter_crossbow": "\u7075\u9b42\u730e\u624b\u5f29",
                "/items/sundering_crossbow": "\u88c2\u7a7a\u4e4b\u5f29",
                "/items/sundering_crossbow_refined": "\u88c2\u7a7a\u4e4b\u5f29\uff08\u7cbe\uff09",
                "/items/frost_staff": "\u51b0\u971c\u6cd5\u6756",
                "/items/infernal_battlestaff": "\u70bc\u72f1\u6cd5\u6756",
                "/items/jackalope_staff": "\u9e7f\u89d2\u5154\u4e4b\u6756",
                "/items/rippling_trident": "\u6d9f\u6f2a\u4e09\u53c9\u621f",
                "/items/rippling_trident_refined": "\u6d9f\u6f2a\u4e09\u53c9\u621f\uff08\u7cbe\uff09",
                "/items/blooming_trident": "\u7efd\u653e\u4e09\u53c9\u621f",
                "/items/blooming_trident_refined": "\u7efd\u653e\u4e09\u53c9\u621f\uff08\u7cbe\uff09",
                "/items/blazing_trident": "\u70bd\u7130\u4e09\u53c9\u621f",
                "/items/blazing_trident_refined": "\u70bd\u7130\u4e09\u53c9\u621f\uff08\u7cbe\uff09",
                "/items/cheese_sword": "\u5976\u916a\u5251",
                "/items/verdant_sword": "\u7fe0\u7eff\u5251",
                "/items/azure_sword": "\u851a\u84dd\u5251",
                "/items/burble_sword": "\u6df1\u7d2b\u5251",
                "/items/crimson_sword": "\u7edb\u7ea2\u5251",
                "/items/rainbow_sword": "\u5f69\u8679\u5251",
                "/items/holy_sword": "\u795e\u5723\u5251",
                "/items/cheese_spear": "\u5976\u916a\u957f\u67aa",
                "/items/verdant_spear": "\u7fe0\u7eff\u957f\u67aa",
                "/items/azure_spear": "\u851a\u84dd\u957f\u67aa",
                "/items/burble_spear": "\u6df1\u7d2b\u957f\u67aa",
                "/items/crimson_spear": "\u7edb\u7ea2\u957f\u67aa",
                "/items/rainbow_spear": "\u5f69\u8679\u957f\u67aa",
                "/items/holy_spear": "\u795e\u5723\u957f\u67aa",
                "/items/cheese_mace": "\u5976\u916a\u9489\u5934\u9524",
                "/items/verdant_mace": "\u7fe0\u7eff\u9489\u5934\u9524",
                "/items/azure_mace": "\u851a\u84dd\u9489\u5934\u9524",
                "/items/burble_mace": "\u6df1\u7d2b\u9489\u5934\u9524",
                "/items/crimson_mace": "\u7edb\u7ea2\u9489\u5934\u9524",
                "/items/rainbow_mace": "\u5f69\u8679\u9489\u5934\u9524",
                "/items/holy_mace": "\u795e\u5723\u9489\u5934\u9524",
                "/items/wooden_crossbow": "\u6728\u5f29",
                "/items/birch_crossbow": "\u6866\u6728\u5f29",
                "/items/cedar_crossbow": "\u96ea\u677e\u5f29",
                "/items/purpleheart_crossbow": "\u7d2b\u5fc3\u5f29",
                "/items/ginkgo_crossbow": "\u94f6\u674f\u5f29",
                "/items/redwood_crossbow": "\u7ea2\u6749\u5f29",
                "/items/arcane_crossbow": "\u795e\u79d8\u5f29",
                "/items/wooden_water_staff": "\u6728\u5236\u6c34\u6cd5\u6756",
                "/items/birch_water_staff": "\u6866\u6728\u6c34\u6cd5\u6756",
                "/items/cedar_water_staff": "\u96ea\u677e\u6c34\u6cd5\u6756",
                "/items/purpleheart_water_staff": "\u7d2b\u5fc3\u6c34\u6cd5\u6756",
                "/items/ginkgo_water_staff": "\u94f6\u674f\u6c34\u6cd5\u6756",
                "/items/redwood_water_staff": "\u7ea2\u6749\u6c34\u6cd5\u6756",
                "/items/arcane_water_staff": "\u795e\u79d8\u6c34\u6cd5\u6756",
                "/items/wooden_nature_staff": "\u6728\u5236\u81ea\u7136\u6cd5\u6756",
                "/items/birch_nature_staff": "\u6866\u6728\u81ea\u7136\u6cd5\u6756",
                "/items/cedar_nature_staff": "\u96ea\u677e\u81ea\u7136\u6cd5\u6756",
                "/items/purpleheart_nature_staff": "\u7d2b\u5fc3\u81ea\u7136\u6cd5\u6756",
                "/items/ginkgo_nature_staff": "\u94f6\u674f\u81ea\u7136\u6cd5\u6756",
                "/items/redwood_nature_staff": "\u7ea2\u6749\u81ea\u7136\u6cd5\u6756",
                "/items/arcane_nature_staff": "\u795e\u79d8\u81ea\u7136\u6cd5\u6756",
                "/items/wooden_fire_staff": "\u6728\u5236\u706b\u6cd5\u6756",
                "/items/birch_fire_staff": "\u6866\u6728\u706b\u6cd5\u6756",
                "/items/cedar_fire_staff": "\u96ea\u677e\u706b\u6cd5\u6756",
                "/items/purpleheart_fire_staff": "\u7d2b\u5fc3\u706b\u6cd5\u6756",
                "/items/ginkgo_fire_staff": "\u94f6\u674f\u706b\u6cd5\u6756",
                "/items/redwood_fire_staff": "\u7ea2\u6749\u706b\u6cd5\u6756",
                "/items/arcane_fire_staff": "\u795e\u79d8\u706b\u6cd5\u6756",
                "/items/eye_watch": "\u638c\u4e0a\u76d1\u5de5",
                "/items/snake_fang_dirk": "\u86c7\u7259\u77ed\u5251",
                "/items/vision_shield": "\u89c6\u89c9\u76fe",
                "/items/gobo_defender": "\u54e5\u5e03\u6797\u9632\u5fa1\u8005",
                "/items/vampire_fang_dirk": "\u5438\u8840\u9b3c\u77ed\u5251",
                "/items/knights_aegis": "\u9a91\u58eb\u76fe",
                "/items/knights_aegis_refined": "\u9a91\u58eb\u76fe\uff08\u7cbe\uff09",
                "/items/treant_shield": "\u6811\u4eba\u76fe",
                "/items/manticore_shield": "\u874e\u72ee\u76fe",
                "/items/tome_of_healing": "\u6cbb\u7597\u4e4b\u4e66",
                "/items/tome_of_the_elements": "\u5143\u7d20\u4e4b\u4e66",
                "/items/watchful_relic": "\u8b66\u6212\u9057\u7269",
                "/items/bishops_codex": "\u4e3b\u6559\u6cd5\u5178",
                "/items/bishops_codex_refined": "\u4e3b\u6559\u6cd5\u5178\uff08\u7cbe\uff09",
                "/items/cheese_buckler": "\u5976\u916a\u5706\u76fe",
                "/items/verdant_buckler": "\u7fe0\u7eff\u5706\u76fe",
                "/items/azure_buckler": "\u851a\u84dd\u5706\u76fe",
                "/items/burble_buckler": "\u6df1\u7d2b\u5706\u76fe",
                "/items/crimson_buckler": "\u7edb\u7ea2\u5706\u76fe",
                "/items/rainbow_buckler": "\u5f69\u8679\u5706\u76fe",
                "/items/holy_buckler": "\u795e\u5723\u5706\u76fe",
                "/items/wooden_shield": "\u6728\u76fe",
                "/items/birch_shield": "\u6866\u6728\u76fe",
                "/items/cedar_shield": "\u96ea\u677e\u76fe",
                "/items/purpleheart_shield": "\u7d2b\u5fc3\u76fe",
                "/items/ginkgo_shield": "\u94f6\u674f\u76fe",
                "/items/redwood_shield": "\u7ea2\u6749\u76fe",
                "/items/arcane_shield": "\u795e\u79d8\u76fe",
                "/items/gatherer_cape": "\u91c7\u96c6\u8005\u62ab\u98ce",
                "/items/gatherer_cape_refined": "\u91c7\u96c6\u8005\u62ab\u98ce\uff08\u7cbe\uff09",
                "/items/artificer_cape": "\u5de5\u5320\u62ab\u98ce",
                "/items/artificer_cape_refined": "\u5de5\u5320\u62ab\u98ce\uff08\u7cbe\uff09",
                "/items/culinary_cape": "\u53a8\u5e08\u62ab\u98ce",
                "/items/culinary_cape_refined": "\u53a8\u5e08\u62ab\u98ce\uff08\u7cbe\uff09",
                "/items/chance_cape": "\u673a\u7f18\u62ab\u98ce",
                "/items/chance_cape_refined": "\u673a\u7f18\u62ab\u98ce\uff08\u7cbe\uff09",
                "/items/sinister_cape": "\u9634\u68ee\u62ab\u98ce",
                "/items/sinister_cape_refined": "\u9634\u68ee\u62ab\u98ce\uff08\u7cbe\uff09",
                "/items/chimerical_quiver": "\u5947\u5e7b\u7bad\u888b",
                "/items/chimerical_quiver_refined": "\u5947\u5e7b\u7bad\u888b\uff08\u7cbe\uff09",
                "/items/enchanted_cloak": "\u79d8\u6cd5\u62ab\u98ce",
                "/items/enchanted_cloak_refined": "\u79d8\u6cd5\u62ab\u98ce\uff08\u7cbe\uff09",
                "/items/red_culinary_hat": "\u7ea2\u8272\u53a8\u5e08\u5e3d",
                "/items/snail_shell_helmet": "\u8717\u725b\u58f3\u5934\u76d4",
                "/items/vision_helmet": "\u89c6\u89c9\u5934\u76d4",
                "/items/fluffy_red_hat": "\u84ec\u677e\u7ea2\u5e3d\u5b50",
                "/items/corsair_helmet": "\u63a0\u593a\u8005\u5934\u76d4",
                "/items/corsair_helmet_refined": "\u63a0\u593a\u8005\u5934\u76d4\uff08\u7cbe\uff09",
                "/items/acrobatic_hood": "\u6742\u6280\u5e08\u515c\u5e3d",
                "/items/acrobatic_hood_refined": "\u6742\u6280\u5e08\u515c\u5e3d\uff08\u7cbe\uff09",
                "/items/magicians_hat": "\u9b54\u672f\u5e08\u5e3d",
                "/items/magicians_hat_refined": "\u9b54\u672f\u5e08\u5e3d\uff08\u7cbe\uff09",
                "/items/cheese_helmet": "\u5976\u916a\u5934\u76d4",
                "/items/verdant_helmet": "\u7fe0\u7eff\u5934\u76d4",
                "/items/azure_helmet": "\u851a\u84dd\u5934\u76d4",
                "/items/burble_helmet": "\u6df1\u7d2b\u5934\u76d4",
                "/items/crimson_helmet": "\u7edb\u7ea2\u5934\u76d4",
                "/items/rainbow_helmet": "\u5f69\u8679\u5934\u76d4",
                "/items/holy_helmet": "\u795e\u5723\u5934\u76d4",
                "/items/rough_hood": "\u7c97\u7cd9\u515c\u5e3d",
                "/items/reptile_hood": "\u722c\u884c\u52a8\u7269\u515c\u5e3d",
                "/items/gobo_hood": "\u54e5\u5e03\u6797\u515c\u5e3d",
                "/items/beast_hood": "\u91ce\u517d\u515c\u5e3d",
                "/items/umbral_hood": "\u6697\u5f71\u515c\u5e3d",
                "/items/cotton_hat": "\u68c9\u5e3d",
                "/items/linen_hat": "\u4e9a\u9ebb\u5e3d",
                "/items/bamboo_hat": "\u7af9\u5e3d",
                "/items/silk_hat": "\u4e1d\u5e3d",
                "/items/radiant_hat": "\u5149\u8f89\u5e3d",
                "/items/dairyhands_top": "\u6324\u5976\u5de5\u4e0a\u8863",
                "/items/foragers_top": "\u91c7\u6458\u8005\u4e0a\u8863",
                "/items/lumberjacks_top": "\u4f10\u6728\u5de5\u4e0a\u8863",
                "/items/cheesemakers_top": "\u5976\u916a\u5e08\u4e0a\u8863",
                "/items/crafters_top": "\u5de5\u5320\u4e0a\u8863",
                "/items/tailors_top": "\u88c1\u7f1d\u4e0a\u8863",
                "/items/chefs_top": "\u53a8\u5e08\u4e0a\u8863",
                "/items/brewers_top": "\u996e\u54c1\u5e08\u4e0a\u8863",
                "/items/alchemists_top": "\u70bc\u91d1\u5e08\u4e0a\u8863",
                "/items/enhancers_top": "\u5f3a\u5316\u5e08\u4e0a\u8863",
                "/items/gator_vest": "\u9cc4\u9c7c\u9a6c\u7532",
                "/items/turtle_shell_body": "\u9f9f\u58f3\u80f8\u7532",
                "/items/colossus_plate_body": "\u5de8\u50cf\u80f8\u7532",
                "/items/demonic_plate_body": "\u6076\u9b54\u80f8\u7532",
                "/items/anchorbound_plate_body": "\u951a\u5b9a\u80f8\u7532",
                "/items/anchorbound_plate_body_refined": "\u951a\u5b9a\u80f8\u7532\uff08\u7cbe\uff09",
                "/items/maelstrom_plate_body": "\u6012\u6d9b\u80f8\u7532",
                "/items/maelstrom_plate_body_refined": "\u6012\u6d9b\u80f8\u7532\uff08\u7cbe\uff09",
                "/items/marine_tunic": "\u6d77\u6d0b\u76ae\u8863",
                "/items/revenant_tunic": "\u4ea1\u7075\u76ae\u8863",
                "/items/griffin_tunic": "\u72ee\u9e6b\u76ae\u8863",
                "/items/kraken_tunic": "\u514b\u62c9\u80af\u76ae\u8863",
                "/items/kraken_tunic_refined": "\u514b\u62c9\u80af\u76ae\u8863\uff08\u7cbe\uff09",
                "/items/icy_robe_top": "\u51b0\u971c\u888d\u670d",
                "/items/flaming_robe_top": "\u70c8\u7130\u888d\u670d",
                "/items/luna_robe_top": "\u6708\u795e\u888d\u670d",
                "/items/royal_water_robe_top": "\u7687\u5bb6\u6c34\u7cfb\u888d\u670d",
                "/items/royal_water_robe_top_refined": "\u7687\u5bb6\u6c34\u7cfb\u888d\u670d\uff08\u7cbe\uff09",
                "/items/royal_nature_robe_top": "\u7687\u5bb6\u81ea\u7136\u7cfb\u888d\u670d",
                "/items/royal_nature_robe_top_refined": "\u7687\u5bb6\u81ea\u7136\u7cfb\u888d\u670d\uff08\u7cbe\uff09",
                "/items/royal_fire_robe_top": "\u7687\u5bb6\u706b\u7cfb\u888d\u670d",
                "/items/royal_fire_robe_top_refined": "\u7687\u5bb6\u706b\u7cfb\u888d\u670d\uff08\u7cbe\uff09",
                "/items/cheese_plate_body": "\u5976\u916a\u80f8\u7532",
                "/items/verdant_plate_body": "\u7fe0\u7eff\u80f8\u7532",
                "/items/azure_plate_body": "\u851a\u84dd\u80f8\u7532",
                "/items/burble_plate_body": "\u6df1\u7d2b\u80f8\u7532",
                "/items/crimson_plate_body": "\u7edb\u7ea2\u80f8\u7532",
                "/items/rainbow_plate_body": "\u5f69\u8679\u80f8\u7532",
                "/items/holy_plate_body": "\u795e\u5723\u80f8\u7532",
                "/items/rough_tunic": "\u7c97\u7cd9\u76ae\u8863",
                "/items/reptile_tunic": "\u722c\u884c\u52a8\u7269\u76ae\u8863",
                "/items/gobo_tunic": "\u54e5\u5e03\u6797\u76ae\u8863",
                "/items/beast_tunic": "\u91ce\u517d\u76ae\u8863",
                "/items/umbral_tunic": "\u6697\u5f71\u76ae\u8863",
                "/items/cotton_robe_top": "\u68c9\u888d\u670d",
                "/items/linen_robe_top": "\u4e9a\u9ebb\u888d\u670d",
                "/items/bamboo_robe_top": "\u7af9\u888d\u670d",
                "/items/silk_robe_top": "\u4e1d\u7ef8\u888d\u670d",
                "/items/radiant_robe_top": "\u5149\u8f89\u888d\u670d",
                "/items/dairyhands_bottoms": "\u6324\u5976\u5de5\u4e0b\u88c5",
                "/items/foragers_bottoms": "\u91c7\u6458\u8005\u4e0b\u88c5",
                "/items/lumberjacks_bottoms": "\u4f10\u6728\u5de5\u4e0b\u88c5",
                "/items/cheesemakers_bottoms": "\u5976\u916a\u5e08\u4e0b\u88c5",
                "/items/crafters_bottoms": "\u5de5\u5320\u4e0b\u88c5",
                "/items/tailors_bottoms": "\u88c1\u7f1d\u4e0b\u88c5",
                "/items/chefs_bottoms": "\u53a8\u5e08\u4e0b\u88c5",
                "/items/brewers_bottoms": "\u996e\u54c1\u5e08\u4e0b\u88c5",
                "/items/alchemists_bottoms": "\u70bc\u91d1\u5e08\u4e0b\u88c5",
                "/items/enhancers_bottoms": "\u5f3a\u5316\u5e08\u4e0b\u88c5",
                "/items/turtle_shell_legs": "\u9f9f\u58f3\u817f\u7532",
                "/items/colossus_plate_legs": "\u5de8\u50cf\u817f\u7532",
                "/items/demonic_plate_legs": "\u6076\u9b54\u817f\u7532",
                "/items/anchorbound_plate_legs": "\u951a\u5b9a\u817f\u7532",
                "/items/anchorbound_plate_legs_refined": "\u951a\u5b9a\u817f\u7532\uff08\u7cbe\uff09",
                "/items/maelstrom_plate_legs": "\u6012\u6d9b\u817f\u7532",
                "/items/maelstrom_plate_legs_refined": "\u6012\u6d9b\u817f\u7532\uff08\u7cbe\uff09",
                "/items/marine_chaps": "\u822a\u6d77\u76ae\u88e4",
                "/items/revenant_chaps": "\u4ea1\u7075\u76ae\u88e4",
                "/items/griffin_chaps": "\u72ee\u9e6b\u76ae\u88e4",
                "/items/kraken_chaps": "\u514b\u62c9\u80af\u76ae\u88e4",
                "/items/kraken_chaps_refined": "\u514b\u62c9\u80af\u76ae\u88e4\uff08\u7cbe\uff09",
                "/items/icy_robe_bottoms": "\u51b0\u971c\u888d\u88d9",
                "/items/flaming_robe_bottoms": "\u70c8\u7130\u888d\u88d9",
                "/items/luna_robe_bottoms": "\u6708\u795e\u888d\u88d9",
                "/items/royal_water_robe_bottoms": "\u7687\u5bb6\u6c34\u7cfb\u888d\u88d9",
                "/items/royal_water_robe_bottoms_refined": "\u7687\u5bb6\u6c34\u7cfb\u888d\u88d9\uff08\u7cbe\uff09",
                "/items/royal_nature_robe_bottoms": "\u7687\u5bb6\u81ea\u7136\u7cfb\u888d\u88d9",
                "/items/royal_nature_robe_bottoms_refined": "\u7687\u5bb6\u81ea\u7136\u7cfb\u888d\u88d9\uff08\u7cbe\uff09",
                "/items/royal_fire_robe_bottoms": "\u7687\u5bb6\u706b\u7cfb\u888d\u88d9",
                "/items/royal_fire_robe_bottoms_refined": "\u7687\u5bb6\u706b\u7cfb\u888d\u88d9\uff08\u7cbe\uff09",
                "/items/cheese_plate_legs": "\u5976\u916a\u817f\u7532",
                "/items/verdant_plate_legs": "\u7fe0\u7eff\u817f\u7532",
                "/items/azure_plate_legs": "\u851a\u84dd\u817f\u7532",
                "/items/burble_plate_legs": "\u6df1\u7d2b\u817f\u7532",
                "/items/crimson_plate_legs": "\u7edb\u7ea2\u817f\u7532",
                "/items/rainbow_plate_legs": "\u5f69\u8679\u817f\u7532",
                "/items/holy_plate_legs": "\u795e\u5723\u817f\u7532",
                "/items/rough_chaps": "\u7c97\u7cd9\u76ae\u88e4",
                "/items/reptile_chaps": "\u722c\u884c\u52a8\u7269\u76ae\u88e4",
                "/items/gobo_chaps": "\u54e5\u5e03\u6797\u76ae\u88e4",
                "/items/beast_chaps": "\u91ce\u517d\u76ae\u88e4",
                "/items/umbral_chaps": "\u6697\u5f71\u76ae\u88e4",
                "/items/cotton_robe_bottoms": "\u68c9\u888d\u88d9",
                "/items/linen_robe_bottoms": "\u4e9a\u9ebb\u888d\u88d9",
                "/items/bamboo_robe_bottoms": "\u7af9\u888d\u88d9",
                "/items/silk_robe_bottoms": "\u4e1d\u7ef8\u888d\u88d9",
                "/items/radiant_robe_bottoms": "\u5149\u8f89\u888d\u88d9",
                "/items/enchanted_gloves": "\u9644\u9b54\u624b\u5957",
                "/items/pincer_gloves": "\u87f9\u94b3\u624b\u5957",
                "/items/panda_gloves": "\u718a\u732b\u624b\u5957",
                "/items/magnetic_gloves": "\u78c1\u529b\u624b\u5957",
                "/items/dodocamel_gauntlets": "\u6e21\u6e21\u9a7c\u62a4\u624b",
                "/items/dodocamel_gauntlets_refined": "\u6e21\u6e21\u9a7c\u62a4\u624b\uff08\u7cbe\uff09",
                "/items/sighted_bracers": "\u7784\u51c6\u62a4\u8155",
                "/items/marksman_bracers": "\u795e\u5c04\u62a4\u8155",
                "/items/marksman_bracers_refined": "\u795e\u5c04\u62a4\u8155\uff08\u7cbe\uff09",
                "/items/chrono_gloves": "\u65f6\u7a7a\u624b\u5957",
                "/items/cheese_gauntlets": "\u5976\u916a\u62a4\u624b",
                "/items/verdant_gauntlets": "\u7fe0\u7eff\u62a4\u624b",
                "/items/azure_gauntlets": "\u851a\u84dd\u62a4\u624b",
                "/items/burble_gauntlets": "\u6df1\u7d2b\u62a4\u624b",
                "/items/crimson_gauntlets": "\u7edb\u7ea2\u62a4\u624b",
                "/items/rainbow_gauntlets": "\u5f69\u8679\u62a4\u624b",
                "/items/holy_gauntlets": "\u795e\u5723\u62a4\u624b",
                "/items/rough_bracers": "\u7c97\u7cd9\u62a4\u8155",
                "/items/reptile_bracers": "\u722c\u884c\u52a8\u7269\u62a4\u8155",
                "/items/gobo_bracers": "\u54e5\u5e03\u6797\u62a4\u8155",
                "/items/beast_bracers": "\u91ce\u517d\u62a4\u8155",
                "/items/umbral_bracers": "\u6697\u5f71\u62a4\u8155",
                "/items/cotton_gloves": "\u68c9\u624b\u5957",
                "/items/linen_gloves": "\u4e9a\u9ebb\u624b\u5957",
                "/items/bamboo_gloves": "\u7af9\u624b\u5957",
                "/items/silk_gloves": "\u4e1d\u624b\u5957",
                "/items/radiant_gloves": "\u5149\u8f89\u624b\u5957",
                "/items/collectors_boots": "\u6536\u85cf\u5bb6\u9774",
                "/items/shoebill_shoes": "\u9cb8\u5934\u9e73\u978b",
                "/items/black_bear_shoes": "\u9ed1\u718a\u978b",
                "/items/grizzly_bear_shoes": "\u68d5\u718a\u978b",
                "/items/polar_bear_shoes": "\u5317\u6781\u718a\u978b",
                "/items/pathbreaker_boots": "\u5f00\u8def\u8005\u9774",
                "/items/pathbreaker_boots_refined": "\u5f00\u8def\u8005\u9774\uff08\u7cbe\uff09",
                "/items/centaur_boots": "\u534a\u4eba\u9a6c\u9774",
                "/items/pathfinder_boots": "\u63a2\u8def\u8005\u9774",
                "/items/pathfinder_boots_refined": "\u63a2\u8def\u8005\u9774\uff08\u7cbe\uff09",
                "/items/sorcerer_boots": "\u5deb\u5e08\u9774",
                "/items/pathseeker_boots": "\u5bfb\u8def\u8005\u9774",
                "/items/pathseeker_boots_refined": "\u5bfb\u8def\u8005\u9774\uff08\u7cbe\uff09",
                "/items/cheese_boots": "\u5976\u916a\u9774",
                "/items/verdant_boots": "\u7fe0\u7eff\u9774",
                "/items/azure_boots": "\u851a\u84dd\u9774",
                "/items/burble_boots": "\u6df1\u7d2b\u9774",
                "/items/crimson_boots": "\u7edb\u7ea2\u9774",
                "/items/rainbow_boots": "\u5f69\u8679\u9774",
                "/items/holy_boots": "\u795e\u5723\u9774",
                "/items/rough_boots": "\u7c97\u7cd9\u9774",
                "/items/reptile_boots": "\u722c\u884c\u52a8\u7269\u9774",
                "/items/gobo_boots": "\u54e5\u5e03\u6797\u9774",
                "/items/beast_boots": "\u91ce\u517d\u9774",
                "/items/umbral_boots": "\u6697\u5f71\u9774",
                "/items/cotton_boots": "\u68c9\u9774",
                "/items/linen_boots": "\u4e9a\u9ebb\u9774",
                "/items/bamboo_boots": "\u7af9\u9774",
                "/items/silk_boots": "\u4e1d\u9774",
                "/items/radiant_boots": "\u5149\u8f89\u9774",
                "/items/small_pouch": "\u5c0f\u888b\u5b50",
                "/items/medium_pouch": "\u4e2d\u888b\u5b50",
                "/items/large_pouch": "\u5927\u888b\u5b50",
                "/items/giant_pouch": "\u5de8\u5927\u888b\u5b50",
                "/items/gluttonous_pouch": "\u8d2a\u98df\u4e4b\u888b",
                "/items/guzzling_pouch": "\u66b4\u996e\u4e4b\u56ca",
                "/items/necklace_of_efficiency": "\u6548\u7387\u9879\u94fe",
                "/items/fighter_necklace": "\u6218\u58eb\u9879\u94fe",
                "/items/ranger_necklace": "\u5c04\u624b\u9879\u94fe",
                "/items/wizard_necklace": "\u5deb\u5e08\u9879\u94fe",
                "/items/necklace_of_wisdom": "\u7ecf\u9a8c\u9879\u94fe",
                "/items/necklace_of_speed": "\u901f\u5ea6\u9879\u94fe",
                "/items/philosophers_necklace": "\u8d24\u8005\u9879\u94fe",
                "/items/earrings_of_gathering": "\u91c7\u96c6\u8033\u73af",
                "/items/earrings_of_essence_find": "\u7cbe\u534e\u53d1\u73b0\u8033\u73af",
                "/items/earrings_of_armor": "\u62a4\u7532\u8033\u73af",
                "/items/earrings_of_regeneration": "\u6062\u590d\u8033\u73af",
                "/items/earrings_of_resistance": "\u6297\u6027\u8033\u73af",
                "/items/earrings_of_rare_find": "\u7a00\u6709\u53d1\u73b0\u8033\u73af",
                "/items/earrings_of_critical_strike": "\u66b4\u51fb\u8033\u73af",
                "/items/philosophers_earrings": "\u8d24\u8005\u8033\u73af",
                "/items/ring_of_gathering": "\u91c7\u96c6\u6212\u6307",
                "/items/ring_of_essence_find": "\u7cbe\u534e\u53d1\u73b0\u6212\u6307",
                "/items/ring_of_armor": "\u62a4\u7532\u6212\u6307",
                "/items/ring_of_regeneration": "\u6062\u590d\u6212\u6307",
                "/items/ring_of_resistance": "\u6297\u6027\u6212\u6307",
                "/items/ring_of_rare_find": "\u7a00\u6709\u53d1\u73b0\u6212\u6307",
                "/items/ring_of_critical_strike": "\u66b4\u51fb\u6212\u6307",
                "/items/philosophers_ring": "\u8d24\u8005\u6212\u6307",
                "/items/trainee_milking_charm": "\u5b9e\u4e60\u6324\u5976\u62a4\u7b26",
                "/items/basic_milking_charm": "\u57fa\u7840\u6324\u5976\u62a4\u7b26",
                "/items/advanced_milking_charm": "\u9ad8\u7ea7\u6324\u5976\u62a4\u7b26",
                "/items/expert_milking_charm": "\u4e13\u5bb6\u6324\u5976\u62a4\u7b26",
                "/items/master_milking_charm": "\u5927\u5e08\u6324\u5976\u62a4\u7b26",
                "/items/grandmaster_milking_charm": "\u5b97\u5e08\u6324\u5976\u62a4\u7b26",
                "/items/trainee_foraging_charm": "\u5b9e\u4e60\u91c7\u6458\u62a4\u7b26",
                "/items/basic_foraging_charm": "\u57fa\u7840\u91c7\u6458\u62a4\u7b26",
                "/items/advanced_foraging_charm": "\u9ad8\u7ea7\u91c7\u6458\u62a4\u7b26",
                "/items/expert_foraging_charm": "\u4e13\u5bb6\u91c7\u6458\u62a4\u7b26",
                "/items/master_foraging_charm": "\u5927\u5e08\u91c7\u6458\u62a4\u7b26",
                "/items/grandmaster_foraging_charm": "\u5b97\u5e08\u91c7\u6458\u62a4\u7b26",
                "/items/trainee_woodcutting_charm": "\u5b9e\u4e60\u4f10\u6728\u62a4\u7b26",
                "/items/basic_woodcutting_charm": "\u57fa\u7840\u4f10\u6728\u62a4\u7b26",
                "/items/advanced_woodcutting_charm": "\u9ad8\u7ea7\u4f10\u6728\u62a4\u7b26",
                "/items/expert_woodcutting_charm": "\u4e13\u5bb6\u4f10\u6728\u62a4\u7b26",
                "/items/master_woodcutting_charm": "\u5927\u5e08\u4f10\u6728\u62a4\u7b26",
                "/items/grandmaster_woodcutting_charm": "\u5b97\u5e08\u4f10\u6728\u62a4\u7b26",
                "/items/trainee_cheesesmithing_charm": "\u5b9e\u4e60\u5976\u916a\u953b\u9020\u62a4\u7b26",
                "/items/basic_cheesesmithing_charm": "\u57fa\u7840\u5976\u916a\u953b\u9020\u62a4\u7b26",
                "/items/advanced_cheesesmithing_charm": "\u9ad8\u7ea7\u5976\u916a\u953b\u9020\u62a4\u7b26",
                "/items/expert_cheesesmithing_charm": "\u4e13\u5bb6\u5976\u916a\u953b\u9020\u62a4\u7b26",
                "/items/master_cheesesmithing_charm": "\u5927\u5e08\u5976\u916a\u953b\u9020\u62a4\u7b26",
                "/items/grandmaster_cheesesmithing_charm": "\u5b97\u5e08\u5976\u916a\u953b\u9020\u62a4\u7b26",
                "/items/trainee_crafting_charm": "\u5b9e\u4e60\u5236\u4f5c\u62a4\u7b26",
                "/items/basic_crafting_charm": "\u57fa\u7840\u5236\u4f5c\u62a4\u7b26",
                "/items/advanced_crafting_charm": "\u9ad8\u7ea7\u5236\u4f5c\u62a4\u7b26",
                "/items/expert_crafting_charm": "\u4e13\u5bb6\u5236\u4f5c\u62a4\u7b26",
                "/items/master_crafting_charm": "\u5927\u5e08\u5236\u4f5c\u62a4\u7b26",
                "/items/grandmaster_crafting_charm": "\u5b97\u5e08\u5236\u4f5c\u62a4\u7b26",
                "/items/trainee_tailoring_charm": "\u5b9e\u4e60\u7f1d\u7eab\u62a4\u7b26",
                "/items/basic_tailoring_charm": "\u57fa\u7840\u7f1d\u7eab\u62a4\u7b26",
                "/items/advanced_tailoring_charm": "\u9ad8\u7ea7\u7f1d\u7eab\u62a4\u7b26",
                "/items/expert_tailoring_charm": "\u4e13\u5bb6\u7f1d\u7eab\u62a4\u7b26",
                "/items/master_tailoring_charm": "\u5927\u5e08\u7f1d\u7eab\u62a4\u7b26",
                "/items/grandmaster_tailoring_charm": "\u5b97\u5e08\u7f1d\u7eab\u62a4\u7b26",
                "/items/trainee_cooking_charm": "\u5b9e\u4e60\u70f9\u996a\u62a4\u7b26",
                "/items/basic_cooking_charm": "\u57fa\u7840\u70f9\u996a\u62a4\u7b26",
                "/items/advanced_cooking_charm": "\u9ad8\u7ea7\u70f9\u996a\u62a4\u7b26",
                "/items/expert_cooking_charm": "\u4e13\u5bb6\u70f9\u996a\u62a4\u7b26",
                "/items/master_cooking_charm": "\u5927\u5e08\u70f9\u996a\u62a4\u7b26",
                "/items/grandmaster_cooking_charm": "\u5b97\u5e08\u70f9\u996a\u62a4\u7b26",
                "/items/trainee_brewing_charm": "\u5b9e\u4e60\u51b2\u6ce1\u62a4\u7b26",
                "/items/basic_brewing_charm": "\u57fa\u7840\u51b2\u6ce1\u62a4\u7b26",
                "/items/advanced_brewing_charm": "\u9ad8\u7ea7\u51b2\u6ce1\u62a4\u7b26",
                "/items/expert_brewing_charm": "\u4e13\u5bb6\u51b2\u6ce1\u62a4\u7b26",
                "/items/master_brewing_charm": "\u5927\u5e08\u51b2\u6ce1\u62a4\u7b26",
                "/items/grandmaster_brewing_charm": "\u5b97\u5e08\u51b2\u6ce1\u62a4\u7b26",
                "/items/trainee_alchemy_charm": "\u5b9e\u4e60\u70bc\u91d1\u62a4\u7b26",
                "/items/basic_alchemy_charm": "\u57fa\u7840\u70bc\u91d1\u62a4\u7b26",
                "/items/advanced_alchemy_charm": "\u9ad8\u7ea7\u70bc\u91d1\u62a4\u7b26",
                "/items/expert_alchemy_charm": "\u4e13\u5bb6\u70bc\u91d1\u62a4\u7b26",
                "/items/master_alchemy_charm": "\u5927\u5e08\u70bc\u91d1\u62a4\u7b26",
                "/items/grandmaster_alchemy_charm": "\u5b97\u5e08\u70bc\u91d1\u62a4\u7b26",
                "/items/trainee_enhancing_charm": "\u5b9e\u4e60\u5f3a\u5316\u62a4\u7b26",
                "/items/basic_enhancing_charm": "\u57fa\u7840\u5f3a\u5316\u62a4\u7b26",
                "/items/advanced_enhancing_charm": "\u9ad8\u7ea7\u5f3a\u5316\u62a4\u7b26",
                "/items/expert_enhancing_charm": "\u4e13\u5bb6\u5f3a\u5316\u62a4\u7b26",
                "/items/master_enhancing_charm": "\u5927\u5e08\u5f3a\u5316\u62a4\u7b26",
                "/items/grandmaster_enhancing_charm": "\u5b97\u5e08\u5f3a\u5316\u62a4\u7b26",
                "/items/trainee_stamina_charm": "\u5b9e\u4e60\u8010\u529b\u62a4\u7b26",
                "/items/basic_stamina_charm": "\u57fa\u7840\u8010\u529b\u62a4\u7b26",
                "/items/advanced_stamina_charm": "\u9ad8\u7ea7\u8010\u529b\u62a4\u7b26",
                "/items/expert_stamina_charm": "\u4e13\u5bb6\u8010\u529b\u62a4\u7b26",
                "/items/master_stamina_charm": "\u5927\u5e08\u8010\u529b\u62a4\u7b26",
                "/items/grandmaster_stamina_charm": "\u5b97\u5e08\u8010\u529b\u62a4\u7b26",
                "/items/trainee_intelligence_charm": "\u5b9e\u4e60\u667a\u529b\u62a4\u7b26",
                "/items/basic_intelligence_charm": "\u57fa\u7840\u667a\u529b\u62a4\u7b26",
                "/items/advanced_intelligence_charm": "\u9ad8\u7ea7\u667a\u529b\u62a4\u7b26",
                "/items/expert_intelligence_charm": "\u4e13\u5bb6\u667a\u529b\u62a4\u7b26",
                "/items/master_intelligence_charm": "\u5927\u5e08\u667a\u529b\u62a4\u7b26",
                "/items/grandmaster_intelligence_charm": "\u5b97\u5e08\u667a\u529b\u62a4\u7b26",
                "/items/trainee_attack_charm": "\u5b9e\u4e60\u653b\u51fb\u62a4\u7b26",
                "/items/basic_attack_charm": "\u57fa\u7840\u653b\u51fb\u62a4\u7b26",
                "/items/advanced_attack_charm": "\u9ad8\u7ea7\u653b\u51fb\u62a4\u7b26",
                "/items/expert_attack_charm": "\u4e13\u5bb6\u653b\u51fb\u62a4\u7b26",
                "/items/master_attack_charm": "\u5927\u5e08\u653b\u51fb\u62a4\u7b26",
                "/items/grandmaster_attack_charm": "\u5b97\u5e08\u653b\u51fb\u62a4\u7b26",
                "/items/trainee_defense_charm": "\u5b9e\u4e60\u9632\u5fa1\u62a4\u7b26",
                "/items/basic_defense_charm": "\u57fa\u7840\u9632\u5fa1\u62a4\u7b26",
                "/items/advanced_defense_charm": "\u9ad8\u7ea7\u9632\u5fa1\u62a4\u7b26",
                "/items/expert_defense_charm": "\u4e13\u5bb6\u9632\u5fa1\u62a4\u7b26",
                "/items/master_defense_charm": "\u5927\u5e08\u9632\u5fa1\u62a4\u7b26",
                "/items/grandmaster_defense_charm": "\u5b97\u5e08\u9632\u5fa1\u62a4\u7b26",
                "/items/trainee_melee_charm": "\u5b9e\u4e60\u8fd1\u6218\u62a4\u7b26",
                "/items/basic_melee_charm": "\u57fa\u7840\u8fd1\u6218\u62a4\u7b26",
                "/items/advanced_melee_charm": "\u9ad8\u7ea7\u8fd1\u6218\u62a4\u7b26",
                "/items/expert_melee_charm": "\u4e13\u5bb6\u8fd1\u6218\u62a4\u7b26",
                "/items/master_melee_charm": "\u5927\u5e08\u8fd1\u6218\u62a4\u7b26",
                "/items/grandmaster_melee_charm": "\u5b97\u5e08\u8fd1\u6218\u62a4\u7b26",
                "/items/trainee_ranged_charm": "\u5b9e\u4e60\u8fdc\u7a0b\u62a4\u7b26",
                "/items/basic_ranged_charm": "\u57fa\u7840\u8fdc\u7a0b\u62a4\u7b26",
                "/items/advanced_ranged_charm": "\u9ad8\u7ea7\u8fdc\u7a0b\u62a4\u7b26",
                "/items/expert_ranged_charm": "\u4e13\u5bb6\u8fdc\u7a0b\u62a4\u7b26",
                "/items/master_ranged_charm": "\u5927\u5e08\u8fdc\u7a0b\u62a4\u7b26",
                "/items/grandmaster_ranged_charm": "\u5b97\u5e08\u8fdc\u7a0b\u62a4\u7b26",
                "/items/trainee_magic_charm": "\u5b9e\u4e60\u9b54\u6cd5\u62a4\u7b26",
                "/items/basic_magic_charm": "\u57fa\u7840\u9b54\u6cd5\u62a4\u7b26",
                "/items/advanced_magic_charm": "\u9ad8\u7ea7\u9b54\u6cd5\u62a4\u7b26",
                "/items/expert_magic_charm": "\u4e13\u5bb6\u9b54\u6cd5\u62a4\u7b26",
                "/items/master_magic_charm": "\u5927\u5e08\u9b54\u6cd5\u62a4\u7b26",
                "/items/grandmaster_magic_charm": "\u5b97\u5e08\u9b54\u6cd5\u62a4\u7b26",
                "/items/basic_task_badge": "\u57fa\u7840\u4efb\u52a1\u5fbd\u7ae0",
                "/items/advanced_task_badge": "\u9ad8\u7ea7\u4efb\u52a1\u5fbd\u7ae0",
                "/items/expert_task_badge": "\u4e13\u5bb6\u4efb\u52a1\u5fbd\u7ae0",
                "/items/celestial_brush": "\u661f\u7a7a\u5237\u5b50",
                "/items/cheese_brush": "\u5976\u916a\u5237\u5b50",
                "/items/verdant_brush": "\u7fe0\u7eff\u5237\u5b50",
                "/items/azure_brush": "\u851a\u84dd\u5237\u5b50",
                "/items/burble_brush": "\u6df1\u7d2b\u5237\u5b50",
                "/items/crimson_brush": "\u7edb\u7ea2\u5237\u5b50",
                "/items/rainbow_brush": "\u5f69\u8679\u5237\u5b50",
                "/items/holy_brush": "\u795e\u5723\u5237\u5b50",
                "/items/celestial_shears": "\u661f\u7a7a\u526a\u5200",
                "/items/cheese_shears": "\u5976\u916a\u526a\u5200",
                "/items/verdant_shears": "\u7fe0\u7eff\u526a\u5200",
                "/items/azure_shears": "\u851a\u84dd\u526a\u5200",
                "/items/burble_shears": "\u6df1\u7d2b\u526a\u5200",
                "/items/crimson_shears": "\u7edb\u7ea2\u526a\u5200",
                "/items/rainbow_shears": "\u5f69\u8679\u526a\u5200",
                "/items/holy_shears": "\u795e\u5723\u526a\u5200",
                "/items/celestial_hatchet": "\u661f\u7a7a\u65a7\u5934",
                "/items/cheese_hatchet": "\u5976\u916a\u65a7\u5934",
                "/items/verdant_hatchet": "\u7fe0\u7eff\u65a7\u5934",
                "/items/azure_hatchet": "\u851a\u84dd\u65a7\u5934",
                "/items/burble_hatchet": "\u6df1\u7d2b\u65a7\u5934",
                "/items/crimson_hatchet": "\u7edb\u7ea2\u65a7\u5934",
                "/items/rainbow_hatchet": "\u5f69\u8679\u65a7\u5934",
                "/items/holy_hatchet": "\u795e\u5723\u65a7\u5934",
                "/items/celestial_hammer": "\u661f\u7a7a\u9524\u5b50",
                "/items/cheese_hammer": "\u5976\u916a\u9524\u5b50",
                "/items/verdant_hammer": "\u7fe0\u7eff\u9524\u5b50",
                "/items/azure_hammer": "\u851a\u84dd\u9524\u5b50",
                "/items/burble_hammer": "\u6df1\u7d2b\u9524\u5b50",
                "/items/crimson_hammer": "\u7edb\u7ea2\u9524\u5b50",
                "/items/rainbow_hammer": "\u5f69\u8679\u9524\u5b50",
                "/items/holy_hammer": "\u795e\u5723\u9524\u5b50",
                "/items/celestial_chisel": "\u661f\u7a7a\u51ff\u5b50",
                "/items/cheese_chisel": "\u5976\u916a\u51ff\u5b50",
                "/items/verdant_chisel": "\u7fe0\u7eff\u51ff\u5b50",
                "/items/azure_chisel": "\u851a\u84dd\u51ff\u5b50",
                "/items/burble_chisel": "\u6df1\u7d2b\u51ff\u5b50",
                "/items/crimson_chisel": "\u7edb\u7ea2\u51ff\u5b50",
                "/items/rainbow_chisel": "\u5f69\u8679\u51ff\u5b50",
                "/items/holy_chisel": "\u795e\u5723\u51ff\u5b50",
                "/items/celestial_needle": "\u661f\u7a7a\u9488",
                "/items/cheese_needle": "\u5976\u916a\u9488",
                "/items/verdant_needle": "\u7fe0\u7eff\u9488",
                "/items/azure_needle": "\u851a\u84dd\u9488",
                "/items/burble_needle": "\u6df1\u7d2b\u9488",
                "/items/crimson_needle": "\u7edb\u7ea2\u9488",
                "/items/rainbow_needle": "\u5f69\u8679\u9488",
                "/items/holy_needle": "\u795e\u5723\u9488",
                "/items/celestial_spatula": "\u661f\u7a7a\u9505\u94f2",
                "/items/cheese_spatula": "\u5976\u916a\u9505\u94f2",
                "/items/verdant_spatula": "\u7fe0\u7eff\u9505\u94f2",
                "/items/azure_spatula": "\u851a\u84dd\u9505\u94f2",
                "/items/burble_spatula": "\u6df1\u7d2b\u9505\u94f2",
                "/items/crimson_spatula": "\u7edb\u7ea2\u9505\u94f2",
                "/items/rainbow_spatula": "\u5f69\u8679\u9505\u94f2",
                "/items/holy_spatula": "\u795e\u5723\u9505\u94f2",
                "/items/celestial_pot": "\u661f\u7a7a\u58f6",
                "/items/cheese_pot": "\u5976\u916a\u58f6",
                "/items/verdant_pot": "\u7fe0\u7eff\u58f6",
                "/items/azure_pot": "\u851a\u84dd\u58f6",
                "/items/burble_pot": "\u6df1\u7d2b\u58f6",
                "/items/crimson_pot": "\u7edb\u7ea2\u58f6",
                "/items/rainbow_pot": "\u5f69\u8679\u58f6",
                "/items/holy_pot": "\u795e\u5723\u58f6",
                "/items/celestial_alembic": "\u661f\u7a7a\u84b8\u998f\u5668",
                "/items/cheese_alembic": "\u5976\u916a\u84b8\u998f\u5668",
                "/items/verdant_alembic": "\u7fe0\u7eff\u84b8\u998f\u5668",
                "/items/azure_alembic": "\u851a\u84dd\u84b8\u998f\u5668",
                "/items/burble_alembic": "\u6df1\u7d2b\u84b8\u998f\u5668",
                "/items/crimson_alembic": "\u7edb\u7ea2\u84b8\u998f\u5668",
                "/items/rainbow_alembic": "\u5f69\u8679\u84b8\u998f\u5668",
                "/items/holy_alembic": "\u795e\u5723\u84b8\u998f\u5668",
                "/items/celestial_enhancer": "\u661f\u7a7a\u5f3a\u5316\u5668",
                "/items/cheese_enhancer": "\u5976\u916a\u5f3a\u5316\u5668",
                "/items/verdant_enhancer": "\u7fe0\u7eff\u5f3a\u5316\u5668",
                "/items/azure_enhancer": "\u851a\u84dd\u5f3a\u5316\u5668",
                "/items/burble_enhancer": "\u6df1\u7d2b\u5f3a\u5316\u5668",
                "/items/crimson_enhancer": "\u7edb\u7ea2\u5f3a\u5316\u5668",
                "/items/rainbow_enhancer": "\u5f69\u8679\u5f3a\u5316\u5668",
                "/items/holy_enhancer": "\u795e\u5723\u5f3a\u5316\u5668",
                "/items/milk": "\u725b\u5976",
                "/items/verdant_milk": "\u7fe0\u7eff\u725b\u5976",
                "/items/azure_milk": "\u851a\u84dd\u725b\u5976",
                "/items/burble_milk": "\u6df1\u7d2b\u725b\u5976",
                "/items/crimson_milk": "\u7edb\u7ea2\u725b\u5976",
                "/items/rainbow_milk": "\u5f69\u8679\u725b\u5976",
                "/items/holy_milk": "\u795e\u5723\u725b\u5976",
                "/items/cheese": "\u5976\u916a",
                "/items/verdant_cheese": "\u7fe0\u7eff\u5976\u916a",
                "/items/azure_cheese": "\u851a\u84dd\u5976\u916a",
                "/items/burble_cheese": "\u6df1\u7d2b\u5976\u916a",
                "/items/crimson_cheese": "\u7edb\u7ea2\u5976\u916a",
                "/items/rainbow_cheese": "\u5f69\u8679\u5976\u916a",
                "/items/holy_cheese": "\u795e\u5723\u5976\u916a",
                "/items/log": "\u539f\u6728",
                "/items/birch_log": "\u767d\u6866\u539f\u6728",
                "/items/cedar_log": "\u96ea\u677e\u539f\u6728",
                "/items/purpleheart_log": "\u7d2b\u5fc3\u539f\u6728",
                "/items/ginkgo_log": "\u94f6\u674f\u539f\u6728",
                "/items/redwood_log": "\u7ea2\u6749\u539f\u6728",
                "/items/arcane_log": "\u795e\u79d8\u539f\u6728",
                "/items/lumber": "\u6728\u677f",
                "/items/birch_lumber": "\u767d\u6866\u6728\u677f",
                "/items/cedar_lumber": "\u96ea\u677e\u6728\u677f",
                "/items/purpleheart_lumber": "\u7d2b\u5fc3\u6728\u677f",
                "/items/ginkgo_lumber": "\u94f6\u674f\u6728\u677f",
                "/items/redwood_lumber": "\u7ea2\u6749\u6728\u677f",
                "/items/arcane_lumber": "\u795e\u79d8\u6728\u677f",
                "/items/rough_hide": "\u7c97\u7cd9\u517d\u76ae",
                "/items/reptile_hide": "\u722c\u884c\u52a8\u7269\u76ae",
                "/items/gobo_hide": "\u54e5\u5e03\u6797\u76ae",
                "/items/beast_hide": "\u91ce\u517d\u76ae",
                "/items/umbral_hide": "\u6697\u5f71\u76ae",
                "/items/rough_leather": "\u7c97\u7cd9\u76ae\u9769",
                "/items/reptile_leather": "\u722c\u884c\u52a8\u7269\u76ae\u9769",
                "/items/gobo_leather": "\u54e5\u5e03\u6797\u76ae\u9769",
                "/items/beast_leather": "\u91ce\u517d\u76ae\u9769",
                "/items/umbral_leather": "\u6697\u5f71\u76ae\u9769",
                "/items/cotton": "\u68c9\u82b1",
                "/items/flax": "\u4e9a\u9ebb",
                "/items/bamboo_branch": "\u7af9\u5b50",
                "/items/cocoon": "\u8695\u8327",
                "/items/radiant_fiber": "\u5149\u8f89\u7ea4\u7ef4",
                "/items/cotton_fabric": "\u68c9\u82b1\u5e03\u6599",
                "/items/linen_fabric": "\u4e9a\u9ebb\u5e03\u6599",
                "/items/bamboo_fabric": "\u7af9\u5b50\u5e03\u6599",
                "/items/silk_fabric": "\u4e1d\u7ef8",
                "/items/radiant_fabric": "\u5149\u8f89\u5e03\u6599",
                "/items/egg": "\u9e21\u86cb",
                "/items/wheat": "\u5c0f\u9ea6",
                "/items/sugar": "\u7cd6",
                "/items/blueberry": "\u84dd\u8393",
                "/items/blackberry": "\u9ed1\u8393",
                "/items/strawberry": "\u8349\u8393",
                "/items/mooberry": "\u54de\u8393",
                "/items/marsberry": "\u706b\u661f\u8393",
                "/items/spaceberry": "\u592a\u7a7a\u8393",
                "/items/apple": "\u82f9\u679c",
                "/items/orange": "\u6a59\u5b50",
                "/items/plum": "\u674e\u5b50",
                "/items/peach": "\u6843\u5b50",
                "/items/dragon_fruit": "\u706b\u9f99\u679c",
                "/items/star_fruit": "\u6768\u6843",
                "/items/arabica_coffee_bean": "\u4f4e\u7ea7\u5496\u5561\u8c46",
                "/items/robusta_coffee_bean": "\u4e2d\u7ea7\u5496\u5561\u8c46",
                "/items/liberica_coffee_bean": "\u9ad8\u7ea7\u5496\u5561\u8c46",
                "/items/excelsa_coffee_bean": "\u7279\u7ea7\u5496\u5561\u8c46",
                "/items/fieriosa_coffee_bean": "\u706b\u5c71\u5496\u5561\u8c46",
                "/items/spacia_coffee_bean": "\u592a\u7a7a\u5496\u5561\u8c46",
                "/items/green_tea_leaf": "\u7eff\u8336\u53f6",
                "/items/black_tea_leaf": "\u9ed1\u8336\u53f6",
                "/items/burble_tea_leaf": "\u7d2b\u8336\u53f6",
                "/items/moolong_tea_leaf": "\u54de\u9f99\u8336\u53f6",
                "/items/red_tea_leaf": "\u7ea2\u8336\u53f6",
                "/items/emp_tea_leaf": "\u865a\u7a7a\u8336\u53f6",
                "/items/catalyst_of_coinification": "\u70b9\u91d1\u50ac\u5316\u5242",
                "/items/catalyst_of_decomposition": "\u5206\u89e3\u50ac\u5316\u5242",
                "/items/catalyst_of_transmutation": "\u8f6c\u5316\u50ac\u5316\u5242",
                "/items/prime_catalyst": "\u81f3\u9ad8\u50ac\u5316\u5242",
                "/items/snake_fang": "\u86c7\u7259",
                "/items/shoebill_feather": "\u9cb8\u5934\u9e73\u7fbd\u6bdb",
                "/items/snail_shell": "\u8717\u725b\u58f3",
                "/items/crab_pincer": "\u87f9\u94b3",
                "/items/turtle_shell": "\u4e4c\u9f9f\u58f3",
                "/items/marine_scale": "\u6d77\u6d0b\u9cde\u7247",
                "/items/treant_bark": "\u6811\u76ae",
                "/items/centaur_hoof": "\u534a\u4eba\u9a6c\u8e44",
                "/items/luna_wing": "\u6708\u795e\u7ffc",
                "/items/gobo_rag": "\u54e5\u5e03\u6797\u62b9\u5e03",
                "/items/goggles": "\u62a4\u76ee\u955c",
                "/items/magnifying_glass": "\u653e\u5927\u955c",
                "/items/eye_of_the_watcher": "\u89c2\u5bdf\u8005\u4e4b\u773c",
                "/items/icy_cloth": "\u51b0\u971c\u7ec7\u7269",
                "/items/flaming_cloth": "\u70c8\u7130\u7ec7\u7269",
                "/items/sorcerers_sole": "\u9b54\u6cd5\u5e08\u978b\u5e95",
                "/items/chrono_sphere": "\u65f6\u7a7a\u7403",
                "/items/frost_sphere": "\u51b0\u971c\u7403",
                "/items/panda_fluff": "\u718a\u732b\u7ed2",
                "/items/black_bear_fluff": "\u9ed1\u718a\u7ed2",
                "/items/grizzly_bear_fluff": "\u68d5\u718a\u7ed2",
                "/items/polar_bear_fluff": "\u5317\u6781\u718a\u7ed2",
                "/items/red_panda_fluff": "\u5c0f\u718a\u732b\u7ed2",
                "/items/magnet": "\u78c1\u94c1",
                "/items/stalactite_shard": "\u949f\u4e73\u77f3\u788e\u7247",
                "/items/living_granite": "\u82b1\u5c97\u5ca9",
                "/items/colossus_core": "\u5de8\u50cf\u6838\u5fc3",
                "/items/vampire_fang": "\u5438\u8840\u9b3c\u4e4b\u7259",
                "/items/werewolf_claw": "\u72fc\u4eba\u4e4b\u722a",
                "/items/revenant_anima": "\u4ea1\u8005\u4e4b\u9b42",
                "/items/soul_fragment": "\u7075\u9b42\u788e\u7247",
                "/items/infernal_ember": "\u5730\u72f1\u4f59\u70ec",
                "/items/demonic_core": "\u6076\u9b54\u6838\u5fc3",
                "/items/griffin_leather": "\u72ee\u9e6b\u4e4b\u76ae",
                "/items/manticore_sting": "\u874e\u72ee\u4e4b\u523a",
                "/items/jackalope_antler": "\u9e7f\u89d2\u5154\u4e4b\u89d2",
                "/items/dodocamel_plume": "\u6e21\u6e21\u9a7c\u4e4b\u7fce",
                "/items/griffin_talon": "\u72ee\u9e6b\u4e4b\u722a",
                "/items/chimerical_refinement_shard": "\u5947\u5e7b\u7cbe\u70bc\u788e\u7247",
                "/items/acrobats_ribbon": "\u6742\u6280\u5e08\u5f69\u5e26",
                "/items/magicians_cloth": "\u9b54\u672f\u5e08\u7ec7\u7269",
                "/items/chaotic_chain": "\u6df7\u6c8c\u9501\u94fe",
                "/items/cursed_ball": "\u8bc5\u5492\u4e4b\u7403",
                "/items/sinister_refinement_shard": "\u9634\u68ee\u7cbe\u70bc\u788e\u7247",
                "/items/royal_cloth": "\u7687\u5bb6\u7ec7\u7269",
                "/items/knights_ingot": "\u9a91\u58eb\u4e4b\u952d",
                "/items/bishops_scroll": "\u4e3b\u6559\u5377\u8f74",
                "/items/regal_jewel": "\u541b\u738b\u5b9d\u77f3",
                "/items/sundering_jewel": "\u88c2\u7a7a\u5b9d\u77f3",
                "/items/enchanted_refinement_shard": "\u79d8\u6cd5\u7cbe\u70bc\u788e\u7247",
                "/items/marksman_brooch": "\u795e\u5c04\u80f8\u9488",
                "/items/corsair_crest": "\u63a0\u593a\u8005\u5fbd\u7ae0",
                "/items/damaged_anchor": "\u7834\u635f\u8239\u951a",
                "/items/maelstrom_plating": "\u6012\u6d9b\u7532\u7247",
                "/items/kraken_leather": "\u514b\u62c9\u80af\u76ae\u9769",
                "/items/kraken_fang": "\u514b\u62c9\u80af\u4e4b\u7259",
                "/items/pirate_refinement_shard": "\u6d77\u76d7\u7cbe\u70bc\u788e\u7247",
                "/items/pathbreaker_lodestone": "\u5f00\u8def\u8005\u78c1\u77f3",
                "/items/pathfinder_lodestone": "\u63a2\u8def\u8005\u78c1\u77f3",
                "/items/pathseeker_lodestone": "\u5bfb\u8def\u8005\u78c1\u77f3",
                "/items/labyrinth_refinement_shard": "\u8ff7\u5bab\u7cbe\u70bc\u788e\u7247",
                "/items/butter_of_proficiency": "\u7cbe\u901a\u4e4b\u6cb9",
                "/items/thread_of_expertise": "\u4e13\u7cbe\u4e4b\u7ebf",
                "/items/branch_of_insight": "\u6d1e\u5bdf\u4e4b\u679d",
                "/items/gluttonous_energy": "\u8d2a\u98df\u80fd\u91cf",
                "/items/guzzling_energy": "\u66b4\u996e\u80fd\u91cf",
                "/items/milking_essence": "\u6324\u5976\u7cbe\u534e",
                "/items/foraging_essence": "\u91c7\u6458\u7cbe\u534e",
                "/items/woodcutting_essence": "\u4f10\u6728\u7cbe\u534e",
                "/items/cheesesmithing_essence": "\u5976\u916a\u953b\u9020\u7cbe\u534e",
                "/items/crafting_essence": "\u5236\u4f5c\u7cbe\u534e",
                "/items/tailoring_essence": "\u7f1d\u7eab\u7cbe\u534e",
                "/items/cooking_essence": "\u70f9\u996a\u7cbe\u534e",
                "/items/brewing_essence": "\u51b2\u6ce1\u7cbe\u534e",
                "/items/alchemy_essence": "\u70bc\u91d1\u7cbe\u534e",
                "/items/enhancing_essence": "\u5f3a\u5316\u7cbe\u534e",
                "/items/swamp_essence": "\u6cbc\u6cfd\u7cbe\u534e",
                "/items/aqua_essence": "\u6d77\u6d0b\u7cbe\u534e",
                "/items/jungle_essence": "\u4e1b\u6797\u7cbe\u534e",
                "/items/gobo_essence": "\u54e5\u5e03\u6797\u7cbe\u534e",
                "/items/eyessence": "\u773c\u7cbe\u534e",
                "/items/sorcerer_essence": "\u6cd5\u5e08\u7cbe\u534e",
                "/items/bear_essence": "\u718a\u718a\u7cbe\u534e",
                "/items/golem_essence": "\u9b54\u50cf\u7cbe\u534e",
                "/items/twilight_essence": "\u66ae\u5149\u7cbe\u534e",
                "/items/abyssal_essence": "\u5730\u72f1\u7cbe\u534e",
                "/items/chimerical_essence": "\u5947\u5e7b\u7cbe\u534e",
                "/items/sinister_essence": "\u9634\u68ee\u7cbe\u534e",
                "/items/enchanted_essence": "\u79d8\u6cd5\u7cbe\u534e",
                "/items/pirate_essence": "\u6d77\u76d7\u7cbe\u534e",
                "/items/labyrinth_essence": "\u8ff7\u5bab\u7cbe\u534e",
                "/items/task_crystal": "\u4efb\u52a1\u6c34\u6676",
                "/items/star_fragment": "\u661f\u5149\u788e\u7247",
                "/items/pearl": "\u73cd\u73e0",
                "/items/amber": "\u7425\u73c0",
                "/items/garnet": "\u77f3\u69b4\u77f3",
                "/items/jade": "\u7fe1\u7fe0",
                "/items/amethyst": "\u7d2b\u6c34\u6676",
                "/items/moonstone": "\u6708\u4eae\u77f3",
                "/items/sunstone": "\u592a\u9633\u77f3",
                "/items/philosophers_stone": "\u8d24\u8005\u4e4b\u77f3",
                "/items/crushed_pearl": "\u73cd\u73e0\u788e\u7247",
                "/items/crushed_amber": "\u7425\u73c0\u788e\u7247",
                "/items/crushed_garnet": "\u77f3\u69b4\u77f3\u788e\u7247",
                "/items/crushed_jade": "\u7fe1\u7fe0\u788e\u7247",
                "/items/crushed_amethyst": "\u7d2b\u6c34\u6676\u788e\u7247",
                "/items/crushed_moonstone": "\u6708\u4eae\u77f3\u788e\u7247",
                "/items/crushed_sunstone": "\u592a\u9633\u77f3\u788e\u7247",
                "/items/crushed_philosophers_stone": "\u8d24\u8005\u4e4b\u77f3\u788e\u7247",
                "/items/shard_of_protection": "\u4fdd\u62a4\u788e\u7247",
                "/items/mirror_of_protection": "\u4fdd\u62a4\u4e4b\u955c",
                "/items/philosophers_mirror": "\u8d24\u8005\u4e4b\u955c",
                "/items/basic_torch": "\u57fa\u7840\u706b\u628a",
                "/items/advanced_torch": "\u8fdb\u9636\u706b\u628a",
                "/items/expert_torch": "\u4e13\u5bb6\u706b\u628a",
                "/items/basic_shroud": "\u57fa\u7840\u6597\u7bf7",
                "/items/advanced_shroud": "\u8fdb\u9636\u6597\u7bf7",
                "/items/expert_shroud": "\u4e13\u5bb6\u6597\u7bf7",
                "/items/basic_beacon": "\u57fa\u7840\u63a2\u7167\u706f",
                "/items/advanced_beacon": "\u8fdb\u9636\u63a2\u7167\u706f",
                "/items/expert_beacon": "\u4e13\u5bb6\u63a2\u7167\u706f",
                "/items/basic_food_crate": "\u57fa\u7840\u98df\u7269\u7bb1",
                "/items/advanced_food_crate": "\u8fdb\u9636\u98df\u7269\u7bb1",
                "/items/expert_food_crate": "\u4e13\u5bb6\u98df\u7269\u7bb1",
                "/items/basic_tea_crate": "\u57fa\u7840\u8336\u53f6\u7bb1",
                "/items/advanced_tea_crate": "\u8fdb\u9636\u8336\u53f6\u7bb1",
                "/items/expert_tea_crate": "\u4e13\u5bb6\u8336\u53f6\u7bb1",
                "/items/basic_coffee_crate": "\u57fa\u7840\u5496\u5561\u7bb1",
                "/items/advanced_coffee_crate": "\u8fdb\u9636\u5496\u5561\u7bb1",
                "/items/expert_coffee_crate": "\u4e13\u5bb6\u5496\u5561\u7bb1"
            } } }
        };
        mwi.itemNameToHridDict = {};
    }

    function injectedInit() {
        mwi.itemNameToHridDict = {};
        Object.entries(mwi.lang.en.translation.itemNames).forEach(([k, v]) => { mwi.itemNameToHridDict[v] = k });
        Object.entries(mwi.lang.zh.translation.itemNames).forEach(([k, v]) => { mwi.itemNameToHridDict[v] = k });

        mwi.MWICoreInitialized = true;
        mwi.game.updateNotifications("info", mwi.isZh ? "mooket2 准备就绪" : "mooket2 ready");
        window.dispatchEvent(new CustomEvent("MWICoreInitialized"));
    }
    staticInit();

    new Promise(resolve => {
        let count = 0;
        const interval = setInterval(() => {
            count++;
            if (count > 30) { clearInterval(interval); resolve(); }
            if (mwi.game && mwi.lang && mwi?.game?.state?.character?.gameMode) {
                clearInterval(interval); resolve();
            }
        }, 1000);
    }).then(() => { injectedInit(); });

    /* ================= 实时 WebSocket 重连封装 ================= */
    class ReconnectWebSocket {
        constructor(url, options = {}) {
            this.url = url;
            this.reconnectInterval = 5000;
            this.ws = null;
            this.isManualClose = false;
            this.connect();
        }
        connect() {
            this.ws = new WebSocket(this.url);
            this.ws.onopen = () => { console.info('⚡ 专属后端 WebSocket 已连接'); };
            this.ws.onclose = () => {
                if (!this.isManualClose) setTimeout(() => this.connect(), this.reconnectInterval);
            };
            this.ws.onerror = (err) => { console.error('WS Error:', err); };
        }
        send(data) {
            if (this.ws && this.ws.readyState === WebSocket.OPEN) this.ws.send(data);
        }
    }

    /* ================= 实时市场核心类 ================= */
    class CoreMarket {
        marketData = {};
        fetchTimeDict = {};
        ttl = 300;
        trade_ws = null;

        constructor() {
            let marketDataStr = localStorage.getItem("MWICore_marketData") || "{}";
            this.marketData = JSON.parse(marketDataStr);

            let lastFetchStr = localStorage.getItem("MYAPI_LATEST_CACHE_TIME");
            let lastFetchTime = lastFetchStr ? parseFloat(lastFetchStr) : 0;

            if (Date.now() / 1000 - lastFetchTime > 300) {
                fetch(NATIVE_API_URL).then(res => {
                    res.json().then(data => {
                        this.mergeMWIData(data);
                        localStorage.setItem("MYAPI_LATEST_CACHE_TIME", Date.now() / 1000);
                    })
                }).catch(err => { });
            }

            const wsUrl = MY_API_HOST.replace("http", "ws").replace("https", "wss") + "/market/ws";
            this.trade_ws = new ReconnectWebSocket(wsUrl);

            hookMessage("market_item_order_books_updated", obj => this.handleMessageMarketItemOrderBooksUpdated(obj));
            setInterval(() => { this.save(); }, 1000 * 600);
        }

        handleMessageMarketItemOrderBooksUpdated(obj) {
            let timestamp = obj.time || parseInt(Date.now() / 1000);
            let itemHrid = obj.marketItemOrderBooks.itemHrid;

            obj.marketItemOrderBooks?.orderBooks?.forEach((item, enhancementLevel) => {
                // 【核心修复 1】安全过滤 null 节点,防止崩溃!
                if (!item) return;

                let bids = item.bids || [];
                let asks = item.asks ||[];

                let bid = bids.length > 0 ? bids[0].price : -1;
                let ask = asks.length > 0 ? asks[0].price : -1;

                let bq = bids.filter(b => b.price === bid).reduce((sum, b) => sum + b.quantity, 0);
                let aq = asks.filter(a => a.price === ask).reduce((sum, a) => sum + a.quantity, 0);

                this.updateItem(itemHrid + ":" + enhancementLevel, { bid: bid, ask: ask, bq: bq, aq: aq, time: timestamp });
            });

            obj.time = timestamp;
            if (this.trade_ws) {
                this.trade_ws.send(JSON.stringify(obj));
            }
        }

        subscribeItems(itemHridList) {}

        mergeMWIData(dataObj) {
            if(!dataObj || !dataObj.marketData) return;
            const timestamp = dataObj.timestamp || Math.floor(Date.now() / 1000);
            Object.entries(dataObj.marketData).forEach(([itemHrid, variants]) => {
                let ensuredHrid = mwi.ensureItemHrid(itemHrid);
                if (ensuredHrid) {
                    Object.entries(variants).forEach(([variant, stats]) => {
                        // 官方静态API无数量,默认补 0
                        this.updateItem(ensuredHrid + ":" + variant, { bid: stats.b || -1, ask: stats.a || -1, aq: 0, bq: 0, time: timestamp }, false);
                    });
                }
            });
            this.save();
        }

        mergeCoreDataBeforeSave() {
            let obj = JSON.parse(localStorage.getItem("MWICore_marketData") || "{}");
            Object.entries(obj).forEach(([itemHridLevel, priceObj]) => {
                this.updateItem(itemHridLevel, priceObj, false);
            });
        }

        save() {
            if (mwi.character?.gameMode !== "standard") return;
            this.mergeCoreDataBeforeSave();
            localStorage.setItem("MWICore_marketData", JSON.stringify(this.marketData));
        }

        getSpecialPrice(itemHrid) {
            switch (itemHrid) {
                case "/items/coin": return { bid: 1, ask: 1, aq: 0, bq: 0, time: Date.now() / 1000 };
                case "/items/cowbell": {
                    let cowbells = this.getItemPrice("/items/bag_of_10_cowbells");
                    return cowbells && { bid: cowbells.bid / 10, ask: cowbells.ask / 10, aq: cowbells.aq, bq: cowbells.bq, time: cowbells.time };
                }
                case "/items/bag_of_10_cowbells": return null;
                case "/items/task_crystal": return { bid: 5000, ask: 5000, aq: 0, bq: 0, time: Date.now() / 1000 };
                default: return null;
            }
        }

        getItemPrice(itemHridOrName, enhancementLevel = 0, peek = false) {
            if (itemHridOrName?.includes(":")) {
                let arr = itemHridOrName.split(":");
                itemHridOrName = arr[0];
                enhancementLevel = parseInt(arr[1]);
            }
            let itemHrid = mwi.ensureItemHrid(itemHridOrName);
            if (!itemHrid) return null;
            let specialPrice = this.getSpecialPrice(itemHrid);
            if (specialPrice) return specialPrice;

            let itemHridLevel = itemHrid + ":" + enhancementLevel;
            return this.marketData[itemHridLevel];
        }

        updateItem(itemHridLevel, priceObj, isFetch = true) {
            let localItem = this.marketData[itemHridLevel];
            if (isFetch) this.fetchTimeDict[itemHridLevel] = Date.now() / 1000;
            if (!localItem || localItem.time < priceObj.time || localItem.time > Date.now() / 1000) {
                let risePercent = 0;
                if (localItem) {
                    let oriPrice = (localItem.ask + localItem.bid);
                    let newPrice = (priceObj.ask + priceObj.bid);
                    if (oriPrice != 0) risePercent = newPrice / oriPrice - 1;
                }
                this.marketData[itemHridLevel] = {
                    rise: risePercent,
                    ask: priceObj.ask,
                    bid: priceObj.bid,
                    aq: priceObj.aq || 0, // 保存数量
                    bq: priceObj.bq || 0,
                    time: priceObj.time
                };
                dispatchEvent(new CustomEvent("MWICoreItemPriceUpdated", { detail: { priceObj: priceObj, itemHridLevel: itemHridLevel } }));
            }
        }
    }

    mwi.coreMarket = new CoreMarket();

    /* ================= 历史数据与 UI 模块 ================= */
    function mooket() {
        mwi.hookMessage("market_listings_updated", obj => {
            let trade_history = JSON.parse(localStorage.getItem("mooket_trade_history") || "{}");
            obj.endMarketListings.forEach(order => {
                if (order.filledQuantity == 0) return;
                let key = order.itemHrid + ":" + order.enhancementLevel;
                let tradeItem = trade_history[key] || {}
                if (order.isSell) tradeItem.sell = order.price;
                else tradeItem.buy = order.price;
                trade_history[key] = tradeItem;
            });
            if (mwi.character?.gameMode === "standard") {
                localStorage.setItem("mooket_trade_history", JSON.stringify(trade_history));
            }
        });

        let curDay = 1;
        let curHridName = null;
        let curLevel = 0;
        let curShowItemName = null;
        let delayItemHridName = null;
        let delayItemLevel = 0;

        let chartWidth = 500;
        let chartHeight = 280

        let configStr = localStorage.getItem("mooket_config");
        let config = configStr ? JSON.parse(configStr) : {
            "dayIndex": 0, "visible": true, "isLocked": false, // 增加默认锁定状态为 false
            "filter": { "bid": true, "ask": true, "mean": true, "vol": true }, "favo": {}
        };
        config.favo = config.favo || {};

        let trade_history = JSON.parse(localStorage.getItem("mooket_trade_history") || "{}");

        function handleResize() {
            let isMobile = window.innerWidth < window.innerHeight || window.innerWidth < 600;
            if (uiContainer.style.display !== 'none') {
                if (isMobile) {
                    container.style.width = window.innerWidth * 0.95 + "px";
                    container.style.height = window.innerWidth * 0.6 + "px";
                } else {
                    container.style.width = (config.w || 500) + "px";
                    container.style.height = (config.h || 280) + "px";
                }
                if (chart) chart.resize();
            }
            let rect = container.getBoundingClientRect();
            if (rect.right > window.innerWidth) container.style.left = Math.max(0, window.innerWidth - rect.width) + "px";
            if (rect.bottom > window.innerHeight) container.style.top = Math.max(0, window.innerHeight - rect.height) + "px";
        }
        window.addEventListener("resize", handleResize);

        const container = document.createElement('div');
        container.style.border = "1px solid #90a6eb";
        container.style.backgroundColor = "#282844";
        container.style.position = "fixed";
        container.style.zIndex = 10000;
        container.style.top = `${Math.max(0, Math.min(config.y || 0, window.innerHeight - 50))}px`;
        container.style.left = `${Math.max(0, Math.min(config.x || 0, window.innerWidth - 50))}px`;

        let isMobile = window.innerWidth < window.innerHeight || window.innerWidth < 600;
        container.style.width = isMobile ? (window.innerWidth * 0.95 + "px") : ((config.w || 500) + "px");
        container.style.height = isMobile ? (window.innerWidth * 0.6 + "px") : ((config.h || 280) + "px");

        container.style.resize = "both";
        container.style.overflow = "hidden"; // 设为 hidden 消除滚动条
        container.style.display = "none";
        container.style.flexDirection = "column";
        container.style.flex = "1";
        container.style.minHeight = "150px";
        container.style.minWidth = "200px";
        container.style.userSelect = "none";

        let mouseDragging = false, touchDragging = false;
        let offsetX, offsetY;
        let resizeEndTimer = null;

        container.addEventListener("resize", () => {
            if (resizeEndTimer) clearTimeout(resizeEndTimer);
            resizeEndTimer = setTimeout(save_config, 1000);
        });

        const dragStart = (e, clientX, clientY) => {
            const rect = container.getBoundingClientRect();
            if (clientX > rect.right - 10 && clientY > rect.bottom - 10) return false;
            offsetX = clientX - container.offsetLeft;
            offsetY = clientY - container.offsetTop;
            return true;
        };
        const dragMove = (clientX, clientY) => {
            let newX = clientX - offsetX;
            let newY = clientY - offsetY;
            if (newX < 0) newX = 0;
            if (newY < 0) newY = 0;
            if (newX > window.innerWidth - container.offsetWidth) newX = window.innerWidth - container.offsetWidth;
            if (newY > window.innerHeight - container.offsetHeight) newY = window.innerHeight - container.offsetHeight;
            container.style.left = newX + "px";
            container.style.top = newY + "px";
        };

        container.addEventListener("mousedown", e => {
            if (config.isLocked) return; // 如果锁定,禁止拖拽
            if (!mouseDragging && !touchDragging) mouseDragging = dragStart(e, e.clientX, e.clientY);
        });
        document.addEventListener("mousemove", e => { if (mouseDragging) dragMove(e.clientX, e.clientY); });
        document.addEventListener("mouseup", () => { if (mouseDragging) { mouseDragging = false; save_config(); } });
        container.addEventListener("touchstart", e => {
            if (config.isLocked) return; // 如果锁定,禁止拖拽
            if (!mouseDragging && !touchDragging) touchDragging = dragStart(e, e.touches[0].clientX, e.touches[0].clientY);
        });
        document.addEventListener("touchmove", e => { if (touchDragging) dragMove(e.touches[0].clientX, e.touches[0].clientY); });
        document.addEventListener("touchend", () => { if (touchDragging) { touchDragging = false; save_config(); } });

        document.body.appendChild(container);

        // --- 1. 第一部分:控制按钮 (保持原样) ---
        const leftContainer = document.createElement('div');
        leftContainer.style.padding = '2px'
        leftContainer.style.display = 'flex';
        leftContainer.style.alignItems = 'center'
        container.appendChild(leftContainer);

        let btn_close = document.createElement('input');
        btn_close.type = 'button';
        btn_close.classList.add('Button_button__1Fe9z')
        btn_close.value = '📈隐藏';
        btn_close.style.margin = 0;
        btn_close.style.cursor = 'pointer';
        leftContainer.appendChild(btn_close);

        let btn_switch = document.createElement('input');
        btn_switch.type = 'button';
        btn_switch.value = "👁";
        btn_switch.style.cursor = 'pointer';
        btn_switch.style.padding = "0 3px";
        btn_switch.style.fontSize = "16px";
        btn_switch.onclick = function () {
            const modeCycle = {
                icon: "iconPercent", iconPercent: "iconPrice", iconPrice: "iconFull",
                iconFull: "normalPercent", normalPercent: "normalPrice", normalPrice: "normalFull",
                normalFull: "full", full: "none", none: "icon"
            };
            const target = uiContainer.style.display === "none" ? "favoModeOff" : "favoModeOn";
            config[target] = modeCycle[config[target]] || "icon";
            updateFavo();
            if (uiContainer.style.display === 'none' && !config.keepsize) {
                container.style.width = "min-content";
                container.style.height = "min-content";
            }
            save_config();
        };
        leftContainer.appendChild(btn_switch);

        let btn_relayout = document.createElement('input');
        btn_relayout.type = 'checkbox';
        btn_relayout.checked = config.keepsize;
        btn_relayout.onchange = function () { config.keepsize = this.checked; save_config(); };
        leftContainer.appendChild(btn_relayout);

        // --- 增加:排序切换按钮 ---
        let btn_sort_toggle = document.createElement('input');
        btn_sort_toggle.type = 'button';
        btn_sort_toggle.value = "⇅";
        btn_sort_toggle.title = mwi.isZh ? "显示/隐藏排序箭头" : "Show/Hide Sort Arrows";
        btn_sort_toggle.style.cursor = 'pointer';
        btn_sort_toggle.style.padding = "0 3px";
        btn_sort_toggle.style.marginLeft = "3px";
        btn_sort_toggle.onclick = function () {
            config.showSort = !config.showSort;
            save_config();
            updateFavo(); // 立即刷新 UI
        };
        leftContainer.appendChild(btn_sort_toggle);

        // --- 增加:窗口位置锁定按钮 ---
        let btn_lock = document.createElement('input');
        btn_lock.type = 'button';
        btn_lock.value = config.isLocked ? "🔒" : "🔓";
        btn_lock.title = mwi.isZh ? "锁定/解锁窗口位置" : "Lock/Unlock Window Position";
        btn_lock.style.cursor = 'pointer';
        btn_lock.style.padding = "0 3px";
        btn_lock.style.marginLeft = "3px";
        btn_lock.onclick = function () {
            config.isLocked = !config.isLocked;
            btn_lock.value = config.isLocked ? "🔒" : "🔓";
            save_config();
        };
        leftContainer.appendChild(btn_lock);

        // --- 2. 第二部分:搜索层 (移动端修复版) ---
        const searchContainer = document.createElement('div');
        searchContainer.style.cssText = "display:flex; padding:2px 5px; gap:4px; align-items:center; background-color:rgba(0,0,0,0.2); position:relative;";
        container.appendChild(searchContainer);

        const itemSearchInput = document.createElement('input');
        itemSearchInput.type = 'text';
        itemSearchInput.placeholder = mwi.isZh ? "搜索物品名称..." : "Search item...";
        itemSearchInput.style.cssText = "flex: 1; height: 24px; font-size: 14px; background-color: #1a1a2e; color: #fff; border: 1px solid #4a4a6a; -webkit-appearance: none;";
        searchContainer.appendChild(itemSearchInput);

        const levelSearchInput = document.createElement('input');
        levelSearchInput.type = 'number';
        levelSearchInput.value = 0; levelSearchInput.min = 0; levelSearchInput.max = 20;
        levelSearchInput.style.cssText = "width: 45px; height: 24px; background-color: #1a1a2e; color: #fff; border: 1px solid #4a4a6a;";
        searchContainer.appendChild(levelSearchInput);

        const searchBtn = document.createElement('button');
        searchBtn.textContent = "🔍";
        searchBtn.style.cssText = "height: 24px; cursor: pointer; padding: 0 8px; background-color: #4a4a6a; color: #fff; border: none;";
        searchContainer.appendChild(searchBtn);

        const suggestBox = document.createElement('div');
        suggestBox.style.cssText = "position: absolute; top: 30px; left: 5px; right: 5px; background: #2a2a4a; border: 1px solid #90a6eb; max-height: 200px; overflow-y: auto; z-index: 10001; display: none; box-shadow: 0 4px 12px rgba(0,0,0,0.5);";
        searchContainer.appendChild(suggestBox);

        const performSearch = (targetName) => {
            let name = targetName || itemSearchInput.value.trim();
            if (!name) return;
            let hrid = mwi.itemNameToHridDict[name] || mwi.ensureItemHrid(name);
            if (hrid) {
                requestItemPrice(hrid, curDay, parseInt(levelSearchInput.value) || 0);
                suggestBox.style.display = 'none';
                itemSearchInput.blur();
            } else {
                mwi.game?.updateNotifications("error", mwi.isZh ? "未找到该物品" : "Item not found");
            }
        };

        itemSearchInput.oninput = function() {
            let val = this.value.trim().toLowerCase();
            if (!val) { suggestBox.style.display = 'none'; return; }
            let itemNames = mwi.isZh ? Object.values(mwi.lang.zh.translation.itemNames) : Object.values(mwi.lang.en.translation.itemNames);
            let matches = itemNames.filter(n => n.toLowerCase().includes(val)).slice(0, 15);
            if (matches.length > 0) {
                suggestBox.innerHTML = "";
                matches.forEach(m => {
                    let div = document.createElement('div');
                    div.style.cssText = "padding: 8px 12px; color: white; border-bottom: 1px solid #444; font-size: 14px; cursor: pointer;";
                    div.textContent = m;
                    div.onclick = function() { itemSearchInput.value = m; performSearch(m); };
                    suggestBox.appendChild(div);
                });
                suggestBox.style.display = 'block';
            } else { suggestBox.style.display = 'none'; }
        };

        searchBtn.onclick = function() { performSearch(); };
        itemSearchInput.onkeydown = function(e) { if (e.key === 'Enter') performSearch(); };
        document.addEventListener('click', function(e) { if (!searchContainer.contains(e.target)) suggestBox.style.display = 'none'; });

        // --- 3. 第三部分:图表 (高度自适应修正) ---
        const ctx = document.createElement('canvas');
        ctx.id = "mooket_chart";
        ctx.style.flex = "1";
        ctx.style.minHeight = "0";
        ctx.style.display = "block";
        container.appendChild(ctx);

        let uiContainer = document.createElement('div');
        uiContainer.style.position = 'absolute';
        uiContainer.style.top = '5px';
        uiContainer.style.right = '16px';
        uiContainer.style.fontSize = '14px';
        uiContainer.style.flexShrink = 0;
        container.appendChild(uiContainer);

        const days =[1, 3, 7, 14, 30, 90, 180];
        config.dayIndex = Math.min(config.dayIndex || 0, 6);
        curDay = days[config.dayIndex];

        let select = document.createElement('select');
        select.style.cursor = 'pointer';
        select.style.verticalAlign = 'middle';
        select.onchange = function () {
            config.dayIndex = this.selectedIndex;
            if (curHridName) requestItemPrice(curHridName, parseInt(this.value), curLevel);
            save_config();
        };

        for (let i = 0; i < days.length; i++) {
            let option = document.createElement('option');
            option.value = days[i];
            if (i === config.dayIndex) option.selected = true;
            select.appendChild(option);
        }

        function updateMoodays() {
            for (let i = 0; i < select.options.length; i++) {
                select.options[i].text = days[i] + (mwi.isZh ? "天" : "d");
            }
        }
        updateMoodays();
        uiContainer.appendChild(select);

        let btn_auto = document.createElement('input');
        btn_auto.type = 'checkbox';
        btn_auto.style.cursor = 'pointer';
        btn_auto.style.verticalAlign = 'middle';
        btn_auto.checked = config.autoHide;
        btn_auto.id = "mooket_autoHide";
        btn_auto.onchange = function () { config.autoHide = this.checked; save_config(); }
        uiContainer.appendChild(btn_auto);

        let label_auto = document.createElement('label');
        label_auto.htmlFor = btn_auto.id;
        label_auto.style.cursor = 'pointer';
        label_auto.style.color = 'white';
        label_auto.style.marginLeft = '5px';
        label_auto.textContent = mwi.isZh ? "自动隐藏" : "Auto Hide";
        uiContainer.appendChild(label_auto);

        let favoContainer = document.createElement('div');
        favoContainer.style.fontSize = '15px';
        favoContainer.style.maxWidth = "100%";
        favoContainer.style.display = 'flex';
        favoContainer.style.flexWrap = 'wrap'
        favoContainer.style.position = 'absolute';
        favoContainer.style.top = '35px';
        favoContainer.style.lineHeight = "15px";
        favoContainer.style.overflow = 'auto';
        container.appendChild(favoContainer);

        function addFavo(itemHridLevel) {
            if (mwi.character?.gameMode !== "standard") return;
            if (!config.favo[itemHridLevel] && Object.keys(config.favo).length >= 99) {
                mwi.game?.updateNotifications("error", mwi.isZh ? "最多只能添加 99 个自选物品哦!" : "Maximum 99 favorite items allowed!");
                return;
            }
            let priceObj = mwi.coreMarket.getItemPrice(itemHridLevel);
            config.favo[itemHridLevel] = { ask: priceObj?.ask || -1, bid: priceObj?.bid || -1, time: priceObj?.time || 0 };
            save_config(); updateFavo();
        }

        function removeFavo(itemHridLevel) {
            if (mwi.character?.gameMode !== "standard") return;
            delete config.favo[itemHridLevel];
            save_config(); updateFavo();
        }

        function formatMagnitude(val) {
            if (val === -1 || val == null) return { str: '0', color: '#6c757d' };
            let num = parseFloat(val);
            if (num === 0) return { str: '0', color: '#6c757d' };
            let str = ''; let color = '';
            if (num >= 1e9) { str = parseFloat((num / 1e9).toFixed(2)) + 'B'; color = '#77baec'; }
            else if (num >= 1e7) { str = parseFloat((num / 1e6).toFixed(2)) + 'M'; color = '#82dcca'; }
            else if (num >= 1e5) { str = parseFloat((num / 1e3).toFixed(1)) + 'K'; color = '#fddaa5'; }
            else { str = Math.floor(num).toLocaleString(); color = ''; }
            return { str, color };
        }

        function showNumber(num) {
            return formatMagnitude(num).str;
        }

        /* ================= 自由排序逻辑插件 ================= */
        function updateFavo() {
            if (mwi.character?.gameMode !== "standard") { favoContainer.style.display = 'none'; return; }
            favoContainer.style.display = 'flex';
            let items = Object.keys(config.favo);

            // 移除不存在的 DOM
            for (let i = 0; i < favoContainer.children.length; i++) {
                if (!items.includes(favoContainer.children[i].id)) favoContainer.removeChild(favoContainer.children[i]);
            }

            for (let itemHridLevel of items) {
                let favoItemDiv = document.getElementById(itemHridLevel);
                let oldPrice = config.favo[itemHridLevel];
                let newPrice = mwi.coreMarket.getItemPrice(itemHridLevel);

                oldPrice.ask = oldPrice?.ask > 0 ? oldPrice.ask : newPrice?.ask;
                oldPrice.bid = oldPrice?.bid > 0 ? oldPrice.bid : newPrice?.bid;

                let priceDelta = {
                    ask: newPrice?.ask > 0 ? showNumber(newPrice.ask) : "-",
                    bid: newPrice?.bid > 0 ? showNumber(newPrice.bid) : "-",
                    askRise: (oldPrice?.ask > 0 && newPrice?.ask > 0) ? (100 * (newPrice.ask - oldPrice.ask) / oldPrice.ask).toFixed(1) : 0,
                    bidRise: (oldPrice?.bid > 0 && newPrice?.bid > 0) ? (100 * (newPrice.bid - oldPrice.bid) / oldPrice.bid).toFixed(1) : 0,
                };
                let [itemHrid, level] = itemHridLevel.split(":");
                let iconName = itemHrid.split("/")[2];
                let itemName = mwi.isZh ? mwi.lang.zh.translation.itemNames[itemHrid] : mwi.lang.en.translation.itemNames[itemHrid];

                if (!favoItemDiv) {
                    favoItemDiv = document.createElement('div');
                    favoItemDiv.id = itemHridLevel;
                    favoItemDiv.style.color = 'white';
                    favoItemDiv.style.whiteSpace = 'nowrap';
                    favoItemDiv.style.cursor = 'pointer';

                    // --- 增加拖拽相关属性 ---
                    favoItemDiv.draggable = true;

                    favoItemDiv.onclick = function (e) {
                        // 如果正在拖拽,则不触发点击
                        if (favoItemDiv.dataset.dragging === "true") return;
                        let [itemHrid, level] = itemHridLevel.split(":")
                        if (uiContainer.style.display === 'none') { delayItemHridName = itemHrid; delayItemLevel = parseInt(level); }
                        else { requestItemPrice(itemHrid, curDay, level); }
                        mwi.game?.handleGoToMarketplace(itemHrid, parseInt(level));
                    };

                    // --- 拖拽事件监听 ---
                    favoItemDiv.ondragstart = (e) => {
                        favoItemDiv.dataset.dragging = "true";
                        e.dataTransfer.setData("text/plain", favoItemDiv.id);
                        favoItemDiv.style.opacity = "0.5";
                    };

                    favoItemDiv.ondragend = (e) => {
                        delete favoItemDiv.dataset.dragging;
                        favoItemDiv.style.opacity = "1";
                        // 拖拽结束,重新计算 config.favo 的顺序并保存
                        reorderFavoConfig();
                    };

                    favoItemDiv.ondragover = (e) => {
                        e.preventDefault(); // 必须 preventDefault 才能触发 drop
                        const draggingId = e.dataTransfer.getData("text/plain") || document.querySelector('[data-dragging="true"]')?.id;
                        if (!draggingId || draggingId === favoItemDiv.id) return;

                        const draggingEl = document.getElementById(draggingId);
                        const rect = favoItemDiv.getBoundingClientRect();
                        const next = (e.clientX - rect.left) > (rect.width / 2);
                        favoContainer.insertBefore(draggingEl, next ? favoItemDiv.nextSibling : favoItemDiv);
                    };

                    favoItemDiv.oncontextmenu = (e) => { e.preventDefault(); removeFavo(itemHridLevel); };
                    favoContainer.appendChild(favoItemDiv);
                }

                let favoMode = uiContainer.style.display === 'none' ? (config.favoModeOff || "icon") : (config.favoModeOn || "icon");
                let title = `${itemName}${level > 0 ? `(+${level})` : ""} ${priceDelta.ask} ${priceDelta.askRise > 0 ? "+" : ""}${priceDelta.askRise}%`;

                switch (favoMode) {
                    case "none":
                        favoItemDiv.innerHTML = "";
                        break;
                    case "full":
                        favoItemDiv.innerHTML = `
            <div title="${title}" style="display:inline-block;border:1px solid #98a7e9;">
            <svg width="15px" height="15px" style="display:inline-block"><use href="/static/media/items_sprite.9c39e2ec.svg#${iconName}"></use></svg>
            <span>${itemName}${level > 0 ? `(+${level})` : ""}</span>
            <span style="color:${priceDelta.askRise == 0 ? "white" : priceDelta.askRise > 0 ? "red" : "lime"}">${priceDelta.ask}</span>
            <span style="color:white;background-color:${priceDelta.askRise == 0 ? "black" : priceDelta.askRise > 0 ? "brown" : "green"}">${priceDelta.askRise > 0 ? "+" : ""}${priceDelta.askRise}%</span>
            <span style="color:${priceDelta.bidRise == 0 ? "white" : priceDelta.bidRise > 0 ? "red" : "lime"}">${priceDelta.bid}</span>
            <span style="color:white;background-color:${priceDelta.bidRise == 0 ? "black" : priceDelta.bidRise > 0 ? "brown" : "green"}">${priceDelta.bidRise > 0 ? "+" : ""}${priceDelta.bidRise}%</span>
            </div>`;
                        break;
                    case "iconPercent":
                        favoItemDiv.innerHTML = `
            <div title="${title}" style="display:inline-block;border:1px solid #98a7e9;">
            <svg width="15px" height="15px" style="display:inline-block"><use href="/static/media/items_sprite.9c39e2ec.svg#${iconName}"></use></svg>
            <span style="color:white;background-color:${priceDelta.askRise == 0 ? "transparent" : priceDelta.askRise > 0 ? "brown" : "green"}">${priceDelta.askRise == 0 ? "" : priceDelta.askRise > 0 ? "+" + priceDelta.askRise + "%" : priceDelta.askRise + "%"}</span>
            </div>`;
                        break;
                    case "iconPrice":
                        favoItemDiv.innerHTML = `
            <div title="${title}" style="display:inline-block;border:1px solid #98a7e9;">
            <svg width="15px" height="15px" style="display:inline-block"><use href="/static/media/items_sprite.9c39e2ec.svg#${iconName}"></use></svg>
            <span style="color:${priceDelta.askRise == 0 ? "white" : priceDelta.askRise > 0 ? "red" : "lime"}">${priceDelta.ask}</span>
            </div>`;
                        break;
                    case "iconFull":
                        favoItemDiv.innerHTML = `
            <div title="${title}" style="display:inline-block;border:1px solid #98a7e9;">
            <svg width="15px" height="15px" style="display:inline-block"><use href="/static/media/items_sprite.9c39e2ec.svg#${iconName}"></use></svg>
            <span style="color:${priceDelta.askRise == 0 ? "white" : priceDelta.askRise > 0 ? "red" : "lime"}">${priceDelta.ask}</span>
            <span style="color:white;background-color:${priceDelta.askRise == 0 ? "black" : priceDelta.askRise > 0 ? "brown" : "green"}">${priceDelta.askRise > 0 ? "+" : ""}${priceDelta.askRise}%</span>
            </div>`;
                        break;
                    case "normalPercent":
                        favoItemDiv.innerHTML = `
            <div title="${title}" style="display:inline-block;border:1px solid #98a7e9;">
            <svg width="15px" height="15px" style="display:inline-block"><use href="/static/media/items_sprite.9c39e2ec.svg#${iconName}"></use></svg>
            <span>${itemName}${level > 0 ? `(+${level})` : ""}</span>
            <span style="color:white;background-color:${priceDelta.askRise == 0 ? "transparent" : priceDelta.askRise > 0 ? "brown" : "green"}">${priceDelta.askRise == 0 ? "" : priceDelta.askRise > 0 ? "+" + priceDelta.askRise + "%" : priceDelta.askRise + "%"}</span>
            </div>`;
                        break;
                    case "normalPrice":
                        favoItemDiv.innerHTML = `
            <div title="${title}" style="display:inline-block;border:1px solid #98a7e9;">
            <svg width="15px" height="15px" style="display:inline-block"><use href="/static/media/items_sprite.9c39e2ec.svg#${iconName}"></use></svg>
            <span>${itemName}${level > 0 ? `(+${level})` : ""}</span>
            <span style="color:${priceDelta.askRise == 0 ? "white" : priceDelta.askRise > 0 ? "red" : "lime"}">${priceDelta.ask}</span>
            </div>`;
                        break;
                    case "normalFull":
                        favoItemDiv.innerHTML = `
            <div title="${title}" style="display:inline-block;border:1px solid #98a7e9;">
            <svg width="15px" height="15px" style="display:inline-block"><use href="/static/media/items_sprite.9c39e2ec.svg#${iconName}"></use></svg>
            <span>${itemName}${level > 0 ? `(+${level})` : ""}</span>
            <span style="color:${priceDelta.askRise == 0 ? "white" : priceDelta.askRise > 0 ? "red" : "lime"}">${priceDelta.ask}</span>
            <span style="color:white;background-color:${priceDelta.askRise == 0 ? "black" : priceDelta.askRise > 0 ? "brown" : "green"}">${priceDelta.askRise > 0 ? "+" : ""}${priceDelta.askRise}%</span>
            </div>`;
                        break;
                    default:
                        favoItemDiv.innerHTML = `
            <div title="${title}" style="display:inline-block;border:1px solid #98a7e9;">
            <svg width="20px" height="20px" style="display:inline-block"><use href="/static/media/items_sprite.9c39e2ec.svg#${iconName}"></use></svg>
            </div>`;
                }

                if (favoMode !== "none") {
                    const originalContent = favoItemDiv.innerHTML;
                    favoItemDiv.innerHTML = "";
                    favoItemDiv.style.display = "flex";
                    favoItemDiv.style.alignItems = "center";
                    favoItemDiv.style.margin = "1px 2px";

                    // 左侧内容区
                    let contentWrapper = document.createElement('div');
                    contentWrapper.style.flex = "1";
                    contentWrapper.innerHTML = originalContent;
                    favoItemDiv.appendChild(contentWrapper);

                    // --- 核心改动:仅在 config.showSort 为 true 时添加箭头 ---
                    if (config.showSort) {
                        favoItemDiv.style.border = "1px solid #5a5a7a";
                        favoItemDiv.style.backgroundColor = "rgba(0,0,0,0.2)";

                        let controls = document.createElement('div');
                        controls.style.cssText = "display:flex; flex-direction:column; background:rgba(255,255,255,0.1); border-left:1px solid #5a5a7a;";

                        let upBtn = document.createElement('div');
                        upBtn.innerHTML = "▲";
                        upBtn.style.cssText = "cursor:pointer; padding:0 2px; font-size:10px; line-height:11px; border-bottom:1px solid #444; color:#aaa;";
                        upBtn.onclick = (e) => {
                            e.stopPropagation();
                            const prev = favoItemDiv.previousElementSibling;
                            if (prev) {
                                favoContainer.insertBefore(favoItemDiv, prev);
                                reorderFavoConfig();
                            }
                        };

                        let downBtn = document.createElement('div');
                        downBtn.innerHTML = "▼";
                        downBtn.style.cssText = "cursor:pointer; padding:0 2px; font-size:10px; line-height:11px; color:#aaa;";
                        downBtn.onclick = (e) => {
                            e.stopPropagation();
                            const next = favoItemDiv.nextElementSibling;
                            if (next) {
                                favoContainer.insertBefore(next, favoItemDiv);
                                reorderFavoConfig();
                            }
                        };

                        controls.appendChild(upBtn);
                        controls.appendChild(downBtn);
                        favoItemDiv.appendChild(controls);
                    } else {
                        // 不排序时去掉边框,保持简洁
                        favoItemDiv.style.border = "none";
                        favoItemDiv.style.backgroundColor = "transparent";
                    }
                }
            }
        }

        updateFavo();
        addEventListener('MWICoreItemPriceUpdated', updateFavo);
        addEventListener("MWILangChanged", () => {
            updateMoodays(); updateFavo();
            btn_close.value = mwi.isZh ? (uiContainer.style.display === 'none' ? "📈显示" : "📈隐藏") : (uiContainer.style.display === 'none' ? "Show" : "Hide");

            // 【修复】同步更新自动隐藏文字、悬浮提示和小眼睛提示
            label_auto.textContent = mwi.isZh ? "自动隐藏" : "Auto Hide";
            btn_auto.title = mwi.isZh ? "在市场外隐藏" : "Auto hide out of market";
            btn_switch.title = mwi.isZh ? "切换显示模式" : "Detail level";
            itemSearchInput.placeholder = mwi.isZh ? "搜索物品名称..." : "Search item...";
        });

        btn_close.onclick = toggle;
        function toggle() {
            let isMobile = window.innerWidth < window.innerHeight || window.innerWidth < 600;
            if (uiContainer.style.display === 'none') {
                container.style.display = 'flex'; // 修正显示逻辑:必须为flex才能启用flex:1
                uiContainer.style.display = ctx.style.display = searchContainer.style.display = 'flex';
                btn_close.value = '📈' + (mwi.isZh ? "隐藏" : "Hide");
                leftContainer.style.position = 'static';

                container.style.width = isMobile ? (window.innerWidth * 0.95 + "px") : ((config.w || 500) + "px");
                container.style.height = isMobile ? (window.innerWidth * 0.6 + "px") : ((config.h || 280) + "px");

                container.style.minHeight = "150px"; container.style.minWidth = "200px";
                config.visible = true;
                favoContainer.style.top = "65px"; favoContainer.style.right = 0; favoContainer.style.left = null; favoContainer.style.position = 'absolute';
                requestItemPrice(delayItemHridName, curDay, delayItemLevel);

                updateFavo();
                save_config();
            } else {
                uiContainer.style.display = ctx.style.display = searchContainer.style.display = 'none';
                container.style.width = config.minWidth + "px"; container.style.height = config.minHeight + "px";
                container.style.minHeight = "min-content"; container.style.minWidth = "112px";
                if (!config.keepsize) { container.style.width = "min-content"; container.style.height = "min-content"; }
                btn_close.value = '📈' + (mwi.isZh ? "显示" : "Show");
                leftContainer.style.position = 'static';
                favoContainer.style.top = 0; favoContainer.style.left = 0; favoContainer.style.right = null; favoContainer.style.position = 'relative';
                config.visible = false;

                updateFavo();
                save_config();
            }
        }

        // ================= 图表初始化与双 Y 轴设置 =================
        let chart = new Chart(ctx, {
            type: 'line',
            data: { labels:[], datasets:[] },
            options: {
                onClick: save_config,
                responsive: true,
                maintainAspectRatio: false, // 修正:允许高度拉伸
                interaction: { mode: 'index', intersect: false },
                scales: {
                    x: {
                        type: 'time',
                        time: { displayFormats: { hour: 'HH:mm', day: 'MM/dd' } },
                        grid: { color: "rgba(255,255,255,0.1)" },
                        ticks: { color: "#e7e7e7" }
                    },
                    y: {
                        type: 'linear', position: 'left',
                        grid: { color: "rgba(255,255,255,0.1)" },
                        ticks: { color: "#e7e7e7", callback: showNumber }
                    },
                    y1: {
                        type: 'linear', position: 'right',
                        grid: { drawOnChartArea: false },
                        ticks: { color: "#409eff", callback: showNumber }
                    }
                },
                plugins: {
                    tooltip: {
                        bodyColor: "#e7e7e7",
                        titleColor: "#e7e7e7",
                        callbacks: {
                            label: function(context) {
                                let label = context.dataset.label || '';
                                if (label) { label += ': '; }
                                const res = formatMagnitude(context.parsed.y);
                                if (context.parsed.y !== null) { label += res.str; }
                                return label;
                            }
                        }
                    },
                    crosshair: { line: { color: '#AAAAAA', width: 1 }, zoom: { enabled: false } },
                    title: { display: true, text: "", color: "#e7e7e7", font: { size: 15, weight: 'bold' } },
                    legend: { display: true, labels: { color: "#e7e7e7" } },
                }
            }
        });

        // ================= API 请求与计算 =================
        function requestItemPrice(itemHridName, day = 1, level = 0) {
            if (!itemHridName) return;
            day = parseInt(day);
            if (curHridName === itemHridName && curLevel == level && curDay == day) return;

            delayItemHridName = curHridName = itemHridName;
            delayItemLevel = curLevel = level;
            curDay = day;

            curShowItemName = (mwi.isZh ? mwi.lang.zh.translation.itemNames[itemHridName] : mwi.lang.en.translation.itemNames[itemHridName]) ?? itemHridName;
            curShowItemName += curLevel > 0 ? `(+${curLevel})` : "";

            fetch(`${MY_API_HOST}/api/market/history?item_id=${curHridName}&variant=${curLevel}&days=${day}`)
                .then(res => res.json().then(data => updateChart(data, curDay)))
                .catch(err => { });
        }

        // ================= 核心:图表数据处理 0处理 + 圆滑 + 估算 =================
        function updateChart(rawData, day) {
            if (!Array.isArray(rawData)) return;
            let processedData = [];

            function getMedian(arr) {
                let validArr = arr.filter(v => v > 0);
                if (validArr.length === 0) return 0;
                validArr.sort((x, y) => x - y);
                const mid = Math.floor(validArr.length / 2);
                return validArr.length % 2 !== 0 ? validArr[mid] : (validArr[mid - 1] + validArr[mid]) / 2;
            }

            if (parseInt(day) <= 7) {
                processedData = rawData.map(row => ({
                    time: typeof row.time === 'number' ? row.time : new Date(row.time).getTime() / 1000,
                    v: row.v || 0,
                    a: row.a > 0 ? row.a : 0,
                    b: row.b > 0 ? row.b : 0,
                    p: row.p > 0 ? row.p : 0
                }));
            } else {
                const dailyGroup = {};
                rawData.forEach(row => {
                    const ts = typeof row.time === 'number' ? row.time : new Date(row.time).getTime() / 1000;
                    const dateObj = new Date(ts * 1000);
                    const dateStr = `${dateObj.getFullYear()}-${dateObj.getMonth() + 1}-${dateObj.getDate()}`;
                    if (!dailyGroup[dateStr]) {
                        dailyGroup[dateStr] = { time: ts, max_ts: 0, a_list: [], b_list: [], p_list: [], v: 0 };
                    }
                    dailyGroup[dateStr].v += (row.v || 0);
                    dailyGroup[dateStr].a_list.push(row.a);
                    dailyGroup[dateStr].b_list.push(row.b);
                    dailyGroup[dateStr].p_list.push(row.p);
                    if (ts > dailyGroup[dateStr].max_ts) { dailyGroup[dateStr].max_ts = ts; dailyGroup[dateStr].time = ts; }
                });
                processedData = Object.values(dailyGroup).map(item => ({
                    time: item.time, v: item.v, a: getMedian(item.a_list), b: getMedian(item.b_list), p: getMedian(item.p_list)
                })).sort((x, y) => x.time - y.time);
            }

            for (let i = 0; i < processedData.length; i++) {
                let curr = processedData[i];
                let va = 0, vb = 0;
                if (curr.v > 0) {
                    if (curr.a > 0 && curr.b > 0 && curr.a > curr.b) {
                        if (curr.p >= curr.a) { va = curr.v; vb = 0; }
                        else if (curr.p <= curr.b) { va = 0; vb = curr.v; }
                        else { va = curr.v * (curr.p - curr.b) / (curr.a - curr.b); vb = curr.v - va; }
                    } else if (curr.b > 0) { va = curr.v; vb = 0; }
                    else if (curr.a > 0) { va = 0; vb = curr.v; }
                    else { va = curr.v * 0.5; vb = curr.v * 0.5; }
                }
                curr.va = Math.round(va); curr.vb = Math.round(vb);
            }

            chart.data.labels = processedData.map(x => new Date(x.time * 1000));
            chart.options.plugins.title.text = curShowItemName;
            chart.data.datasets = [
                { label: mwi.isZh ? '卖一(a)' : "Ask(a)", data: processedData.map(x => x.a), borderColor: '#f56c6c', tension: 0.4, spanGaps: true, pointRadius: 0 },
                { label: mwi.isZh ? '买一(b)' : "Bid(b)", data: processedData.map(x => x.b), borderColor: '#67c23a', borderDash: [5, 5], tension: 0.4, spanGaps: true, pointRadius: 0 },
                { label: mwi.isZh ? '均价(p)' : "Avg(p)", data: processedData.map(x => x.p), borderColor: '#e6a23c', borderDash: [2, 3], tension: 0.4, spanGaps: true, pointRadius: 0 },
                { label: mwi.isZh ? '成交量(v)' : "Vol(v)", data: processedData.map(x => x.v), borderColor: '#409eff', backgroundColor: 'rgba(64, 158, 255, 0.2)', fill: true, yAxisID: 'y1', tension: 0.4, pointRadius: 0, va_data: processedData.map(x => x.va), vb_data: processedData.map(x => x.vb) }
            ];

            chart.options.plugins.tooltip.callbacks.footer = function(tooltipItems) {
                const idx = tooltipItems[0].dataIndex; const ds = chart.data.datasets[3];
                return mwi.isZh ? `卖一成交(估): ${showNumber(ds.va_data[idx])}\n买一成交(估): ${showNumber(ds.vb_data[idx])}` : `Est. Ask: ${showNumber(ds.va_data[idx])}\nEst. Bid: ${showNumber(ds.vb_data[idx])}`;
            };

            if (parseInt(day) <= 7) { chart.options.scales.x.time.unit = 'hour'; chart.options.scales.x.time.tooltipFormat = 'MM/dd HH:mm'; }
            else { chart.options.scales.x.time.unit = 'day'; chart.options.scales.x.time.tooltipFormat = 'MM/dd'; }

            chart.setDatasetVisibility(0, config.filter.ask ?? true);
            chart.setDatasetVisibility(1, config.filter.bid ?? true);
            chart.setDatasetVisibility(2, config.filter.mean ?? true);
            chart.setDatasetVisibility(3, config.filter.vol ?? true);
            chart.update();
        }

        // ================= 辅助:重新排序配置对象 =================
        function reorderFavoConfig() {
            let newFavo = {};
            // 遍历当前容器内所有子节点的 ID(即 itemHridLevel)
            Array.from(favoContainer.children).forEach(child => {
                if (child.id && config.favo[child.id]) {
                    newFavo[child.id] = config.favo[child.id];
                }
            });
            // 将排序后的新对象赋值给 config
            config.favo = newFavo;
            save_config(); // 保存到 localStorage
        }

        function save_config() {
            if (mwi.character?.gameMode !== "standard") return;
            if (chart && chart.data && chart.data.datasets && chart.data.datasets.length == 4) {
                config.filter.ask = chart.getDatasetMeta(0).visible;
                config.filter.bid = chart.getDatasetMeta(1).visible;
                config.filter.mean = chart.getDatasetMeta(2).visible;
                config.filter.vol = chart.getDatasetMeta(3).visible;
            }
            if (container.checkVisibility()) {
                config.x = Math.max(0, Math.min(container.getBoundingClientRect().x, window.innerWidth - 50));
                config.y = Math.max(0, Math.min(container.getBoundingClientRect().y, window.innerHeight - 50));

                let isMobile = window.innerWidth < window.innerHeight || window.innerWidth < 600;
                if (uiContainer.style.display !== 'none') {
                    if (!isMobile) {
                        config.w = container.offsetWidth;
                        config.h = container.offsetHeight;
                    }
                }
            }
            localStorage.setItem("mooket_config", JSON.stringify(config));
        }

        // === 安全的悬浮层容器,直接挂载到 body,绝不污染 React DOM ===
        let safeOverlay = document.getElementById("mooket_safe_overlay");
        if (!safeOverlay) {
            safeOverlay = document.createElement("div");
            safeOverlay.id = "mooket_safe_overlay";
            safeOverlay.style.position = "absolute";
            safeOverlay.style.top = "0";
            safeOverlay.style.left = "0";
            safeOverlay.style.pointerEvents = "none";
            safeOverlay.style.zIndex = "820";
            document.body.appendChild(safeOverlay);
        }

        let tradeHistoryDiv = document.createElement("div");
        tradeHistoryDiv.style.position = "absolute";
        tradeHistoryDiv.style.whiteSpace = "nowrap";
        tradeHistoryDiv.style.transform = "translateX(-50%)";
        tradeHistoryDiv.style.pointerEvents = "auto";
        tradeHistoryDiv.title = mwi.isZh ? "我的最近卖/买价格" : "My recently sell/buy price";
        tradeHistoryDiv.style.textShadow = "1px 1px 2px black";
        tradeHistoryDiv.style.display = "none";
        safeOverlay.appendChild(tradeHistoryDiv);

        let btn_favo = document.createElement('button');
        btn_favo.type = 'button';
        btn_favo.innerText = '📌';
        btn_favo.style.position = "absolute";
        btn_favo.style.padding = "0";
        btn_favo.style.margin = "0";
        btn_favo.style.background = "transparent";
        btn_favo.style.border = "none";
        btn_favo.style.fontSize = "18px";
        btn_favo.style.cursor = "pointer";
        btn_favo.style.pointerEvents = "auto";
        btn_favo.title = mwi.isZh ? "添加到自选" : "Add favorite";
        btn_favo.style.display = "none";
        safeOverlay.appendChild(btn_favo);

        btn_favo.onclick = function() { if (btn_favo.itemHridLevel) addFavo(btn_favo.itemHridLevel) };

        let lastItemHridLevel = null;

        setInterval(() => {
            // 使用模糊匹配兼容 Safari 和游戏更新
            let mpEl = document.querySelector('[class*="MarketplacePanel_marketplacePanel"]');
            let inMarketplace = !!(mpEl && (mpEl.offsetWidth > 0 || mpEl.offsetHeight > 0 || mpEl.getClientRects().length > 0));

            if ((inMarketplace || (!inMarketplace && !config.autoHide))) {
                container.style.display = "flex" // 修正:必须为flex才能使高度自适应
                try {
                    let currentItem = document.querySelector('[class*="MarketplacePanel_currentItem"]');
                    if (currentItem && (currentItem.offsetWidth > 0 || currentItem.offsetHeight > 0)) {

                        let rect = currentItem.getBoundingClientRect();
                        let iconElement = currentItem.querySelector("svg");

                        if (iconElement) {
                            let iconRect = iconElement.getBoundingClientRect();
                            tradeHistoryDiv.style.left = (rect.left + rect.width / 2) + window.scrollX + "px";
                            tradeHistoryDiv.style.top = (rect.top + window.scrollY - 24) + "px";
                            btn_favo.style.left = (iconRect.right + window.scrollX + 8) + "px";
                            btn_favo.style.top = (iconRect.top + window.scrollY - 2) + "px";
                        }

                        let levelStr = currentItem.querySelector('[class*="Item_enhancementLevel"]');
                        let enhancementLevel = parseInt(levelStr?.textContent.replace("+", "") || "0");

                        let useTag = currentItem.querySelector("svg use");
                        if (!useTag || !useTag.href || !useTag.href.baseVal) return;

                        let baseParts = useTag.href.baseVal.split("#");
                        if (baseParts.length < 2) return;

                        let itemHrid = "/items/" + baseParts[1];
                        let itemHridLevel = itemHrid + ":" + enhancementLevel;

                        if (itemHrid) {
                            if (mwi.character?.gameMode === "standard") {
                                btn_favo.itemHridLevel = itemHridLevel;
                                btn_favo.style.display = "block";
                            } else {
                                btn_favo.style.display = "none";
                            }

                            if (trade_history[itemHridLevel]) {
                                let buy = trade_history[itemHridLevel].buy || "--";
                                let sell = trade_history[itemHridLevel].sell || "--";
                                // 修正显示顺序:卖 / 买
                                tradeHistoryDiv.innerHTML = `<span style="color:lime">${showNumber(sell)}</span> <span style="color:#AAAAAA">/</span> <span style="color:red">${showNumber(buy)}</span>`;
                                tradeHistoryDiv.style.display = "block";
                            } else {
                                tradeHistoryDiv.style.display = "none";
                            }

                            if (lastItemHridLevel !== itemHridLevel) {
                                // --- 数据上报逻辑 (完整保留) ---
                                if (mwi.coreMarket.trade_ws) {
                                    let bulkData =[];
                                    for(let i = 0; i <= 20; i++) {
                                        let pObj = mwi.coreMarket.getItemPrice(itemHrid + ":" + i);
                                        if (pObj) {
                                            bulkData.push({
                                                level: i,
                                                ask: pObj.ask !== undefined ? pObj.ask : -1,
                                                bid: pObj.bid !== undefined ? pObj.bid : -1,
                                                aq: pObj.aq || 0,
                                                bq: pObj.bq || 0
                                            });
                                        }
                                    }
                                    if (bulkData.length > 0) {
                                        mwi.coreMarket.trade_ws.send(JSON.stringify({
                                            type: "browser_active_report_bulk",
                                            itemHrid: itemHrid,
                                            data: bulkData,
                                            time: Math.floor(Date.now() / 1000)
                                        }));
                                    }
                                }
                                lastItemHridLevel = itemHridLevel;
                                if (uiContainer.style.display === 'none') { delayItemHridName = itemHrid; delayItemLevel = enhancementLevel; }
                                else { requestItemPrice(itemHrid, curDay, enhancementLevel); }
                            }
                        }
                    } else {
                        tradeHistoryDiv.style.display = "none";
                        btn_favo.style.display = "none";
                        lastItemHridLevel = null;
                    }
                } catch (e) { }
            } else {
                container.style.display = "none";
                tradeHistoryDiv.style.display = "none";
                btn_favo.style.display = "none";
            }
        }, 200);

        toggle();
    }

    new Promise(resolve => {
        let count = 0;
        const interval = setInterval(() => {
            count++;
            if (count > 30) { clearInterval(interval); resolve(); }
            if (document.body && mwi.character?.gameMode) { clearInterval(interval); resolve(); }
        }, 1000);
    }).then(() => { mooket(); });

})();