
    ZiC                   N   S SK Jr  / SQrS SKrS SKJrJrJrJrJ	r	J
r
Jr   " S S\R                  5      r " S S\R                  5      r " S	 S
\R                  5      r " S S\R                  5      r " S S\R                  5      r " S S\R                  5      r " S S\R                  5      r " S S\R                  5      r " S S\R                  5      r " S S\R                  5      r " S S\R                  5      r " S S\R                  5      r " S S\R                  5      r " S S \R                  5      r " S! S"\R                  5      r " S# S$\R                  5      r " S% S&\R                  5      r " S' S(\R                  5      r " S) S*\R                  5      r  " S+ S,\R                  5      r! " S- S.\R                  5      r" " S/ S0\R                  5      r# " S1 S2\R                  5      r$ " S3 S4\R                  5      r% " S5 S6\R                  5      r& " S7 S8\R                  5      r' " S9 S:\RP                  5      r) " S; S<\RP                  5      r* " S= S>\R                  5      r+ " S? S@\R                  5      r, " SA SB\R                  5      r- " SC SD\R                  5      r. " SE SF\R                  5      r/ " SG SH\R                  5      r0 " SI SJ\R                  5      r1 " SK SL\R                  5      r2 " SM SN\R                  5      r3 " SO SP\R                  5      r4 " SQ SR\R                  5      r5 " SS ST\R                  5      r6 " SU SV\R                  5      r7 " SW SX\R                  5      r8 " SY SZ\R                  5      r9 " S[ S\\R                  5      r: " S] S^\R                  5      r; " S_ S`\R                  5      r< " Sa Sb\R                  5      r= " Sc Sd\R                  5      r> " Se Sf\R                  5      r? " Sg Sh\R                  5      r@ " Si Sj\R                  5      rA " Sk Sl\R                  5      rB " Sm Sn\R                  5      rC " So Sp\R                  5      rD " Sq Sr\R                  5      rE " Ss St\R                  5      rF " Su Sv\R                  5      rG " Sw Sx\R                  5      rH " Sy Sz\R                  5      rI " S{ S|\R                  5      rJ " S} S~\R                  5      rK " S S\R                  5      rL " S S\RP                  5      rM " S S\R                  5      rN " S S\R                  5      rO " S S\R                  5      rP " S S\R                  5      rQ " S S\R                  5      rR " S S\R                  5      rS " S S\R                  5      rT " S S\R                  5      rU " S S\R                  5      rV " S S\R                  5      rW " S S\R                  5      rX " S S\R                  5      rY " S S\R                  5      rZ " S S\R                  5      r[ " S S\R                  5      r\ " S S\R                  5      r] " S S5      r^g)    )annotations)OAddressBookTypeADVFAppointmentAuxilaryFlagAppointmentColorAppointmentStateFlagAttachmentPermissionTypeAttachmentTypeBCImageAlignmentBCImageSourceBCLabelFormatBCTemplateIDBCTextFormat	BodyTypes
BusyStatusClientIntentFlagClipboardFormatColorContactAddressIndexContactLinkStateDeencapTypeDevModeFieldsDirectoryEntryTypeDisplayTypeDMPaperSizeDVAspectElectronicAddressPropertiesEntryIDTypeEntryIDTypeHexErrorBehavior	ErrorCodeErrorCodeTypeGender	IconIndex
ImportanceInsecureFeaturesLogFlagsMacintoshEncodingMeetingObjectChangeMeetingRecipientTypeMeetingTypeMessageFormatMessageTypeNamedPropertyType	NoteColorODTCfODTPersist1ODTPersist2OORBodyFormatPostalAddressIDPriorityPropertiesTypePropertyFlagsRecipientRowFlagTypeRecipientTypeRecurCalendarTypeRecurDOWRecurEndTypeRecurFrequencyRecurMonthNthWeekRecurPatternTypeSpecificWeekdayRecurPatternTypeResponseStatusResponseTypeRetentionFlagsRuleActionTypeSaveTypeSensitivityServerProcessingAction
SideEffectTaskAcceptanceTaskHistoryTaskModeTaskMultipleRecipientsTaskOwnershipTaskRequestType	TaskState
TaskStatusTZFlagWrappedTypeN)AnyDictIterableListSetTypeUnionc                  D    \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrSrSrSrg)r   \   zf
The type of object that an address book entry ID represents.

MUST be one of these or it is invalid.
r                                N)__name__
__module____qualname____firstlineno____doc__LOCAL_MAIL_USERDISTRIBUTION_LISTBULLETIN_BOARD_OR_PUBLIC_FOLDERAUTOMATED_MAILBOXORGANIZATIONAL_MAILBOXPRIVATE_DISTRIBUTION_LISTREMOTE_MAIL_USER	CONTAINERTEMPLATEONE_OFF_USERSEARCH__static_attributes__rf       k/var/www/eduai.edurigo.com/question_generate/ques_gen_env/lib/python3.13/site-packages/extract_msg/enums.pyr   r   \   sF    
 O&+#" %IHLFrx   r   c                  0    \ rS rSrSrSrSrSrSrSr	Sr
S	rg
)r   p   r\   r]   r_   @             rf   N)rg   rh   ri   rj   ADVF_NODATAADVF_PRIMEFIRSTADVF_ONLYONCEADVF_DATAONSTOPADVFCACHE_NOHANDLERADVFCACHE_FORVEBUILTINADVFCACHE_ONSAVErw   rf   rx   ry   r   r   p   s(    KOMOrx   r   c                  (    \ rS rSrSrSrSrSrSrSr	g)	r   {   a  
Describes the auxilary state of the object.

* COPIED: The Calendar object was copied from another Calendar folder.
* FORCE_MEETING_RESPONSE: The client of server can require that a Meeting
  Response object be sent to the organizer when a response is chosen.
* FORWARDED: The object was forwarded by the organizer or another recipient.
* REPAIR_UPDATE_MESSAGE: The meeting request is a Repair Update Message sent
  from a server-side calendar repair system.
r\   r]   r_   r   rf   N)
rg   rh   ri   rj   rk   COPIEDFORCE_MEETING_RESPONSE	FORWARDEDREPAIR_UPDATE_MESSAGErw   rf   rx   ry   r   r   {   s    	 F!I$rx   r   c                  @    \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrSrSrg)r      r   r\   r]   r^   r_   r`   ra      r}   	   
   rf   N)rg   rh   ri   rj   NONEREDBLUEGREENGREYORANGECYANOLIVEPURPLETEALYELLOWrw   rf   rx   ry   r   r      s9    D
CDEDFDEFDFrx   r   c                  $    \ rS rSrSrSrSrSrSrg)r      z
The appointment start of the object.

* MEETING: The object is a Meeting object or meeting-related object.
* RECEIVED: The represented object was received from someone else.
* CANCELED: The Meeting object that is represented has been canceled.
r\   r]   r_   rf   N)	rg   rh   ri   rj   rk   MEETINGRECEIVEDCANCELEDrw   rf   rx   ry   r   r      s     GHHrx   r   c                  $    \ rS rSrSrSrSrSrSrg)r	      zF
The permission type data associated with a web reference attachment.
r   r\   r]   rf   N)	rg   rh   ri   rj   rk   r   VIEWEDITrw   rf   rx   ry   r	   r	      s     DDDrx   r	   c                  <    \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrSrg)r
      a  
The type represented by the attachment.

* DATA: An attachment stored as plain bytes in the MSG file.
* MSG: A normally embedded MSG file.
* WEB: An attachment referencing a resource on the web.
* SIGNED: An attachment of a signed message that is *not* an MSG file.
* SIGNED_EMBEDDED: An MSG file embedded in a signed message.
* BROKEN: An attachment with a critical issue.
* UNSUPPORTED: An attachment that does not match any supported types.
* UNKNOWN: The attachment type could not be determined.
r   r\   r]   r^   r_   r`   ra   r       rf   N)rg   rh   ri   rj   rk   DATAMSGWEBSIGNEDBROKENUNSUPPORTEDSIGNED_EMBEDDEDCUSTOMUNKNOWNrw   rf   rx   ry   r
   r
      s6     D
C
CFFKOFGrx   r
   c                  <    \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrSrg)r      r   r\   r]   r^   r_   r`   ra   r   r}   r   rf   N)rg   rh   ri   rj   STRETCHTOP_LEFT
TOP_CENTER	TOP_RIGHTMIDDLE_LEFTMIDDLE_CENTERMIDDLE_RIGHTBOTTOM_LEFTBOTTOM_CENTERBOTTOM_RIGHTrw   rf   rx   ry   r   r      s4    GHJIKMLKMLrx   r   c                      \ rS rSrSrSrSrg)r      r   r\   rf   N)rg   rh   ri   rj   CONTACT_PHOTO
CARD_PHOTOrw   rf   rx   ry   r   r      s    MJrx   r   c                  (    \ rS rSrSrSrSrSrSrSr	g)	r      z
The format for a label of a business card.

If the bit for ``RIGHT_TO_LEFT`` is not set, the is left to
right.

ALIGN_LEFT and ALIGN_RIGHT are mutually exclusive.
r   r\   r]   r_   rf   N)
rg   rh   ri   rj   rk   NO_LABELALIGN_RIGHT
ALIGN_LEFTRIGHT_TO_LEFTrw   rf   rx   ry   r   r      s     HKJMrx   r   c                  0    \ rS rSrSrSrSrSrSrSr	Sr
S	rg
)r      a  
The template ID for a business card.

* IM_ALIGN_LEFT: The image area will be left aligned, stretching the full
  height of the card vertically; text fields will appear to the right of
  the image area.
* IM_ALIGN_RIGHT: The image area will be right aligned, stretching the full
  height of the card vertically; text fields will appear to the left of
  the image area.
* IM_ALIGN_TOP: The image area will be aligned to the top, stretching the
  full width of the card horizontally; text fields will appear under the
  image area.
* IM_ALIGN_BOTTOM: The image area will be aligned to the bottom, stretching
  the full width of the card horizontally; text fields will appear above
  the image area.
* NO_IMAGE: No image area is included in the card, only text fields are
  included.
* BACKGROUND: The image area will be used as a background for the card,
  stretching the full height and width of the card. Text fields are
  displayed on top of the image area.
r   r\   r]   r^   r_   r`   rf   N)rg   rh   ri   rj   rk   IM_ALIGN_LEFTIM_ALIGN_RIGHTIM_ALIGN_TOPIM_ALIGN_BOTTOMNO_IMAGE
BACKGROUNDrw   rf   rx   ry   r   r      s'    * MNLOHJrx   r   c                  4    \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rg)r   i  z
The alignment and formatting for the text field.

If none of the bits are set, the text field is displayed as a single line,
left-aligned.

RIGHT and CENTER are mutually exclusive.
r   r\   r]   r_   r}   r~   r   rf   N)rg   rh   ri   rj   rk   DEFAULT	MULTILINEBOLDITALIC	UNDERLINERIGHTCENTERrw   rf   rx   ry   r   r     s,     GIDFIEFrx   r   c                  ,    \ rS rSrSrSrSrSrSrSr	Sr
g	)
r   i%  a  
Enum representing the types of bodies found in a message.

This does not include bodies generated from other sources, and so is a good
detection method for generated bodies (if you check a body and it is not
null, but it is not listed in the enum, then it was generated from another
body).

This is an IntFlag enum, so to check if a body was found use the in operator
with the body you are checking. For example:

.. code-block:: python

    >>> rtfFound: bool = BodyTypes.RTF in msg.detectedBodies
r   r\   r]   r_   r   rf   N)rg   rh   ri   rj   rk   r   PLAINRTFHTMLALLrw   rf   rx   ry   r   r   %  s"     DE
CD
Crx   r   c                  ,    \ rS rSrSrSrSrSrSrSr	Sr
g	)
r   i=  a@  
The availability of a use for the event described by the object.

