rt
#include<bits/stdc++.h>
#define int long long
using namespace std;
int n,m,x,y,k,mod,sum,ans,a[2000010],t[4000010],vis[4000010];
char cmd;
void pshu(int k)
{
t[k]=max(t[k*2],t[k*2+1]);
}
void upd(int l,int r,int x,int v,int k)
{
int mid;
if(l==r)
t[k]=v;
else
{
if(x<=(mid=l+(r-l)/2))
upd(l,mid,x,v,k*2);
else
upd(mid+1,r,x,v,k*2+1);
pshu(k);
}
}
int qry(int L,int R,int l,int r,int k)
{
int mid,ans=-0x3ffffffff;
if(L<=l&&r<=R)
return t[k];
if(L<=(mid=l+(r-l)/2))
ans=min(ans,qry(L,R,l,mid,k*2));
if(R>mid)
ans=min(ans,qry(L,R,mid+1,r,k*2+1));
return ans;
}
signed main()
{
cin>>m>>mod;
while(m--)
{
cin>>cmd;
if(cmd=='A')
cin>>x,sum++,upd(1,m,sum,(ans+x)%mod,1);
else
{
cin>>x;
if(!x)
ans=0;
else
ans=qry(sum-x+1,m,1,m,1);
cout<<ans<<'\n';
}
}
}