work on how power is generated