##
$C[0] = 1;
$C[$N-1] = 1;
for ($i=0; $i<$N; $i++) {
$C[0] *= $a->[$i]->[0];
$C[$N-1] *= $a->[$i]->[1];
}
##
##
(a[0][0] + a[0][1]) * (a[1][0] + a[1][1]) =
C[0] + C[1] + C[2] + C[3],
where
C[0] = a[0][0] * a[1][0]
C[1] = a[0][0] * a[1][1]
C[2] = a[0][1] * a[1][0]
C[3] = a[0][1] * a[1][1]