
    mBNjz                       U d dl mZ d dlZd dlZd dlmZ d dlmZ d dl	m
Z
 ddlmZmZmZ ddlmZ ej"                  r)d dlZd d	lmZ dd
lmZ ddlmZ  ej2                  d      Zndd	lmZ  G d d      ZdddddddddddddddZej=                         D  ci c]  \  } }|| 
 c}} Z G d d      Z e
 G d  d!             Z!e!Z"d"e#d#<   ejH                  ejJ                  d$Z&d%e#d&<   ejN                  ejP                  ejR                  ejT                  ejV                  ejX                  ejZ                  ej\                  ej^                  d'	Z0d(e#d)<   e0j=                         D  ci c]  \  } }|  e|       c}} Z1d*e#d+<   ej"                  r G d, d-ejd                  d./      Z3e
 G d0 d1             Z4d2Z5d3d4 e6e5      d5Z7d6d7 e6e5      d5Z8d8d9 e6e5      d5Z9 G d: d;      Z:yc c}} w c c}} w )<    )annotationsN)Sequence)deepcopy)	dataclass   )NotificationCategoryNotificationClassificationNotificationSeverity)BoltProtocolError)
deprecated)Address)
ServerInfo_Tc                     e Zd ZU dZded<   ded<   ded<   ded<   d	ed
<   ded<   ded<   ded<   ded<   ded<   ded<   ded<   ded<   ded<   ded<   	 	 	 	 	 	 	 	 	 	 d'dZed(d       Ze e	d      d)d              Z
e
j                   e	d      d*d               Z
d)d!Zd+d"Ze e	d#      d,d$              Zed-d%       Zy&).ResultSummaryz?A summary of execution returned with a :class:`.Result` object.r   server
str | Nonedatabasequerydict[str, t.Any] | None
parametersz%t.Literal['r', 'rw', 'w', 's'] | None
query_typeSummaryCounterscounterszdict | Noneplanprofilez
int | Noneresult_available_afterresult_consumed_afterlist[dict] | None_notificationsztuple[SummaryNotification, ...]_summary_notificationsztuple[GqlStatusObject, ...]_gql_status_objectsbool_had_key_had_recordc                   || _         || _        || _        |d   | _        |j	                  d      | _        |j	                  d      | _        |j	                  d      | _        d|v r2|d   | _        | j                  dvrt        d| j                  d|      |j	                  d      | _        |j	                  d	      | _
        |j	                  d
      | _        t        |j	                  di             | _        | j                  j                  d   dk  r-|j	                  d      | _        |j	                  d      | _        y |j	                  d      | _        |j	                  d      | _        y )Nr   dbr   r   type>   rswrwzUnexpected query type z4 received from server. Consider updating the driver.r   r   statsr      r   r   t_firstt_last)r$   r%   metadatar   getr   r   r   r   r   r   r   r   r   protocol_versionr   r   )selfaddresshad_key
