//#include<bits/stdc++.h>
// 冒泡排序
#include<iostream>
#include<cctype>
#include<algorithm>
#include<math.h>
#include<vector>
#include<map>
#define ll long long
using namespace std;
int n;
vector<int> kv;
void mysort(){
int flag = 1; // 判断是否发生了交换,提前结束
for(int i=1; i<=kv.size() && flag; i++){
flag = 0;
for(int j=0; j<kv.size()-i; j++){
if(kv[j]>kv[j+1]){
int temp = kv[j];
kv[j] = kv[j+1];
kv[j+1] = temp;
flag = 1;
}
}
}
}
int main()
{
cin>>n;
for(int i=0; i<n; i++){
int x;
cin>>x;
if(find(kv.begin(), kv.end(), x)==kv.end())
kv.push_back(x);
}
cout<<kv.size()<<endl;
mysort();
for(int i=0; i<kv.size(); i++){
cout<<kv[i]<<' ';
}
cout<<endl;
return 0;
}
// https://www.luogu.com.cn/problem/P1059
// https://www.luogu.com.cn/problem/P1059