Дано орієнтовану мережу, над якою можна виконувати два типи операцій. Перша операція збільшує на пропускну здатність ребра з у , а друга операція зменшує на пропускну здатність ребра з у .
Ваше завдання — виводити значення максимального потоку у мережі з вершини у вершину після кожної з операцій.
Перший рядок містить два цілих числа і (2 \leq n \leq 150, 0 \leq m \leq 2000), де — кількість вершин у мережі, а — кількість ребер. Наступні рядків описують ребра: у кожному рядку три цілих числа , , (1 \leq x, y \leq n, 1 \leq c \leq 1000), що позначають напрямлене ребро з у з пропускною здатністю .
У наступному рядку знаходиться ціле число (1 \leq t \leq 500) — кількість операцій. Наступні рядків містять операції, кожна з яких записана у форматі "1 x y" або "2 x y" залежно від типу.
У будь-який момент у мережі не існує кількох ребер між однією й тією ж парою вершин або петель. Пропускна здатність будь-якого ребра завжди невід’ємна.
Виведіть t+1 чисел. Спочатку виведіть значення максимального потоку у мережі до виконання будь-яких операцій. Далі, після кожної операції, виводьте значення максимального потоку у поточній мережі.
Приклад 1