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

int mt[1024][1024];
int ln[1024][1024];
int N, M;

int main() {
    int i, j, a, b, r, v;
    scanf("%d%d", &N, &M); a=N/2;
    for(i=0; i<a; i++) {
    	for(j=0; j<a; j++)
        	mt[i][j]=mt[i][j+a]=mt[i+a][j]=mt[i+a][j+a]=2;
        ln[i][0]=ln[i+a][0]=1;
    }
    for(i=0; i<M; i++) {
    	scanf("%d%d%d", &a, &b, &r);
        mt[a][b]=mt[b][a]=r;
        ln[a][ln[a][0]++]=b;
        ln[b][ln[b][0]++]=a;
        for(j=1; j<ln[a][0]; j++) {
        	v=ln[a][j];
            if(b!=v && mt[b][v]==2) {
	        	mt[b][v]=mt[v][b]=((r)?(!mt[a][v]):(mt[a][v]));
            	ln[b][ln[b][0]++]=v;
            	ln[v][ln[v][0]++]=b;
            }
        }
/*
        for(j=1; j<ln[b][0]; j++) {
        	v=ln[b][j];
            if(a!=v && mt[a][v]==2) {
	        	mt[a][v]=mt[v][a]=((r)?(!mt[b][v]):(mt[b][v]));
            	ln[a][ln[a][0]++]=v;
				ln[v][ln[v][0]++]=a;
            }
        }
*/
    }
    scanf("%d", &j);
    for(i=0; i<j; i++) {
    	scanf("%d%d", &a, &b);
        printf("%d\n", mt[a][b]);
    }
	return 0;
}