* OL_FREE: The user is available.
* OL_TENTATIVE: The user has a tentative event scheduled.
* OL_BUSY: The user is busy.
* OL_OUT_OF_OFFICE: The user is Out of Office.
* OL_WORKING_ELSEWHERE: The user is working from a location other than the
  office.
r   r\   r]   r^   r_   rf   N)rg   rh   ri   rj   rk   OL_FREEOL_TENTATIVEOL_BUSYOL_OUT_OF_OFFICEOL_WORKING_ELSEWHERErw   rf   rx   ry   r   r   =  s$    	 GLG!%rx   r   c                  L    \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrSrSrSrSrSrg)r   iP  a[  
An action a user has taken on a Meeting object.

* MANAGER: The user is the owner of the Meeting object's Calendar folder. If
  set, DELEGATE SHOULD NOT be set.
* DELEGATE: The user is a delegate acting on a Meeting object in a
  delegator's Calendar folder. If set, MANAGER SHOULD NOT be set.
* DELETED_WITH_NO_RESPONSE: The user deleted the Meeting object with no
  response sent to the organizer.
* DELETED_EXCEPTION_WITH_NO_RESPONSE: The user deleted an exception to a
  recurring series with no response sent to the organizer.
* RESPONDED_TENTATIVE: The user tentatively accepted the meeting request.
* RESPONSED_ACCEPT: The user accepted the meeting request.
* RESPONDED_DECLINE: The user declined the meeting request.
* MODIFIED_START_TIME: The user modified the start time.
* MODIFIED_END_TIME: The user modified the end time.
* MODIFIED_LOCATION: The user changed the location of the meeting.
* RESPONDED_EXCEPTION_DECLINE: The user declined an exception to a recurring
  series.
* CANCELED: The user canceled a meeting request.
* EXCEPTION_CANCELED: The user canceled an exception to a recurring series.
r\   r]   r_   r}   r~   r   r|      rb   re            rf   N)rg   rh   ri   rj   rk   MANAGERDELEGATEDELETED_WITH_NO_RESPONSE"DELETED_EXCEPTION_WITH_NO_RESPONSERESPONDED_TENTATIVERESPONSED_ACCEPTRESPONDED_DECLINEMODIFIED_START_TIMEMODIFIED_END_TIMEMODIFIED_LOCATIONRESPONDED_EXCEPTION_DECLINEr   EXCEPTION_CANCELEDrw   rf   rx   ry   r   r   P  sT    , GH$)/&!!$#$"/H(rx   r   c                  (    \ rS rSrSrSrSrSrSrSr	g)	r   iw  z=
The standard clipboard formats, as specified in [MS-OLEDS].
r]   r^   r}      rf   N)
rg   rh   ri   rj   rk   	CF_BITMAPCF_METAFILEPICTCF_DIBCF_ENHMETAFILErw   rf   rx   ry   r   r   w  s     I OFNrx   r   c                      \ rS rSrSrSrSrg)r   i  r   r\   rf   N)rg   rh   ri   rj   r   BLACKrw   rf   rx   ry   r   r     s    
CErx   r   c                  ,    \ rS rSrSrSrSrSrSrSr	Sr
g	)
r   i  r   r\   r]   r^   r_   r`   rf   N)rg   rh   ri   rj   EMAIL_1EMAIL_2EMAIL_3FAX_1FAX_2FAX_3rw   rf   rx   ry   r   r     s     GGGEEErx   r   c                  $    \ rS rSrSrSrSrSrSrg)r   i  a]  
Values for PidLidContactLinkGlobalAddressListLinkState.

* DUPLICATE_NOT_LINKED: The duplicate contact is not linked to the GAL
  contact or the GAL contact is not downloaded.
* DUPLICATE_LINKED: The duplicate contact is linked to the GAL contact.
* DUPLICATE_CANNOT_LINK: The duplicate contact cannot be automatically
  linked to the GAL contact.
r   r\   r]   rf   N)	rg   rh   ri   rj   rk   DUPLICATE_NOT_LINKEDDUPLICATE_LINKEDDUPLICATE_CANNOT_LINKrw   rf   rx   ry   r   r     s     rx   r   c                       \ rS rSrSrSrSrSrg)r   i  zW
Enum to specify to custom deencapsulation functions the type of data being
requested.
r   r\   rf   N)rg   rh   ri   rj   rk   r   r   rw   rf   rx   ry   r   r     s     EDrx   r   c                  `    \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrSrSrSrSrSrSrSrSrSrSrg)r   i  r]   r}   r~   r   r|   r   rb   re   r   r   r        @        i   i       @l        rf   N)rg   rh   ri   rj   DM_NUPDM_SCALEDM_PAPERWIDTHDM_PAPERLENGTHDM_PAPERSIZEDM_ORIENTATION
DM_COLLATEDM_TTOPTIONDM_YRESOLUTION	DM_DUPLEXDM_COLORDM_PRINTQUALITYDM_DEFAULTSOURCE	DM_COPIESDM_ICMMETHODDM_FORMNAMEDM_DITHERTYPEDM_MEDIATYPEDM_ICMINTENTrw   rf   rx   ry   r   r     sb    9F9H9M9N9L9N9J9K9N9I9H9O99I9L9K9M9L9Lrx   r   c                  (    \ rS rSrSrSrSrSrSrSr	g)r   i  r   r\   r]   r`   rf   N)
rg   rh   ri   rj   UNALLOCATEDr   STORAGESTREAMROOT_STORAGErw   rf   rx   ry   r   r     s    KGGFLrx   r   c                  @    \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrSrSrg)r   i  r   r\   r]   r^   r_   r`   ra   rb   rc   rd   re   rf   N)rg   rh   ri   rj   MAILUSERDISTLISTFORUMAGENTORGANIZATIONPRIVATE_DISTLISTREMOTE_MAILUSERrs   rt   ADDRESS_TEMPLATErv   rw   rf   rx   ry   r   r     s;    HHEELOIHFrx   r   c                     \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSr Sr!S r"S!r#S"r$S#r%S$r&S%r'S&r(S'r)S(r*S)r+S*r,S+r-S,r.S-r/S.r0S/r1S0r2S1r3S2r4S3r5S4r6S5r7S6r8S7r9S8r:S9r;S:r<S;r=S<r>S=r?S>r@S?rAS@rBSArCSBrDSCrESDrFSErGSFrHSGrISHrJSIrKSJrLSKrMSLrNSMrOSNrPSOrQSPrRSQrSSRrTSSrUSTrVSUrWSVrXSWrYSXrZSYr[SZr\S[r]S\r^S]r_S^r`g_)`r   i  z
The size of the output media for printers.

Value *SHOULD* be one of these, however it MAY be a device-specific value
that is greater than or equal to 0x0100.
r\   r]   r^   r_   r`   ra   r   r}   r   r            r      r~                                                r   !   "   #   $   %   &   '   (   )   E   F   G   H   I   J   K   L   M   N   O   P   Q   R   S   T   U   V   W   X   Y   Z   [   r[   ]   ^   _   `   a   b   c   d   e   f   g   h   i   j   k   l   m   n   o   r{   q   r   s   t   u   v   rf   N)arg   rh   ri   rj   rk   DMPAPER_LETTERDMPAPER_LETTERSMALLDMPAPER_TABLOIDDMPAPER_LEDGERDMPAPER_LEGALDMPAPER_STATEMENTDMPAPER_EXECUTIVE
DMPAPER_A3
DMPAPER_A4DMPAPER_A4SMALL
DMPAPER_A5
DMPAPER_B4
DMPAPER_B5DMPAPER_FOLIODMPAPER_QUARTODMPAPER_10X14DMPAPER_11X17DMPAPER_NOTEDMPAPER_ENV_9DMPAPER_ENV_10DMPAPER_ENV_11DMPAPER_ENV_12DMPAPER_ENV_14DMPAPER_CSHEETDMPAPER_DSHEETDMPAPER_ESHEETDMPAPER_ENV_DLDMPAPER_ENV_C5DMPAPER_ENV_C3DMPAPER_ENV_C4DMPAPER_ENV_C6DMPAPER_ENV_C65DMPAPER_ENV_B4DMPAPER_ENV_B5DMPAPER_ENV_B6DMPAPER_ENV_ITALYDMPAPER_ENV_MONARCHDMPAPER_ENV_PERSONALDMPAPER_FANFOLD_USDMPAPER_FANFOLD_STD_GERMANDMPAPER_FANFOLD_LGL_GERMANDMPAPER_DBL_JAPANESE_POSTCARD
DMPAPER_A6DMPAPER_JENV_KAKU2DMPAPER_JENV_KAKU3DMPAPER_JENV_CHOU3DMPAPER_JENV_CHOU4DMPAPER_LETTER_ROTATEDDMPAPER_A3_ROTATEDDMPAPER_A4_ROTATEDDMPAPER_A5_ROTATEDDMPAPER_B4_JIS_ROTATEDDMPAPER_B5_JIS_ROTATED!DMPAPER_JAPANESE_POSTCARD_ROTATED%DMPAPER_DBL_JAPANESE_POSTCARD_ROTATEDDMPAPER_A6_ROTATEDDMPAPER_JENV_KAKU2_ROTATEDDMPAPER_JENV_KAKU3_ROTATEDDMPAPER_JENV_CHOU3_ROTATEDDMPAPER_JENV_CHOU4_ROTATEDDMPAPER_B6_JISDMPAPER_B6_JIS_ROTATEDDMPAPER_12X11DMPAPER_JENV_YOU4DMPAPER_JENV_YOU4_ROTATEDDMPAPER_P16KDMPAPER_P32KDMPAPER_P32KBIGDMPAPER_PENV_1DMPAPER_PENV_2DMPAPER_PENV_3DMPAPER_PENV_4DMPAPER_PENV_5DMPAPER_PENV_6DMPAPER_PENV_7DMPAPER_PENV_8DMPAPER_PENV_9DMPAPER_PENV_10DMPAPER_P16K_ROTATEDDMPAPER_P32K_ROTATEDDMPAPER_P32KBIG_ROTATEDDMPAPER_PENV_1_ROTATEDDMPAPER_PENV_2_ROTATEDDMPAPER_PENV_3_ROTATEDDMPAPER_PENV_4_ROTATEDDMPAPER_PENV_5_ROTATEDDMPAPER_PENV_6_ROTATEDDMPAPER_PENV_7_ROTATEDDMPAPER_PENV_8_ROTATEDDMPAPER_PENV_9_ROTATEDDMPAPER_PENV_10_ROTATEDrw   rf   rx   ry   r   r     s    N ONMJJOJJJMNMMLMNNNNNNNNNNNNONNN !!'!'$*!J###(.%,2)!'!'!'!'N#M &LLONNNNNNNNNO!!$#########$rx   r   c                  (    \ rS rSrSrSrSrSrSrSr	g)	r   iA  z
Part of the extra data for Outlook signatures.

Different sources seem to disagree on the meanings, so I'm sticking to the
meanings in the official Microsoft documentation of the DVASPECT
enumeration.
r\   r]   r_   r}   rf   N)
rg   rh   ri   rj   rk   CONTENT	THUMBNAILICONDOCPRINTrw   rf   rx   ry   r   r   A  s     GIDHrx   r   c                  @    \ rS rSr\SS j5       rSrSrSrSr	Sr
SrS	rg
)r   iP  c                <    U Vs1 s H
  o " U5      iM     sn$ s  snf )z9
