code: def split_syllable(syllable: str):
      """Split a syllable in pinyin into a list of phones and a list of tones.
      Initials have no tone, represented by '0', while finals have tones from
      '1,2,3,4,5'.
  
      e.g.
  
      zhang -> ['zh', 'ang'], ['0', '1']
      """
      if syllable in _pauses:
          # syllable, tone
          return [syllable], ["0"]
  
      tone = syllable[-1]
      syllable = convert(syllable[:-1])
  
      phones = []
      tones = []
  
      global _initials
      if syllable[:2] in _initials:
          phones.append(syllable[:2])
          tones.append("0")
          phones.append(syllable[2:])
          tones.append(tone)
      elif syllable[0] in _initials:
          phones.append(syllable[0])
          tones.append("0")
          phones.append(syllable[1:])
          tones.append(tone)
      else:
          phones.append(syllable)
          tones.append(tone)
      return phones, tones
  
file_path: PaddleHub/modules/audio/voice_cloning/lstm_tacotron2/preprocess_transcription.py
imports: import argparse
  from pathlib import Path
  import pickle
  import re
  from parakeet.frontend import Vocab
  import tqdm
label_desc: Use image node_id 4 for calling a global function with example usage: split_syllable(syllable) and returns: phones,  tones, list,  list