generators.ET0LTreeGrammar("DT0L grammar"):
  ( { S, A, B, SQ },
    { F:4, F2:3, c1:1, c2:1, c3:1, .:2, G:4, l:1, m:1, d:1, S:0, A:0, B:0, SQ:0 },
    {
      {
        S -> F[c1[S],c2[SQ],c3[A],c3[S]],
        A -> F2[c1[A],c2[SQ],c3[A]],
        B -> G[d[B],m[B],m[B],l[B]]
      }
    },
    (B . S)
  )
