#include <stdio.h>
#include <stdlib.h>
// 求平均数:
float Average(int a, int b) {
    return ((a + b) / 2.0);
}
// 求最大值:
int Max(int a, int b, int c) {
    if (a >= b && a >= c)
        return a;
    else if (b >= a && b >= c)
        return b;
    else
        return c;
}
int main() {
    int p, t, g1, g2, g3, gj;
    float number;
    while ((scanf("%d %d %d %d %d %d", &p, &t, &g1, &g2, &g3, &gj)) != EOF) {
        if (abs(g1 - g2) <= t) {
            number =Average(g1, g2);
        } else {
            if ((abs(g1 - g3) <= t) && (abs(g2 - g3) <= t)) {
                number = Max(g1, g2, g3);
            } else if ((abs(g1 - g3) > t) && (abs(g2 - g3) > t)) {
                number = gj;
            } else {
                int i = abs(g1 - g3);
                int j = abs(g2 - g3);
                if (i <= j) {
                    number = Average(g1, g3);
                } else {
                    number = Average(g2, g3);
                }
            }
        }
        printf("%.1f", number);
    }
    return 0;
}