implémente assign