+/*
+** In C, array terms appear backwards:
+**
+** int a[5][7]
+**
+** declares an array of 5 elements, each of which is
+** an array of 7 int's.
+**
+** We represent this as,
+**
+** array (array (int, 7), 5)
+**
+** Hence, the rightmost declaration is the innermost type.
+*/
+