@Override
    protected void onPostExecute(Exception e) {
      Log.i(TAG, "Finished loading DescriptionStore and IdemixKeyStore");
      if (e != null) throw new RuntimeException(e);
      else setState(State.KEY_STORE_LOADED);

      for (SchemeManager manager : DescriptionStore.getInstance().getSchemeManagers()) {
        if (manager.hasKeyshareServer()
            && !CredentialManager.isEnrolledToKeyshareServer(manager.getName())) {
          final SchemeManager m = manager;
          SchemeManagerHandler.getKeyserverEnrollInput(
              MainActivity.this,
              new SchemeManagerHandler.KeyserverInputHandler() {
                @Override
                public void done(String email, String pin) {
                  SchemeManagerHandler.enrollCloudServer(
                      m.getName(), m.getKeyshareServer(), email, pin, MainActivity.this, null);
                }
              });
        }
      }
    }