#include "testlib.h"
#include <bits/stdc++.h>
using namespace std;

int n, p[1005], queries, l, r, x;
constexpr int max_queries = 2026;
string type;

int main(int argc, char* argv[]) {
	registerInteraction(argc, argv);
	n = inf.readInt();
	for(int i = 1; i <= n; ++i) {
		p[i] = inf.readInt();
	}
	queries = 0;
	cout << n << endl;
	while(true) {
		type = ouf.readToken();
		if(type == "?") {
			if(++queries > max_queries) {
				quitf(_wa, "too noisy! query limit exceeded");
			}
			l = ouf.readInt();
			r = ouf.readInt();
			if(!(1 <= l and l <= r and r <= n)) {
				quitf(_wa, "stupid! invalid query: %d %d", l, r);
			}
			x = p[l];
			for(int i = l; i < r; ++i) {
				p[i] = p[i + 1];
			}
			p[r] = x;
			for(int i = 1; i <= n; ++i) {
				cout << (p[i] == i);
			}
			cout << endl;
		} else if(type == "!") {
			for(int i = 1; i <= n; ++i) {
				if(p[i] ^ i) {
					quitf(_wa, "incorrect! p[%d] != %d", i, i);
				}
			}
			quitf(_ok, "perfect! %d queries in total", queries);
		} else {
			quitf(_wa, "stupid! invalid token: %s", type.c_str());
		}
	}
	return 0;
}
