docs: def packSeptets(octets, padBits=0):
      """ Packs the specified octets into septets
      
      Typically the output of encodeGsm7 would be used as input to this function. The resulting
      bytearray contains the original GSM-7 characters packed into septets ready for transmission.
      
      :rtype: bytearray
      """
      result = bytearray()    
      if type(octets) == str:
          octets = iter(rawStrToByteArray(octets))
      elif type(octets) == bytearray:
          octets = iter(octets)
      shift = padBits
      if padBits == 0:
          prevSeptet = next(octets)
      else:
          prevSeptet = 0x00
      for octet in octets:
          septet = octet & 0x7f;
          if shift == 7:
              # prevSeptet has already been fully added to result
              shift = 0        
              prevSeptet = septet
              continue            
          b = ((septet << (7 - shift)) & 0xFF) | (prevSeptet >> shift)
          prevSeptet = septet
          shift += 1
          result.append(b)    
      if shift != 7:
          # There is a bit "left over" from prevSeptet
          result.append(prevSeptet >> shift)
      return result