#include #include #include #include #include #include #include #include #include #include // #include #include #define int long long #define inf 1000000007 #define pa pair #define ll long long #define pal pair #define ppa pair #define mp make_pair #define pb push_back #define EPS (1e-10) #define equals(a,b) (fabs((a)-(b))0) return acos(0); else if(fabs(a.x)0) return 0.0; else if(a.y>0) return acos(a.x/a.absv()); else return 2*acos(0)+acos(-a.x/a.absv()); } int gcd(int v,int b){ if(v>b) return gcd(b,v); if(v==b) return b; if(b%v==0) return v; return gcd(v,b%v); } double dot(Vector a,Vector b){ return a.x*b.x+a.y*b.y; } double cross(Vector a,Vector b){ return a.x*b.y-a.y*b.x; } //----------------kokomade temple------------ int x,y,n,m; string s; int keta[10]={0}; vector G[100002]; vector G2[100002]; vector cc[100002]; vector ww[100002]; void saikisaiki(int u,int mae){ for(int i=0;i>n; cin>>s; s = "q"+s; for(int i=0;i>zz>>zzz; G[zz].pb(zzz); G[zzz].pb(zz); } make_root(1); pa z=dfs(1); int cnum=z.first,wnum=z.second; // cout<