You are given a directed weighted graph with n nodes and edges. The nodes are labeled from 1 to n, while the edges are labeled from 1 to . The graph's edges can be split into two parts.
You are given q queries. There are two types of queries
Given these queries, print the shortest path lengths.
The first line of input will contain two integers , the number of nodes, and the number of queries, respectively.
The next integers will contain 3 integers , denoting a directed edge from node to node with weight .
The first of these lines will describe a rooted spanning tree pointing away from node 1, while the last of these lines will have .
The next q lines will contain 3 integers, describing a query in the format described in the statement.
For each type 2 query, print the length of the shortest path in its own line.
All edge weights will be between 1 and .
The edges will describe a rooted spanning tree pointing away from node 1.
for .
will be distinct and between 2 and n.
5 9 1 3 1 3 2 2 1 4 3 3 5 4 5 1 5 3 1 6 2 1 7 4 1 8 2 1 1 2 1 3 2 3 5 2 5 2 1 1 100 2 1 3 1 8 30 2 4 2 2 2 4
.