Uses the iterable of ints to create a set of this enum.
rf   clsitemsxs      ry   fromIter$ElectronicAddressProperties.fromIterQ       
 !&&1A&&&   r   r\   r]   r^   r_   r`   rf   N)r  Iterable[int]returnz Set[ElectronicAddressProperties])rg   rh   ri   rj   classmethodr  r   r   r   BUSINESS_FAXHOME_FAXPRIMARY_FAXrw   rf   rx   ry   r   r   P  s4    ' ' GGGLHKrx   r   c                  6    \ rS rSrSrS rSrSrSrSr	Sr
S	rS
rg)r   ia  z3
Converts a UID to the type of Entry ID structure.
c                (    [         U R                     $ )z1
Converts an EntryIDType to it's hex equivelent.
)r   nameselfs    ry   toHexEntryIDType.toHexe  s     dii((rx   s   ܧ@B +/s   B
e$  s   8 +*Vs   +n Ts   Dsf͛  /Zs   Q  Grf   N)rg   rh   ri   rj   rk   r  ADDRESS_BOOK_RECIPIENTCA_OR_PDL_RECIPIENTNNTP_NEWSGROUP_FOLDERONE_OFF_RECIPIENTPUBLIC_MESSAGE_STOREWRAPPEDrw   rf   rx   ry   r   r   a  s2    ) a]_[^QGrx   r   c                  6    \ rS rSrSrS rSrSrSrSr	Sr
S	rS
rg)r   iz  zf
Converts a UID to the type of Entry ID structure.

Uses a hex string instead of bytes for the value.
c                (    [         U R                     $ )z5
Converts and EntryIDTypeHex to it's raw equivelent.
)r   r  r  s    ry   toRawEntryIDTypeHex.toRaw  s     499%%rx    DCA740C8C042101AB4B908002B2FE182 FE42AA0A18C71A10E8850B651C240000 38A1BB1005E5101AA1BB08002B2A56C2 812B1FA4BEA310199D6E00DD010F5402 1A447390AA6611CD9BC800AA002FC45A C091ADD3519DCF11A4A900AA0047FAA4rf   N)rg   rh   ri   rj   rk   r  r  r  r  r  r  r  rw   rf   rx   ry   r   r   z  s2    
& @<>:=0Grx   r   c                  H    \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrSrSrSrSrg)r    i  a  
The behavior to follow when handling an error in an MSG file and it's
attachments.

Specifying an option indicates the behavior for the situation is to log a
message, if anything, instead of raising an exception. This is an int flag
enum, so the options you want will be ORed with each other.

* THROW: Throw the exception regardless of type.
* ATTACH_NOT_IMPLEMENTED: Silence the exception for NotImplementedError.
* ATTACH_BROKEN: Silence the exception for broken attachments.
* CUSTOM_ATTACH_TOLERANT: Makes custom attachments more tolerant for 
  data that is validated but not used.
* ATTACH_SUPPRESS_ALL: Silence the exception for NotImplementedError, for
  broken attachments, and for custom attachment issues.
* RTFDE_MALFORMED: Silences errors about malformed RTF data.
* RTFDE_UNKNOWN_ERROR: Silences errors from RTFDE that are not normal.
* RTFDE: Silences all errors from RTFDE.
* STANDARDS_VIOLATION: Silences StandardViolationError where acceptable.
* OLE_DEFECT_INCORRECT: Silences defects of type DEFECT_INCORRECT that are
  enabled by default. This can lead to strange bugs.
* NAMED_NAME_STREAM: Silences errors caused by invalid indexes into the
  name stream for named properties. Any properties with an invalid name will
  simply be dropped.
* SUPPRESS_ALL: Silences all of the above.
r   r\   r]   r_   r   r}   r~   r;  r   r|   r   i  rf   N)rg   rh   ri   rj   rk   THROWATTACH_NOT_IMPLEMENTEDATTACH_BROKENCUSTOM_ATTACH_TOLERANTATTACH_SUPPRESS_ALLRTFDE_MALFORMEDRTFDE_UNKNOWN_ERRORRTFDESTANDARDS_VIOLATIONOLE_DEFECT_INCORRECTNAMED_NAME_STREAMSUPPRESS_ALLrw   rf   rx   ry   r    r      sL    4 E'M'$ O$E$%"!Lrx   r    c                  (   \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSr Sr!S r"S!r#S"r$S#r%S$r&S%r'S&r(S'r)S(r*S)r+S*r,S+r-S,r.S-r/S.r0S/r1S0r2S1r3S2r4S3r5S4r6S5r7S6r8S7r9S8r:S9r;S:r<S;r=S<r>S=r?S>r@S?rAS@rBSArCSBrDSCrESDrFSErGSFrHSGrIgH)Ir!   i  r   l   @   l      l   W   l   @   l      l      l      l      l   	   l      l   !   l   W   l   p   l      l     l     l     l     l     l     l     l   	  l   
  l     l     l     l     l     l     l     l     l     l     l     l     l     l     l     l     l     l   #  l      l     l      l     l     l     l     l      l     l     l     l     l     l     l   	  l   
  l     l     l      l      l     l     l     l     l     l    	  l     rf   N)Jrg   rh   ri   rj   SUCCESSGENERAL_FAILUREOUT_OF_MEMORYINVALID_PARAMETERNO_INTERFACEACCESS_DENIEDSTORAGE_INVALID_FUNCTIONSTORAGE_ACCESS_DENIEDSTORAGE_INSUFFICIENT_MEMORYSTORAGE_INVALID_POINTERSTORAGE_READ_FAULTSTORAGE_LOCK_VIOLATIONSTORAGE_INVALID_PARAMETERSTREAM_SIZE_ERRORSTORAGE_INVALID_FLAGSTORAGE_CANNOT_SAVENOT_SUPPORTEDINVALID_CHARACTER_WIDTHSTRING_TOO_LONGINVALID_FLAGINVALID_ENTRY_IDINVALID_OBJECTOBJECT_CHANGEDOBJECT_DELETEDSERVER_BUSYOUT_OF_DISKOUT_OF_RESOURCES	NOT_FOUNDVERSION_MISMATCHLOGON_FAILEDTOO_MANY_SESSIONSUSER_CANCELEDABORT_FAILEDNETWORK_ERROR
DISK_ERRORTOO_COMPLEXINVALID_COLUMNCOMPUTED_VALUECORRUPT_DATAINVALID_CODEPAGEINVALID_LOCALE	TIME_SKEWEND_OF_SESSIONUNKNOWN_ENTRY_IDNOT_COMPLETEDTIMEOUTEMPTY_TABLETABLE_TOO_BIGINVALID_BOOKMARK
ERROR_WAITERROR_CANCELNO_SUPPRESSCOLLIDING_NAMESNOT_INITIALIZEDNO_RECIPIENTSALREADY_SENTHAS_FOLDERSHAS_MESSAGESFOLDER_CYCLETOO_MANY_LOCKSAMBIGUOUS_RECIPIENTSYNC_OBJECT_DELETEDIGNORE_FAILURESYNC_CONFLICTNO_PARENT_FOLDERCYCLE_DETECTEDNOT_SYNCHRONIZEDNAMED_PROPERTY_QUOTANOT_IMPLEMENTEDrw   rf   rx   ry   r!   r!     ss   G OM"LM)&",(#' *"%$M( OL!NNNKK!I!L"MLMJKNNL!NIN!MGKM!JLK O OMLKLLN$$NM!N!% Orx   r!   c                  ^   \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSr Sr!S r"S!r#S"r$S#r%S$r&S%r'S&r(S'r)S(r*S)r+S*r,S+r-S,r.S-r/S.r0S/r1S0r2S1r3S2r4S3r5S4r6S5r7S6r8S7r9S8r:S9r;S:r<S;r=S<r>S=r?S>r@S?rAS@rBSArCSBrDSCrESDrFSErGSFrHSGrISHrJSIrKSJrLSKrMSLrNSMrOSNrPSOrQSPrRSQrSSRrTSSrUSTrVSUrWSVrXSWrYSXrZSYr[SZr\S[r]S\r^S]r_S^r`S_raS`rbSarcSbrdScreSdrfSergSfrhSgriShrjSirkSjrlSkrmSlrnSmroSnrpSorqSprrSqrsSrrtSsruStrvSurwSvrxSwrySxrzSyr{Szr|S{r}S|r~S}rS~rSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSGr SGrGS GrGSGrGSGrGSGrGSGrGSGrGSGrGSGr	GSGr
GS	GrGS
GrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGr GSGr!GS Gr"GS!Gr#GS"Gr$GS#Gr%GS$Gr&GS%Gr'GS&Gr(GS'Gr)GS(Gr*GS)Gr+GS*Gr,GS+Gr-GS,Gr.GS-Gr/GS.Gr0GS/Gr1GS0Gr2GS1Gr3GS2Gr4GS3Gr5GS4Gr6GS5Gr7GS6Gr8GS7Gr9GS8Gr:GS9Gr;GS:Gr<GS;Gr=GS<Gr>GS=Gr?GS>Gr@GS?GrAGS@GrBGSAGrCGSBGrDGSCGrEGSDGrFGSEGrGGSFGrHGSGGrIGSHGrJGSIGrKGSJGrLGSKGrMGSLGrNGSMGrOGSNGrPGSOGrQGSPGrRGSQGrSGSRGrTGSSGrUGSTGrVGSUGrWGSVGrXGSWGrYGSXGrZGSYGr[GSZGr\GS[Gr]GS\Gr^GS]Gr_GS^Gr`GS_GraGS`GrbGSaGrcGSbGrdGScGreGSdGrfGSeGrgGSfGrhGSgGriGShGrjGSiGrkGSjGrlGSkGrmGSlGrnGSmGroGSnGrpGSoGrqGSpGrrGSqGrsGSrGrtGSsGruGStGrvGSuGrwGSvGrxGSwGryGSxGrzGSyGr{GSzGr|GS{Gr}GS|Gr~GS}GrGS~GrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGrGSGr GSGrGS GrGSGrGSGrGSGrGSGrGSGrGSGrGSGr	GSGr
GS	GrGg
(  r"   i	  z\
Enum representing values for PtypErrorCode.

See "Additional Error Codes" in [MS-OXCDATA].
r   i  i  i  i  i  i  i  i  i  i  i  i  iL  iM  iO  iP  iQ  iR  iS  iT  iU  iV  iW  iY  i[  i\  i]  i^  i_  i`  ia  ib  ic  ie  ig  ih  ii  ij  ik  il  im  ip  iq  ir  is  it  iu  iv  ix  i}  i~  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i   i  i  i  i  i  i
  i  i  i  i  i  i  i  i  iy  iz  i{  i|  i}  i~  i  i  i  i  iH  iL  iM  iN  iO  P  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i 	  i	  i	  i	  i	  i	  i`	  ia	  ie	  if	  ig	  ih	  ii	  il	  im	  in	  io	  iq	  ir	  ip	  is	  it	  iu	  iv	  iw	  iz	  i|	  i}	  i~	  i(
  i)
  i*
  i+
  i,
  i-
  i.
  i/
  i0
  i1
  i2
  i3
  i4
  i5
  i6
  i7
  i8
  i9
  i:
  l    l    l    l    l    l    l    l    l   ~ l   ~ l   ~ l   ~ l   ~ l   ~ l   ~ l   ~ l   ~ l   ~ l   ~ l   ~ l   ~ l   h~ l   ~ l   ~ l   	~ l   ~ l   ~ l   ~ l   ~ l   ~ l   ~ l    ~ l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   } l   || l   | l   | l   | l   | l   | l   | l   | l   | l   | l   
| l   	| l   | l   | l   | l   | l   | l   | l   | l    | l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   { l   O{ l   N{ l   M{ l   L{ l   K{ l   J{ l   I{ l   H{ l   G{ l   F{ l   E{ l   D{ l   C{ l   B{ l   A{ l   @{ l   ?{ l   >{ l   ={ l   <{ l   ;{ l   :{ l   8{ l   7{ l   z l   z l   z l   z l   z l   z l   z l   z l   z l   z l   z l   z l   z l   z l   z l   z l   z l   z l   z l   z l   z l   z l   z l   z l   z l   z l   z l   z l   z l   z l   ~z l   }z l   |z l   {z l   zz l   xz l   jz l   iz l   hz l   gz l   fz l   ez l   dz l   cz l   #z l   "z l   !z l    z l   z l   z l   z l   z l   z l   z l   z l   z l   z l   z l   z l   z l   z l   z l   z l   z l   
z l   z l   z l   z l   y l   y l   y l   y l   y l   y l   y l   y l   y l   y l   [y l   Zy l   x l   x l   x l   x l   x l   x l   x l   x l   x l   x l   x l   x l   x l   x l   x l   x l   x l   x l   x l   w l   w l   v l   v l   v l   v l   Ht l   Gt l   Ft l   `p l   _p l   [p rf   N(  rg   rh   ri   rj   rk   r  
ISAM_ERRORUNKNOWN_USEREXITINGBAD_CONFIGURATIONUNKNOWN_CODE_PAGESERVER_MEMORYLOGIN_PERMISSIONDATABASE_ROLLED_BACKDATABASE_COPIED_ERRORAUDIT_NOT_ALLOWEDZOMBIE_USERUNCONVERTABLE_ACLNO_FREE_JET_SESSIONSDIFFERENT_JET_SESSIONFILE_REMOVEPARAMETER_OVERFLOWBAD_VERSIONTOO_MANY_COLUMNS	HAVE_MOREDATABASE_ERRORINDEX_NAME_TOO_BIGUNSUPPORTED_PROPERTYMESSAGE_NOT_SAVEDUNPUBLISHED_NOTIFICATIONDIFFERENT_ROOTBAD_FOLDER_NAMEATTACHMENT_OPENINVALID_COLLAPSE_STATESKIP_MY_CHILDRENSEARCH_FOLDERNOT_SEARCH_FOLDERFOLDER_SET_RECEIVENO_RECEIVE_FOLDERDELETE_SUBMITTED_MESSAGEINVALID_RECIPIENTSNO_REPLICA_HERENO_REPLICA_AVAILABLEPUBLIC_DATABASENOT_PUBLIC_DATABASERECORD_NOT_FOUNDREPLICATION_CONFLICTFX_BUFFER_OVERRUNFX_BUFFER_EMPTYFX_PARTIAL_VALUE
FX_NO_ROOMTIME_EXPIREDDESTINATION_ERRORDATABASE_NOT_INITIALIZEDWRONG_SERVERBUFFER_TOO_SMALLATTACHMENT_RESOLUTION_REQUIREDSERVER_PAUSEDr)  NO_SUCH_LOGONLOAD_LIBRARY_FAILEDALREADY_CONFIGUREDNOT_CONFIGURED	DATA_LOSSMAXIMUM_SEND_THREAD_EXCEEDEDFX_ERROR_MARKERNO_FREE_JTABSNOT_PRIVATE_DATABASEISINTEG_MDBRECOVERY_MISMATCHTABLE_MAY_NOT_BE_DELETEDSEARCH_FOLDER_SCOPE_VIOLATIONRPC_REGISTER_IF
RPC_LISTEN
RPC_FORMAT
NO_COPY_TONULL_OBJECTRPC_AUTHENTICATIONRPC_BAD_AUTHENTICATION_LEVELNULL_COMMENT_RESTRICTIONRULES_LOAD_ERRORRULES_DELIVER_ERRRULES_PARSING_ERRRULES_CREATE_DAERULES_CREATE_DAMRULES_NO_MOVE_COPY_FOLDERRULES_NO_FOLDER_RIGHTSMESSAGE_TOO_BIGFORM_NOT_VALIDNOT_AUTHORIZEDDELETE_MESSAGEBOUNCE_MESSAGEQUOTA_EXCEEDEDMAX_SUBMISSION_EXCEEDEDMAX_ATTACHMENT_EXCEEDEDSEND_AS_DENIEDSHUTOFF_QUOTA_EXCEEDEDTOO_MANY_OPEN_OBJECTSCLIENT_VERSION_BLOCKEDRPC_HTTP_DISALLOWEDCACHED_MODE_REQUIREDFOLDER_NOT_CLEANED_UPFORMAT_ERRORNOT_EXPANDEDNOT_COLLAPSEDNO_EXPAND_LEAF_ROWUNREGISTERED_NAME_PROPFOLDER_DISABLEDDOMAIN_ERRORNO_CREATE_RIGHTPUBLIC_ROOTNO_READ_RIGHTNO_CREATE_SUBFOLDER_RIGHTMESSAGE_CYCLENULL_DESTINATION_OBJECTTOO_MANY_RECIPSVIRUS_SCAN_IN_PROGRESSVIRUS_DETECTEDMAILBOX_IN_TRANSITBACKUP_IN_PROGRESSVIRUS_MESSAGE_DELETEDINVALID_BACKUP_SEQUENCEINVALID_BACKUP_TYPETOO_MANY_BACKUPSRESTORE_IN_PROGRESSDUPLICATE_OBJECTOBJECT_NOT_FOUNDFIXUP_REPLY_RULETEMPLATE_NOT_FOUNDRULE_EXECUTIONDS_NO_SUCH_OBJECTALREADY_TOMBSTONEDREAD_ONLY_TRANSACTIONPAUSED
NOT_PAUSEDWRONG_MAILBOXCHANGE_PASSWORDPASSWORD_EXPIREDINVALID_WORKSTATIONINVALID_LOGON_HOURSACCOUNT_DISABLEDRULE_VERSIONRULE_FORMATRULE_SEND_AS_DENIEDNO_SERVER_SUPPORTLOCK_TIMED_OUTOBJECT_LOCKEDINVALID_LOCK_NAMESPACEMESSAGE_DELETEDPROTOCOL_DISABLEDCLEARTEXT_LOGON_DISABLEDREJECTEDAMBIGUOUS_ALIASUNKNOWN_MAILBOXEXPRESSION_RESERVEDEXPRESSION_PARSE_DEPTHEXPRESSION_ARGUMENT_TYPEEXPRESSION_SYNTAXEXPRESSION_BAD_STRING_TOKENEXPRESSION_BAD_COL_TOKENEXPRESSION_TYPE_MISMATCH!EXPRESSION_OPERATOR_NOT_SUPPORTEDEXPRESSION_DIVIDE_BY_ZEROEXPRESSION_UNARY_ARGUMENT
NOT_LOCKEDCLIENT_EVENTCORRUPT_EVENTCORRUPT_WATERMARKEVENT_ERRORWATERMARK_ERRORNON_CANONICAL_ACLMAILBOX_DISABLEDRULES_FOLDER_OVER_QUOTAADDRESS_BOOK_UNAVAILABLEADDRESS_BOOK_ERRORADDRESS_BOOK_OBJECT_NOT_FOUNDADDRESS_BOOK_PROPERTY_ERRORNOT_ENCRYPTEDRPC_SERVER_TOO_BUSYRPC_OUT_OF_MEMORYRPC_SERVER_OUT_OF_MEMORYRPC_OUT_OF_RESOURCESRPC_SERVER_UNAVAILABLESECURE_SUBMIT_ERROREVENTS_DELETEDSUBSYSTEM_STOPPINGATTENDANT_UNAVAILABLECI_STOPPINGFX_INVALID_STATEFX_UNEXPECTED_MARKERDUPLICATE_DELIVERYCONDITION_VIOLATION!MAXIMUM_CONNECTION_POOLS_EXCEEDEDINVALID_RPC_HANDLEEVENT_NOT_FOUNDPROPERTY_NOT_PROMOTEDLOW_FREE_SPACE_FOR_DATABASELOW_FREE_SPACE_FOR_LOGSMAILBOX_IS_QUARANTINEDDATABASE_MOUNT_IN_PROGRESSDATABASE_DISMOUNT_IN_PROGRESSCONNECTIONS_OVER_BUDGETNOT_FOUND_IN_CONTAINERCANNOT_REMOVEINVALID_CONNECTION_POOLVIRUS_SCAN_GENERAL_FAILUREISAM_ERROR_RFS_FAILUREISAM_ERROR_RFS_NOT_ARMEDISAM_ERROR_FILE_CLOSEISAM_ERROR_OUT_OF_THREADSISAM_ERROR_TOO_MANY_IOISAM_ERROR_TASK_DROPPEDISAM_ERROR_INTERNAL_ERROR1ISAM_ERROR_DATABASE_BUFFER_DEPENDENCIES_CORRUPTEDISAM_ERROR_PREVIOUS_VERSIONISAM_ERROR_PAGE_BOUNDARYISAM_ERROR_KEY_BOUNDARYISAM_ERROR_BAD_PAGE_LINKISAM_ERROR_BAD_BOOKMARK ISAM_ERROR_NT_SYSTEM_CALL_FAILEDISAM_ERROR_BAD_PARENT_PAGE_LINK)ISAM_ERROR_SP_AVAIL_EXT_CACHE_OUT_OF_SYNC!ISAM_ERROR_SP_AVAIL_EXT_CORRUPTED+ISAM_ERROR_SP_AVAIL_EXT_CACHE_OUT_OF_MEMORYISAM_ERROR_SP_OWN_EXT_CORRUPTEDISAM_ERROR_DB_TIME_CORRUPTEDISAM_ERROR_KEY_TRUNCATEDISAM_ERROR_KEY_TOO_BIG#ISAM_ERROR_INVALID_LOGGED_OPERATIONISAM_ERROR_LOG_FILE_CORRUPTISAM_ERROR_NO_BACKUP_DIRECTORY%ISAM_ERROR_BACKUP_DIRECTORY_NOT_EMPTYISAM_ERROR_BACKUP_IN_PROGRESSISAM_ERROR_RESTORE_IN_PROGRESS$ISAM_ERROR_MISSING_PREVIOUS_LOG_FILEISAM_ERROR_LOG_WRITE_FAIL/ISAM_ERROR_LOG_DISABLED_DUE_TO_RECOVERY_FAILURE*ISAM_ERROR_CANNOT_LOG_DURING_RECOVERY_REDO"ISAM_ERROR_LOG_GENERATION_MISMATCHISAM_ERROR_BAD_LOG_VERSIONISAM_ERROR_INVALID_LOG_SEQUENCEISAM_ERROR_LOGGING_DISABLEDISAM_ERROR_LOG_BUFFER_TOO_SMALLISAM_ERROR_LOG_SEQUENCE_ENDISAM_ERROR_NO_BACKUP"ISAM_ERROR_INVALID_BACKUP_SEQUENCE!ISAM_ERROR_BACKUP_NOT_ALLOWED_YET"ISAM_ERROR_DELETE_BACKUP_FILE_FAIL%ISAM_ERROR_MAKE_BACKUP_DIRECTORY_FAILISAM_ERROR_INVALID_BACKUP ISAM_ERROR_RECOVERED_WITH_ERRORSISAM_ERROR_MISSING_LOG_FILEISAM_ERROR_LOG_DISK_FULLISAM_ERROR_BAD_LOG_SIGNATUREISAM_ERROR_BAD_DB_SIGNATURE#ISAM_ERROR_BAD_CHECKPOINT_SIGNATUREISAM_ERROR_CHECKPOINT_CORRUPTISAM_ERROR_MISSING_PATCH_PAGEISAM_ERROR_BAD_PATCH_PAGEISAM_ERROR_REDO_ABRUPT_ENDEDISAM_ERROR_BAD_SLV_SIGNATUREISAM_ERROR_PATCH_FILE_MISSING$ISAM_ERROR_DATABASE_LOG_SET_MISMATCH+ISAM_ERROR_DATABASE_STREAMING_FILE_MISMATCH!ISAM_ERROR_LOG_FILE_SIZE_MISMATCH$ISAM_ERROR_CHECKPOINT_FILE_NOT_FOUND%ISAM_ERROR_REQUIRED_LOG_FILES_MISSING+ISAM_ERROR_SOFT_RECOVERY_ON_BACKUP_DATABASE6ISAM_ERROR_LOG_FILE_SIZE_MISMATCH_DATABASES_CONSISTENT#ISAM_ERROR_LOG_SECTOR_SIZE_MISMATCH8ISAM_ERROR_LOG_SECTOR_SIZE_MISMATCH_DATABASES_CONSISTENT0ISAM_ERROR_LOG_SEQUENCE_END_DATABASES_CONSISTENT$ISAM_ERROR_STREAMING_DATA_NOT_LOGGED"ISAM_ERROR_DATABASE_DIRTY_SHUTDOWN#ISAM_ERROR_CONSISTENT_TIME_MISMATCH'ISAM_ERROR_DATABASE_PATCH_FILE_MISMATCH%ISAM_ERROR_ENDING_RESTORE_LOG_TOO_LOW(ISAM_ERROR_STARTING_RESTORE_LOG_TOO_HIGH+ISAM_ERROR_GIVEN_LOG_FILE_HAS_BAD_SIGNATURE+ISAM_ERROR_GIVEN_LOG_FILE_IS_NOT_CONTIGUOUS$ISAM_ERROR_MISSING_RESTORE_LOG_FILESISAM_ERROR_MISSING_FULL_BACKUP#ISAM_ERROR_BAD_BACKUP_DATABASE_SIZE$ISAM_ERROR_DATABASE_ALREADY_UPGRADED&ISAM_ERROR_DATABASE_INCOMPLETE_UPGRADE$ISAM_ERROR_MISSING_CURRENT_LOG_FILESISAM_ERROR_DB_TIME_TOO_OLDISAM_ERROR_DB_TIME_TOO_NEW!ISAM_ERROR_MISSING_FILE_TO_BACKUP-ISAM_ERROR_LOG_TORN_WRITE_DURING_HARD_RESTORE.ISAM_ERROR_LOG_TORN_WRITE_DURING_HARD_RECOVERY*ISAM_ERROR_LOG_CORRUPT_DURING_HARD_RESTORE+ISAM_ERROR_LOG_CORRUPT_DURING_HARD_RECOVERY.ISAM_ERROR_MUST_DISABLE_LOGGING_FOR_DB_UPGRADE&ISAM_ERROR_BAD_RESTORE_TARGET_INSTANCE!ISAM_ERROR_RECOVERED_WITHOUT_UNDO+ISAM_ERROR_DATABASES_NOT_FROM_SAME_SNAPSHOT$ISAM_ERROR_SOFT_RECOVERY_ON_SNAPSHOT&ISAM_ERROR_COMMITTED_LOG_FILES_MISSING&ISAM_ERROR_COMMITTED_LOG_FILES_CORRUPT/ISAM_ERROR_UNICODE_TRANSLATION_BUFFER_TOO_SMALL#ISAM_ERROR_UNICODE_TRANSLATION_FAIL.ISAM_ERROR_UNICODE_NORMALIZATION_NOT_SUPPORTED.ISAM_ERROR_EXISTING_LOG_FILE_HAS_BAD_SIGNATURE.ISAM_ERROR_EXISTING_LOG_FILE_IS_NOT_CONTIGUOUS"ISAM_ERROR_LOG_READ_VERIFY_FAILURE"ISAM_ERROR_SLV_READ_VERIFY_FAILURE$ISAM_ERROR_CHECKPOINT_DEPTH_TOO_DEEP)ISAM_ERROR_RESTORE_OF_NON_BACKUP_DATABASEISAM_ERROR_INVALID_GRBITISAM_ERROR_TERM_IN_PROGRESS ISAM_ERROR_FEATURE_NOT_AVAILABLEISAM_ERROR_INVALID_NAMEISAM_ERROR_INVALID_PARAMETER"ISAM_ERROR_DATABASE_FILE_READ_ONLYISAM_ERROR_INVALID_DATABASE_IDISAM_ERROR_OUT_OF_MEMORY ISAM_ERROR_OUT_OF_DATABASE_SPACEISAM_ERROR_OUT_OF_CURSORSISAM_ERROR_OUT_OF_BUFFERSISAM_ERROR_TOO_MANY_INDEXESISAM_ERROR_TOO_MANY_KEYSISAM_ERROR_RECORD_DELETEDISAM_ERROR_READ_VERIFY_FAILUREISAM_ERROR_PAGE_NOT_INITIALIZEDISAM_ERROR_OUT_OF_FILE_HANDLESISAM_ERROR_DISK_IOISAM_ERROR_INVALID_PATHISAM_ERROR_INVALID_SYSTEM_PATH ISAM_ERROR_INVALID_LOG_DIRECTORYISAM_ERROR_RECORD_TOO_BIG"ISAM_ERROR_TOO_MANY_OPEN_DATABASESISAM_ERROR_INVALID_DATABASEISAM_ERROR_NOT_INITIALIZEDISAM_ERROR_ALREADY_INITIALIZEDISAM_ERROR_INIT_IN_PROGRESSISAM_ERROR_FILE_ACCESS_DENIEDISAM_ERROR_BUFFER_TOO_SMALLISAM_ERROR_TOO_MANY_COLUMNSISAM_ERROR_CONTAINER_NOT_EMPTYISAM_ERROR_INVALID_FILENAMEISAM_ERROR_INVALID_BOOKMARKISAM_ERROR_COLUMN_IN_USEISAM_ERROR_INVALID_BUFFER_SIZEISAM_ERROR_COLUMN_NOT_UPDATABLEISAM_ERROR_INDEX_IN_USEISAM_ERROR_LINK_NOT_SUPPORTEDISAM_ERROR_NULL_KEY_DISALLOWEDISAM_ERROR_NOT_IN_TRANSACTION ISAM_ERROR_TOO_MANY_ACTIVE_USERSISAM_ERROR_INVALID_COUNTRYISAM_ERROR_INVALID_LANGUAGE_IDISAM_ERROR_INVALID_CODE_PAGE&ISAM_ERROR_INVALID_LC_MAP_STRING_FLAGS&ISAM_ERROR_VERSION_STORE_ENTRY_TOO_BIG<ISAM_ERROR_VERSION_STORE_OUT_OF_MEMORY_AND_CLEANUP_TIMED_OUT&ISAM_ERROR_VERSION_STORE_OUT_OF_MEMORYISAM_ERROR_CANNOT_INDEXISAM_ERROR_RECORD_NOT_DELETED#ISAM_ERROR_TOO_MANY_MEMPOOL_ENTRIESISAM_ERROR_OUT_OF_OBJECT_I_DS!ISAM_ERROR_OUT_OF_LONG_VALUE_I_DS&ISAM_ERROR_OUT_OF_AUTOINCREMENT_VALUESISAM_ERROR_OUT_OF_DBTIME_VALUES)ISAM_ERROR_OUT_OF_SEQUENTIAL_INDEX_VALUES'ISAM_ERROR_RUNNING_IN_ONE_INSTANCE_MODE)ISAM_ERROR_RUNNING_IN_MULTI_INSTANCE_MODE$ISAM_ERROR_SYSTEM_PARAMS_ALREADY_SETISAM_ERROR_SYSTEM_PATH_IN_USEISAM_ERROR_LOG_FILE_PATH_IN_USEISAM_ERROR_TEMP_PATH_IN_USEISAM_ERROR_INSTANCE_NAME_IN_USEISAM_ERROR_INSTANCE_UNAVAILABLEISAM_ERROR_DATABASE_UNAVAILABLE:ISAM_ERROR_INSTANCE_UNAVAILABLE_DUE_TO_FATAL_LOG_DISK_FULLISAM_ERROR_OUT_OF_SESSIONSISAM_ERROR_WRITE_CONFLICTISAM_ERROR_TRANS_TOO_DEEPISAM_ERROR_INVALID_SESID'ISAM_ERROR_WRITE_CONFLICT_PRIMARY_INDEXISAM_ERROR_IN_TRANSACTIONISAM_ERROR_ROLLBACK_REQUIREDISAM_ERROR_TRANS_READ_ONLY!ISAM_ERROR_SESSION_WRITE_CONFLICT4ISAM_ERROR_RECORD_TOO_BIG_FOR_BACKWARD_COMPATIBILITY/ISAM_ERROR_CANNOT_MATERIALIZE_FORWARD_ONLY_SORT"ISAM_ERROR_SESID_TABLE_ID_MISMATCHISAM_ERROR_INVALID_INSTANCEISAM_ERROR_DATABASE_DUPLICATEISAM_ERROR_DATABASE_IN_USEISAM_ERROR_DATABASE_NOT_FOUND ISAM_ERROR_DATABASE_INVALID_NAME!ISAM_ERROR_DATABASE_INVALID_PAGESISAM_ERROR_DATABASE_CORRUPTEDISAM_ERROR_DATABASE_LOCKED$ISAM_ERROR_CANNOT_DISABLE_VERSIONING#ISAM_ERROR_INVALID_DATABASE_VERSIONISAM_ERROR_DATABASE200_FORMATISAM_ERROR_DATABASE400_FORMATISAM_ERROR_DATABASE500_FORMATISAM_ERROR_PAGE_SIZE_MISMATCHISAM_ERROR_TOO_MANY_INSTANCES%ISAM_ERROR_DATABASE_SHARING_VIOLATION%ISAM_ERROR_ATTACHED_DATABASE_MISMATCH ISAM_ERROR_DATABASE_INVALID_PATHISAM_ERROR_DATABASE_ID_IN_USE#ISAM_ERROR_FORCE_DETACH_NOT_ALLOWEDISAM_ERROR_CATALOG_CORRUPTED ISAM_ERROR_PARTIALLY_ATTACHED_DBISAM_ERROR_DATABASE_SIGN_IN_USE'ISAM_ERROR_DATABASE_CORRUPTED_NO_REPAIR$ISAM_ERROR_INVALID_CREATE_DB_VERSIONISAM_ERROR_TABLE_LOCKEDISAM_ERROR_TABLE_DUPLICATEISAM_ERROR_TABLE_IN_USEISAM_ERROR_OBJECT_NOT_FOUNDISAM_ERROR_DENSITY_INVALIDISAM_ERROR_TABLE_NOT_EMPTYISAM_ERROR_INVALID_TABLE_IDISAM_ERROR_TOO_MANY_OPEN_TABLESISAM_ERROR_ILLEGAL_OPERATION5ISAM_ERROR_TOO_MANY_OPEN_TABLES_AND_CLEANUP_TIMED_OUTISAM_ERROR_OBJECT_DUPLICATEISAM_ERROR_INVALID_OBJECT#ISAM_ERROR_CANNOT_DELETE_TEMP_TABLE%ISAM_ERROR_CANNOT_DELETE_SYSTEM_TABLE'ISAM_ERROR_CANNOT_DELETE_TEMPLATE_TABLE(ISAM_ERROR_EXCLUSIVE_TABLE_LOCK_REQUIREDISAM_ERROR_FIXED_DDLISAM_ERROR_FIXED_INHERITED_DDLISAM_ERROR_CANNOT_NEST_DDLISAM_ERROR_DDL_NOT_INHERITABLEISAM_ERROR_INVALID_SETTINGS-ISAM_ERROR_CLIENT_REQUEST_TO_STOP_JET_SERVICE7ISAM_ERROR_CANNOT_ADD_FIXED_VAR_COLUMN_TO_DERIVED_TABLEISAM_ERROR_INDEX_CANT_BUILDISAM_ERROR_INDEX_HAS_PRIMARYISAM_ERROR_INDEX_DUPLICATEISAM_ERROR_INDEX_NOT_FOUNDISAM_ERROR_INDEX_MUST_STAYISAM_ERROR_INDEX_INVALID_DEFISAM_ERROR_INVALID_CREATE_INDEX ISAM_ERROR_TOO_MANY_OPEN_INDEXES'ISAM_ERROR_MULTI_VALUED_INDEX_VIOLATION ISAM_ERROR_INDEX_BUILD_CORRUPTED"ISAM_ERROR_PRIMARY_INDEX_CORRUPTED$ISAM_ERROR_SECONDARY_INDEX_CORRUPTEDISAM_ERROR_INVALID_INDEX_ID,ISAM_ERROR_INDEX_TUPLES_SECONDARY_INDEX_ONLY(ISAM_ERROR_INDEX_TUPLES_TOO_MANY_COLUMNS'ISAM_ERROR_INDEX_TUPLES_NON_UNIQUE_ONLY0ISAM_ERROR_INDEX_TUPLES_TEXT_BINARY_COLUMNS_ONLY/ISAM_ERROR_INDEX_TUPLES_VAR_SEG_MAC_NOT_ALLOWED&ISAM_ERROR_INDEX_TUPLES_INVALID_LIMITS2ISAM_ERROR_INDEX_TUPLES_CANNOT_RETRIEVE_FROM_INDEX%ISAM_ERROR_INDEX_TUPLES_KEY_TOO_SMALLISAM_ERROR_COLUMN_LONGISAM_ERROR_COLUMN_NO_CHUNKISAM_ERROR_COLUMN_DOES_NOT_FITISAM_ERROR_NULL_INVALIDISAM_ERROR_COLUMN_INDEXEDISAM_ERROR_COLUMN_TOO_BIGISAM_ERROR_COLUMN_NOT_FOUNDISAM_ERROR_COLUMN_DUPLICATE-ISAM_ERROR_MULTI_VALUED_COLUMN_MUST_BE_TAGGEDISAM_ERROR_COLUMN_REDUNDANTISAM_ERROR_INVALID_COLUMN_TYPEISAM_ERROR_TAGGED_NOT_NULLISAM_ERROR_NO_CURRENT_INDEXISAM_ERROR_KEY_IS_MADEISAM_ERROR_BAD_COLUMN_IDISAM_ERROR_BAD_ITAG_SEQUENCE!ISAM_ERROR_COLUMN_IN_RELATIONSHIPISAM_ERROR_CANNOT_BE_TAGGED ISAM_ERROR_DEFAULT_VALUE_TOO_BIG!ISAM_ERROR_MULTI_VALUED_DUPLICATEISAM_ERROR_LV_CORRUPTED2ISAM_ERROR_MULTI_VALUED_DUPLICATE_AFTER_TRUNCATION$ISAM_ERROR_DERIVED_COLUMN_CORRUPTION%ISAM_ERROR_INVALID_PLACEHOLDER_COLUMNISAM_ERROR_RECORD_NOT_FOUNDISAM_ERROR_RECORD_NO_COPYISAM_ERROR_NO_CURRENT_RECORD!ISAM_ERROR_RECORD_PRIMARY_CHANGEDISAM_ERROR_KEY_DUPLICATEISAM_ERROR_ALREADY_PREPAREDISAM_ERROR_KEY_NOT_MADEISAM_ERROR_UPDATE_NOT_PREPAREDISAM_ERROR_DATA_HAS_CHANGED!ISAM_ERROR_LANGUAGE_NOT_SUPPORTEDISAM_ERROR_TOO_MANY_SORTSISAM_ERROR_INVALID_ON_SORTISAM_ERROR_TEMP_FILE_OPEN_ERROR&ISAM_ERROR_TOO_MANY_ATTACHED_DATABASESISAM_ERROR_DISK_FULLISAM_ERROR_PERMISSION_DENIEDISAM_ERROR_FILE_NOT_FOUNDISAM_ERROR_FILE_INVALID_TYPEISAM_ERROR_AFTER_INITIALIZATIONISAM_ERROR_LOG_CORRUPTEDISAM_ERROR_INVALID_OPERATIONISAM_ERROR_ACCESS_DENIEDISAM_ERROR_TOO_MANY_SPLITS$ISAM_ERROR_SESSION_SHARING_VIOLATION ISAM_ERROR_ENTRY_POINT_NOT_FOUND&ISAM_ERROR_SESSION_CONTEXT_ALREADY_SET1ISAM_ERROR_SESSION_CONTEXT_NOT_SET_BY_THIS_THREADISAM_ERROR_SESSION_IN_USE*ISAM_ERROR_RECORD_FORMAT_CONVERSION_FAILED#ISAM_ERROR_ONE_DATABASE_PER_SESSIONISAM_ERROR_ROLLBACK_ERRORISAM_ERROR_CALLBACK_FAILED ISAM_ERROR_CALLBACK_NOT_RESOLVED'ISAM_ERROR_OS_SNAPSHOT_INVALID_SEQUENCEISAM_ERROR_OS_SNAPSHOT_TIME_OUT"ISAM_ERROR_OS_SNAPSHOT_NOT_ALLOWED&ISAM_ERROR_OS_SNAPSHOT_INVALID_SNAP_ID$ISAM_ERROR_LS_CALLBACK_NOT_SPECIFIEDISAM_ERROR_LS_ALREADY_SETISAM_ERROR_LS_NOT_SETISAM_ERROR_FILE_IO_SPARSEISAM_ERROR_FILE_IO_BEYOND_EOFISAM_ERROR_FILE_COMPRESSEDrw   rf   rx   ry   r"   r"   	  s   
 GJLG""M!%&"K"%&K#K!IN#%")N O O'!M"#")# O% O$!%" O!JL")L!%/"MKM$#NI#-  OM%K")$.! OJJJK##- )!""!! *' ONNNNN((N'&'$%&LLM#' OL OKM *M( O'N##&($!$!!!#N"#&FJM O!$$!LK$"NM' O")H O O$')"",))(2% * *JLM"K O"!()#$.!",M$")%'$N#&K!%#$(2%# O&",('!+$.!('M(!+')& *'( *8B5",)()('1$&0#0:-(2%2</&0##- )'*4'",%/",6)$.!%/"+5( *6@31;.)3&!+&0#",&0#",%)3&(2%)3&,6) *'1$",)#- ",*4'$.!$.! *#- #- $.!+5(2</(2%+5(,6)2</=G:*4'?I<7A4+5()3&*4'.8+,6)/9,2</2</+5(%/"*4'+5(-7*+5(!+!+(2%4>15?21;.2</5?2-7*(2%2</+5(-7*-7*6@3*4'5?25?25?2)3&)3&+5(0:-)",'1$(#- )3&%/")'1$ * *",) *%/"&0#%/"#(%/"'1$ *)3&",!+%/"",$.!",",%/"",",)%/"&0#($.!%/"$.!'1$!+%/"#- -7*-7*CM@-7*($.!*4'$.!(2%-7*&0#0:-.8+0:-+5($.!&0#",&0#&0#&0#AK>!+ * *).8+ *#- !+(2%;E86@3)3&",$.!!+$.!'1$(2%$.!!++5(*4'$.!$.!$.!$.!$.!,6),6)'1$$.!*4'#- '1$&0#.8++5((!+(",!+!+",&0##- <F9", **4',6).8+/9,%%/"!+%/"",4>1>H;",#- !+!+!+#- &0#'1$.8+'1$)3&+5(",3=0/9,.8+7A46@3-7*9C6,6)'!+%/"( * *",",4>1",%/"!+",')#- (2%",'1$(2%(9C6+5(,6)", *#- (2%)",(%/"",(2% *!+&0#-7*%#-  *#- &0#)#- )!++5('1$-7*8B5 *1;.*4' *!+'1$.8+&0#)3&-7*+5( *& *$.!!+rx   r"   c                       \ rS rSrSrSrSrSrg)r#   i  r   r\   r]   rf   N)rg   rh   ri   rj   UNSPECIFIEDFEMALEMALErw   rf   rx   ry   r#   r#     s     KFDrx   r#   c                  X    \ rS rSr\SS j5       rSrSrSrSr	Sr
