// priority: 0

settings.logAddedRecipes = true
settings.logRemovedRecipes = true
settings.logSkippedRecipes = false
settings.logErroringRecipes = true

//Thanks for an user on the kubejs discord for posting a script (This is a modification of that script)
//On login give /fly, on leave remove /fly
onEvent('player.logged_in',e=>{
    let username = e.player.name
    if (!e.player.stages.has('joined')) {
        e.player.stages.add('joined');
        e.player.stages.remove('left');
        e.server.runCommand(`fly ${username}`);
        e.server.runCommand(`say Enabled fly for ${username}`);
    }
})

onEvent('player.logged_out',e=>{
    let username = e.player.name
    if (!e.player.stages.has('left')) {
        e.player.stages.add('left');   
        e.player.stages.remove('joined');
        e.server.runCommand(`fly ${username}`);
        e.server.runCommand(`say Disabled fly for ${username}`);
    }
})

//Perma peaceful
onEvent('player.tick',e=>{
    e.server.runCommandSilent('/difficulty peaceful')
})

// let immersiveAlloying = (e,output,input) => {
//     e.custom({
//         type:'immersiveengineering:alloysmelter',
//         output:{item:output},
//         inputItems: input.map(item => (item.charAt(0) === '#') ? { tag: item.substring(1) } : { item: item })
//     }).id(`kubejs:create_smelting/${output.replace(':', '/')}`)
// }

