added profiler class