#abc254g. [abc254_g]Elevators

[abc254_g]Elevators

問題文

NN 棟の 10910^9 階建てのビルからなる建物があります。ビルには 11 から NN の番号がついています。

任意の異なるビルの同じ階は連絡通路で結ばれているため 11 分で移動可能です。

また、MM 基のエレベーターがあります。ii 個目のエレベーターはビル AiA_iBiB_i 階から CiC_i 階を結ぶものです。このエレベーターを使うと、Bilex,yleCiB_i \\le x,y \\le C_i を満たす全ての整数の組 x,yx,y に対し、ビル AiA_ixx 階から yy 階に xy|x-y| 分で移動することができます。

以下の QQ 個のクエリに答えてください。

  • ビル XiX_iYiY_i 階からビル ZiZ_iWiW_i 階に移動することが可能か判定し、可能な場合は移動時間の最小値を求めてください。

制約

  • 1leN,M,Qle2times1051 \\le N,M,Q \\le 2 \\times 10^5
  • 1leAileN1 \\le A_i \\le N
  • 1leBi<Cile1091 \\le B_i < C_i \\le 10^9
  • 1leXi,ZileN1 \\le X_i,Z_i \\le N
  • 1leYi,Wile1091 \\le Y_i,W_i \\le 10^9
  • 入力はすべて整数である。

入力

入力は以下の形式で標準入力から与えられる。

NN MM QQ A1A_1 B1B_1 C1C_1 A2A_2 B2B_2 C2C_2 vdots\\vdots AMA_M BMB_M CMC_M mathrmquery1\\mathrm{query}_1 mathrmquery2\\mathrm{query}_2 vdots\\vdots mathrmqueryQ\\mathrm{query}_Q

各クエリは以下の形式で与えられる。

XiX_i YiY_i ZiZ_i WiW_i

出力

QQ 行出力せよ。ii 行目には mathrmqueryi\\mathrm{query}_i について、移動することが不可能であれば -1 を、そうでないならば移動時間の最小値を出力せよ。


入力例 1

3 4 3
1 2 10
2 3 7
3 9 14
3 1 3
1 3 3 14
3 1 2 7
1 100 1 101

出力例 1

12
7
-1

11 番目のクエリについては、以下のようにすることで 1212 分で移動が可能です。

  • エレベーター 11 を使い、ビル 1133 階から 99 階へ移動する。この移動には 66 分かかる。
  • 99 階の連絡通路を使い、ビル 11 からビル 33 へ移動する。この移動には 11 分かかる。
  • エレベーター 33 を使い、ビル 3399 階から 1414 階で移動する。この移動には 55 分かかる。

また、33 番目のクエリについては、移動することが不可能であるため -1 を出力します。


入力例 2

1 1 1
1 1 2
1 1 1 2

出力例 2

1