robust to not having line_profiler