#include <bits/stdc++.h>
using namespace std;

struct xishu{
    int a;
    int b;
    int c;
};

xishu getxishu(string str){
    int positive = 1;       //第一个数字默认为正
    int tempxishu = 1;      //没有系数的x或x^2系数默认为1
    bool firstnum = false;  //当遇到数字时进入统计数字模式
                            //当这个模式下遇到了非数字则要结算当前系数
    xishu res;
    res.a = 0;
    res.b = 0;
    res.c = 0;
    for(int i = 0; i < str.size(); i++){
        if(str[i] >= '0' && str[i] <= '9'){
            if(!firstnum){          //遇到1个数字时,说明不能默认系数为1了,并且进入计数
                firstnum = true;
                tempxishu = str[i] - '0';
            }
            else{
                tempxishu = tempxishu*10 + (str[i] - '0');
            }
        }
        else if(str[i] == 'x'){     //遇到x时说明系数要结算了,所有初值要重置
            if(str[i+1] == '^' && str[i+2] == '2'){ //直接往后遍历是否为^2,计入系数a
                res.a += positive * tempxishu;
                tempxishu = 1;
                firstnum = false;
                i += 2;
            }
            else{                                   //否则计入系数b
                res.b += positive * tempxishu;
                tempxishu = 1;
                firstnum = false;
            }
        }
        else if(str[i] == '+' || str[i] == '-'){    //除了第一个默认的正系数,接下来遇到
            if(firstnum){                           //+-都需要改变正负并且遇到+-也要结算
                res.c += positive * tempxishu;
                firstnum = false;
                tempxishu = 1;
            }
            if(str[i] == '+')   positive = 1;
            else                positive = -1;
        }
    }
    //当最后一个字符为数字时,系数并未结算,此时bool值为真
    if(firstnum){       
        res.c += positive * tempxishu;
    }
    return res;
}

int main() {
    string str;
    while(cin>>str){
        int mid = str.find('=');
        string pre = str.substr(0,mid);
        string last = str.substr(mid+1);
        xishu prexishu = getxishu(pre);     //等号前的系数获取
        xishu lastxishu = getxishu(last);   //等号后的系数获取
        int a, b, c;
        a = prexishu.a - lastxishu.a;       //等号后面的系数移到另一边需要变号
        b = prexishu.b - lastxishu.b;
        c = prexishu.c - lastxishu.c;
        int deta = b*b - 4*a*c;
        if(deta < 0){
            cout<<"No Solution"<<endl;
        }
        else{
            double ans1, ans2;
            ans1 = (-1*b-sqrt(deta)) / (2*a);
            ans2 = (-1*b+sqrt(deta)) / (2*a);
            printf("%.2lf %.2lf\n", ans1, ans2);
        }
    }
}