minor optimization to avoid some string work when unnecessary