#include <iostream>
#include <bits/stdc++.h>

using namespace std;

long n = 0, length = 0;

void Go_Ray(int rayActual, int rayPasado)
{
    if (rayActual == rayPasado)
    {
      length += rayActual;
      return;
    }
    if (rayPasado < rayActual)
    {
        length += (2 * rayPasado);
        Go_Ray(rayPasado, rayActual - rayPasado);
    }
    else
    {
        length += (2 * rayActual);
        Go_Ray(rayActual, rayPasado - rayActual);
    }
}

int main()
{
    long x;
    cin >> n >> x;
    //mayor = max(x, n - x);
    length = n;
    Go_Ray(n - x,x);
    cout << length << endl;
    return 0;
}
