#include<cstdio>#include<iostream>#include<cstring>#include<cstdlib>#include<cmath>#include<algorithm>#include<string>#include<map>#include<set>#include<vector>#include<queue>#include<stack>#include<ctime>using namespace std;#define rep(i, a, b) for (int i = (a); i <= (b); ++i)#define red(i, a, b) for (int i = (a); i >= (b); --i)#define clr( x , y ) memset(x,y,sizeof(x))#define mp make_pair#define pb push_back#define sqr(x) ((x) * (x))typedef long long lint;const int mm = 9875321;lint f[110000] , d[110000];int n , m , l[110000] , r[110000];void init(){ l[1] = 0; r[1] = n - 1; f[1] = 0; d[1] = 1; n = 1;}void deal(int t){ int x , y , k; if ( t < 4 ) scanf("%d%d%d",&x,&y,&k); else scanf("%d%d",&x,&y); y --; rep(i,1,n) if ( max( x , l[i] ) <= min( y , r[i] ) ) { if ( l[i] >= x && r[i] <= y ) { if ( t == 1 ) f[i] += k; if ( t == 2 ) f[i] *= k , d[i] *= k; if ( t == 3 ) { k %= y - x + 1; l[i] += k; r[i] += k; if ( l[i] <= y && r[i] > y ) { l[++n] = y + 1 - k; r[n] = r[i] - k; d[n] = d[i]; f[n] = f[i] + ( y + 1 - l[i] ) * d[i]; r[i] = y; } if ( l[i] > y ) l[i] = l[i] - y + x - 1; if ( r[i] > y ) r[i] = r[i] - y + x - 1; } if ( t == 4 ) { f[i] += d[i] * ( r[i] - l[i] ); d[i] = -d[i]; l[i] = x + y - l[i]; r[i] = x + y - r[i]; swap( l[i] , r[i] ); } } else if ( x > l[i] ) { l[++n] = x; r[n] = r[i]; d[n] = d[i]; f[n] = f[i] + d[i] * ( x - l[i] ); r[i] = x - 1; } else { l[++n] = l[i]; r[n] = y; d[n] = d[i]; f[n] = f[i]; f[i] += ( y + 1 - l[i] ) * d[i]; l[i] = y + 1; } } rep(i,1,n) d[i] %= mm , f[i] %= mm;}void sum(){ lint s = 0; int x , y; scanf("%d%d",&x,&y); y --; rep(i,1,n) { int ll = max( x , l[i] ) , rr = min( y , r[i] ); if ( ll > rr ) continue; lint xx = ( ll + rr - 2 * l[i] ) * d[i] + 2 * f[i] , yy = rr - ll + 1; if ( yy & 1 ) xx /= 2; else yy /= 2; xx %= mm; yy %= mm; ( s += xx * yy ) %= mm; } cout << ( s + mm ) % mm << endl;}void work(){ string s; while ( m -- ) { cin >> s; int t = 0; if ( s[0] == 'a' ) t = 1; if ( s[0] == 'm' ) t = 2; if ( s[1] == 'o' ) t = 3; if ( s[1] == 'e' ) t = 4; if ( t ) deal( t ); if ( s[0] == 's' ) sum(); } puts("");}int main(){ while ( cin >> n >> m ) { init(); work(); } return 0;}