had_recordr1   s        d/Users/ahmed/devFolder/Ultron/claude-voice/.venv/lib/python3.12/site-packages/neo4j/_work/summary.py__init__zResultSummary.__init__a   sH     % x( T*\\'*
",,|4X&v.DO&;;',T__,? @< < 
 #,,v.LL(	||I.'Wb(AB;;''*Q.*2,,(+D' *26M)ND&*2,,y*AD')1h)?D&    c                    i }dD ]  \  }}|| v s| |   ||<    d| v r.| d   }t        |t              si }dD ]  \  }}||v s||   ||<    |S )N))titler<   )code
neo4j_code)descriptionr?   diagnostic_record))severity	_severity)category_classification)position	_position)
isinstancedict)statusnotificationnotification_key
status_keyr@   diag_record_keys         r8   _notification_from_statusz'ResultSummary._notification_from_status   s    -
(j
 V#17
1C-.-
 &( &': ;/6$&!61 /
 #&775F'6L!126 r:   zXResultSummary.notifications is deprecated, use ResultSummary.gql_status_objects instead.c                "    | j                         S )a  
        A list of Dictionaries containing notification information.

        Notifications provide extra information for a user executing a
        statement.
        They can be warnings about problematic queries or other valuable
        information that can be presented in a client.
        Unlike failures or errors, notifications do not affect the execution of
        a statement.

        .. seealso:: :attr:`.summary_notifications`

        .. deprecated:: 6.0
            Use :attr:`.gql_status_objects` instead.
        )_get_notificationsr4   s    r8   notificationszResultSummary.notifications   s    * &&((r:   c                    || _         y N)r    )r4   values     r8   rR   zResultSummary.notifications   s     $r:   c                R    t        | d      s| j                          | j                  S )Nr    )hasattr_set_notificationsr    rQ   s    r8   rP   z ResultSummary._get_notifications   s%    t-.##%"""r:   c                   d| j                   v r/| j                   d   }t        |t              sd | _        y || _        y d| j                   v rs| j                   d   }t        |t              sd | _        y g }|D ]9  }t        |t              rd|v s| j                  |      }|j                  |       ; |xs d | _        y d | _        y )NrR   statusesr>   )r1   rG   listr    rH   rN   append)r4   rR   rZ   rI   rJ   s        r8   rX   z ResultSummary._set_notifications   s    dmm+ MM/:MmT2&*#"/D &}}Z0Hh-&*#M""640\V5K#==fE$$\2 # #0"74D"r:   z`ResultSummary.summary_notifications is deprecated, use ResultSummary.gql_status_objects instead.c                    t        | dd      | j                  S | j                         }t        |t              sd| _        | j                  S t        d |D              | _        | j                  S )a  
        The same as ``notifications`` but in a parsed, structured form.

        Further, if connected to a gql-aware server, this property will be
        polyfilled from :attr:`gql_status_objects`.

        .. seealso:: :attr:`.notifications`, :class:`.SummaryNotification`

        .. versionadded:: 5.7

        .. deprecated:: 6.0
            Use :attr:`.gql_status_objects` instead.
        r!   N c              3  F   K   | ]  }t         j                  |        y wrT   )SummaryNotification_from_metadata).0ns     r8   	<genexpr>z6ResultSummary.summary_notifications.<locals>.<genexpr>   s!      ,
;La..q1;L   !)getattrr!   rP   rG   r[   tuple)r4   raw_notificationss     r8   summary_notificationsz#ResultSummary.summary_notifications   sv    & 4148D... 335+T2*,D'...&+ ,
;L,
 '
# ***r:   c                h   | j                   j                  d      }t        |t              r#t	        d |D              | _        | j
                  S | j                         }t        |t              r#|D cg c]  }t        j                  |       }}nd}| j                  rt        j                         }n5| j                  rt        j                         }nt        j                         }t        j                  ||f      }dd}t!        ||d      }t	        |      | _        | j
                  S c c}w )a  
        Get GqlStatusObjects that arose when executing the query.

        The sequence always contains at least 1 status representing the
        Success, No Data or Omitted Result.
        All other status are notifications like warnings about problematic
        queries or other valuable information that can be presented in a
        client.

        The GqlStatusObjects will be presented in the following order:

        * A "no data" (``02xxx``) has precedence over a warning.
        * A "warning" (``01xxx``) has precedence over a success.
        * A "success" (``00xxx``) has precedence over anything informational
          (``03xxx``).

        .. versionadded:: 5.22

        .. versionchanged:: 6.0 Stabilized from preview.
        rZ   c              3  F   K   | ]  }t         j                  |        y wrT   )GqlStatusObject_from_status_metadata)rb   r*   s     r8   rd   z3ResultSummary.gql_status_objects.<locals>.<genexpr>  s#      -+A  55a8+re   r^   c                    | j                   j                  d      ry| j                   j                  d      ry| j                   j                  d      ry| j                   j                  d      ryy	)
