hhvm doesn't work, prolly because of reflection