code: @Override
      public void start(Screen screen)
      {
          Check.notNull(screen);
  
          this.screen = screen;
          screen.addListener(this);
  
          renderer.setScreen(screen);
          renderer.initResolution(resolution);
          currentFrameRate = config.getOutput().getRate();
          screen.requestFocus();
  
          load();
          onLoaded(Constant.EXTRP, screen.getGraphic());
  
          // Main loop
          final Timing updateFpsTimer = new Timing();
          updateFpsTimer.start();
          loop.notifyRateChanged(resolution.getRate());
          loop.start(screen, new Frame()
          {
              @Override
              public void update(double extrp)
              {
                  Sequence.this.update(extrp);
              }
  
              @Override
              public void render()
              {
                  renderer.render();
              }
  
              @Override
              public void computeFrameRate(long lastTime, long currentTime)
              {
                  Sequence.this.computeFrameRate(updateFpsTimer, lastTime, currentTime);
              }
          });
          screen.removeListener(this);
      }
docs: /*
  Sequencable