#include<stdio.h>
#include<stdlib.h>

#define max 10

int main() {
    int n;
    scanf("%d", &n);
    if(n <0) {
        printf("invalid input\n");
        return 0;
    }
    int graph[MAX][MAX]={0};
    int i,j,k;
    int u,v;
    
    while(1){
        scanf("%d",u);
        if(u==-1)
        break;
        scanf("%d",&v);
        if(u==-1)
        break;
        scanf("%d",&v);
        graph[u-1]{v-1]=1;
        }
        
        int transitiveClosure[MAX][MAX];
        for(i=0;i<n;i++)
        for(j=0;j<n;j++)
        transitiveClosure[i][j]=graph[i][j];
        for(i=o;i<n; i++)
        transitiveClosure[i][j]=1;
        
        for(i=o;i<n;i++){
        for(j=o;j<n;j++){
            printf("%d",transitiveClosure[i][j];)
        }
        printf("\n");
        }
        return 0;
    }