# Hierarchy For All Packages

Package Hierarchies:

- net.commoble.jumbofurnace,
- net.commoble.jumbofurnace.advancements,
- net.commoble.jumbofurnace.client,
- net.commoble.jumbofurnace.client.emi,
- net.commoble.jumbofurnace.client.jei,
- net.commoble.jumbofurnace.config,
- net.commoble.jumbofurnace.jumbo_furnace,
- net.commoble.jumbofurnace.recipes

## Class Hierarchy

- java.lang.Object
  - net.minecraft.client.gui.components.events.AbstractContainerEventHandler (implements net.minecraft.client.gui.components.events.ContainerEventHandler)
    - net.minecraft.client.gui.screens.Screen (implements net.minecraft.client.gui.components.Renderable)
      - net.minecraft.client.gui.screens.inventory.AbstractContainerScreen<T> (implements net.minecraft.client.gui.screens.inventory.MenuAccess<T>)
        - net.commoble.jumbofurnace.client.JumboFurnaceScreen
  - net.minecraft.world.inventory.AbstractContainerMenu
    - net.commoble.jumbofurnace.jumbo_furnace.JumboFurnaceMenu
  - net.neoforged.neoforge.attachment.AttachmentHolder (implements net.neoforged.neoforge.attachment.IAttachmentHolder)
    - net.minecraft.world.level.block.entity.BlockEntity (implements net.neoforged.neoforge.common.extensions.IBlockEntityExtension)
      - net.commoble.jumbofurnace.jumbo_furnace.JumboFurnaceCoreBlockEntity
      - net.commoble.jumbofurnace.jumbo_furnace.JumboFurnaceExteriorBlockEntity
  - net.minecraft.world.level.block.state.BlockBehaviour (implements net.minecraft.world.flag.FeatureElement)
    - net.minecraft.world.level.block.Block (implements net.neoforged.neoforge.common.extensions.IBlockExtension, net.minecraft.world.level.ItemLike)
      - net.commoble.jumbofurnace.jumbo_furnace.JumboFurnaceBlock (implements net.minecraft.world.level.block.EntityBlock)
  - net.commoble.jumbofurnace.client.ClientProxy
  - net.neoforged.neoforge.resource.ContextAwareReloadListener (implements net.minecraft.server.packs.resources.PreparableReloadListener)
    - net.minecraft.server.packs.resources.SimplePreparableReloadListener<T> (implements net.minecraft.server.packs.resources.PreparableReloadListener)
      - net.commoble.jumbofurnace.recipes.RecipeSorter
  - net.commoble.jumbofurnace.client.emi.EmiProxy
  - net.commoble.jumbofurnace.jumbo_furnace.ExternalItemHandler (implements net.neoforged.neoforge.items.IItemHandler)
  - net.commoble.jumbofurnace.recipes.InFlightRecipe
  - net.minecraft.world.item.Item (implements net.minecraft.world.flag.FeatureElement, net.neoforged.neoforge.common.extensions.IItemExtension, net.minecraft.world.level.ItemLike)
    - net.commoble.jumbofurnace.jumbo_furnace.JumboFurnaceItem
  - net.neoforged.neoforge.items.ItemStackHandler (implements net.neoforged.neoforge.items.IItemHandler, net.neoforged.neoforge.items.IItemHandlerModifiable, net.neoforged.neoforge.common.util.INBTSerializable<T>)
    - net.commoble.jumbofurnace.jumbo_furnace.FuelItemHandler
    - net.commoble.jumbofurnace.jumbo_furnace.InputItemHandler
    - net.commoble.jumbofurnace.jumbo_furnace.MultiprocessUpgradeHandler
    - net.commoble.jumbofurnace.jumbo_furnace.OutputItemHandler
    - net.commoble.jumbofurnace.jumbo_furnace.UninsertableItemStackHandler
  - net.commoble.jumbofurnace.client.jei.JEIProxy
  - net.commoble.jumbofurnace.JumboFurnace
  - net.commoble.jumbofurnace.jumbo_furnace.JumboFurnaceItem.Settable
  - net.commoble.jumbofurnace.jumbo_furnace.JumboFurnaceSyncData (implements net.minecraft.world.inventory.ContainerData)
  - net.commoble.jumbofurnace.client.jei.JumboFurnaceUpgradeCategory
  - net.commoble.jumbofurnace.JumboFurnaceUtils
  - net.commoble.jumbofurnace.client.jei.JumboSmeltingCategory
  - net.commoble.jumbofurnace.jumbo_furnace.MultiBlockHelper
  - net.commoble.jumbofurnace.Names
  - net.minecraft.advancements.critereon.SimpleCriterionTrigger<T> (implements net.minecraft.advancements.CriterionTrigger<T>)
    - net.commoble.jumbofurnace.advancements.AssembleJumboFurnaceTrigger
    - net.commoble.jumbofurnace.advancements.UpgradeJumboFurnaceTrigger
  - net.minecraft.world.inventory.Slot
    - net.neoforged.neoforge.items.SlotItemHandler
      - net.commoble.jumbofurnace.jumbo_furnace.JumboFurnaceFuelSlot
      - net.commoble.jumbofurnace.jumbo_furnace.JumboFurnaceOutputSlot
      - net.commoble.jumbofurnace.jumbo_furnace.MultiprocessUpgradeHandler.MultiprocessUpgradeSlotHandler

## Record Class Hierarchy

- java.lang.Object
  - java.lang.Record
    - net.commoble.jumbofurnace.advancements.AssembleJumboFurnaceTrigger.Criterion (implements net.minecraft.advancements.critereon.SimpleCriterionTrigger.SimpleInstance)
    - net.commoble.jumbofurnace.config.ConfigHelper
    - net.commoble.jumbofurnace.recipes.InFlightRecipeSyncPacket (implements net.minecraft.network.protocol.common.custom.CustomPacketPayload)
    - net.commoble.jumbofurnace.recipes.JumboFurnaceRecipe (implements net.minecraft.world.item.crafting.Recipe<T>)
    - net.commoble.jumbofurnace.client.emi.JumboSmeltingEmiRecipe
    - net.commoble.jumbofurnace.config.ServerConfig
    - net.commoble.jumbofurnace.recipes.SimpleRecipeSerializer<INPUT,RECIPE> (implements net.minecraft.world.item.crafting.RecipeSerializer<T>)
    - net.commoble.jumbofurnace.advancements.UpgradeJumboFurnaceTrigger.Criterion (implements net.minecraft.advancements.critereon.SimpleCriterionTrigger.SimpleInstance)