docs: def alignPronunciations(pronI, pronA):
      '''
      Align the phones in two pronunciations
      '''
      
      # First prep the two pronunctions
      pronI = [char for char in pronI]
      pronA = [char for char in pronA]
      
      # Remove any elements not in the other list (but maintain order)
      pronITmp = pronI
      pronATmp = pronA
  
      # Find the longest sequence
      sequence = _lcs(pronITmp, pronATmp)
  
      # Find the index of the sequence
      # TODO: investigate ambiguous cases
      startA = 0
      startI = 0
      sequenceIndexListA = []
      sequenceIndexListI = []
      for phone in sequence:
          startA = pronA.index(phone, startA)
          startI = pronI.index(phone, startI)
          
          sequenceIndexListA.append(startA)
          sequenceIndexListI.append(startI)
      
      # An index on the tail of both will be used to create output strings
      # of the same length
      sequenceIndexListA.append(len(pronA))
      sequenceIndexListI.append(len(pronI))
      
      # Fill in any blanks such that the sequential items have the same
      # index and the two strings are the same length
      for x in range(len(sequenceIndexListA)):
          indexA = sequenceIndexListA[x]
          indexI = sequenceIndexListI[x]
          if indexA < indexI:
              for x in range(indexI - indexA):
                  pronA.insert(indexA, "''")
              sequenceIndexListA = [val + indexI - indexA
                                    for val in sequenceIndexListA]
          elif indexA > indexI:
              for x in range(indexA - indexI):
                  pronI.insert(indexI, "''")
              sequenceIndexListI = [val + indexA - indexI
                                    for val in sequenceIndexListI]
      
      return pronI, pronA