#include<bits/stdc++.h>
using namespace std;
const int mod=998244353;
const int N=1000005;
long long val[N<<1],inc[N<<1];
long long powTen[N],preTen[N];
void pushUp(int u,int len){
	val[u]=(val[u<<1]+val[u<<1|1]*powTen[len])%mod;
}
void pushDown(int u,int len1,int len2){
	if(inc[u]){
		val[u<<1]=inc[u]*preTen[len1-1]%mod;
		val[u<<1|1]=inc[u]*preTen[len2-1]%mod;
		inc[u<<1]=inc[u];
		inc[u<<1|1]=inc[u];
		inc[u]=0;
	}
} 
void update(int u,int l,int r,int x,int y,int d){
	if(x<=l&&r<=y){
		inc[u]=d;
		val[u]=d*preTen[r-l]%mod;
		return;
	}
	int mid=l+r>>1;
	pushDown(u,mid-l+1,r-mid);
	if(x<=mid)update(u<<1,l,mid,x,y,d);
	if(y>mid)update(u<<1|1,mid+1,r,x,y,d);
	pushUp(u,mid-l+1);
}
int main(){
	int n,q;
	scanf("%d%d",&n,&q);
	powTen[0]=preTen[0]=1;
	for(int i=1;i<=n;i++){
		powTen[i]=powTen[i-1]*10%mod;
		preTen[i]=(preTen[i-1]+powTen[i])%mod;
	}
	update(1,1,n,1,n,1); 
	while(q--){
		int l,r,d;
		scanf("%d%d%d",&r,&l,&d);
		update(1,1,n,n-l+1,n-r+1,d);
		printf("%lld\n",val[1]);
	}
	return 0;
} 