docstr: Calculate the day of corresponding to the ISO year-week-day calendar.
  
  This function is effectively the inverse of
  :func:`datetime.date.isocalendar`.
  
  :param year:
      The year in the ISO calendar
  
  :param week:
      The week in the ISO calendar - range is [1, 53]
  
  :param day:
      The day in the ISO calendar - range is [1 (MON), 7 (SUN)]
  
  :return:
      Returns a :class:`datetime.date`
docstr_tok: ["Calculate","the","day","of","corresponding","to","the","ISO","year-week-day","calendar",".","This","function","is","effectively","the","inverse","of",":","func",":","`","datetime.date.isocalendar","`",".",":","param","year",":","The","year","in","the","ISO","calendar",":","param","week",":","The","week","in","the","ISO","calendar","-","range","is","[","1",",","53","]",":","param","day",":","The","day","in","the","ISO","calendar","-","range","is","[","1","(","MON",")",",","7","(","SUN",")","]",":","return",":","Returns","a",":","class",":","`","datetime.date","`"]
code: def _calculate_weekdate(self, year, week, day):
      """
      Calculate the day of corresponding to the ISO year-week-day calendar.
  
      This function is effectively the inverse of
      :func:`datetime.date.isocalendar`.
  
      :param year:
          The year in the ISO calendar
  
      :param week:
          The week in the ISO calendar - range is [1, 53]
  
      :param day:
          The day in the ISO calendar - range is [1 (MON), 7 (SUN)]
  
      :return:
          Returns a :class:`datetime.date`
      """
      if not 0 < week < 54:
          raise ValueError("Invalid week: {}".format(week))
  
      if not 0 < day < 8:  # Range is 1-7
          raise ValueError("Invalid weekday: {}".format(day))
  
      # Get week 1 for the specific year:
      jan_4 = date(year, 1, 4)  # Week 1 always has January 4th in it
      week_1 = jan_4 - timedelta(days=jan_4.isocalendar()[2] - 1)
  
      # Now add the specific number of weeks and days to get what we want
      week_offset = (week - 1) * 7 + (day - 1)
      return week_1 + timedelta(days=week_offset)
  
file_path: catboost/contrib/python/python-dateutil/py3/dateutil/parser/isoparser.py
imports: from datetime import datetime, timedelta, time, date
  import calendar
  from dateutil import tz
  from functools import wraps
  import re
  import six
label_desc: Use image node_id 9 for calling the isoparser obj's underlying member method code with example usage: obj._calculate_weekdate(year, week, day) and returns: unknown