code: def box_line_intersection(ray_origin, ray_direction):
      """Find intersections of a line with the unit cube, in both sides.
  
      Parameters
      -----------
      ray_origin: vector
          starting point of line
      ray_direction: vector
          line direction vector
  
      Returns
      --------
      left: nearest_box_intersection_line return value
          from negative direction
      right: nearest_box_intersection_line return value
          from positive direction
  
      """
      pF, tF, iF = nearest_box_intersection_line(
          ray_origin, ray_direction, fwd=True
      )
      pN, tN, iN = nearest_box_intersection_line(
          ray_origin, ray_direction, fwd=False
      )
      if tN > tF or tF < 0:
          assert False, "no intersection"
      return (pN, tN, iN), (pF, tF, iF)
  
imports: import numpy
  from numpy.linalg import norm
  import matplotlib.pyplot
label_desc: Use image node_id 2 for calling a global function with example usage: box_line_intersection(ray_origin, ray_direction) and returns: pN,  tN,  iN,  pF,  tF,  iF