Problem: Create a program that rotates the pattern of 8 characters x 8 lines clockwise by 90 degrees, 180 degrees, and 270 degrees and outputs it.



Input

A pattern consisting of 8 characters x 8 lines is given. Characters consist of alphanumeric characters, half-width pound'#', and asterisk'*'.

Output

Output the rotated pattern in the following format.


90 (fixed half-width numbers)
Pattern rotated 90 degrees
180 (fixed half-width numbers)
180 degree rotated pattern
270 (fixed half-width numbers)
Pattern rotated 270 degrees


Examples

Input

#*******
#*******
#*******
#*******
#*******
#*******
#*******
########


Output

90
########
#*******
#*******
#*******
#*******
#*******
#*******
#*******
180
########
*******#
*******#
*******#
*******#
*******#
*******#
*******#
270
*******#
*******#
*******#
*******#
*******#
*******#
*******#
########


Input

*******
*******
*******
*******
*******
*******
*******


Output

90

*******
*******
*******
*******
*******
*******
*******
180

*******#
*******#
*******#
*******#
*******#
*******#
*******#
270
*******#
*******#
*******#
*******#
*******#
*******#
*******#

Solution (in CPP):

Solution:
#include <iostream>
#include <stdio.h>
#include <stack>
#include <queue>
#include <algorithm>
#include <set>
#include <math.h>
#include <iomanip>
#include <vector>
using namespace std;
#define ll long long
#define fill(a,b) memset(a,b,sizeof(a))
#define rep(i,n) for(ll i=0;i<n;++i)
#define Sort(a) sort(a.begin(),a.end())
int main(){
    char n[8][8];
    rep(i,8){
        rep(j,8){
            cin>>n[i][j];
        }
    }
    cout<<90<<endl;
    rep(i,8){
        for(int j=7;j>=0;j--){
                cout<<n[j][i];
        }
        cout<<endl;
    }
    cout<<180<<endl;
    for(int i=7;i>=0;i--){
        for(int j=7;j>=0;j--)
        {cout<<n[i][j];}
        cout<<endl;
    }
    cout<<270<<endl;
    for(int i=7;i>=0;i--){
        rep(j,8){cout<<n[j][i];}
        cout<<endl;
    }

    return 0;
}