Генрі описує сценарій міграції бази даних з високим навантаженням. Скрипт являє собою список з транзакцій. -та транзакція складається з a_i запитів. Генрі хоче розділити скрипт на мінімально можливу кількість пакетів, де кожен пакет містить або одну транзакцію, або послідовність послідовних транзакцій, а загальна кількість запитів у кожному пакеті не перевищує .
На жаль, Генрі не знає точного значення для продуктивної бази даних, тому він збирається оцінити мінімальну кількість пакетів для можливих значень : t_1, t_2, \ldots, t_q. Допоможіть Генрі обчислити кількість транзакцій для кожного з них.
Перший рядок містить кількість транзакцій (1 \le n \le 200\,000) у міграційному скрипті.
Другий рядок містить цілих чисел a_1, a_2, \ldots, a_n — кількість запитів у кожній транзакції (1 \le a_i; \sum a_i \le 10^6).
Третій рядок містить кількість запитів (1 \le q \le 10^5).
Четвертий рядок містить цілих чисел t_1, t_2, \ldots, t_q (1 \le t_i \le \sum a_i).
Виведіть рядків. У -му рядку виведіть мінімальну кількість пакетів, кожен з яких містить не більше t_i запитів. Якщо неможливо розбити скрипт на пакети для деякого t_i, виведіть "Impossible".
Пам'ятайте, що ви не можете змінювати порядок транзакцій, вам дозволено лише групувати послідовні транзакції в пакет.
Приклад 1