### Question:
CloudStackTemplateOptions extends TemplateOptions implements Cloneable { public CloudStackTemplateOptions setupStaticNat(boolean setupStaticNat) { this.setupStaticNat = setupStaticNat; return this; }  CloudStackTemplateOptions securityGroupIds(Iterable<String> securityGroupIds); CloudStackTemplateOptions ipsToNetworks(Map<String, String> ipsToNetworks); CloudStackTemplateOptions ipOnDefaultNetwork(String ipOnDefaultNetwork); CloudStackTemplateOptions keyPair(String keyPair); CloudStackTemplateOptions setupStaticNat(boolean setupStaticNat); CloudStackTemplateOptions account(String account); CloudStackTemplateOptions domainId(String domainId); CloudStackTemplateOptions generateKeyPair(boolean generateKeyPair); CloudStackTemplateOptions generateSecurityGroup(boolean generateSecurityGroup); CloudStackTemplateOptions diskOfferingId(String diskOfferingId); CloudStackTemplateOptions dataDiskSize(int dataDiskSize); CloudStackTemplateOptions userData(byte[] userData); CloudStackTemplateOptions userData(String userData); CloudStackTemplateOptions userData(URL userDataUrl); Set<String> getSecurityGroupIds(); Map<String, String> getIpsToNetworks(); String getIpOnDefaultNetwork(); String getKeyPair(); boolean shouldSetupStaticNat(); String getAccount(); String getDomainId(); boolean shouldGenerateKeyPair(); boolean shouldGenerateSecurityGroup(); String getDiskOfferingId(); int getDataDiskSize(); byte[] getUserData(); @Override CloudStackTemplateOptions clone(); @Override void copyTo(TemplateOptions to); @Override boolean equals(Object o); @Override int hashCode(); @Override String toString(); @Override CloudStackTemplateOptions blockOnPort(int port, int seconds); @Override CloudStackTemplateOptions inboundPorts(int... ports); @Override CloudStackTemplateOptions authorizePublicKey(String publicKey); @Override CloudStackTemplateOptions installPrivateKey(String privateKey); @Override CloudStackTemplateOptions blockUntilRunning(boolean blockUntilRunning); @Override CloudStackTemplateOptions dontAuthorizePublicKey(); @Override CloudStackTemplateOptions nameTask(String name); @Override CloudStackTemplateOptions runAsRoot(boolean runAsRoot); @Override CloudStackTemplateOptions runScript(Statement script); @Override CloudStackTemplateOptions overrideLoginCredentials(LoginCredentials overridingCredentials); @Override CloudStackTemplateOptions overrideLoginPassword(String password); @Override CloudStackTemplateOptions overrideLoginPrivateKey(String privateKey); @Override CloudStackTemplateOptions overrideLoginUser(String loginUser); @Override CloudStackTemplateOptions overrideAuthenticateSudo(boolean authenticateSudo); @Override CloudStackTemplateOptions userMetadata(Map<String, String> userMetadata); @Override CloudStackTemplateOptions userMetadata(String key, String value); @Override CloudStackTemplateOptions nodeNames(Iterable<String> nodeNames); @Override CloudStackTemplateOptions networks(Iterable<String> networks);  }### Answer:
@Test public void testSetupStaticNat() { TemplateOptions options = new CloudStackTemplateOptions().setupStaticNat(false); assertFalse(options.as(CloudStackTemplateOptions.class) .shouldSetupStaticNat()); }