added string-length and substring