#include <cstdio>
double c_price( double p, double p1, double s1, double p2, double s2 )
{
//if given solutions' concentrations and the result are equal
if ( p1 == p2 && p2 == p )
{
//choose the least price
if( s1 > s2 ) return s2;
return s1;
}
else if ( p1 == p2 && p1 != p ) return 0;
if ( p1 == p ) return s1;
if ( p2 == p ) return s2;
//else solve the system of equations
double a1 = ( p - p1 ) / ( p2 - p1 ); if ( a1 > 1 || a1 < 0 ) return 0;
double a2 = 1 - a1;
return s1*a1+s2*a2;
}
int main()
{
double p1, p2, p3, f_p;
double s1, s2, s3;
scanf("%lf %lf %lf %lf", &p1, &p2, &p3, &f_p);
scanf("%lf %lf %lf", &s1, &s2, &s3);
double s12 = c_price( f_p, p1, s1, p2, s2 );
double s13 = c_price( f_p, p1, s1, p3, s3 );
double s23 = c_price( f_p, p2, s2, p3, s3 );
if( !s12 && !s13 && !s23 ) { printf("Impossible!\n"); return 0; }
double min_price = s12; //choose the least price
if ( min_price > s13 && s13 ) min_price = s13; //"&& s23" is equal to "s23 is correct" statement
if ( min_price > s23 && s23 ) min_price = s23;
printf("%.2lf", min_price);
return 0;
}
I2luY2x1ZGUgPGNzdGRpbz4KZG91YmxlIGNfcHJpY2UoIGRvdWJsZSBwLCBkb3VibGUgcDEsIGRvdWJsZSBzMSwgZG91YmxlIHAyLCBkb3VibGUgczIgKQp7CiAgICAvL2lmIGdpdmVuIHNvbHV0aW9ucycgY29uY2VudHJhdGlvbnMgYW5kIHRoZSByZXN1bHQgYXJlIGVxdWFsCiAgICAgaWYgKCBwMSA9PSBwMiAmJiBwMiA9PSBwICkKICAgIHsKICAgICAgICAvL2Nob29zZSB0aGUgbGVhc3QgcHJpY2UKICAgICAgICBpZiggczEgPiBzMiApIHJldHVybiBzMjsKICAgICAgICByZXR1cm4gczE7CiAgICB9CiAgICAgZWxzZSBpZiAoIHAxID09IHAyICYmIHAxICE9IHAgKSByZXR1cm4gMDsKCiAgICAgaWYgKCBwMSA9PSBwICkgcmV0dXJuIHMxOwogICAgIGlmICggcDIgPT0gcCApIHJldHVybiBzMjsKCiAgICAvL2Vsc2Ugc29sdmUgdGhlIHN5c3RlbSBvZiBlcXVhdGlvbnMKICAgIGRvdWJsZSBhMSA9ICggcCAtIHAxICkgLyAoIHAyIC0gcDEgKTsgaWYgKCBhMSA+IDEgfHwgYTEgPCAwICkgcmV0dXJuIDA7CiAgICBkb3VibGUgYTIgPSAxIC0gYTE7CiAgICByZXR1cm4gczEqYTErczIqYTI7Cn0KCmludCBtYWluKCkKewogICAgZG91YmxlIHAxLCBwMiwgcDMsIGZfcDsKICAgIGRvdWJsZSBzMSwgczIsIHMzOwoKICAgIHNjYW5mKCIlbGYgJWxmICVsZiAlbGYiLCAmcDEsICZwMiwgJnAzLCAmZl9wKTsKICAgIHNjYW5mKCIlbGYgJWxmICVsZiIsICZzMSwgJnMyLCAmczMpOwoKICAgIGRvdWJsZSBzMTIgPSBjX3ByaWNlKCBmX3AsIHAxLCBzMSwgcDIsIHMyICk7CiAgICBkb3VibGUgczEzID0gY19wcmljZSggZl9wLCBwMSwgczEsIHAzLCBzMyApOwogICAgZG91YmxlIHMyMyA9IGNfcHJpY2UoIGZfcCwgcDIsIHMyLCBwMywgczMgKTsKCiAgICAgaWYoICFzMTIgJiYgIXMxMyAmJiAhczIzICkgeyBwcmludGYoIkltcG9zc2libGUhXG4iKTsgcmV0dXJuIDA7IH0KCiAgICBkb3VibGUgbWluX3ByaWNlID0gczEyOyAvL2Nob29zZSB0aGUgbGVhc3QgcHJpY2UKICAgIGlmICggbWluX3ByaWNlID4gczEzICYmIHMxMyApIG1pbl9wcmljZSA9IHMxMzsgLy8iJiYgczIzIiBpcyBlcXVhbCB0byAiczIzIGlzIGNvcnJlY3QiIHN0YXRlbWVudAogICAgaWYgKCBtaW5fcHJpY2UgPiBzMjMgJiYgczIzICkgbWluX3ByaWNlID0gczIzOwogICAgcHJpbnRmKCIlLjJsZiIsIG1pbl9wcmljZSk7CiAgICByZXR1cm4gMDsKfQo=