These bifunctional proteins fuse N-terminal cytochrome p450 with a cytochrome p450 reductase (CYPOR). NADPH cytochrome p450 reductase serves as an electron donor in several oxygenase systems and is a component of nitric oxide synthases and methionine synthase reductases. CYPOR transfers two electrons from NADPH to the heme of cytochrome p450 via FAD and FMN. Ferredoxin-NADP+ (oxido)reductase is an FAD-containing enzyme that catalyzes the reversible electron transfer between NADP(H) and electron carrier proteins such as ferredoxin and flavodoxin. Isoforms of these flavoproteins (i.e. having a non-covalently bound FAD as a prosthetic group) are present in chloroplasts, mitochondria, and bacteria in which they participate in a wide variety of redox metabolic pathways. The C-terminal domain contains most of the NADP(H) binding residues and the N-terminal domain interacts non-covalently with the isoalloxazine rings of the flavin molecule which lies largely in a large gap betweed the two domains. Ferredoxin-NADP+ reductase first accepts one electron from reduced ferredoxin to form a flavin semiquinone intermediate. The enzyme then accepts a second electron to form FADH2 which then transfers two electrons and a proton to NADP+ to form NADPH.