refactor (string)