now compiles with no warnings