template Sequence_2& Sequence_2::operator = (preserves Sequence_2& rhs) // produces self // post: self = rhs { if (head == NULL) { rhs.head = head; } else { variable Node p, temp; variable Integer i; p = head; rhs.head = p; while (p->next != NULL) { p = p->next; rhs.Add (i, p->value); i++; } // end for return (rhs); } // end if } // operator =