#include<iostream>
#include<algorithm>
using namespace std;

int main()
{
  int n,m;
  for(;cin>>n>>m,n;)
    {
      m++;
      int time[m][m];
      int money[m][m];
      for(int i=0;i<m;i++)
	for(int j=0;j<m;j++)
	  {
	    if(i==j)
	      {
		time[i][j]=0;
		money[i][j]=0;
	      }
	    else
	      {
		time[i][j]=9999999;
		money[i][j]=9999999;
	      }
	  }
      for(int i=0;i<n;i++)
	{
	int a,b;
	cin>>a>>b;
	cin>>money[a][b]>>time[a][b];
	}
      for(int k=0;k<m;k++)
	for(int i=0;i<m;i++)
	  for(int j=0;j<m;j++)
	    {
	      time[i][j]=min(time[i][j],time[i][k]+time[k][j]);
	      money[i][j]=min(money[i][j],money[i][k]+money[k][j]);
	    }
      int k;
      cin>>k;
      for(int i=0;i<k;i++)
	{
	  int p,q,r;
	  cin>>p>>q>>r;
	  if(r==0)
	    cout<<money[p][q]<<endl;
	  else
	    cout<<time[p][q]<<endl;
	}
    }
}