SrS	rS
rSrSrSrSrSrg)r$   i!  c                8     U " U5      $ ! [          a    Us $ f = f)z:
Try to make an instance, returning the value on failure.
)
ValueErrorr  values     ry   tryMakeIconIndex.tryMake"  s%    
	u: 	L	s   
 r   r   i  i  i  i  i  i  i  i  i	  i  rf   N)rd  intr  zUnion[IconIndex, int])rg   rh   ri   rj   r  re  r]  SINGLE_INSTANCE_APPOINTMENTRECURRING_APPOINTMENTSINGLE_INSTANCE_MEETINGRECURRING_MEETINGMEETING_REQUEST_UPDATEACCEPT_MEETING_REQUESTDECLINE_MEETING_REQUEST"TENTATIVELY_ACCEPT_MEETING_REQUESTMEETING_CANCELLATIONMEETING_UPDATE_INFORMATIONALFORWARD_NOTIFICATIONrw   rf   rx   ry   r$   r$   !  s]      K",&("''()3&%#- %rx   r$   c                       \ rS rSrSrSrSrSrg)r%   i;  r   r\   r]   rf   N)rg   rh   ri   rj   LOWMEDIUMHIGHrw   rf   rx   ry   r%   r%   ;  s    
CFDrx   r%   c                  $    \ rS rSrSrSrSrSrSrg)r&   iB  a  
Insecure options that can be enabled for an MSG file.

