#include
using namespace std;
#include
#include
using namespace __gnu_pbds;
#define ordered_set tree, rb_tree_tag,tree_order_statistics_node_update>
const long long maxn = 1e5+10;
int n;
int val[maxn];
ordered_set num[maxn];
vectorg[maxn];
int ans[maxn];
void swap_ordered_set(ordered_set &a, ordered_set &b) {
a.swap(b);
}
void solve(int node,int par)
{
for(auto ax:g[node])
{
if(ax==par)continue;
solve(ax,node);
if(num[node].size()>n;
for(int i=0;i>val[i];
}
for(int i=1;i>x;
x--;
g[x].push_back(i);
}
solve(0,-1);
for(int i=0;i