docs: def getArgument(self, num):
      """
      Get the num^th argument.
  
      :param num: Which argument to get; indexing here is from 0.
      :return: The num^th agument; arguments are always parsed as strings, so this
               will be a string.
      :raise InterfaceException: if there are fewer than num + 1 arguments.
      """
      if not self.hasArgument(num):
        raise InterfaceException("Failed to retrieve argument " + str(num) +
                                 " -- not enough arguments provided")
      return self.args[num]