Using ALL is not recommended unless you check this list before updating to
a new version of the module, as new features may have been added. It is
also not recommended to use these on files you do not trust.

The following features are avilable:

* NONE: No insecure features are allowed (default).
* PIL_IMAGE_PARSING: Various operations requiring PIL or Pillow that will
  read image data from parts of the MSG file. These operations are usually
  constructing new images or are converting from one format to another.
  This may expose you to security issues from those libraries.
* ALL: All of the previously listed features will be enabled for the MSG
  file.
r   r\   r3  rf   N)	rg   rh   ri   rj   rk   r   PIL_IMAGE_PARSINGr   rw   rf   rx   ry   r&   r&   B  s    " D
Crx   r&   c                      \ rS rSrSrSrSrg)r'   iZ  r   r  rf   N)rg   rh   ri   rj   NO_JOURNAL_ASSOCIATED_ATTHAS_JOUNRAL_ASSOCIATED_ATTrw   rf   rx   ry   r'   r'   Z  s     *!+rx   r'   c                  (    \ rS rSrSrSrSrSrSrSr	g)	r(   i`  z>
The encoding to use for Macintosh-specific data attachments.
r   r\   r]   r^   rf   N)
rg   rh   ri   rj   rk   BIN_HEXUUENCODEAPPLE_SINGLEAPPLE_DOUBLErw   rf   rx   ry   r(   r(   `  s     GHLLrx   r(   c                  D    \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrSrSrSrg)r)   ik  a  
Indicates a property that has changed on a meeting object.

