#include <bits/stdc++.h>
#define int long long
using namespace std;
const int N = 1e4 + 10, M = 2 * N;
int h[N], e[M], w[M], ne[M], idx;
int odd, even;
int n;
void add(int a, int b, int c) // 添加一条边a->b,边权为c
{
e[idx] = b, w[idx] = c, ne[idx] = h[a], h[a] = idx ++ ;
}
void dfs(int u, int fa, int dist)
{
if (dist & 1) even ++ ;
else odd ++ ;
for (int i = h[u]; ~i; i = ne[i])
{
int j = e[i];
if (j == fa) continue;
dfs(j, u, dist + w[i]);
}
}
signed main()
{
memset(h, -1, sizeof h);
cin >> n;
int a, b, c;
while (cin >> a >> b >> c)
{
add(a, b, c), add(b, a, c);
}
dfs(1, -1, 0);
cout << odd * odd * odd + even * even * even << endl;
return 0;
}