add string extraction functions