hhvm compatibility