              i = 0
              while self.has_head(head) and i < self.length:
                  head = self.H(head)
                  i += 1 # Guard against infinite loops
          else:
              self._sent[head].l_kids += 1
              self._sent[head].l_edge = self._sent[child].l_edge
  
      cdef void del_arc(self, int h_i, int c_i) nogil:
 
</s> remove             self._sent[head].r_edge = child
 </s> add             # Some transition systems can have a word in the buffer have a
            # rightward child, e.g. from Unshift.
            self._sent[head].r_edge = self._sent[child].r_edge </s> remove                 self._sent[head].r_edge = child
 </s> add 
                self._sent[head].r_edge = self._sent[child].r_edge
              i = 0
              while self.has_head(head) and i < self.length:
                  head = self.H(head)
                self._sent[head].r_edge = self._sent[child].r_edge
                  i += 1 # Guard against infinite loops
          else:
              self._sent[head].l_kids += 1
              self._sent[head].l_edge = self._sent[child].l_edge
  
      cdef void del_arc(self, int h_i, int c_i) nogil:
keep keep add keep keep keep keep keep keep
 * Bug fixes to edge calculation 
spacy/syntax/stateclass.pyx