code: def setup(self, *args):
      triangles = GeoSeries(
          [
              Polygon(
                  [(random.random(), random.random()) for _ in range(3)]
              )
              for _ in range(1000)
          ]
      )
  
      points = GeoSeries(
          [
              Point(x, y)
              for x, y in zip(
                  np.random.random(10000), np.random.random(10000)
              )
          ]
      )
  
      df1 = GeoDataFrame(
          {
              "val1": np.random.randn(len(triangles)),
              "geometry": triangles,
          }
      )
      df2 = GeoDataFrame(
          {"val1": np.random.randn(len(points)), "geometry": points}
      )
  
      self.df1, self.df2 = df1, df2
  
imports: import random
  from geopandas import GeoDataFrame, GeoSeries, sjoin
  from shapely.geometry import Point, LineString, Polygon
  import numpy
label_desc: Use image node_id 1 for calling the Bench obj's underlying member method code with example usage: obj.setup() without return types