#include <bits/stdc++.h>
#define F(i,f,t) for(int i=(f),__end=(t);i<=__end;i++)
#define D(i,f,t) for(int i=(f),__end=(t);i>=__end;i--)
#define FV(i,x)  for(int i=0;i<(x).size();i++)
using namespace std; 
char re(int&x)
{
	x=0;
	int f=1;
	char c;
	while(c=getchar(),!isdigit(c))if(c=='-')f=-1;
	while(isdigit(c))x=x*10+c-'0',c=getchar();
	x*=f;
	return c;
}
const int N=10086,M=204444,mod=998244353,i2=499122177;
typedef int intn[N],intm[M];
unsigned long long rd(unsigned long long &x) {
	x ^= (x << 13);
	x ^= (x >> 7);
	x ^= (x << 17);
	return x;
}
intn a;
int n, q, x;
struct mtx
{
	int a[501][501];
	int n,m;
	mtx(int x,int y):n(x),m(y){}
	int*operator[](int x)
	{
		return a[x];
	}
};
mtx operator*(mtx a,mtx b)
{
	mtx c(a.n,b.m);
	F(i,1,c.n)F(j,1,c.m)
	{
		c[i][j]=0;
		F(k,1,a.m)c[i][j]=(1ll*c[i][j]+1ll*a[i][k]*b[k][j]%mod)%mod;
	}
	return c;
}
int main() {
	int test, T;
	unsigned long long seed;
	scanf("%d%d%llu", &test, &T, &seed);
	for(int Case = 1; Case ; Case ++) {
		long long k_max;
		for(int i = 1; i <= n; i ++) re(a[i]);
		for(int i = 1; i <= q; i ++) {
			long long k = rd(seed) % k_max;
		}
	}
}
