this is copied article from anshul techmoon