import strutils, sequtils, tables

var
  n = stdin.readLine.parseInt
  a = stdin.readLine.split.map(parseInt)
  dic = initOrderedTable[int, seq[int]]()
for i in 0.. <n:
  var x: int
  var y: int
  if dic.hasKey(a[i]):
    var val = dic[a[i]]
    x = val[0]
    y = val[1]
  else:
    x = n
    y = -1
  x = min(x, i)
  y = max(y, i)
  dic[a[i]] = @[x, y]
dic.sort(proc (x,y:(int,seq[int])):int = cmp(x[0],y[0]))
var b = newSeqWith(n, 0)
for k, v in dic:
  for i in v[0]..v[1]:
    b[i] = k
echo b.mapIt($it).join(" ")