code: def _month_range(ref, shift=0):
      assert shift <= 0, ("shifting forward not supported", shift)
      start = ref.replace(
          day=1, hour=0, minute=0, second=0, microsecond=0
      )
      shifted_start = _shift_months_back(start, -shift)
      shifted_end = _end_of_month(shifted_start)
      return shifted_start, shifted_end
  
imports: from datetime import datetime, date, time, timedelta
  from guild import _yacc
  from .None import trlex
label_desc: Use image node_id 32 for calling a global function with example usage: _month_range(ref, shift) and returns: shifted_start,  shifted_end