added xhprof profiling