Utility module written by Jim McDonald
