#include<bits/stdc++.h>
using namespace std;
struct Pos{
int a,b;
}u[100100];
int n;
int P(int a,int b){
int l=min(a,b);
for(int i=2;i<=l;i++)
if(a%i==0&&b%i==0)
return 0;
return 1;
}
int f(int a,int b){
if(b==0)
return a;
if(a<b)b=a;
return f(b,a%b);
}
void S(int a,int b){
int c=u[a].b,d=u[b].b;
int k=f(c,d);
if(d/k*u[a].a<c/k*u[b].a)
swap(u[a],u[b]);
}
int main(){
cin>>n;
u[0].a=0;
u[0].b=1;
u[1].a=1;
u[1].b=1;
int k=2;
for(int i=1;i<n;i++)
for(int j=i+1;j<=n;j++)
if(P(i,j))
u[k++]={i,j};
for(int i=0;i<k;i++)
for(int j=0;j<k;j++)
S(i,j);
for(int i=0;i<k;i++)
cout<<u[i].a<<"/"<<u[i].b<<endl;
return 0;
}