Both inorganic and organic electron donors are used.