#pragma GCC target("avx") #pragma GCC optimize("O3") #include #include #include #include #include #include #include #include #define DB puts("D") #define pb push_back using namespace std; using ll=long long; using ld=long double; const int INF=1e9; const ll LINF=1e18; template void caut(T a, U b, O c){cout<<"("< void caut(T a, U b){cout<<"("< void caut(T a){cout<<"("<>a[i];} using P=pair; const ll M = 1e9+7; int main() { // 2x2 + (a-c)x + b-d = 0; // D=(a-c)^2 - 4*2*(b-d) ld a,b,c,d; cin>>a>>b>>c>>d; ld A=2, B=a-c, C=b-d; ld D = B*B-4*A*C; if (abs(D) < 1e-10) { cout<<"Yes"<0) { ld x1 = (-B-sqrt(B*B-4*A*C))/2/A; ld x2 = (-B+sqrt(B*B-4*A*C))/2/A; ld y1 = x1*x1 + a*x1 + b; ld y2 = x2*x2 + a*x2 + b; ld p = (y2-y1)/(x2-x1); // y-y1 = p(x-x1) : y = px - px1 + y1 ld q = -p*x1 + y1; cout.precision(10); cout<