#include <bits/stdc++.h>
using namespace std;
int cal(int a, int b) {
  int res = 0;
  while (a) {
    res += b / a;
    b %= a;
    if (a > b) swap(a, b);
  }
  if (b == 1)
    return res;
  else
    return 1000000000;
}
int calMistake(int a, int b) {
  int res = 0;
  while (a) {
    b -= a;
    if (a > b)
      swap(a, b);
    else
      res++;
  }
  return res - 1;
}
int in[1000005][2];
int main() {
  long long N, R;
  long long minn = 1000000000;
  int X, Y;
  cin >> N >> R;
  for (int i = 0; i <= R; i++) {
    int a = i;
    int b = R - i;
    if (a > b) swap(a, b);
    if (cal(a, b) + 1 == N) {
      int temp = calMistake(a, b);
      if (temp < minn) {
        minn = temp;
        X = a;
        Y = b;
      }
    }
  }
  if (minn != 1000000000) {
    cout << max(0LL, minn) << endl;
    in[N - 1][0] = X;
    in[N - 1][1] = Y;
    for (int i = N - 2; i > 0; i--) {
      in[i][0] = in[i + 1][0];
      in[i][1] = in[i + 1][1] - in[i + 1][0];
      if (in[i][0] > in[i][1]) swap(in[i][0], in[i][1]);
    }
    int top = 0;
    int bot = 1;
    bool up = true;
    for (int i = 1; i <= N; i++) {
      if (i == 1) {
        printf("T");
        top = 1;
      } else {
        if (i == N) {
          if (up)
            printf("B");
          else
            printf("T");
        } else {
          if (up) {
            int nt = top;
            int nb = top + bot;
            if (min(nt, nb) == in[i][0] && max(nt, nb) == in[i][1]) {
              printf("B");
              up = false;
              top = nt;
              bot = nb;
            } else {
              printf("T");
              nt = top + bot;
              nb = bot;
              top = nt;
              bot = nb;
            }
          } else {
            int nt = top + bot;
            int nb = bot;
            if (min(nt, nb) == in[i][0] && max(nt, nb) == in[i][1]) {
              printf("T");
              up = true;
              top = nt;
              bot = nb;
            } else {
              printf("B");
              nt = top;
              nb = top + bot;
              top = nt;
              bot = nb;
            }
          }
        }
      }
    }
    printf("\n");
  } else {
    printf("IMPOSSIBLE\n");
  }
  return 0;
}
