http://www.svonberg.org/2008/09/pyecam0924/