generators.ET0LTreeGrammar("with delay"):
(
  { FERN1, FERN2, FERN3, FERN4, FERN5, FERN6, FERN7 },
  { fern:3, rect:0 },
  {
    {
      FERN1 -> fern[FERN1, FERN7, FERN6],
      FERN2 -> FERN1,
      FERN3 -> FERN2,
      FERN4 -> FERN3,
      FERN5 -> FERN4,
      FERN6 -> FERN5,
      FERN7 -> FERN6
    },
    {
      FERN1 -> rect,
      FERN2 -> rect,
      FERN3 -> rect,
      FERN4 -> rect,
      FERN5 -> rect,
      FERN6 -> rect,
      FERN7 -> rect
    }
  },
  FERN1
)
