#include <bits/stdc++.h>
#define ll long long
using namespace std;
const int N = 1e5+5;
ll c[N];
int n, q, k, d;
//class ST
//{
//private:
// vector<vector<ll>> sum;
//public:
// ST(int nn)
// {
// for(int i=0; i<=4*n; i++) sum[i].assign(d, 0);
// }
// void add(int i, int x, int l=1, int r=n, int cur=1)
// {
// if(i < l || r < i) return;
// if(l == r)
// {
// sum[cur][0] = x;
// for(int i=1; i<d; i++) sum[cur][i] = sum[cur][i-1]/k;
// return;
// }
// int m=((l+r)>>1), r1=(cur<<1), r2=((cur<<1)|1);
// add(i, x, l, m, r1);
// add(i, x, m+1, r, r2);
// for(int i=0; i<d; i++)
// sum[cur][i] = sum[r1][i] + sum[r2][i];
// }
// void
//};
int main()
{
ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL);
cin >> n >> q >> k;
for(int i=1; i<=n; i++)
cin >> c[i];
while(q--)
{
int s, t, u; cin >> s >> t >> u;
if(s==1) c[t] = u;
if(s==2) for(int i=t; i<=u; i++) c[i]/=k;
if(s==3)
{
ll sum = 0;
for(int i=t; i<=u; i++) sum += c[i];
cout << sum << '\n';
}
}
return 0;
}