#include <bits/stdc++.h>
using namespace std;
int main() {
  int a[100000], b[100000], m, i;
  while (~scanf("%d", &m)) {
    memset(a, 0, sizeof(a));
    memset(b, 0, sizeof(b));
    for (i = 0; i < m; i++) scanf("%d", &a[i]);
    sort(a, a + m);
    int sum = 0, k = 0;
    for (i = 1; i < m; i++) {
      if (a[i] != a[m - 1] && i != 1) {
        if (a[i] == a[i - 1] && a[i - 1] == a[i - 2]) sum++;
      } else if (a[i] == a[m - 1]) {
        if (a[i] == a[i - 1]) sum++;
      }
      if (a[i] == a[i - 1]) b[k] = a[i], k++;
    }
    printf("%d\n", m - sum);
    printf("%d", a[0]);
    for (i = 1; i < m; i++) {
      if (a[i] == a[i - 1]) continue;
      printf(" %d", a[i]);
    }
    for (i = k - 1; i >= 0; i--) {
      if (b[i] == a[m - 1] || b[i] == b[i - 1]) continue;
      printf(" %d", b[i]);
    }
    puts("");
  }
  return 0;
}
