#include <bits/stdc++.h>
using namespace std;
vector<vector<long long>> g;
long long glubina = 0;
void dfs(long long v, long long gll) {
  glubina = max(gll, glubina);
  for (auto i : g[v]) {
    dfs(i, gll + 1);
  }
}
int main() {
  int n, a, b;
  cin >> n >> a >> b;
  vector<int> v;
  for (int i = 1; i <= n; ++i) {
    v.push_back(i);
  }
  if (a > b) {
    swap(a, b);
  }
  int ans = 0;
  while (v.size() > 2) {
    ++ans;
    vector<int> nw;
    for (int i = 0; i < v.size() - 1; i += 2) {
      if (v[i] == a && v[i + 1] == b) {
        cout << ans;
        return 0;
      }
      if (v[i] != a && v[i] != b) {
        nw.push_back(v[i + 1]);
      } else {
        nw.push_back(v[i]);
      }
    }
    v = nw;
  }
  cout << "Final!";
}
