          for _ in self.train_tuples:
              n += 1
          return n
  
      def train_docs(self, nlp, shuffle=0, gold_preproc=True):
          if shuffle:
              random.shuffle(self.train_locs)
          gold_docs = self.iter_gold_docs(nlp, self.train_tuples, gold_preproc)
          if shuffle:
              gold_docs = util.itershuffle(gold_docs, bufsize=shuffle*1000)
 
</s> remove         gold_docs = self.iter_gold_docs(nlp, self.train_tuples, gold_preproc)
 </s> add         if projectivize:
            train_tuples = nonproj.PseudoProjectivity.preprocess_training_data(
                               self.train_tuples)
        gold_docs = self.iter_gold_docs(nlp, train_tuples, gold_preproc) </s> remove def read_json_file(loc, docs_filter=None, limit=None):
 </s> add def read_json_file(loc, docs_filter=None, limit=1000): </s> remove         tuples = nonproj.PseudoProjectivity.preprocess_training_data(tuples)
 </s> add  </s> remove             gold.heads, gold.labels = PseudoProjectivity.projectivize(
                                        gold.heads, gold.labels)
 </s> add  </s> remove         while todo:
 </s> add         while len(todo) >= 3:
    def train_docs(self, nlp, shuffle=0, gold_preproc=True,
                   projectivize=False):
          for _ in self.train_tuples:
              n += 1
          return n
  
    def train_docs(self, nlp, shuffle=0, gold_preproc=True,
                   projectivize=False):
          if shuffle:
              random.shuffle(self.train_locs)
          gold_docs = self.iter_gold_docs(nlp, self.train_tuples, gold_preproc)
          if shuffle:
              gold_docs = util.itershuffle(gold_docs, bufsize=shuffle*1000)
keep keep keep keep replace keep keep keep keep keep
 Fix handling of non-projective deps 
spacy/gold.pyx