#include<iostream>

using namespace std;

int main(void)
{
	
	//输入n个数字
	
	int a[100];
	int b[100];
	
	int n;
	int t=0;
	bool tf;
	cin>>n;
	for(int i=0 ; i<n ; i++){
		cin>>a[i];
		tf = false;//默认这个数不在b数组内 
		for(int j=0 ; j<t ; j++){
				if(a[i]==b[j]){
					tf=true;
					break;
				}
		}
		
		if(tf==false){
			b[t++]=a[i];
		}
	}
	
	for(int i=0 ; i<t-1 ; i++){//轮数:数量-1 
		for(int j=0 ; j<t-i-1 ; j++){//次数不断变少:   
			if(b[j]>b[j+1]){
				int t=b[j];
				b[j]=b[j+1];
				b[j+1]=t;
			}
		}
	}
	cout<<t<<endl;
	for(int i=0 ; i<t ; i++){
		cout<<b[i]<<endl;
	}
	return 0;
}
/**************************************************************
	Problem: 1183
	User: 231308061
	Language: C++
	Result: Accepted
	Time:8 ms
	Memory:2072 kb
****************************************************************/