fix assignment operator