class ExecStdInExample {

  public static void main(String[] args) {<FILL_FUNCTION_BODY>}
}

    String master = "https://localhost:8443/";
    String podName = null;

    if (args.length == 2) {
      master = args[0];
      podName = args[1];
    }
    if (args.length == 1) {
      podName = args[0];
    }

    Config config = new ConfigBuilder().withMasterUrl(master).build();
    try (
        KubernetesClient client = new KubernetesClientBuilder().withConfig(config).build();
        ExecWatch watch = client.pods().withName(podName)
            .redirectingInput()
            .writingOutput(System.out)
            .terminateOnError()
            .exec("cat");) {
      // send hello
      OutputStream input = watch.getInput();
      input.write("hello".getBytes());
      input.flush();

      // close is needed when we're reading from stdin to terminate
      watch.close();

      // wait for the process to exit
      watch.exitCode().join();
    } catch (Exception e) {
      throw KubernetesClientException.launderThrowable(e);
    }
  
<no_super_class>