code: def _brute_force_contains_properly(points, polygons):
      """Compute from a series of points and a series of polygons which points
      are properly contained within the corresponding polygon. Polygon A contains
      Point B properly if B intersects the interior of A but not the boundary (or
      exterior).
  
      Note that polygons must be closed: the first and last vertex of each
      polygon must be the same.
  
      Parameters
      ----------
      points : GeoSeries
          A GeoSeries of points.
      polygons : GeoSeries
          A GeoSeries of polygons.
  
      Returns
      -------
      result : cudf.DataFrame
          A DataFrame of boolean values indicating whether each point falls
          within its corresponding polygon.
      """
      pip_result = cpp_byte_point_in_polygon(
          as_column(points.points.x),
          as_column(points.points.y),
          as_column(polygons.polygons.part_offset),
          as_column(polygons.polygons.ring_offset),
          as_column(polygons.polygons.x),
          as_column(polygons.polygons.y),
      )
      result = DataFrame(
          pip_bitmap_column_to_binary_array(
              polygon_bitmap_column=pip_result,
              width=len(polygons.polygons.part_offset) - 1,
          )
      )
      final_result = DataFrame._from_data(
          {
              name: result[name].astype("bool")
              for name in reversed(result.columns)
          }
      )
      final_result.columns = range(len(final_result.columns))
      return final_result
  
file_path: cuspatial/python/cuspatial/cuspatial/core/binpreds/contains.py
imports: from math import ceil, sqrt
  import cudf
  from cudf import DataFrame, Series
  from cudf.core.column import as_column
  import cuspatial
  from cuspatial._lib.pairwise_point_in_polygon import pairwise_point_in_polygon
  from cuspatial._lib.point_in_polygon import point_in_polygon
  from cuspatial.utils.join_utils import pip_bitmap_column_to_binary_array
label_desc: Use image node_id 2 for calling a global function with example usage: _brute_force_contains_properly(points, polygons) and returns: final_result