      def to_dict(self):
          return {"ids": self.ids,
                  "words": self.words,
                  "tags": self.tags,
                  "heads": self.heads,
                  "deps": self.deps,
                  "entities": self.entities,
                  "sent_starts": self.sent_starts,
                  "brackets": self.brackets}
  
 
</s> remove                 "morphs": self.morphs,
                "lemmas": self.lemmas,
 </s> add  </s> remove                    morphs=token_dict.get("morphs", None),
                   lemmas=token_dict.get("lemmas", None),
 </s> add  </s> remove     def get_morph(self, i):
        return self.morphs[i] if i < len(self.morphs) else set()

    def get_lemma(self, i):
        return self.lemmas[i] if i < len(self.lemmas) else ""

 </s> add  </s> remove                 json_token["lemma"] = token.lemma_
 </s> add 
                "pos": self.pos,
                "morphs": self.morphs,
                "lemmas": self.lemmas,
      def to_dict(self):
          return {"ids": self.ids,
                  "words": self.words,
                  "tags": self.tags,
                "pos": self.pos,
                "morphs": self.morphs,
                "lemmas": self.lemmas,
                  "heads": self.heads,
                  "deps": self.deps,
                  "entities": self.entities,
                  "sent_starts": self.sent_starts,
                  "brackets": self.brackets}
  
keep keep keep add keep keep keep keep keep keep
 Add support for pos/morphs/lemmas in training data (#4941)

Add support for pos/morphs/lemmas throughout `GoldParse`, `Example`, and
`docs_to_json()`. 
spacy/gold.pyx