Understanding and generating language with Abstract Meaning Representation