code: def netmiko_args(optional_args):
      
      fields = py23_compat.argspec(BaseConnection.__init__)
      args = fields[0]
      defaults = fields[3]
  
      check_self = args.pop(0)
      if check_self != "self":
          raise ValueError("Error processing Netmiko arguments")
  
      netmiko_argument_map = dict(zip(args, defaults))
  
      # Netmiko arguments that are integrated into NAPALM already
      netmiko_filter = ["ip", "host", "username", "password", "device_type", "timeout"]
  
      # Filter out all of the arguments that are integrated into NAPALM
      for k in netmiko_filter:
          netmiko_argument_map.pop(k)
  
      # Check if any of these arguments were passed in as NAPALM optional_args
      netmiko_optional_args = {}
      for k, v in netmiko_argument_map.items():
          try:
              netmiko_optional_args[k] = optional_args[k]
          except KeyError:
              pass
  
      # Return these arguments for use with establishing Netmiko SSH connection
      return netmiko_optional_args
docs: Check for Netmiko arguments that were passed in as NAPALM optional arguments.
  
      Return a dictionary of these optional args  that will be passed into the Netmiko
      ConnectHandler call.