Program: 37466
Project: 37466
Buggy source:
private void initViewModel(){
  VpnListViewModelFactory aFactory=InjectorModule.provideVpnListViewModelFactory();
  mViewModel=ViewModelProviders.of(this,aFactory).get(VpnListViewModel.class);
  mViewModel.getVpnListLiveData().observe(this,vpnResource -> {
    if (vpnResource != null) {
      if (vpnResource.status.equals(Status.LOADING)) {
      }
 else       if (vpnResource.data != null && vpnResource.status.equals(Status.SUCCESS)) {
        hideProgressDialog();
        if (vpnResource.data.list != null && vpnResource.data.list.size() > 0)         mAdapter.loadData(vpnResource.data.list);
      }
 else       if (vpnResource.message != null && vpnResource.status.equals(Status.ERROR)) {
        hideProgressDialog();
        showErrorDialog(vpnResource.message);
      }
    }
  }
);
  mViewModel.getVpnGetServerCredentials().observe(this,vpnCredentialsResource -> {
    if (vpnCredentialsResource != null) {
      if (vpnCredentialsResource.status.equals(Status.LOADING)) {
        showProgressDialog(true,getString(R.string.fetching_server_details));
      }
 else       if (vpnCredentialsResource.data != null && vpnCredentialsResource.status.equals(Status.SUCCESS)) {
        hideProgressDialog();
      }
 else       if (vpnCredentialsResource.message != null && vpnCredentialsResource.status.equals(Status.ERROR)) {
        hideProgressDialog();
        if (vpnCredentialsResource.message.equals(AppConstants.INIT_PAY_ERROR))         loadNextActivity(constructSendActivityIntent(vpnCredentialsResource.message,true,getString(R.string.init_vpn_pay),null));
 else         showErrorDialog(vpnCredentialsResource.message);
      }
    }
  }
);
}

Fixed version (ground truth):
private void initViewModel(){
  VpnListViewModelFactory aFactory=InjectorModule.provideVpnListViewModelFactory();
  mViewModel=ViewModelProviders.of(this,aFactory).get(VpnListViewModel.class);
  mViewModel.getVpnListLiveData().observe(this,vpnResource -> {
    if (vpnResource != null) {
      if (vpnResource.data != null && vpnResource.status.equals(Status.SUCCESS)) {
        hideProgressDialog();
        if (vpnResource.data.list != null && vpnResource.data.list.size() > 0)         mAdapter.loadData(vpnResource.data.list);
      }
 else       if (vpnResource.message != null && vpnResource.status.equals(Status.ERROR)) {
        hideProgressDialog();
        showErrorDialog(vpnResource.message);
      }
    }
  }
);
  mViewModel.getVpnGetServerCredentials().observe(this,vpnCredentialsResource -> {
    if (vpnCredentialsResource != null) {
      if (vpnCredentialsResource.status.equals(Status.LOADING)) {
        showProgressDialog(true,getString(R.string.fetching_server_details));
      }
 else       if (vpnCredentialsResource.data != null && vpnCredentialsResource.status.equals(Status.SUCCESS)) {
        hideProgressDialog();
      }
 else       if (vpnCredentialsResource.message != null && vpnCredentialsResource.status.equals(Status.ERROR)) {
        hideProgressDialog();
        if (vpnCredentialsResource.message.equals(AppConstants.INIT_PAY_ERROR))         loadNextActivity(constructSendActivityIntent(vpnCredentialsResource.message,true,getString(R.string.init_vpn_pay),null));
 else         showErrorDialog(vpnCredentialsResource.message);
      }
    }
  }
);
}