#include <bits/stdc++.h>
#define fi first
#define se second
#define int long long
using namespace std;
const long long oo=1e18;
const int mod=998244353;
const int base=31;
const int B=320;
int Test=1;
void home()
{
if(fopen("main.inp","r"))
freopen("main.inp","r",stdin),
freopen("main.out","w",stdout);
}
bool bit(int mask,int i){return (mask>>i)&1;}
struct Edge
{
int u,v,w,id;
bool operator<(const Edge &ot)const{
return w<ot.w;
}
}e[200005];
struct Roll{int u,siz,w;};vector<Roll>r;
int n,m;
int bo[300005],sz[300005],ans[300005];
vector<pair<int,int>>a[300005];
int Tim(int a)
{
if(a==bo[a])return a;
return bo[a]=Tim(bo[a]);
}
int Hop(int u,int v)
{
u=Tim(u),v=Tim(v);
if(u==v)return false;
if(sz[u]<sz[v])swap(u,v);
bo[v]=u;sz[u]+=sz[v];
return true;
}
int num[300005],low[300005];
int timer=0;
void DFS(int u,int pId)
{
low[u]=num[u]=++timer;
for(auto [v,id]:a[u])
{
if(id==pId)continue;
if(!num[v])
{
DFS(v,id);
low[u]=min(low[u],low[v]);
if(low[v]>num[u])ans[id]=1;
}
else low[u]=min(low[u],num[v]);
}
}
void Tcmduc_VOI27()
{
cin>>n>>m;
for(int i=1;i<=n;i++)bo[i]=i,sz[i]=1;
for(int i=1;i<=m;i++)
{
int u,v,w;cin>>u>>v>>w;
e[i]={u,v,w,i};
}
sort(e+1,e+m+1);
for(int i=1;i<=m;)
{
int j=i;vector<int>p;
for(;j<=m;j++)
{
auto [u,v,w,id]=e[j];
if(e[i].w!=w)break;
if(Tim(u)!=Tim(v))
{
u=Tim(u),v=Tim(v);
p.push_back(u);p.push_back(v);
a[u].push_back({v,id});
a[v].push_back({u,id});
}
else ans[id]=0;
}
timer=0;
for(int u:p)if(!num[u])DFS(u,0);
for(int u:p)
{
num[u]=low[u]=0;
a[u].clear();
}
for(;i<j;i++)Hop(e[i].u,e[i].v);
}
for(int i=1;i<=m;i++)
{
if(ans[i])cout<<"Yes"<<' ';
else cout<<"No"<<' ';
}
}
signed main()
{
ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);home();
while(Test--)Tcmduc_VOI27();
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNkZWZpbmUgZmkgZmlyc3QKI2RlZmluZSBzZSBzZWNvbmQKI2RlZmluZSBpbnQgbG9uZyBsb25nIAp1c2luZyBuYW1lc3BhY2Ugc3RkOwpjb25zdCBsb25nIGxvbmcgb289MWUxODsKY29uc3QgaW50IG1vZD05OTgyNDQzNTM7CmNvbnN0IGludCBiYXNlPTMxOwpjb25zdCBpbnQgQj0zMjA7CmludCBUZXN0PTE7CnZvaWQgaG9tZSgpCnsKICAgIGlmKGZvcGVuKCJtYWluLmlucCIsInIiKSkgCiAgICBmcmVvcGVuKCJtYWluLmlucCIsInIiLHN0ZGluKSwKICAgIGZyZW9wZW4oIm1haW4ub3V0IiwidyIsc3Rkb3V0KTsKfQpib29sIGJpdChpbnQgbWFzayxpbnQgaSl7cmV0dXJuIChtYXNrPj5pKSYxO30Kc3RydWN0IEVkZ2UKewogICAgaW50IHUsdix3LGlkOwogICAgYm9vbCBvcGVyYXRvcjwoY29uc3QgRWRnZSAmb3QpY29uc3R7CiAgICAgICAgcmV0dXJuIHc8b3QudzsKICAgIH0KfWVbMjAwMDA1XTsKc3RydWN0IFJvbGx7aW50IHUsc2l6LHc7fTt2ZWN0b3I8Um9sbD5yOwppbnQgbixtOwppbnQgYm9bMzAwMDA1XSxzelszMDAwMDVdLGFuc1szMDAwMDVdOwp2ZWN0b3I8cGFpcjxpbnQsaW50Pj5hWzMwMDAwNV07CmludCBUaW0oaW50IGEpCnsKICAgIGlmKGE9PWJvW2FdKXJldHVybiBhOwogICAgcmV0dXJuIGJvW2FdPVRpbShib1thXSk7Cn0KaW50IEhvcChpbnQgdSxpbnQgdikKewogICAgdT1UaW0odSksdj1UaW0odik7CiAgICBpZih1PT12KXJldHVybiBmYWxzZTsKICAgIGlmKHN6W3VdPHN6W3ZdKXN3YXAodSx2KTsKICAgIGJvW3ZdPXU7c3pbdV0rPXN6W3ZdOwogICAgcmV0dXJuIHRydWU7Cn0KaW50IG51bVszMDAwMDVdLGxvd1szMDAwMDVdOwppbnQgdGltZXI9MDsKdm9pZCBERlMoaW50IHUsaW50IHBJZCkKewogICAgbG93W3VdPW51bVt1XT0rK3RpbWVyOwogICAgZm9yKGF1dG8gW3YsaWRdOmFbdV0pCiAgICB7CiAgICAgICAgaWYoaWQ9PXBJZCljb250aW51ZTsKICAgICAgICBpZighbnVtW3ZdKQogICAgICAgIHsKICAgICAgICAgICAgREZTKHYsaWQpOwogICAgICAgICAgICBsb3dbdV09bWluKGxvd1t1XSxsb3dbdl0pOwogICAgICAgICAgICBpZihsb3dbdl0+bnVtW3VdKWFuc1tpZF09MTsKICAgICAgICB9CiAgICAgICAgZWxzZSBsb3dbdV09bWluKGxvd1t1XSxudW1bdl0pOwogICAgfQp9CnZvaWQgVGNtZHVjX1ZPSTI3KCkKewogICAgY2luPj5uPj5tOwogICAgZm9yKGludCBpPTE7aTw9bjtpKyspYm9baV09aSxzeltpXT0xOwogICAgZm9yKGludCBpPTE7aTw9bTtpKyspCiAgICB7CiAgICAgICAgaW50IHUsdix3O2Npbj4+dT4+dj4+dzsKICAgICAgICBlW2ldPXt1LHYsdyxpfTsKICAgIH0KICAgIHNvcnQoZSsxLGUrbSsxKTsKICAgIGZvcihpbnQgaT0xO2k8PW07KQogICAgewogICAgICAgIGludCBqPWk7dmVjdG9yPGludD5wOwogICAgICAgIGZvcig7ajw9bTtqKyspCiAgICAgICAgewogICAgICAgICAgICBhdXRvIFt1LHYsdyxpZF09ZVtqXTsKICAgICAgICAgICAgaWYoZVtpXS53IT13KWJyZWFrOwogICAgICAgICAgICBpZihUaW0odSkhPVRpbSh2KSkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgdT1UaW0odSksdj1UaW0odik7CiAgICAgICAgICAgICAgICBwLnB1c2hfYmFjayh1KTtwLnB1c2hfYmFjayh2KTsKICAgICAgICAgICAgICAgIGFbdV0ucHVzaF9iYWNrKHt2LGlkfSk7CiAgICAgICAgICAgICAgICBhW3ZdLnB1c2hfYmFjayh7dSxpZH0pOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2UgYW5zW2lkXT0wOwogICAgICAgIH0KICAgICAgICB0aW1lcj0wOwogICAgICAgIGZvcihpbnQgdTpwKWlmKCFudW1bdV0pREZTKHUsMCk7CiAgICAgICAgZm9yKGludCB1OnApCiAgICAgICAgewogICAgICAgICAgICBudW1bdV09bG93W3VdPTA7CiAgICAgICAgICAgIGFbdV0uY2xlYXIoKTsKICAgICAgICB9CiAgICAgICAgZm9yKDtpPGo7aSsrKUhvcChlW2ldLnUsZVtpXS52KTsKICAgIH0KICAgIGZvcihpbnQgaT0xO2k8PW07aSsrKQogICAgewogICAgICAgIGlmKGFuc1tpXSljb3V0PDwiWWVzIjw8JyAnOwogICAgICAgIGVsc2UgY291dDw8Ik5vIjw8JyAnOwogICAgfQp9CnNpZ25lZCBtYWluKCkKewogICAgaW9zX2Jhc2U6OnN5bmNfd2l0aF9zdGRpbygwKTtjaW4udGllKDApO2NvdXQudGllKDApO2hvbWUoKTsKICAgIHdoaWxlKFRlc3QtLSlUY21kdWNfVk9JMjcoKTsKICAgIHJldHVybiAwOwp9