#arc045c. [arc045_c]エックスオア多橋君

[arc045_c]エックスオア多橋君

問題文

多橋君は橋が大好きです。したがって、全ての辺が橋(グラフ理論用語)となる木と呼ばれるグラフが大好きです。また、多橋君は最近学校でXORについて学びました。そこで、次のような問題について考えています。

NN 頂点と N1N-1 本の辺からなる連結な無向グラフ、つまり木が与えられます。各頂点は、それぞれ頂点 11、頂点 22、…、頂点 NN と呼ばれます。各辺にはそれぞれ非負整数のコストが割り振られています。

整数 XX が与えられるので、頂点 aa と頂点 bb を結ぶ単純パス(同じ辺を二度通らないパス、木においては必ず 11 つだけ存在する)上の辺のコストのrmxor\\rm{xor}和が XX になるような組 (a,b)(a,b) (1abN1≦a<b≦N)の総数を求めてください。 ただしrmxor\\rm{xor}和とは、いくつかの整数 A1,A2,A_1,A_2,… があったとき、それらの2進表現のビット毎の排他的論理和 A1A_1 rmxor\\rm{xor} A2A_2 rmxor\\rm{xor}… により得られる値のことを表します。 例えば、11 rmxor\\rm{xor} 22 rmxor\\rm{xor} 5566 です。

あなたの仕事は、多橋君の代わりにこの問題を解くことです。


入力

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

NN XX x1x_1 y1y_1 c1c_1 x2x_2 y2y_2 c2c_2 : xN1x_{N-1} yN1y_{N-1} cN1c_{N-1}

  • 11 行目には、グラフの頂点数を表す整数 N(1N100,000)N (1 ≦ N ≦ 100,000) と問題文中の整数 X(0X109)X (0≦X≦10^9) が与えられる。
  • 続く N1N-1 行には、グラフの N1N-1 本の辺の情報が与えられる。このうち i(1iN1)i(1≦i≦N-1) 行目には、ii 番目の辺が結ぶ 22 つの頂点 xi,yi(1xi,yiN)x_i,y_i(1≦x_i,y_i≦N) とコスト ci(0ci109)c_i (0≦c_i≦10^9) が与えられる。
  • 与えられるグラフは連結であることが保証される。

出力

11 行目に問題文中で求められている答えを出力せよ。末尾に改行を入れること。


入力例1


6 7
1 2 5
2 3 3
3 4 6
2 5 2
5 6 7

出力例1


3

(a,b)=(1,5),(4,5),(5,6)(a,b)=(1,5),(4,5),(5,6) のとき、パス上の辺のコストのrmxor\\rm{xor}和が 77(22進表記で111111) となるので答えは 33 となる。

この入力例に対するグラフは下図のようになる。コストについては、その1010進表記と22進表記を表示している。

サンプル1説明


入力例2


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

出力例2


4

入力例3


10 1
9 10 1
6 10 1
5 2 1
8 6 1
4 5 1
7 6 0
3 8 0
3 1 1
8 2 0

出力例3


25