# Hierarchy For All Packages

Package Hierarchies:

- commoble.morered,
- commoble.morered.api,
- commoble.morered.api.internal,
- commoble.morered.bitwise_logic,
- commoble.morered.client,
- commoble.morered.client.jei,
- commoble.morered.gatecrafting_plinth,
- commoble.morered.mixin,
- commoble.morered.plate_blocks,
- commoble.morered.util,
- commoble.morered.wire_post,
- commoble.morered.wires

## Class Hierarchy

- java.lang.Object
  - net.minecraft.world.inventory.AbstractContainerMenu
    - commoble.morered.gatecrafting_plinth.GatecraftingMenu
  - commoble.morered.api.internal.APIRegistries
  - net.minecraftforge.client.model.BakedModelWrapper<T> (implements net.minecraft.client.resources.model.BakedModel)
    - commoble.morered.client.WirePartModelLoader.MultipartWireModel
  - commoble.morered.BlockAndBlockItem<B,I>
  - net.minecraft.world.level.block.state.BlockBehaviour
    - net.minecraft.world.level.block.Block (implements net.minecraftforge.common.extensions.IForgeBlock, net.minecraft.world.level.ItemLike)
      - commoble.morered.wire_post.AbstractPostBlock
        - commoble.morered.wire_post.AbstractChanneledCablePostBlock
          - commoble.morered.wire_post.BundledCablePostBlock (implements net.minecraft.world.level.block.EntityBlock)
          - commoble.morered.wire_post.BundledCableRelayPlateBlock (implements net.minecraft.world.level.block.EntityBlock)
        - commoble.morered.wire_post.AbstractPoweredWirePostBlock (implements net.minecraft.world.level.block.EntityBlock)
          - commoble.morered.wire_post.WirePostBlock
          - commoble.morered.wire_post.WirePostPlateBlock
      - commoble.morered.wires.AbstractWireBlock
        - commoble.morered.wires.BundledCableBlock (implements net.minecraft.world.level.block.EntityBlock)
        - commoble.morered.wires.PoweredWireBlock (implements net.minecraft.world.level.block.EntityBlock)
          - commoble.morered.wires.ColoredCableBlock
          - commoble.morered.wires.RedAlloyWireBlock
      - commoble.morered.gatecrafting_plinth.GatecraftingPlinthBlock
      - commoble.morered.HexidecrubrometerBlock
      - commoble.morered.plate_blocks.PlateBlock
        - commoble.morered.bitwise_logic.BitwiseLogicPlateBlock (implements net.minecraft.world.level.block.EntityBlock)
          - commoble.morered.bitwise_logic.SingleInputBitwiseLogicPlateBlock
          - commoble.morered.bitwise_logic.TwoInputBitwiseLogicPlateBlock
        - commoble.morered.plate_blocks.RedstonePlateBlock
          - commoble.morered.plate_blocks.LatchBlock
          - commoble.morered.plate_blocks.LogicFunctionPlateBlock
  - commoble.morered.util.BlockStateUtil
  - commoble.morered.wires.BundledCableBlockEntity.SidedPowerSupplier (implements commoble.morered.api.ChanneledPowerSupplier)
  - commoble.morered.client.BundledCablePostRenderer (implements net.minecraft.client.renderer.blockentity.BlockEntityRenderer<T>)
  - com.google.common.cache.CacheLoader<K,V>
    - commoble.morered.wires.VoxelCache.VoxelLoader
  - net.minecraftforge.common.capabilities.CapabilityProvider<B> (implements net.minecraftforge.common.capabilities.ICapabilityProviderImpl<B>)
    - net.minecraft.world.level.block.entity.BlockEntity (implements net.minecraftforge.common.extensions.IForgeBlockEntity)
      - commoble.morered.wires.BundledCableBlockEntity
      - commoble.morered.bitwise_logic.ChanneledPowerStorageBlockEntity (implements commoble.morered.api.ChanneledPowerSupplier)
      - commoble.morered.wires.WireBlockEntity
        - commoble.morered.wires.ColoredCableBlockEntity
      - commoble.morered.wire_post.WirePostBlockEntity
        - commoble.morered.wire_post.BundledCablePostBlockEntity
          - commoble.morered.wire_post.BundledCableRelayPlateBlockEntity (implements commoble.morered.api.ChanneledPowerSupplier)
  - commoble.morered.util.ClassHelper
  - commoble.morered.client.ClientEvents
  - commoble.morered.client.ClientPacketHandlers
  - commoble.morered.client.ClientProxy
  - commoble.morered.wires.ColoredCableBlockEntity.SidedPowerSupplier (implements commoble.morered.api.ChanneledPowerSupplier)
  - commoble.morered.client.ColorHandlers
  - commoble.morered.util.ConfigHelper
  - commoble.morered.api.internal.DefaultWireProperties
  - commoble.morered.util.DirectionHelper
  - commoble.morered.client.EdgeRotation
  - net.minecraft.world.phys.shapes.EntityCollisionContext (implements net.minecraft.world.phys.shapes.CollisionContext)
    - commoble.morered.wire_post.WireRayTraceSelectionContext
  - commoble.morered.client.FaceRotation (implements net.minecraft.client.resources.model.ModelState)
  - commoble.morered.wire_post.FakeStateLevel (implements net.minecraft.world.level.BlockGetter)
  - commoble.morered.client.jei.GatecraftingCategory
  - commoble.morered.gatecrafting_plinth.GatecraftingRecipeButtonPacket
  - net.minecraft.client.gui.GuiComponent
    - 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.Widget)
        - net.minecraft.client.gui.screens.inventory.AbstractContainerScreen<T> (implements net.minecraft.client.gui.screens.inventory.MenuAccess<T>)
          - commoble.morered.client.GatecraftingScreen
      - net.minecraftforge.client.gui.widget.ScrollPanel (implements net.minecraft.client.gui.narration.NarratableEntry, net.minecraft.client.gui.components.Widget)
        - commoble.morered.client.GatecraftingScreen.GatecraftingScrollPanel (implements net.minecraft.client.gui.components.events.GuiEventListener)
    - net.minecraft.client.gui.components.AbstractWidget (implements net.minecraft.client.gui.components.events.GuiEventListener, net.minecraft.client.gui.narration.NarratableEntry, net.minecraft.client.gui.components.Widget)
      - net.minecraft.client.gui.components.AbstractButton
        - net.minecraft.client.gui.components.Button
          - net.minecraftforge.client.gui.widget.ExtendedButton
            - commoble.morered.client.GatecraftingScreen.RecipeButton
  - net.minecraft.world.item.crafting.Ingredient.TagValue (implements net.minecraft.world.item.crafting.Ingredient.Value)
    - commoble.morered.TagStackIngredient.TagCountValue
  - net.minecraft.world.item.Item (implements net.minecraftforge.common.extensions.IForgeItem, net.minecraft.world.level.ItemLike)
    - net.minecraft.world.item.BlockItem
      - commoble.morered.wires.WireBlockItem
    - commoble.morered.wire_post.WireSpoolItem
  - commoble.morered.client.jei.JEIProxy
  - commoble.morered.plate_blocks.LogicFunctions
  - net.minecraft.client.renderer.block.ModelBlockRenderer
    - commoble.morered.client.BlockPreviewRenderer
  - commoble.morered.MoreRed
  - commoble.morered.MoreRed.Tags
  - commoble.morered.MoreRed.Tags.Blocks
  - commoble.morered.MoreRed.Tags.Items
  - commoble.morered.api.MoreRedAPI
  - commoble.morered.util.NBTListCodec<ENTRY,RAW>
  - commoble.morered.util.NBTListCodec.ListTagType<T>
  - commoble.morered.util.NestedBoundingBox
  - commoble.morered.ObjectNames
  - commoble.morered.PacketTypeFactory
  - commoble.morered.plate_blocks.PlateBlockStateProperties
  - commoble.morered.wire_post.PostsInChunk (implements net.minecraftforge.common.capabilities.ICapabilityProvider, net.minecraftforge.common.util.INBTSerializable<T>)
  - java.lang.Record
    - commoble.morered.client.ClientConfig
    - commoble.morered.ServerConfig
  - net.minecraft.client.renderer.RenderStateShard
    - commoble.morered.client.ExtraRenderTypes
  - net.minecraft.world.level.saveddata.SavedData
    - commoble.morered.wires.VoxelCache
    - commoble.morered.wires.WireUpdateBuffer
  - net.minecraft.world.item.crafting.ShapelessRecipe (implements net.minecraft.world.item.crafting.CraftingRecipe)
    - commoble.morered.gatecrafting_plinth.GatecraftingRecipe
  - net.minecraft.world.item.crafting.ShapelessRecipe.Serializer (implements net.minecraft.world.item.crafting.RecipeSerializer<T>)
    - commoble.morered.gatecrafting_plinth.GatecraftingRecipeSerializer
  - net.minecraftforge.client.model.geometry.SimpleUnbakedGeometry<T> (implements net.minecraftforge.client.model.geometry.IUnbakedGeometry<T>)
    - commoble.morered.client.TintRotatingModelLoader.TintRotatingModelGeometry
  - commoble.morered.wire_post.SlackInterpolator
  - net.minecraft.world.inventory.Slot
    - commoble.morered.gatecrafting_plinth.GatecraftingResultSlot
  - commoble.morered.wire_post.SyncPostsInChunkPacket
  - commoble.morered.TagStackIngredient
  - commoble.morered.client.TintRotatingModelLoader (implements net.minecraftforge.client.model.geometry.IGeometryLoader<T>)
  - commoble.morered.client.TintRotatingModelLoader.TintRotatingModelBuilder (implements net.minecraftforge.client.model.IModelBuilder<T>)
  - commoble.morered.wire_post.WireBreakPacket
  - commoble.morered.wires.WireCountLootFunction (implements net.minecraft.world.level.storage.loot.functions.LootItemFunction, net.minecraft.world.level.storage.loot.Serializer<T>)
  - commoble.morered.client.WirePartModelLoader (implements net.minecraftforge.client.model.geometry.IGeometryLoader<T>)
  - commoble.morered.client.WirePartModelLoader.WireModelData
  - commoble.morered.client.WirePartModelLoader.WirePartGeometry (implements net.minecraftforge.client.model.geometry.IUnbakedGeometry<T>)
  - commoble.morered.client.WirePartModelLoader.WirePartModel (implements net.minecraftforge.client.model.IDynamicBakedModel)
  - commoble.morered.client.WirePostRenderer (implements net.minecraft.client.renderer.blockentity.BlockEntityRenderer<T>)
  - commoble.morered.wire_post.WireRayTraceContext
  - commoble.morered.wires.WireUpdatePacket (implements java.util.function.Consumer<T>)
  - commoble.morered.api.internal.WireVoxelHelpers
  - commoble.morered.util.WorldHelper

## Interface Hierarchy

- commoble.morered.api.ChanneledPowerSupplier
- commoble.morered.mixin.ClientElementsModelAccess
- commoble.morered.api.ExpandedPowerSupplier
- commoble.morered.plate_blocks.LogicFunction
- commoble.morered.plate_blocks.LogicFunctionPlateBlock.LogicFunctionPlateBlockFactory
- commoble.morered.mixin.MultiPlayerGameModeAccess
- commoble.morered.util.NBTListCodec.ListReader<T>
- commoble.morered.api.WireConnector

## Enum Class Hierarchy

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.lang.constant.Constable, java.io.Serializable)
    - commoble.morered.wires.Edge
    - commoble.morered.plate_blocks.InputSide
    - commoble.morered.plate_blocks.InputState