#include #define in cin #define out cout #define int64 unsigned long long using namespace std; ifstream f("date.in"); int64 a; int64 b; int64 gcd(int64 a, int64 b) { if(b != 0) { return gcd(b, a % b); } return a; } void read() { in >> a; in >> b; } void solve() { if(a == 1) { out << b - a + 1; return; } int64 right = b; while(right >= a && gcd(a, right) != 1) { right--; } if(right < a) { out << -1; } else { int64 length = right - a + 1; int64 maxx = 0; for(int64 i = a; i + length <= b; i++) { for(int64 j = a + length - 1; j <= b; j += (length - 1)) { if(gcd(i, j) == 1) { maxx = max(maxx, j - i + 1); } } } if(maxx == 0) { out << -1; } else out << maxx; } } int main() { read(); solve(); return 0; }