/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
public class Main
{
public static boolean chess[][];
{
chess=new boolean[8][8];
chess[0][0]=true;
for(int i=0;i<8;i++){
for(int j=0;j<8;j++){
if(!checkrow(i)&&!checkcolumn(j)&&!checkdiagonals(i,j)&&!checkknight(i,j)){
if(i!=0||j!=0)
chess[i][j]=true;
}
}
}
for(int i = 0; i < 8; i++)
{
for(int j = 0; j < 8; j++)
{
System.
out.
print(((chess
[i
][j
])?"T":"x")+"|"); }
}
}
public static boolean checkrow(int a){
for(int i=0;i<8;i++){
if(chess[a][i])return true;
}
return false;
}
public static boolean checkcolumn(int a){
for(int i=0;i<8;i++){
if(chess[i][a])return true;
}
return false;
}
public static boolean checkdiagonals(int pi,int pj){
int i
=pi
- Math.
min(pi,pj
); int j
=pj
- Math.
min(pi,pj
); for(int k=i,l=j;k<8&&l<8;k++,l++){
if(chess[k][l])return true;
}
int i_2
=pi
- Math.
min(pi,pj
); int j_2
=pj
+ Math.
min(pi,pj
); for(int k=i_2,l=j_2;k<8&&l>1;k++,l--){
if(chess[k][l])return true;
}
return false;
}
public static boolean checkknight(int pi,int pj){
for(int i=-1;i<=1;i++){
for(int j=-1;j<=1;j++){
if(0<=pi+2*i&&pi+2*i<8&&0<=pj+j&&pj+j<8)
if(chess[pi+2*i][pj+j])return true;
if(0<=pi+i&&pi+i<8&&0<=pj+2*j&&pj+2*j<8)
if(chess[pi+i][pj+2*i])return true;
}
}
return false;
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KcHVibGljIGNsYXNzIE1haW4KewoJcHVibGljIHN0YXRpYyBib29sZWFuIGNoZXNzW11bXTsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluIChTdHJpbmdbXSBhcmdzKSB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbgoJewoJICBjaGVzcz1uZXcgYm9vbGVhbls4XVs4XTsKCSAgY2hlc3NbMF1bMF09dHJ1ZTsKCSAgZm9yKGludCBpPTA7aTw4O2krKyl7CgkgIAlmb3IoaW50IGo9MDtqPDg7aisrKXsKCSAgCQkKCSAgCWlmKCFjaGVja3JvdyhpKSYmIWNoZWNrY29sdW1uKGopJiYhY2hlY2tkaWFnb25hbHMoaSxqKSYmIWNoZWNra25pZ2h0KGksaikpewoJICAJaWYoaSE9MHx8aiE9MCkKCSAgICAJY2hlc3NbaV1bal09dHJ1ZTsKCSAgCX0KCSAgCX0KCSAgfQoJICBmb3IoaW50IGkgPSAwOyBpIDwgODsgaSsrKQogICB7CiAgICAgIGZvcihpbnQgaiA9IDA7IGogPCA4OyBqKyspCiAgICAgIHsKICAgICAgICAgU3lzdGVtLm91dC5wcmludCgoKGNoZXNzW2ldW2pdKT8iVCI6IngiKSsifCIpOwogICAgICB9CiAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigpOwogICB9Cgl9CglwdWJsaWMgc3RhdGljIGJvb2xlYW4gY2hlY2tyb3coaW50IGEpewoJCWZvcihpbnQgaT0wO2k8ODtpKyspewoJCQlpZihjaGVzc1thXVtpXSlyZXR1cm4gdHJ1ZTsKCQl9CgkJcmV0dXJuIGZhbHNlOwoJfQoJcHVibGljIHN0YXRpYyBib29sZWFuIGNoZWNrY29sdW1uKGludCBhKXsKCQlmb3IoaW50IGk9MDtpPDg7aSsrKXsKCQkJaWYoY2hlc3NbaV1bYV0pcmV0dXJuIHRydWU7CgkJfQoJCXJldHVybiBmYWxzZTsKCX0KCXB1YmxpYyBzdGF0aWMgYm9vbGVhbiBjaGVja2RpYWdvbmFscyhpbnQgcGksaW50IHBqKXsKCQlpbnQgaSA9cGktIE1hdGgubWluKHBpLHBqKTsKCQlpbnQgaiA9cGotIE1hdGgubWluKHBpLHBqKTsKCQlmb3IoaW50IGs9aSxsPWo7azw4JiZsPDg7aysrLGwrKyl7CgkJCWlmKGNoZXNzW2tdW2xdKXJldHVybiB0cnVlOwoJCX0KCQlpbnQgaV8yID1waS0gTWF0aC5taW4ocGkscGopOwoJCWludCBqXzIgPXBqKyBNYXRoLm1pbihwaSxwaik7CgkJZm9yKGludCBrPWlfMixsPWpfMjtrPDgmJmw+MTtrKyssbC0tKXsKCQkJaWYoY2hlc3Nba11bbF0pcmV0dXJuIHRydWU7CgkJfQoJCXJldHVybiBmYWxzZTsKCX0KCXB1YmxpYyBzdGF0aWMgYm9vbGVhbiBjaGVja2tuaWdodChpbnQgcGksaW50IHBqKXsKCQlmb3IoaW50IGk9LTE7aTw9MTtpKyspewoJCQlmb3IoaW50IGo9LTE7ajw9MTtqKyspewoJCQkJU3lzdGVtLm91dC5wcmludChpKyIiK2opOwoJCQlpZigwPD1waSsyKmkmJnBpKzIqaTw4JiYwPD1waitqJiZwaitqPDgpCgkJCWlmKGNoZXNzW3BpKzIqaV1bcGoral0pcmV0dXJuIHRydWU7CgkJCWlmKDA8PXBpK2kmJnBpK2k8OCYmMDw9cGorMipqJiZwaisyKmo8OCkKCQkJaWYoY2hlc3NbcGkraV1bcGorMippXSlyZXR1cm4gdHJ1ZTsKCQkJfQoJCX0KCQlyZXR1cm4gZmFsc2U7Cgl9Cn0=