refactored to String