Eve 正在学校学习数学。她已经学会了如何进行十进制数的加减法,并正在通过解决有趣的谜题来练习。她所解决的谜题类型描述如下:给定一个包含加法和减法的等式,该等式可能是正确的,也可能是错误的。她需要验证这个等式,如果它不正确,则需要判断是否可以通过移动等式中的一个数字到另一个位置,使其变为一个正确的等式。
让我们正式定义此谜题中的等式:
- 数字 (Number):是一个由至少 1 位且最多 10 位十进制数字('0' 到 '9')组成的字符串,且没有多余的前导零(唯一允许以数字 '0' 开头的数字是 "0" 本身)。
- 表达式 (Expression):是一个由一个或多个上述定义的数字组成的字符串,数字之间由加号('+')或减号('-')运算符分隔。
- 等式 (Equality):是一个由上述定义的表达式,后跟一个等号('='),再后跟另一个表达式组成的字符串。
- 正确等式 (Correct equality):是一个等式,其中等号左右两侧的表达式根据标准算术运算计算出的十进制数值相等。注意,虽然表达式中的所有数字都是正数,但计算出的数值可能是负数。此外,计算出的数值长度可能超过 10 位。
- 移动数字 (Moving a digit):在等式中移动一个数字意味着从字符串的任意位置移除一个数字,并将其插入到另一个位置,使得结果字符串仍然是一个合法的等式。
一旦你知道如何进行十进制加减法,这个谜题就相当简单了,但它很繁琐。在进行计算时很容易分心并出错。你的任务是编写一个程序来解决这个表达式修正谜题,以帮助 Eve。
输入格式
输入包含一行,即题目描述中定义的等式。输入字符串的总长度不超过 100 个字符。
输出格式
输出一行。如果输入的等式本身就是正确的,输出单词 "Correct"。否则,如果输入的等式可以通过移动一个数字变为正确的等式,则输出修正后的正确等式。如果移动一个数字后有多种可能的正确等式,你可以输出其中任意一个。否则,输出单词 "Impossible"。
样例
样例输入 1
2+2=4
样例输出 1
Correct
样例输入 2
123456789+9876543210=111111110+11-1
样例输出 2
123456789+987654321=1111111100+11-1
样例输入 3
10+9=10
样例输出 3
Impossible
样例输入 4
24=55-13
样例输出 4
42=55-13
样例输入 5
1000000000-10=9999999999
样例输出 5
Impossible