Cleaned and Improved
 - Cleaned the code and improved it