#vulnerable code 
                              @Test
  public void testOptionsAreConstructedWithValidInput() throws IOException {
    configuration.set(BigtableOptionsFactory.BIGTABLE_HOST_KEY, TEST_HOST);
    configuration.setBoolean(BigtableOptionsFactory.BIGTABLE_USE_SERVICE_ACCOUNTS_KEY, false);
    configuration.setBoolean(BigtableOptionsFactory.BIGTABLE_NULL_CREDENTIAL_ENABLE_KEY, true);
    configuration.setLong(BIGTABLE_BUFFERED_MUTATOR_MAX_MEMORY_KEY, 100_000L);

    BigtableOptions options =
        ((BigtableHBaseClassicSettings) BigtableHBaseSettings.create(configuration))
            .getBigtableOptions();

    assertEquals(TEST_HOST, options.getDataHost());
    assertEquals(TEST_PROJECT_ID, options.getProjectId());
    assertEquals(TEST_INSTANCE_ID, options.getInstanceId());
    assertEquals(100_000L, options.getBulkOptions().getMaxMemory());
  } 
                            #location 12 
                            #vulnerability type NULL_DEREFERENCE
#fixed code
                              @Test
  public void testOptionsAreConstructedWithValidInput() throws IOException {
    configuration.set(BigtableOptionsFactory.BIGTABLE_HOST_KEY, TEST_HOST);
    configuration.setBoolean(BigtableOptionsFactory.BIGTABLE_USE_SERVICE_ACCOUNTS_KEY, false);
    configuration.setBoolean(BigtableOptionsFactory.BIGTABLE_NULL_CREDENTIAL_ENABLE_KEY, true);
    configuration.setBoolean(BigtableOptionsFactory.ALLOW_NO_TIMESTAMP_RETRIES_KEY, true);
    configuration.setLong(BIGTABLE_BUFFERED_MUTATOR_MAX_MEMORY_KEY, 100_000L);

    BigtableHBaseSettings settings = BigtableHBaseSettings.create(configuration);
    assertTrue(settings.isRetriesWithoutTimestampAllowed());

    BigtableOptions options = ((BigtableHBaseClassicSettings) settings).getBigtableOptions();
    assertEquals(TEST_HOST, options.getDataHost());
    assertEquals(TEST_PROJECT_ID, options.getProjectId());
    assertEquals(TEST_INSTANCE_ID, options.getInstanceId());
    assertEquals(100_000L, options.getBulkOptions().getMaxMemory());
  }