grr
c++ is annoying