events.listen("item.tags", function (e) {
  e.add("chisel:marble", [
    "astralsorcery:marble_runed",
    "astralsorcery:marble_raw",
    "astralsorcery:marble_pillar",
    "astralsorcery:marble_engraved",
    "astralsorcery:marble_chiseled",
    "astralsorcery:marble_arch",
    "astralsorcery:marble_bricks",
  ]);
  e.add("singularity", ["extendedcrafting:singularity"]);

  e.add("betterendforge:pedestal", [
    "betterendforge:purpur_pedestal",
    "betterendforge:andesite_pedestal",
    "betterendforge:quartz_pedestal",
    "betterendforge:infusion_pedestal",
    "betterendforge:eternal_pedestal",
    "betterendforge:diorite_pedestal",
    "betterendforge:granite_pedestal",
    "betterendforge:flavolite_pedestal",
    "betterendforge:sulphuric_rock_pedestal",
  ]);

  e.remove("forge:silicon", ["refinedstorage:silicon"]);
  e.add("forge:plates/steel", ["kubejs:steel_plate"]);
  e.add("forge:plates/aluminum", ["kubejs:aluminum_plate"]);
  e.add("forge:plates/uranium", ["kubejs:uranium_plate"]);

  e.add("forge:plates", [
    "kubejs:uranium_plate",
    "kubejs:aluminum_plate",
    "kubejs:steel_plate",
  ]);

  e.remove("forge:ores/copper", [
    "create:copper_ore",
    "immersiveengineering:ore_copper",
    "mekanism:copper_ore",
    "alltheores:ore_copper",
  ]);
  e.remove("forge:ores/osmium", ["alltheores:ore_osmium"]);
  e.remove("forge:ores/", ["exnihilosequentia:chunk_platinum"]);
  e.remove("forge:ores/platinum", ["exnihilosequentia:chunk_platinum"]);

  e.remove("forge:ores", ["alltheores:ore_osmium"]);
  e.remove("forge:nuggets", ["mekanism:nugget_bronze"]);
  e.remove("forge:nuggets/bronze", ["mekanism:nugget_bronze"]);
  e.remove("forge:nuggets", [
    "thermal:nickel_nugget",
    "immersiveengineering:nugget_nickel",
  ]);
  e.remove("forge:nuggets/nickel", [
    "thermal:nickel_nugget",
    "immersiveengineering:nugget_nickel",
  ]);
  e.remove("forge:nuggets/uranium", [
    "immersiveengineering:nugget_uranium",
    "mekanism:nugget_uranium",
  ]);
  e.remove("forge:ingots/zinc", ["chemlib:ingot_zinc", "create:zinc_ingot"]);
  e.remove("forge:ingots", ["chemlib:ingot_zinc", "create:zinc_ingot"]);
  e.remove("forge:ingots", [
    "immersiveengineering:ingot_aluminum",
    "chemlib:ingot_aluminum",
    "exnihilosequentia:ingot_aluminum",
  ]);
  e.remove("forge:ingots/aluminum", [
    "immersiveengineering:ingot_aluminum",
    "chemlib:ingot_aluminum",
    "exnihilosequentia:ingot_aluminum",
  ]);
  e.remove("forge:nuggets/zinc", ["create:zinc_nugget"]);
  e.remove("forge:nuggets", ["create:zinc_nugget"]);
  e.remove("forge:storage_blocks/zinc", ["create:zinc_block"]);
  e.remove("forge:storage_blocks", [
    "create:zinc_block",
    "immersiveengineering:storage_steel",
  ]);
  e.remove("create:create_ingots", ["create:zinc_ingot"]);
  e.remove("forge:nuggets", [
    "immersiveengineering:nugget_uranium",
    "mekanism:nugget_uranium",
  ]);
  e.remove("forge:storage_blocks/bronze", ["mekanism:block_bronze"]);
  e.remove("forge:storage_blocks", ["mekanism:block_bronze"]);
  e.remove("forge:storage_blocks", [
    "mekanism:block_uranium",
    "immersiveengineering:storage_uranium",
  ]);
  e.remove("forge:storage_blocks/uranium", [
    "mekanism:block_uranium",
    "immersiveengineering:storage_uranium",
  ]);

  e.remove("forge:dusts/copper", [
    "mekanism:dust_copper",
    "mekanism:dirty_dust_copper",
    "thermal:copper_dust",

    "pedestals:dustcopper",
    "immersiveengineering:dust_copper",
  ]);
  e.remove("forge:nuggets/copper", [
    "thermal:copper_nugget",
    "immersiveengineering:nugget_copper",
    "create:copper_nugget",
    "mekanism:nugget_copper",
    "tconstruct:copper_nugget",
  ]);
  e.remove("forge:ingots/tin", [
    "chemlib:ingot_tin",
    "mekanism:ingot_tin",
    "thermal:tin_ingot",
    "exnihilosequentia:ingot_tin",
  ]);
  e.remove("forge:ingots", [
    "mekanism:ingot_tin",
    "exnihilosequentia:ingot_uranium",
    "chemlib:ingot_uranium",
  ]);
  e.remove("forge:ingots/uranium", [
    "exnihilosequentia:ingot_uranium",
    "chemlib:ingot_uranium",
  ]);
  e.remove("forge:ingots/uranium", [
    "exnihilosequentia:ingot_uranium",
    "chemlib:ingot_uranium",
  ]);

  e.remove("forge:plates", [
    "immersiveengineering:plate_lead",
    "immersiveengineering:plate_silver",
    "immersiveengineering:plate_electrum",
    "immersiveengineering:plate_nickel",
    "immersiveengineering:plate_constantan",
    "immersiveengineering:plate_aluminum",
    "immersiveengineering:plate_gold",
    "immersiveengineering:plate_iron",
    "create:copper_sheet",
    "create:copper_sheet",
    "create:golden_sheet",
  ]);
  e.remove("forge:plates/lead", ["immersiveengineering:plate_lead"]);
  e.remove("forge:plates/steel", ["immersiveengineering:plate_steel"]);
  e.remove("forge:plates/uranium", ["immersiveengineering:plate_uranium"]);
  e.remove("forge:plates", ["immersiveengineering:plate_steel"]);
  e.remove("forge:plates", ["immersiveengineering:plate_uranium"]);
  e.remove("forge:plates/aluminum", ["immersiveengineering:plate_aluminum"]);
  e.remove("forge:plates/silver", ["immersiveengineering:plate_silver"]);
  e.remove("forge:plates/copper", ["create:copper_sheet"]);
  e.remove("forge:plates/electrum", ["immersiveengineering:plate_electrum"]);
  e.remove("forge:nuggets/electrum", ["immersiveengineering:nugget_electrum"]);
  e.remove("forge:nuggets", ["immersiveengineering:nugget_electrum"]);
  e.remove("forge:plates/constantan", [
    "immersiveengineering:plate_constantan",
  ]);
  e.remove("forge:plates/nickel", ["immersiveengineering:plate_nickel"]);
  e.remove("forge:plates/gold", [
    "immersiveengineering:plate_gold",
    "create:golden_sheet",
  ]);
  e.remove("forge:plates/iron", ["immersiveengineering:plate_iron"]);
  e.remove("forge:dusts", [
    "immersiveengineering:dust_iron",
    "pedestals:dustiron",
    "thermal:iron_dust",
    "immersiveengineering:dust_aluminum",
    "immersiveengineering:dust_lead",
    "immersiveengineering:dust_silver",
    "immersiveengineering:dust_nickel",
    "immersiveengineering:dust_uranium",
    "immersiveengineering:dust_constantan",
    "immersiveengineering:dust_electrum",
    "immersiveengineering:dust_steel",
    "immersiveengineering:dust_gold",
    "appliedenergistics2:iron_dust",
    "mekanism:dust_iron",
  ]);
  e.remove("forge:dusts/iron", [
    "pedestals:dustiron",
    "immersiveengineering:dust_iron",
    "thermal:iron_dust",
    "appliedenergistics2:iron_dust",
    "mekanism:dust_iron",
  ]);
  e.remove("forge:dusts/aluminum", ["immersiveengineering:dust_aluminum"]);
  e.remove("forge:dusts/lead", ["immersiveengineering:dust_lead"]);
  e.remove("forge:dusts/silver", ["immersiveengineering:dust_silver"]);
  e.remove("forge:dusts/nickel", ["immersiveengineering:dust_nickel"]);
  e.remove("forge:dusts/uranium", ["immersiveengineering:dust_uranium"]);
  e.remove("forge:dusts/constantan", ["immersiveengineering:dust_constantan"]);
  e.remove("forge:dusts/electrum", ["immersiveengineering:dust_electrum"]);
  e.remove("forge:dusts/steel", ["immersiveengineering:dust_steel"]);
  e.remove("forge:dusts/gold", ["immersiveengineering:dust_gold"]);

  e.remove("forge:nuggets", ["thermal:tin_nugget", "mekanism:nugget_tin"]);
  e.remove("forge:nuggets/tin", ["thermal:tin_nugget", "mekanism:nugget_tin"]);

  e.remove("forge:nuggets", [
    "immersiveengineering:nugget_silver",
    "thermal:silver_nugget",
  ]);
  e.remove("forge:nuggets", "immersiveengineering:nugget_constantan");
  e.remove(
    "forge:nuggets/constantan",
    "immersiveengineering:nugget_constantan"
  );
  e.remove("forge:nuggets/silver", [
    "immersiveengineering:nugget_silver",
    "thermal:silver_nugget",
  ]);

  e.remove("forge:ores/tin", ["alltheores:ore_tin"]);
  e.remove("forge:dusts", [
    "thermal:tin_dust",
    "mekanism:dust_tin",
    "pedestals:dustsilver",
    "thermal:silver_dust",
  ]);
  e.remove("forge:dusts/silver", [
    "pedestals:dustsilver",
    "thermal:silver_dust",
  ]);
  e.remove("forge:dusts/tin", ["thermal:tin_dust", "mekanism:dust_tin"]);
  e.remove("forge:storage_blocks/tin", [
    "thermal:tin_block",
    "mekanism:block_tin",
  ]);
  e.remove("forge:storage_blocks/silver", [
    "thermal:silver_block",
    "immersiveengineering:storage_silver",
  ]);
  e.remove("forge:storage_blocks", [
    "thermal:tin_block",
    "mekanism:block_tin",
    "thermal:silver_block",
    "immersiveengineering:storage_silver",
  ]);
  e.remove("minecraft:beacon_base_blocks", ["mekanism:block_tin"]);

  e.remove("forge:ingots", ["immersiveengineering:ingot_steel"]);
  e.remove("forge:ingots", [
    "mekanism:ingot_lead",
    "thermal:lead_ingot",
    "immersiveengineering:ingot_lead",
    "chemlib:ingot_lead",
    "exnihilosequentia:ingot_lead",
    "mekanism:block_lead",
  ]);
  e.remove("forge:ingots/lead", [
    "mekanism:ingot_lead",
    "thermal:lead_ingot",
    "immersiveengineering:ingot_lead",
    "chemlib:ingot_lead",
    "exnihilosequentia:ingot_lead",
    "mekanism:block_lead",
  ]);
  e.remove("forge:ingots/steel", ["immersiveengineering:ingot_steel"]);
  e.remove("forge:ingots", [
    "chemlib:ingot_silver",
    "exnihilosequentia:ingot_silver",
    "thermal:silver_ingot",
  ]);
  e.remove("forge:ingots/silver", [
    "chemlib:ingot_silver",
    "exnihilosequentia:ingot_silver",
    "thermal:silver_ingot",
  ]);

  e.remove("forge:ingots", ["chemlib:ingot_osmium"]);
  e.remove("forge:ingots/osmium", ["chemlib:ingot_osmium"]);
  e.remove("forge:ingots", [
    "thermal:silver_nugget",
    "immersiveengineering:nugget_silver",
  ]);
  e.remove("forge:ingots/silver", [
    "thermal:silver_nugget",
    "immersiveengineering:nugget_silver",
  ]);

  e.remove("forge:ingots", [
    "immersiveengineering:ingot_electrum",
    "exnihilosequentia:ingot_nickel",
    "chemlib:ingot_nickel",
  ]);
  e.remove("forge:ingots/electrum", ["immersiveengineering:ingot_electrum"]);
  e.remove("forge:ingots/nickel", [
    "exnihilosequentia:ingot_nickel",
    "chemlib:ingot_nickel",
  ]);
  e.remove("forge:dusts", [
    "mekanism:dust_osmium",
    "thermal:nickel_dust",
    "thermal:lead_dust",
    "mekanism:dust_lead",
  ]);
  e.remove("forge:dusts/lead", ["thermal:lead_dust", "mekanism:dust_lead"]);
  e.remove("forge:dusts/nickel", ["thermal:nickel_dust"]);
  e.remove("forge:dusts/osmium", ["mekanism:dust_osmium"]);
  e.remove("forge:nuggets", [
    "mekanism:nugget_osmium",
    "mekanism:nugget_lead",
    "immersiveengineering:nugget_lead",
    "thermal:lead_nugget",
  ]);
  e.remove("forge:nuggets/osmium", ["mekanism:nugget_osmium"]);
  e.remove("forge:nuggets/lead", [
    "mekanism:nugget_lead",
    "immersiveengineering:nugget_lead",
    "thermal:lead_nugget",
  ]);
  e.remove("forge:nuggets", ["immersiveengineering:nugget_steel"]);
  e.remove("forge:nuggets/steel", ["immersiveengineering:nugget_steel"]);
  e.remove("mekanism:dirty_dusts", ["mekanism:dirty_dust_osmium"]);
  e.remove("mekanism:dirty_dusts/osmium", ["mekanism:dirty_dust_osmium"]);

  e.remove("forge:storage_blocks", ["immersiveengineering:ingot_steel"]);
  e.remove("forge:storage_blocks/steel", ["immersiveengineering:ingot_steel"]);
  e.remove("forge:storage_blocks/steel", [
    "immersiveengineering:storage_steel",
  ]);
  e.remove("forge:storage_blocks", [
    "immersiveengineering:storage_electrum",
    "immersiveengineering:storage_lead",
    "mekanism:block_lead",
    "thermal:lead_block",
  ]);
  e.remove("forge:storage_blocks/electrum", [
    "immersiveengineering:storage_electrum",
  ]);
  e.remove("forge:storage_blocks/lead", [
    "immersiveengineering:storage_lead",
    "mekanism:block_lead",
    "thermal:lead_block",
  ]);
  e.remove("forge:storage_blocks", ["mekanism:block_osmium"]);
  e.remove("forge:storage_blocks/osmium", ["mekanism:block_osmium"]);
  e.remove("forge:storage_blocks/nickel", [
    "immersiveengineering:storage_nickel",
    "thermal:nickel_block",
  ]);
  e.remove("forge:storage_blocks", [
    "immersiveengineering:storage_nickel",
    "thermal:nickel_block",
  ]);
  e.remove("forge:dusts", [
    "mekanism:dust_diamond",
    "createaddition:diamond_grit",
  ]);
  e.remove("forge:dusts/diamond", [
    "mekanism:dust_diamond",
    "createaddition:diamond_grit",
  ]);

  // remove tag dust occultism
  e.remove("forge:dusts/copper", ["occultism:copper_dust"]);
  e.remove("forge:dusts/silver", ["occultism:silver_dust"]);
  e.remove("forge:dusts/gold", ["occultism:gold_dust"]);
  e.remove("forge:dusts/iron", ["occultism:iron_dust"]);

  e.remove("forge:dusts/iesnium", ["occultism:iesnium_dust"]);
  e.remove("forge:dusts", [
    "occultism:copper_dust",
    "occultism:gold_dust",
    "occultism:iron_dust",

    "occultism:iesnium_dust",
    "occultism:silver_dust",
  ]);
  e.remove("forge:ingots", [
    "occultism:copper_ingot",
    "occultism:silver_ingot",
  ]);
  e.remove("forge:ingots/copper", ["occultism:copper_ingot"]);
  e.remove("forge:ingots/silver", ["occultism:silver_ingot"]);
  e.remove("forge:nuggets/copper", ["occultism:copper_nugget"]);
  e.remove("forge:nuggets/silver", ["occultism:silver_nugget"]);

  e.remove("forge:ores/copper", ["occultism:copper_ore"]);
  e.remove("forge:ores/silver", ["occultism:silver_ore"]);
  e.remove("forge:ores", ["occultism:copper_ore", "occultism:silver_ore"]);
  e.remove("apotheosis:boon_drops", [
    "occultism:copper_ore",
    "occultism:silver_ore",
  ]);
});
events.listen("fluid.tags", function (e) {
  e.add("supercolle", ["kubejs:super_colle"]);
});
events.listen("block.tags", function (e) {
  e.remove("forge:ores/copper", [
    "create:copper_ore",
    "immersiveengineering:ore_copper",
    "mekanism:copper_ore",
    "alltheores:ore_copper",
    "tconstruct:copper_ore",
  ]);
  e.remove("forge:ores/tin", ["alltheores:ore_tin"]);
  e.remove("forge:storage_blocks/tin", [
    "thermal:tin_block",
    "mekanism:block_tin",
  ]);
  e.remove("forge:storage_blocks/osmium", ["mekanism:block_osmium"]);

  e.remove("forge:storage_blocks", [
    "thermal:tin_block",
    "mekanism:block_tin",
    "mekanism:block_osmium",
  ]);
  e.remove("minecraft:beacon_base_blocks", [
    "mekanism:block_tin",
    "mekanism:block_osmium",
    "mekanism:block_bronze",
    "mekanism:block_lead",
  ]);
  e.remove("forge:ores/osmium", ["alltheores:ore_osmium"]);
  e.remove("forge:ores/", ["alltheores:ore_osmium"]);
  e.remove("forge:storage_blocks/electrum", [
    "immersiveengineering:storage_electrum",
  ]);
  e.remove("forge:storage_blocks/silver", [
    "thermal:silver_block",
    "immersiveengineering:storage_silver",
  ]);
  e.remove("forge:storage_blocks", [
    "thermal:silver_block",
    "immersiveengineering:storage_silver",
  ]);
  e.remove("forge:storage_blocks", ["immersiveengineering:storage_electrum"]);

  e.remove("forge:storage_blocks/bronze", ["mekanism:block_bronze"]);
  e.remove("forge:storage_blocks", ["mekanism:block_bronze"]);
  e.remove("forge:storage_blocks/nickel", [
    "immersiveengineering:storage_nickel",
    "thermal:nickel_block",
  ]);
  e.remove("forge:storage_blocks", [
    "immersiveengineering:storage_nickel",
    "thermal:nickel_block",
  ]);
  e.remove("forge:storage_blocks/lead", [
    "immersiveengineering:storage_lead",
    "mekanism:block_lead",
    "thermal:lead_block",
  ]);
  e.remove("forge:storage_blocks", [
    "immersiveengineering:storage_lead",
    "mekanism:block_lead",
    "thermal:lead_block",
  ]);
  e.remove("forge:ores/copper", ["occultism:copper_ore"]);
  e.remove("forge:ores/silver", ["occultism:silver_ore"]);
  e.remove("forge:ores", ["occultism:copper_ore", "occultism:silver_ore"]);
  e.remove("apotheosis:boon_drops", [
    "occultism:copper_ore",
    "occultism:silver_ore",
  ]);
});
