light version, boost is needed to clone separately