Refactored original code
modified gitignore0