code: def _fix(interval):
      '''
      Helper function for ``GenomeIntervalTree.from_bed and ``.from_table``.
  
      Data tables may contain intervals with begin >= end. Such intervals lead to infinite recursions and
      other unpleasant behaviour, so something has to be done about them. We 'fix' them by simply setting end = begin+1.
      '''
      if interval.begin >= interval.end:
          warnings.warn("Interval with reversed coordinates (begin >= end) detected when reading data. Interval was automatically fixed to point interval [begin, begin+1).")
          return Interval(interval.begin, interval.begin+1, interval.data)
      else:
          return intervaf _fix(interval):
      '''
      Helper function for ``GenomeIntervalTree.from_bed and ``.from_table``.
  
      Data tables may contain intervals with begin >= end. Such intervals lead to infinite recursions and
      other unpleasant behaviour, so something has to be done about them. We 'fix' them by simply setting end = begin+1.
      '''
      if interval.begin >= interval.end:
          warnings.warn("Interval with reversed coordinates (begin >= end) detected when reading data. Interval was automatically fixed to point interval [begin, begin+1).")
          return Interval(interval.begin, interval.begin+1, interval.data)
      else:
          return interval
docs: Helper function for ``GenomeIntervalTree.from_bed and ``.from_table``.
  
      Data tables may contain intervals with begin >= end. Such intervals lead to infinite recursions and
      other unpleasant behaviour, so something has to be done about them. We 'fix' them by simply setting end = begin+1.