Fork of the original Robert Lemke example. Customized to prevent namespace conflicts.