Using move assignment on matrices doesn't do a cleanup of a previous id. This results in id collisions.