code: def profile(function_profile, line_profile, fn):
      if line_profile:
          with open(fn) as f:
              lines = f.readlines()
  
          with tempfile.NamedTemporaryFile(
              mode="w+b", suffix=".py"
          ) as f:
              f.write(
                  lines_with_profiling(lines, function_profile).encode()
              )
              f.seek(0)
  
              yield f.name
      elif function_profile:
          with Profiler() as profiler:
              yield fn
          profiler.print_per_function_stats()
      else:
          yield fn
  
file_path: cudf/python/cudf/cudf/pandas/__main__.py
imports: import argparse
  import runpy
  import sys
  import tempfile
  from contextlib import contextmanager
  from .None import install
  from .profiler import Profiler, lines_with_profiling
label_desc: Use image node_id 1 for calling a global function with example usage: profile(function_profile, line_profile, fn) without return types