#include <bits/stdc++.h>
#include<ext/pb_ds/assoc_container.hpp>
#define gp  __gnu_pbds
#define iset(T) gp::tree<T,gp::null_type,less<T>,gp::rb_tree_tag,gp::tree_order_statistics_node_update>
using namespace std;

#define SQ(x) ((x)*(x))
#define u unsigned
#define ull unsigned long long
#define ll  long long
#define ld  long double
#define test(x) cout<<"here "<<x<<endl;
#define debug(x) cout<<(#x)<<": "<<(x)<<endl;
#define inputstl(v) for(auto& x:v) cin>>x;
#define input(arr,n) for(ull i=0;i<n;++i){cin>>arr[i];}
#define print(arr,n) for(ull i=0;i<n;++i){cout<<arr[i]<<" ";}cout<<'\n';
#define printall(x) for(auto y:x){cout<<y<<' ';}cout<<'\n';
#define printallpii(x) for(auto y:x){cout<<y.fi<<','<<y.se<<' ';}cout<<'\n';
#define fi first
#define se second
#define pb push_back
#define eb emplace_back
#define mp make_pair
#define mt make_tuple
#define pii pair<int,int>
#define mod (ll)(998244353)
#define fastio ios_base::sync_with_stdio(false);cin.tie(nullptr);cout.tie(nullptr);
#define SENSITIVITY 1e-9
#define EQUAL(x1,x2) [](auto x1,auto x2){double ep=0.0001;double pos=x1-x2;if(pos<0){pos=-pos;}double maxi=(x1>x2)?(x1):(x2);if(pos/(maxi*ep)<SENSITIVITY)return true;else return false;}(x1,x2)
bool isPrime(ll a)
{
    if(a==1)
        return false;
    for(ll i=2; i*i<=a; ++i)
    {
        if(a%i==0)
        {
            return false;
        }
    }
    return true;
}
bool isPali(string s)
{
    int _size=(s.length())/2;
    for(int i=0; i<_size; ++i)
    {
        if(s.at(i)!=s.at(s.length()-1-i))
        {
            return false;
        }
    }
    return true;
}
int gcd(int a,int b)
{
    if(a==0)
    {
        return b;
    }
    else if(b==0)
    {
        return a;
    }
    else
    {
        int shift=__builtin_ctz(a|b);
        a>>=__builtin_ctz(a);
        do
        {
            b>>=__builtin_ctz(b);
            if(a>b)
            {
                a=a^b;
                b=a^b;
                a=a^b;
            }
            b-=a;
        }
        while(b);
        return a<<shift;
    }
}
ll gcdll(ll a,ll b)
{
    if(a==0)
    {
        return b;
    }
    else if(b==0)
    {
        return a;
    }
    else
    {
        ll shift=__builtin_ctzll(a|b);
        a>>=__builtin_ctzll(a);
        do
        {
            b>>=__builtin_ctzll(b);
            if(a>b)
            {
                a=a^b;
                b=a^b;
                a=a^b;
            }
            b-=a;
        }
        while(b);
        return a<<shift;
    }
}
ll power(ll a,ll b,ll _mod)
{
    ll temp=a;
    ll ans=1;
    int limit=63-__builtin_clzll(b);
    int index=0;
    while(index<=limit)
    {
        if(b&(1ll<<index))
        {
            ans=(ans*temp)%_mod;
        }
        ++index;
        temp=(temp*temp)%_mod;
    }
    return ans;
}


int main()
{
//    #define cin fin
//    ifstream fin;
//    fin.open("input.txt",ios_base::in);
    fastio;
    int tt=1;
    cin>>tt;
    while(tt--)
    {
        ll L,R,c,d;
        cin>>L>>R;
        if(2*L>R)
        {
            cout<<0<<'\n';
            continue;
        }
        c=2*L;
        d=R;
        ll s=((d-c+1)*(c+d))/2;
        cout<<s-(d-c+1)*c+(d-c+1)<<'\n';
    }
    return 0;
}

#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define For(i,a,b,c) for(ll i=a;i<b;i+=c)
#define For2(i,a,b,c) for(ll i=a;i>=b;i-=c)
#define vec_ll vector<vector<ll>>
#define vec_pr vector<pair<ll,ll>>
#define p_ll pair<ll,ll>
#define pbk push_back
#define mkpr make_pair
#define fst first
#define snd second

void print(ll *arr, ll n){
    For(i,0,n,1)cout<<arr[i]<<" ";
    cout<<endl;
}

void print_vec(vector<ll> &vec, ll n){
    For(i,0,n,1)cout<<vec[i]<<" ";
    cout<<endl;
}


bool s_sec(const pair<ll,ll> &a, const pair<ll,ll> &b) {
    return (a.second < b.second);
}

ll fast_expo(ll a, ll p){
    //cout<<a<<" ";
    ll x=p-2;
    ll curr=a;
    ll ans=1;
    while(x!=0){
        if(x%2==1){
            ans=(ans*curr)%p;
        }
        x/=2;
        curr=(curr*curr)%p;
    }
    return ans;
}

///

///

int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);

    ll t;
    cin>>t;

    while(t--){
        ll L,R;
        cin>>L>>R;

        ll ans=0;
        if(R>=2*L){
            ll len=(R-2*L)+1;

            if(len%2==0){
                ll half=(len/2);
                ans=2*half*(half+1);
                ans-=(half);
            }
            else{
                ll half=(len+1)/2;
                ans=(2*half*half);
                ans-=half;
            }
        }

        cout<<ans<<"\n";
    }
}



