#include <bits/stdc++.h>
#pragma optimizer(O2)
using namespace std;
long long cal(long long u, long long d, long long l) {
  if (l == 0) return 0;
  long long res = (u - 1) / l * l * 2 + l + u % l;
  u %= l;
  long long tmpd = l;
  long long tmpl = u;
  long long tmpu = l - u;
  return res + cal(tmpu, tmpd, tmpl);
}
int main() {
  long long n, first;
  scanf("%lld %lld", &n, &first);
  printf("%lld\n", cal(first, n, n - first) + first);
}
