#include <iostream>
#include <cstdio>
#include <cmath>
#include <algorithm>
using namespace std;
//英语 看博友分析 抄博友程序 计算几何 点积 叉积 没掌握
struct point{
double x,y;
//构造函数没掌握
};
point vect[2][20];
double dis(point a, point b)
{
return sqrt(pow((a.x-b.x),2)+pow((a.y-b.y),2));
}
double sina(point a,point b)//叉积求sina
{
point o={0,0};
return (a.x*b.y-a.y*b.x)/(dis(a,o)*dis(b,o));
}
double cosa(point a,point b)//点积求cosa
{
point o={0,0};
return (a.x*b.x+a.y*b.y)/(dis(a,o)*dis(b,o));
}
bool equ(double a,double b)
{
return fabs(a-b)<1e-10;//抄博友程序 科学计数法
}
int main()
{
int n;
while(1)
{
//cin>>n;
scanf("%d",&n);
if(n==0)
{
break;
}
for(int j=0;j<2;j++)//抄博友程序 输入向量 没掌握
{
point origin;
cin>>origin.x>>origin.y;
for(int i=0;i<n-1;i++)
{
point tmp,tmp1;
cin>>tmp.x>>tmp.y;
tmp1=tmp;
tmp.x-=origin.x;
tmp.y-=origin.y;
vect[j][i]=tmp;
origin.x=tmp1.x;
origin.y=tmp1.y;
}
}
int jg=0;
double sint=sina(vect[0][0],vect[1][0]);//抄博友分析 判断旋转 没掌握
double cost=cosa(vect[0][0],vect[1][0]);
for(int i=1;i<n-1;i++)
{
double st=sina(vect[0][i],vect[1][i]);
double ct=cosa(vect[0][i],vect[1][i]);
if(!equ(sint,st)|| !equ(cost,ct))//抄博友程序
{
jg=1;
break;
}
}
point o={0,0};//抄博友程序 没掌握 向量和0点的比
double ra=dis(vect[0][0],o)/dis(vect[1][0],o);//抄博友分析 判断伸缩
for(int i=1;i<n-1;i++)
{
double rt=dis(vect[0][i],o)/dis(vect[1][i],o);
if(!equ(rt,ra))
{
jg=1;
break;
}
}
if(jg==0)
{
cout << "similar" << endl;
}else
{
cout << "dissimilar" << endl;
}
}
return 0;
}