#include<iostream>
using namespace std;
const int maxn = 1e5;
int a[maxn],b[4*maxn];
void pushUp(int i)
{
b[i] = b[i * 2] + b[i * 2 + 1];
}
void build(int i,int l,int r)
{
if(l == r)
{
cin>>b[i];
return;
}
int m = (l + r) / 2;
build(i * 2,l,m);
build(i * 2 + 1,m + 1,r);
pushUp(i);
}
int query(int ql,int qr,int i, int l,int r)
{
if(ql <= l && r <= qr) return b[i];
int m = (l + r) / 2;
int ans = 0;
if(ql <= m)
ans += query(ql,qr,i * 2,l,m);
if(qr > m)
ans += query(ql,qr,i * 2 + 1,m + 1,r);
return ans;
}
void update(int id,int val,int i,int l,int r)
{
if(l == r)
{
b[i] += val;
return;
}
int m = (l + r) / 2;
if(id <= m)
update(id,val,i * 2,l,m);
else
update(id,val,i * 2 + 1,m + 1,r);
pushUp(i);
}
int main()
{
ios::sync_with_stdio(false);
cin.tie(NULL);cout.tie(NULL);
int T,n;
cin>>T;
for(int test = 1;test <= T;++test)
{
cin>>n;
build(1,1,n);
int l,r;
string str;
cout<<"Case "<<test<<":\n";
while(cin>>str)
{
/* code */
if(str[0] == 'E') break;
cin>>l>>r;
if(str[0] == 'Q')
{
cout<<query(l,r,1,1,n)<<endl;
}else
{
if(str[0] == 'S') r *= -1;
update(l,r,1,1,n);
}
}
}
return 0;
}