ServerEvents.recipes(event => {

    function SmithingTemplate(template, material, block) {
        event.shaped(Item.of("2x " + template), ["CZC", "CXC", "CCC"], {
            Z: block,
            C: material,
            X: template,
        });
        event.remove([{ output: template, type: "crafting_shaped" }]);
    }

    SmithingTemplate(
        "minecraft:netherite_upgrade_smithing_template",
        "diamond",
        "netherrack",
    );
    SmithingTemplate(
        "kubejs:gold_upgrade_smithing_template",
        "thermal:silver_ingot",
        "basalt",
    );
    SmithingTemplate(
        "kubejs:botanist_upgrade_smithing_template",
        "iron_ingot",
        "minecraft:mossy_stone_bricks",
    );
    SmithingTemplate(
        "kubejs:steel_upgrade_smithing_template",
        "naturesaura:infused_iron",
        "deepslate",
    );
    SmithingTemplate(
        "kubejs:skyseeker_upgrade_smithing_template",
        "netherite_ingot",
        "calcite",
    );
    SmithingTemplate(
        "kubejs:phoenix_upgrade_smithing_template",
        "twilightforest:fiery_ingot",
        "deep_aether:aseterite",
    );

    SmithingTemplate(
        "deep_aether:stormforged_smithing_template",
        "kubejs:phoenix_ingot",
        "deep_aether:nimbus_stone",
    );
    SmithingTemplate(
        "kubejs:engineer_upgrade_smithing_template",
        "leather",
        "andesite",
    );
    SmithingTemplate(
        "kubejs:fiery_upgrade_smithing_template",
        "iron_ingot",
        "granite",
    );
    SmithingTemplate(
        "kubejs:bronze_upgrade_smithing_template",
        "copper_block",
        "stone",
    );
    SmithingTemplate(
        "kubejs:obsidian_upgrade_smithing_template",
        "twilightforest:knightmetal_ingot",
        "twilightforest:mazestone_brick",
    );
    SmithingTemplate(
        "kubejs:knightmetal_upgrade_smithing_template",
        "thermal:lead_ingot",
        "twilightforest:underbrick",
    );
    SmithingTemplate(
        "kubejs:scarecrow_upgrade_smithing_template",
        "kubejs:arcane_leather",
        "hay_block",
    );
    SmithingTemplate(
        "kubejs:wizard_upgrade_smithing_template",
        "kubejs:arcane_leather",
        "andesite",
    );
    SmithingTemplate(
        "kubejs:steeleaf_upgrade_smithing_template",
        "twilightforest:ironwood_ingot",
        "twilightforest:dark_log",
    );
    SmithingTemplate(
        "kubejs:wandering_magician_upgrade_smithing_template",
        "leather",
        "white_wool",
    );
    SmithingTemplate(
        "kubejs:skyjade_upgrade_smithing_template",
        "thermal:silver_ingot",
        "aether:holystone",
    );
    SmithingTemplate(
        "kubejs:zanite_upgrade_smithing_template",
        "thermal:lead_ingot",
        "deep_aether:raw_clorite",
    );

    SmithingTemplate(
        "kubejs:arcane_gold_upgrade_smithing_template",
        "gold_ingot",
        "create:asurine",
    );
    SmithingTemplate(
        "kubejs:netherite_battlemage_upgrade_smithing_template",
        "netherite_ingot",
        "astrological:purpurite",
    );
    SmithingTemplate(
        "kubejs:arcane_fortress_upgrade_smithing_template",
        "wizards_reborn:arcane_gold_ingot",
        "create:veridium",
    );
    SmithingTemplate(
        "kubejs:depth_upgrade_smithing_template",
        "kubejs:obsidian_ingot",
        "create:crimsite"
    );

    SmithingTemplate(
        "kubejs:valkyrum_upgrade_smithing_template",
        "naturesaura:sky_ingot",
        "astrological:triphylite",
    );
    SmithingTemplate(
        "kubejs:etherium_upgrade_smithing_template",
        "deep_aether:squall_plate",
        "astrological:light_jade",
    );
    SmithingTemplate(
        "deep_aether:stratus_smithing_template",
        "kubejs:gravitite_ingot",
        "aether:holystone",
    );

    SmithingTemplate(
        "ancient_aether:whale_armor_trim_smithing_template",
        "aether:ambrosium_shard",
        "aether:holystone",
    );
    SmithingTemplate(
        "ancient_aether:mechanical_armor_trim_smithing_template",
        "aether:ambrosium_shard",
        "aether:holystone",
    );
    SmithingTemplate(
        "ancient_aether:ascended_armor_trim_smithing_template",
        "aether:ambrosium_shard",
        "aether:holystone",
    );
    SmithingTemplate(
        "ancient_aether:mysterious_armor_trim_smithing_template",
        "aether:ambrosium_shard",
        "aether:holystone",
    );

})