#include #include using namespace atcoder; using namespace std; using ll=long long; using ld=long double; ld pie=3.141592653589793; ll mod=1000000007; ll inf=10099999999999990; int main(){ ll a,b; cin >> a >> b; ll x=a+b; vectory; for (ll i = 1; i*i <=x; i++) { if (x%i==0) { y.push_back(i); y.push_back(x/i); } } ll ans=inf; for (ll i = 0; i < y.size(); i++) { if (y[i]==a||y[i]==b) { continue; } if ((y[i]+a)%b==0&&(y[i]+b)%a==0) { ans=min(ans,y[i]); } } if (ans==inf) { cout << -1 << endl; }else{ cout << ans << endl; } }