rewrite of string builder started