added light diffraction