На художніх виставках дуже часто є стенди, де діти можуть створювати власні твори з піску. Зазвичай для цього банку або пляшку наповнюють шарами піску різних кольорів. Цього року замість пляшки для оздоблення використовують нову посудину! Це скляна коробка!
Передня грань коробки — двовимірний прямокутник, а її товщина дорівнює рівно 1 одиниці. Усередині встановлюють $n-1$ вертикальних перегородок, що ділять коробку на $n$ секцій. У наведеному нижче прикладі 3 перегородки ділять коробку на 4 секції:
Іноді діти хочуть мати певну кількість піску кожного кольору в кожній секції свого твору. Для кожної пари «секція — колір піску» вони задають мінімум і максимум. Ваше завдання — допомогти їм з'ясувати, наскільки рівним можна зробити твір. Для цього потрібно мінімізувати різницю висот піску між секцією з найвищим загальним рівнем піску та секцією з найнижчим загальним рівнем.
Вхідні дані
Кожен вхідний файл містить один тест. Зауважте, що вашу програму можуть запускати кілька разів на різних вхідних даних. Перший рядок містить 4 цілі числа, розділені пробілами: $n\ m\ w\ h$, де:
- $n$ ($2 \le n \le 200$) — кількість секцій;
- $m$ ($1 \le m \le 200$) — кількість кольорів піску;
- $w,h$ ($1 \le w,h \le 5\,000$) — ширина та висота коробки (її глибина завжди дорівнює 1).
Наступний рядок містить $m$ розділених пробілами дійсних чисел $v$ ($0<v \le w\cdot h$), які мають щонайбільше 3 цифри після крапки. Вони позначають об'єми піску кожного кольору. Використовувати весь пісок не обов'язково, але мінімуми для кожної секції мають бути дотримані.
Наступний рядок містить $n-1$ розділене пробілами дійсне число $x$ ($0<x<w$), кожне з яких має щонайбільше 3 цифри після крапки. Вони позначають відстані кожної перегородки від лівої стінки. Гарантується, що значення $x$ відсортовано за зростанням.
Кожен із наступних $n$ рядків містить $m$ розділених пробілами дійсних чисел $min$ ($0 \le min \le w\cdot h$), які мають щонайбільше 3 цифри після крапки. Елемент $j$ рядка $i$ — мінімальна кількість піску кольору $j$, яку треба помістити в секцію $i$.
Кожен із наступних $n$ рядків містить $m$ розділених пробілами дійсних чисел $max$ ($0 \le max \le w\cdot h$), які мають щонайбільше 3 цифри після крапки. Елемент $j$ рядка $i$ — максимальна кількість піску кольору $j$, яку можна помістити в секцію $i$, причому $min_{ij} \le max_{ij}$.
Вихідні дані
Виведіть дійсне число, округлене рівно до 3 цифр після крапки, яке позначає найменшу можливу різницю між максимальною та мінімальною висотами піску в секціях. Завжди існує розподіл піску, що задовольняє обмеження вхідних даних.
Приклади
Вхідні дані 1
2 2 5 5 2.0 2.0 4.0 1.0 0.0 0.0 1.0 1.0 0.0 0.0 2.0
Вихідні дані 1
0.750
Вхідні дані 2
2 2 5 5 2.0 2.0 4.0 1.0 0.0 0.0 1.0 1.5 0.0 0.0 2.0
Вихідні дані 2
0.625
Вхідні дані 3
2 5 11 10 3.0 4.0 4.0 9.0 2.0 4.0 2.0 2.0 1.0 0.5 0.25 0.0 2.0 0.0 4.0 1.0 2.0 2.0 3.0 4.0 0.75 0.0 2.1 0.0 5.1 1.1
Вихідні дані 3
0.266