#include<bits/stdc++.h>
using namespace std;
int a[200005],ans[200005];
inline int read()
{
char c;
c = getchar();
int sum=0;
while(c>='0'&&c<='9')
{
sum = sum * 10 + c - '0';
c = getchar();
}
return sum;
}
int main()
{
int n;
n = read();
for(int i=1;i<=n;i++)
a[i] = read();
int l = n;
while(l>0)
{
int cnt = 1,cur=0,skip=0;
bool f = 0;
for(int i=1;i<=n;i++)
{
if(!f)
{
if(a[i]!=2)
f = 1;
continue;
}
cnt++;
if(a[i]==2&&f)
{
skip++;
continue;
}
if(a[i]!=a[i-skip-1])
{
a[i-cnt+1] = 2;
ans[++cur] = i-cnt+1;
cnt = 1;
}
skip = 0;
}
a[n-cnt+1] = 2;
ans[++cur] = n-cnt+1;
l-=cur;
for(int i=1;i<=cur;i++)
printf("%d ",ans[i]);
printf("\n");
}
}