#include <bits/stdc++.h>
#define ll long long
#define F first
#define S second
#define pii pair < int, int >
#define pb push_back
#define mp make_pair
#define FIO ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0)
using namespace std;
const int N = 1e3+10;
int reqpos[N];
int b_search( int i, int l, int r ) {
int mid;
int temp;
while(l != r) {
mid = l + (r-l) / 2;
cout << "cmp " << i + 1 << " " << mid + 1 << "\n" << flush;
cin >> temp;
if(temp == -1) r = mid;
else l = mid + 1;
}
return l;
}
void zamjeni( int l1, int r1, int l2, int r2 ) {
cout << "reverse " << l1 + 1 << " " << r2 + 1 << "\n" << flush;
cout << "reverse " << l1 + 1 << " " << r2 - l2 + l1 + 1 << "\n" << flush;
cout << "reverse " << r2 - l2 + l1 + 2 << " " << r2 + 1 << "\n" << flush;
return;
}
void task( void ) {
int n, m;
cin >> n >> m;
cout << flush;
for(int i = 0; i < n; i++) {
reqpos[i] = b_search(i, n, n + m) - 1;
}
int curl = 0;
for(int i = 0; i < n; i++) {
if(reqpos[i] == n - 1) {
curl++;
continue;
}
zamjeni(curl, curl + n - i - 1, curl + n - i, reqpos[i]);
curl = reqpos[i] - n + i + 2;
}
cout << "end\n" << flush;
return;
}
int main( void ) {
FIO;
int tt = 1;
while(tt--) task();
return 0;
}