#include<bits/stdc++.h>
const int N=1003,M=200005;
using namespace std;
int n,m,eu[M],ev[M],u,st[N],t;
bool mp[N][N],rc[N][N],vis[N];
vector<int>ed[N];
void dfs(int x){
	if(!mp[u][x]){
		mp[u][x]=1;
		for(int i:ed[x])dfs(i);
	}
}
void dfss(int x){
	if(x^u&&!vis[x]){
		vis[x]=1;
		for(int i:ed[x])dfss(i);
	}
}
int main(){
	scanf("%d%d",&n,&m);
	for(int i=0;i<m;i++)
	scanf("%d%d",eu+i,ev+i),
	ed[eu[i]].push_back(ev[i]);
	for(int i=1;i<=n;i++)dfs(u=i);
	for(int i=1;i<=n;i++){
		u=i,t=0;
		for(int j:ed[i]){
			rc[i][j]=vis[j];
			dfss(st[++t]=j);
		}
		for(int j=1;j<=n;j++)vis[j]=0;
		for(int j=t;j;j--)
		rc[i][st[j]]|=vis[st[j]],dfss(st[j]);
		for(int j=1;j<=n;j++)vis[j]=0;
	}
	for(int i=0;i<m;i++)
	puts(mp[ev[i]][eu[i]]^rc[eu[i]][ev[i]]
	?"diff":"same");
}