added profiling tools