updated string corner cases