<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def __init_config_params(self, config):
 """Conditionally enable options in the Server's config file."""

        if self.version >= (2, 4):
            params = config.get('setParameter', {})
            # Set enableTestCommands by default but allow enableTestCommands:0.
            params.setdefault('enableTestCommands', 1)
            # Reduce transactionLifetimeLimitSeconds for faster driver testing.
            if self.version >= (4, 1) and not self.is_mongos:
                params.setdefault('transactionLifetimeLimitSeconds', 3)
            # Increase transaction lock timeout to reduce the chance that tests
            # fail with LockTimeout: "Unable to acquire lock {...} within 5ms".
            if self.version >= (4, 0) and not self.is_mongos:
                params.setdefault('maxTransactionLockRequestTimeoutMillis', 25)
            config['setParameter'] = params

        compressors = config.get('networkMessageCompressors')
        if compressors is None:
            if self.version >= (4, 1, 7):
                # SERVER-38168 added zstd support in 4.1.7.
                config['networkMessageCompressors'] = 'zstd,zlib,snappy,noop'
            elif self.version >= (3, 5, 9):
                # SERVER-27310 added zlib support in 3.5.9.
                config['networkMessageCompressors'] = 'zlib,snappy,noop'
            elif self.version >= (3, 4):
                config['networkMessageCompressors'] = 'snappy,noop'