onEvent('recipes',e=>{
    //Remove mods
    e.remove({mod:''})
    e.remove({mod:'xpbook'})
    e.remove({mod:'woodenhopper'})
    e.remove({mod:'translocators'})
    e.remove({mod:'titanium'})
    e.remove({mod:'tanknull'})
    e.remove({mod:'speedyhoppers'})
    e.remove({mod:'sophisticatedbackpacks'})
    e.remove({mod:'rslargepatterns'})
    e.remove({mod:'refinedpipes'})
    e.remove({mod:'rs_ctr2'})
    e.remove({mod:'rftoolscontrol'})
    e.remove({mod:'rsrequestify'})
    e.remove({mod:'rsinfinitybooster'})
    e.remove({mod:'pettypipes'})
    e.remove({mod:'pipez'})
    e.remove({mod:'pamhc2crops'})
    e.remove({mod:'packagedexcrafting'})
    e.remove({mod:'packagedauto'})
    e.remove({mod:'overloaded'})
    e.remove({mod:'morphtool'})
    e.remove({mod:'moreobservers'})
    e.remove({mod:'mob_grinding_utils'})
    e.remove({mod:'jecalculation'})
    e.remove({mod:'ironjetpacks'})
    e.remove({mod:'ironchest'})
    e.remove({mod:'industrialforegoing'})
    e.remove({mod:'hostilenetworks'})
    e.remove({mod:'forbidden_arcanus'})
    e.remove({mod:'farmersdelight'})
    e.remove({mod:'extrabotany'})
    e.remove({mod:'exchangers'})
    e.remove({mod:'exnihiloauto'})
    e.remove({mod:'darkutils'})
    e.remove({mod:'creativetweaks'})
    e.remove({mod:'creativecrafter'})
    e.remove({mod:'colossal_battery'})
    e.remove({mod:'craftingautomat'})
    e.remove({mod:'cabletiers'})
    e.remove({mod:'computercraft'})
    e.remove({mod:'buildinggadgets'})
    e.remove({mod:'avaritia'})
    e.remove({mod:'botanicalmachinery'})
    e.remove({mod:'bhc'})
    e.remove({mod:'avaritiafurnace'})
    e.remove({mod:'ars_noveau'})
    e.remove({mod:'curios'})
    e.remove({mod:'apotheosis'})
    e.remove({mod:'advancedperipherals'})
    e.remove({mod:'pachouli'})
    e.remove({mod:'ae2extras'})
    e.remove({mod:'itemfilters'})
    e.remove({mod:'thermal'})
    e.remove({mod:'cyclic'})
    e.remove({mod:'extendedcrafting'})
    e.remove({mod:'cookingforblockheads'})
    e.remove({mod:'xnet'})
    e.remove({mod:'woot'})
    e.remove({mod:'tconstruct'})
    e.remove({mod:'tesseract'})
    e.remove({mod:'simplegens'})
    e.remove({mod:'refinedstorageaddons'})
    e.remove({mod:'rftoolspower'})
    e.remove({mod:'rftoolsbase'})
    e.remove({mod:'projectex'})
    e.remove({mod:'projecte'})
    e.remove({mod:'powah'})
    e.remove({mod:'mythicalbotany'})
    e.remove({mod:'mysticalagriculture'})
    e.remove({mod:'mysticalagraditions'})
    e.remove({mod:'morered'})
    e.remove({mod:'mekanismgenerators'})
    e.remove({mod:'mekanism'})
    e.remove({mod:'lazierae2'})
    e.remove({mod:'itemcollectors'})
    e.remove({mod:'ironfurnaces'})
    e.remove({mod:'fluxnetworks'})
    e.remove({mod:'bigreactors'})
    e.remove({mod:'extrastorage'})
    e.remove({mod:'extradisks'})
    e.remove({mod:'exnihiloae'})
    e.remove({mod:'envirotech'})
    e.remove({mod:'draconicevolution'})
    e.remove({mod:'astralsorcery'})
    e.remove({mod:'appliedenergistics2'})
    e.remove({mod:'alchemistry'})
    e.remove({mod:'advgenerators'})
    e.remove({mod:'ae2wtlib'})
    e.remove({mod:'botania'})
    e.remove({mod:'integratedtunnels'})
    e.remove({mod:'integratedterminals'})
    e.remove({mod:'integrateddynamics'})
    e.remove({mod:'integratedcrafting'})
    e.remove({mod:'integratedadditions'})
    e.remove({mod:'integratednbt'})
    e.remove({mod:'hammerlib'})
    e.remove({mod:'upper'})
    e.remove({mod:'modularnetworks'})
    e.remove({mod:'exnihilosequentia'})
    e.remove({mod:'excompressum'})
    e.remove({mod:'endertanks'})
    e.remove({mod:'enderchests'})
    e.remove({mod:'eidolon'})
    e.remove({mod:'chemlib'})
    e.remove({mod:'bloodmagic'})
    e.remove({mod:'computercraft'})
    e.remove({mod:'usrg'})
	e.remove({mod:'cobblefordays'})
    e.remove({mod:'excompressum'})

    //Remove recipes by id
    e.remove({id:'minecraft:clay'})
	e.remove({id:'minecraft:clay_ball'})
    e.remove({id:'minecraft:oak_planks'})
    e.remove({id:'minecraft:crafting_table'})
    e.remove({id:'pebbles:stone_pebble_to_cobblestone'})
    e.remove({id:'exnihilosequentia:ens_crook_stone'})
    e.remove({id:'minecraft:furnace'})
    e.remove({id:'minecraft:stone'})
    e.remove({id:'/exnihilosequentia:ens_hammer_.*/'})
    e.remove({id:'minecraft:andesite'})
    e.remove({id:'create:andesite_cobblestone'})
	e.remove({id:'botania:petal_apothecary/clayconia'})
    e.remove({id:'astralsorcery:infuser/sand'})
	e.remove({id:'astralsorcery:block_transmutation/sand_clay'})
    e.remove({id:'minecraft:smoker'})
    e.remove({id:'minecraft:blast_furnace'})

    //Remove recipes by output
    e.remove({output:'minecraft:clay'})
	e.remove({output:'minecraft:clay_ball'})
    e.remove({output:'#forge:ores'})
    e.remove({output:'exnihilosequentia:pebble_stone'})
    e.remove({output:'minecraft:stone'})
    e.remove({output:'#forge:ingots/iron'})
    e.remove({output:'#forge:ingots/copper'})
    e.remove({output:'#forge:ingots/tin'})
    e.remove({output:'#forge:ingots/silver'})
    e.remove({output:'minecraft:andesite'})
    e.remove({output:'create:andesite_cobblestone'})
    e.remove({output:'ironfurnaces:iron_furnace'})
    e.remove({output:'create:iron_sheet'})
    e.remove({output:'create:brass_sheet'})
    e.remove({output:'create:copper_sheet'})
    e.remove({output:'create:golden_sheet'})
    e.remove({output:'create:andesite_casing'})
    e.remove({output:'create:brass_casing'})
    e.remove({output:'create:copper_casing'})
    e.remove({output:'create:shaft'})
    e.remove({output:'#create:crushed_ores'})
    e.remove({output:'#forge:plates'})
    e.remove({output:'minecraft:glowstone_dust'})
    e.remove({output:'minecraft:gold_ingot'})
    e.remove({output:'minecraft:redstone'})
    e.remove({output:'minecraft:glowstone_dust'})
    e.remove({output:'create:brass_ingot'})
    e.remove({output:'minecraft:quartz'})

    //Reemplace items on recipes
    e.replaceInput({type:'minecraft:crafting_shaped'},'minecraft:dried_kelp','thermal:rubber')
	e.replaceInput({type:'minecraft:crafting_shaped'},'minecraft:brick','minecraft:gold_ingot')

    //Shaped recipes
    e.shaped('minecraft:oak_planks',['SS','SS'],{
        S:'minecraft:stick'
    })
    e.shaped('minecraft:crafting_table',['PP','PP'],{
        P:'#minecraft:planks'
    })
    e.shaped('exnihilosequentia:pebble_stone',['PP','PP'],{
        P:'pebbles:stone_pebble'
    })
    e.shaped('minecraft:furnace',['CXC','X X','CXC'],{
        C:'compressedblocks:c0_cobblestone',
        X:'compressedblocks:c1_cobblestone'
    })
    e.shaped('minecraft:dirt',['GSG','GDG','GSG'],{
        G:'compressedblocks:c0_gravel',
        S:'compressedblocks:c0_sand',
        D:'excompressum:compressed_dust'
    })
    e.shaped('minecraft:oak_sapling',['DBD','BDB','DBD'],{
        B:'minecraft:bone_meal',
        D:'minecraft:dirt'
    })
    e.shaped('4x minecraft:bone_meal',[' D ','DID',' D '],{
		D:'exnihilosequentia:dust',
		I:'minecraft:dirt'
	})
    e.shaped('4x minecraft:glowstone_dust',['CTC','TDT','CTC'],{
        C:'minicoal2:minicharcoal',
        T:'minecraft:torch',
        D:'#forge:dusts/iron'
    })
    e.shaped('2x minecraft:redstone',['NGN','NDN','NGN'],{
        G:'minecraft:glowstone_dust',
        D:'#forge:dusts/copper',
        N:'minecraft:iron_nugget'
    })
    e.shaped('minecraft:lava_bucket',['CRC','RBR','CRC'],{
		C:'compressedblocks:c0_cobblestone',
		R:'minecraft:redstone_block',
		B:'minecraft:bucket'
	})
    e.shaped('minecraft:quartz',[' B ','BGB',' B '],{
        B:'minecraft:bone_meal',
        G:'minecraft:glowstone'
    })
    e.shaped('4x minecraft:slime_ball',['LDL','DWD','LDL'],{
		L: 'minecraft:oak_leaves',
		D: 'minecraft:dirt',
		W: 'minecraft:water_bucket'
	})
    e.shaped('minecraft:iron_ore',['OOO','OSO','OOO'],{
        O:'create:crushed_iron_ore',
        S:'#forge:stone'
    })
    e.shaped('thermal:copper_ore',['OOO','OSO','OOO'],{
        O:'create:crushed_copper_ore',
        S:'#forge:stone'
    })
    e.shaped('thermal:tin_ore',['OOO','OSO','OOO'],{
        O:'create:crushed_tin_ore',
        S:'#forge:stone'
    })
    e.shaped('thermal:silver_ore',['OOO','OSO','OOO'],{
        O:'create:crushed_silver_ore',
        S:'#forge:stone'
    })
    e.shaped('minecraft:water_bucket',['LLL','LBL','LLL'],{
		L:'minecraft:oak_leaves',
		B:'minecraft:bucket'
    })
    e.remove({output:'minecraft:coarse_dirt'})
    e.shaped('5x minecraft:coarse_dirt',['DGD','GDG','DGD'],{
        D:'minecraft:dirt',
        G:'minecraft:gravel'
    })

    //Cobble generator recipes
    e.shaped('usrg:cobblegenerator',['CBC','LGW','CBC'],{
		C:'compressedblocks:c0_cobblestone',
		G:'minecraft:glass',
		L:'minecraft:lava_bucket',
		W:'minecraft:water_bucket',
        B:'minecraft:bone_block'
	})

    //Simple Storage Network recipes
    e.remove({id: 'storagenetwork:kabel'})
    e.shaped('6x storagenetwork:kabel',['SSS','IBI','SSS'],{
        S:'minecraft:stone_slab',
        I:'create:brass_ingot',
        B:'minecraft:iron_block'
    })

    //Create recipes
    e.shaped('create:andesite_cobblestone',[' I ','ISI',' I '],{
        I:'minecraft:iron_nugget',
        S:'minecraft:stone'
    })
    e.shaped('create:andesite_casing',['AAA','WIW','AAA'],{
        A:'create:andesite_alloy',
        W:'#minecraft:logs',
        I:'minecraft:iron_block'
    })
    e.shaped('create:copper_casing',['SSS','CWC','SSS'],{
        C:'create:andesite_casing',
        S:'create:copper_sheet',
        W:'#minecraft:logs'
    })
    e.shaped('create:brass_casing',['SSS','CWC','SSS'],{
        C:'create:copper_casing',
        S:'create:brass_sheet',
        W:'#minecraft:logs'
    })
    e.shaped('create:precision_mechanism',['BBW','BGA','BBB'],{
        B:'create:brass_sheet',
        W:'#minecraft:planks',
        G:'appliedenergistics2:wooden_gear',
        A:'create:andesite_alloy'
    })
    e.shaped('3x create:shaft',['AA ','AA ','AA '],{
        A:'create:andesite_alloy'
    })
    e.remove({output:'create:empty_blaze_burner'})
    e.shaped('create:empty_blaze_burner',['BCB','BCB','PPP'],{
        B:'minecraft:iron_bars',
        C:'#forge:storage_blocks/charcoal',
        P:'#forge:plates/iron'
    })
    e.shaped('create:blaze_burner',['BGB','BEB','III'],{
		I:'minecraft:iron_block',
		G:'minecraft:glowstone',
		B:'minecraft:iron_bars',
        E:'create:empty_blaze_burner'
	})

    //Crook recipe (Temporal recipes)
    e.shaped('exnihilosequentia:crook_wood',['SS ',' S ',' S '],{
        S:'minecraft:stick'
    })
    e.shaped('excompressum:compressed_crook',['CC ',' C ',' C '],{
        C:'exnihilosequentia:crook_wood'
    })

    //Immersive Engineering recipes
    e.remove({output:'immersiveengineering:cokebrick'})
    e.shaped('4x immersiveengineering:cokebrick',['CGC','GSG','CGC'],{
		C:'create:brass_casing',
		G:'minecraft:gold_ingot',
		S:'minecraft:sandstone'
    })
    e.remove({output:'immersiveengineering:blastbrick',})
    e.shaped('2x immersiveengineering:blastbrick',['BIB','ICI','BIB'],{
        B:'minecraft:nether_brick',
        I:'minecraft:gold_ingot',
        C:'immersiveengineering:cokebrick',
    })
    e.remove({output:'craftingautomat:autocrafter'})
    e.shaped('4x craftingautomat:autocrafter',['DDD','WCW','WPW'],{
        D:'minecraft:light_blue_dye',
        W:'#minecraft:planks',
        C:'minecraft:crafting_table',
        P:'minecraft:dropper'
    })

    //Shapeless recipes
    e.shapeless('minecraft:gravel',['compressedblocks:c0_cobblestone','minecraft:iron_pickaxe']).damageItem('minecraft:iron_pickaxe','1')
    e.shapeless('minecraft:sand',['compressedblocks:c0_gravel','minecraft:iron_pickaxe']).damageItem('minecraft:iron_pickaxe','1')
    e.shapeless('9x exnihilosequentia:dust',['excompressum:compressed_dust'])
    e.shapeless('minecraft:vine',['9x #minecraft:leaves'])
    e.shapeless('thermal:iron_dust',['minecraft:iron_ore','minecraft:stone_pickaxe']).damageItem('minecraft:stone_pickaxe','1')
    e.shapeless('thermal:copper_dust',['thermal:copper_ore','minecraft:iron_pickaxe']).damageItem('minecraft:iron_pickaxe','1')
    e.shapeless('thermal:tin_dust',['thermal:tin_ore','minecraft:iron_pickaxe']).damageItem('minecraft:iron_pickaxe','1')
    e.shapeless('thermal:silver_dust',['thermal:silver_ore','minecraft:iron_pickaxe']).damageItem('minecraft:iron_pickaxe','1')
    e.shapeless('exnihilosequentia:dust',['compressedblocks:c0_sand','minecraft:iron_pickaxe']).damageItem('minecraft:iron_pickaxe','1')
    e.shapeless('excompressum:compressed_dust',['9x exnihilosequentia:dust'])
    e.shapeless('create:crushed_iron_ore',['minecraft:cobblestone','minecraft:stone_pickaxe']).damageItem('minecraft:stone_pickaxe','1')
    e.shapeless('create:crushed_copper_ore',['minecraft:gravel','minecraft:iron_pickaxe']).damageItem('minecraft:iron_pickaxe','1')
    e.shapeless('create:crushed_tin_ore',['minecraft:sand','minecraft:iron_pickaxe']).damageItem('minecraft:iron_pickaxe','1')
    e.shapeless('create:crushed_silver_ore',['exnihilosequentia:dust','minecraft:iron_pickaxe']).damageItem('minecraft:iron_pickaxe','1')
    e.shapeless('thermal:charcoal_block',['9x minecraft:charcoal'])

    //Smelting recipes
    e.smelting('minecraft:stone',['compressedblocks:c0_cobblestone'])
    e.smelting('minecraft:iron_ingot',['#forge:dusts/iron'])
    e.smelting('thermal:copper_ingot',['#forge:dusts/copper'])
    e.smelting('thermal:tin_ingot',['#forge:dusts/tin'])
    e.smelting('thermal:silver_ingot',['#forge:dusts/silver'])
    e.smelting('minecraft:andesite',['create:andesite_cobblestone'])

    //Create compacting
    e.recipes.createCompacting('thermal:rubber',[Fluid.of('thermal:latex',25)]).heated()
    e.recipes.createCompacting('minecraft:diamond',['9x translocators:diamond_nugget']).heated()
    e.remove({id:'create:crafting/kinetics/belt_connector'})
    e.recipes.createCompacting('create:belt_connector',['6x thermal:rubber'])
    e.remove({id:'create:pressing/sugar_cane'})
    e.recipes.createCompacting('minecraft:paper',['9x #forge:dusts/wood'])

    //Create mixing
    e.recipes.createMixing('4x minecraft:glowstone_dust',['2x minicoal2:minicharcoal','2x minecraft:torch','#forge:dusts/iron'])
    e.recipes.createMixing('2x minecraft:redstone',['minecraft:glowstone_dust','3x minecraft:iron_nugget','#forge:dusts/copper'])
    e.recipes.createMixing('3x minecraft:coal',['#forge:storage_blocks/charcoal']).heated()
    e.recipes.createMixing('translocators:diamond_nugget',['#forge:storage_blocks/coal']).heated()
    e.recipes.createMixing(Fluid.of('thermal:latex',100),[Fluid.of('minecraft:water',1000),'9x #minecraft:leaves']).heated()
    e.recipes.createMixing('3x minecraft:gold_ingot',['#forge:storage_blocks/copper','3x minecraft:glowstone_dust']).heated()
    e.recipes.createMixing('3x create:brass_ingot',['#forge:storage_blocks/copper','9x create:andesite_alloy']).heated()
    e.remove({output:'#forge:ingots/electrum',})
    e.remove({output:'#forge:dusts/electrum',})
    e.recipes.createMixing('3x immersiveengineering:ingot_electrum',['minecraft:gold_block','3x #forge:ingots/steel','3x immersiveengineering:coal_coke'])

    //Create milling
    e.recipes.createMilling('2x create:crushed_iron_ore',['compressedblocks:c0_cobblestone'])
    e.recipes.createMilling('2x create:crushed_copper_ore',['compressedblocks:c0_gravel'])
    e.recipes.createMilling('2x create:crushed_tin_ore',['compressedblocks:c0_sand'])
    e.recipes.createMilling('2x create:crushed_silver_ore',['excompressum:compressed_dust'])

    //Create pressing
    e.recipes.createPressing('create:iron_sheet',['minecraft:iron_block'])
    e.recipes.createPressing('create:copper_sheet',['#forge:storage_blocks/copper'])
    e.recipes.createPressing('create:brass_sheet',['create:brass_block'])
    e.recipes.createPressing('create:golden_sheet',['minecraft:gold_block'])
    e.recipes.createPressing('immersiveengineering:plate_steel',['#forge:storage_blocks/steel'])
    e.recipes.createPressing('immersiveengineering:plate_electrum',['#forge:storage_blocks/electrum'])

    //Create cutting
    e.recipes.createCutting('3x immersiveengineering:dust_wood',['#minecraft:logs'])

    //Create sequence assembly
    e.remove({output:'immersiveengineering:blastbrick_reinforced'})
    e.recipes.createSequencedAssembly(['immersiveengineering:blastbrick_reinforced'],'immersiveengineering:blastbrick',[
        e.recipes.createDeploying('immersiveengineering:blastbrick',['immersiveengineering:blastbrick','immersiveengineering:plate_steel']),
        e.recipes.createDeploying('immersiveengineering:blastbrick',['immersiveengineering:blastbrick','immersiveengineering:plate_steel']),
        e.recipes.createDeploying('immersiveengineering:blastbrick',['immersiveengineering:blastbrick','immersiveengineering:plate_steel']),
        e.recipes.createDeploying('immersiveengineering:blastbrick',['immersiveengineering:blastbrick','immersiveengineering:plate_steel']),
        e.recipes.createPressing('immersiveengineering:blastbrick',['immersiveengineering:blastbrick'])
    ]).transitionalItem('immersiveengineering:blastbrick').loops(3)
    e.recipes.createSequencedAssembly(['4x create:crushed_iron_ore',Item.of('3x exnihilosequentia:pebble_stone').withChance(0.1)],'compressedblocks:c0_cobblestone',[
        e.recipes.createDeploying('compressedblocks:c0_cobblestone',['compressedblocks:c0_cobblestone',Item.of('minecraft:iron_pickaxe').ignoreNBT()]),
    ]).transitionalItem('compressedblocks:c0_cobblestone').loops(3)
    e.recipes.createSequencedAssembly(['4x create:crushed_copper_ore',Item.of('minecraft:gravel').withChance(0.1)],'compressedblocks:c0_gravel',[
        e.recipes.createDeploying('compressedblocks:c0_gravel',['compressedblocks:c0_gravel',Item.of('minecraft:iron_pickaxe').ignoreNBT()]),
    ]).transitionalItem('compressedblocks:c0_gravel').loops(3)
    e.recipes.createSequencedAssembly(['4x create:crushed_tin_ore',Item.of('minecraft:sand').withChance(0.1)],'compressedblocks:c0_sand',[
        e.recipes.createDeploying('compressedblocks:c0_sand',['compressedblocks:c0_sand',Item.of('minecraft:iron_pickaxe').ignoreNBT()]),
    ]).transitionalItem('compressedblocks:c0_sand').loops(3)
    e.recipes.createSequencedAssembly(['4x create:crushed_silver_ore',Item.of('exnihilosequentia:dust').withChance(0.1)],'excompressum:compressed_dust',[
        e.recipes.createDeploying('excompressum:compressed_dust',['excompressum:compressed_dust',Item.of('minecraft:iron_pickaxe').ignoreNBT()]),
    ]).transitionalItem('excompressum:compressed_dust').loops(3)

    //Create mechanical crafting
    e.remove({output:'immersiveengineering:radiator'})
    e.recipes.createMechanicalCrafting('immersiveengineering:radiator',[
        'ISSSI',
        'SCCCS',
        'SCBCS',
        'SCCCS',
        'ISSSI'
    ],{
        S:'immersiveengineering:sheetmetal_steel',
        C:'immersiveengineering:coke',
        B:'minecraft:water_bucket',
        I:'minecraft:iron_block'
    })
    e.remove({output:'minecraft:piston'})
    e.recipes.createMechanicalCrafting('minecraft:piston',[
        'CCCCC',
        'CPIPC',
        'CPRPC'
    ], {
        C:'#forge:cobblestone',
        P:'#minecraft:planks',
        R:'#forge:dusts/redstone',
        I:'minecraft:iron_ingot'
    })
    e.remove({output:'immersiveengineering:generator'})
    e.recipes.createMechanicalCrafting('immersiveengineering:generator',[
        'ISSSI',
        'SPPPS',
        'SPDPS',
        'SPPPS',
        'ISSSI'
    ],{
        S:'immersiveengineering:sheetmetal_steel',
        P:'thermal:electrum_plate',
        D:'immersiveengineering:dynamo',
        I:'minecraft:iron_block'
    })
    e.remove({output:'immersiveengineering:light_engineering'})
    e.remove({output:'immersiveengineering:workbench'})
    e.recipes.createMechanicalCrafting('immersiveengineering:light_engineering',[
        'ICCCI',
        'CBFFC',
        'CFFFC',
        'CFFRC',
        'ICCCI'
    ],{
        I:'immersiveengineering:component_iron',
        C:'immersiveengineering:sheetmetal_iron',
        B:'minecraft:light_blue_stained_glass_pane',
        R:'minecraft:clock',
        F:'#forge:storage_blocks/copper'
    })
    e.remove({output:'immersiveengineering:heavy_engineering'})
    e.recipes.createMechanicalCrafting('immersiveengineering:heavy_engineering',[
        'ICCCI',
        'CFFFC',
        'CFFFC',
        'CFFRC',
        'ICCCI'
    ],{
        I:'immersiveengineering:component_steel',
        C:'immersiveengineering:sheetmetal_steel',
        R:'minecraft:clock',
        F:'#forge:storage_blocks/electrum'
    })
    e.remove({output:'immersiveengineering:rs_engineering'})
    e.recipes.createMechanicalCrafting('immersiveengineering:rs_engineering',[
        'CCCCC',
        'CFFFC',
        'CFIFC',
        'CFFFC',
        'CCCCC'
    ],{
        I:'#forge:storage_blocks/copper',
        C:'immersiveengineering:sheetmetal_iron',
        F:'#forge:storage_blocks/redstone'
    })
})
onEvent('recipes',e=>{
})
