class_docstr: Transformation that leverage pre-defined spelling mistake dictionary to
  simulate spelling mistake.
  
  https://arxiv.org/ftp/arxiv/papers/1812/1812.04718.pdf
class_docstr_tok: ["Transformation","that","leverage","pre-defined","spelling","mistake","dictionary","to","simulate","spelling","mistake",".","https",":","\/\/arxiv.org\/ftp\/arxiv\/papers\/1812\/1812.04718.pdf"]
docstr: Get a list of transformed tokens. Default one word replace one char.
  
  :param str word: token word to transform.
  :param int n: number of transformed tokens to generate.
  :param kwargs:
  :return: candidate list
docstr_tok: ["Get","a","list","of","transformed","tokens",".","Default","one","word","replace","one","char",".",":","param","str","word",":","token","word","to","transform",".",":","param","int","n",":","number","of","transformed","tokens","to","generate",".",":","param","kwargs",":",":","return",":","candidate","list"]
code: def _get_candidates(self, word, pos=None, n=1):
      r"""
      Get a list of transformed tokens. Default one word replace one char.
  
      :param str word: token word to transform.
      :param int n: number of transformed tokens to generate.
      :param kwargs:
      :return: candidate list
  
      """
      candidates = []
      if pos in ["v", "n"]:
          candidates = self.spell(word)
  
      return candidates
  
file_path: textflint/textflint/generation/transformation/UTCN/cn_spelling_error.py
imports: import random
  from pypinyin import lazy_pinyin
  from Pinyin2Hanzi import DefaultHmmParams
  from Pinyin2Hanzi import viterbi
  from ...transformation import CnWordSubstitute
label_desc: Use image node_id 3 for calling the CnSpellingError obj's underlying member method code with example usage: obj._get_candidates(word, pos, n) and returns: candidates