* START: The start has changed.
* END: The end has changed.
* RECUR: The recurrence pattern has changed.
* LOCATION: The location has changed.
* SUBJECT: The subject has changed.
* REQUIRED_ATTENDEE: One or more required attendees were added.
* OPTIONAL_ATTENDEE: One or more optional attendees were added.
* BODY: The body was modified.
* RESPONSE: The responseRequested or replyRequested property has changed.
* ALLOW_PROPOSE: The appointmentNotAllowPropose property has changed.
r\   r]   r_   r}   r~   r   r|   r   re   r   r   rf   N)rg   rh   ri   rj   rk   STARTENDRECURLOCATIONSUBJECTREQUIRED_ATTENDEEOPTIONAL_ATTENDEEBODYRESPONSEALLOW_PROPOSE
DEPRECATEDrw   rf   rx   ry   r)   r)   k  sB     E
CEHG !DH!MJrx   r)   c                  $    \ rS rSrSrSrSrSrSrg)r*   i  r\   r]   r^   rf   N)	rg   rh   ri   rj   	ORGANIZERSENDABLE_REQUIRED_ATTENDEESENDABLE_OPTIONAL_ATTENDEESENDABLE_RESOURCE_OBJECTrw   rf   rx   ry   r*   r*     s    I!%!%#rx   r*   c                  0    \ rS rSrSrSrSrSrSrSr	Sr
S	rg
)r+   i  a[  
The type of Meeting Request object of Meeting Update object.

* EMPTY: Unspecified.
* REQUEST: The meeting request is the initial request.
* FULL: Attendees were added, the meeting was cancelled and the organizer is
  uncancelling it, and or the start, end, or recurrance property was
  changed.
* INFO: An informational update was made to the meeting and it is not one of
  the conditions for FULL.
* OUT_OF_DATE: A newer Meeting Request object or MeetingUpdate object was
  received after this one.
* DELEGATOR_COPY: Set on the delegator's copy when a delegate will handle
  meeting-related objects.
r   r\   r  i   i   i   rf   N)rg   rh   ri   rj   rk   EMPTYREQUESTFULLINFOOUT_OF_DATEDELEGATOR_COPYrw   rf   rx   ry   r+   r+     s'     EGDDKNrx   r+   c                      \ rS rSrSrSrSrg)r,   i  r   r\   rf   N)rg   rh   ri   rj   TNEFMIMErw   rf   rx   ry   r,   r,     s    DDrx   r,   c                  0    \ rS rSrSrSrSrSrSrSr	Sr
S	rg
)r-   i  r\   r^   r`   r   r   r0  r1  rf   N)rg   rh   ri   rj   PRIVATE_FOLDERPUBLIC_FOLDERMAPPED_PUBLIC_FOLDERPRIVATE_MESSAGEPUBLIC_MESSAGEMAPPED_PUBLIC_MESSAGEPUBLIC_NEWSGROUP_FOLDERrw   rf   rx   ry   r-   r-     s(    NM!ON"$rx   r-   c                      \ rS rSrSrSrSrg)r.   i  r   r\   rf   N)rg   rh   ri   rj   NUMERICAL_NAMEDSTRING_NAMEDrw   rf   rx   ry   r.   r.     s    OLrx   r.   c                  (    \ rS rSrSrSrSrSrSrSr	g)	r/   i  r   r\   r]   r^   r_   rf   N)
rg   rh   ri   rj   r   r   PINKr   WHITErw   rf   rx   ry   r/   r/     s    DEDFErx   r/   c                  8    \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrg)r0   i  z3
Values for the ``cf`` field of the ODT structure.
r   r\   r]   r^   r_   r`   r   r7  rf   N)rg   rh   ri   rj   rk   r]  RICH_TEXT_FORMATTEXT_FORMATMETAFILEBITMAPDEVICE_INDEPENDENT_BITMAPHTML_FORMATUNICODE_TEXT_FORMATrw   rf   rx   ry   r0   r0     s4     KKHF &K rx   r0   c                  \    \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrSrSrSrSrSrSrSrSrSrg)r1   i  zl
Flag values for ODTPersist1, in the order they would appear when unpacking a
little endian unsigned short.
r   r\   r]   r_   r}   r~   r   r|   r   rb   re   r   r   r   r	  r
  r  rf   N)rg   rh   ri   rj   rk   r   
