#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <set>

using namespace std;

const int NMAX=1000000;
int n, min_val, max_val;
set<int, less<int> > s;
typedef set<int, less<int> > :: iterator SIT;
SIT sit;

int a[NMAX];

//аргументы: количество_запросов, начальное_значение_для_srand
int main (int, char *argv[]) {
  n = atoi(argv[1]);
  if (n>87000) n=87000;
  int srand_init = atoi(argv[2]);
  srand(srand_init);
  while (n%3>0) n--;
  int  k=n/3;
  int d = k;

  //получаем числа, между любой парой которых достаточно большой интервал
  for (int i=0; i<k; i++)
     a[i] = (i+1)*34000;

  //случайно перемешиваем
  for (int i=0; i<5*k; i++) {
    int t1 = rand()*rand() % k;
    int t2 = rand()*rand() % k;
    int t = a[t1]; a[t1] = a[t2]; a[t2] = t;
  }

  cout << n << endl;
  for (int i=0; i<k; i++) {
    if (rand()%2==0)
      cout << "ADD " << a[i] << endl << "ADD " << a[i]+d << endl << "FIND" << endl;
    else
      cout << "ADD " << a[i]+d << endl << "ADD " << a[i] << endl << "FIND" << endl;
    d--;
  }
  return 0;
}

