more work can be found on my blog.