// Path: src/main/java/cn/academy/energy/api/block/IWirelessGenerator.java
// public interface IWirelessGenerator extends IWirelessUser {
// 
//     /**
//      * @param req How much energy is required
//      * @return How much energy this generator can provide. Must be guaranteed 0<=ret<=req
//      */
//     public double getProvidedEnergy(double req);
// 
//     /**
//      * @return Max energy transmitted each tick
//      */
//     public double getBandwidth();
// 
// }
// 
// Path: src/main/java/infstudio/exoticpower/item/ItemEnergyContainer.java
// public class ItemEnergyContainer extends Item {
// 
//     public ItemEnergyContainer() {
//         this.setCreativeTab(ExoticPower.ept);
//         EPItems.itemList.add(this);
//     }
// 
// }


import cn.academy.energy.api.block.IWirelessGenerator;
import infstudio.exoticpower.item.ItemEnergyContainer;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.item.*;
            if (item == Item.getItemFromBlock(Blocks.sapling)) return 100;
            if (item == Items.blaze_rod) return 2400;
            return net.minecraftforge.fml.common.registry.GameRegistry.getFuelValue(p_145952_0_);
        }
    }

    @Override
    public void update() {
        if (this.isBurning() && this.energy < this.capacity) {
            --this.furnaceBurnTime;
            ++this.energy;
        } else {
            if (this.energy < this.capacity) {
                ItemStack burnItem = this.getStackInSlot(1);
                int getBurnTime = this.getItemBurnTime(burnItem);
                if (getBurnTime > 0) {
                    this.furnaceBurnTime = getBurnTime;
                    this.currentItemBurnTime = getBurnTime;
                    if (burnItem.stackSize - 1 > 0) {
                        burnItem.stackSize--;
                        setInventorySlotContents(1, burnItem);
                    } else {
                        setInventorySlotContents(1, null);
                    }
                }
            }
        }

        ItemStack energyItem = this.getStackInSlot(0);
        if (energyItem != null) {
// Path: src/main/java/cn/academy/energy/api/block/IWirelessGenerator.java
// public interface IWirelessGenerator extends IWirelessUser {
// 
//     /**
//      * @param req How much energy is required
//      * @return How much energy this generator can provide. Must be guaranteed 0<=ret<=req
//      */
//     public double getProvidedEnergy(double req);
// 
//     /**
//      * @return Max energy transmitted each tick
//      */
//     public double getBandwidth();
// 
// }
// 
// Path: src/main/java/infstudio/exoticpower/item/ItemEnergyContainer.java
// public class ItemEnergyContainer extends Item {
// 
//     public ItemEnergyContainer() {
//         this.setCreativeTab(ExoticPower.ept);
//         EPItems.itemList.add(this);
//     }
// 
// }


// Path: src/main/java/infstudio/exoticpower/tileentity/TileEntityElementGenerator.java
import cn.academy.energy.api.block.IWirelessGenerator;
import infstudio.exoticpower.item.ItemEnergyContainer;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.item.*;

            if (item == Item.getItemFromBlock(Blocks.sapling)) return 100;
            if (item == Items.blaze_rod) return 2400;
            return net.minecraftforge.fml.common.registry.GameRegistry.getFuelValue(p_145952_0_);
        }
    }

    @Override
    public void update() {
        if (this.isBurning() && this.energy < this.capacity) {
            --this.furnaceBurnTime;
            ++this.energy;
        } else {
            if (this.energy < this.capacity) {
                ItemStack burnItem = this.getStackInSlot(1);
                int getBurnTime = this.getItemBurnTime(burnItem);
                if (getBurnTime > 0) {
                    this.furnaceBurnTime = getBurnTime;
                    this.currentItemBurnTime = getBurnTime;
                    if (burnItem.stackSize - 1 > 0) {
                        burnItem.stackSize--;
                        setInventorySlotContents(1, burnItem);
                    } else {
                        setInventorySlotContents(1, null);
                    }
                }
            }
        }

        ItemStack energyItem = this.getStackInSlot(0);
        if (energyItem != null) {
            if (energyItem.getItem() != null && energyItem.getItem() instanceof ItemEnergyContainer && this.energy > 0 && energyItem.getItemDamage() > 0) {