#include <bits/stdc++.h>
using namespace std;

int a[100],b[100];
int i,j,n,order,x,y,m,k;
int main() {
	cin>>m>>n;
	//m张牌
	for(i = 1; i <= m; i++) {
		cin>>a[i];
	}

	for(i = 1; i <= n; i++) {
		cin>>order;
		//切牌
		if(order == 1) {
			k = 1;//下标清零
			cin>>x>>y;
			for(j = x; j <= y; j++) {
				b[k] = a[j];
				k++;
			}

			for(j = 1; j < x; j++) {
				b[k] = a[j];
				k++;
			}

			for(j = y + 1; j <= m; j++) {
				b[k] = a[j];
				k++;
			}

			//拷贝回去
			for(j = 1; j <= m; j++) {
				a[j] = b[j];
			}
		} else {
			for(j = 1; j <= m / 2; j++) {
				b[j*2-1]=a[j];
				b[j*2]=a[m/2+j];
			}

			for(j = 1; j <= m; j++) {
				a[j] = b[j];
			}
		}
	}

	for(i = 1; i <= m; i++) {
		cout<<a[i]<<" ";
	}


}


/**************************************************************
	Problem: 1564
	User: admin
	Language: C++
	Result: Accepted
	Time:48 ms
	Memory:2072 kb
****************************************************************/