#include<bits/sdtc++.h>
using namespace std;
#define long long ll
#define inf 1e18
ll const maxn=2e6+10;
struct node ///链式前向星存图
{
ll to,next,val;///终点,同起点的上一条边的编号,边权
} edge[maxn]; ///边集
ll n,t,u,v,w,cnt,head[maxn],ans;
void add(ll u,ll v,ll w)
{
edge[++cnt].next = head[u];///以u为起点上一条边的编号,也就是与这个边起点相同的上一条边的编号
edge[cnt].to=v;///终点
edge[cnt].val=w;///权值
head[u]=cnt;///更新以u为起点上一条边的编号
}
void solve();
int main()
{
int t;
scanf("%d",&t);
while(t--)
solve();
}
void solve()
{

}

#include<bits/sdtc++.h>
using namespace std;
#define long long ll
#define inf 1e18
ll const maxn=2e6+10;
struct node ///链式前向星存图
{
ll to,next,val;///终点,同起点的上一条边的编号,边权
} edge[maxn]; ///边集
ll n,t,u,v,w,cnt,head[maxn],ans;
void add(ll u,ll v,ll w)
{
edge[++cnt].next = head[u];///以u为起点上一条边的编号,也就是与这个边起点相同的上一条边的编号
edge[cnt].to=v;///终点
edge[cnt].val=w;///权值
head[u]=cnt;///更新以u为起点上一条边的编号
}
void solve();
int main()
{
int t;
scanf("%d",&t);
while(t--)
solve();
}
void solve()
{

}