Python essential reference - Beazley, David M. (Developer's library., 2009)