code: def fac(n):
      step = lambda x: 1 + x * 4 - (x // 2) * 2
      maxq = math.floor(math.sqrt(n))
      d = 1
      q = n % 2 == 0 and 2 or 3
      while q <= maxq and n % q != 0:
          q = step(d)
          d += 1
      res = []
      if q <= maxq:
          res.extend(fac(n // q))
          res.extend(fac(q))
      else:
          res = [n]
      return res
  
imports: import math
label_desc: Use image node_id 4 for calling a global function with example usage: fac(n) and returns: res