we should add move assignment for consistency