not-yet-working assignment operator