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 <cstdio>

#define MAX (8)

int main(void)
{
    char map[4][MAX][MAX + 1];
    
    for (int i = 0; i < MAX; i++){
        scanf("%s", map[0][i]);
    }
    
    for (int x = 1; x < 4; x++){
        for (int i = 0; i < MAX; i++){
            for (int j = 0; j < MAX; j++){
                map[x][j][MAX - i - 1] = map[x - 1][i][j];
            }
        }
    }
    
    for (int x = 1; x < 4; x++){
        printf("%d\n", x * 90);
        for (int i = 0; i < MAX; i++){
            map[x][i][MAX] = '\0';
            printf("%s\n", map[x][i]);
        }
    }
    
    return (0);
}