// problem_H.cpp: определяет точку входа для консольного приложения.
//

#include "stdafx.h"
#include "stdio.h"
#include <iostream>
#include "math.h"
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
	int a1,b1,x1,j,y1,x2,y2,t,i,y,tochki;
	double k,b,yz;
	FILE *F;
	F=fopen("SEGMENT.IN","r");
	fscanf(F,"%d",&t);
	for (i=1;i<=t;i++)
	{
	//cin>>x1>>y1>>x2>>y2;
	fscanf(F,"%d%d%d%d",&x1,&y1,&x2,&y2);
    if (x2-x1==0) k=1; else 	k=(double(y2-y1))/(x2-x1);

	b=y2-k*x2;
	tochki=0;   
	if (x1<x2) {a1=x1; b1=x2;} else {a1=x2; b1=x1;};
	if (x1==x2) if (y1<y2) {a1=y1; b1=y2;} else {a1=y2; b1=y1;};
    
	for (j=a1;j<=b1;j++)
       if (((int(k*j+b)-(k*j+b))==0) || (fabs(int(k*j+b)-(k*j+b))<=0.0e2520)  ) tochki++;
	cout<<tochki<<"\n";

	}
	fclose(F);
	getchar();
	getchar();
	return 0;
}

