#include <bits/stdc++.h>
using namespace std;
int d[1001000];
long long work(long long a, long long b) {
  int len = 0;
  long long i;
  for (i = 1; i * i <= a; i++)
    if (a % i == 0) {
      len++;
      d[len] = i;
    }
  long long ans = (a + b + 1) * 2, c = a + b, d1;
  int now = 0;
  for (d1 = 1; d1 * d1 <= c; d1++) {
    if (c % d1) continue;
    while ((now + 1 <= len) && (d[now + 1] <= d1)) now++;
    if (c / d1 >= a / d[now]) ans = min(ans, (d1 + c / d1) * 2);
  }
  return ans;
}
int main() {
  long long a, b;
  scanf("%I64d%I64d", &a, &b);
  long long ans = min(work(a, b), work(b, a));
  printf("%I64d", ans);
  return 0;
}
