#include <bits/stdc++.h>
using namespace std;
#pragma comment(linker, "/stack:16000000")
#pragma warning(disable : 4996)
const int inf = 1 << 25;
const double eps = 1e-9;
const int MAXN = 1 << 19;
bool win[MAXN];
int lines[15][6] = {0,  1,  2,  -1, -1, -1, 3,  4,  5,  6,  -1, -1, 7,  8,  9,
                    10, 11, -1, 12, 13, 14, 15, -1, -1, 16, 17, 18, -1, -1, -1,
                    0,  3,  7,  -1, -1, -1, 1,  4,  8,  12, -1, -1, 2,  5,  9,
                    13, 16, -1, 6,  10, 14, 17, -1, -1, 11, 15, 18, -1, -1, -1,
                    2,  6,  11, -1, -1, -1, 1,  5,  10, 15, -1, -1, 0,  4,  9,
                    14, 18, -1, 3,  8,  13, 17, -1, -1, 7,  12, 16, -1, -1, -1};
vector<int> moves;
void gen_moves() {
  for (int line = (0); line < (15); ++line) {
    vector<int> a(lines[line], lines[line] + 5);
    while (a.back() == -1) a.pop_back();
    for (int i = (0); i < ((int)a.size()); ++i)
      for (int j = (i); j < ((int)a.size()); ++j) {
        int mask = 0;
        for (int k = (i); k < (j + 1); ++k) mask ^= 1 << a[k];
        moves.push_back(mask);
      }
  }
}
int main(int argc, char* argv[]) {
  memset((win), (false), sizeof(win));
  gen_moves();
  for (int mask = (0); mask < (MAXN); ++mask)
    if (!win[mask]) {
      for (int i = (0); i < ((int)moves.size()); ++i)
        if ((mask & moves[i]) == 0) win[mask ^ moves[i]] = true;
    }
  int mask = 0;
  for (int i = (0); i < (19); ++i) {
    string s;
    cin >> s;
    if (s[0] == 'O') mask |= 1 << i;
  }
  printf("%s\n", win[mask] ? "Karlsson" : "Lillebror");
  return 0;
}
