multiple fixes
add copy or move functionality
update