generators.ET0LTreeGrammar:
( { a, b },
  { h:2, v:2, c:1, a:0, b:0 },
  { {
      a -> v[h[a,a],a],
      a -> v[h[b,a],a],
      a -> v[h[a,b],a],
      a -> v[h[b,b],a],
      a -> v[h[a,a],b],
      a -> v[h[b,a],b],
      a -> v[h[a,b],b],
      a -> v[h[b,b],b],
      b -> v[h[a,a],a],
      b -> v[h[b,a],a],
      b -> v[h[a,b],a],
      b -> v[h[b,b],a],
      b -> v[h[a,a],b],
      b -> v[h[b,a],b],
      b -> v[h[a,b],b],
      b -> v[h[b,b],b]
  } },
  c[a]
)
