added energy transfer stuff