string refactoring
add application state