#include <stdio.h>
/*
task:Y1984
lang:c*/
main()
{

int a, b, c, i, y, z, M, N, Q;
char **NN;

    scanf("%i", &N);
    scanf("%i", &M);

    NN = calloc(N+1, sizeof(char*));
    for(i=0; i<N; i++)
    {
        NN[i] = malloc(N+1);
        for(y=0; y<N; y++)
            NN[i][y]=2;
        NN[i][i] = 0;
    }
    
    for(i=0; i<M; i++)
    {
        scanf("%i %i %i", &a, &b, &c);
        NN[a][b]=NN[b][a]=c;
    }
    for(i=0; i<N; i++)
        for(y=0; y<N; y++)
        {
            if(i==y || NN[i][y] == 2)continue;
            for(z=0; z<N; z++)
            {
                if(NN[i][z]==2)continue;
                NN[y][z]=NN[z][y] = NN[i][y]!=NN[i][z];
            }
        }

    scanf("%i", &Q);
    for(i=0; i<Q; i++)
    {
       scanf("%i %i", &a, &b);
       printf("%i\n", NN[a][b]);
    }
    return 0;
}
