http://www.talab.org/fun/enigma/prisoners-dilemma.html