static function instance( $settings = array() )
    {
        if (
            !isset( $GLOBALS['eZScriptInstance'] )
            || !( $GLOBALS['eZScriptInstance'] instanceof eZScript )
        )
        {
            $GLOBALS['eZScriptInstance'] = new eZScript( $settings );
        }
        else if ( !empty( $settings ) )
        {
            $GLOBALS['eZScriptInstance']->updateSettings( $settings );
        }

        return $GLOBALS['eZScriptInstance'];
    }