N02r.   01r   00   03r   )
gql_status
startswith)rI   s    r8   status_precedencez;ResultSummary.gql_status_objects.<locals>.status_precedence4  sa      ++D1  ++D1  ++D1  ++D1r:   T)keyreverse)rI   rl   returnint)r1   r2   rG   r[   rg   r"   rP   rl   _from_notification_metadatar%   _successr$   _no_data_omitted_result	itertoolschainsorted)r4   raw_status_objectsrh   rc   notification_status_objectsresult_statusrw   s          r8   gql_status_objectsz ResultSummary.gql_status_objects   s+   , "]]..z:($/', -+- (D$ +++ 335'. ++*A  ;;A>* ( +
 +-'+446M]]+446M ,;;=M&/oo'-)9'
#	 '-'!'
#
 $))D#E '''W+s   3D/N)
r5   r   r6   r#   r7   r#   r1   dict[str, t.Any]rz   None)rI   rH   rz   rH   )rz   r   )rU   r   rz   r   rz   r   )rz   zSequence[SummaryNotification])rz   zt.Sequence[GqlStatusObject])__name__
__module____qualname____doc____annotations__r9   staticmethodrN   propertyr   rR   setterrP   rX   ri   r   r^   r:   r8   r   r   /   s`   I    ('
 65    '& &% &% <; 54N!@!@ !@ 	!@
 #!@ 
!@F  6 	8)	 
)$ 	8$	 
$#
#6 	8+	 
+4 K( K(r:   r   nodes_creatednodes_deletedrelationships_createdrelationships_deletedproperties_setlabels_addedlabels_removedindexes_addedindexes_removedconstraints_addedconstraints_removedsystem_updates_contains_updates_contains_system_updates)znodes-createdznodes-deletedzrelationships-createdzrelationships-deletedzproperties-setzlabels-addedzlabels-removedzindexes-addedzindexes-removedzconstraints-addedzconstraints-removedzsystem-updateszcontains-updateszcontains-system-updatesc                      e Zd ZU dZdZded<   dZded<   dZded<   dZded<   dZ	ded<   dZ
ded	<   dZded
<   dZded<   dZded<   dZded<   dZded<   dZded<   dZdZddZddZddZedd       Zedd       Zy)r   z@Contains counters for various operations that a query triggered.r   r{   r   r   r   r   r   r   r   r   r   r   r   r   Nc                    t        |      j                         D ]*  \  }}t        j                  |      }|st	        | ||       , y rT   )rH   items_COUNTER_KEY_TO_ATTR_NAMEr2   setattr)r4   
statisticsrx   rU   	attr_names        r8   r9   zSummaryCounters.__init__  s=    z*002JC155c:Ii/ 3r:   c                    t        |       j                         D ci c]  \  }}|t        v r
t        |   | }}}| j                  j                   d|dS c c}}w )N())varsr   _COUNTER_ATTR_NAME_TO_KEY	__class__r   )r4   kvr   s       r8   __repr__zSummaryCounters.__repr__  sm     T
((*
*1-- &a(!+* 	 

 ..))*!J>;;
s   Ac                   g }t        |       j                         D ]]  \  }}|j                  d      rt        | j                  |      rt        | j                  |      |k(  rH|j                  | d|        _ |j                  d| j                          |j                  d| j                          ddj                  |       dS )N_z: zcontains_updates: zcontains_system_updates: zSummaryCounters{z, })
r   r   rv   rW   r   rf   r\   contains_updatescontains_system_updatesjoin)r4   attrsr   r   s       r8   __str__zSummaryCounters.__str__  s    J$$&DAq||C t~~q)gdnna.HA.MLLA3b% ' 	)$*?*?)@AB'(D(D'EF	
 #499U#3"4B77r:   c                t   | j                   | j                   S t        | j                  xs | j                  xs| | j                  xsn | j
                  xs` | j                  xsR | j                  xsD | j                  xs6 | j                  xs( | j                  xs | j                  xs | j                        S )z
        Check if any counters tracking graph updates are greater than 0.

        True if any of the counters except for system_updates, are greater
        than 0. Otherwise, False.
        )r   r#   r   r   r   r   r   r   r   r   r   r   r   rQ   s    r8   r   z SummaryCounters.contains_updates  s     !!-))) 
