#include using namespace std; #define FOR(i,a,b) for(int i = (a); i <= (b); ++i) #define FORD(i,a,b) for(int i = (a); i >= (b); --i) #define RI(i,n) FOR(i,1,(n)) #define REP(i,n) FOR(i,0,(n)-1) #define mini(a,b) a=min(a,b) #define maxi(a,b) a=max(a,b) #define mp make_pair #define pb push_back #define st first #define nd second #define sz(w) (int) w.size() typedef vector vi; typedef long long ll; typedef long double ld; typedef pair pii; const int inf = 1e9 + 5; const int nax = 1e6 + 5; int main() { ll a, b; scanf("%lld%lld", &a, &b); ll ans = -1; REP(i, 1000) REP(j, 1000) { ll aa = a + i; ll bb = b - j; if(aa <= bb && a <= aa && aa <= b && a <= bb && bb <= b) if(__gcd(aa, bb) == 1) maxi(ans, bb - aa + 1); } printf("%lld\n", ans); return 0; }