#include <iostream>
#include <map>

using namespace std;

#define loop(i,a,b) for(int i=(a); i<(b); i++)
#define rep(i,b) loop(i,0,b)

int main(){
    int n;
    while(cin>>n,n){
        int a[12];
        rep(i,n) cin>>a[i];
        int c=0;
        while(1){
            map<int,int> m;
            rep(i,n) m[a[i]]++;
            bool update=false;
            rep(i,n){
                if(a[i]!=m[a[i]]){
                    a[i]=m[a[i]];
                    update=true;
                }
            }
            if(!update) break;
            else c++;
        }
        cout<<c<<endl;
        rep(i,n) cout<<a[i]<<(i==n-1 ? '\n' : ' ');
    }
}