小雷的烂代码

Time Limit: 1000 ms Memory Limit: 65536 KiB

Problem Description

看着活蹦乱跳的小鲜肉们,小雷想起来自己刚来集训队的那段日子。当时小雷可是个JAVA选手,人称雷JAVA。。。对C一窍不通……更别说C++……小雷今天看了看自己当初写的JAVA代码,突然很伤感(这都写了些啥!)。现在他想把这些代码改规范些,可是有点懒……刚好恰逢举行这比赛,兴致冲冲的就把那一车车代码贴了上来,你能帮小雷改规范么。
已知小雷所有代码都是按JAVA来的,左大括号都不会换行,按照小雷现在的习惯,左大括号都会另起一行,并且缩进到对应位置(用空格进行缩进,具体位置同样例)。

由于手残,小雷还会有许多地方忘记写分号,但是这种情况只会出现在每条语句最后即将换行处。并且只有在最后一个字符是字母或数字时会出错(具体原因可能只有小雷知道)。

你能按上面的规则帮小雷把代码规范一下么?

Input

单组输入,输入到文件结束。
输入包含空格和空行。

保证总输入不超过200行,每行不超过100个字符。

Output

 输出规范后的代码。

Sample Input

#include 

int ha(){return 0;}

int sum(int a,int b){
    return a+b
}

int main(){
    int a,b;
    while(scanf("%d %d",&a, &b) != EOF){
        printf("%d\n",sum(a,b));
    }
    return 0
}

Sample Output

#include 

void ha()
{return 0;}

int sum(int a,int b)
{
    return a+b;
}

int main()
{
    int a,b;
    while(scanf("%d %d",&a, &b) != EOF)
    {
        printf("%d\n",sum(a,b));
    }
    return 0;
}

Hint

 

Source

2015年第五届ACM趣味编程循环赛(第一场) by LeiQ