#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
#include<cmath>
#include<queue>
#include<vector>
using namespace std;
#define N 800002
typedef long long ll;
vector<int>v[N];
int n,m,a[N][2],rt,id[1002][1002],ie[1002][1002];
bool re[1002][1002],vis[1002],nx[1002][1002];
void dfs(int te)
{
	for(int i=0;i<v[te].size();i++)
	{
		int j=v[te][i];
		if(!re[rt][j])re[rt][j]=1,dfs(j);
	}
}
void df55(int te,int ti)
{//printf("%d ",te);
	for(int i=0;i<v[te].size();i++)
	{
		int j=v[te][i];if(te==rt)ti=i+1;
		if(!vis[j])
		{
			vis[j]=1;
			if(id[rt][j]&&id[rt][j]!=ti)nx[rt][j]=1;
			id[rt][j]=ti;df55(j,ti);
		}
	}
}
void df5(int te,int ti)
{//printf("%d ",te);
	for(int i=((int)v[te].size())-1;~i;i--)
	{
		int j=v[te][i];if(te==rt)ti=i+1;
		if(!vis[j])
		{
			vis[j]=1;
			if(id[rt][j]&&id[rt][j]!=ti)nx[rt][j]=1;
			id[rt][j]=ti;df5(j,ti);
		}
	}
}
int main()
{
	scanf("%d%d",&n,&m);
	for(int i=1;i<=m;i++)
	{
		int x,y;scanf("%d%d",&x,&y);v[x].push_back(y);
		a[i][0]=x,a[i][1]=y;
	}
	for(int i=1;i<=n;i++)
	{
		rt=i,re[rt][rt]=1,dfs(i);
		for(int j=1;j<=n;j++)vis[j]=0;vis[i]=1;
		df55(i,0);for(int j=1;j<=n;j++)vis[j]=0;vis[i]=1;
		df5(i,0);
	}
	for(int i=1;i<=m;i++)
	{
		if(re[a[i][1]][a[i][0]]^nx[a[i][0]][a[i][1]])puts("diff");
		else puts("same");
	}
}
