#include<cstdio>
#include <iostream>
using namespace std;
long long int t[100005]={0};
void set(int n,int i,int v)
{
while(i<=n)
{
t[i]+=v;
i=i+(i&(-i));
}
}
long long int getSum(int i)
{
long long int sum =0;
while(i>0)
{
sum=sum+t[i];
i=i-(i&(-i));
}
return sum;
}
int main() {
int test;
scanf("%d",&test);
while(test--)
{
int n,m;
long int v;
scanf("%d%d",&n,&m);
for(int i=0;i<=n;i++) t[i]= 0;
while(m--)
{
int p,q;
bool f;
scanf("%d",&f);
if(!f)
{
scanf("%d%d%d",&p,&q,&v);
for(int i=p;i<=q;i++)
{
set(n+1,i,v);
}
}
else
{
scanf("%d%d",&p,&q);
printf("%lld\n",getSum(q)-getSum(p-1));
}
}
}
return 0;
}
I2luY2x1ZGU8Y3N0ZGlvPgojaW5jbHVkZSA8aW9zdHJlYW0+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmxvbmcgbG9uZyBpbnQgdFsxMDAwMDVdPXswfTsKCnZvaWQgc2V0KGludCBuLGludCBpLGludCB2KQp7Cgl3aGlsZShpPD1uKQoJewoJCXRbaV0rPXY7CgkJaT1pKyhpJigtaSkpOwoJfQp9CmxvbmcgbG9uZyBpbnQgZ2V0U3VtKGludCBpKQp7Cglsb25nIGxvbmcgaW50IHN1bSA9MDsKCXdoaWxlKGk+MCkKCXsKCQlzdW09c3VtK3RbaV07CgkJaT1pLShpJigtaSkpOwoJfQoJcmV0dXJuIHN1bTsKfQppbnQgbWFpbigpIHsKCWludCB0ZXN0OwoJc2NhbmYoIiVkIiwmdGVzdCk7Cgl3aGlsZSh0ZXN0LS0pCgl7CgkJaW50IG4sbTsKCQlsb25nIGludCB2OwoJCXNjYW5mKCIlZCVkIiwmbiwmbSk7CgkJZm9yKGludCBpPTA7aTw9bjtpKyspCXRbaV09IDA7CgkJd2hpbGUobS0tKQoJCXsKCQkJaW50IHAscTsKCQkJYm9vbCBmOwoJCQlzY2FuZigiJWQiLCZmKTsKCQkJaWYoIWYpCgkJCXsKCQkJCXNjYW5mKCIlZCVkJWQiLCZwLCZxLCZ2KTsKCQkJCWZvcihpbnQgaT1wO2k8PXE7aSsrKQoJCQkJewoJCQkJCXNldChuKzEsaSx2KTsKCQkJCX0KCQkJfQoJCQllbHNlCgkJCXsKCQkJCXNjYW5mKCIlZCVkIiwmcCwmcSk7CgkJCQlwcmludGYoIiVsbGRcbiIsZ2V0U3VtKHEpLWdldFN1bShwLTEpKTsKCQkJfQoJCX0KCX0KCXJldHVybiAwOwp9