DW: Added filename and extenstion
DW: Code refactor
DW: Code refactoring
UK: replace tabs with spaces