#include using namespace std; #define REP(i,st,ed) for(register int i=st,i##end=ed;i<=i##end;++i) #define DREP(i,st,ed) for(register int i=st,i##end=ed;i>=i##end;--i) typedef long long ll; templateinline bool chkmin(T &x,T y){return (yinline bool chkmax(T &x,T y){return (y>x)?(x=y,1):0;} inline int read(){ int x; char c; int f=1; while((c=getchar())!='-' && (c>'9' || c<'0')); if(c=='-') f=-1,c=getchar(); x=c^'0'; while((c=getchar())>='0' && c<='9') x=(x<<1)+(x<<3)+(c^'0'); return x*f; } inline ll readll(){ ll x; char c; int f=1; while((c=getchar())!='-' && (c>'9' || c<'0')); if(c=='-') f=-1,c=getchar(); x=c^'0'; while((c=getchar())>='0' && c<='9') x=(x<<1ll)+(x<<3ll)+(c^'0'); return x*f; } const int maxm=100+10,inf=0x3f3f3f3f; struct Edge{ int x,y,z; bool operator <(const Edge &rhs) const{ return zt2 || E1[i].z