Дедушка выходил из дома и затем проходил по нескольким переходам между перекрёстками.
Перекрёстки соединены направленными улицами и направленными коридорами внутри зданий, двигаться по таким переходам можно только в одном конкретном направлении. На улице можно замёрзнуть (потерять тепло), а в здании можно согреться (набрать тепло). Дедушка добирался до
школы быстрее некуда, но при этом он никогда не переохлаждался и не перегревался по дороге,
то есть количество тепла всегда было в пределах от −30 до +30 (границы включительно). Перед
началом пути количество тепла у дедушки всегда было равно нулю.
Дедушка не помнит конкретный путь, но помнит n пронумерованных от 1 до n перекрёстков, по
которым он мог идти, и m переходов между ними. Про каждый переход (это может быть как улица,
так и коридор) дедушка помнит, из какого перекрёстка к какому этот переход вёл, сколько времени
требовалось, чтобы его пройти, и сколько тепла дедушка терял (в случае улицы) или приобретал (в
случае коридора) при проходе по нему.
Помогите дедушке вспомнить, за какое минимальное время он добирался до школы или скажите,
что дедушка что-то забыл и добраться от дома до школы без переохлаждения и без перегрева при
заданном наборе перекрёстков и переходов невозможно.
Формат входных данных
Каждый тест состоит из нескольких наборов входных данных. В первой строке находится одно
целое число t (1 6 t 6 10 000) — количество наборов входных данных. Далее следует описание
наборов входных данных.
Первая строка каждого набора входных данных содержит два целых числа n, m
(1 6 n, m 6 105
) — количество перекрёстков и количество переходов между ними.
i-я из последующих m строк содержит 4 целых числа u, v, l и dt (1 6 u, v 6 n, u 6= v, 1 6 l 6 106
,
−30 6 dt 6 30), которые означают существование перехода, по которому дедушка мог пройти за
время l от перекрёстка u к перекрёстку v с изменением тепла на dt при проходе по нему. Если
dt < 0, то данный переход — это улица и дедушка терял −dt тепла при проходе по нему, иначе
данный переход — это коридор здания и дедушка приобретал dt тепла при проходе по нему.
Выходя из дома, дедушка моментально попадал на перекрёсток под номером 1. А в школу дедушка моментально входил, как только оказывался на перекрёстке номер n.
Гарантируется, что сумма n (и сумма m) по всем наборам входных данных не превосходит 105
.
Возможно, что от некоторого перекрёстка u к некоторому перекрёстку v ведёт несколько переходов или что существует одновременно переход от u к v и переход от v к u.
Формат выходных данных
Для каждого теста выведите единственное число — минимальное время, за которое дедушка
добирался от дома до школы. Если добраться до школы без переохлаждения и без перегрева невозможно, то выведите −1.