#include #define rep(i,n) for(int i=0;i<(n);i++) using namespace std; vector divisors(long long a){ vector res; for(long long i=1;i*i<=a;i++) if(a%i==0) { res.emplace_back(i); if(i*i>a>>b; for(auto c:divisors(a+b)){ if(a!=c && b!=c && (a+c)%b==0 && (b+c)%a==0) return printf("%lld\n",c),0; } puts("-1"); return 0; }