added optional desc arg to copy routines