See:
http://cryptome.org/mi-complex/mi-complex.htm