#include using namespace std; int cmmdc(unsigned long long a, unsigned long long b) { unsigned r; r = a%b; while (r) { a = b; b = r; r = a%b; } return b; } long long a, b, a1, b1; int main() { cin >> a >> b; a1 = a; b1 = b; if (cmmdc(a, b) == 1) cout << b - a + 1; else { long long mx1 = 0; long long mx2 = 0; while (cmmdc(a1, b) != 1) { if (a1 >= b) { cout << -1; return 0; } ++a1; } mx1 = b - a1+1; while (cmmdc(a, b1) != 1) { if (b1 <= a){ cout << -1; return 0; } --b1; } mx2 = b1 - a + 1; if (mx1 > mx2) cout << mx1; else cout << mx2; } return 0; }