generators.ET0LTreeGrammar:
  (
    { proj-1, kite, dart },
    { subst:2, invert:1, proj-1:0, kite:0, dart:0, refine-kite:3, refine-dart:2 },
    {
      {
        proj-1 -> invert[proj-1],
        kite -> refine-kite[dart,kite,kite],
        dart -> refine-dart[kite, dart]
      }
    },
    subst[proj-1,kite]
  )
