#include <bits/stdc++.h>
#define ll long long
using namespace std;
const int N=2e5+10;
int n,m;
ll ma[N>>3],ans,mod,k;
inline ll max (ll a,ll b)
{
return (a>b)?a:b;
}
void add (int nn,ll s,int i,int l, int r)
{
if (l==r) {
ma[i]=s;
return ;
}
int mid=(l+r)>>1;
if (mid>=nn) add(nn,s,i<<1,l,mid);
else add(nn,s,i<<1|1,mid+1,r);
ma[i]=max(ma[i<<1],ma[i<<1|1]);
}
ll query (int l1,int r1,int i,int l,int r)
{
if (l>=l1 && r<=r1) return ma[i];
int mid=(l+r)>>1;
ll a=0,b=0;
if (l1<=mid) a=query(l1,r1,i<<1,l,mid);
if (r1>mid) b=query(l1,r1,i<<1|1,mid+1,r);
return max(a,b);
}
int main()
{
scanf("%lld%lld",&m,&mod);
for (int i=1;i<=m;i++) {
char f;
cin>>f;
if (f=='Q') {
scanf("%lld",&k);
ans=query(n-k+1,n,1,1,m);
printf("%lld\n",ans);
}
else {
scanf("%lld",&k);
add(++n,(k+ans)%mod,1,1,m);
}
}
return 0;
}