docs: def _fusion_to_json(self):
          """Convert this modification to a FUSION data dictionary.
  
          Don't use this without checking ``self.type == FUSION`` first.
  
          :rtype: dict
          """
          if self.p5_reference:
              range_5p = fusion_range(
                  reference=str(self.p5_reference),
                  start=int_or_str(self.p5_start),
                  stop=int_or_str(self.p5_stop),
              )
          else:
              range_5p = missing_fusion_range()
  
          if self.p3_reference:
              range_3p = fusion_range(
                  reference=str(self.p3_reference),
                  start=int_or_str(self.p3_start),
                  stop=int_or_str(self.p3_stop),
              )
          else:
              range_3p = missing_fusion_range()
  
          return {
              PARTNER_5P: self.p5_partner.to_json(),  # just the identifier pair
              PARTNER_3P: self.p3_partner.to_json(),  # just the identifier pair
              RANGE_5P: range_5p,
              RANGE_3P: range_3p,
          }