#include <iostream>
using namespace std;
int main() {
const int n = 8 ;
int a[n][n] ;
for (size_t i = 0 ; i < n/2 ; i++){
for (size_t j = 0 ; j < n/2 ; j++){
a[i][j] = 1;
}
}
for (size_t i = 0 ; i < n/2 ; i++){
for (size_t j = n/2 ; j < n ; j++){
a[i][j] = 2;
}
}
for (size_t i = n/2 ; i < n ; i++){
for (size_t j = 0 ; j < n/2 ; j++){
a[i][j] = 3;
}
}
for (size_t i = n/2 ; i < n ; i++){
for (size_t j = n/2 ; j < n ; j++){
a[i][j] = 4;
}
}
for (size_t i = 0 ; i < n ; i++){
for (size_t j = 0; j < n ; j++){
cout << a[i][j] << " " ;
}
cout << endl ;
}
cout << "======================" << endl ;
int x ;
for (size_t i = 0 ; i < n/2 ; i++){
for (size_t j = 0 ; j < n/2 ; j++){
for (size_t i1 = n/2 ; i1 < n ; i1++){
for (size_t j1 = n/2 ; j1 < n ; j1++){
x=a[i][j];
a[i][j] = a[i1][j1];
a[i1][j1] = x;
}
}
}
}
for (size_t i = 0 ; i < n/2 ; i++){
for (size_t j = n/2 ; j < n ; j++){
for (size_t i1 = n/2 ; i1 < n ; i1++){
for (size_t j1 = 0 ; j1 < n/2 ; j1++){
x=a[i][j];
a[i][j] = a[i1][j1];
a[i1][j1] = x;
}
}
}
}
for (size_t i = 0 ; i < n ; i++){
for (size_t j = 0; j < n ; j++){
cout << a[i][j] << " " ;
}
cout << endl ;
}
return 0;
}