now it compiles with no need for a c++0x compiler and it works