Refactored all current methods