'Calculates values of a trigram contingency table (or cube) from
marginal values.
>>> TrigramAssocMeasures._contingency(1, (1, 1, 1), (1, 73, 1), 2000)
(1, 0, 0, 0, 0, 72, 0, 1927)'

@staticmethod
def _contingency(n_iii, n_iix_tuple, n_ixx_tuple, n_xxx):

    (n_iix, n_ixi, n_xii) = n_iix_tuple
    (n_ixx, n_xix, n_xxi) = n_ixx_tuple
    n_oii = (n_xii - n_iii)
    n_ioi = (n_ixi - n_iii)
    n_iio = (n_iix - n_iii)
    n_ooi = (((n_xxi - n_iii) - n_oii) - n_ioi)
    n_oio = (((n_xix - n_iii) - n_oii) - n_iio)
    n_ioo = (((n_ixx - n_iii) - n_ioi) - n_iio)
    n_ooo = (((((((n_xxx - n_iii) - n_oii) - n_ioi) - n_iio) - n_ooi) - n_oio) - n_ioo)
    return (n_iii, n_oii, n_ioi, n_ooi, n_iio, n_oio, n_ioo, n_ooo)
