#define _GLIBCXX_DEBUG #define rep(i, n) for (int i = 0; i < (int)(n); i++) #define ALL(v) v.begin(), v.end() typedef long long ll; template<class T>bool chmax(T &a, const T &b) { if (a<b) { a=b; return 1; } return 0; } template<class T>bool chmin(T &a, const T &b) { if (b<a) { a=b; return 1; } return 0; } #include <bits/stdc++.h> using namespace std; int main(){ double a,b,c,d; cin>>a>>b>>c>>d; double D=(a-c)*(a-c)-8*(b-d); if(D<0) cout<<"No"<<endl; else if(D==0) cout<<"Yes"<<endl; else{ cout<< fixed << setprecision(15) <<(a+c)/2<<" "<<(b+d)/2<<endl; } return 0; }