Задача №112692. Язык PJ

Мальчик Вартáн настолько любит языки программирования, что выучил уже целых девять и обзавёлся самоучителем по ещё одному языку! Впрочем, просто учить языки ему уже немного надоело, и он решил придумать свой. Название для языка было придумано всего за пару минут — PJ (аббревиатура от любимых команд Вартана), казалось бы, полдела сделано.

После пяти лет упорной работы Вартан реализовал две команды, работающие с целыми неотрицательными числами:

  1. print value "— число value выводится на экран, после чего исполнитель переходит к следующей строке.

  2. jump num count "— если выполнено условие count > 0 , то управление передаётся в строку с номером num , а count уменьшается на 1 . В текущей реализации PJ не предусмотрено использование в качестве num числа большего, чем номер строки, в которой записана данная команда. Если же count = 0 , то исполнитель просто переходит к следующей строке. Обратите внимание, что в следующий раз, когда интерпретатору встретится данная строка, он будет работать уже с новым значением count , то есть можно считать, что каждой команде jump соответствует своя глобальная переменная.

Изначально исполнитель находится на первой строке, работа программы начинается с выполнения записанной в ней команды. Выполнение программы заканчивается после того, как исполнитель попытается перейти дальше последней строки. Нетрудно догадаться, что на данном языке невозможно написать программу, не завершающуюся за конечное число итераций.

По имеющейся программе на языке PJ определите сумму всех чисел, которые будут выведены в результате её исполнения.

Входные данные

На ввод подаётся корректная программа на языке PJ, состоящая как минимум из одной, но не более чем из 10 5 команд. Количество строк в файле совпадает с количеством команд, каждая команда занимает отдельную строку. Команда, записанная в строке с номером i (при нумерации от единицы), удовлетворяет одному из двух форматов:

  1. print value , где 0 ≤ value ≤ 10 4 .
  2. jump num count , где 1 ≤ num i , 0 ≤ count ≤ 10 4 .

Выходные данные

Выведите сумму всех чисел, которые будут выведены в процессе выполнения данной программы.

Примеры
Входные данные
print 1
print 2
jump 2 2
Выходные данные
7
Входные данные
print 3
jump 1 1
print 1
print 1
jump 1 2
Выходные данные
18
Сдать: для сдачи задач необходимо войти в систему