#include<bits/stdc++.h>
#define MAXN 33
#define MAXM 102
#define MOD 998244353
using namespace std;
typedef long long ll;
ll partly[MAXN][MAXN],power[MAXM][MAXN>>1],dp[MAXM][MAXN][MAXN][MAXN>>1];
int main(){
ios::sync_with_stdio(false);
int n,m,k;
ll ans=0;
cin>>n>>m>>k;
for(int i=0;i<MAXN;++i){
for(int j=0;j<=i;++j){
if(j==0){
partly[i][j]=1;
}else{
partly[i][j]=(partly[i-1][j]+partly[i-1][j-1])%MOD;
}
}
}
for(int i=0;i<=m;++i){
ll x;
cin>>x;
power[i][0]=1;
for(int j=1;j<MAXN>>1;++j){
power[i][j]=power[i][j-1]*x%MOD;
}
}
dp[0][0][0][0]=1;
for(int i=0;i<=m;++i){
for(int j=0;j<=n;++j){
for(int x=0;x<=k;++x){
for(int y=0;y<=(n>>1);++y){
for(int t=0;t<=n-j;++t){
(dp[i+1][j+t][x+((y+t)&1)][(y+t)>>1]+=dp[i][j][x][y]*power[i][t]%MOD*partly[n-j][t])%=MOD;
}
}
}
}
}
for(int i=0;i<=k;++i){
for(int j=0;j<=(n>>1);++j){
if(i+__builtin_popcount(j)<=k){
(ans+=dp[m+1][n][i][j])%=MOD;
}
}
}
cout<<ans;
return 0;
}