code: def _finalize_block_blob(self, sd, metadata, digest):
          # type: (SyncCopy, blobxfer.models.synccopy.Descriptor, dict,
          #        str) -> None
          
          blobxfer.operations.azure.blob.block.put_block_list(
              sd.dst_entity, sd.last_block_num, digest, metadata)
          if blobxfer.util.is_not_empty(sd.dst_entity.replica_targets):
              for ase in sd.dst_entity.replica_targets:
                  blobxfer.operations.azure.blob.block.put_block_list(
                      ase, sd.last_block_num, digest, metadata)
docs: Finalize Block blob
          :param SyncCopy self: this
          :param blobxfer.models.synccopy.Descriptor sd: synccopy descriptor
          :param dict metadata: metadata dict
          :param str digest: md5 digest