F. Шу закрывает шторы
ограничение по времени на тест
7 секунд
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Вам дано дерево с $$$n$$$ вершинами, где каждая вершина может быть покрашена в красный, синий или белый цвет. Крутость раскраски определяется как максимальное расстояние$$$^{\text{∗}}$$$ между красной и синей вершиной.

Формально, если мы обозначим цвет $$$i$$$-й вершины как $$$c_i$$$, то крутость раскраски равна $$$\max d(u, v)$$$ среди всех пар вершин $$$1\le u, v\le n$$$, где $$$c_u$$$ — красный, и $$$c_v$$$ — синий. Если на дереве нет красных или нет синих вершин, то крутость равна нулю.

Ваша задача — вычислить сумму крутостей всех $$$3^n$$$ возможных раскрасок дерева, по модулю $$$998\,244\,353$$$.

$$$^{\text{∗}}$$$Расстояние между двумя вершинами $$$a$$$ и $$$b$$$ в дереве равно количеству рёбер на уникальном простом пути между вершиной $$$a$$$ и вершиной $$$b$$$.

Входные данные

Каждый тест состоит из нескольких наборов входных данных. В первой строке находится одно целое число $$$t$$$ ($$$1 \le t \le 50$$$) — количество наборов входных данных. Далее следует описание наборов входных данных.

Первая строка каждого набора входных данных содержит одно целое число $$$n$$$ ($$$2\le n\le 3000$$$) — количество вершин в дереве.

Каждая из следующих $$$n - 1$$$ строк содержит два целых числа $$$u$$$ и $$$v$$$ ($$$1\le u, v\le n$$$) — концы рёбер дерева.

Гарантируется, что заданные рёбра образуют дерево.

Гарантируется, что сумма значений $$$n$$$ по всем наборам входных данных не превосходит $$$3000$$$.

Выходные данные

Для каждого набора входных данных выведите сумму крутостей всех $$$3^n$$$ возможных раскрасок дерева, по модулю $$$998\,244\,353$$$.

Пример
Входные данные
3
3
1 2
2 3
6
1 2
1 3
1 4
3 5
5 6
17
1 2
1 3
1 4
1 5
2 6
2 7
2 8
3 9
3 10
7 11
7 12
11 13
13 14
14 15
10 16
16 17
Выходные данные
18
1920
78555509
Примечание

В первом наборе входных данных есть $$$12$$$ раскрасок, которые имеют хотя бы одну синюю и одну красную вершину. Следующие картинки показывают раскраски и их крутость:

Все эти раскраски имеют крутость $$$2$$$
Все эти раскраски имеют крутость $$$1$$$

Таким образом, сумма крутостей среди всех возможных раскрасок равна $$$6\cdot 2 + 6\cdot 1 = 18$$$.

Во втором наборе входных данных приведены некоторые примеры раскрасок с крутостью $$$3$$$: