generators.ET0LTreeGrammar("with delay"):
(
  { S1, S2, S3, S4, S5, S6, S7, S8, S9, T },
  { sp:3, 2sp:3, square:0 },
  {
    {
      S1 -> 2sp[S9, T, T],
      S9 -> S8,
      S8 -> S7,
      S7 -> S6,
      S6 -> S5,
      S5 -> S4,
      S4 -> S3,
      S3 -> S2,
      S2 -> S1,
      T -> sp[S9, S8, T]
    },
    {
      S1 -> square,
      S9 -> square,
      S8 -> square,
      S7 -> square,
      S6 -> square,
      S5 -> square,
      S4 -> square,
      S3 -> square,
      S2 -> square,
      T -> square
    }
  },
  S1
)
