copy interface