code: private void onFinishLoading() {
      // save the current hash
      String hashOnStart = this.plugin.getStartRoute(isUsingHash());
      // check if the url contains a hash.
      // in case it has a hash, use this to route otherwise
      // use the startRoute from the annotation
      if (hashOnStart != null &&
          hashOnStart.trim()
                     .length() > 0) {
        ClientLogger.get()
                    .logDetailed("AbstractApplication: handle history (hash at start: >>" + hashOnStart + "<<",
                                 1);
        RouteResult routeResult;
        try {
          routeResult = this.router.parse(hashOnStart);
        } catch (RouterException e) {
          return;
        }
        this.router.route(routeResult.getRoute(),
                          routeResult.getParameterValues()
                                     .toArray(new String[0]));
      } else {
        ClientLogger.get()
                    .logDetailed("AbstractApplication: no history found -> use startRoute: >>" + this.startRoute + "<<",
                                 1);
        this.router.route(this.startRoute);
      }
      ClientLogger.get()
                  .logSimple("AbstractApplication: application started",
                             0);
    }
docs: Once the loader did his job, we will continue