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

//Luminous Crafting Table
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('portabletanks:basic_portable_tank'))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:glassdust", 4))
    .requireItem(Item.of("minecraft:iron_block", 2))
    .requireItem(Item.of("pipez:basic_upgrade", 2))
    .requireItem(Item.of("minecraft:cauldron", 1))
    .requireItem(Item.of("astralsorcery:altar_discovery", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_discovery", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:aquamarine_sand_ore', 2))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("minecraft:sand", 5))
    .requireItem(Item.of("astralsorcery:aquamarine", 4))
    .requireItem(Item.of("astralsorcery:altar_discovery", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_discovery", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:aquamarine_sand_ore', 4))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("minecraft:sand", 4))
    .requireItem(Item.of("astralsorcery:aquamarine", 4))
    .requireItem(Item.of('astralsorcery:aquamarine_sand_ore', 1))
    .requireItem(Item.of("astralsorcery:altar_discovery", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_discovery", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('ironchest:iron_chest', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("minecraft:iron_ingot", 4))
    .requireItem(Item.of("minecraft:iron_block", 4))
    .requireItem(Item.of("minecraft:chest", 1))
    .requireItem(Item.of("astralsorcery:altar_discovery", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_discovery", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('ironchest:gold_chest', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("minecraft:gold_ingot", 4))
    .requireItem(Item.of("minecraft:gold_block", 4))
    .requireItem(Item.of("ironchest:iron_chest", 1))
    .requireItem(Item.of("astralsorcery:altar_discovery", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_discovery", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('avaritia:diamond_lattice', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:briliantdiamond", 4))
    .requireItem(Item.of("kubejs:briliantgem", 4))
    .requireItem(Item.of("minecraft:nether_star", 1))
    .requireItem(Item.of("astralsorcery:altar_discovery", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_discovery", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})





//Starlight Crafting Altar
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('portabletanks:basic_portable_tank'))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:glassdust", 4))
    .requireItem(Item.of("minecraft:iron_block", 2))
    .requireItem(Item.of("pipez:basic_upgrade", 2))
    .requireItem(Item.of("minecraft:cauldron", 1))
    .requireItem(Item.of("astralsorcery:altar_attunement", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_attunement", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:aquamarine_sand_ore', 2))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("minecraft:sand", 5))
    .requireItem(Item.of("astralsorcery:aquamarine", 4))
    .requireItem(Item.of("astralsorcery:altar_attunement", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_attunement", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:aquamarine_sand_ore', 4))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("minecraft:sand", 4))
    .requireItem(Item.of("astralsorcery:aquamarine", 4))
    .requireItem(Item.of('astralsorcery:aquamarine_sand_ore', 1))
    .requireItem(Item.of("astralsorcery:altar_attunement", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_attunement", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('ironchest:iron_chest', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("minecraft:iron_ingot", 4))
    .requireItem(Item.of("minecraft:iron_block", 4))
    .requireItem(Item.of("minecraft:chest", 1))
    .requireItem(Item.of("astralsorcery:altar_attunement", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_attunement", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('ironchest:gold_chest', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("minecraft:gold_ingot", 4))
    .requireItem(Item.of("minecraft:gold_block", 4))
    .requireItem(Item.of("ironchest:iron_chest", 1))
    .requireItem(Item.of("astralsorcery:altar_attunement", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_attunement", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('avaritia:diamond_lattice', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:briliantdiamond", 4))
    .requireItem(Item.of("kubejs:briliantgem", 4))
    .requireItem(Item.of("minecraft:nether_star", 1))
    .requireItem(Item.of("astralsorcery:altar_attunement", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_attunement", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('portabletanks:advanced_portable_tank'))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("portabletanks:basic_portable_tank", 4))
    .requireItem(Item.of("kubejs:gilded_marble", 4))
    .requireItem(Item.of("kubejs:energisedgoldblock", 2))
    .requireItem(Item.of("pipez:improved_upgrade", 2))
    .requireItem(Item.of("minecraft:gold_block", 1))
    .requireItem(Item.of("astralsorcery:altar_attunement", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_attunement", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('extendedcrafting:basic_component', 4))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("minecraft:iron_ingot", 4))
    .requireItem(Item.of("kubejs:irondust", 4))
    .requireItem(Item.of("extendedcrafting:black_iron_slate", 4))
    .requireItem(Item.of("extendedcrafting:black_iron_ingot", 1))
    .requireItem(Item.of("astralsorcery:altar_attunement", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_attunement", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('extendedcrafting:advanced_component', 4))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:energisedgoldingot", 4))
    .requireItem(Item.of("kubejs:energisedgolddust", 4))
    .requireItem(Item.of("extendedcrafting:basic_component", 4))
    .requireItem(Item.of("extendedcrafting:black_iron_ingot", 1))
    .requireItem(Item.of("astralsorcery:altar_attunement", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_attunement", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('extendedcrafting:elite_component', 4))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:briliantdiamond", 4))
    .requireItem(Item.of("kubejs:diamonddust", 4))
    .requireItem(Item.of("extendedcrafting:advanced_component", 4))
    .requireItem(Item.of("extendedcrafting:black_iron_ingot", 1))
    .requireItem(Item.of("astralsorcery:altar_attunement", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_attunement", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('extendedcrafting:ultimate_component', 4))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:briliantemerald", 4))
    .requireItem(Item.of("kubejs:emeralddust", 4))
    .requireItem(Item.of("extendedcrafting:elite_component", 4))
    .requireItem(Item.of("extendedcrafting:black_iron_ingot", 1))
    .requireItem(Item.of("astralsorcery:altar_attunement", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_attunement", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('extendedcrafting:crystaltine_component', 4))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("extendedcrafting:crystaltine_ingot", 4))
    .requireItem(Item.of("kubejs:celestial_crystal_dust", 4))
    .requireItem(Item.of("extendedcrafting:ultimate_component", 4))
    .requireItem(Item.of("extendedcrafting:black_iron_ingot", 1))
    .requireItem(Item.of("astralsorcery:altar_attunement", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_attunement", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('extendedcrafting:the_ultimate_component', 4))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("extendedcrafting:the_ultimate_ingot", 4))
    .requireItem(Item.of("kubejs:the_ultimate_dust", 4))
    .requireItem(Item.of("extendedcrafting:crystaltine_component", 4))
    .requireItem(Item.of("extendedcrafting:black_iron_ingot", 1))
    .requireItem(Item.of("astralsorcery:altar_attunement", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_attunement", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:rock_crystal_ore', 2))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("minecraft:stone", 4))
    .requireItem(Item.of("astralsorcery:black_marble_raw", 4))
    .requireItem(Item.of("astralsorcery:aquamarine_sand_ore", 2))
    .requireItem(Item.of("astralsorcery:marble_raw", 2))
    .requireItem(Item.of("astralsorcery:rock_crystal", 1))
    .requireItem(Item.of("astralsorcery:altar_attunement", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_attunement", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:starmetal_ore', 2))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:dawn_essence", 4))
    .requireItem(Item.of("kubejs:shininggem", 4))
    .requireItem(Item.of("minecraft:iron_ore", 5))
    .requireItem(Item.of("astralsorcery:altar_attunement", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_attunement", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:starmetal_ore', 4))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:dawn_essence", 4))
    .requireItem(Item.of("kubejs:shininggem", 4))
    .requireItem(Item.of("minecraft:gold_ore", 5))
    .requireItem(Item.of("astralsorcery:altar_attunement", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_attunement", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('kubejs:inertstarore', 8))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("astralsorcery:nocturnal_powder", 2))
    .requireItem(Item.of("kubejs:star_enriched_illumination_powder", 2))
    .requireItem(Item.of("kubejs:shininggem", 4))
    .requireItem(Item.of("minecraft:iron_ore", 4))
    .requireItem(Item.of('astralsorcery:starmetal_ore', 1))
    .requireItem(Item.of("astralsorcery:altar_attunement", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_attunement", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('kubejs:inertstarore', 6))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("astralsorcery:nocturnal_powder", 2))
    .requireItem(Item.of("kubejs:star_enriched_illumination_powder", 2))
    .requireItem(Item.of("kubejs:shininggem", 4))
    .requireItem(Item.of("minecraft:iron_ore", 4))
    .requireItem(Item.of('kubejs:inertstarore', 1))
    .requireItem(Item.of("astralsorcery:altar_attunement", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_attunement", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('kubejs:inertstarore', 12))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("astralsorcery:nocturnal_powder", 2))
    .requireItem(Item.of("kubejs:star_enriched_illumination_powder", 2))
    .requireItem(Item.of("kubejs:shininggem", 4))
    .requireItem(Item.of("minecraft:gold_ore", 4))
    .requireItem(Item.of('astralsorcery:starmetal_ore', 1))
    .requireItem(Item.of("astralsorcery:altar_attunement", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_attunement", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('kubejs:inertstarore', 10))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("astralsorcery:nocturnal_powder", 2))
    .requireItem(Item.of("kubejs:star_enriched_illumination_powder", 2))
    .requireItem(Item.of("kubejs:shininggem", 4))
    .requireItem(Item.of("minecraft:gold_ore", 4))
    .requireItem(Item.of('kubejs:inertstarore', 1))
    .requireItem(Item.of("astralsorcery:altar_attunement", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_attunement", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('ironchest:diamond_chest', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("minecraft:diamond", 4))
    .requireItem(Item.of("kubejs:diamonddust", 4))
    .requireItem(Item.of("minecraft:diamond_block", 4))
    .requireItem(Item.of("ironchest:gold_chest", 1))
    .requireItem(Item.of("astralsorcery:altar_attunement", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_attunement", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('ironchest:obsidian_chest', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:hyperobsidian", 4))
    .requireItem(Item.of("kubejs:obsidiandust", 4))
    .requireItem(Item.of("kubejs:reinforcedobsidian", 4))
    .requireItem(Item.of("ironchest:diamond_chest", 1))
    .requireItem(Item.of("astralsorcery:altar_attunement", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_attunement", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('minecraft:ender_chest', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:enderdust", 4))
    .requireItem(Item.of("minecraft:ender_pearl", 4))
    .requireItem(Item.of("minecraft:ender_eye", 4))
    .requireItem(Item.of("ironchest:obsidian_chest", 1))
    .requireItem(Item.of("astralsorcery:altar_attunement", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_attunement", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('kubejs:starmetal_reinforced_glass', 2))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("astralsorcery:stardust", 2))
    .requireItem(Item.of("kubejs:star_enriched_illumination_powder", 2))
    .requireItem(Item.of("kubejs:starmetal_lens", 4))
    .requireItem(Item.of("minecraft:glass", 2))
    .requireItem(Item.of("astralsorcery:starmetal", 1))
    .requireItem(Item.of("astralsorcery:altar_attunement", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_attunement", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})





//Celestial Altar
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('portabletanks:basic_portable_tank'))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:glassdust", 4))
    .requireItem(Item.of("minecraft:iron_block", 2))
    .requireItem(Item.of("pipez:basic_upgrade", 2))
    .requireItem(Item.of("minecraft:cauldron", 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:aquamarine_sand_ore', 2))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("minecraft:sand", 5))
    .requireItem(Item.of("astralsorcery:aquamarine", 4))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:aquamarine_sand_ore', 4))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("minecraft:sand", 4))
    .requireItem(Item.of("astralsorcery:aquamarine", 4))
    .requireItem(Item.of('astralsorcery:aquamarine_sand_ore', 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('ironchest:iron_chest', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("minecraft:iron_ingot", 4))
    .requireItem(Item.of("minecraft:iron_block", 4))
    .requireItem(Item.of("minecraft:chest", 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('ironchest:gold_chest', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("minecraft:gold_ingot", 4))
    .requireItem(Item.of("minecraft:gold_block", 4))
    .requireItem(Item.of("ironchest:iron_chest", 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('avaritia:diamond_lattice', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:briliantdiamond", 4))
    .requireItem(Item.of("kubejs:briliantgem", 4))
    .requireItem(Item.of("minecraft:nether_star", 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('portabletanks:advanced_portable_tank'))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("portabletanks:basic_portable_tank", 4))
    .requireItem(Item.of("kubejs:gilded_marble", 4))
    .requireItem(Item.of("kubejs:energisedgoldblock", 2))
    .requireItem(Item.of("pipez:improved_upgrade", 2))
    .requireItem(Item.of("minecraft:gold_block", 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('extendedcrafting:basic_component', 4))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("minecraft:iron_ingot", 4))
    .requireItem(Item.of("kubejs:irondust", 4))
    .requireItem(Item.of("extendedcrafting:black_iron_slate", 4))
    .requireItem(Item.of("extendedcrafting:black_iron_ingot", 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('extendedcrafting:advanced_component', 4))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:energisedgoldingot", 4))
    .requireItem(Item.of("kubejs:energisedgolddust", 4))
    .requireItem(Item.of("extendedcrafting:basic_component", 4))
    .requireItem(Item.of("extendedcrafting:black_iron_ingot", 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('extendedcrafting:elite_component', 4))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:briliantdiamond", 4))
    .requireItem(Item.of("kubejs:diamonddust", 4))
    .requireItem(Item.of("extendedcrafting:advanced_component", 4))
    .requireItem(Item.of("extendedcrafting:black_iron_ingot", 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('extendedcrafting:ultimate_component', 4))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:briliantemerald", 4))
    .requireItem(Item.of("kubejs:emeralddust", 4))
    .requireItem(Item.of("extendedcrafting:elite_component", 4))
    .requireItem(Item.of("extendedcrafting:black_iron_ingot", 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('extendedcrafting:crystaltine_component', 4))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("extendedcrafting:crystaltine_ingot", 4))
    .requireItem(Item.of("kubejs:celestial_crystal_dust", 4))
    .requireItem(Item.of("extendedcrafting:ultimate_component", 4))
    .requireItem(Item.of("extendedcrafting:black_iron_ingot", 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('extendedcrafting:the_ultimate_component', 4))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("extendedcrafting:the_ultimate_ingot", 4))
    .requireItem(Item.of("kubejs:the_ultimate_dust", 4))
    .requireItem(Item.of("extendedcrafting:crystaltine_component", 4))
    .requireItem(Item.of("extendedcrafting:black_iron_ingot", 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:rock_crystal_ore', 2))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("minecraft:stone", 4))
    .requireItem(Item.of("astralsorcery:black_marble_raw", 4))
    .requireItem(Item.of("astralsorcery:aquamarine_sand_ore", 2))
    .requireItem(Item.of("astralsorcery:marble_raw", 2))
    .requireItem(Item.of("astralsorcery:rock_crystal", 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:starmetal_ore', 2))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:dawn_essence", 4))
    .requireItem(Item.of("kubejs:shininggem", 4))
    .requireItem(Item.of("minecraft:iron_ore", 5))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:starmetal_ore', 4))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:dawn_essence", 4))
    .requireItem(Item.of("kubejs:shininggem", 4))
    .requireItem(Item.of("minecraft:gold_ore", 5))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('kubejs:inertstarore', 8))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("astralsorcery:nocturnal_powder", 2))
    .requireItem(Item.of("kubejs:star_enriched_illumination_powder", 2))
    .requireItem(Item.of("kubejs:shininggem", 4))
    .requireItem(Item.of("minecraft:iron_ore", 4))
    .requireItem(Item.of('astralsorcery:starmetal_ore', 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('kubejs:inertstarore', 6))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("astralsorcery:nocturnal_powder", 2))
    .requireItem(Item.of("kubejs:star_enriched_illumination_powder", 2))
    .requireItem(Item.of("kubejs:shininggem", 4))
    .requireItem(Item.of("minecraft:iron_ore", 4))
    .requireItem(Item.of('kubejs:inertstarore', 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('kubejs:inertstarore', 12))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("astralsorcery:nocturnal_powder", 2))
    .requireItem(Item.of("kubejs:star_enriched_illumination_powder", 2))
    .requireItem(Item.of("kubejs:shininggem", 4))
    .requireItem(Item.of("minecraft:gold_ore", 4))
    .requireItem(Item.of('astralsorcery:starmetal_ore', 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('kubejs:inertstarore', 10))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("astralsorcery:nocturnal_powder", 2))
    .requireItem(Item.of("kubejs:star_enriched_illumination_powder", 2))
    .requireItem(Item.of("kubejs:shininggem", 4))
    .requireItem(Item.of("minecraft:gold_ore", 4))
    .requireItem(Item.of('kubejs:inertstarore', 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('ironchest:diamond_chest', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("minecraft:diamond", 4))
    .requireItem(Item.of("kubejs:diamonddust", 4))
    .requireItem(Item.of("minecraft:diamond_block", 4))
    .requireItem(Item.of("ironchest:gold_chest", 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('ironchest:obsidian_chest', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:hyperobsidian", 4))
    .requireItem(Item.of("kubejs:obsidiandust", 4))
    .requireItem(Item.of("kubejs:reinforcedobsidian", 4))
    .requireItem(Item.of("ironchest:diamond_chest", 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('minecraft:ender_chest', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:enderdust", 4))
    .requireItem(Item.of("minecraft:ender_pearl", 4))
    .requireItem(Item.of("minecraft:ender_eye", 4))
    .requireItem(Item.of("ironchest:obsidian_chest", 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('portabletanks:expert_portable_tank'))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("portabletanks:advanced_portable_tank", 4))
    .requireItem(Item.of("kubejs:diamonddust", 8))
    .requireItem(Item.of("kubejs:enrichedglowstoneblock", 4))
    .requireItem(Item.of("minecraft:diamond_block", 2))
    .requireItem(Item.of("pipez:advanced_upgrade", 2))
    .requireItem(Item.of("kubejs:briliantdiamondblock", 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('ironchest:crystal_chest', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:starmetal_reinforced_glass", 8))
    .requireItem(Item.of("astralsorcery:glass_lens", 8))
    .requireItem(Item.of("kubejs:diamonddust", 4))
    .requireItem(Item.of("ironchest:obsidian_chest", 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('enderstorage:ender_chest', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:reinforcedobsidian", 4))
    .requireItem(Item.of("minecraft:blaze_rod", 4))
    .requireItem(Item.of("astralsorcery:resonating_gem", 4))
    .requireItem(Item.of("minecraft:ender_pearl", 2))
    .requireItem(Item.of("minecraft:ender_chest", 2))
    .requireItem(Item.of("kubejs:inert_infused_glass", 2))
    .requireItem(Item.of("ironchest:crystal_chest", 1))
    .requireItem(Item.of("minecraft:ender_eye", 2))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('kubejs:dawnstone', 4))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:enrichedglowstoneblock", 2))
    .requireItem(Item.of("kubejs:dawn_essence", 8))
    .requireItem(Item.of("minecraft:glowstone", 3))
    .requireItem(Item.of("minecraft:clock", 2))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('kubejs:duskstone', 4))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:reinforcedobsidian", 2))
    .requireItem(Item.of("kubejs:dusk_essence", 8))
    .requireItem(Item.of("minecraft:obsidian", 3))
    .requireItem(Item.of("minecraft:clock", 2))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:shifting_star'))
    .requireEnergyPerTick(100)
    .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 4000))
    .requireItem(Item.of("kubejs:infused_illumination_powder", 4))
    .requireItem(Item.of("kubejs:infusednocturnalpowder", 4))
    .requireItem(Item.of("kubejs:dusk_essence", 4))
    .requireItem(Item.of("kubejs:inert_infused_glass", 2))
    .requireItem(Item.of("kubejs:briliantdiamond", 2))
    .requireItem(Item.of("extendedcrafting:ender_star", 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('kubejs:glimmering_star'))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:infused_illumination_powder", 4))
    .requireItem(Item.of("kubejs:dusk_essence", 4))
    .requireItem(Item.of("kubejs:dawn_essence", 4))
    .requireItem(Item.of("kubejs:netheritestarmetaldust", 4))
    .requireItem(Item.of("astralsorcery:resonating_gem", 4))
    .requireItem(Item.of("astralsorcery:shifting_star", 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:colored_lens_push', 2))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:dusk_essence", 4))
    .requireItem(Item.of("minecraft:piston", 8))
    .requireItem(Item.of("astralsorcery:resonating_gem", 4))
    .requireItem(Item.of("kubejs:starmetal_lens", 4))
    .requireItem(Item.of("kubejs:starmetal_reinforced_glass", 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:colored_lens_growth', 2))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:dusk_essence", 4))
    .requireItem(Item.of("minecraft:bone_block", 8))
    .requireItem(Item.of("astralsorcery:resonating_gem", 4))
    .requireItem(Item.of("kubejs:starmetal_lens", 4))
    .requireItem(Item.of("kubejs:starmetal_reinforced_glass", 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:colored_lens_break', 2))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:dusk_essence", 4))
    .requireItem(Item.of("kubejs:compressed_diamond_pickaxe", 1))
    .requireItem(Item.of("astralsorcery:resonating_gem", 4))
    .requireItem(Item.of("kubejs:starmetal_lens", 4))
    .requireItem(Item.of("kubejs:starmetal_reinforced_glass", 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:colored_lens_fire', 2))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:dusk_essence", 4))
    .requireItem(Item.of("kubejs:compressed_flint_and_steel", 1))
    .requireItem(Item.of("astralsorcery:resonating_gem", 4))
    .requireItem(Item.of("kubejs:starmetal_lens", 4))
    .requireItem(Item.of("kubejs:starmetal_reinforced_glass", 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:colored_lens_damage', 2))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:dusk_essence", 4))
    .requireItem(Item.of("kubejs:compressed_potion_of_harming", 1))
    .requireItem(Item.of("astralsorcery:resonating_gem", 4))
    .requireItem(Item.of("kubejs:starmetal_lens", 4))
    .requireItem(Item.of("kubejs:starmetal_reinforced_glass", 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:colored_lens_regeneration', 2))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:dusk_essence", 4))
    .requireItem(Item.of("kubejs:compressed_potion_of_regeneration", 1))
    .requireItem(Item.of("astralsorcery:resonating_gem", 4))
    .requireItem(Item.of("kubejs:starmetal_lens", 4))
    .requireItem(Item.of("kubejs:starmetal_reinforced_glass", 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('kubejs:starmetal_reinforced_glass', 2))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("astralsorcery:stardust", 2))
    .requireItem(Item.of("kubejs:star_enriched_illumination_powder", 2))
    .requireItem(Item.of("kubejs:starmetal_lens", 4))
    .requireItem(Item.of("minecraft:glass", 2))
    .requireItem(Item.of("astralsorcery:starmetal", 1))
    .requireItem(Item.of("astralsorcery:altar_constellation", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_constellation", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})





//Iridecent Altar
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('portabletanks:basic_portable_tank'))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:glassdust", 4))
    .requireItem(Item.of("minecraft:iron_block", 2))
    .requireItem(Item.of("pipez:basic_upgrade", 2))
    .requireItem(Item.of("minecraft:cauldron", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:aquamarine_sand_ore', 2))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("minecraft:sand", 5))
    .requireItem(Item.of("astralsorcery:aquamarine", 4))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:aquamarine_sand_ore', 4))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("minecraft:sand", 4))
    .requireItem(Item.of("astralsorcery:aquamarine", 4))
    .requireItem(Item.of('astralsorcery:aquamarine_sand_ore', 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('ironchest:iron_chest', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("minecraft:iron_ingot", 4))
    .requireItem(Item.of("minecraft:iron_block", 4))
    .requireItem(Item.of("minecraft:chest", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('ironchest:gold_chest', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("minecraft:gold_ingot", 4))
    .requireItem(Item.of("minecraft:gold_block", 4))
    .requireItem(Item.of("ironchest:iron_chest", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('avaritia:diamond_lattice', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:briliantdiamond", 4))
    .requireItem(Item.of("kubejs:briliantgem", 4))
    .requireItem(Item.of("minecraft:nether_star", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('portabletanks:advanced_portable_tank'))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("portabletanks:basic_portable_tank", 4))
    .requireItem(Item.of("kubejs:gilded_marble", 4))
    .requireItem(Item.of("kubejs:energisedgoldblock", 2))
    .requireItem(Item.of("pipez:improved_upgrade", 2))
    .requireItem(Item.of("minecraft:gold_block", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('extendedcrafting:basic_component', 4))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("minecraft:iron_ingot", 4))
    .requireItem(Item.of("kubejs:irondust", 4))
    .requireItem(Item.of("extendedcrafting:black_iron_slate", 4))
    .requireItem(Item.of("extendedcrafting:black_iron_ingot", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('extendedcrafting:advanced_component', 4))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:energisedgoldingot", 4))
    .requireItem(Item.of("kubejs:energisedgolddust", 4))
    .requireItem(Item.of("extendedcrafting:basic_component", 4))
    .requireItem(Item.of("extendedcrafting:black_iron_ingot", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('extendedcrafting:elite_component', 4))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:briliantdiamond", 4))
    .requireItem(Item.of("kubejs:diamonddust", 4))
    .requireItem(Item.of("extendedcrafting:advanced_component", 4))
    .requireItem(Item.of("extendedcrafting:black_iron_ingot", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('extendedcrafting:ultimate_component', 4))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:briliantemerald", 4))
    .requireItem(Item.of("kubejs:emeralddust", 4))
    .requireItem(Item.of("extendedcrafting:elite_component", 4))
    .requireItem(Item.of("extendedcrafting:black_iron_ingot", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('extendedcrafting:crystaltine_component', 4))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("extendedcrafting:crystaltine_ingot", 4))
    .requireItem(Item.of("kubejs:celestial_crystal_dust", 4))
    .requireItem(Item.of("extendedcrafting:ultimate_component", 4))
    .requireItem(Item.of("extendedcrafting:black_iron_ingot", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('extendedcrafting:the_ultimate_component', 4))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("extendedcrafting:the_ultimate_ingot", 4))
    .requireItem(Item.of("kubejs:the_ultimate_dust", 4))
    .requireItem(Item.of("extendedcrafting:crystaltine_component", 4))
    .requireItem(Item.of("extendedcrafting:black_iron_ingot", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:rock_crystal_ore', 2))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("minecraft:stone", 4))
    .requireItem(Item.of("astralsorcery:black_marble_raw", 4))
    .requireItem(Item.of("astralsorcery:aquamarine_sand_ore", 2))
    .requireItem(Item.of("astralsorcery:marble_raw", 2))
    .requireItem(Item.of("astralsorcery:rock_crystal", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:starmetal_ore', 2))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:dawn_essence", 4))
    .requireItem(Item.of("kubejs:shininggem", 4))
    .requireItem(Item.of("minecraft:iron_ore", 5))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:starmetal_ore', 4))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:dawn_essence", 4))
    .requireItem(Item.of("kubejs:shininggem", 4))
    .requireItem(Item.of("minecraft:gold_ore", 5))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('kubejs:inertstarore', 8))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("astralsorcery:nocturnal_powder", 2))
    .requireItem(Item.of("kubejs:star_enriched_illumination_powder", 2))
    .requireItem(Item.of("kubejs:shininggem", 4))
    .requireItem(Item.of("minecraft:iron_ore", 4))
    .requireItem(Item.of('astralsorcery:starmetal_ore', 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('kubejs:inertstarore', 6))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("astralsorcery:nocturnal_powder", 2))
    .requireItem(Item.of("kubejs:star_enriched_illumination_powder", 2))
    .requireItem(Item.of("kubejs:shininggem", 4))
    .requireItem(Item.of("minecraft:iron_ore", 4))
    .requireItem(Item.of('kubejs:inertstarore', 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('kubejs:inertstarore', 12))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("astralsorcery:nocturnal_powder", 2))
    .requireItem(Item.of("kubejs:star_enriched_illumination_powder", 2))
    .requireItem(Item.of("kubejs:shininggem", 4))
    .requireItem(Item.of("minecraft:gold_ore", 4))
    .requireItem(Item.of('astralsorcery:starmetal_ore', 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('kubejs:inertstarore', 10))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("astralsorcery:nocturnal_powder", 2))
    .requireItem(Item.of("kubejs:star_enriched_illumination_powder", 2))
    .requireItem(Item.of("kubejs:shininggem", 4))
    .requireItem(Item.of("minecraft:gold_ore", 4))
    .requireItem(Item.of('kubejs:inertstarore', 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('ironchest:diamond_chest', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("minecraft:diamond", 4))
    .requireItem(Item.of("kubejs:diamonddust", 4))
    .requireItem(Item.of("minecraft:diamond_block", 4))
    .requireItem(Item.of("ironchest:gold_chest", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('ironchest:obsidian_chest', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:hyperobsidian", 4))
    .requireItem(Item.of("kubejs:obsidiandust", 4))
    .requireItem(Item.of("kubejs:reinforcedobsidian", 4))
    .requireItem(Item.of("ironchest:diamond_chest", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('minecraft:ender_chest', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:enderdust", 4))
    .requireItem(Item.of("minecraft:ender_pearl", 4))
    .requireItem(Item.of("minecraft:ender_eye", 4))
    .requireItem(Item.of("ironchest:obsidian_chest", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('portabletanks:expert_portable_tank'))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("portabletanks:advanced_portable_tank", 4))
    .requireItem(Item.of("kubejs:diamonddust", 8))
    .requireItem(Item.of("kubejs:enrichedglowstoneblock", 4))
    .requireItem(Item.of("minecraft:diamond_block", 2))
    .requireItem(Item.of("pipez:advanced_upgrade", 2))
    .requireItem(Item.of("kubejs:briliantdiamondblock", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('ironchest:crystal_chest', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:starmetal_reinforced_glass", 8))
    .requireItem(Item.of("astralsorcery:glass_lens", 8))
    .requireItem(Item.of("kubejs:diamonddust", 4))
    .requireItem(Item.of("ironchest:obsidian_chest", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('enderstorage:ender_chest', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:reinforcedobsidian", 4))
    .requireItem(Item.of("minecraft:blaze_rod", 4))
    .requireItem(Item.of("astralsorcery:resonating_gem", 4))
    .requireItem(Item.of("minecraft:ender_pearl", 2))
    .requireItem(Item.of("minecraft:ender_chest", 2))
    .requireItem(Item.of("kubejs:inert_infused_glass", 2))
    .requireItem(Item.of("ironchest:crystal_chest", 1))
    .requireItem(Item.of("minecraft:ender_eye", 2))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('kubejs:dawnstone', 4))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:enrichedglowstoneblock", 2))
    .requireItem(Item.of("kubejs:dawn_essence", 8))
    .requireItem(Item.of("minecraft:glowstone", 3))
    .requireItem(Item.of("minecraft:clock", 2))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('kubejs:duskstone', 4))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:reinforcedobsidian", 2))
    .requireItem(Item.of("kubejs:dusk_essence", 8))
    .requireItem(Item.of("minecraft:obsidian", 3))
    .requireItem(Item.of("minecraft:clock", 2))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:shifting_star'))
    .requireEnergyPerTick(100)
    .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 4000))
    .requireItem(Item.of("kubejs:infused_illumination_powder", 4))
    .requireItem(Item.of("kubejs:infusednocturnalpowder", 4))
    .requireItem(Item.of("kubejs:dusk_essence", 4))
    .requireItem(Item.of("kubejs:inert_infused_glass", 2))
    .requireItem(Item.of("kubejs:briliantdiamond", 2))
    .requireItem(Item.of("extendedcrafting:ender_star", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('kubejs:glimmering_star'))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:infused_illumination_powder", 4))
    .requireItem(Item.of("kubejs:dusk_essence", 4))
    .requireItem(Item.of("kubejs:dawn_essence", 4))
    .requireItem(Item.of("kubejs:netheritestarmetaldust", 4))
    .requireItem(Item.of("astralsorcery:resonating_gem", 4))
    .requireItem(Item.of("astralsorcery:shifting_star", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:colored_lens_push', 2))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:dusk_essence", 4))
    .requireItem(Item.of("minecraft:piston", 8))
    .requireItem(Item.of("astralsorcery:resonating_gem", 4))
    .requireItem(Item.of("kubejs:starmetal_lens", 4))
    .requireItem(Item.of("kubejs:starmetal_reinforced_glass", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:colored_lens_growth', 2))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:dusk_essence", 4))
    .requireItem(Item.of("minecraft:bone_block", 8))
    .requireItem(Item.of("astralsorcery:resonating_gem", 4))
    .requireItem(Item.of("kubejs:starmetal_lens", 4))
    .requireItem(Item.of("kubejs:starmetal_reinforced_glass", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:colored_lens_break', 2))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:dusk_essence", 4))
    .requireItem(Item.of("kubejs:compressed_diamond_pickaxe", 1))
    .requireItem(Item.of("astralsorcery:resonating_gem", 4))
    .requireItem(Item.of("kubejs:starmetal_lens", 4))
    .requireItem(Item.of("kubejs:starmetal_reinforced_glass", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:colored_lens_fire', 2))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:dusk_essence", 4))
    .requireItem(Item.of("kubejs:compressed_flint_and_steel", 1))
    .requireItem(Item.of("astralsorcery:resonating_gem", 4))
    .requireItem(Item.of("kubejs:starmetal_lens", 4))
    .requireItem(Item.of("kubejs:starmetal_reinforced_glass", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:colored_lens_damage', 2))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:dusk_essence", 4))
    .requireItem(Item.of("kubejs:compressed_potion_of_harming", 1))
    .requireItem(Item.of("astralsorcery:resonating_gem", 4))
    .requireItem(Item.of("kubejs:starmetal_lens", 4))
    .requireItem(Item.of("kubejs:starmetal_reinforced_glass", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:colored_lens_regeneration', 2))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:dusk_essence", 4))
    .requireItem(Item.of("kubejs:compressed_potion_of_regeneration", 1))
    .requireItem(Item.of("astralsorcery:resonating_gem", 4))
    .requireItem(Item.of("kubejs:starmetal_lens", 4))
    .requireItem(Item.of("kubejs:starmetal_reinforced_glass", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('portabletanks:ultimate_portable_tank'))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("portabletanks:expert_portable_tank", 4))
    .requireItem(Item.of("kubejs:netheritedust", 8))
    .requireItem(Item.of("kubejs:ancientdust", 4))
    .requireItem(Item.of("kubejs:magmaticobsidian", 4))
    .requireItem(Item.of("kubejs:obsidiandust", 2))
    .requireItem(Item.of("pipez:ultimate_upgrade", 2))
    .requireItem(Item.of("kubejs:netheritestarmetalblock", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('extendedcrafting:crystaltine_ingot', 4))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("kubejs:highly_enriched_illumination_powder", 4))
    .requireItem(Item.of("kubejs:diamonddust", 4))
    .requireItem(Item.of("kubejs:rockcrystaldust", 2))
    .requireItem(Item.of("kubejs:briliantdiamondblock", 2))
    .requireItem(Item.of("minecraft:nether_star", 2))
    .requireItem(Item.of("minecraft:iron_ingot", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('avaritia:crystal_matrix_ingot', 2))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("extendedcrafting:crystaltine_ingot", 4))
    .requireItem(Item.of("avaritia:diamond_lattice", 4))
    .requireItem(Item.of("minecraft:nether_star", 2))
    .requireItem(Item.of("kubejs:celestial_crystal_dust", 2))
    .requireItem(Item.of("extendedcrafting:ender_star", 2))
    .requireItem(Item.of('extendedcrafting:singularity', 1, '{Id:"extendedcrafting:diamond"}'))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('extendedcrafting:frame', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("astralsorcery:colored_lens_spectral", 4))
    .requireItem(Item.of("kubejs:starmetal_reinforced_glass", 8))
    .requireItem(Item.of("kubejs:inert_infused_glass", 4))
    .requireItem(Item.of("extendedcrafting:black_iron_block", 4))
    .requireItem(Item.of("astralsorcery:starmetal", 2))
    .requireItem(Item.of("kubejs:briliantblock", 2))
    .requireItem(Item.of("kubejs:netheritestarmetalblock", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:shifting_star_aevitas', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("astralsorcery:colored_lens_growth", 4))
    .requireItem(Item.of("kubejs:highly_enriched_illumination_powder", 4))
    .requireItem(Item.of("astralsorcery:colored_lens_spectral", 4))
    .requireItem(Item.of("kubejs:infusednocturnalpowder", 4))
    .requireItem(Item.of("kubejs:inert_infused_glass", 4))
    .requireItem(Item.of("kubejs:glimmering_star", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:shifting_star_armara', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("astralsorcery:colored_lens_regeneration", 4))
    .requireItem(Item.of("kubejs:highly_enriched_illumination_powder", 4))
    .requireItem(Item.of("astralsorcery:colored_lens_spectral", 4))
    .requireItem(Item.of("kubejs:infusednocturnalpowder", 4))
    .requireItem(Item.of("kubejs:inert_infused_glass", 4))
    .requireItem(Item.of("kubejs:glimmering_star", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:shifting_star_discidia', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("astralsorcery:colored_lens_damage", 4))
    .requireItem(Item.of("kubejs:highly_enriched_illumination_powder", 4))
    .requireItem(Item.of("astralsorcery:colored_lens_spectral", 4))
    .requireItem(Item.of("kubejs:infusednocturnalpowder", 4))
    .requireItem(Item.of("kubejs:inert_infused_glass", 4))
    .requireItem(Item.of("kubejs:glimmering_star", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:shifting_star_evorsio', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("astralsorcery:colored_lens_break", 4))
    .requireItem(Item.of("kubejs:highly_enriched_illumination_powder", 4))
    .requireItem(Item.of("astralsorcery:colored_lens_spectral", 4))
    .requireItem(Item.of("kubejs:infusednocturnalpowder", 4))
    .requireItem(Item.of("kubejs:inert_infused_glass", 4))
    .requireItem(Item.of("kubejs:glimmering_star", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('astralsorcery:shifting_star_vicio', 1))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("astralsorcery:colored_lens_push", 4))
    .requireItem(Item.of("kubejs:highly_enriched_illumination_powder", 4))
    .requireItem(Item.of("astralsorcery:colored_lens_spectral", 4))
    .requireItem(Item.of("kubejs:infusednocturnalpowder", 4))
    .requireItem(Item.of("kubejs:inert_infused_glass", 4))
    .requireItem(Item.of("kubejs:glimmering_star", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})
onEvent('recipes', event => {
    event.recipes.custommachinery.custom_machine("modpack:astral_assembler", 100)
    .produceItem(Item.of('kubejs:starmetal_reinforced_glass', 2))
    .requireEnergyPerTick(100)
    .requireItem(Item.of("astralsorcery:stardust", 2))
    .requireItem(Item.of("kubejs:star_enriched_illumination_powder", 2))
    .requireItem(Item.of("kubejs:starmetal_lens", 4))
    .requireItem(Item.of("minecraft:glass", 2))
    .requireItem(Item.of("astralsorcery:starmetal", 1))
    .requireItem(Item.of("astralsorcery:altar_radiance", 1))
    .requireFunctionOnStart(ctx => {
        ctx.machine.addItemToSlot("input_altar", Item.of("astralsorcery:altar_radiance", 1), false);
        return Result.success();
    })
    .requireStructure([["aba   aba","bcba abcb","abdeeedba"," aeeeeea ","  eeeee  "," aeeeeea ","abdemedba","bcba abcb","aba   aba"],["         "," f     f ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," f     f ","         "],["         "," h     h ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," h     h ","         "],["         "," i     i ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," i     i ","         "],["         "," j     j ","   ggg   ","  g   g  ","  g   g  ","  g   g  ","   ggg   "," j     j ","         "],["         "," k     k ","   ggg   ","  glllg  ","  glllg  ","  glllg  ","   ggg   "," k     k ","         "],["non   non","ocon noco","nodeeedon"," neeeeen ","  eeeee  "," neeeeen ","nodeeedon","ocon noco","non   non"],["ppp   ppp","pppp pppp","pppaaappp"," paaaaap ","  aaaaa  "," paaaaap ","pppaaappp","pppp pppp","ppp   ppp"]], {"a":"astralsorcery:marble_slab[type=bottom]","b":"astralsorcery:marble_runed","c":"kubejs:infused_gilded_marble","d":"astralsorcery:marble_bricks","e":"astralsorcery:black_marble_bricks","f":"astralsorcery:black_marble_runed","g":"kubejs:white_matter_glass","h":"astralsorcery:black_marble_pillar","i":"astralsorcery:black_marble_pillar","j":"astralsorcery:black_marble_pillar","k":"astralsorcery:black_marble_chiseled","l":"astralsorcery:liquid_starlight[level=0]","n":"astralsorcery:marble_slab[type=top,waterlogged=false]","o":"astralsorcery:marble_chiseled","p":"minecraft:quartz_slab[type=bottom,waterlogged=false]"})
})