RESERVED_1F_DEF_HANDLER
RESERVED_2
RESERVED_3F_LINK
RESERVED_4F_ICON	F_IS_OLE1F_MANUALF_RECOMPOSE_ON_RESIZE
RESERVED_5
RESERVED_6F_OCXF_STREAM
RESERVED_7F_VIEW_OBJECTrw   rf   rx   ry   r1   r1     s_     D#J&M#J#JF#JF"I!H.#J#JE!H#J&Mrx   r1   c                  \    \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrSrSrSrSrSrSrSrSrSrg)r2   i  zl
Flag values for ODTPersist2, in the order they would appear when unpacking a
little endian unsigned short.
r   r\   r]   r_   r}   r~   r   r|   r   rb   re   r   r   r   r	  r
  r  rf   N)rg   rh   ri   rj   rk   r   F_EMFr  F_QUERIED_EMFF_STORED_AS_EMFr  r  r  r  r  r  
RESERVED_8
RESERVED_9RESERVED_10RESERVED_11RESERVED_12RESERVED_13rw   rf   rx   ry   r2   r2     s^     DE#J&M(O#J#J#J#J#J#J#J#J$K$K$K$Krx   r2   c                  (    \ rS rSrSrSrSrSrSrSr	g)	r3   i
  z)
The body format for One Off Recipients.
r^   r   r0  r   rf   N)
rg   rh   ri   rj   rk   	TEXT_ONLY	HTML_ONLYTEXT_AND_HTMLr]  rw   rf   rx   ry   r3   r3   
  s     IIM Krx   r3   c                  $    \ rS rSrSrSrSrSrSrg)r4   i  r   r\   r]   r^   rf   N)	rg   rh   ri   rj   r]  HOMEWORKOTHERrw   rf   rx   ry   r4   r4     s    KDDErx   r4   c                       \ rS rSrSrSrSrSrg)r5   i   r\   r   r   rf   N)rg   rh   ri   rj   URGENTNORMAL
NOT_URGENTrw   rf   rx   ry   r5   r5      s    FFJrx   r5   c                  (    \ rS rSrSrSrSrSrSrSr	g)	r6   i'  z&
The type of the properties instance.
r   r\   r]   r^   rf   N)
rg   rh   ri   rj   rk   MESSAGEMESSAGE_EMBED
ATTACHMENT	RECIPIENTrw   rf   rx   ry   r6   r6   '  s     GMJIrx   r6   c                       \ rS rSrSrSrSrSrg)r7   i2  r\   r]   r_   rf   N)rg   rh   ri   rj   	MANDATORYREADABLEWRITABLErw   rf   rx   ry   r7   r7   2  s    IHHrx   r7   c                  4    \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rg)r8   i9  r   r\   r]   r^   r_   r`   ra   r   rf   N)rg   rh   ri   rj   NOTYPEX500DNMSMAILSMTPFAXPROFESSIONALOFFICESYSTEMPERSONALDESTRIBUTIONLIST1PERSONALDESTRIBUTIONLIST2rw   rf   rx   ry   r8   r8   9  s-    FFFD
C" # #rx   r8   c                  (    \ rS rSrSrSrSrSrSrSr	g)	r9   iE  z
The type of recipient.
r   r\   r]   r^   rf   N)
rg   rh   ri   rj   rk   SENDERTOCCBCCrw   rf   rx   ry   r9   r9   E  s     F	
B	
B
Crx   r9   c                  h    \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrSrSrSrSrSrSrSrSrSrSrSrSrg)r:   rW  r   r\   r]   r^   r_   r`   ra   r   r}   r   r   r0  r1  r   r3  r~   r4  r5  r6  r7  r:  rf   N)rg   rh   ri   rj   r   CAL_GREGORIANCAL_GREGORIAN_US	CAL_JAPAN
CAL_TAIWAN	CAL_KOREA	CAL_HIJRICAL_THAI
CAL_HEBREWCAL_GREGORIAN_ME_FRENCHCAL_GREGORIAN_ARABICCAL_GREGORIAN_XLIT_ENGLISHCAL_GREGORIAN_XLIT_FRENCHCAL_LUNAR_JAPANESECAL_CHINESE_LUNARCAL_SAKACAL_LUNAR_ETO_CHNCAL_LUNAR_ETO_KORCAL_LUNAR_ROKUYOUCAL_LUNAR_KOREANCAL_UMALQURArw   rf   rx   ry   r:   r:   P  sv    GMIJIIHJ$!!' &HLrx   r:   c                  0    \ rS rSrSrSrSrSrSrSr	Sr
S	rg
)r;   ii  r   r\   r]   r^   r_   r`   ra   rf   N)rg   rh   ri   rj   SUNDAYMONDAYTUESDAY	WEDNESDAYTHURSDAYFRIDAYSATURDAYrw   rf   rx   ry   r;   r;   i  s%    FFGIHFHrx   r;   c                  4    \ rS rSr\SS j5       rSrSrSrSr	g)	r<   it  c                .    US:X  a  U " S5      $ U " U5      $ )zI
Some enum values CAN be created from more than one int, so handle that.
r   #   rf   rc  s     ry   fromIntRecurEndType.fromIntu  s    
 #(:"5s:E3u:Erx   i!   i"   r  rf   N)rd  rg  r  r<   )
rg   rh   ri   rj   r  r  END_AFTER_DATEEND_AFTER_N_OCCURRENCES	NEVER_ENDrw   rf   rx   ry   r<   r<   t  s(    F F  N(Irx   r<   c                  (    \ rS rSrSrSrSrSrSrSr	g)	r=   i  
See [MS-OXOCAL] for details.
i
   i   i   i   rf   N)
rg   rh   ri   rj   rk   DAILYWEEKLYMONTHLYYEARLYrw   rf   rx   ry   r=   r=     s     EFGFrx   r=   c                  (    \ rS rSrSrSrSrSrSrSr	g)	r>   i  r\   r]   r^   r_   r`   rf   N)
rg   rh   ri   rj   FIRSTSECONDTHIRDFOURTHLASTrw   rf   rx   ry   r>   r>     s    EFEFDrx   r>   c                  4    \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rg)r?   i  r  r]   r_   r}   r~   r   r|   r   rf   N)rg   rh   ri   rj   rk   r  r  r
  r	  r  r  r  rw   rf   rx   ry   r?   r?     s,     HFHIGFFrx   r?   c                  8    \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrg)r@   i  r  r   r\   r]   r^   r_   r   r0  r1  rf   N)rg   rh   ri   rj   rk   DAYWEEKMONTH	MONTH_NTH	MONTH_ENDHJ_MONTHHJ_MONTH_NTHHJ_MONTH_ENDrw   rf   rx   ry   r@   r@     s1     CDEIIHLLrx   r@   c                  D    \ rS rSrSr\SS j5       rSrSrSr	Sr
SrS	rS
rg)rA   i  aI  
The response status of an attendee.

* NONE: No response is required for this object.
* ORGANIZED: This Meeting object belongs to the organizer.
* TENTATIVE: The attendee has tentatively accepted.
* ACCEPTED: The attendee has accepted.
* DECLINED: The attendee has declined.
* NOT_RESPONDED: The attendee has not yet responded.
c                <    U Vs/ s H
  o " U5      PM     sn$ s  snf )z:
Uses the iterable of ints to create a list of this enum.
rf   r  s      ry   r  ResponseStatus.fromIter  r  r  r   r\   r]   r^   r_   r`   rf   N)r  r  r  zList[ResponseStatus])rg   rh   ri   rj   rk   r  r  r   	ORGANIZED	TENTATIVEACCEPTEDDECLINEDNOT_RESPONDEDrw   rf   rx   ry   rA   rA     s;    	 ' ' DIIHHMrx   rA   c                  $    \ rS rSrSrSrSrSrSrg)rB   i  z5
The type of response for a Meeting Response object.
posnegtentrf   N)	rg   rh   ri   rj   rk   ACCEPTDECLINEr/  rw   rf   rx   ry   rB   rB     s     FGIrx   rB   c                  <    \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrSrg)rC   i  z
Flags that specify the status of nature of an item's retention tag or
archive tag.

