added profiler middleware