При подготовке олимпиад у каждого разработчика есть своя зона ответственности. Обычно каждый разработчик полностью отвечает за подготовку какой-то определенной задачи, однако в этот раз жюри ИОИП решило поступить по-другому.
Всего в команде разработчиков n человек. Также есть n задач, которые необходимо подготовить. Подготовка i-й задачи требует подготовки ровно c_i ее элементов, и разработка каждого элемента i-й задачи имеет сложность w_i.
Было решено, что каждый разработчик будет отвечать за столько же элементов, за сколько он бы отвечал, если бы разрабатывал целиком соответствующую задачу. Иными словами, i-му разработчику будет назначено ровно c_i элементов из различных задач. Распределение элементов по разработчикам происходит следующим образом:
Иными словами, поддерживается набор еще не до конца распределенных задач и указатель x на <<текущую>> задачу. Когда надо выдать текущему разработчику очередной элемент, ему выдается один элемент из задачи x, после чего x сдвигается по кругу вперед на следующую задачу.
Жюри считает, что такой способ позволяет более честно распределить сложность подготовки олимпиады. Определите суммарную сложность разработки элементов, доставшихся каждому из n разработчиков.
В первой строке дано целое число n --- количество разработчиков (1≤n≤500,000).
В i-й из следующих n строк через пробел даны два целых числа c_i и w_i --- количество элементов в i-й задаче и сложность их разработки (1≤c_i,w_i≤109).
В единственной строке выведите через пробел n чисел, i-е из которых равно суммарной сложности разработки элементов, доставшихся i-му разработчику.
Иллюстрацию к третьему примеру можно видеть ниже. Слева показаны элементы, из которых состоят задачи, справа --- элементы, назначенные каждому разработчику.
В центре каждого элемента указана сложность его реализации, а число в левом верхнем углу обозначает порядок выбора элементов. Элементы выбираются из задач в порядке слева-направо, затем снизу-вверх, а назначаются в порядке снизу-вверх, затем слева-направо.
