#include <iostream>
using namespace std;

int main()
{
	int N,K,T,U,V,L;
	cout.setf(ios::fixed);
	cout.precision(8);

	cin >> N >> K >> T >> U >> V >> L;
	int a[N+1], c=0, udist=0, vdist=0, vend;
	for (int i=0; i<N; i++)
		cin >> a[i];
	a[N] = L;

	udist = a[0];
	vend = a[0]+V*T;
	for (int i=0; i<N; i++)
	{
		while (c>0 && vend<a[i+1])
		{
			c--; vend += V*T;
		}

		if (c == 0 && vend<a[i+1])
		{
			vdist += vend - a[i];
			udist += a[i+1] - vend;
			vend = a[i+1] + V*T;
		}
		else
		{
			vdist += a[i+1] - a[i];
			if (c == K)
				vend = a[i+1] + V*T;
			else
				c++;
		}
	}
	cout << double(udist)/double(U) + double(vdist)/double(V) << endl;
}