// output of ./demo/comb/catalan-rgs-gslex-demo.cc:
// Description:
//% Catalan restricted growth strings (RGS):
//% strings a[0,1,...,n-1] where a[0]=0 and a[k] <= a[k-1] + 1.
//% Ordering similar to gslex (and subset-lex) order.
//% Loopless algorithm.

arg 1: 5 == n  [Number of paren pairs]  default=5
   1:    [ . . . . 1 ]   4    1.1.1.11..    [ . 1 . . . ]    11..1.1.1.
   2:    [ . . . 1 1 ]   4    1.1.11.1..    [ . 1 1 . . ]    11.1..1.1.
   3:    [ . . . 1 2 ]   4    1.1.111...    [ . 1 2 . . ]    111...1.1.
   4:    [ . . . 1 . ]   3    1.1.11..1.    [ . . 1 . . ]    1.11..1.1.
   5:    [ . . 1 . 1 ]   4    1.11..11..    [ . 1 . 1 . ]    11..11..1.
   6:    [ . . 1 1 1 ]   4    1.11.1.1..    [ . 1 1 1 . ]    11.1.1..1.
   7:    [ . . 1 1 2 ]   4    1.11.11...    [ . 1 2 1 . ]    111..1..1.
   8:    [ . . 1 1 . ]   3    1.11.1..1.    [ . . 1 1 . ]    1.11.1..1.
   9:    [ . . 1 2 1 ]   4    1.111..1..    [ . 1 1 2 . ]    11.11...1.
  10:    [ . . 1 2 2 ]   4    1.111.1...    [ . 1 2 2 . ]    111.1...1.
  11:    [ . . 1 2 3 ]   4    1.1111....    [ . 1 2 3 . ]    1111....1.
  12:    [ . . 1 2 . ]   3    1.111...1.    [ . . 1 2 . ]    1.111...1.
  13:    [ . . 1 . . ]   2    1.11..1.1.    [ . . . 1 . ]    1.1.11..1.
  14:    [ . 1 . . 1 ]   4    11..1.11..    [ . 1 . . 1 ]    11..1.11..
  15:    [ . 1 . 1 1 ]   4    11..11.1..    [ . 1 1 . 1 ]    11.1..11..
  16:    [ . 1 . 1 2 ]   4    11..111...    [ . 1 2 . 1 ]    111...11..
  17:    [ . 1 . 1 . ]   3    11..11..1.    [ . . 1 . 1 ]    1.11..11..
  18:    [ . 1 1 . 1 ]   4    11.1..11..    [ . 1 . 1 1 ]    11..11.1..
  19:    [ . 1 1 1 1 ]   4    11.1.1.1..    [ . 1 1 1 1 ]    11.1.1.1..
  20:    [ . 1 1 1 2 ]   4    11.1.11...    [ . 1 2 1 1 ]    111..1.1..
  21:    [ . 1 1 1 . ]   3    11.1.1..1.    [ . . 1 1 1 ]    1.11.1.1..
  22:    [ . 1 1 2 1 ]   4    11.11..1..    [ . 1 1 2 1 ]    11.11..1..
  23:    [ . 1 1 2 2 ]   4    11.11.1...    [ . 1 2 2 1 ]    111.1..1..
  24:    [ . 1 1 2 3 ]   4    11.111....    [ . 1 2 3 1 ]    1111...1..
  25:    [ . 1 1 2 . ]   3    11.11...1.    [ . . 1 2 1 ]    1.111..1..
  26:    [ . 1 1 . . ]   2    11.1..1.1.    [ . . . 1 1 ]    1.1.11.1..
  27:    [ . 1 2 . 1 ]   4    111...11..    [ . 1 . 1 2 ]    11..111...
  28:    [ . 1 2 1 1 ]   4    111..1.1..    [ . 1 1 1 2 ]    11.1.11...
  29:    [ . 1 2 1 2 ]   4    111..11...    [ . 1 2 1 2 ]    111..11...
  30:    [ . 1 2 1 . ]   3    111..1..1.    [ . . 1 1 2 ]    1.11.11...
  31:    [ . 1 2 2 1 ]   4    111.1..1..    [ . 1 1 2 2 ]    11.11.1...
  32:    [ . 1 2 2 2 ]   4    111.1.1...    [ . 1 2 2 2 ]    111.1.1...
  33:    [ . 1 2 2 3 ]   4    111.11....    [ . 1 2 3 2 ]    1111..1...
  34:    [ . 1 2 2 . ]   3    111.1...1.    [ . . 1 2 2 ]    1.111.1...
  35:    [ . 1 2 3 1 ]   4    1111...1..    [ . 1 1 2 3 ]    11.111....
  36:    [ . 1 2 3 2 ]   4    1111..1...    [ . 1 2 2 3 ]    111.11....
  37:    [ . 1 2 3 3 ]   4    1111.1....    [ . 1 2 3 3 ]    1111.1....
  38:    [ . 1 2 3 4 ]   4    11111.....    [ . 1 2 3 4 ]    11111.....
  39:    [ . 1 2 3 . ]   3    1111....1.    [ . . 1 2 3 ]    1.1111....
  40:    [ . 1 2 . . ]   2    111...1.1.    [ . . . 1 2 ]    1.1.111...
  41:    [ . 1 . . . ]   1    11..1.1.1.    [ . . . . 1 ]    1.1.1.11..
  42:    [ . . . . . ]   0    1.1.1.1.1.    [ . . . . . ]    1.1.1.1.1.
 ct=42
