this code apparently compiles