code: def s3_upload(bucket: str, s3_key_prefix: str, paths: List[str]):
      """
      Uploads a list of files to an S3 bucket with a particular S3 key prefix
      :param bucket: The name of the S3 bucket
      :param s3_key_prefix: The key prefix to apply to each of the files
      :param paths: A list of paths to files
      """
      for path in paths:
          s3_key = "{}/{}".format(s3_key_prefix, os.path.basename(path))
          logger.info("Uploading {}".format(path))
          logger.debug(
              "Uploading {} to s3://{}/{}".format(path, bucket, s3_key)
          )
          with open(path, "rb") as data:
              s3.upload_fileobj(Fileobj=data, Key=s3_key, Bucket=bucket)
  
imports: import argparse
  import ctypes
  import glob
  import logging
  import os
  import re
  import sys
  from itertools import chain
  from subprocess import CalledProcessError, check_output
  from typing import Dict, List, Optional
  import boto3
  import botocore.exceptions
  import yaml
label_desc: Use image node_id 2 for calling a global function with example usage: s3_upload(bucket, s3_key_prefix, paths) without return types