#include <iostream>
using namespace std;
int main(){
	int n,data[12],tmp[12];
	bool f[12];
	while(1){
		cin>>n;
		if(n==0)break;
		for(int i=0;i<n;i++){
			cin>>data[i];
		}
		int ans=0;
		while(1){
			bool f=false;
			for(int i=0;i<n;i++){
				int cnt=0;
				for(int j=0;j<n;j++){
					if(data[i]==data[j])cnt++;
				}
				if(data[i]!=cnt)f=true;
				tmp[i]=cnt;
			}
			for(int i=0;i<n;i++){
				data[i]=tmp[i];
			}
			if(!f)break;
			ans++;
		}
		cout<<ans<<endl;
		for(int i=0;i<n-1;i++){
			cout<<data[i]<<" ";
		}
		cout<<data[n-1]<<endl;
	}
}