ServerEvents.recipes(function (e) {
    // giving clay a QOL recipe for landlocked earlygame players
    e.shapeless(
        Item.of("minecraft:clay_ball", 1),
        [
            "allthecompressed:dirt_1x",
            "7x minecraft:dirt"
        ]
    );

    // making ProjectE slightly harder
    e.remove({
        output: "projecte:philosophers_stone"
    });
    e.shaped(
        Item.of("projecte:philosophers_stone", 1),
        [
            "ABA",
            "BCB",
            "ABA"
        ], {
        A: "ae2:charged_certus_quartz_crystal",
        B: "minecraft:glowstone",
        C: "allthecompressed:diamond_block_1x"
    }
    );
    e.shaped(
        Item.of("projecte:philosophers_stone", 1),
        [
            "BAB",
            "ACA",
            "BAB"
        ], {
        A: "ae2:charged_certus_quartz_crystal",
        B: "minecraft:glowstone",
        C: "allthecompressed:diamond_block_1x"
    }
    );

    // torcherino is OP, with the 81 torches torch being able to >300x tick accel a 9x3x9 area (high potential for lag too)
    // you probably dont need these!!! (use Entity Speed Ticker) but if you must... the path wont be easy
    e.remove({
        output: "torcherino:torcherino"
    });
    e.shaped(
        Item.of("torcherino:torcherino", 1),
        [
            "ABA",
            "CDC",
            "ABA"
        ], {
        A: "ape:encased_dragonsteel_ingot",
        B: "allthemodium:unobtainium_block",
        C: "mysticalagradditions:withering_soul",
        D: "projecttimemaster:time_watch_mk8"
    }
    );

    // giving the Entity Speed Ticker a balanced recipe
    e.shaped(
        Item.of("extendedae_plus:entity_speed_ticker", 1),
        [
            "ABA",
            "CDC",
            "ABA"
        ], {
        A: "allthemodium:unobtainium_ingot",
        B: "expandedae:exp_crafting_accelerator_1k",
        C: "advanced_ae:quantum_accelerator",
        D: "composite_material:echoium_block"
    }
    );

    // making AllTheImbaium things harder because this mod is OP, has things like fluid duping and resource generation
    e.remove({
        output: "alltheimbaium:package_material_x1"
    });
    e.shaped(
        Item.of("alltheimbaium:package_material_x1", 1),
        [
            "CDC",
            "AEB",
            "CDC"
        ], {
        A: "reliquary:fertile_essence",
        B: "#forge:nether_stars",
        C: "bedrockcrafter:compact_obsidian",
        D: "#minecraft:logs",
        E: "#forge:gears/diamond"
    }
    );

    // balancing ATI infinite fluid block (need 10k buckets to become inf)
    e.remove({
        output: "alltheimbaium:liquid_fountain"
    });
    e.shaped(
        Item.of("alltheimbaium:liquid_fountain", 1),
        [
            " B ",
            "AEC",
            " D "
        ], {
        A: "ars_nouveau:conjuration_essence",
        B: "mekanism:ultimate_mechanical_pipe",
        C: "ars_nouveau:conjuration_essence",
        D: "forbidden_arcanus:eternal_stella",
        E: "ae2extras:mono_fluid_cell_64m"
    }
    );

    // balancing ATI infinite resource block
    e.remove({
        output: "alltheimbaium:storage_fountain"
    });
    e.shaped(
        Item.of("alltheimbaium:storage_fountain", 1),
        [
            "ACA",
            "BFD",
            "AEA"
        ], {
        A: "avaritia:crystal_matrix",
        B: "allthecompressed:allthemodium_block_3x",
        C: "allthecompressed:vibranium_block_3x",
        D: "allthecompressed:unobtainium_block_3x",
        E: "l2hostility:miracle_ingot",
        F: "avaritia:neutron_gear"
    }
    );

    // balancing ATI 1 tick farmland
    e.remove({
        output: "alltheimbaium:farmland"
    });
    e.shaped(
        Item.of("alltheimbaium:farmland", 1),
        [
            "   ",
            "ABA",
            "DCD"
        ], {
        A: "reliquary:fertile_lily_pad",
        B: "mysticalagriculture:supremium_farmland",
        C: "justdirethings:time_wand",
        D: "justdirethings:time_crystal"
    }
    );

    // balancing ATI tick accel
    e.remove({
        output: "alltheimbaium:clock"
    });
    e.shaped(
        Item.of("alltheimbaium:clock", 1),
        [
            "CBC",
            "BAB",
            "CBC"
        ], {
        A: "justdirethings:time_wand",
        B: "avaritia:crystal_matrix",
        C: "forbidden_arcanus:eternal_stella"
    }
    );

    // Removing ATI really stupid creative mode totem
    e.remove({
        output: "alltheimbaium:eternal_totem"
    });

    // actuallyadditions item that was also dirt cheap
    e.remove({
        output: "actuallyadditions:lens_of_disruption"
    });
    e.shaped(
        Item.of("actuallyadditions:lens_of_disruption", 1),
        [
            "AAA",
            "ABA",
            "AAA"
        ], {
        A: "kubejs:the_greedy_completion",
        B: "actuallyadditions:lens"
    }
    );

    // giving Quark's Matrix Enchanting Table a recipe
    e.shaped(
        Item.of("quark:matrix_enchanter", 1),
        [
            " A ",
            "ABA",
            " A "
        ], {
        A: "minecraft:amethyst_shard",
        B: "minecraft:enchanting_table"
    }
    );

    // removing an EMC dupe from emeralds
    e.remove({
        id: "projecte:conversions/diamond_to_emerald"
    });

    // ATM Vibranium - Allthemodium Alloy
    e.shapeless(
        Item.of("allthemodium:vibranium_allthemodium_alloy_ingot", 1),
        [
            "allthemodium:vibranium_block",
            "allthemodium:allthemodium_block"
        ]
    );

    // ATM Unobtainium - Allthemodium Alloy
    e.shapeless(
        Item.of("allthemodium:unobtainium_allthemodium_alloy_ingot", 1),
        [
            "allthemodium:unobtainium_block",
            "allthemodium:allthemodium_block"
        ]
    );

    // ATM Unobtainium - Vibranium Alloy
    e.shapeless(
        Item.of("allthemodium:unobtainium_vibranium_alloy_ingot", 1),
        [
            "allthemodium:unobtainium_block",
            "allthemodium:vibranium_block"
        ]
    );

    // ATM Alloy Sword
    e.shaped(
        Item.of("allthemodium:alloy_sword", 1),
        [
            " A ",
            " C ",
            " B "
        ],
        {
            A: "allthemodium:vibranium_allthemodium_alloy_block",
            B: "allthemodium:unobtainium_allthemodium_alloy_block",
            C: "allthemodium:unobtainium_vibranium_alloy_block"
        }
    );

    // ATM Alloy Axe
    e.shaped(
        Item.of("allthemodium:alloy_axe", 1),
        [
            "CBA",
            " D ",
            " D "
        ],
        {
            A: "allthemodium:vibranium_allthemodium_alloy_block",
            B: "allthemodium:unobtainium_allthemodium_alloy_block",
            C: "allthemodium:unobtainium_vibranium_alloy_block",
            D: "allthemodium:allthemodium_rod"
        }
    );

    // ATM Alloy Pickaxe
    e.shaped(
        Item.of("allthemodium:alloy_pick", 1),
        [
            " B ",
            "CDA",
            " D "
        ],
        {
            A: "allthemodium:vibranium_allthemodium_alloy_block",
            B: "allthemodium:unobtainium_allthemodium_alloy_block",
            C: "allthemodium:unobtainium_vibranium_alloy_block",
            D: "allthemodium:allthemodium_rod"
        }
    );

    // ATM Alloy Shovel
    e.shaped(
        Item.of("allthemodium:alloy_shovel", 1),
        [
            " CB",
            " DA",
            "D  "
        ],
        {
            A: "allthemodium:vibranium_allthemodium_alloy_block",
            B: "allthemodium:unobtainium_allthemodium_alloy_block",
            C: "allthemodium:unobtainium_vibranium_alloy_block",
            D: "allthemodium:allthemodium_rod"
        }
    );

    // ATM Alloy Paxel!
    e.shaped(
        Item.of("allthemodium:alloy_paxel", 1),
        [
            "ABC",
            " ED",
            "E  "
        ],
        {
            A: "allthemodium:alloy_sword",
            B: "allthemodium:alloy_axe",
            C: "allthemodium:alloy_pick",
            D: "allthemodium:alloy_shovel",
            E: "allthemodium:allthemodium_rod"
        }
    );

    // [Addition] Sugary Melon Slice
    e.shapeless(
        "kubejs:sugar_melon_slice",
        [
            "minecraft:melon_slice",
            "minecraft:sugar"
        ]
    );

    // [Addition] Sugary Melon Slice
    e.shapeless(
        Item.of("kubejs:sugar_melon_slice", 8),
        [
            "minecraft:melon",
            "minecraft:sugar"
        ]
    );
});