#include <bits/stdc++.h>
using namespace std;
int a[311111];
int best[311111];
int main() {
  int n;
  scanf("%d", &n);
  for (int i = 0; i < n; i++) {
    scanf("%d", &a[i]);
    best[n - 1] = max(best[n - 1], a[i]);
  }
  for (int i = 0; i < n - 1; i++) {
    int j = abs(i - (n - 1 - i - 1));
    best[j] = max(best[j], max(a[i], a[i + 1]));
  }
  for (int i = 1; i < n - 1; i++) {
    int j = abs(i - 1 - (n - 1 - i - 1));
    best[j] = max(best[j], max(min(a[i - 1], a[i]), min(a[i], a[i + 1])));
  }
  for (int i = 2; i < n; i++) {
    best[i] = max(best[i], best[i - 2]);
  }
  for (int i = 0; i < n; i++) {
    printf("%d%c", best[i], " \n"[i == n - 1]);
  }
}
