string re-factor