#include <bits/stdc++.h>
using namespace std;
const int inf = 1e9;
const int mod = 1e9 + 7;
long long N, X;
int main() {
  if (scanf("%lld %lld", &N, &X) < 2) exit(1);
  long long ans = 0;
  int cnt = 0;
  while (1) {
    if (cnt == 100) {
      printf("-1\n");
      return 0;
    }
    long long Y = N - X;
    long long Z = N % X;
    ans += max(Y, X) * 3;
    if (Z == 0) break;
    long long a = 0, b = 0;
    if (Y > X) {
      a = max(Y % X, X);
      b = min(Y % X, X);
    } else {
      a = max(X % Y, Y);
      b = min(X % Y, Y);
    }
    N = a;
    X = b;
    cnt++;
  }
  printf("%lld\n", ans);
  return 0;
}
