source string handling