code: def get_copy_token(
              self,
              bucket: str,
              key: str,
              cloud_checksum: str,
      ) -> typing.Any:
          
          blob_obj = self._get_blob_obj(bucket, key)
          assert binascii.hexlify(base64.b64decode(blob_obj.crc32c)).decode("utf-8").lower() == cloud_checksum
          return blob_obj.generation
docs: Given a bucket, key, and the expected cloud-provided checksum, retrieve a token that can be passed into
          :func:`~cloud_blobstore.BlobStore.copy` that guarantees the copy refers to the same version of the blob
          identified by the checksum.
          :param bucket: the bucket the object resides in.
          :param key: the key of the object for which checksum is being retrieved.
          :param cloud_checksum: the expected cloud-provided checksum.
          :return: an opaque copy token