Added more info & refactored the code