(!!
())
( ))
( ""	
(
   
( ""
( !!
( ##
( %%
( ''
 	
r:   c                P    | j                   | j                   S | j                  dkD  S )z9True if the system database was updated, otherwise False.r   )r   r   rQ   s    r8   r   z'SummaryCounters.contains_system_updates  s-     ((4000""Q&&r:   r   rz   strrz   r#   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r9   r   r   r   r   r   r^   r:   r8   r   r   c  s    J M3 M3 "#3" "#3" NC L# NC M3 OS s  !  NC#0<8 
 
. ' 'r:   r   c                  R    e Zd ZU dZded<   ded<   ded<   ed
d       ZddZddZy	)SummaryInputPositionz
    Structured form of a gql status/notification position.

    .. seealso::
        :attr:`.GqlStatusObject.position`,
        :attr:`.SummaryNotification.position`,
        :data:`.SummaryNotificationPosition`

    .. versionadded:: 5.22
    r{   linecolumnoffsetc                f   t        |t              sy |j                  d      }t        |t              rt        |t              ry |j                  d      }t        |t              rt        |t              ry |j                  d      }t        |t              rt        |t              ry  | |||      S )Nr   r   r   r   r   r   )rG   rH   r2   r{   r#   )clsr1   r   r   r   s        r8   ra   z#SummaryInputPosition._from_metadata  s    (D)||F#$$
4(>h'&#&*VT*Bh'&#&*VT*BVF;;r:   c                T    d| j                    d| j                   d| j                   S )Nzline: z
, column: z
, offset: r   rQ   s    r8   r   zSummaryInputPosition.__str__  s)    TYYKz$++jN	
r:   c           	         d| j                   j                   d| j                  d| j                  d| j                  d	S )N<z line=z	, column=z	, offset=>)r   r   r   r   r   rQ   s    r8   r   zSummaryInputPosition.__repr__  sK    ''( )II= !kk_ %kk_		
r:   N)r1   objectrz   zte.Self | Noner   )	r   r   r   r   r   classmethodra   r   r   r^   r:   r8   r   r     s4    	 IKK< <


r:   r   zte.TypeAliasSummaryNotificationPosition)WARNINGINFORMATIONz!dict[t.Any, NotificationSeverity]_SEVERITY_LOOKUP)	HINTUNRECOGNIZEDUNSUPPORTEDPERFORMANCEDEPRECATIONGENERICSECURITYTOPOLOGYSCHEMAz!dict[t.Any, NotificationCategory]_CATEGORY_LOOKUPz'dict[t.Any, NotificationClassification]_CLASSIFICATION_LOOKUPc                  ^    e Zd ZU ded<   ded<   ded<   ded<   ded<   ded	<   ded
<   ded<   y)_SummaryNotificationKwargsr   r<   r=   r?   r
   severity_levelr   rC   raw_severity_levelraw_categorySummaryInputPosition | NonerE   N)r   r   r   r   r^   r:   r8   r   r     s0    
	,,&&--r:   r   F)totalc                      e Zd ZU dZdZded<   dZded<   dZded<   ej                  Z
