#include<bits/stdc++.h>
using namespace std;
int main() {
string eq;
while (cin >> eq) {
int coef = 0; // 代表系数
int a=0, b=0, c=0; // 二次项系数与常数
int sign = 1; // 代表方程的左边和右边
int op = 1; // 代表前面的符号
int num = 0;
int i = 0;
while (i < eq.size()) {
if (isdigit(eq[i])) {
num = num * 10 + (eq[i] - '0');
if (i == eq.size() - 1) {
c += num * sign * op;
break;
}
i++;
}
if (eq[i] == 'x') {
if (i + 1 < eq.size() && eq[i+1] == '^') {
if (num == 0) num = 1;
a += num * sign * op;
num = 0;
i = i + 3;
} else {
if (num == 0) num = 1;
b += num * sign * op;
num = 0;
i++;
}
}
if (eq[i] == '=') {
op = -op;
c += num * sign * op;
num = 0;
i++;
}
if (eq[i] == '+') {
c += num * sign * op;
sign = 1;
num = 0;
i++;
}
if (eq[i] == '-') {
c += num * sign * op;
sign = -1;
num = 0;
i++;
}
}
// cout << a << " " << b << " " << c << endl;
// cout << pow(b, 2) << endl;
if ((pow(b, 2)- 4 * a * c) < 0) {
cout << "No Solution" << endl;
continue;
}
double x1 = (-b - sqrt(pow(b,2) - 4 * a * c)) / (2*a);
double x2 = (-b + sqrt(pow(b, 2) - 4 * a * c)) / (2*a);
cout << fixed << setprecision(2) << x1;
cout << " ";
cout << fixed << setprecision(2) << x2;
cout << endl;
}
return 0;
}