changed approach added answers and comments
changed approach added answers and comments