use the right copy constructor

avoids using too much memory