refactoring & string value types