#include <bits/stdc++.h>
using namespace std;
#include <atcoder/all>
using namespace atcoder;
#define rep(i, n) for(int i=0;i<(n);++i)
#define rep1(i, n) for(int i=1;i<=(n);i++)
#define ll long long
using mint = modint998244353;
using P = pair<ll,ll>;
using lb = long double;
using T = tuple<ll, ll, ll>;
#ifdef LOCAL
#  include <debug_print.hpp>
#  define dbg(...) debug_print::multi_print(#__VA_ARGS__, __VA_ARGS__)
#else
#  define dbg(...) (static_cast<void>(0))
#endif

int main()
{
    ll a, b, c;
    cin >> a >> b >> c;
    for(ll x=1;x<=200;x++){
        for(ll y=1;y<=200;y++){
            ll z = x + y + a;
            if(z>=b+c) continue;
            if(2*b*z+b*b+z*z-c*c<=0) continue;
            if(2*c*z+c*c+z*z-b*b<=0) continue;
            ll val = x*x*c*c*((y*y+c*c)*z - (c*c+z*z-b*b)*y) - y*y*b*b*((x*x+b*b)*z-(b*b+z*z-c*c)*x);
            if(val==0) {
                cout << "Yes" << endl;
                dbg(x,y);
                return 0;
            }
        }
    }
    cout << "No" << endl;
    return 0; 
}