#include <iostream>
#include <vector>

using namespace std ;

bool check ( vector < int > s , int i , int j ) {
for ( int k = 0 ; k < s . size ( ) ; k ++ ) {
if ( s [ k ] != i && s [ k ] != j && s [ k ] i == 0 && j s [ k ] == 0 ) {
return 0 ;
}
}
return 1 ;
}

int main ( ) {
long long n ;
cin > > n ;
vector < int > s ;
for ( int i = 1 ; i <= n ; i ++ ) {
if ( n i == 0 ) {
s . push_back ( i ) ;
}
}
vector < pair < int , int > > ans ;
for ( int i = 0 ; i < s . size ( ) ; i ++ ) {
for ( int j = i + 1 ; j < s . size ( ) ; j ++ ) {
if ( s [ j ] s [ i ] == 0 && check ( s , s [ i ] , s [ j ] ) ) {
ans . push_back ( { s [ i ] , s [ j ] } ) ;
}
}
}
cout < < "graph {" < < endl ;
for ( int i = 0 ; i < s . size ( ) ; i ++ ) {
cout < < s [ i ] < < endl ;
}

for ( int i = 0 ; i < ans . size ( ) ; i ++ ) {
cout < < ans [ i ] . first < < "--" < < ans [ i ] . second < < endl ;
}
cout < < "}" ;
} <EOF>