code: def pull(self, datafile: str = ''):
          
          locale = self.locale
          data_dir = self._data_dir
  
          if not datafile:
              datafile = self._datafile
  
          def get_data(locale_name: str) -> JSON:
              """Pull JSON data from file.
  
              :param locale_name: Locale name.
              :return: Content of JSON file as dict.
              """
              file_path = Path(data_dir).joinpath(locale_name, datafile)
              with open(file_path, 'r', encoding='utf8') as f:
                  return json.load(f)
  
          separator = locales.LOCALE_SEPARATOR
  
          master_locale = locale.split(separator).pop(0)
          data = get_data(master_locale)
  
          if separator in locale:
              data = self._update_dict(data, get_data(locale))
  
          self._data = data
docs: Pull the content from the JSON and memorize one.
  
          Opens JSON file ``file`` in the folder ``data/locale``
          and get content from the file and memorize ones using lru_cache.
  
          :param datafile: The name of file.
          :return: The content of the file.
          :raises UnsupportedLocale: if locale is not supported.