TileEntity receiver = getTileCache()[getRotation().getOpposite().ordinal()].getTileEntity();
if(receiver instanceof IEnergyReceiver) {
IEnergyReceiver recv = (IEnergyReceiver)receiver;
if(recv.canConnectEnergy(getRotation())) {
int extracted = energy.extractEnergy(rfPerTick * 2, true);
int energyPushed = recv.receiveEnergy(getRotation(), extracted, true);
if(energyPushed > 0) {
recv.receiveEnergy(getRotation(), energy.extractEnergy(energyPushed, false), false);
}
}