#include<stdio.h>
#include<stdlib.h>
#include<iostream>
#include<algorithm>
#include<vector>
#include<limits.h>
#define lli long long int
#define sf(temp) scanf("%lld",&temp)
using namespace std;
vector<lli> v;
bool cmp(lli i,lli j)
{
return i<j;
}
int main()
{
lli t,temp;
sf(t);
while(t--)
{
lli n;
sf(n);
v.clear();
if(n==0)
{
printf("0\n");
continue;
}
for(lli i=0;i<n;i++)
{
sf(temp);
v.push_back(temp);
}
sort(v.begin(),v.end(),cmp);
lli z=v[0],count1=1;
lli max1=LONG_LONG_MAX;
for(lli i=1;i<n;i++)
{
if(v[i]-1==z)
{
count1++;
}
else
{
if(max1>count1)
max1=count1;
count1=1;
}
z=v[i];
}
if(max1>count1)
max1=count1;
printf("%lld\n",max1);
}
return 0;
}
I2luY2x1ZGU8c3RkaW8uaD4KI2luY2x1ZGU8c3RkbGliLmg+CiNpbmNsdWRlPGlvc3RyZWFtPgojaW5jbHVkZTxhbGdvcml0aG0+CiNpbmNsdWRlPHZlY3Rvcj4KI2luY2x1ZGU8bGltaXRzLmg+CiNkZWZpbmUgbGxpIGxvbmcgbG9uZyBpbnQKI2RlZmluZSBzZih0ZW1wKSBzY2FuZigiJWxsZCIsJnRlbXApCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CnZlY3RvcjxsbGk+IHY7CmJvb2wgY21wKGxsaSBpLGxsaSBqKQp7CgkgcmV0dXJuIGk8ajsKfQppbnQgbWFpbigpCnsKICAgIGxsaSB0LHRlbXA7CglzZih0KTsKCXdoaWxlKHQtLSkKCXsKCQkgbGxpIG47CgkJIHNmKG4pOwoJCSB2LmNsZWFyKCk7CgkJIGlmKG49PTApCiAgICAgICAgIHsKICAgICAgICAgICBwcmludGYoIjBcbiIpOwogICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICB9CgkJIGZvcihsbGkgaT0wO2k8bjtpKyspCgkJIHsKICAgICAgICAgICAgc2YodGVtcCk7CiAgICAgICAgICAgIHYucHVzaF9iYWNrKHRlbXApOwoJICAgICB9CgkgICAgIHNvcnQodi5iZWdpbigpLHYuZW5kKCksY21wKTsKCSAgICAgbGxpIHo9dlswXSxjb3VudDE9MTsKCSAgICAgbGxpIG1heDE9TE9OR19MT05HX01BWDsKCSAgICAgZm9yKGxsaSBpPTE7aTxuO2krKykKCSAgICAgewogICAgICAgICAgIGlmKHZbaV0tMT09eikKICAgICAgICAgICB7CiAgICAgICAgICAgICAgIGNvdW50MSsrOwogICAgICAgICAgIH0KICAgICAgICAgICBlbHNlCiAgICAgICAgICAgewogICAgICAgICAgICAgIGlmKG1heDE+Y291bnQxKQogICAgICAgICAgICAgICBtYXgxPWNvdW50MTsKICAgICAgICAgICAgICBjb3VudDE9MTsKICAgICAgICAgICB9CiAgICAgICAgICAgej12W2ldOwoJICAgICB9CgkgICAgICBpZihtYXgxPmNvdW50MSkKICAgICAgICAgICAgICBtYXgxPWNvdW50MTsKICAgICAgICAgcHJpbnRmKCIlbGxkXG4iLG1heDEpOwoJfQogICByZXR1cm4gMDsKfQ==