Refactor & Restructure