表达式处理模块是很多数学软件的基本模块,现在,请你完成这个模块中的一个功能。
    人们在书写乘方表达式时,通常将指数放在高于底数的地方,比如:
    你的工作,就是将一个表达式按人们书写乘方表达式的格式显示出来。
    为了简化问题,你需要处理的表达式中只含乘方符号(^)、加号(+)、括号和数字。在这里, 乘方表达式的定义是:
    1、数字串是乘方表达式。
    2、若表达式A、B是乘方表达式,那么A+B、A^B、A^(B)是乘方表达式。
    在显示乘方表达式的时候:
    1、指数应比底数高一行,而且指数的最左字符的横坐标应该为底数的最右字符的横坐标加1。
    2、输出的指数表达式中不应含有括号(见输出示例)。
    3、在显示表达式时,不用考虑可能产生的表达式二义性问题(比如2^(1+2)^3和2^(1+2^3)的显示结果是一样的)。

输入

    输入有多行,每行为一组测试数据。每组测试数据为一个表达式字符串,此表达式中只含 乘方符号(^)、加号(+)、括号和数字。表达式的最大长度为2000个字符。

输出

    对于每组测试数据,先按人们书写乘方表达式的格式输出该表达式,再输出一行 “********************”(二十个星号)。
    在输出的时候,每行末尾不能有多余的空格。

输入示例

2^(1+3)
1+2+3^4

输出示例

 1+3
2
********************
     4
1+2+3
********************

姜边 2004.2