Solid State And Liquid State Nanocrystalline Solar Cells On Rigid And Flexible Substrates