Improvements & Refactoring