#include using namespace std; string s; int d[26][26]; vector e[26]; int main() { cin >> s; for (int i = 0; i < 26; i++) { for (int j = 0; j < 26; j++) { cin >> d[i][j]; } } for (int i = 0; i < s.size(); i++) { int u = s[i] - 'a'; e[u].push_back(i + 1); } for (int i = 0; i < 26; i++) { for (int j = 0; j < 26; j++) { bool f = 1; for (int k = 0; k < e[i].size(); k++) { if (upper_bound(e[j].begin(), e[j].end(), e[i][k]) == e[j].end()) break; else if (*upper_bound(e[j].begin(), e[j].end(), e[i][k]) - e[i][k] < d[i][j]) { f = 0; break; } } if (f) cout << "Y"; else cout << "N"; if (j < 25) cout << " "; } cout << endl; } }