boud suitable for export too
added redefine.clone