/*
TASK:Y1984
LANG:C
*/
#include<stdio.h>

int masiv[1030][1030] = {0};
int otgovor[1030] = {0};

int main()
{
        int n, m;

        scanf("%d", &n);
        scanf("%d", &m);

        int i;
        int agent1, agent2, vr1zka;

        for(i = 0; i < m; i++)
        {
                scanf("%d %d %d", &agent1, &agent2, &vr1zka);

                masiv[agent1][agent2] = vr1zka+1;
                masiv[agent2][agent1] = vr1zka+1;
        }

        int j;
        int k;

        for(i = 0; i < n; i++)
        {
                for(j = 0; j < n; j++)
                {
                        if(i == j)
                        {
                                masiv[i][j] = 1;
                                masiv[j][i] = 1;
                                continue;
                        }
                        if(masiv[i][j] == 0)
                        {
                                for(k = 0; k < n; k++)
                                {
                                        if(masiv[i][k] == 1 && masiv[j][k] == 1)
                                        {
                                                masiv[i][j] = 1;
                                                masiv[j][i] = 1;
                                                break;
                                        }

                                        if(masiv[i][k] == 2 && masiv[j][k] == 2)
                                        {
                                                masiv[i][j] = 1;
                                                masiv[j][i] = 1;
                                                break;
                                        }
                                        if(masiv[i][k] == 1 && masiv[i][k] == 2)
                                        {
                                                masiv[i][j] = 2;
                                                masiv[j][i] = 2;
                                                break;
                                        }
                                        if(masiv[i][k] == 2 && masiv[j][k] == 1)
                                        {
                                                masiv[i][j] = 2;
                                                masiv[j][i] = 2;
                                                break;
                                        }
                                }
                        }
                }
        }

        int q;

        scanf("%d", &q);

        for(i = 0; i < q; i++)
        {
                scanf("%d %d", &agent1, &agent2);

                if(masiv[agent1][agent2] == 0) otgovor[i] = 2;
                if(masiv[agent1][agent2] == 1) otgovor[i] = 0;
                if(masiv[agent1][agent2] == 2) otgovor[i] = 1;
        }

        for(i = 0; i < q; i++)
        {
                printf("%d\n", otgovor[i]);
        }

        return 0;
}

