deriveSafeCopy