code: def interpret_defintion_annotations(potential_definition_inds, aux_note):
      
  
      fs = None
      custom_labels = []
  
      if len(potential_definition_inds) > 0:
          i = 0
          while i<len(potential_definition_inds):
              if aux_note[i].startswith('## '):
                  if not fs:
                      search_fs = rx_fs.findall(aux_note[i])
                      if search_fs:
                          fs = float(search_fs[0])
                          if round(fs, 8) == float(int(fs)):
                              fs = int(fs)
                          i += 1
                          continue
                  if aux_note[i] == '## annotation type definitions':
                      i += 1
                      while aux_note[i] != '## end of definitions':
                          label_store, symbol, description = rx_custom_label.findall(aux_note[i])[0]
                          custom_labels.append((int(label_store), symbol, description))
                          i += 1
                      i += 1
              else:
                  i += 1
  
      if not custom_labels:
          custom_labels = None
  
      return fs, custom_labels
docs: Try to extract annotation definition information from annotation notes.
      Information that may be contained:
      - fs - sample=0, label_state=22, aux_note='## time resolution: XXX'
      - custom annotation label definitions