#include <bits/stdc++.h>
using namespace std;
int n, rozmiar;
int ile;
pair<int, int> t[100007];
int main() {
  scanf("%d", &n);
  for (int i = 0; i < (n); i++) scanf("%d%d", &t[i].first, &t[i].second);
  sort(t, t + n);
  rozmiar = t[0].first;
  ile = t[0].second;
  bool wiecej = false;
  if (ile == 1) wiecej = true;
  for (int i = 1; i <= (n - 1); i++) {
    int roz = t[i].first - rozmiar;
    while (roz && ile != 1) {
      ile = (ile + 3) / 4;
      --roz;
    }
    rozmiar = t[i].first;
    if (t[i].second == 1)
      wiecej = true;
    else
      wiecej = false;
    ile = max(ile, t[i].second);
  }
  if (ile == 1 && wiecej)
    printf("%d\n", rozmiar + 1);
  else {
    while (ile != 1) {
      ile = (ile + 3) / 4;
      ++rozmiar;
    }
    printf("%d\n", rozmiar);
  }
  return 0;
}
