// Path: src/main/net/sourceforge/jtds/ssl/Ssl.java
// public interface Ssl {
//     /**
//      * SSL is not used.
//      */
//     String SSL_OFF = "off";
//     /**
//      * SSL is requested; a plain socket is used if SSL is not available.
//      */
//     String SSL_REQUEST = "request";
//     /**
//      * SSL is required; an exception if thrown if SSL is not available.
//      */
//     String SSL_REQUIRE = "require";
//     /**
//      * SSL is required and the server must return a certificate signed by a
//      * client-trusted authority.
//      */
//     String SSL_AUTHENTICATE = "authenticate";
//     /** Size of TLS record header. */
//     int  TLS_HEADER_SIZE = 5;
//     /** TLS Change Cipher Spec record type. */
//     byte TYPE_CHANGECIPHERSPEC = 20;
//     /** TLS Alert record type. */
//     byte TYPE_ALERT = 21;
//     /** TLS Handshake record. */
//     byte TYPE_HANDSHAKE = 22;
//     /** TLS Application data record. */
//     byte TYPE_APPLICATIONDATA = 23;
//     /** TLS Hand shake Header Size. */
//     int HS_HEADER_SIZE = 4;
//     /** TLS Hand shake client key exchange sub type. */
//     int TYPE_CLIENTKEYEXCHANGE = 16;
//     /** TLS Hand shake client hello sub type. */
//     int TYPE_CLIENTHELLO = 1;
// 
// }


import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.DriverPropertyInfo;
import java.sql.SQLException;
import java.util.Enumeration;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Properties;
import net.sourceforge.jtds.ssl.Ssl;
        choicesMap.put(Messages.get(Driver.NAMEDPIPE), booleanChoices);
        choicesMap.put(Messages.get(Driver.TCPNODELAY), booleanChoices);
        choicesMap.put(Messages.get(Driver.SENDSTRINGPARAMETERSASUNICODE), booleanChoices);
        choicesMap.put(Messages.get(Driver.USECURSORS), booleanChoices);
        choicesMap.put(Messages.get(Driver.USELOBS), booleanChoices);
        choicesMap.put(Messages.get(Driver.XAEMULATION), booleanChoices);

        final String[] prepareSqlChoices = new String[]{
            String.valueOf(TdsCore.UNPREPARED),
            String.valueOf(TdsCore.TEMPORARY_STORED_PROCEDURES),
            String.valueOf(TdsCore.EXECUTE_SQL),
            String.valueOf(TdsCore.PREPARE),
        };
        choicesMap.put(Messages.get(Driver.PREPARESQL), prepareSqlChoices);

        final String[] serverTypeChoices = new String[]{
            String.valueOf(SQLSERVER),
            String.valueOf(SYBASE),
        };
        choicesMap.put(Messages.get(Driver.SERVERTYPE), serverTypeChoices);

        final String[] tdsChoices = new String[]{
            DefaultProperties.TDS_VERSION_42,
            DefaultProperties.TDS_VERSION_50,
            DefaultProperties.TDS_VERSION_70,
            DefaultProperties.TDS_VERSION_80,
        };
        choicesMap.put(Messages.get(Driver.TDS), tdsChoices);

        final String[] sslChoices = new String[]{
// Path: src/main/net/sourceforge/jtds/ssl/Ssl.java
// public interface Ssl {
//     /**
//      * SSL is not used.
//      */
//     String SSL_OFF = "off";
//     /**
//      * SSL is requested; a plain socket is used if SSL is not available.
//      */
//     String SSL_REQUEST = "request";
//     /**
//      * SSL is required; an exception if thrown if SSL is not available.
//      */
//     String SSL_REQUIRE = "require";
//     /**
//      * SSL is required and the server must return a certificate signed by a
//      * client-trusted authority.
//      */
//     String SSL_AUTHENTICATE = "authenticate";
//     /** Size of TLS record header. */
//     int  TLS_HEADER_SIZE = 5;
//     /** TLS Change Cipher Spec record type. */
//     byte TYPE_CHANGECIPHERSPEC = 20;
//     /** TLS Alert record type. */
//     byte TYPE_ALERT = 21;
//     /** TLS Handshake record. */
//     byte TYPE_HANDSHAKE = 22;
//     /** TLS Application data record. */
//     byte TYPE_APPLICATIONDATA = 23;
//     /** TLS Hand shake Header Size. */
//     int HS_HEADER_SIZE = 4;
//     /** TLS Hand shake client key exchange sub type. */
//     int TYPE_CLIENTKEYEXCHANGE = 16;
//     /** TLS Hand shake client hello sub type. */
//     int TYPE_CLIENTHELLO = 1;
// 
// }


// Path: src/main/net/sourceforge/jtds/jdbc/Driver.java
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.DriverPropertyInfo;
import java.sql.SQLException;
import java.util.Enumeration;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Properties;
import net.sourceforge.jtds.ssl.Ssl;

        choicesMap.put(Messages.get(Driver.NAMEDPIPE), booleanChoices);
        choicesMap.put(Messages.get(Driver.TCPNODELAY), booleanChoices);
        choicesMap.put(Messages.get(Driver.SENDSTRINGPARAMETERSASUNICODE), booleanChoices);
        choicesMap.put(Messages.get(Driver.USECURSORS), booleanChoices);
        choicesMap.put(Messages.get(Driver.USELOBS), booleanChoices);
        choicesMap.put(Messages.get(Driver.XAEMULATION), booleanChoices);

        final String[] prepareSqlChoices = new String[]{
            String.valueOf(TdsCore.UNPREPARED),
            String.valueOf(TdsCore.TEMPORARY_STORED_PROCEDURES),
            String.valueOf(TdsCore.EXECUTE_SQL),
            String.valueOf(TdsCore.PREPARE),
        };
        choicesMap.put(Messages.get(Driver.PREPARESQL), prepareSqlChoices);

        final String[] serverTypeChoices = new String[]{
            String.valueOf(SQLSERVER),
            String.valueOf(SYBASE),
        };
        choicesMap.put(Messages.get(Driver.SERVERTYPE), serverTypeChoices);

        final String[] tdsChoices = new String[]{
            DefaultProperties.TDS_VERSION_42,
            DefaultProperties.TDS_VERSION_50,
            DefaultProperties.TDS_VERSION_70,
            DefaultProperties.TDS_VERSION_80,
        };
        choicesMap.put(Messages.get(Driver.TDS), tdsChoices);

        final String[] sslChoices = new String[]{
            Ssl.SSL_OFF,