code: def main():
      if not os.path.exists(args.input_path):
          raise ValueError(
              f"Input path {args.input_path} does not exist"
          )
      if os.path.exists(args.output_dir):
          logging.info(
              f"Output directory {args.output_dir} exists already. Existing files could be potentially overwritten."
          )
      else:
          logging.info(f"Creating output directory {args.output_dir}.")
          os.makedirs(args.output_dir, exist_ok=True)
  
      if os.path.isdir(args.input_path):
          input_paths = sorted(
              [
                  os.path.join(args.input_path, f)
                  for f in os.listdir(args.input_path)
              ]
          )
      else:
          input_paths = [args.input_path]
  
      for input_file in input_paths:
          process_file(input_file)
  
file_path: NeMo/examples/nlp/duplex_text_normalization/data/en/data_preprocessing.py
imports: import os
  from argparse import ArgumentParser
  import inflect
  import regex
  from tqdm import tqdm
  from nemo.collections.common.tokenizers.moses_tokenizers import MosesProcessor
  from nemo.collections.nlp.data.text_normalization.constants import EN_GREEK_TO_SPOKEN
  from nemo.collections.nlp.data.text_normalization.utils import add_space_around_dash, convert_fraction, convert_superscript
  from nemo.utils import logging
label_desc: Use image node_id 6 for calling a global function with example usage: main() without return types