# Buggy code
def __init__(
    self,
    reddit: "Reddit",
    subreddit: Optional["Subreddit"] = None,
    short_name: Optional[str] = None,
    _data: Optional[Dict[str, str]] = None,
):
    """Construct an instance of the Rule object."""
    if (short_name, _data).count(None) != 1:
        raise ValueError("Either short_name or _data needs to be given.")
    self.short_name = short_name
    # Note: The subreddit parameter can be None, because the objector does not know
    # this info. In that case, it is the responsibility of the caller to set the
    # `subreddit` property on the returned value.
    self.subreddit = subreddit
    super().__init__(reddit, _data=_data)


# Traceback (RecursionError)
Traceback (most recent call last):
  File "C:\00. Datos\90. Descargas\claimdoneremover-master (1)\claimdoneremover-master\cdremover\main.py", line 49, in <module>
    for comment in reddit.redditor(user).comments.new(limit=limit):
  File "C:\Users\Andres\AppData\Local\Programs\Python\Python37-32\lib\site-packages\praw\util\cache.py", line 39, in __get__
    value = obj.__dict__[self.func.__name__] = self.func(obj)
  File "C:\Users\Andres\AppData\Local\Programs\Python\Python37-32\lib\site-packages\praw\models\listing\mixins\redditor.py", line 47, in comments
    return SubListing(self._reddit, self._path, "comments")
  File "C:\Users\Andres\AppData\Local\Programs\Python\Python37-32\lib\site-packages\praw\models\reddit\redditor.py", line 122, in _path
    return API_PATH["user"].format(user=self)
  File "C:\Users\Andres\AppData\Local\Programs\Python\Python37-32\lib\site-packages\praw\models\reddit\base.py", line 61, in __str__
    return getattr(self, self.STR_FIELD)
  File "C:\Users\Andres\AppData\Local\Programs\Python\Python37-32\lib\site-packages\praw\models\reddit\base.py", line 34, in __getattr__
    self._fetch()
  File "C:\Users\Andres\AppData\Local\Programs\Python\Python37-32\lib\site-packages\praw\models\reddit\redditor.py", line 171, in _fetch
    data = self._fetch_data()
  File "C:\Users\Andres\AppData\Local\Programs\Python\Python37-32\lib\site-packages\praw\models\reddit\redditor.py", line 166, in _fetch_data
    name, fields, params = self._fetch_info()
  File "C:\Users\Andres\AppData\Local\Programs\Python\Python37-32\lib\site-packages\praw\models\reddit\redditor.py", line 163, in _fetch_info
    return ("user_about", {"user": self.name}, None)
  File "C:\Users\Andres\AppData\Local\Programs\Python\Python37-32\lib\site-packages\praw\models\reddit\base.py", line 34, in __getattr__
    self._fetch()
  File "C:\Users\Andres\AppData\Local\Programs\Python\Python37-32\lib\site-packages\praw\models\reddit\redditor.py", line 171, in _fetch
    data = self._fetch_data()
  File "C:\Users\Andres\AppData\Local\Programs\Python\Python37-32\lib\site-packages\praw\models\reddit\redditor.py", line 166, in _fetch_data
    name, fields, params = self._fetch_info()
  File "C:\Users\Andres\AppData\Local\Programs\Python\Python37-32\lib\site-packages\praw\models\reddit\redditor.py", line 163, in _fetch_info
    return ("user_about", {"user": self.name}, None)
  File "C:\Users\Andres\AppData\Local\Programs\Python\Python37-32\lib\site-packages\praw\models\reddit\base.py", line 34, in __getattr__
    self._fetch()
  File "C:\Users\Andres\AppData\Local\Programs\Python\Python37-32\lib\site-packages\praw\models\reddit\redditor.py", line 171, in _fetch
    data = self._fetch_data()
  File "C:\Users\Andres\AppData\Local\Programs\Python\Python37-32\lib\site-packages\praw\models\reddit\redditor.py", line 166, in _fetch_data
    name, fields, params = self._fetch_info()
  File "C:\Users\Andres\AppData\Local\Programs\Python\Python37-32\lib\site-packages\praw\models\reddit\redditor.py", line 163, in _fetch_info
    return ("user_about", {"user": self.name}, None)
  File "C:\Users\Andres\AppData\Local\Programs\Python\Python37-32\lib\site-packages\praw\models\reddit\base.py", line 34, in __getattr__
    self._fetch()
  File "C:\Users\Andres\AppData\Local\Programs\Python\Python37-32\lib\site-packages\praw\models\reddit\redditor.py", line 171, in _fetch
    data = self._fetch_data()
  File "C:\Users\Andres\AppData\Local\Programs\Python\Python37-32\lib\site-packages\praw\models\reddit\redditor.py", line 166, in _fetch_data
    name, fields, params = self._fetch_info()
  File "C:\Users\Andres\AppData\Local\Programs\Python\Python37-32\lib\site-packages\praw\models\reddit\redditor.py", line 163, in _fetch_info
    return ("user_about", {"user": self.name}, None)
  File "C:\Users\Andres\AppData\Local\Programs\Python\Python37-32\lib\site-packages\praw\models\reddit\base.py", line 34, in __getattr__
    self._fetch()

...

  File "C:\Users\Andres\AppData\Local\Programs\Python\Python37-32\lib\site-packages\praw\models\reddit\redditor.py", line 171, in _fetch
    data = self._fetch_data()
  File "C:\Users\Andres\AppData\Local\Programs\Python\Python37-32\lib\site-packages\praw\models\reddit\redditor.py", line 166, in _fetch_data
    name, fields, params = self._fetch_info()
  File "C:\Users\Andres\AppData\Local\Programs\Python\Python37-32\lib\site-packages\praw\models\reddit\redditor.py", line 163, in _fetch_info
    return ("user_about", {"user": self.name}, None)
  File "C:\Users\Andres\AppData\Local\Programs\Python\Python37-32\lib\site-packages\praw\models\reddit\base.py", line 34, in __getattr__
    self._fetch()
  File "C:\Users\Andres\AppData\Local\Programs\Python\Python37-32\lib\site-packages\praw\models\reddit\redditor.py", line 171, in _fetch
    data = self._fetch_data()
  File "C:\Users\Andres\AppData\Local\Programs\Python\Python37-32\lib\site-packages\praw\models\reddit\redditor.py", line 166, in _fetch_data
    name, fields, params = self._fetch_info()
  File "C:\Users\Andres\AppData\Local\Programs\Python\Python37-32\lib\site-packages\praw\models\reddit\redditor.py", line 161, in _fetch_info
    if hasattr(self, "_fullname"):
RecursionError: maximum recursion depth exceeded while calling a Python object

# Fixed code
def __init__(
    self,
    reddit: "Reddit",
    subreddit: Optional["Subreddit"] = None,
    short_name: Optional[str] = None,
    _data: Optional[Dict[str, str]] = None,
):
    """Construct an instance of the Rule object."""
    if (short_name, _data).count(None) != 1:
        raise ValueError("Either short_name or _data needs to be given.")
    if short_name:
        self.short_name = short_name
    # Note: The subreddit parameter can be None, because the objector does not know
    # this info. In that case, it is the responsibility of the caller to set the
    # `subreddit` property on the returned value.
    self.subreddit = subreddit
    super().__init__(reddit, _data=_data)