code: def endpoint_check(
      first, node_first, s, second, node_second, t, intersections
  ):
      r
      if _helpers.vector_close(node_first, node_second):
          orig_s = (1 - s) * first.start + s * first.end
          orig_t = (1 - t) * second.start + t * second.end
          add_intersection(orig_s, orig_t, intersections)
docs: r"""Check if curve endpoints are identical.
  
      .. note::
  
         This is a helper for :func:`tangent_bbox_intersection`. These
         functions are used (directly or indirectly) by
         :func:`_all_intersections` exclusively, and that function has a
         Fortran equivalent.
  
      Args:
          first (SubdividedCurve): First curve being intersected (assumed in
              :math:\mathbf{R}^2`).
          node_first (numpy.ndarray): 1D ``2``-array, one of the endpoints
              of ``first``.
          s (float): The parameter corresponding to ``node_first``, so
               expected to be one of ``0.0`` or ``1.0``.
          second (SubdividedCurve): Second curve being intersected (assumed in
              :math:\mathbf{R}^2`).
          node_second (numpy.ndarray): 1D ``2``-array, one of the endpoints
              of ``second``.
          t (float): The parameter corresponding to ``node_second``, so
               expected to be one of ``0.0`` or ``1.0``.
          intersections (list): A list of already encountered
              intersections. If these curves intersect at their tangency,
              then those intersections will be added to this list.