#icpc2013summerday2f. [icpc2013summer_day2_f]Social Monsters

[icpc2013summer_day2_f]Social Monsters

不思議な生き物と人間が互いに助け合って生きている世界. この世界では自分で捕まえたモンスター同士を戦わせる大会が盛んに行われており, 多くの少年少女達が世界一のトレーナーを目指している.

大会では自分が捕まえたモンスターからパーティを作り,パーティ同士のバトルをする. モンスターのペアには相性があり,相性が非常に悪い場合と普通の場合がある. 相性が非常に悪い場合,そのペアのモンスターを同じパーティに入れることはできない. 相性が普通の場合には,_友情度_という数値で相性の良さが表現される. バトルでは,パーティ全体の友情度の和が勝負の鍵となる.

いまNN匹のモンスターからKK匹のモンスターからなるパーティを作りたい. MM個のモンスターのペア(ai,bi)(a_i,   b_i)に対して相性が分かっており,整数 cic_i で表されている. ci=0c_i = 0 のとき,aia_i 番目のモンスターと bib_i 番目のモンスターは相性が非常に悪いことを意味する. ci0c_i  ≠  0 のとき,aia_i 番目のモンスターと bib_i 番目のモンスターは相性が普通であり,その友情度は cic_i であることを意味する. 与えられたMM個のペア以外は,相性が普通であり,それらの友情度はすべて00である.

パーティの友情度の和を最大にする選び方を考えてみよう.

入力形式

入力は以下の形式で与えられる

NN MM KK a1a_1 b1b_1 c1c_1 ...... aMa_M bMb_M cMc_M

出力形式

KK匹のモンスターからなるパーティを作ることができない場合は1行に "Impossible" を出力せよ.
パーティを作ることができるとき,友情度の和の最大値を出力せよ.

制約

  • 1KN20001 ≤ K ≤ N ≤ 2000
  • 0MN0 ≤ M ≤ N
  • 1aibiN1   ≤   a_i   ≠   b_i   ≤ N
  • ci10000|c_i|   ≤ 10000
  • 各モンスターは a1,a2,,aM,b1,b2,,bMa_1, a_2, …, a_M, b_1, b_2, …, b_M の中に高々2回しか現れない.
  • $i   ≠   j   ⇒   \\{a_i, b_i\\}   ≠   \\{a_j,   b_j\\}$

入出力例

入力例 1


6 5 4
2 1 1
2 5 2
5 1 1
4 3 2
3 6 -1

出力例 1


4

入力例 2


3 1 3
1 2 -10

出力例 2


-10

入力例 3


6 3 5
1 2 0
2 3 10
3 4 0

出力例 3


Impossible