<Servers>
  <Server name="POLARIS@ANL" resource="csrc://localhost" timeout="-1">
    <CommandStartup>
      <Options>
        <Option name="XTERM_EXE" label="Xterm executable" save="true">
          <File default="/usr/X11/bin/xterm"/>
        </Option>
        <Option name="SSH_EXE" label="SSH executable" save="true">
          <File default="ssh"/>
        </Option>
        <Option name="MACHINE" label="Remote machine" save="true">
          <String default="polaris.alcf.anl.gov"/>
        </Option>
        <Option name="USER" label="Username" save="true">
          <String default="YOURUSERNAME"/>
        </Option>
        <Option name="VERSION" label="ParaView version" save="true">
          <String default="5.11.1-mesa"/>
        </Option>
        <Option name="CLIENT_PORT" label="Client port">
          <Range type="int" min="1025" max="65535" step="1" default="11111"/>
        </Option>
        <Option name="SERVER_PORT" label="Server port">
          <Range type="int" min="1025" max="65535" step="1" default="random"/>
        </Option>
	<Option name="NUMNODES" label="Number of nodes to reserve" save="true">
          <Range type="int" min="1" max="1024" step="4" default="2"/>
        </Option>
	<Option name="RANKSPERNODE" label="Number of ranks per node" save="true">
          <Range type="int" min="1" max="4" step="1" default="1"/>
        </Option>
	<Option name="NUMMINUTES" label="Number of minutes to reserve" save="true">
          <Range type="int" min="5" max="1000" step="5" default="20"/>
        </Option>
        <Option name="ACCOUNT" label="Account" save="true">
          <String default="YOURPROJECT"/>
        </Option>
        <Option name="QUEUE" label="Queue" save="true">
          <String default="debug"/>
	</Option>
	<Option name="FILE_SYSTEMS" label="File Systems" save="true">
          <String default="home:eagle:grand"/>
        </Option>
        <Option name="JOBNAME" label="Job name" save="true">
          <String default="paraview_server"/>
        </Option>
      </Options>
      <Command exec="$XTERM_EXE$" timeout="0" delay="0" Arguments="0">
        <Arguments>
          <Argument value="-T"/>
          <Argument value="ParaView $REMOTE_USER$@polaris"/>
          <Argument value="-hold"/>
          <Argument value="-e"/>
          <Argument value="$SSH_EXE$"/>
          <Argument value="-R"/>
          <Argument value="$SERVER_PORT$:localhost:$CLIENT_PORT$"/>
          <Argument value="$USER$@$MACHINE$"/>
          <Argument value="/soft/visualization/paraview/connect/launch.sh"/>
          <Argument value="$NUMNODES$"/>
          <Argument value="$RANKSPERNODE$"/>
          <Argument value="$NUMMINUTES$"/>
          <Argument value="$ACCOUNT$"/>
          <Argument value="$QUEUE$"/>
          <Argument value="$JOBNAME$"/>
          <Argument value="$SERVER_PORT$"/>
          <Argument value="$FILE_SYSTEMS$"/>
          <Argument value="pvserver"/>
          <Argument value="$VERSION$"/>
        </Arguments>
      </Command>
    </CommandStartup>
  </Server>
  <Server name="windows to POLARIS@ANL" resource="csrc://localhost">
    <CommandStartup>
      <Options>
        <Option name="SSH_EXE" label="SSH executable" save="true">
          <File default="&#x22;C:\Program Files\PuTTY\plink.exe&#x22;"/>
        </Option>
        <Option name="MACHINE" label="Remote machine" save="true">
          <String default="polaris.alcf.anl.gov"/>
        </Option>
        <Option name="USER" label="Username" save="true">
          <String default="YOURUSERNAME"/>
        </Option>
        <Option name="VERSION" label="ParaView version" save="true">
          <String default="5.11.1-mesa"/>
        </Option>
        <Option name="CLIENT_PORT" label="Client port">
          <Range type="int" min="1025" max="65535" step="1" default="11111"/>
        </Option>
        <Option name="SERVER_PORT" label="Server port">
          <Range type="int" min="1025" max="65535" step="1" default="random"/>
        </Option>
        <Option name="NUMNODES" label="Number of nodes to reserve" save="true">
          <Range type="int" min="1" max="1024" step="4" default="2"/>
        </Option>
	<Option	name="RANKSPERNODE" label="Number of ranks per node" save="true">
          <Range type="int" min="1" max="4" step="1" default="1"/>
        </Option>
        <Option name="NUMMINUTES" label="Number of minutes to reserve" save="true">
          <Range type="int" min="5" max="1000" step="5" default="20"/>
        </Option>
        <Option name="ACCOUNT" label="Account" save="true">
          <String default="YOURPROJECT"/>
        </Option>
        <Option name="QUEUE" label="Queue" save="true">
          <String default="debug"/>
        </Option>
	<Option name="FILE_SYSTEMS" label="File Systems" save="true">
          <String default="home:eagle:grand"/>
        </Option>
        <Option name="JOBNAME" label="Job name" save="true">
          <String default="paraview_server"/>
        </Option>
      </Options>
      <Command exec="cmd.exe" delay="10">
        <Arguments>
          <Argument value="/C"/>
          <Argument value="start"/>
          <Argument value="cmd.exe"/>
          <Argument value="/C"/>
          <Argument value="$SSH_EXE$"/>
          <Argument value="-ssh"/>
          <Argument value="$MACHINE$"/>
          <Argument value="-R"/>
          <Argument value="$SERVER_PORT$:127.0.0.1:$CLIENT_PORT$"/>
          <Argument value="-l"/>
          <Argument value="$USER$"/>
          <Argument value="/soft/visualization/paraview/connect/launch.sh"/>
          <Argument value="$NUMNODES$"/>
          <Argument value="$RANKSPERNODE$"/>
	  <Argument value="$NUMMINUTES$"/>
          <Argument value="$ACCOUNT$"/>
          <Argument value="$QUEUE$"/>
          <Argument value="$JOBNAME$"/>
          <Argument value="$SERVER_PORT$"/>
	  <Argument value="$FILE_SYSTEMS$"/>
	  <Argument value="pvserver"/>
          <Argument value="$VERSION$"/>
        </Arguments>
      </Command>
    </CommandStartup>
  </Server>
  <Server name="EDISON@NERSC" resource="csrc://">
    <CommandStartup>
      <Options>
        <Option name="REMOTE_USER" label="user name" save="true">
          <String default="USER"/>
        </Option>
        <Option name="PV_SERVER_PORT" label="tunnel port" save="true">
          <Range type="int" min="1" max="65535" step="1" default="11111"/>
        </Option>
        <Option name="NCPUS" label="number of processes" save="true">
          <Range type="int" min="1" max="153216" step="1" default="24"/>
        </Option>
        <Option name="NCPUS_PER_SOCKET" label="process per socket" save="true">
          <Range type="int" min="1" max="12" step="1" default="12"/>
        </Option>
        <Option name="WALLTIME" label="job wall time" save="true">
          <String default="HH:MM:SS"/>
        </Option>
        <Option name="ACCOUNT" label="account" save="true">
          <String default="default"/>
        </Option>
        <Option name="QUEUE" label="queue" save="true">
          <Enumeration default="regular">
            <Entry value="debug" label="debug"/>
            <Entry value="regular" label="regular"/>
            <Entry value="premium" label="premium"/>
          </Enumeration>
        </Option>
        <Option name="SSH_PATH" label="/path/to/ssh" save="true">
          <File default="/usr/bin/ssh"/>
        </Option>
        <Option name="XTERM_PATH" label="/path/to/xterm" save="true">
          <File default="/usr/bin/xterm"/>
        </Option>
      </Options>
      <Command exec="$XTERM_PATH$" timeout="0" delay="0" Arguments="0">
        <Arguments>
          <Argument value="-T"/>
          <Argument value="ParaView $REMOTE_USER$@edison"/>
          <Argument value="-e"/>
          <Argument value="$SSH_PATH$"/>
          <Argument value="-t"/>
          <Argument value="-R"/>
          <Argument value="$PV_SERVER_PORT$:localhost:$PV_SERVER_PORT$"/>
          <Argument value="$REMOTE_USER$@edison.nersc.gov"/>
          <Argument value="/usr/common/graphics/ParaView/start_pvserver.sh"/>
          <Argument value="$NCPUS$"/>
          <Argument value="$NCPUS_PER_SOCKET$"/>
          <Argument value="$WALLTIME$"/>
          <Argument value="$ACCOUNT$"/>
          <Argument value="$QUEUE$"/>
          <Argument value="$PV_SERVER_PORT$"/>
          <Argument value="$PV_VERSION_FULL$"/>
          <Argument value="hybrid"/>
        </Arguments>
      </Command>
    </CommandStartup>
  </Server>
  <Server name="windows to EDISON@NERSC" resource="csrc://">
    <CommandStartup>
      <Options>
        <Option name="REMOTE_USER" label="user name" save="true">
          <String default="USER"/>
        </Option>
        <Option name="PV_SERVER_PORT" label="tunnel port" save="true">
          <Range type="int" min="1" max="65535" step="1" default="11111"/>
        </Option>
        <Option name="NCPUS" label="number of processes" save="true">
          <Range type="int" min="1" max="153216" step="1" default="24"/>
        </Option>
        <Option name="NCPUS_PER_SOCKET" label="process per socket" save="true">
          <Range type="int" min="1" max="12" step="1" default="12"/>
        </Option>
        <Option name="WALLTIME" label="job wall time" save="true">
          <String default="HH:MM:SS"/>
        </Option>
        <Option name="ACCOUNT" label="account" save="true">
          <String default="default"/>
        </Option>
        <Option name="QUEUE" label="queue" save="true">
          <Enumeration default="regular">
            <Entry value="debug" label="debug"/>
            <Entry value="regular" label="regular"/>
            <Entry value="premium" label="premium"/>
          </Enumeration>
        </Option>
        <Option name="SSH_PATH" label="/path/to/plink.exe" save="true">
          <File default="&quot;C:\Program Files (x86)\PuTTY\plink.exe&quot;"/>
        </Option>
        <Option name="XTERM_PATH" label="/path/to/cmd.exe" save="true">
          <File default="cmd.exe"/>
        </Option>
      </Options>
      <Command exec="$XTERM_PATH$" delay="10">
        <Arguments>
          <Argument value="/C"/>
          <Argument value="start"/>
          <Argument value="cmd.exe"/>
          <Argument value="/C"/>
          <Argument value="$SSH_PATH$"/>
          <Argument value="-ssh"/>
          <Argument value="edison.nersc.gov"/>
          <Argument value="-R"/>
          <Argument value="$PV_SERVER_PORT$:localhost:$PV_SERVER_PORT$"/>
          <Argument value="-l"/>
          <Argument value="$REMOTE_USER$"/>
          <Argument value="/usr/common/graphics/ParaView/start_pvserver.sh"/>
          <Argument value="$NCPUS$"/>
          <Argument value="$NCPUS_PER_SOCKET$"/>
          <Argument value="$WALLTIME$"/>
          <Argument value="$ACCOUNT$"/>
          <Argument value="$QUEUE$"/>
          <Argument value="$PV_SERVER_PORT$"/>
          <Argument value="$PV_VERSION_FULL$"/>
          <Argument value="hybrid"/>
        </Arguments>
      </Command>
    </CommandStartup>
  </Server>
  <Server name="CORI@NERSC" resource="csrc://">
    <CommandStartup>
      <Options>
        <Option name="REMOTE_USER" label="user name" save="true">
          <String default="USER"/>
        </Option>
        <Option name="PV_SERVER_PORT" label="tunnel port" save="true">
          <Range type="int" min="1" max="65535" step="1" default="11111"/>
        </Option>
        <Option name="NCPUS" label="number of processes" save="true">
          <Range type="int" min="1" max="153216" step="1" default="24"/>
        </Option>
        <Option name="NCPUS_PER_SOCKET" label="process per socket" save="true">
          <Range type="int" min="1" max="16" step="1" default="16"/>
        </Option>
        <Option name="WALLTIME" label="job wall time" save="true">
          <String default="HH:MM:SS"/>
        </Option>
        <Option name="ACCOUNT" label="account" save="true">
          <String default="default"/>
        </Option>
        <Option name="QUEUE" label="queue" save="true">
          <Enumeration default="regular">
            <Entry value="debug" label="debug"/>
            <Entry value="regular" label="regular"/>
            <Entry value="premium" label="premium"/>
          </Enumeration>
        </Option>
        <Option name="SSH_PATH" label="/path/to/ssh" save="true">
          <File default="/usr/bin/ssh"/>
        </Option>
        <Option name="XTERM_PATH" label="/path/to/xterm" save="true">
          <File default="/usr/bin/xterm"/>
        </Option>
        <Option name="XTERM_GEOMETRY" label="xterm geometry" save="true">
          <File default="150x50"/>
        </Option>
      </Options>
      <Command exec="$XTERM_PATH$" timeout="0" delay="0" Arguments="0">
        <Arguments>
          <Argument value="-geometry"/>
          <Argument value="$XTERM_GEOMETRY$"/>
          <Argument value="-T"/>
          <Argument value="ParaView $REMOTE_USER$@cori"/>
          <Argument value="-e"/>
          <Argument value="$SSH_PATH$"/>
          <Argument value="-t"/>
          <Argument value="-R"/>
          <Argument value="$PV_SERVER_PORT$:localhost:$PV_SERVER_PORT$"/>
          <Argument value="$REMOTE_USER$@cori.nersc.gov"/>
          <Argument value="/usr/common/graphics/ParaView/start_pvserver.sh"/>
          <Argument value="$NCPUS$"/>
          <Argument value="$NCPUS_PER_SOCKET$"/>
          <Argument value="$WALLTIME$"/>
          <Argument value="$ACCOUNT$"/>
          <Argument value="$QUEUE$"/>
          <Argument value="$PV_SERVER_PORT$"/>
          <Argument value="$PV_VERSION_FULL$"/>
          <Argument value="hybrid"/>
        </Arguments>
      </Command>
    </CommandStartup>
  </Server>
  <Server name="LANL VLGate: Gadget (UNIX)" resource="csrc://localhost">
    <CommandStartup>
      <Options>
        <Option name="XTERM" label="Path to xterm" save="true">
          <File default="/usr/bin/xterm"/>
        </Option>
        <Option name="SSH_USER" label="SSH Username" save="true">
          <String default="USER"/>
        </Option>
        <Option name="PV_SERVER_PORT" label="Server port ">
          <Range type="int" min="1025" max="65535" step="1" default="random"/>
        </Option>
        <Option name="NUM_NODES" label="Number of compute nodes" save="true">
          <Range type="int" min="1" max="20" step="1" default="8"/>
        </Option>
        <Option name="NUM_PPN" label="Process(es) Per Node (PPN)" save="true">
          <Enumeration default="16">
            <Entry value="32" label="32 PPN (1 render thread per process)" />
            <Entry value="16" label="16 PPN (2 render threads per process)" />
            <Entry value="8"  label="8 PPN (4 render threads per process)" />
            <Entry value="4"  label="4 PPN (8 render threads per process)" />
            <Entry value="2"  label="2 PPN (16 render threads per process)" />
            <Entry value="1"  label="1 PPN (32 render threads per process)" />
          </Enumeration>
        </Option>
        <Option name="ACCOUNT" label="Account to run the job under" save="true">
          <String default="DEFAULT"/>
        </Option>
        <Option name="QUEUE" label="Queue to run the job under" save="true">
          <String default="DEFAULT"/>
        </Option>
        <Option name="HOURS" label="Number of hours to reserve" save="true">
          <Range type="int" min="1" max="8" step="1" default="1"/>
        </Option>
      </Options>
      <Command exec="$XTERM$" delay="5">
        <Arguments>
          <Argument value="-T"/>
          <Argument value="pvserver"/>
          <Argument value="-e"/>
          <Argument value="ssh"/>
          <Argument value="$SSH_USER$@vl-gate"/>
          <Argument value="-R"/>
          <Argument value="$PV_SERVER_PORT$:localhost:$PV_SERVER_PORT$"/>
          <Argument value="ssh"/>
          <Argument value="-R"/>
          <Argument value="$PV_SERVER_PORT$:localhost:$PV_SERVER_PORT$"/>
          <Argument value="ga-fe"/>
          <Argument value="/usr/projects/hpcsoft/USER_SCRIPTS/pvserver_jobsub_wrapper-CRAY-XC40.sh"/>
          <Argument value="$NUM_NODES$"/>
          <Argument value="$NUM_PPN$"/>
          <Argument value="$HOURS$"/>
          <Argument value="$PV_SERVER_PORT$"/>
          <Argument value="$ACCOUNT$"/>
          <Argument value="$QUEUE$"/>
          <Argument value="$PV_VERSION_FULL$"/>
        </Arguments>
      </Command>
    </CommandStartup>
  </Server>
  <Server name="LANL Turquoise: Lightshow (UNIX)" resource="csrc://localhost">
    <CommandStartup>
      <Options>
        <!-- User chooses the remote username if different from client username -->
        <Option name="REMOTE_USER" label="user name" save="true">
          <String default="$PV_USERNAME$"></String>
        </Option>
        <Option name="PV_CONNECT_ID" label="Connection ID" save="false">
           <Range type="int" min="1" max="65535" step="1" default="random"></Range>
        </Option>
        <!-- Choose the LOCAL port to use on the client system. (NOTE: this may be
             important for ParaView client used on Thin-Client servers!)
             Unfortunately, Kitware has chosen the variable name "PV_SERVER_PORT" to
             refer to the client-side port -->
        <Option name="PV_SERVER_PORT" label="local client port" save="false">
          <Range type="int" min="1024" max="65535" step="1" default="random"></Range>
        </Option>
        <!-- Choose the Server port to use for WTRW. Using the random number feature here. -->
        <Option name="PV_INTER_PORT_1" label="tunnel port (WTRW)" save="false">
          <Range type="int" min="8192" max="65535" step="1" default="random"></Range>
        </Option>
        <!-- Choose the Server port to use for the FE node. Using another random number. -->
        <Option name="PV_INTER_PORT_2" label="tunnel port (Front-End)" save="false">
          <Range type="int" min="8192" max="65535" step="1" default="random"></Range>
        </Option>
        <!-- The maximum value is actually platform dependent... -->
        <Option name="NODES" label="number of compute nodes" save="true">
          <Range type="int" min="1" max="4" step="1" default="1"></Range>
        </Option>
        <!-- Again another platform dependent attribute... -->
        <Option name="NCPUS_PER_NODE" label="process per node" save="false">
          <Range type="int" min="1" max="12" step="1" default="12"></Range>
        </Option>
        <!-- Requested wallclock time. Restrict to 8 hour maximum time -->
        <Option name="MINUTES" label="Job Wall Time (minutes)" save="true">
          <Range type="int" min="10" max="480" default="120"></Range>
        </Option>
        <!-- Set the User's Moab account to use. Default account used if not specified -->
        <Option name="MOAB_ACCT" label="Project Account" save="true">
          <String default="DEFAULT"></String>
        </Option>
        <Option name="SSH_PATH" label="SSH executable" save="true">
         <File default="/usr/bin/ssh"></File>
        </Option>
        <Option name="XTERM_PATH" label="Terminal executable" save="true">
          <File default="/usr/bin/xterm"></File>
        </Option>
      </Options>
      <Command exec="$XTERM_PATH$" timeout="0" delay="0" Arguments="0">
        <Arguments>
          <Argument value="-T"></Argument>
          <Argument value="ParaView on Lightshow"></Argument>
          <Argument value="-geometry"></Argument>
          <Argument value="80x32"></Argument>
          <Argument value="-bg"></Argument>
          <Argument value="black"></Argument>
          <Argument value="-fg"></Argument>
          <Argument value="yellow"></Argument>
          <Argument value="-e"></Argument>
          <Argument value="$SSH_PATH$"></Argument>
          <Argument value="-q"></Argument>
          <Argument value="-o"></Argument>
          <Argument value="StrictHostKeyChecking=no"></Argument>
          <Argument value="-t"></Argument>
          <Argument value="-R"></Argument>
          <Argument value="$PV_INTER_PORT_1$:localhost:$PV_SERVER_PORT$"></Argument>
          <Argument value="$REMOTE_USER$@wtrw.lanl.gov"></Argument>
          <Argument value="ssh"></Argument>
          <Argument value="-R"></Argument>
          <Argument value="$PV_INTER_PORT_2$:localhost:$PV_INTER_PORT_1$"></Argument>
          <Argument value="$REMOTE_USER$@ls-fe"></Argument>
          <Argument value="/usr/projects/hpcsoft/USER_SCRIPTS/pvserver_jobsub_wrapper.sh"></Argument>
          <Argument value="$NODES$"></Argument>
          <Argument value="$NCPUS_PER_NODE$"></Argument>
          <Argument value="$MINUTES$"></Argument>
          <Argument value="$MOAB_ACCT$"></Argument>
          <Argument value="$PV_INTER_PORT_2$"></Argument>
          <Argument value="$PV_CONNECT_ID$"></Argument>
          <Argument value="$PV_VERSION_FULL$"></Argument>
        </Arguments>
      </Command>
    </CommandStartup>
  </Server>
  <Server name="LANL Turquoise: Lightshow (Windows)" resource="csrc://localhost">
    <CommandStartup>
      <Options>
        <!-- User chooses the remote username if different from client username -->
        <Option name="REMOTE_USER" label="user name" save="true">
          <String default="$PV_USERNAME$"></String>
        </Option>
        <Option name="PV_CONNECT_ID" label="Connection ID" save="false">
           <Range type="int" min="1" max="65535" step="1" default="random"></Range>
        </Option>
        <!-- Choose the LOCAL port to use on the client system. (NOTE: this may be
             important for ParaView client used on Thin-Client servers!)
             Unfortunately, Kitware has chosen the variable name "PV_SERVER_PORT" to
             refer to the client-side port -->
        <Option name="PV_SERVER_PORT" label="local client port" save="false">
          <Range type="int" min="1024" max="65535" step="1" default="random"></Range>
        </Option>
        <!-- Choose the Server port to use for WTRW. Using the random number feature here. -->
        <Option name="PV_INTER_PORT_1" label="tunnel port (WTRW)" save="false">
          <Range type="int" min="8192" max="65535" step="1" default="random"></Range>
        </Option>
        <!-- Choose the Server port to use for the FE node. Using another random number. -->
        <Option name="PV_INTER_PORT_2" label="tunnel port (Front-End)" save="false">
          <Range type="int" min="8192" max="65535" step="1" default="random"></Range>
        </Option>
        <!-- The maximum value is actually platform dependent... -->
        <Option name="NODES" label="number of compute nodes" save="true">
          <Range type="int" min="1" max="4" step="1" default="1"></Range>
        </Option>
        <!-- Again another platform dependent attribute... -->
        <Option name="NCPUS_PER_NODE" label="process per node" save="false">
          <Range type="int" min="1" max="12" step="1" default="12"></Range>
        </Option>
        <!-- Requested wallclock time. Restrict to 8 hour maximum time -->
        <Option name="MINUTES" label="Job Wall Time (minutes)" save="true">
          <Range type="int" min="10" max="480" default="120"></Range>
        </Option>
        <!-- Set the User's Moab account to use. Default account used if not specified -->
        <Option name="MOAB_ACCT" label="Project Account" save="true">
          <String default="DEFAULT"></String>
        </Option>
        <Option name="SSH_PATH" label="SSH executable" save="true">
         <File default="ssh"></File>
        </Option>
        <Option name="TERM_PATH" label="Terminal executable" save="true">
          <File default="cmd"></File>
        </Option>
      </Options>
      <Command exec="$TERM_PATH$" delay="2">
        <Arguments>
          <Argument value="/C"></Argument>
          <Argument value="start"></Argument>
          <Argument value="$SSH_PATH$"></Argument>
          <Argument value="-R"></Argument>
          <Argument value="$PV_INTER_PORT_1$:127.0.0.1:$PV_SERVER_PORT$"></Argument>
          <Argument value="$REMOTE_USER$@wtrw.lanl.gov"></Argument>
          <Argument value="ssh"></Argument>
          <Argument value="-R"></Argument>
          <Argument value="$PV_INTER_PORT_2$:localhost:$PV_INTER_PORT_1$"></Argument>
          <Argument value="$REMOTE_USER$@ls-fe"></Argument>
          <Argument value="/usr/projects/hpcsoft/USER_SCRIPTS/pvserver_jobsub_wrapper.sh"></Argument>
          <Argument value="$NODES$"></Argument>
          <Argument value="$NCPUS_PER_NODE$"></Argument>
          <Argument value="$MINUTES$"></Argument>
          <Argument value="$MOAB_ACCT$"></Argument>
          <Argument value="$PV_INTER_PORT_2$"></Argument>
          <Argument value="$PV_CONNECT_ID$"></Argument>
          <Argument value="$PV_VERSION_FULL$"></Argument>
        </Arguments>
      </Command>
    </CommandStartup>
  </Server>
  <Server name="LANL Turquoise: Moonlight (UNIX)" resource="csrc://localhost">
    <CommandStartup>
      <Options>
        <!-- User chooses the remote username if different from client username -->
        <Option name="REMOTE_USER" label="user name" save="true">
          <String default="$PV_USERNAME$"></String>
        </Option>
        <Option name="PV_CONNECT_ID" label="Connection ID" save="false">
           <Range type="int" min="1" max="65535" step="1" default="random"></Range>
        </Option>
        <!-- Choose the LOCAL port to use on the client system. (NOTE: this may be
             important for ParaView client used on Thin-Client servers!)
             Unfortunately, Kitware has chosen the variable name "PV_SERVER_PORT" to
             refer to the client-side port -->
        <Option name="PV_SERVER_PORT" label="local client port" save="false">
          <Range type="int" min="1024" max="65535" step="1" default="random"></Range>
        </Option>
        <!-- Choose the Server port to use for WTRW. Using the random number feature here. -->
        <Option name="PV_INTER_PORT_1" label="tunnel port (WTRW)" save="false">
          <Range type="int" min="8192" max="65535" step="1" default="random"></Range>
        </Option>
        <!-- Choose the Server port to use for the FE node. Using another random number. -->
        <Option name="PV_INTER_PORT_2" label="tunnel port (Front-End)" save="false">
          <Range type="int" min="8192" max="65535" step="1" default="random"></Range>
        </Option>
        <!-- The maximum value is actually platform dependent... -->
        <Option name="NODES" label="number of compute nodes" save="true">
          <Range type="int" min="1" max="4" step="1" default="1"></Range>
        </Option>
        <!-- Again another platform dependent attribute... -->
        <Option name="NCPUS_PER_NODE" label="process per node" save="false">
          <Range type="int" min="1" max="16" step="1" default="16"></Range>
        </Option>
        <!-- Requested wallclock time. Restrict to 8 hour maximum time -->
        <Option name="MINUTES" label="Job Wall Time (minutes)" save="true">
          <Range type="int" min="10" max="480" default="120"></Range>
        </Option>
        <!-- Set the User's Moab account to use. Default account used if not specified -->
        <Option name="MOAB_ACCT" label="Project Account" save="true">
          <String default="DEFAULT"></String>
        </Option>
        <Option name="SSH_PATH" label="SSH executable" save="true">
         <File default="/usr/bin/ssh"></File>
        </Option>
        <Option name="XTERM_PATH" label="Terminal executable" save="true">
          <File default="/usr/bin/xterm"></File>
        </Option>
      </Options>
      <Command exec="$XTERM_PATH$" timeout="0" delay="0" Arguments="0">
        <Arguments>
          <Argument value="-T"></Argument>
          <Argument value="ParaView on Moonlight"></Argument>
          <Argument value="-geometry"></Argument>
          <Argument value="80x32"></Argument>
          <Argument value="-bg"></Argument>
          <Argument value="black"></Argument>
          <Argument value="-fg"></Argument>
          <Argument value="yellow"></Argument>
          <Argument value="-e"></Argument>
          <Argument value="$SSH_PATH$"></Argument>
          <Argument value="-q"></Argument>
          <Argument value="-o"></Argument>
          <Argument value="StrictHostKeyChecking=no"></Argument>
          <Argument value="-t"></Argument>
          <Argument value="-R"></Argument>
          <Argument value="$PV_INTER_PORT_1$:localhost:$PV_SERVER_PORT$"></Argument>
          <Argument value="$REMOTE_USER$@wtrw.lanl.gov"></Argument>
          <Argument value="ssh"></Argument>
          <Argument value="-R"></Argument>
          <Argument value="$PV_INTER_PORT_2$:localhost:$PV_INTER_PORT_1$"></Argument>
          <Argument value="$REMOTE_USER$@ml-fe"></Argument>
          <Argument value="/usr/projects/hpcsoft/USER_SCRIPTS/pvserver_jobsub_wrapper.sh"></Argument>
          <Argument value="$NODES$"></Argument>
          <Argument value="$NCPUS_PER_NODE$"></Argument>
          <Argument value="$MINUTES$"></Argument>
          <Argument value="$MOAB_ACCT$"></Argument>
          <Argument value="$PV_INTER_PORT_2$"></Argument>
          <Argument value="$PV_CONNECT_ID$"></Argument>
          <Argument value="$PV_VERSION_FULL$"></Argument>
        </Arguments>
      </Command>
    </CommandStartup>
  </Server>
  <Server name="LANL Turquoise: Moonlight (Windows)" resource="csrc://localhost">
    <CommandStartup>
      <Options>
        <!-- User chooses the remote username if different from client username -->
        <Option name="REMOTE_USER" label="user name" save="true">
          <String default="$PV_USERNAME$"></String>
        </Option>
        <Option name="PV_CONNECT_ID" label="Connection ID" save="false">
           <Range type="int" min="1" max="65535" step="1" default="random"></Range>
        </Option>
        <!-- Choose the LOCAL port to use on the client system. (NOTE: this may be
             important for ParaView client used on Thin-Client servers!)
             Unfortunately, Kitware has chosen the variable name "PV_SERVER_PORT" to
             refer to the client-side port -->
        <Option name="PV_SERVER_PORT" label="local client port" save="false">
          <Range type="int" min="1024" max="65535" step="1" default="random"></Range>
        </Option>
        <!-- Choose the Server port to use for WTRW. Using the random number feature here. -->
        <Option name="PV_INTER_PORT_1" label="tunnel port (WTRW)" save="false">
          <Range type="int" min="8192" max="65535" step="1" default="random"></Range>
        </Option>
        <!-- Choose the Server port to use for the FE node. Using another random number. -->
        <Option name="PV_INTER_PORT_2" label="tunnel port (Front-End)" save="false">
          <Range type="int" min="8192" max="65535" step="1" default="random"></Range>
        </Option>
        <!-- The maximum value is actually platform dependent... -->
        <Option name="NODES" label="number of compute nodes" save="true">
          <Range type="int" min="1" max="4" step="1" default="1"></Range>
        </Option>
        <!-- Again another platform dependent attribute... -->
        <Option name="NCPUS_PER_NODE" label="process per node" save="false">
          <Range type="int" min="1" max="16" step="1" default="16"></Range>
        </Option>
        <!-- Requested wallclock time. Restrict to 8 hour maximum time -->
        <Option name="MINUTES" label="Job Wall Time (minutes)" save="true">
          <Range type="int" min="10" max="480" default="120"></Range>
        </Option>
        <!-- Set the User's Moab account to use. Default account used if not specified -->
        <Option name="MOAB_ACCT" label="Project Account" save="true">
          <String default="DEFAULT"></String>
        </Option>
        <Option name="SSH_PATH" label="SSH executable" save="true">
         <File default="ssh"></File>
        </Option>
        <Option name="TERM_PATH" label="Terminal executable" save="true">
          <File default="cmd"></File>
        </Option>
      </Options>
      <Command exec="$TERM_PATH$" delay="2">
        <Arguments>
          <Argument value="/C"></Argument>
          <Argument value="start"></Argument>
          <Argument value="$SSH_PATH$"></Argument>
          <Argument value="-R"></Argument>
          <Argument value="$PV_INTER_PORT_1$:127.0.0.1:$PV_SERVER_PORT$"></Argument>
          <Argument value="$REMOTE_USER$@wtrw.lanl.gov"></Argument>
          <Argument value="ssh"></Argument>
          <Argument value="-R"></Argument>
          <Argument value="$PV_INTER_PORT_2$:localhost:$PV_INTER_PORT_1$"></Argument>
          <Argument value="$REMOTE_USER$@wtrw.lanl.gov"></Argument>
          <Argument value="ssh"></Argument>
          <Argument value="-R"></Argument>
          <Argument value="$PV_INTER_PORT_2$:localhost:$PV_INTER_PORT_1$"></Argument>
          <Argument value="$REMOTE_USER$@ml-fe"></Argument>
          <Argument value="/usr/projects/hpcsoft/USER_SCRIPTS/pvserver_jobsub_wrapper.sh"></Argument>
          <Argument value="$NODES$"></Argument>
          <Argument value="$NCPUS_PER_NODE$"></Argument>
          <Argument value="$MINUTES$"></Argument>
          <Argument value="$MOAB_ACCT$"></Argument>
          <Argument value="$PV_INTER_PORT_2$"></Argument>
          <Argument value="$PV_CONNECT_ID$"></Argument>
          <Argument value="$PV_VERSION_FULL$"></Argument>
        </Arguments>
      </Command>
    </CommandStartup>
  </Server>
  <Server name="NCSA Delta CPU" resource="csrc://login.delta.ncsa.illinois.edu">
    <CommandStartup>
      <Options>
        <Option name="USERNAME" label="Delta username" save="true">
          <String default="username"/>
        </Option>
        <Option name="JOBNAME" label="--job-name" save="true">
          <String default="paraview-csrc"/>
        </Option>
        <Option name="ACCOUNT" label="--account" save="true">
          <String default="account"/>
        </Option>
        <Option name="NODES" label="--nodes" save="true">
          <Range type="int" min="1" max="132" step="1" default="1" />
        </Option>
        <Option name="CPUSPERTASK" label="--cpus-per-task" save="true">
          <Range type="int" min="1" max="128" step="1" default="16" />
        </Option>
        <Option name="TIME" label="--time (HH:MM:SS)" save="true">
          <String default="00:30:00"/>
        </Option>
	<Option name="PV_SERVER_PORT" label="Server Port" readonly="true">
          <Range type="int" min="11111" max="65535" step="1" default="random"/>
        </Option>
        <Option name="PV_CONNECT_ID" label="Connection ID" readonly="true">
          <Range type="int" min="1" max="65535" step="1" default="random"/>
        </Option>
      </Options>
      <SSHCommand exec="/sw/external/kitware/create_pvserver_cpu_job.sh" delay="5">
        <SSHConfig user="$USERNAME$">
          <Terminal/>
          <PortForwarding/>
        </SSHConfig>
        <Arguments>
          <Argument value="$JOBNAME$"/>
          <Argument value="$ACCOUNT$"/>
          <Argument value="$NODES$"/>
          <Argument value="$CPUSPERTASK$" />
          <Argument value="$TIME$"/>
          <Argument value="$PV_SERVER_PORT$"/>	
          <Argument value="$PV_CONNECT_ID$"/>
        </Arguments>
      </SSHCommand>
    </CommandStartup>
  </Server>
  <Server name="NCSA Delta GPU" resource="csrc://login.delta.ncsa.illinois.edu">
    <CommandStartup>
      <Options>
        <Option name="USERNAME" label="Delta username" save="true">
          <String default="username"/>
        </Option>
        <Option name="JOBNAME" label="--job-name" save="true">
          <String default="paraview-csrc"/>
        </Option>
        <Option name="ACCOUNT" label="--account" save="true">
          <String default="account"/>
        </Option>
        <Option name="NODES" label="--nodes" save="true">
          <Range type="int" min="1" max="100" step="1" default="1" />
        </Option>
        <Option name="CPUSPERTASK" label="--cpus-per-task" save="true">
          <Range type="int" min="1" max="64" step="1" default="16" />
        </Option>
        <Option name="GPUSPERNODE" label="--gpus-per-node" save="true">
          <Range type="int" min="1" max="4" step="1" default="1" />
        </Option>
        <Option name="TIME" label="--time (HH:MM:SS)" save="true">
          <String default="00:30:00"/>
        </Option>
	  <Option name="PV_SERVER_PORT" label="Server Port" readonly="true">
          <Range type="int" min="11111" max="65535" step="1" default="random"/>
        </Option>
        <Option name="PV_CONNECT_ID" label="Connection ID" readonly="true">
          <Range type="int" min="1" max="65535" step="1" default="random"/>
        </Option>
      </Options>
      <SSHCommand exec="/sw/external/kitware/create_pvserver_gpu_job.sh" delay="5">
        <SSHConfig user="$USERNAME$">
          <Terminal/>
          <PortForwarding/>
        </SSHConfig>
        <Arguments>
          <Argument value="$JOBNAME$"/>
          <Argument value="$ACCOUNT$"/>
          <Argument value="$NODES$"/>
          <Argument value="$CPUSPERTASK$" />
          <Argument value="$GPUSPERNODE$" />
          <Argument value="$TIME$"/>
          <Argument value="$PV_SERVER_PORT$"/>	
          <Argument value="$PV_CONNECT_ID$"/>
        </Arguments>
      </SSHCommand>
    </CommandStartup>
  </Server>
  <Server name="ORNL andes" resource="csrc://localhost">
    <CommandStartup>
      <Options>
        <Option name="HOST" label="Server host" save="true">
          <String default="andes.olcf.ornl.gov"/>
        </Option>
        <Option name="SERVER_VERSION_PATCH" label="Server Version Patch" save="true">
          <String default="CLIENT"/>
        </Option>
        <Option name="HEADLESS_API" label="Server headless API" save="true">
          <Enumeration default="osmesa">
            <Entry value="osmesa" label= "OSMesa" />
            <Entry value="egl" label= "EGL" />
          </Enumeration>
        </Option>
        <Option name="USER" label="Server username" save="true">
          <String default="YOURUSERNAME"/>
        </Option>
        <Switch name="PV_CLIENT_PLATFORM">
          <Case value="Apple">
            <Set name="TERM_PATH" value="/opt/X11/bin/xterm" />
            <Set name="TERM_ARG1" value="-T" />
            <Set name="TERM_ARG2" value="ParaView" />
            <Set name="TERM_ARG3" value="-e" />
            <Set name="SSH_PATH" value="ssh" />
          </Case>
          <Case value="Linux">
            <Set name="TERM_PATH" value="xterm" />
            <Set name="TERM_ARG1" value="-T" />
            <Set name="TERM_ARG2" value="ParaView" />
            <Set name="TERM_ARG3" value="-e" />
            <Set name="SSH_PATH" value="ssh" />
          </Case>
          <Case value="Windows">
            <Set name="TERM_PATH" value="cmd" />
            <Set name="TERM_ARG1" value="/C" />
            <Set name="TERM_ARG2" value="start" />
            <Set name="TERM_ARG3" value="" />
            <Set name="SSH_PATH" value="plink.exe" />
          </Case>
          <Case value="Unix">
            <Set name="TERM_PATH" value="xterm" />
            <Set name="TERM_ARG1" value="-T" />
            <Set name="TERM_ARG2" value="ParaView" />
            <Set name="TERM_ARG3" value="-e" />
            <Set name="SSH_PATH" value="ssh" />
          </Case>
        </Switch>
        <Option name="PV_SERVER_PORT" label="Server port ">
          <Range type="int" min="1025" max="65535" step="1" default="random"/>
        </Option>
        <Option name="NUM_NODES" label="Number of compute nodes" save="true">
          <Range type="int" min="1" max="512" step="1" default="2"/>
        </Option>
        <Option name="NUM_MPI_TASKS" label="Total number of MPI tasks" save="true">
          <Range type="int" min="1" max="16384" step="1" default="2"/>
        </Option>
        <Option name="NUM_CORES_PER_MPI_TASK" label="Number of cores per MPI task" save="true">
          <Range type="int" min="1" max="28" step="1" default="1"/>
        </Option>
        <Option name="PROJECT" label="Project to charge" save="true">
          <String default="cscXXX"/>
        </Option>
        <Option name="MINUTES" label="Number of minutes to reserve" save="true">
          <Range type="int" min="1" max="240" step="1" default="30"/>
        </Option>
      </Options>
      <Command exec="$TERM_PATH$" delay="5">
        <Arguments>
          <Argument value="$TERM_ARG1$"/>
          <Argument value="$TERM_ARG2$"/>
          <Argument value="$TERM_ARG3$"/>
          <Argument value="$SSH_PATH$"/>
          <Argument value="-t"/>
          <Argument value="-R"/>
          <Argument value="$PV_SERVER_PORT$:localhost:$PV_SERVER_PORT$"/>
          <Argument value="$USER$@$HOST$"/>
          <Argument value="/sw/andes/paraview/pvsc/ORNL/login_node.sh"/>
          <Argument value="$NUM_NODES$"/>
          <Argument value="$MINUTES$"/>
          <Argument value="$PV_SERVER_PORT$"/>
          <Argument value="$PV_VERSION_FULL$"/>
          <Argument value="$HEADLESS_API$"/>
          <Argument value="/sw/andes/paraview/pvsc/ORNL/andes.cfg"/>
          <Argument value="PROJECT=$PROJECT$"/>
          <Argument value="NUM_MPI_TASKS=$NUM_MPI_TASKS$"/>
          <Argument value="NUM_CORES_PER_MPI_TASK=$NUM_CORES_PER_MPI_TASK$"/>
          <Argument value="PV_VERSION=$PV_VERSION$"/>
          <Argument value="PV_VERSION_PATCH=$SERVER_VERSION_PATCH$"/>
        </Arguments>
      </Command>
    </CommandStartup>
  </Server>
  <Server name="ORNL summit" resource="csrc://summit.olcf.ornl.gov">
    <CommandStartup>
      <Options>
        <Option name="HEADLESS_API" label="Server headless API" save="true">
          <Enumeration default="osmesa">
            <Entry value="osmesa" label= "OSMesa" />
            <Entry value="egl" label= "EGL" />
          </Enumeration>
        </Option>
        <Option name="USER" label="Server username" save="true">
          <String default="YOURUSERNAME"/>
        </Option>
        <Option name="PV_SERVER_PORT" label="Server port ">
          <Range type="int" min="1025" max="65535" step="1" default="random"/>
        </Option>
        <Option name="NUM_NODES" label="Number of compute nodes" save="true">
          <Range type="int" min="1" max="100" step="1" default="1"/>
        </Option>
        <Option name="NRS" label="Number of resource sets (RS)" save="true">
          <Range type="int" min="1" max="202400" step="1" default="2"/>
        </Option>
        <Option name="TASKS_PER_RS" label="Number of MPI tasks (ranks) per RS" save="true">
          <Range type="int" min="1" max="22" step="1" default="1"/>
        </Option>
        <Option name="CPU_PER_RS" label="Number of CPUs (cores) per RS" save="true">
          <Range type="int" min="1" max="22" step="1" default="1"/>
        </Option>
        <Option name="GPU_PER_RS" label="Number of GPUs per RS" save="true">
          <Range type="int" min="0" max="22" step="1" default="0"/>
        </Option>
        <Option name="PROJECT" label="Project to charge" save="true">
          <String default="cscXXX"/>
        </Option>
        <Option name="MINUTES" label="Number of minutes to reserve" save="true">
          <Range type="int" min="1" max="240" step="1" default="30"/>
        </Option>
        <Option name="QUEUE" label="Queue" save="true">
          <Enumeration default="batch">
            <Entry value="batch" label="batch" />
            <Entry value="debug" label="debug" />
          </Enumeration>
        </Option>
      </Options>
      <SSHCommand exec="/sw/summit/paraview/pvsc/ORNL/login_node.sh" timeout="0" delay="5">
        <SSHConfig user="$USER$">
          <Terminal/>
          <PortForwarding/>
        </SSHConfig>
        <Arguments>
          <Argument value="$NUM_NODES$"/>
          <Argument value="$MINUTES$"/>
          <Argument value="$PV_SERVER_PORT$"/>
          <Argument value="$PV_VERSION_FULL$"/>
          <Argument value="$HEADLESS_API$"/>
          <Argument value="/sw/summit/paraview/pvsc/ORNL/summit.cfg"/>
          <Argument value="PROJECT=$PROJECT$"/>
          <Argument value="NRS=$NRS$"/>
          <Argument value="TASKS_PER_RS=$TASKS_PER_RS$"/>
          <Argument value="CPU_PER_RS=$CPU_PER_RS$"/>
          <Argument value="GPU_PER_RS=$GPU_PER_RS$"/>
          <Argument value="QUEUE=$QUEUE$"/>
        </Arguments>
      </SSHCommand>
    </CommandStartup>
  </Server>
  <Server name="ORNL frontier" resource="csrc://frontier.olcf.ornl.gov">
    <CommandStartup>
      <Options>
        <Option name="HEADLESS_API" label="Accelerated Compute" save="true">
          <Enumeration default="rocm">
            <Entry value="rocm" label= "ROCm" />
            <Entry value="none" label= "None" />
          </Enumeration>
        </Option>
        <Option name="USER" label="Server username" save="true">
          <String default="YOURUSERNAME"/>
        </Option>
        <Option name="PV_SERVER_PORT" label="Server port ">
          <Range type="int" min="1025" max="65535" step="1" default="random"/>
        </Option>
        <Option name="NUM_NODES" label="Number of compute nodes" save="true">
          <Range type="int" min="1" max="512" step="1" default="2"/>
        </Option>
        <Option name="NUM_MPI_TASKS" label="Total number of MPI tasks" save="true">
          <Range type="int" min="1" max="16384" step="1" default="2"/>
        </Option>
        <Option name="NUM_CORES_PER_MPI_TASK" label="Number of cores per MPI task" save="true">
          <Range type="int" min="1" max="28" step="1" default="1"/>
        </Option>
        <Option name="PROJECT" label="Project to charge" save="true">
          <String default="cscXXX"/>
        </Option>
        <Option name="PARTITION" label="Partition (queue)" save="true">
          <String default="batch"/>
        </Option>
        <Option name="MINUTES" label="Number of minutes to reserve" save="true">
          <Range type="int" min="1" max="240" step="1" default="30"/>
        </Option>
      </Options>
      <SSHCommand exec="/sw/frontier/paraview/pvsc/ORNL/login_node.sh" timeout="0" delay="5">
        <SSHConfig user="$USER$">
          <Terminal/>
          <PortForwarding/>
        </SSHConfig>
        <Arguments>
          <Argument value="$NUM_NODES$"/>
          <Argument value="$MINUTES$"/>
          <Argument value="$PV_SERVER_PORT$"/>
          <Argument value="$PV_VERSION_FULL$"/>
          <Argument value="$HEADLESS_API$"/>
          <Argument value="/sw/frontier/paraview/pvsc/ORNL/frontier.cfg"/>
          <Argument value="PROJECT=$PROJECT$"/>
          <Argument value="PARTITION=$PARTITION$"/>
          <Argument value="NUM_MPI_TASKS=$NUM_MPI_TASKS$"/>
          <Argument value="NUM_CORES_PER_MPI_TASK=$NUM_CORES_PER_MPI_TASK$"/>
        </Arguments>
      </SSHCommand>
    </CommandStartup>
  </Server>
</Servers>
