Example

Input

2 2 2 1
0 0 0


Output

24
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef pair<int,int> P;
typedef pair< P , int > PP;
int n;
int A,B,C;
int x,y,z;
int nx,ny,nz;
int dx[]={1,0,0,-1,0,0};
int dy[]={0,1,0,0,-1,0};
int dz[]={0,0,1,0,0,-1};
map< PP , bool > mp;
 
bool check(int x,int y,int z){
  if(x==-1||y==-1||z==-1)return false;
  if(x==A||y==B||z==C)return false;
  PP key=PP( P(x,y) , z);
  if( mp.count(key) > 0)return false;
  return true;
}
 
int main(){
  while(scanf("%d %d %d %d",&A,&B,&C,&n)!=EOF){
    ll ans=(ll)A*(ll)B*2LL+(ll)B*(ll)C*2LL+(ll)C*(ll)A*2LL;    
    for(int i=0;i<n;i++){
      scanf("%d %d %d",&x,&y,&z);
      for(int i=0;i<6;i++){
        nx=x+dx[i];
        ny=y+dy[i];
        nz=z+dz[i];
        if(check(nx,ny,nz))ans++;
        else ans--;
      }
      mp[ PP(P(x,y),z) ] = true;
    }
    cout<<ans<<endl;
    mp.clear();
  }
 
  return 0;
}