class Gridded:

    _grid_obj_classes = []
    _grids_loaded = False

    @classmethod
    def _load_grid_objs(cls):
        from pkg_resources import working_set
        for ep in working_set.iter_entry_points('gridded.grid_objects'):
            cls._grid_obj_classes.append(ep.load())

    @classmethod
    def load(cls, nc, *args, **kwargs):
        for go in self._grid_obj_classes:
            if hasattr(go, 'is_mine') and go.is_mine(nc):
                return go(nc, *args, **kwargs)


class Gridded:

    _grid_obj_classes = []
    _grids_loaded = False

    @classmethod
    def _load_grid_objs(cls):
        from pkg_resources import working_set
        for ep in working_set.iter_entry_points('gridded.grid_objects'):
            cls._grid_obj_classes.append(ep.load())

    @classmethod
    def load(cls, *args, **kwargs):
        for go in cls._grid_obj_classes:
            if hasattr(go, 'is_mine') and go.is_mine(*args, **kwargs):
                return go(*args, **kwargs)

Fix self- > cls, make super generic (no `nc`)
Fix self- > cls, make super generic (no `nc`)

  class Gridded:
  
      _grid_obj_classes = []
      _grids_loaded = False
  
      @classmethod
      def _load_grid_objs(cls):
          from pkg_resources import working_set
          for ep in working_set.iter_entry_points('gridded.grid_objects'):
              cls._grid_obj_classes.append(ep.load())
  
      @classmethod
-     def load(cls, nc, *args, **kwargs):
+     def load(cls, *args, **kwargs):
-         for go in self._grid_obj_classes:
+         for go in cls._grid_obj_classes:
-             if hasattr(go, 'is_mine') and go.is_mine(nc):
+             if hasattr(go, 'is_mine') and go.is_mine(*args, **kwargs):
-                 return go(nc, *args, **kwargs)
+                 return go(*args, **kwargs)
  
- 
Fix self- > cls, make super generic (no `nc`)
## Code Before:
class Gridded:

    _grid_obj_classes = []
    _grids_loaded = False

    @classmethod
    def _load_grid_objs(cls):
        from pkg_resources import working_set
        for ep in working_set.iter_entry_points('gridded.grid_objects'):
            cls._grid_obj_classes.append(ep.load())

    @classmethod
    def load(cls, nc, *args, **kwargs):
        for go in self._grid_obj_classes:
            if hasattr(go, 'is_mine') and go.is_mine(nc):
                return go(nc, *args, **kwargs)


## Instruction:
Fix self- > cls, make super generic (no `nc`)
## Code After:
class Gridded:

    _grid_obj_classes = []
    _grids_loaded = False

    @classmethod
    def _load_grid_objs(cls):
        from pkg_resources import working_set
        for ep in working_set.iter_entry_points('gridded.grid_objects'):
            cls._grid_obj_classes.append(ep.load())

    @classmethod
    def load(cls, *args, **kwargs):
        for go in cls._grid_obj_classes:
            if hasattr(go, 'is_mine') and go.is_mine(*args, **kwargs):
                return go(*args, **kwargs)
