//このソースコードはpietで書かれたものをc++にコンパイルしたものです。決して闇の呪文ではありません。
const int PUSH=1,POP=2,ADD=10,SUB=11,MULTI=12,DIV=20,MOD=21,NOT=22,GREAT=30,POINT=31,SWITCH=32,DUP=40,ROLL=41,INN=42,INC=50,OUTN=51,OUTC=52;
#include <cstdio>
#include <vector>
#include <stack>
#include <iostream>
#include <string>
using namespace std;
typedef long long ll;
struct cal{
int process;
int next;
cal(int p,int n){
	process=p;next=n;
}
bool operator >(const cal &b) const{return process > b.process;}
};
int main(){
	vector<vector<vector<cal>>> proceed(48,vector<vector<cal>>(4,vector<cal>(2,cal(0,0))));
	proceed[0][0][0]=cal(42,1);proceed[0][0][1]=cal(42,1);proceed[0][1][0]=cal(-2,-1);proceed[0][1][1]=cal(-2,-1);proceed[0][2][0]=cal(-1,-1);proceed[0][2][1]=cal(-1,-1);proceed[0][3][0]=cal(-1,-1);proceed[0][3][1]=cal(-1,-1);proceed[1][0][0]=cal(42,2);proceed[1][0][1]=cal(42,2);proceed[1][1][0]=cal(-2,-1);proceed[1][1][1]=cal(-2,-1);proceed[1][2][0]=cal(21,0);proceed[1][2][1]=cal(21,0);proceed[1][3][0]=cal(-1,-1);proceed[1][3][1]=cal(-1,-1);proceed[2][0][0]=cal(42,3);proceed[2][0][1]=cal(42,3);proceed[2][1][0]=cal(-2,-1);proceed[2][1][1]=cal(-2,-1);proceed[2][2][0]=cal(21,1);proceed[2][2][1]=cal(21,1);proceed[2][3][0]=cal(-1,-1);proceed[2][3][1]=cal(-1,-1);proceed[3][0][0]=cal(1,4);proceed[3][0][1]=cal(-2,8);proceed[3][1][0]=cal(-2,-1);proceed[3][1][1]=cal(-2,-1);proceed[3][2][0]=cal(-2,-1);proceed[3][2][1]=cal(21,2);proceed[3][3][0]=cal(-1,-1);proceed[3][3][1]=cal(-1,-1);proceed[4][0][0]=cal(1,5);proceed[4][0][1]=cal(1,5);proceed[4][1][0]=cal(-2,-1);proceed[4][1][1]=cal(-2,-1);proceed[4][2][0]=cal(2,3);proceed[4][2][1]=cal(2,3);proceed[4][3][0]=cal(-1,-1);proceed[4][3][1]=cal(-1,-1);proceed[5][0][0]=cal(41,6);proceed[5][0][1]=cal(41,6);proceed[5][1][0]=cal(-2,-1);proceed[5][1][1]=cal(-2,-1);proceed[5][2][0]=cal(2,4);proceed[5][2][1]=cal(2,4);proceed[5][3][0]=cal(-1,-1);proceed[5][3][1]=cal(-1,-1);proceed[6][0][0]=cal(-2,7);proceed[6][0][1]=cal(-2,7);proceed[6][1][0]=cal(-2,42);proceed[6][1][1]=cal(-2,42);proceed[6][2][0]=cal(22,5);proceed[6][2][1]=cal(22,5);proceed[6][3][0]=cal(-1,-1);proceed[6][3][1]=cal(-1,-1);proceed[7][0][0]=cal(40,8);proceed[7][0][1]=cal(40,8);proceed[7][1][0]=cal(-2,35);proceed[7][1][1]=cal(-2,35);proceed[7][2][0]=cal(-2,6);proceed[7][2][1]=cal(-2,6);proceed[7][3][0]=cal(-1,-1);proceed[7][3][1]=cal(-1,-1);proceed[8][0][0]=cal(1,9);proceed[8][0][1]=cal(-2,33);proceed[8][1][0]=cal(-2,35);proceed[8][1][1]=cal(-2,35);proceed[8][2][0]=cal(-2,-1);proceed[8][2][1]=cal(20,7);proceed[8][3][0]=cal(-1,-1);proceed[8][3][1]=cal(-1,-1);proceed[9][0][0]=cal(1,10);proceed[9][0][1]=cal(1,10);proceed[9][1][0]=cal(-2,35);proceed[9][1][1]=cal(-2,35);proceed[9][2][0]=cal(2,8);proceed[9][2][1]=cal(2,8);proceed[9][3][0]=cal(-1,-1);proceed[9][3][1]=cal(-1,-1);proceed[10][0][0]=cal(41,11);proceed[10][0][1]=cal(41,11);proceed[10][1][0]=cal(-2,35);proceed[10][1][1]=cal(-2,35);proceed[10][2][0]=cal(2,9);proceed[10][2][1]=cal(2,9);proceed[10][3][0]=cal(-1,-1);proceed[10][3][1]=cal(-1,-1);proceed[11][0][0]=cal(30,12);proceed[11][0][1]=cal(30,12);proceed[11][1][0]=cal(-2,35);proceed[11][1][1]=cal(-2,35);proceed[11][2][0]=cal(22,10);proceed[11][2][1]=cal(22,10);proceed[11][3][0]=cal(-1,-1);proceed[11][3][1]=cal(-1,-1);proceed[12][0][0]=cal(31,13);proceed[12][0][1]=cal(31,13);proceed[12][1][0]=cal(-2,35);proceed[12][1][1]=cal(-2,35);proceed[12][2][0]=cal(30,11);proceed[12][2][1]=cal(30,11);proceed[12][3][0]=cal(-1,-1);proceed[12][3][1]=cal(-1,-1);proceed[13][0][0]=cal(30,14);proceed[13][0][1]=cal(30,14);proceed[13][1][0]=cal(-2,33);proceed[13][1][1]=cal(-2,33);proceed[13][2][0]=cal(32,12);proceed[13][2][1]=cal(32,12);proceed[13][3][0]=cal(-1,-1);proceed[13][3][1]=cal(-1,-1);proceed[14][0][0]=cal(31,15);proceed[14][0][1]=cal(31,15);proceed[14][1][0]=cal(-2,35);proceed[14][1][1]=cal(-2,35);proceed[14][2][0]=cal(30,13);proceed[14][2][1]=cal(30,13);proceed[14][3][0]=cal(-1,-1);proceed[14][3][1]=cal(-1,-1);proceed[15][0][0]=cal(-2,16);proceed[15][0][1]=cal(-2,16);proceed[15][1][0]=cal(-2,34);proceed[15][1][1]=cal(-2,34);proceed[15][2][0]=cal(32,14);proceed[15][2][1]=cal(32,14);proceed[15][3][0]=cal(-1,-1);proceed[15][3][1]=cal(-1,-1);proceed[16][0][0]=cal(1,17);proceed[16][0][1]=cal(-2,23);proceed[16][1][0]=cal(-2,-1);proceed[16][1][1]=cal(-2,-1);proceed[16][2][0]=cal(-2,39);proceed[16][2][1]=cal(-2,15);proceed[16][3][0]=cal(-1,-1);proceed[16][3][1]=cal(-1,-1);proceed[17][0][0]=cal(40,18);proceed[17][0][1]=cal(40,18);proceed[17][1][0]=cal(-2,-1);proceed[17][1][1]=cal(-2,-1);proceed[17][2][0]=cal(2,16);proceed[17][2][1]=cal(2,16);proceed[17][3][0]=cal(-1,-1);proceed[17][3][1]=cal(-1,-1);proceed[18][0][0]=cal(12,19);proceed[18][0][1]=cal(12,19);proceed[18][1][0]=cal(-2,-1);proceed[18][1][1]=cal(-2,-1);proceed[18][2][0]=cal(20,17);proceed[18][2][1]=cal(20,17);proceed[18][3][0]=cal(-1,-1);proceed[18][3][1]=cal(-1,-1);proceed[19][0][0]=cal(1,20);proceed[19][0][1]=cal(-2,23);proceed[19][1][0]=cal(-2,-1);proceed[19][1][1]=cal(-2,-1);proceed[19][2][0]=cal(-2,16);proceed[19][2][1]=cal(51,18);proceed[19][3][0]=cal(-1,-1);proceed[19][3][1]=cal(-1,-1);proceed[20][0][0]=cal(10,21);proceed[20][0][1]=cal(10,21);proceed[20][1][0]=cal(-2,-1);proceed[20][1][1]=cal(-2,-1);proceed[20][2][0]=cal(2,19);proceed[20][2][1]=cal(2,19);proceed[20][3][0]=cal(-1,-1);proceed[20][3][1]=cal(-1,-1);proceed[21][0][0]=cal(40,22);proceed[21][0][1]=cal(40,22);proceed[21][1][0]=cal(-2,-1);proceed[21][1][1]=cal(-2,-1);proceed[21][2][0]=cal(50,20);proceed[21][2][1]=cal(50,20);proceed[21][3][0]=cal(-1,-1);proceed[21][3][1]=cal(-1,-1);proceed[22][0][0]=cal(52,23);proceed[22][0][1]=cal(52,23);proceed[22][1][0]=cal(-2,-1);proceed[22][1][1]=cal(-2,-1);proceed[22][2][0]=cal(20,21);proceed[22][2][1]=cal(20,21);proceed[22][3][0]=cal(-1,-1);proceed[22][3][1]=cal(-1,-1);proceed[23][0][0]=cal(1,24);proceed[23][0][1]=cal(-2,27);proceed[23][1][0]=cal(-2,-1);proceed[23][1][1]=cal(-2,-1);proceed[23][2][0]=cal(-2,42);proceed[23][2][1]=cal(11,22);proceed[23][3][0]=cal(-1,-1);proceed[23][3][1]=cal(-1,-1);proceed[24][0][0]=cal(10,25);proceed[24][0][1]=cal(10,25);proceed[24][1][0]=cal(-2,-1);proceed[24][1][1]=cal(-2,-1);proceed[24][2][0]=cal(2,23);proceed[24][2][1]=cal(2,23);proceed[24][3][0]=cal(-1,-1);proceed[24][3][1]=cal(-1,-1);proceed[25][0][0]=cal(40,26);proceed[25][0][1]=cal(40,26);proceed[25][1][0]=cal(-2,-1);proceed[25][1][1]=cal(-2,-1);proceed[25][2][0]=cal(50,24);proceed[25][2][1]=cal(50,24);proceed[25][3][0]=cal(-1,-1);proceed[25][3][1]=cal(-1,-1);proceed[26][0][0]=cal(52,27);proceed[26][0][1]=cal(52,27);proceed[26][1][0]=cal(-2,-1);proceed[26][1][1]=cal(-2,-1);proceed[26][2][0]=cal(20,25);proceed[26][2][1]=cal(20,25);proceed[26][3][0]=cal(-1,-1);proceed[26][3][1]=cal(-1,-1);proceed[27][0][0]=cal(1,28);proceed[27][0][1]=cal(-2,-1);proceed[27][1][0]=cal(-2,-1);proceed[27][1][1]=cal(-2,-1);proceed[27][2][0]=cal(-2,42);proceed[27][2][1]=cal(11,26);proceed[27][3][0]=cal(-1,-1);proceed[27][3][1]=cal(-1,-1);proceed[28][0][0]=cal(10,29);proceed[28][0][1]=cal(10,29);proceed[28][1][0]=cal(-2,-1);proceed[28][1][1]=cal(-2,-1);proceed[28][2][0]=cal(2,27);proceed[28][2][1]=cal(2,27);proceed[28][3][0]=cal(-1,-1);proceed[28][3][1]=cal(-1,-1);proceed[29][0][0]=cal(52,30);proceed[29][0][1]=cal(52,30);proceed[29][1][0]=cal(-2,-1);proceed[29][1][1]=cal(-2,-1);proceed[29][2][0]=cal(50,28);proceed[29][2][1]=cal(50,28);proceed[29][3][0]=cal(-1,-1);proceed[29][3][1]=cal(-1,-1);proceed[30][0][0]=cal(1,31);proceed[30][0][1]=cal(-2,-1);proceed[30][1][0]=cal(-2,-1);proceed[30][1][1]=cal(-2,-1);proceed[30][2][0]=cal(-2,27);proceed[30][2][1]=cal(11,29);proceed[30][3][0]=cal(-1,-1);proceed[30][3][1]=cal(-1,-1);proceed[31][0][0]=cal(52,32);proceed[31][0][1]=cal(52,32);proceed[31][1][0]=cal(52,32);proceed[31][1][1]=cal(-1,-1);proceed[31][2][0]=cal(2,30);proceed[31][2][1]=cal(2,30);proceed[31][3][0]=cal(-1,-1);proceed[31][3][1]=cal(-1,-1);proceed[32][0][0]=cal(-1,-1);proceed[32][0][1]=cal(-1,-1);proceed[32][1][0]=cal(-1,-1);proceed[32][1][1]=cal(-1,-1);proceed[32][2][0]=cal(-1,-1);proceed[32][2][1]=cal(-1,-1);proceed[32][3][0]=cal(-1,-1);proceed[32][3][1]=cal(-1,-1);proceed[33][0][0]=cal(-2,34);proceed[33][0][1]=cal(-2,34);proceed[33][1][0]=cal(-2,35);proceed[33][1][1]=cal(-2,35);proceed[33][2][0]=cal(-2,8);proceed[33][2][1]=cal(-2,8);proceed[33][3][0]=cal(-2,13);proceed[33][3][1]=cal(-2,13);proceed[34][0][0]=cal(-2,16);proceed[34][0][1]=cal(-2,16);proceed[34][1][0]=cal(-2,35);proceed[34][1][1]=cal(-2,35);proceed[34][2][0]=cal(-2,33);proceed[34][2][1]=cal(-2,33);proceed[34][3][0]=cal(-2,15);proceed[34][3][1]=cal(-2,15);proceed[35][0][0]=cal(-2,16);proceed[35][0][1]=cal(-2,16);proceed[35][1][0]=cal(1,36);proceed[35][1][1]=cal(-2,42);proceed[35][2][0]=cal(-2,-1);proceed[35][2][1]=cal(-2,-1);proceed[35][3][0]=cal(-2,7);proceed[35][3][1]=cal(-2,34);proceed[36][0][0]=cal(-2,16);proceed[36][0][1]=cal(-2,16);proceed[36][1][0]=cal(40,37);proceed[36][1][1]=cal(40,37);proceed[36][2][0]=cal(-2,-1);proceed[36][2][1]=cal(-2,-1);proceed[36][3][0]=cal(2,35);proceed[36][3][1]=cal(2,35);proceed[37][0][0]=cal(-2,16);proceed[37][0][1]=cal(-2,16);proceed[37][1][0]=cal(12,38);proceed[37][1][1]=cal(12,38);proceed[37][2][0]=cal(-2,-1);proceed[37][2][1]=cal(-2,-1);proceed[37][3][0]=cal(20,36);proceed[37][3][1]=cal(20,36);proceed[38][0][0]=cal(-2,16);proceed[38][0][1]=cal(-2,16);proceed[38][1][0]=cal(1,39);proceed[38][1][1]=cal(-2,40);proceed[38][2][0]=cal(-2,-1);proceed[38][2][1]=cal(-2,-1);proceed[38][3][0]=cal(-2,35);proceed[38][3][1]=cal(51,37);proceed[39][0][0]=cal(-2,16);proceed[39][0][1]=cal(-2,16);proceed[39][1][0]=cal(11,40);proceed[39][1][1]=cal(11,40);proceed[39][2][0]=cal(-2,-1);proceed[39][2][1]=cal(-2,-1);proceed[39][3][0]=cal(2,38);proceed[39][3][1]=cal(2,38);proceed[40][0][0]=cal(-2,23);proceed[40][0][1]=cal(-2,23);proceed[40][1][0]=cal(40,41);proceed[40][1][1]=cal(-2,42);proceed[40][2][0]=cal(-2,-1);proceed[40][2][1]=cal(-2,-1);proceed[40][3][0]=cal(-2,38);proceed[40][3][1]=cal(52,39);proceed[41][0][0]=cal(-2,23);proceed[41][0][1]=cal(-2,23);proceed[41][1][0]=cal(52,42);proceed[41][1][1]=cal(52,42);proceed[41][2][0]=cal(-2,-1);proceed[41][2][1]=cal(-2,-1);proceed[41][3][0]=cal(20,40);proceed[41][3][1]=cal(20,40);proceed[42][0][0]=cal(-2,23);proceed[42][0][1]=cal(-2,27);proceed[42][1][0]=cal(1,43);proceed[42][1][1]=cal(-2,-1);proceed[42][2][0]=cal(-2,-1);proceed[42][2][1]=cal(-2,-1);proceed[42][3][0]=cal(-2,6);proceed[42][3][1]=cal(11,41);proceed[43][0][0]=cal(-2,-1);proceed[43][0][1]=cal(-2,-1);proceed[43][1][0]=cal(10,44);proceed[43][1][1]=cal(10,44);proceed[43][2][0]=cal(-2,-1);proceed[43][2][1]=cal(-2,-1);proceed[43][3][0]=cal(2,42);proceed[43][3][1]=cal(2,42);proceed[44][0][0]=cal(-2,-1);proceed[44][0][1]=cal(-2,-1);proceed[44][1][0]=cal(52,45);proceed[44][1][1]=cal(52,45);proceed[44][2][0]=cal(-2,-1);proceed[44][2][1]=cal(-2,-1);proceed[44][3][0]=cal(50,43);proceed[44][3][1]=cal(50,43);proceed[45][0][0]=cal(-1,-1);proceed[45][0][1]=cal(-1,-1);proceed[45][1][0]=cal(1,46);proceed[45][1][1]=cal(-2,-1);proceed[45][2][0]=cal(-2,-1);proceed[45][2][1]=cal(-2,-1);proceed[45][3][0]=cal(-2,42);proceed[45][3][1]=cal(11,44);proceed[46][0][0]=cal(52,47);proceed[46][0][1]=cal(52,47);proceed[46][1][0]=cal(52,47);proceed[46][1][1]=cal(52,47);proceed[46][2][0]=cal(-2,-1);proceed[46][2][1]=cal(-2,-1);proceed[46][3][0]=cal(2,45);proceed[46][3][1]=cal(2,45);proceed[47][0][0]=cal(-1,-1);proceed[47][0][1]=cal(-1,-1);proceed[47][1][0]=cal(-1,-1);proceed[47][1][1]=cal(-1,-1);proceed[47][2][0]=cal(-1,-1);proceed[47][2][1]=cal(-1,-1);proceed[47][3][0]=cal(-1,-1);proceed[47][3][1]=cal(-1,-1);
	vector<int> codelblock;
	codelblock.push_back(1);codelblock.push_back(1);codelblock.push_back(1);codelblock.push_back(2);codelblock.push_back(1);codelblock.push_back(1);codelblock.push_back(1);codelblock.push_back(1);codelblock.push_back(3);codelblock.push_back(1);codelblock.push_back(1);codelblock.push_back(1);codelblock.push_back(1);codelblock.push_back(1);codelblock.push_back(1);codelblock.push_back(1);codelblock.push_back(9);codelblock.push_back(1);codelblock.push_back(1);codelblock.push_back(8);codelblock.push_back(1);codelblock.push_back(1);codelblock.push_back(1);codelblock.push_back(12);codelblock.push_back(1);codelblock.push_back(1);codelblock.push_back(1);codelblock.push_back(14);codelblock.push_back(1);codelblock.push_back(1);codelblock.push_back(10);codelblock.push_back(2);codelblock.push_back(3);codelblock.push_back(1);codelblock.push_back(1);codelblock.push_back(9);codelblock.push_back(1);codelblock.push_back(1);codelblock.push_back(3);codelblock.push_back(1);codelblock.push_back(3);codelblock.push_back(1);codelblock.push_back(33);codelblock.push_back(1);codelblock.push_back(1);codelblock.push_back(10);codelblock.push_back(1);codelblock.push_back(3);

	stack<ll> st;
	int nowgroup=0;
	int dp=0;
	int cc=0;
	int endcount=0;
	while(endcount<8){
		if(proceed[nowgroup][dp][cc].process==-1 || proceed[nowgroup][dp][cc].next==-1){
			if(endcount%2==0)
				cc=(cc+1)%2;
			else
				dp=(dp+1)%4;
			endcount++;
		}else{
			bool flag=true;
			endcount=0;
			if(proceed[nowgroup][dp][cc].process==PUSH)
				st.push(codelblock[nowgroup]);
			else if(proceed[nowgroup][dp][cc].process==POP)
				st.pop();
			else if(proceed[nowgroup][dp][cc].process==ADD){
				ll a=st.top();st.pop();
				ll b=st.top();st.pop();
				st.push(b+a);
			}else if(proceed[nowgroup][dp][cc].process==SUB){
				ll a=st.top();st.pop();
				ll b=st.top();st.pop();
				st.push(b-a);
			}else if(proceed[nowgroup][dp][cc].process==MULTI){
				ll a=st.top();st.pop();
				ll b=st.top();st.pop();
				st.push(b*a);
			}else if(proceed[nowgroup][dp][cc].process==DIV){
				ll a=st.top();st.pop();
				ll b=st.top();st.pop();
				st.push(b/a);
			}else if(proceed[nowgroup][dp][cc].process==MOD){
				ll a=st.top();st.pop();
				ll b=st.top();st.pop();
				st.push(b%a);
			}else if(proceed[nowgroup][dp][cc].process==NOT){
				ll a=st.top();st.pop();
				if(a!=0) st.push(0);
				else st.push(1);
			}else if(proceed[nowgroup][dp][cc].process==GREAT){
				ll a=st.top();st.pop();
				ll b=st.top();st.pop();
				st.push(a<b);
			}else if(proceed[nowgroup][dp][cc].process==POINT){
				ll a=st.top();st.pop();
				nowgroup=proceed[nowgroup][dp][cc].next;
				dp=(dp+a%4)%4;
				flag=false;
			}else if(proceed[nowgroup][dp][cc].process==SWITCH){
				ll a=st.top();st.pop();
				nowgroup=proceed[nowgroup][dp][cc].next;
				cc=(cc+a%2)%2;
				flag=false;
			}else if(proceed[nowgroup][dp][cc].process==DUP){
				ll a=st.top();
				st.push(a);
			}else if(proceed[nowgroup][dp][cc].process==ROLL){
				ll b=st.top();st.pop();
				ll a=st.top();st.pop();
				vector<ll> temp(a);
				for(int i=a-1;i>=0;i--){
					temp[i]=st.top();
					st.pop();
				}
				for(int i=0;i<a;i++)
					st.push(temp[(i-b+a)%a]);
			}else if(proceed[nowgroup][dp][cc].process==INN){
				ll a;
				cin >> a;
				st.push(a);
			}else if(proceed[nowgroup][dp][cc].process==INC){
				unsigned char c[5]={0};
				scanf("%c",&c[0]);
				int rest;
				if(c[0]<0x80)
					rest=0;
				else if(c[0]<0xE0)
					rest=1;
				else if(c[0]<0xF0)
					rest=2;
				else
					rest=3;
				for(int i=0;i<rest;i++)
					scanf("%c",&c[i+1]);
				int a=c[0]+(c[1]<<8)+(c[2]<<16)+(c[3]<<24);
				st.push(a);
			}else if(proceed[nowgroup][dp][cc].process==OUTN){
				ll a=st.top();
				st.pop();
				cout << a;
			}else if(proceed[nowgroup][dp][cc].process==OUTC){
				int a=st.top();
				st.pop();
				unsigned char c[5]={0};
				c[0]=a%(1<<8);a=a>>8;
				c[1]=a%(1<<8);a=a>>8;
				c[2]=a%(1<<8);a=a>>8;
				c[3]=a%(1<<8);a=a>>8;
				printf("%s",c);
			}
			if(flag)
				nowgroup=proceed[nowgroup][dp][cc].next;
		}
	}
	return 0;
}


Measured memory_bytes: 256