version compiles and appears to work correctly