class_docstr: Class that provides a transliteration method from Anglo-Saxon or Anglo-Frisian runic alphabet to Latin alphabet
  and vice versa.
docstr: Transliterates Anglo-Saxon runes into lat and vice versa.
  
  Sources:
      http://www.arild-hauge.com/eanglor.htm
      https://en.wikipedia.org/wiki/Anglo-Saxon_runes
  
  :param text: str: The text to be transcribed
  :param mode: Specifies transliteration mode, options:
  
      Latin (default): Transliterates Anglo-Saxon runes into the lat
      alphabet, using the Dickins system
  
      Anglo-Saxon/Anglo-Frisian : Transliterates Latin text into Anglo-Saxon runes
  
  Examples:
  
  >>> Transliterate().transliterate("Hƿæt Ƿe Gardena in geardagum", "Anglo-Saxon")
  'ᚻᚹᚫᛏ ᚹᛖ ᚷᚪᚱᛞᛖᚾᚪ ᛁᚾ ᚷᛠᚱᛞᚪᚷᚢᛗ'
  
  >>> Transliterate().transliterate("ᚩᚠᛏ ᛋᚳᚣᛚᛞ ᛋᚳᛖᚠᛁᛝ ᛋᚳᛠᚦᛖᚾᚪ ᚦᚱᛠᛏᚢᛗ", "Latin")
  'oft scyld scefin sceathena threatum'
docstr_tok: ["Transliterates","Anglo-Saxon","runes","into","lat","and","vice","versa",".","Sources",":","http",":","\/\/www.arild-hauge.com\/eanglor.htm","https",":","\/\/en.wikipedia.org\/wiki\/Anglo-Saxon_runes",":","param","text",":","str",":","The","text","to","be","transcribed",":","param","mode",":","Specifies","transliteration","mode",",","options",":","Latin","(","default",")",":","Transliterates","Anglo-Saxon","runes","into","the","lat","alphabet",",","using","the","Dickins","system","Anglo-Saxon\/Anglo-Frisian",":","Transliterates","Latin","text","into","Anglo-Saxon","runes","Examples",":",">",">",">","Transliterate","(",")",".transliterate","(","``","H\u01bf\u00e6t","\u01f7e","Gardena","in","geardagum","''",",","``","Anglo-Saxon","''",")","'\u16bb\u16b9\u16ab\u16cf","\u16b9\u16d6","\u16b7\u16aa\u16b1\u16de\u16d6\u16be\u16aa","\u16c1\u16be","\u16b7\u16e0\u16b1\u16de\u16aa\u16b7\u16a2\u16d7'",">",">",">","Transliterate","(",")",".transliterate","(","``","\u16a9\u16a0\u16cf","\u16cb\u16b3\u16a3\u16da\u16de","\u16cb\u16b3\u16d6\u16a0\u16c1\u16dd","\u16cb\u16b3\u16e0\u16a6\u16d6\u16be\u16aa","\u16a6\u16b1\u16e0\u16cf\u16a2\u16d7","''",",","``","Latin","''",")","'oft","scyld","scefin","sceathena","threatum","'"]
code: def transliterate(text, mode="Latin"):
      """
      Transliterates Anglo-Saxon runes into lat and vice versa.
  
      Sources:
          http://www.arild-hauge.com/eanglor.htm
          https://en.wikipedia.org/wiki/Anglo-Saxon_runes
  
      :param text: str: The text to be transcribed
      :param mode: Specifies transliteration mode, options:
  
          Latin (default): Transliterates Anglo-Saxon runes into the lat
          alphabet, using the Dickins system
  
          Anglo-Saxon/Anglo-Frisian : Transliterates Latin text into Anglo-Saxon runes
  
      Examples:
  
      >>> Transliterate().transliterate("Hƿæt Ƿe Gardena in geardagum", "Anglo-Saxon")
      'ᚻᚹᚫᛏ ᚹᛖ ᚷᚪᚱᛞᛖᚾᚪ ᛁᚾ ᚷᛠᚱᛞᚪᚷᚢᛗ'
  
      >>> Transliterate().transliterate("ᚩᚠᛏ ᛋᚳᚣᛚᛞ ᛋᚳᛖᚠᛁᛝ ᛋᚳᛠᚦᛖᚾᚪ ᚦᚱᛠᛏᚢᛗ", "Latin")
      'oft scyld scefin sceathena threatum'
      """
      if mode == "Latin":
          return Transliterate.__transliterate_helper(
              text, L_Transliteration
          )
  
      elif mode in ["Anglo-Saxon", "Anglo-Frisian"]:
          return Transliterate.__transliterate_helper(
              text, R_Transliteration
          )
  
      else:
          LOG.error("The specified mode is currently not supported")
          raise UnimplementedAlgorithmError(
              "The specified mode is currently not supported"
          )
  
imports: import logging
  from cltk.core.exceptions import UnimplementedAlgorithmError
  from cltk.phonology.ang.transcription import L_Transliteration, R_Transliteration
label_desc: Use image node_id 2 for calling the Transliterate obj's underlying member method code with example usage: obj.transliterate(text, mode) and returns: Transliterate, Transliterate