func_code_string: #include <bits/stdc++.h>   #pragma comment(linker,  /STACK:66777216 )   using namespace std;   int a, b, c, d, i, j, n, m, k;   inline void die(long double first) {     printf( %.15lf n , (double)first);     exit(0);   }   long double check(long double y1, long double y2, long double yw,                     long double xb, long double yb, long double r,                     long double xx) {     long double h = yw - r - yb;     double a = xx, b = xb - xx;     return yw - r - h / b * a;   }   struct line {     long double a, b, c;     line() : a(0), b(0), c(0) {}     line(pair<long double, long double> t1, pair<long double, long double> t2) {       a = t2.second - t1.second;       b = t1.first - t2.first;       c = -a * t1.first - b * t1.second;       long double s = sqrt(a * a + b * b);       a /= s;       b /= s;       c /= s;     }     inline long double dist(pair<long double, long double> t) {       return abs(a * t.first + b * t.second + c);     }   };   int main() {     long double y1, y2, yw, xb, yb, r;     cin >> y1 >> y2 >> yw >> xb >> yb >> r;     if (y1 > y2) swap(y1, y2);     long double bottom = y1 + r;     long double top = min(y2 - r, yw - r);     if (bottom > top + 1e-9) {       printf( -1 n );       exit(0);     }     long double low = 0.0, high = xb;     for (int _n((300)), hod(1); hod <= _n; hod++) {       long double xx = (low + high) / 2;       long double ff = check(y1, y2, yw, xb, yb, r, xx);       line l(make_pair(xx, yw - r), make_pair(0, ff));       if (ff + 1e-9 > bottom && l.dist(make_pair(0, y2)) + 1e-9 > r &&           ff < top + 1e-9) {         die(xx);       }       if (ff < bottom)         high = xx;       else         low = xx;     }     printf( -1 n );   }   