#include <bits/stdc++.h>
using namespace std;
const int MAXN = (int)1e5 * 2;
long long n, k, i, ans = (long long)1e18 * 2;
void poisk(long long k2) {
  for (long long i = (k2 * k) - 1; i <= ((k2 + 1) * k) + 1; i++) {
    if ((i / k) * (i % k) == n) {
      ans = min(ans, i);
    }
  }
}
int main() {
  cin >> n >> k;
  if ((0 / k) * (0 % k) == n) {
    cout << 0;
    return 0;
  }
  for (int i = 1; i < k; i++) {
    long long md = i % k;
    if ((n % md) != 0) continue;
    long long res = n / md;
    poisk(res);
  }
  cout << ans;
}
