Translated and adapted by Greg Leaming