code: def recognise(self, string, line_num):
  		
  		symbols = []
  		unknown = []
  
  		for char in string:
  			if char == SPACE:
  				continue
  
  			try:
  				name = unicodedata.name(char)
  			except ValueError:
  				name = 'UNNAMED CHARACTER {}'.format(ord(char))
  
  			if char in self.ipa:
  				symbol = Symbol(char, name, self.ipa[char])
  				symbols.append(symbol)
  				self.ipa_symbols[symbol].append(line_num)
  			else:
  				symbol = UnknownSymbol(char, name)
  				unknown.append(symbol)
  				self.unk_symbols[symbol].append(line_num)
  
  		return tuple(symbols), tuple(unknown)
docs: Splits the string into chars and distributes these into the buckets of
  		IPA and non-IPA symbols. Expects that there are no precomposed chars in
  		the string.