What are the two conditions necessary for the formation of rainbow in the sky?