this version should compile