introduce CIM*::copy()