refactoring and comments code
commenting code