Continue refactoring. To Be Continued [Stable]