procedure_body Swap_Substring ( alters Text& t1, preserves Integer pos, preserves Integer len, alters Text& t2 ) { object Integer n = len; while (n > 0) { object Character c; t1.Remove(pos, c); n--; } n = 0; while (len_t < t2.Length()) { t1.Add(pos, t2[n]); } }