                  if (i+value) not in range(length):
                      new_root = old_to_new_root.get(ancestor_i, None)
                      if new_root is not None:
                          # take the same artificial root as a previous token from the same sentence
                          array[i, head_col] = new_root - i
                      else:
                          # set this token as the new artificial root
                          array[i, head_col] = 0
                          old_to_new_root[ancestor_i] = i
  
 
</s> remove                             array[i, head_col] = ancestor_i - i
 </s> add                             array[i, head_col] = numpy.int32(ancestor_i - i).astype(numpy.uint64) </s> remove             values.append([vocab.strings.add(v) for v in value])
    array = numpy.asarray(values, dtype="uint64")
 </s> add             row = [vocab.strings.add(v) for v in value]
        values.append([numpy.array(v, dtype=numpy.int32).astype(numpy.uint64) if v < 0 else v for v in row])
    array = numpy.array(values, dtype=numpy.uint64) </s> remove             values.append([vocab.morphology.add(v) for v in value])
 </s> add             row = [vocab.morphology.add(v) for v in value]
                        array[i, head_col] = numpy.int32(new_root - i).astype(numpy.uint64)
                  if (i+value) not in range(length):
                      new_root = old_to_new_root.get(ancestor_i, None)
                      if new_root is not None:
                          # take the same artificial root as a previous token from the same sentence
                        array[i, head_col] = numpy.int32(new_root - i).astype(numpy.uint64)
                      else:
                          # set this token as the new artificial root
                          array[i, head_col] = 0
                          old_to_new_root[ancestor_i] = i
  
keep keep keep keep replace keep keep keep keep keep
 Cast to uint64 for all array-based doc representations (#11933)

* Convert all individual values explicitly to uint64 for array-based doc representations

* Temporarily test with latest numpy v1.24.0rc

* Remove unnecessary conversion from attr_t

* Reduce number of individual casts

* Convert specifically from int32 to uint64

* Revert "Temporarily test with latest numpy v1.24.0rc"

This reverts commit eb0e3c5006515b9a7ff52bae59484c909b8a3f65.

* Also use int32 in tests 
spacy/tokens/span.pyx