refactored storage