Added new files
Removed duplicate code