#include<iostream>
#include<algorithm>
#include<set>
#include<map>
#include<vector>
#include<queue>
#include<cstring>
#include<cmath>
#include<cstdio>
#include<cstdlib>
using namespace std;
#define REP(i,a,n) for(int i = a ; i < n ; i++)
#define rep(i,n) REP(i,0,n)
#define MAX 999999999

typedef long long ll;

int n;
int xorMemo[5][5][5][5][5];
short dp[5][1<<25];

int solve(int bit){
  if(bit == 0) return 0;
  if(dp[n-1][bit] != -1) return dp[n-1][bit];

  int li,lj;
  for(li=0;li<n;li++){
    for(lj=0;lj<n;lj++){
      if((bit & (1<<(n*li+lj))) != 0){
        break;
      }
    }
    if(lj != n) break;
  }

  int res = MAX;
  REP(hi,li,n){
    REP(hj,lj,n){
      int next = (bit ^ xorMemo[n-1][li][lj][hi][hj]);
      res = min(res,solve(next)+1);
    }
  }
  return dp[n-1][bit]=res;
}

int main(){
  memset(xorMemo,0,sizeof(xorMemo));
  REP(m,1,6){
    rep(li,m){
      rep(lj,m){
        REP(hi,li,m){
          REP(hj,lj,m){
            REP(i,li,hi+1){
              REP(j,lj,hj+1){
                xorMemo[m-1][li][lj][hi][hj] |= (1<<(i*m+j));
              }
            }
          }
        }
      }
    }
  }

  memset(dp,-1,sizeof(dp));
  while(cin>>n,n){
    int bit = 0;
    rep(i,n){
      rep(j,n){
        int x;
        cin>>x;

        if(x == 1){
          bit |= (1<<(i*n+j));
        }
      }
    }

    int ans = solve(bit);
    rep(i,ans){
      cout<<"myon";
    }
    cout<<endl;
  }
}