#include <bits/stdc++.h>
using namespace std;
#define int long long
const int N=1e6+7;
int bj_x[N],bj_y[N];
const int p=998244353;
int qpow(int n,int k){
n%=p;
int ans=1;
while(k){
if(k&1){
ans=ans*n%p;
}
n=n*n%p;
k>>=1;
}
return ans;
}
int n,m,k;
signed main(){
freopen("plusminus.in","r",stdin);
freopen("plusminus.out","w",stdout);
cin>>n>>m>>k;
for(int i=1;i<=k;i++){
int x,y,val;
cin>>x>>y>>val;
bj_x[x]=1;
bj_y[y]=1;
}
if(m%2!=n%2){
cout<<0;
}
else{
cout<<qpow(2,(n*m-n-m-k+1))<<"\n";
}
return 0;
}