code: def _build_map(self):
          
          if gf.is_py2_narrow_build():
              self.log_warn(u"Running on a Python 2 narrow build: be aware that Unicode chars above 0x10000 cannot be replaced correctly.")
          self.trans_map = {}
          with io.open(self.file_path, "r", encoding="utf-8") as file_obj:
              contents = file_obj.read().replace(u"\t", u" ")
              for line in contents.splitlines():
                  # ignore lines starting with "#" or blank (after stripping)
                  if not line.startswith(u"#"):
                      line = line.strip()
                      if len(line) > 0:
                          self._process_map_rule(line)
docs: Read the map file at path.