require 'mathn'

n, k, t, u, v, l = gets.split.map &:to_i
carrots = (1..n.to_i).map{gets.to_i}
carrots << l

x = 0
c = 0
accel = 0
time = 0

carrots.each{|d|
	if x + accel * v >= d
		dt = (d - x) / v
		time += dt
		accel -= dt
		x = d
		if c == k
			accel = t
		else
			c += 1
		end
	else
		x += accel * v
		time += accel 
		accel = 0

		if c == 0
			time += (d - x) / u
			x = d
			c = 1
		else
			if x + c * t * v >= d
				used = ((d - x) / (t * v)).ceil
				c -= used - 1
				dt = (d - x) / v
				time += dt
				x = d
				accel = used * t - dt
			else
				x += c * t * v
				time += c * t
				time += (d - x) / u
				x = d
				c = 1
			end
		end
	end
}

p time.to_f