See the section labeled "PidTagRetentionFlags" of [MS-OXCMSG] for details.
r\   r]   r_   r}   r~   r   r|   r   rb   rf   N)rg   rh   ri   rj   rk   EXPLICIT_TAGUSER_OVERRIDEAUTO_TAGPERSONAL_TAGEXPLICIT_ARCHIVE_TAGKEEP_IN_PLACESYSTEM_DATANEEDS_RESCANPENDING_RESCANrw   rf   rx   ry   rC   rC     s7     LMHL MKLNrx   rC   c                  @    \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrSrSrg)rD   i  r\   r]   r^   r_   r`   ra   r   r}   r   r   r0  rf   N)rg   rh   ri   rj   OP_MOVEOP_COPYOP_REPLYOP_OOF_REPLYOP_DEFER_ACTION	OP_BOUNCE
OP_FORWARDOP_DELEGATEOP_TAG	OP_DELETEOP_MARK_AS_READrw   rf   rx   ry   rD   rD     s9    GGHLOIJKFIOrx   rD   c                  0    \ rS rSrSrSrSrSrSrSr	Sr
S	rg
)rE   i  az  
Specifies the way that a function saved the data.

Used to determine how the return value from a save function should be read.

* CUSTOM: An unlisted save method was used, and the second value is
  unspecified.
* NONE: No data was saved, and the second tuple value should be None.
* FILE: A single file was save, and the location is the second value.
* FILES: Multiple files were created, and the second value is a list of the
  locations.
* FOLDER: A folder was created to store data, and the location is the second
  value.
* FOLDERS: Multiple folders were created to store data, and the second value
  is a list of the locations.
r   r\   r]   r^   r_   rf   N)rg   rh   ri   rj   rk   r   r   FILEFILESFOLDERFOLDERSrw   rf   rx   ry   rE   rE     s'      FDDEFGrx   rE   c                  $    \ rS rSrSrSrSrSrSrg)rF   i  r   r\   r]   r^   rf   N)	rg   rh   ri   rj   r  PERSONALPRIVATECONFIDENTIALrw   rf   rx   ry   rF   rF     s    FHGLrx   rF   c                  4    \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rg)rG   i  z,
Actions taken on a meeting-related object.
r]   r~   r   rb   r   r   r   rf   N)rg   rh   ri   rj   rk   DELEGATOR_WANTS_COPYCREATED_ON_PRINCIPLEUPDATED_CAL_ITEMCOPIED_OLD_PROPERTIESSEND_AUTO_RESPONSEREVIVED_EXCEPTION&PROCESSED_MEETING_FORWARD_NOTIFICATIONrw   rf   rx   ry   rG   rG     s3     &%!&#"-7*rx   rG   c                  D    \ rS rSrSrSrSrSrSrSr	Sr
S	rS
rSrSrSrSrg)rH   i*  a  
A flag for how a Message object is handled by the client in relation to
certain user interface actions.

* OPEN_TO_DELETE: The client opens the Message object when deleting.
* NO_FRAME: No UI is associated with the Message object.
* COERCE_TO_INDEX: The client moves the Message object to the Inbox folder
  when moving or copying to a Folder object with the PidTagContainerClass
  property set to "IPF.Note".
* OPEN_TO_COPY: The client opens the Message object when copying to another
  folder.
* OPEN_TO_MOVE: The client opens the Message object when moving to another
  folder.
* OPEN_FOR_CTX_MENU: The client opens the Message object when displaying
  context-sensitive commands, such as a context menu, to the end user.
* CANNOT_UNDO_DELETE: The client cannot undo a delete operation. Must not be
  set unless the OPEN_TO_DELETE flag is set.
* CANNOT_UNDO_COPY: The client cannot undo a copy operation. Must not be set
  unless the OPEN_TO_COPY flag is set.
* CANNOT_UNDO_MOVE: The client cannot undo a move operation. Must not be set
  unless the OPEN_TO_MOVE flag is set.
* HAS_SCRIPT: The Message object contains end-user script.
* OPEN_TO_PERM_DELETE: The client opens the Message object to permanently
  delete it.
r\   r}   r~   r   r|   rb   r   r   r   r	  r
  rf   N)rg   rh   ri   rj   rk   OPEN_TO_DELETENO_FRAMECOERCE_TO_INDEXOPEN_TO_COPYOPEN_TO_MOVEOPEN_FOR_CTX_MENUCANNOT_UNDO_DELETECANNOT_UNDO_COPYCANNOT_UNDO_MOVE
HAS_SCRIPTOPEN_TO_PERM_DELETErw   rf   rx   ry   rH   rH   *  sE    2 NHOLL#&%&!J+rx   rH   c                  (    \ rS rSrSrSrSrSrSrSr	g)	rI   iR  z#
The acceptance state of the task.
r   r\   r]   r^   rf   N)
rg   rh   ri   rj   rk   NOT_ASSIGNEDr   r0  r  rw   rf   rx   ry   rI   rI   R  s     LGHHrx   rI   c                  0    \ rS rSrSrSrSrSrSrSr	Sr
S	rg
)rJ   i]  z1
The type of the last change to the Task object.
r   r\   r]   r^   r_   r`   rf   N)rg   rh   ri   rj   rk   r   r0  r  r  DUE_DATE_CHANGEDASSIGNEDrw   rf   rx   ry   rJ   rJ   ]  s(     DHHE!Hrx   rJ   c                  0    \ rS rSrSrSrSrSrSrSr	Sr
S	rg
)rK   ij  a  
The mode of the Task object used in task communication (PidLidTaskMode).

* UNASSIGNED: The Task object is not assigned.
* EMBEDDED_REQUEST: The Task object is embedded in a task request.
* ACCEPTED: The Task object has been accepted by the task assignee.
* REJECTED: The Task object was rejected by the task assignee.
* EMBEDDED_UPDATE: The Task object is embedded in a task update.
* SELF_ASSIGNED: The Task object was assigned to the task assigner
  (self-delegation).
r   r\   r]   r^   r_   r`   rf   N)rg   rh   ri   rj   rk   
UNASSIGNEDEMBEDDED_REQUESTr0  r  EMBEDDED_UPDATESELF_ASSIGNEDrw   rf   rx   ry   rK   rK   j  s(    
 JHHOMrx   rK   c                      \ rS rSrSrSrSrg)rL   i  r\   r]   rf   N)rg   rh   ri   rj   SENTr   rw   rf   rx   ry   rL   rL     s    DHrx   rL   c                  $    \ rS rSrSrSrSrSrSrg)rM   i  a  
The role of the current user relative to the Task object.

* NOT_ASSIGNED: The Task object is not assigned.
* ASSIGNERS_COPY: The Task object is the task assigner's copy of the Task
  object.
* ASSIGNEES_COPY: The Task object is the task assignee's copy of the Task
  object.
r   r\   r]   rf   N)	rg   rh   ri   rj   rk   rn  ASSIGNERS_COPYASSIGNEES_COPYrw   rf   rx   ry   rM   rM     s     LNNrx   rM   c                  <    \ rS rSrSr\S
S j5       rSrSrSr	Sr
Srg	)rN   i  z
The type of task request.

* REQUEST: A plain request.
* ACCEPT: Task has been accepted.
* DECLINE: Task has been declined.
* UPDATE: Task has been updated.
c                    UR                  5       nSU;   a  U " S5      $ SU;   a  U " S5      $ SU;   a  U " S5      $ U " S5      $ )z5
Convert a class type string into a TaskRequestType.
acceptr\   decliner]   updater^   r   )lower)r  	classTypes     ry   fromClassTypeTaskRequestType.fromClassType  sL    
 OO%	y q6M	!q6My q6M1vrx   r   r\   r]   r^   rf   N)r  strr  rN   )rg   rh   ri   rj   rk   r  r  r  r7  r8  UPDATErw   rf   rx   ry   rN   rN     s1       GFGFrx   rN   c                  ,    \ rS rSrSrSrSrSrSrSr	Sr
g	)
rO   i  a  
TaskState.

* NOT_ASSIGNED: The Task object is not assigned.
* ASSIGNEES_COPY_ACCEPTED: The Task object is the task assignee's copy of an
  assigned Task object.
* ASSIGNERS_COPY_ACCEPTED: The Task object is the task assigner's copy of an
  assigned Task object.
* ASSIGNERS_COPY_REJECTED: The Task object is the task assigner's copy of a
  rejected Task object.
* EMBEDDED_REJECTION: This Task object was created to correspond to a Task
  object that was embedded in a task rejection but could not be found
  locally.
r\   r]   r^   r_   r`   rf   N)rg   rh   ri   rj   rk   rn  ASSIGNEES_COPY_ACCEPTEDASSIGNERS_COPY_ACCEPTEDASSIGNERS_COPY_REJECTEDEMBEDDED_REJECTIONrw   rf   rx   ry   rO   rO     s&     L(((#rx   rO   c                  ,    \ rS rSrSrSrSrSrSrSr	Sr
g	)
rP   i  aX  
The status of a task object (PidLidTaskStatus).

* NOT_STARTED: The user has not started the task.
* IN_PROGRESS: The users's work on the Task object is in progress.
* COMPLETE: The user's work on the Task object is complete.
* WAITING_ON_OTHER: The user is waiting on somebody else.
* DEFERRED: The user has deferred work on the Task object.
r   r\   r]   r^   r_   rf   N)rg   rh   ri   rj   rk   NOT_STARTEDIN_PROGRESSCOMPLETEWAITING_ON_OTHERDEFERREDrw   rf   rx   ry   rP   rP     s#     KKH!Hrx   rP   c                       \ rS rSrSrSrSrSrg)rQ   i  z
Flags for a TZRule object as defined in [MS-OXOCAL].

* RECUR_CURRENT_TZREG: The rule is associated with a recurring series.
* EFFECTIVE_TZREG: The rule is the effective rule.
r\   r]   rf   N)rg   rh   ri   rj   rk   RECUR_CURRENT_TZREGEFFECTIVE_TZREGrw   rf   rx   ry   rQ   rQ     s     Orx   rQ   c                      \ rS rSrSrSrSrg)rR   i  ra   r1  rf   N)rg   rh   ri   rj   MESSAGE_STOREMAILBOX_STORErw   rf   rx   ry   rR   rR     s    MMrx   rR   c                  <    \ rS rSrSr0 0 4S	S jjrS rS rS rSr	g)
_EnumDeprecatori  z
Special class for handling deprecated enums in a way that shouldn't break
existing code, including code for checking ``is`` on a member of the enum.
c                X    SU SUR                    S3U l        X l        X0l        X@l        g)ap  
:param oldClassName: The name to use in the deprecation message.
:param newClass: The new enum class to look for the value in.
:param nameConversion: A dictionary of old names to new names to
    convert if needed. If a name is the same, it can be omitted.
:param valueConversion: A dictionary of old values to new values used
    when getting a value from the enum.
zEnum z* is deprecated and has been replaced with z. Please update your code.N)rg   _EnumDeprecator__warnMessage_EnumDeprecator__new_EnumDeprecator__nameConv_EnumDeprecator__valConv)r  oldClassNamenewClassnameConversionvalueConversions        ry   __init___EnumDeprecator.__init__  s;      %\N2\]e]n]n\o  pJ  K
((rx   c                    SS K nUR                  U R                  [        5        U R	                  U R
                  R                  X5      5      $ Nr   )warningswarnr  DeprecationWarningr  r  get)r  valr  s      ry   __call___EnumDeprecator.__call__  s8    d((*<=zz$..,,S677rx   c                    SS K nUR                  U R                  [        5        [	        U R
                  U R                  R                  X5      5      $ r  )r  r  r  r  getattrr  r  r  )r  keyr  s      ry   __getattr___EnumDeprecator.__getattr__	  s:    d((*<=tzz4??#6#6s#@AArx   c                    SS K nUR                  U R                  [        5        U R                  R                  U R                  R                  X5      5      $ r  )r  r  r  r  r  __getitem__r  r  )r  r  r  s      ry   r  _EnumDeprecator.__getitem__  s>    d((*<=zz%%doo&9&9$&EFFrx   )
__nameConv__new	__valConv__warnMessageN)r  r  r  zType[enum.Enum]r  zDict[str, Any]r  rT   )
rg   rh   ri   rj   rk   r  r  r  r  rw   rf   rx   ry   r  r    s+     gi  CE )8BGrx   r  )_
__future__r   __all__enumtypingrS   rT   rU   rV   rW   rX   rY   IntEnumr   r   IntFlagr   r   r   r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   Enumr   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   r  rf   rx   ry   <module>r     s)   "Pf  > > >dll (4<< %dll %$t|| 
4<< 
t|| T\\ 4
t|| 
DLL DLL "4<< >4<< & 0& &&#)t|| #)N dll  DLL $,, t||  $,, :DLL :. $,, a%$,, a%Lt|| $,, "R$)) R21TYY 1.+"DLL +"^E! E!RK,DLL K,^T\\ & &4 t|| 0,t|| ,  $,,  :$4<< $ $,,  2DLL %$,, %  !DLL !'$,, '2%$,, %2
DLL 
dll t|| T\\ DLL $4<< $DLL  2t|| 
4<< 
T\\  
dll 
t|| T\\ 8499 T\\ &T\\ t|| 4$,, 
8T\\ 
8$, $,PT\\ 	$,, 	t|| *T\\  DLL   dll >$ $. $T\\ $,, &G &Grx   