n = input()
a = map(int,raw_input().split())
b = [-1]*(n+1)
nxt = [i+1 for i in xrange(n+1)]
d = dict()
for i,v in enumerate(a):
	if v in d: d[v][1] = i
	else: d[v] = [i,i]
for k,(l,r) in sorted(d.iteritems(),reverse = True):
	inc = l
	while inc <= r:
		if b[inc] == -1:
			b[inc] = k
		nxt[inc],inc = r,nxt[inc]
	nxt[r] = inc
print " ".join(map(str,b[:n]))