ded<   ej                  Zd	ed
<   dZded<   dZded<   dZded<   edd       ZddZy)r`   z
    Structured form of a notification received from the server.

    .. seealso:: :attr:`.ResultSummary.summary_notifications`

    .. versionadded:: 5.7
     r   r<   r=   r?   r
   r   r   rC   r   r   Nz"SummaryNotificationPosition | NonerE   c                    t        |t              s |        S dt        j                  |j	                  d            i}d}|D ])  }|j	                  |      }t        |t
              s%|||<   + |j	                  d      }t        |t
              r,||d<   t        j	                  |t        j                        |d<   |j	                  d      }t        |t
              r,||d<   t        j	                  |t        j                        |d<    | di |S )	NrE   )r<   r=   r?   rA   r   r   rC   r   r^   )rG   rH   r   ra   r2   r   r   r
   UNKNOWNr   r   )r   r1   kwargsstr_keysrx   rU   rA   rC   s           r8   ra   z"SummaryNotification._from_metadata;  s   (D)5L,;;Z(.

K

 CLL%E%%#s  <<
+h$+3F'('7';';.66(F#$ <<
+h$%-F>"!1!5!5.66"F: }V}r:   c                    d| j                    d| j                   d| j                   d| j                   d| j                   d| j
                   dS )Nz{severity: z	} {code: z} {category: z
} {title: z} {description: z} {position: r   )r   r=   r   r<   r?   rE   rQ   s    r8   r   zSummaryNotification.__str__[  sb    4223;tyyk J,,-\$** F"../ 0==/-	
r:   r1   r   rz   te.Selfr   )r   r   r   r   r<   r   r=   r?   r
   r   r   r   rC   r   r   rE   r   ra   r   r^   r:   r8   r`   r`   (  s~     E3OD#NK+?+G+GN(G%9%A%AH"A  L#37H07 >
r:   r`   ))	OPERATIONr   )OPERATION_CODE0)CURRENT_SCHEMA/00000znote: successful completion)ru   status_descriptionr@   00001z,note: successful completion - omitted result02000znote: no datac                     e Zd ZU dZded<   dZded<   ded<   d	ed
<   d	ed<   ded<   ded<   ded<   ded<   ded<   ded<   ed(d       Zed(d       Zed(d       Z	ed)d       Z
ed)d       Zd*dZd*dZed+d       Ze	 d,	 	 	 	 	 	 	 d-d       Zed*d       Zed*d        Zd.d!Zed/d"       Zed0d#       Zed1d$       Zed0d%       Zed2d&       Zed.d'       Zy)3rl   ab  
    Representation for GqlStatusObject found when executing a query.

    GqlStatusObjects are a superset of notifications, i.e., some but not all
    GqlStatusObjects are notifications.
    Notifications can be filtered server-side with
    driver config
    :ref:`driver-notifications-disabled-classifications-ref` and
    :ref:`driver-notifications-min-severity-ref` as well as
    session config
    :ref:`session-notifications-disabled-classifications-ref` and
    :ref:`session-notifications-min-severity-ref`.

    .. seealso:: :attr:`.ResultSummary.gql_status_objects`

    .. versionadded:: 5.22
    r   _status_metadataNr   _status_diagnostic_recordr#   _is_notificationr   _gql_status_status_descriptionr   rF   r   _raw_classificationr	   rD   _raw_severityr
   rB   _diagnostic_recordc                *     |        }t         |_        |S rT   )_SUCCESS_STATUS_METADATAr   r   objs     r8   r}   zGqlStatusObject._success      e7
r:   c                *     |        }t         |_        |S rT   )_OMITTED_RESULT_STATUS_METADATAr   r   s     r8   r   zGqlStatusObject._omitted_result  s    e>
r:   c                *     |        }t         |_        |S rT   )_NO_DATA_STATUS_METADATAr   r   s     r8   r~   zGqlStatusObject._no_data  r   r:   c                T     |        }t        |t              r	||_        |S i |_        |S rT   )rG   rH   r   )r   r1   r   s      r8   rm   z%GqlStatusObject._from_status_metadata  s1    eh%#+C  
 $&C 
