code: def _align_source(
      st, transpile_frame, module_frame, module_st, traced_lineno
  ):
      from ivy.compiler.utils.VVX import trace_obj
      from ivy.compiler.utils.IIV import Graph
  
      curr_obj = [None, None, "", ""]
      if transpile_frame:
          t_v = inspect.getargvalues(transpile_frame.frame)
          obj = t_v.locals[t_v.varargs][0]
  
          traced_data = trace_obj(
              obj, t_v.locals["args"], t_v.locals["kwargs"], {}
          )
          curr_obj[0] = traced_data[1]
          curr_obj[1] = traced_data[2]
          curr_obj[2] = traced_data[3]
  
      if module_frame:
          t_v = inspect.getargvalues(module_frame.frame)
          for k, v in t_v.locals.items():
              if k in module_st.line and isinstance(v, Graph):
                  traced_data = trace_obj(
                      t_v.locals[v.__name__], (), {}, {}
                  )
                  curr_obj[0] = traced_data[1]
                  curr_obj[1] = traced_data[2]
                  curr_obj[2] = v.__name__
  
                  if traced_lineno:
                      line = v._Graph__fn_str.split("\n")[
                          traced_lineno - 1
                      ]
                      line = line.split("=")[1].strip()
                      line = line.split("(")[0].strip()
                      target_name = line.split(".")[-1].strip()
                      curr_obj[3] = line
                      area = traced_lineno / len(
                          v._Graph__fn_str.strip().split("\n")
                      )
  
                      curr_obj = _get_traces(
                          curr_obj, area, t_v.locals, target_name
                      )
  
      if curr_obj[0] is None:
          return None
      if not isinstance(curr_obj[0], list):
          curr_obj = [curr_obj]
      return curr_obj
  
imports: import warnings
  import ivy
  import functools
  from typing import Callable
  import traceback
  import inspect
  import os
  import ast
  import builtins
label_desc: Use image node_id 2 for calling a global function with example usage: _align_source(st, transpile_frame, module_frame, module_st, traced_lineno) and returns: curr_obj, None