added string parsing(i think)