code: void destroy() {
          if (onSettled != null) {
              onSettled.run();
          }
  
          if (pendingReleaseInstances != null) {
              for (PendingReleaseInstance i : pendingReleaseInstances) {
                  try {
                      Mvc.graph().dereference(i.instance, i.type, i.qualifier);
                  } catch (ProviderMissingException e) {
                      //should not happen
                      //in case this happens just logs it
                      navigationManager.logger.warn("Failed to auto release {} after navigation settled", i.type.getName());
                  }
              }
          }
      }
docs: Internal use. Don't do it in your app.