You are given an undirected graph. You want to compute the maximum flow from each vertex to every other vertex.
The graph is special. You can regard it as a convex polygon with n points (vertices) and some line segments (edges) connecting them. The vertices are labeled from 1 to n in the clockwise order. The line segments can only intersect each other at the vertices.
Each edge has a capacity constraint.
Denote the maximum flow from s to t by f(s,t). Output (∑_s=1n∑_t=s+1nf(s,t))mod998244353.
The first line contains two integers n and m, representing the number of vertices and edges (3≤n≤200000,n≤m≤400000).
Each of the next m lines contains three integers u,v,w denoting the two endpoints of an edge and its capacity (1≤u,v≤n,0≤w≤1000000000).
It is guaranteed there are no multiple edges and self-loops.
It is guaranteed that there is an edge between vertex i and vertex (imodn)+1 for all i=1,2,…,n.
Output the answer in one line.