Канатна дорога
На маленькому острові є два містечка: Темний Бік і Сонячний Бік, між якими розташовані круті гори. Компанія Intertown Company of Package Conveyance володіє канатною дорогою, що з'єднує ці містечка, і займається транспортним бізнесом. Вони прагнуть максимізувати свій дохід, завантаживши якомога більше пакунків на канатну дорогу.
Канатна дорога має довжину L, і її центр підвішений на канаті. Уявімо, що дорога є 1-вимірним відрізком, а пакунок — це точка на цьому відрізку. Ви можете розміщувати пакунки будь-де, включаючи край дороги, за умови, що відстань між пакунком і центром дороги є більшою або рівною R, і дорога не падає.
Дорога впаде, коли виконується наступна умова:
Тут N — кількість пакунків; m_i — вага i-го пакунка; x_i — позиція i-го пакунка відносно центру дороги.
Ви, програміст з Темного Боку, найняті як інженер компанії. Ваше завдання — написати програму, яка зчитує список пакунків і перевіряє, чи всі пакунки можуть бути завантажені у вказаному порядку без падіння дороги в будь-який момент.
Вхідні дані
Вхід містить два рядки, що описують один тестовий випадок. Перший рядок містить чотири цілі числа N, L, M, R. Другий рядок містить N цілих чисел m_0, m_1, ..., m_{N-1}. Цілі числа розділені пробілом.
Вихідні дані
Якщо існує спосіб завантажити всі пакунки, виведіть "Yes" в одному рядку, без лапок. Інакше виведіть "No".