original_string: public static function getInstance(
          $class = null,
          array $options = []
      ) {
          /** @var Implementation $instance */
          if (is_null(self::$instance)) {
              if (is_null($class)) {
                  self::$instance = self::makeInstance(
                      Implementation::class, $options
                  )->getApp($options);
  
                  self::$instance->load();
              } else {
                  ! is_object($class) || self::$instance = $class;
              }
          }
          return self::$instance;
      }
code: public static function getInstance(
          $class = null,
          array $options = []
      ) {
          /** @var Implementation $instance */
          if (is_null(self::$instance)) {
              if (is_null($class)) {
                  self::$instance = self::makeInstance(
                      Implementation::class, $options
                  )->getApp($options);
  
                  self::$instance->load();
              } else {
                  ! is_object($class) || self::$instance = $class;
              }
          }
          return self::$instance;
      }
code_tokens: public static function getInstance ( $ class = null , array $ options = [ ] ) { /** @var Implementation $instance */ if ( is_null ( self :: $ instance ) ) { if ( is_null ( $ class ) ) { self :: $ instance = self :: makeInstance ( Implementation :: class , $ options ) -> getApp ( $ options ) ; self :: $ instance -> load ( ) ; } else { ! is_object ( $ class ) || self :: $ instance = $ class ; } } return self :: $ instance ; }
docstring: Get the instance this facade refers to
  
  @param null  $class
  @param array $options
  
  @return Implementation
docstring_tokens: Get the instance this facade refers to