r:   c                    |        }t        |t              si }|j                  d      }|j                  d      }t        |t              sd}|j                  d      }t        |t              sd}t        j                  |j                  d            }|j                  d      }t        |t              sd }|j                  d      }t        |t              sd }|dk(  rd	}	t        |t              r|sd
}nd}	t        |t              r|sd}t        t              }
d|v r|d   |
d<   d|v r|d   |
d<   d|v r|d   |
d<   |	||||
d|_        |	|_        ||_	        ||_
        ||_        ||_        d|_        |S )Nr?   r>   r   r<   rE   rC   rA   r   01N42zwarn: unknown warning03N42zinfo: unknown notificationrD   rB   rF   )ru   r   r>   r<   r@   T)rG   rH   r2   r   r   ra   POLYFILL_DIAGNOSTIC_RECORDr   r   r   rF   r   r   r   )r   r1   r   r?   r>   r<   rE   classificationrA   ru   r@   s              r8   r|   z+GqlStatusObject._from_notification_metadata  s   e(D)Hll=1\\,/
*c*JW%%%E'66LL$
 "j1.#.!N<<
+(C(Hy  Jk3/{5 !Jk3/{: !;<!3;J3G/0!-5j-Ak*!-5j-Ak* %"-$!2 
 %"- "0$#
r:   c                    | j                   S rT   )r   rQ   s    r8   r   zGqlStatusObject.__str__  s    &&&r:   c                   d| j                   j                   d| j                  d| j                  d| j                  d| j
                  d| j                  d| j                  d| j                  d	| j                  d
S )Nr   z gql_status=z, status_description=z, position=z, raw_classification=z, classification=z, raw_severity=z, severity=z, diagnostic_record=r   )
r   r   ru   r   rE   raw_classificationr
  raw_severityrA   r@   rQ   s    r8   r   zGqlStatusObject.__repr__  s    ''( )//, -""&"9"9!< =( )""&"9"9!< ="114 5 --0 1( )!!%!7!7 :		
r:   c                    t        | d      r| j                  S | j                  j                  d      }t	        t        |t              xr |      | _        | j                  S )a{  
        Whether this GqlStatusObject is a notification.

        Only some GqlStatusObjects are notifications.
        The definition of notification is vendor-specific.
        Notifications are those GqlStatusObjects that provide additional
        information and can be filtered out via
        :ref:`driver-notifications-disabled-classifications-ref` and
        :ref:`driver-notifications-min-severity-ref` as well as.

        The fields :attr:`.position`,
        :attr:`.raw_classification`, :attr:`.classification`,
        :attr:`.raw_severity`, and :attr:`.severity` are only meaningful
        for notifications.
        r   r>   )rW   r   r   r2   r#   rG   r   )r4   r>   s     r8   is_notificationzGqlStatusObject.is_notification   s[    " 4+,(((**..|<
 $z3'6J!
 $$$r:   c                L    |j                  |      }t        |t              r|S |S rT   )r2   rG   r   )r   datarx   defaultrU   s        r8   _extract_str_fieldz"GqlStatusObject._extract_str_field  s%     eS!LNr:   c                    t        | d      r| j                  S | j                  | j                  d      | _        | j                  S )a  
        The GQLSTATUS.

        The following GQLSTATUS codes denote codes that the driver will use
        for polyfilling (when connected to an old, non-GQL-aware server).
        Further, they may be used by servers during the transition-phase to
        GQLSTATUS-awareness.

         * ``01N42`` (warning - unknown warning)
         * ``02N42`` (no data - unknown subcondition)
         * ``03N42`` (informational - unknown notification)
         * ``05N42`` (general processing exception - unknown error)

        .. note::
            This means these codes are not guaranteed to be stable and may
            change in future versions of the driver or the server.
        r   ru   )rW   r   r  r   rQ   s    r8   ru   zGqlStatusObject.gql_status'  sF    & 4'###22!!<
 r:   c                    t        | d      r| j                  S | j                  | j                  d      | _        | j                  S )zA description of the status.r   r   )rW   r   r  r   rQ   s    r8   r   z"GqlStatusObject.status_descriptionB  sH     4./+++#'#:#:!!#7$
  '''r:   c                    | j                   | j                   S | j                  j                  di       | _         t        | j                   t              si | _         | j                   S )Nr@   )r   r   r2   rG   rH   rQ   s    r8   _get_status_diagnostic_recordz-GqlStatusObject._get_status_diagnostic_recordM  s^    ))5111)-)>)>)B)B*
& $88$?-/D*---r:   c                    t        | d      r| j                  S | j                         }t        j	                  |j                  d            | _        | j                  S )aI  
        The position of the input that caused the status (if applicable).

        This is vendor-specific information.

        Only notifications (see :attr:`.is_notification`) have a meaningful
        position.

        The value is :data:`None` if the server's data was missing or could not
        be interpreted.
        rF   )rW   rF   r  r   ra   r2   r4   diag_records     r8   rE   zGqlStatusObject.positionX  sP     4%>>!88:-<<OOK(
 ~~r:   c                    t        | d      r| j                  S | j                         }| j                  |dd      | _        | j                  S )a
  
        The raw (``str``) classification of the status.

        This is a vendor-specific classification that can be used to filter
        notifications.

        Only notifications (see :attr:`.is_notification`) have a meaningful
        classification.
        r   rD   N)rW   r   r  r  r  s     r8   r  z"GqlStatusObject.raw_classificationn  sR     4./+++88:#'#:#:*D$
  '''r:   c                    t        | d      r| j                  S t        j                  | j                  t
        j                        | _        | j                  S )z
        Parsed version of :attr:`.raw_classification`.

        Only notifications (see :attr:`.is_notification`) have a meaningful
        classification.
        rD   )rW   rD   r   r2   r  r	   r   rQ   s    r8   r
  zGqlStatusObject.classification  sN     4*+'''599##%?%G%G 
 ###r:   c                    t        | d      r| j                  S | j                         }| j                  |dd      | _        | j                  S )z
        The raw (``str``) severity of the status.

        This is a vendor-specific severity that can be used to filter
        notifications.

        Only notifications (see :attr:`.is_notification`) have a meaningful
        severity.
        r   rB   N)rW   r   r  r  r  s     r8   r  zGqlStatusObject.raw_severity  sP     4)%%%88:!44d
 !!!r:   c                    t        | d      r| j                  S t        j                  | j                  t
        j                        | _        | j                  S )z
        Parsed version of :attr:`.raw_severity`.

        Only notifications (see :attr:`.is_notification`) have a meaningful
        severity.
        rB   )rW   rB   r   r2   r  r
   r   rQ   s    r8   rA   zGqlStatusObject.severity  sH     4%>>!)--3;;
 ~~r:   c                    t        | d      r| j                  S t        | j                               | _        | j                  S )z@Further information about the GQLSTATUS for diagnostic purposes.r   )rW   r   r   r  rQ   s    r8   r@   z!GqlStatusObject.diagnostic_record  sB     4-.***"*..0#
 &&&r:   )rz   r   r   r   r   )r   )r  r   rx   r   r  r   rz   zstr | _T)rz   r   )rz   r   )rz   r   )rz   r	   )rz   r
   )r   r   r   r   r   r   r   r}   r   r~   rm   r|   r   r   r   r  r  ru   r   r  rE   r  r
  r  rA   r@   r^   r:   r8   rl   rl   |  s   & '&9=6=**##//##(( 
  
  
   4 4l'
 % %2 
 	

 
 	

 

 
    4 ( (	.  * ( (& $ $ " "&   ' 'r:   rl   );
__future__r   r   typingtcollections.abcr   copyr   dataclassesr   _apir   r	   r
   _exceptionsr   TYPE_CHECKINGtyping_extensionster   _addressingr   apir   TypeVarr   	_warningsr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   	TypedDictr   r`   r	  rH   r   r  r  rl   )r   r   s   00r8   <module>r1     s]  " #   %  ! 
 , ??",% 	4B&[( [(~ %$44&"&$(,0&+9 $ /4466TQAqD6 
d' d'N .
 .
 .
n -A \ @ $++'337 3  !%%(55'33'33'33#++$--$--"))
7 3 
 2B1G1G1IC1IAA!!$$1IC ? 
 ??.R\\ . 8
 8
 8
v  789  H89#  )89 C' C'}pCs   G'(G-