#include<iostream>#include<cstdio>#define N 200010using namespace std;long long l[N<<2],r[N<<2],lm[N<<2],rm[N<<2],w[N<<2],sum[N<<2];long long n,m,k,d;void pup(long long x){ lm[x]=max(lm[x<<1],sum[x<<1]+lm[x<<1|1]); rm[x]=max(rm[x<<1|1],sum[x<<1|1]+rm[x<<1]); sum[x]=sum[x<<1]+sum[x<<1|1]; w[x]=max(w[x<<1],max(w[x<<1|1],rm[x<<1]+lm[x<<1|1]));}void build(long long now,long long ll,long long rr){ l[now]=ll;r[now]=rr; if(ll==rr) {sum[now]=w[now]=-k;return;} long long mid=(ll+rr)>>1; build(now<<1,ll,mid); build(now<<1|1,mid+1,rr); pup(now);}void change(long long now,long long x,long long v){ if(l[now]==r[now]) { w[now]+=v;sum[now]=w[now]; if(w[now]>0) lm[now]=rm[now]=w[now]; else lm[now]=rm[now]=0; return; } long long mid=(l[now]+r[now])>>1; if(x<=mid) change(now<<1,x,v); else change(now<<1|1,x,v); pup(now);}int main(){ scanf("%lld%lld%lld%lld",&n,&m,&k,&d); build(1,1,n); long long i,j,x,y; for(i=1;i<=m;i++) { scanf("%lld%lld",&x,&y); change(1,x,y); if(w[1]>k*d) puts("NIE"); else puts("TAK"); }}