original_string: public static function startup()
      {
          global $PPHP;
  
          trigger('language', self::$_req['lang']);
  
          if (isset(self::$_PATH[1]) && listeners('route/' . self::$_PATH[0] . '+' . self::$_PATH[1])) {
              self::$_base = array_shift(self::$_PATH) . '+' . array_shift(self::$_PATH);
          } elseif (isset(self::$_PATH[0])) {
              if (listeners('route/' . self::$_PATH[0])) {
                  self::$_base = array_shift(self::$_PATH);
              } else {
                  trigger('http_status', 404);
              };
          } elseif (listeners('route/main')) {
              self::$_base = 'main';
          } else {
              trigger('http_status', 404);
          };
          self::$_req['path_args'] = self::$_PATH;
      }
code: public static function startup()
      {
          global $PPHP;
  
          trigger('language', self::$_req['lang']);
  
          if (isset(self::$_PATH[1]) && listeners('route/' . self::$_PATH[0] . '+' . self::$_PATH[1])) {
              self::$_base = array_shift(self::$_PATH) . '+' . array_shift(self::$_PATH);
          } elseif (isset(self::$_PATH[0])) {
              if (listeners('route/' . self::$_PATH[0])) {
                  self::$_base = array_shift(self::$_PATH);
              } else {
                  trigger('http_status', 404);
              };
          } elseif (listeners('route/main')) {
              self::$_base = 'main';
          } else {
              trigger('http_status', 404);
          };
          self::$_req['path_args'] = self::$_PATH;
      }
code_tokens: public static function startup ( ) { global $ PPHP ; trigger ( 'language' , self :: $ _req [ 'lang' ] ) ; if ( isset ( self :: $ _PATH [ 1 ] ) && listeners ( 'route/' . self :: $ _PATH [ 0 ] . '+' . self :: $ _PATH [ 1 ] ) ) { self :: $ _base = array_shift ( self :: $ _PATH ) . '+' . array_shift ( self :: $ _PATH ) ; } elseif ( isset ( self :: $ _PATH [ 0 ] ) ) { if ( listeners ( 'route/' . self :: $ _PATH [ 0 ] ) ) { self :: $ _base = array_shift ( self :: $ _PATH ) ; } else { trigger ( 'http_status' , 404 ) ; } ; } elseif ( listeners ( 'route/main' ) ) { self :: $ _base = 'main' ; } else { trigger ( 'http_status' , 404 ) ; } ; self :: $ _req [ 'path_args' ] = self :: $ _PATH ; }
docstring: Build route from requested URL
  
  - Extract language from initial '/xx/'
  - Build route/foo+bar if handled, route/foo otherwise
  - Default to route/main
  - Trigger 404 status if not handled at all
  
  @return null
docstring_tokens: Build route from requested URL