public void readFromNBT(NBTTagCompound compound) {
    super.readFromNBT(compound);
    NBTTagList var2 = compound.getTagList("Items", 10);
    this.furnaceItemStacks = new ItemStack[this.getSizeInventory()];

    for (int var3 = 0; var3 < var2.tagCount(); ++var3) {
      NBTTagCompound var4 = var2.getCompoundTagAt(var3);
      byte var5 = var4.getByte("Slot");

      if (var5 >= 0 && var5 < this.furnaceItemStacks.length) {
        this.furnaceItemStacks[var5] = ItemStack.loadItemStackFromNBT(var4);
      }
    }

    this.furnaceBurnTime = compound.getShort("BurnTime");
    this.field_174906_k = compound.getShort("CookTime");
    this.field_174905_l = compound.getShort("CookTimeTotal");
    this.currentItemBurnTime = getItemBurnTime(this.furnaceItemStacks[1]);

    if (compound.hasKey("CustomName", 8)) {
      this.furnaceCustomName = compound.getString("CustomName");
    }
  }