copy/copyn/copyif now conform to new structure