added string splitting functions