....................................../////.===Shadow-Here===./////................................................ > < > < > < > < > < > < > < > < > < > < > < > < > < > < > < > < > < > < > < > < > < > < > < > < > < > < > < > < > < ------------------------------------------------------------------------------------------------------------------- /////////////////////////////////////////////////////////////////////////////////////////////////////////////////// RIFF¤ WEBPVP8 ˜ ðÑ *ôô>‘HŸK¥¤"§£±¨àð enü¹%½_F‘åè¿2ºQú³íªú`N¿­3ÿƒügµJžaÿ¯ÿ°~¼ÎùnúîÞÖô•òíôÁÉß®Sm¥Ü/ ‡ó˜f£Ùà<˜„xëJ¢Ù€SO3x<ªÔ©4¿+ç¶A`q@Ì“Úñè™ÍÿJÌ´ª-˜ÆtÊÛL]Ïq*‘Ý”ì#ŸÌÏãY]@ê`¿ /ªfkØB4·®£ó z—Üw¥Pxù–ÞLШKÇN¾AkÙTf½è'‰g gÆv›Øuh~ a˜Z— ïj*á¥t d£“uÒ ¨`K˜¹ßþ]b>˜]_ÏÔ6W—è2r4x•íÖ…"ƒÖNîä!¦å Ú}ýxGøÌ —@ ;ÆÚŠ=ɾ1ý8lªË¥ô ^yf®Œ¢u&2©nÙÇ›ñÂñŒ³ aPo['½»øFùà­+4ê“$!lövlüÞ=;N®3ð‚õ›DÉKòÞ>ÄÍ ¥ˆuߤ#ˆ$6ù™¥îЇy’ÍB¼ çxÛ;X"WL£R÷͝*ó-¶Zu}º.s¸sšXqù–DþÿvªhüïwyŸ ¯é³lÀ:KCûÄ£Ëá\…­ ~—ýóî ¼ûûÜTÓüÇy…ŽÆvc»¾×U ñ¸žþоP÷¦ó:Ò¨¨5;Ð#&#ÖúñläÿÁœ GxÉ­/ñ‡áQðìYÉtÒw޼GÔ´zàÒò ð*ëzƒ•4~H]Ø‹f ñÓÈñ`NåWçs'ÆÏW^ø¹!XžµmQ5ÃËoLœÎ: ÞËÍ¥J ù…î èo£ßPÎñ¶ž8.Œ]ʵ~5›ÙË-ù*8ÙÖß±~ ©¹rÓê‚j¶d¸{^Q'˜±Crß ÚH—#¥¥QlÀ×ëã‡DÜ«èî þ&Çæžî;ŽÏºò6ÒLÃXy&ZŒ'j‚¢Ù€IßÚù+–MGi‰*jE€‘JcÜ ÓÌ EÏÚj]o˜ Þr <¾U ûŪæÍ/šÝH¥˜b”¼ ÁñßX GP›ï2›4WŠÏà×£…íÓk†¦H·ÅíMh–*nó÷à]ÁjCº€b7<ب‹¨5車bp2:Á[UªM„QŒçiNMa#<5›áËó¸HýÊ"…×Éw¹¦ì2º–x<›»a±¸3Weü®FÝ⑱ö–î–³|LPÈ~çð~Çå‡|º kD¢µÏàÆAI %1À% ¹Ò – ”ϝS¦‰4&¶£°à Öý”û_Ò Áw°A«Å€?mÇÛgHÉ/8)á¾ÛìáöŽP í¨PŸNÙµº¦‡§Ùš"ÿ«>+ªÕ`Ê÷‡‚ß Õû˜þãÇ-PÍ.¾XV‘€ dÜ"þ4¹ ±Oú‘©t¥¦FªÄÃÄ•b‚znýu½—#cDs˜ÃiÑOˆñ×QO=*IAÊ,¶ŽZƒ;‡wøXè%EÐk:F±Ú” .Ѽ+Áu&Ç`."pÈÉw o&¿dE6‘’EqTuK@Ì¥ã™À(Êk(h‰,H}RÀIXÛš3µ1©_OqÚÒJAñ$ÊÙÜ;D3çŒ[þùœh¬Ã³™ö6ç†NY".Ú‰ï[ªŸŒ '²Ð öø_¨ÂÉ9ué¶³ÒŠõTàîMØ#û¯gN‡bÙ놚X„ö …ÉeüÌ^J ‹€.œ$Æ)βÄeæW#óüßĺŸ€ ÀzwV 9oä»f4V*uB «Ë†¹ì¯žR霓æHXa=&“I4K;¯ç‹h×·"UŠ~<•╪Vêª&ÍSÃÆÅ?ÔqÎ*mTM ˜›µwêd#[C¡©§‘D<©àb†–ÁœøvH/,í:¯( ²£|4-„Æövv„Yͼ™^Á$ˆ„¢Û[6yB.åH*V¨æ?$=˜Ñ€•ñ·­(VlŸ‘ nÀt8W÷´Bûba?q9ú¶Xƒl«ÿ\ù¶’þòUÐj/õ¢Ìµ³g$ƒÎR!¸»|Oߍë’BhîÚÑ¢ñåŒJ„®„£2Ð3•ô02Nt…!£Í]Ïc½Qÿ?ˆ<&ÃA¾Ú,JˆijÌ#5yz„‰Î|ÊŽ5QÏ:‹ÐaóVÔxW—CpeÏzÐïíçôÿÅ_[hãsÐ_/ŽTÝ?BîˆííV$<¿i>²F¬_Eß¿ †bÊŒº­ÿ®Z H“C}”¬,Mp ý/Bá£w>˜YV°aƒúh+cŠ- r/[%|üUMHäQ°X»|û/@|°¥Ð !BÔ Ç¢Ä©š+Õì D«7ìN¶ŽðÔ " ƶ’ÖçtA‰Û×}{tþz­¾GÍ›k¹OEJR$ Â׃ «ëÁ"oÉôž$oUK(Ä)Ãz³Ê-‹êN[Ò3Œñbï8P 4ƒ×q¢bo|?<ÛX¬òÄͰL–±›(™ûG?ýË©ÚÄ–ÂDØÐ_Ç¡ô ¾–ÄÏø ×e8Ë©$ÄF¹Å‹ì[©óìl:F¾f´‹‹Xì²ï®\¬ôùƒ ÿat¥óèÒùHß0äe‚;ü×h:ÆWðHž=Ã8骣"kœ'Y?³}Tûè€>?0l›e1Lòñ„aæKÆw…hÖŠùW…ÈÆÄ0ši·›[pcwËþñiêíY/~-Á5˜!¿†A›™Mÿþ(±“t@â“ö2­´TG5yé]çå僳 .·ÍïçÝ7UÚ±Ð/Nè»,_Ï ùdj7\ï Wì4›„»c¸àešg#ÒÊ⥭áØo5‘?ÌdÝô¯ ¹kzsƒ=´#ëÉK›Ø´±-¥eW?‡çßtòTã…$Ý+qÿ±ƒ÷_3Ô¥í÷:æ–ž<·Ö‡‰Å¢ š‡%Ô—utÌÈìðžgÖÀz²À—ï÷Óîäõ{K'´È÷³yaÏÁjƒô}ž§®æÊydÕÈë5¯èˆõvÕ©ã*çD„ “z„Ó‡^^xÂ3M§A´JG‚öï 3W'ˆ.OvXè¡ÊÕª?5º7†˜(˜Ç¶#çê’¶!ÌdZK§æ 0fãaN]òY³RV ™î$®K2R¨`W!1Ôó\;Ý ýB%qæK•&ÓÈe9È0êI±žeŸß -ú@žQr¦ ö4»M¼Áè¹µmw 9 EÆE_°2ó„ŸXKWÁ×Hóì^´²GѝF©óäR†¦‰ç"V»eØ<3ùd3ÿÚ¤Žú“Gi" —‘_ÙËÎ~Üö¯¥½Î»üŸEÚŽåmÞþí ;ÞólËΦMzA"Âf(´òá;Éï(/7½ûñÌ­cïÕçлþÝz¾-ÍvÑ“pH­–ðÓj$¸Äû¤‚‘ãUBË-n“2åPkS5&‹Â|+g^œ®Ì͆d!OïäîU«c;{Û!ÅŽ«ëZ9Ókóˆ]¯ƒ›né `ÇÒ+tÆš (ØKá¾—=3œ®•vuMñg²\ï Ec€ 05±d™‡×iÇ×›UúvÌ¢£Èþ¡ÕØô¶ßÎA"ß±#Ö²ˆÊŸ¦*Ä~ij|àø.-¼'»Ú¥£h ofº¦‡VsR=N½„Î v˜Z*SÌ{=jÑB‹tê…;’HžH¯8–îDù8ñ¢|Q•bÛçš–‹m³“ê¨ åÏ^m¬Žãþ©ïêO‡½6] µÆ„Ooòü ²x}N¦Ë3ïé¿»€›HA˜m%çÞ/¿í7Fø“‹léUk)É°Œµ8Q8›:ÀŠeT*šõ~ôڝG6 ¢}`ùH­–”¡k ‰P1>š†®9z11!X wKfmÁ¦xÑ,N1Q”–æB¶M…ÒÃv6SMˆhU¬ÊPŽï‘öj=·CŒ¯u¹ƒVIЃsx4’ömÛýcå¡¶7ßŠß 57^\wÒÐÆ k§h,Œý î«q^R½3]J¸ÇðN ‚çU¬ôº^Áì} ³f©Õœ§ˆã:FÄÈ‚é(€™?àýÓüè1Gô£¼éj‚OÅñ  #>×—ßtà 0G¥Åa뀐kßhc™À_ÉñÞ#±)GD" YîäË-ÿÙ̪ ¹™a¯´¢E\ÝÒö‚;™„ë]_ p8‰o¡ñ+^÷ 3‘'dT4œŽ ðVë½° :¬víÑ«£tßÚS-3¶“þ2 †üüʨòrš¹M{É_¤`Û¨0ìjœøJ‡:÷ÃáZ˜†@GP&œÑDGÏs¡þ¦þDGú‘1Yá9Ôþ¼ ûø…§÷8&–ÜÑnÄ_m®^üÆ`;ÉVÁJ£?â€-ßê}suÍ2sõA NÌúA磸‘îÿÚ»ƒìö·á¿±tÑÐ"Tÿü˜[@/äj¬€uüªìù¥Ý˜á8Ý´sõj 8@rˆð äþZÇD®ÿUÏ2ùôõrBzÆÏÞž>Ì™xœ“ wiÎ×7_… ¸ \#€MɁV¶¥üÕÿPÔ9Z‡ø§É8#H:ƒ5ÀÝå9ÍIŒ5åKÙŠ÷qÄ>1AÈøžj"µÂд/ªnÀ qªã}"iŸBå˜ÓÛŽ¦…&ݧ;G@—³b¯“•"´4í¨ôM¨åñC‹ïùÉó¯ÓsSH2Ý@ßáM‡ˆKÀªÛUeø/4\gnm¥‹ŸŒ qÄ b9ÞwÒNÏ_4Ég³ú=܆‚´ •â¥õeíþkjz>éÚyU«Íӝ݃6"8/ø{=Ô¢»G¥ äUw°W«,ô—¿ãㆅү¢³xŠUû™yŒ (øSópÐ 9\åTâ»—*oG$/×ÍT†Y¿1¤Þ¢_‡ ¼ „±ÍçèSaÓ 3ÛMÁBkxs‰’R/¡¤ˆÙçª(*õ„üXÌ´ƒ E§´¬EF"Ù”R/ÐNyÆÂ^°?™6¡œïJ·±$§?º>ÖüœcNÌù¯G ‹ñ2ЁBB„^·úìaz¨k:#¨Æ¨8LÎõލ£^§S&cŒÐU€ü(‡F±Š¼&P>8ÙÁ ‰ p5?0ÊÆƒZl¸aô š¼¡}gÿ¶zÆC²¹¬ÎÖG*HB¡O<º2#ñŒAƒ–¡B˜´É$¥›É:FÀÔx¾u?XÜÏÓvN©RS{2ʈãk9rmP¼Qq̳ è¼ÐFׄ^¡Öì fE“F4A…!ì/…¦Lƒ… … $%´¾yã@CI¬ á—3PþBÏNÿ<ý°4Ü ËÃ#ØÍ~âW«rEñw‹eùMMHß²`¬Öó½íf³:‹k˜¯÷}Z!ã¿<¥,\#öµÀ¯aÒNÆIé,Ћ–lŽ#Àæ9ÀÒS·I’½-Ïp Äz¤Š Â* ­íÄ9­< h>׍3ZkËU¹§˜ŒŠ±f­’¤º³Q ÏB?‹#µíÃ¥®@(Gs«†vI¥Mµ‹Á©e~2ú³ÁP4ìÕi‚²Ê^ö@-DþÓàlÜOÍ]n"µã:žpsŽ¢:! Aõ.ç~ÓBûH÷JCÌ]õVƒd «ú´QÙEA–¯¯Œ!.ˆˆëQ±ù œ·Ì!Õâ )ùL„ÅÀlÚè5@B…o´Æ¸XÓ&Û…O«˜”_#‡ƒ„ûÈt!¤ÁÏ›ÎÝŠ?c9 â\>lÓÁVÄÑ™£eØY]:fÝ–—ù+p{™ðè û³”g±OƒÚSù£áÁÊ„ä,ï7š²G ÕÌBk)~ÑiCµ|h#u¤¶îK¨² #²vݯGãeÖ϶ú…¾múÀ¶þÔñ‚Š9'^($¤§ò “š½{éúp÷J›ušS¹áªCÂubÃH9™D™/ZöØÁ‡¦ÝÙŸ·kð*_”.C‹{áXó€‡c¡c€§/šò/&éš÷,àéJþ‰X›fµ“C¨œ®r¬"kL‰Â_q…Z–.ÉL~O µ›zn‚¹À¦Öª7\àHµšÖ %»ÇníV[¥*Õ;ƒ#½¾HK-ÖIÊdÏEÚ#=o÷Óò³´Š: Ç?{¾+9›–‘OEáU·S€˜j"ÄaÜ ŒÛWt› á–c#a»pÔZÞdŽtWê=9éöÊ¢µ~ ë ;Öe‡Œ®:bî3±ýê¢wà¼îpêñ¹¾4 zc¾ðÖÿzdêŒÑÒŝÀ‰s6¤í³ÎÙB¿OZ”+F¤á‡3@Ñëäg©·Ž ˆèª<ù@É{&S„œÕúÀA)‰h:YÀ5^ÂÓŒ°õäU\ ùËÍû#²?Xe¬tu‰^zÒÔãë¼ÛWtEtû …‚g¶Úüâî*moGè¨7%u!]PhÏd™Ý%Îx: VÒ¦ôÊD3ÀŽKÛËãvÆî…N¯ä>Eró–ð`5 Œ%u5XkñÌ*NU%¶áœÊ:Qÿú»“úzyÏ6å-၇¾ ´ ÒÊ]y žO‘w2Äøæ…H’²f±ÎÇ.ª|¥'gîV•Ü .̘¯€šòü¤U~Ù†*¢!?ò wý,}´°ÔÞnïoKq5µb!áÓ3"vAßH¡³¡·G(ÐÎ0Îò¼MG!/ài®@—¬04*`…«é8ªøøló“ˆÊ”èù¤…ßÊoÿé'ËuÌÖ5×È¡§ˆˆfŽë9}hìâ_!!¯  B&Ëö¶‰ÀAÙNVŸ Wh›¸®XÑJì¨ú“¿÷3uj²˜¨ÍÎìë±aúŠÝå¯ð*Ó¨ôJ“yºØ)m°WýOè68†ŸÏ2—‰Ïüꪫٚ¥‹l1 ø ÏÄFjêµvÌbü¦èÝx:X±¢H=MÐß—,ˆÉÇ´(9ú¾^ÅÚ4¿m‡$âX‘å%(AlZo@½¨UOÌÕ”1ø¸jÎÀÃÃ_ µ‘Ü.œº¦Ut: Æï’!=¯uwû#,“pþÇúŒø(é@?³ü¥‘Mo §—s@Œ#)§ŒùkL}NOÆêA›¸~r½¼ÙA—HJ«eˆÖ´*¡ÓpÌŸö.m<-"³ûÈ$¬_6­åf£ïÚâj1y§ÕJ½@dÞÁr&Í\Z%D£Íñ·AZ Û³øüd/ªAi†/Й~  ‡âĮҮÏh§°b—›Û«mJžòG'[ÈYýŒ¦9psl ýÁ ®±f¦x,‰½tN ‚Xª9 ÙÖH.«Lo0×?͹m¡å†Ѽ+›2ƒF ±Ê8 7Hցϓ²Æ–m9…òŸï]Â1äN†VLâCˆU .ÿ‰Ts +ÅÎx(%¦u]6AF Š ØF鈄‘ |¢¶c±soŒ/t[a¾–û:s·`i햍ê›ËchÈ…8ßÀUÜewŒðNOƒõD%q#éû\9¤x¹&UE×G¥ Í—™$ð E6-‡¼!ýpãÔM˜ Âsìe¯ñµK¢Ç¡ùôléœ4Ö£”À Š®Ðc ^¨À}ÙËŸ§›ºê{ÊuÉC ×Sr€¤’fÉ*j!úÓ’Gsùìoîßîn%ò· àc Wp÷$¨˜)û»H ×8ŽÒ€Zj¤3ÀÙºY'Ql¦py{-6íÔCeiØp‘‡XÊîÆUߢ܂ž£Xé¼Y8þ©ëgñß}é.ÎógÒ„ÃØËø¯»™§Xýy M%@NŠ À(~áÐvu7&•,Ù˜ó€uP‡^^®=_E„jt’ 403WebShell
403Webshell
Server IP : 66.235.200.170  /  Your IP : 3.17.142.93
Web Server : Apache
System : Linux gator4410.hostgator.com 5.14.0-162.23.1.9991722448259.nf.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Jul 31 18:11:45 UTC 2024 x86_64
User : bmgxafte ( 1214)
PHP Version : 8.2.28
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /usr/share/emacs/27.2/lisp/mh-e/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/share/emacs/27.2/lisp/mh-e/mh-thread.elc
;ELC
;;; Compiled
;;; in Emacs version 27.2
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.

;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(byte-code "\300\301!\210\300\302!\207" [require mh-e mh-scan] 2)
#@52 compiler-macro for inlining `mh-thread-message-p'.
(defalias 'mh-thread-message-p--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block mh-thread-message-p (and (memq (type-of cl-x) cl-struct-mh-thread-message-tags) t)) nil] 7 (#$ . 474)])
(put 'mh-thread-message-p 'compiler-macro 'mh-thread-message-p--cmacro)
(defalias 'mh-thread-message-p #[(cl-x) "\302!	>\205	\303\207" [cl-x cl-struct-mh-thread-message-tags type-of t] 2])
(byte-code "\300\301\302\303#\304\305\306\301#\207" [function-put mh-thread-message-p side-effect-free error-free put mh-thread-message cl-deftype-satisfies] 5)
#@46 compiler-macro for inlining `mh-message-id'.
(defalias 'mh-message-id--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block mh-message-id (progn (or (mh-thread-message-p cl-x) (signal 'wrong-type-argument (list 'mh-thread-message cl-x))) (aref cl-x 1))) nil] 7 (#$ . 1126)])
(put 'mh-message-id 'compiler-macro 'mh-message-id--cmacro)
#@54 Access slot "id" of `mh-thread-message' struct CL-X.
(defalias 'mh-message-id #[(cl-x) "\302!	>\204\303\304\305D\"\210\306H\207" [cl-x cl-struct-mh-thread-message-tags type-of signal wrong-type-argument mh-thread-message 1] 4 (#$ . 1521)])
(byte-code "\300\301\302\303#\300\207" [function-put mh-message-id side-effect-free t] 4)
#@54 compiler-macro for inlining `mh-message-references'.
(defalias 'mh-message-references--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block mh-message-references (progn (or (mh-thread-message-p cl-x) (signal 'wrong-type-argument (list 'mh-thread-message cl-x))) (aref cl-x 2))) nil] 7 (#$ . 1862)])
(put 'mh-message-references 'compiler-macro 'mh-message-references--cmacro)
#@62 Access slot "references" of `mh-thread-message' struct CL-X.
(defalias 'mh-message-references #[(cl-x) "\302!	>\204\303\304\305D\"\210\306H\207" [cl-x cl-struct-mh-thread-message-tags type-of signal wrong-type-argument mh-thread-message 2] 4 (#$ . 2297)])
(byte-code "\300\301\302\303#\300\207" [function-put mh-message-references side-effect-free t] 4)
#@51 compiler-macro for inlining `mh-message-subject'.
(defalias 'mh-message-subject--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block mh-message-subject (progn (or (mh-thread-message-p cl-x) (signal 'wrong-type-argument (list 'mh-thread-message cl-x))) (aref cl-x 3))) nil] 7 (#$ . 2662)])
(put 'mh-message-subject 'compiler-macro 'mh-message-subject--cmacro)
#@59 Access slot "subject" of `mh-thread-message' struct CL-X.
(defalias 'mh-message-subject #[(cl-x) "\302!	>\204\303\304\305D\"\210\306H\207" [cl-x cl-struct-mh-thread-message-tags type-of signal wrong-type-argument mh-thread-message 3] 4 (#$ . 3082)])
(byte-code "\300\301\302\303#\300\207" [function-put mh-message-subject side-effect-free t] 4)
#@56 compiler-macro for inlining `mh-message-subject-re-p'.
(defalias 'mh-message-subject-re-p--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block mh-message-subject-re-p (progn (or (mh-thread-message-p cl-x) (signal 'wrong-type-argument (list 'mh-thread-message cl-x))) (aref cl-x 4))) nil] 7 (#$ . 3438)])
(put 'mh-message-subject-re-p 'compiler-macro 'mh-message-subject-re-p--cmacro)
#@64 Access slot "subject-re-p" of `mh-thread-message' struct CL-X.
(defalias 'mh-message-subject-re-p #[(cl-x) "\302!	>\204\303\304\305D\"\210\306H\207" [cl-x cl-struct-mh-thread-message-tags type-of signal wrong-type-argument mh-thread-message 4] 4 (#$ . 3883)])
(byte-code "\300\301\302\303#\304\305\306\"\207" [function-put mh-message-subject-re-p side-effect-free t defalias copy-mh-thread-message copy-sequence] 4)
#@120 compiler-macro for inlining `mh-thread-make-message'.

(fn CL-WHOLE &cl-quote &key ID REFERENCES SUBJECT SUBJECT-RE-P)
(defalias 'mh-thread-make-message--cmacro #[(cl-whole &rest #1=#:--cl-rest--) "\306\307\"A@\306\310\"A@\306\311\"\206\312A@\306\313\"A@
\203L
@\314>\2035
AA\211\202#\315>A@\203C\316\211\202#\317\320
@\"\210\202\")\321\322\323\316\316	\n\f&	,\207" [#1# id references subject subject-re-p #2=#:--cl-keys-- plist-member :id :references :subject (nil "") :subject-re-p (:id :references :subject :subject-re-p :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:id :references :subject :subject-re-p)" cl--defsubst-expand (id references subject subject-re-p) (cl-block mh-thread-make-message (record 'mh-thread-message id references subject subject-re-p)) cl-whole] 11 (#$ . 4311)])
(put 'mh-thread-make-message 'compiler-macro 'mh-thread-make-message--cmacro)
#@100 Constructor for objects of type `mh-thread-message'.

(fn &key ID REFERENCES SUBJECT SUBJECT-RE-P)
(defalias 'mh-thread-make-message #[(&rest #1=#:--cl-rest--) "\306\307\"A@\306\310\"A@\306\311\"\206\312A@\306\313\"A@
\203L
@\314>\2035
AA\211\202#\315>A@\203C\316\211\202#\317\320
@\"\210\202\")\321\322	\n\f%,\207" [#1# id references subject subject-re-p #2=#:--cl-keys-- plist-member :id :references :subject (nil "") :subject-re-p (:id :references :subject :subject-re-p :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:id :references :subject :subject-re-p)" record mh-thread-message] 7 (#$ . 5246)])
(byte-code "\300\301\302\303#\304\305\306\307\310\306\311\312\305\303&	\207" [function-put mh-thread-make-message side-effect-free t cl-struct-define mh-thread-message nil cl-structure-object record ((cl-tag-slot) (id nil) (references nil) (subject "") (subject-re-p nil)) cl-struct-mh-thread-message-tags] 11)
#@54 compiler-macro for inlining `mh-thread-container-p'.
(defalias 'mh-thread-container-p--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block mh-thread-container-p (and (memq (type-of cl-x) cl-struct-mh-thread-container-tags) t)) nil] 7 (#$ . 6222)])
(put 'mh-thread-container-p 'compiler-macro 'mh-thread-container-p--cmacro)
(defalias 'mh-thread-container-p #[(cl-x) "\302!	>\205	\303\207" [cl-x cl-struct-mh-thread-container-tags type-of t] 2])
(byte-code "\300\301\302\303#\304\305\306\301#\207" [function-put mh-thread-container-p side-effect-free error-free put mh-thread-container cl-deftype-satisfies] 5)
#@53 compiler-macro for inlining `mh-container-message'.
(defalias 'mh-container-message--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block mh-container-message (progn (or (mh-thread-container-p cl-x) (signal 'wrong-type-argument (list 'mh-thread-container cl-x))) (aref cl-x 1))) nil] 7 (#$ . 6895)])
(put 'mh-container-message 'compiler-macro 'mh-container-message--cmacro)
#@61 Access slot "message" of `mh-thread-container' struct CL-X.
(defalias 'mh-container-message #[(cl-x) "\302!	>\204\303\304\305D\"\210\306H\207" [cl-x cl-struct-mh-thread-container-tags type-of signal wrong-type-argument mh-thread-container 1] 4 (#$ . 7329)])
(byte-code "\300\301\302\303#\300\207" [function-put mh-container-message side-effect-free t] 4)
#@52 compiler-macro for inlining `mh-container-parent'.
(defalias 'mh-container-parent--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block mh-container-parent (progn (or (mh-thread-container-p cl-x) (signal 'wrong-type-argument (list 'mh-thread-container cl-x))) (aref cl-x 2))) nil] 7 (#$ . 7695)])
(put 'mh-container-parent 'compiler-macro 'mh-container-parent--cmacro)
#@60 Access slot "parent" of `mh-thread-container' struct CL-X.
(defalias 'mh-container-parent #[(cl-x) "\302!	>\204\303\304\305D\"\210\306H\207" [cl-x cl-struct-mh-thread-container-tags type-of signal wrong-type-argument mh-thread-container 2] 4 (#$ . 8124)])
(byte-code "\300\301\302\303#\300\207" [function-put mh-container-parent side-effect-free t] 4)
#@54 compiler-macro for inlining `mh-container-children'.
(defalias 'mh-container-children--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block mh-container-children (progn (or (mh-thread-container-p cl-x) (signal 'wrong-type-argument (list 'mh-thread-container cl-x))) (aref cl-x 3))) nil] 7 (#$ . 8487)])
(put 'mh-container-children 'compiler-macro 'mh-container-children--cmacro)
#@62 Access slot "children" of `mh-thread-container' struct CL-X.
(defalias 'mh-container-children #[(cl-x) "\302!	>\204\303\304\305D\"\210\306H\207" [cl-x cl-struct-mh-thread-container-tags type-of signal wrong-type-argument mh-thread-container 3] 4 (#$ . 8926)])
(byte-code "\300\301\302\303#\300\207" [function-put mh-container-children side-effect-free t] 4)
#@58 compiler-macro for inlining `mh-container-real-child-p'.
(defalias 'mh-container-real-child-p--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block mh-container-real-child-p (progn (or (mh-thread-container-p cl-x) (signal 'wrong-type-argument (list 'mh-thread-container cl-x))) (aref cl-x 4))) nil] 7 (#$ . 9295)])
(put 'mh-container-real-child-p 'compiler-macro 'mh-container-real-child-p--cmacro)
#@66 Access slot "real-child-p" of `mh-thread-container' struct CL-X.
(defalias 'mh-container-real-child-p #[(cl-x) "\302!	>\204\303\304\305D\"\210\306H\207" [cl-x cl-struct-mh-thread-container-tags type-of signal wrong-type-argument mh-thread-container 4] 4 (#$ . 9754)])
(byte-code "\300\301\302\303#\304\305\306\"\207" [function-put mh-container-real-child-p side-effect-free t defalias copy-mh-thread-container copy-sequence] 4)
#@124 compiler-macro for inlining `mh-thread-make-container'.

(fn CL-WHOLE &cl-quote &key MESSAGE PARENT CHILDREN REAL-CHILD-P)
(defalias 'mh-thread-make-container--cmacro #[(cl-whole &rest #1=#:--cl-rest--) "\306\307\"A@\306\310\"A@\306\311\"A@\306\312\"\206\313A@
\203L
@\314>\2035
AA\211\202#\315>A@\203C\316\211\202#\317\320
@\"\210\202\")\321\322\323\316\316	\n\f&	,\207" [#1# message parent children real-child-p #2=#:--cl-keys-- plist-member :message :parent :children :real-child-p (nil t) (:message :parent :children :real-child-p :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:message :parent :children :real-child-p)" cl--defsubst-expand (message parent children real-child-p) (cl-block mh-thread-make-container (record 'mh-thread-container message parent children real-child-p)) cl-whole] 11 (#$ . 10194)])
(put 'mh-thread-make-container 'compiler-macro 'mh-thread-make-container--cmacro)
#@104 Constructor for objects of type `mh-thread-container'.

(fn &key MESSAGE PARENT CHILDREN REAL-CHILD-P)
(defalias 'mh-thread-make-container #[(&rest #1=#:--cl-rest--) "\306\307\"A@\306\310\"A@\306\311\"A@\306\312\"\206\313A@
\203L
@\314>\2035
AA\211\202#\315>A@\203C\316\211\202#\317\320
@\"\210\202\")\321\322	\n\f%,\207" [#1# message parent children real-child-p #2=#:--cl-keys-- plist-member :message :parent :children :real-child-p (nil t) (:message :parent :children :real-child-p :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:message :parent :children :real-child-p)" record mh-thread-container] 7 (#$ . 11155)])
(byte-code "\300\301\302\303#\304\305\306\307\310\306\311\312\305\303&	\207" [function-put mh-thread-make-container side-effect-free t cl-struct-define mh-thread-container nil cl-structure-object record ((cl-tag-slot) (message) (parent) (children) (real-child-p t)) cl-struct-mh-thread-container-tags] 11)
#@54 Hash table used to canonicalize message identifiers.
(defvar mh-thread-id-hash nil (#$ . 12142))
(make-variable-buffer-local 'mh-thread-id-hash)
#@50 Hash table used to canonicalize subject strings.
(defvar mh-thread-subject-hash nil (#$ . 12293))
(make-variable-buffer-local 'mh-thread-subject-hash)
#@70 Thread ID table maps from message identifiers to message containers.
(defvar mh-thread-id-table nil (#$ . 12450))
(make-variable-buffer-local 'mh-thread-id-table)
#@57 Table to look up message identifier from message index.
(defvar mh-thread-index-id-map nil (#$ . 12619))
(make-variable-buffer-local 'mh-thread-index-id-map)
#@64 Table to look up message index number from message identifier.
(defvar mh-thread-id-index-map nil (#$ . 12783))
(make-variable-buffer-local 'mh-thread-id-index-map)
#@47 Hash table used to group messages by subject.
(defvar mh-thread-subject-container-hash nil (#$ . 12954))
(make-variable-buffer-local 'mh-thread-subject-container-hash)
#@73 Hash table used to associate messages with the same message identifier.
(defvar mh-thread-duplicates nil (#$ . 13128))
(make-variable-buffer-local 'mh-thread-duplicates)
#@289 Variable to remember the transformations to the thread tree.
When new messages are added, these transformations are rewound,
then the links are added from the newly seen messages. Finally
the transformations are redone to get the new thread tree. This
makes incremental threading easier.
(defvar mh-thread-history nil (#$ . 13305))
(make-variable-buffer-local 'mh-thread-history)
#@68 Width of scan substring that contains subject and body of message.
(defvar mh-thread-body-width nil (#$ . 13691))
#@269 Display ancestor of current message.

If you do not care for the way a particular thread has turned,
you can move up the chain of messages with this command. This
command can also take a prefix argument THREAD-ROOT-FLAG to jump
to the message that started everything.
(defalias 'mh-thread-ancestor #[(&optional thread-root-flag) "\303 \210\304>\204\305\306!\210\202m\203\305\307!\210\310 \n\203)\311 \204\312 \202:	\313\232\2035\314\315!\202:\311 \210\312 )\207" [mh-view-ops current-level thread-root-flag beginning-of-line unthread error "Folder isn't threaded" "No message at point" mh-thread-current-indentation-level mh-thread-immediate-ancestor mh-maybe-show 1 message "Message has no ancestor"] 2 (#$ . 13812) "P"])
#@16 Delete thread.
(defalias 'mh-thread-delete #[nil "\303>\204\n\304\305!\207m\203\304\306!\207\307 \212	@b\210\310 \210`	A@X\2039m\2049\311\n!\2033\312\313!\210\314y\210\202)\315 )\207" [mh-view-ops region mh-scan-valid-regexp unthread error "Folder isn't threaded" "No message at point" mh-thread-find-children beginning-of-line looking-at mh-delete-a-msg nil 1 mh-next-msg] 2 (#$ . 14555) nil])
#@99 Display next sibling.

With non-nil optional argument PREVIOUS-FLAG jump to the previous
sibling.
(defalias 'mh-thread-next-sibling #[(&optional previous-flag) "\306>\204
\307\310!\210\202m\203\307\311!\210\312 \210`\313\314 \n\204]\f\203+\315\202,\316y\317\232\203]m\204]\314 \211	\232\203D\320\202Y
	W\203Y\321\322\f\203T\323\202U\324\"\210\325)\202\n\326\267\202m\327 \202|b\202|\321\322\f\203w\323\202x\324\"\210b+\207" [mh-view-ops my-level done point previous-flag level unthread error "Folder isn't threaded" "No message at point" beginning-of-line nil mh-thread-current-indentation-level -1 1 0 success message "No %s sibling" "previous" "next" failure #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (success 99 failure 104)) mh-maybe-show] 4 (#$ . 14966) nil])
#@27 Display previous sibling.
(defalias 'mh-thread-previous-sibling #[nil "\300\301!\207" [mh-thread-next-sibling t] 2 (#$ . 15811) nil])
#@37 Refile (output) thread into FOLDER.
(defalias 'mh-thread-refile #[(folder) "\304>\204\n\305\306!\207m\203\305\307!\207\310 \212	@b\210\311 \210`	A@X\203:m\204:\312\n!\2034\313\314\"\210\315y\210\202)\316 )\207" [mh-view-ops region mh-scan-valid-regexp folder unthread error "Folder isn't threaded" "No message at point" mh-thread-find-children beginning-of-line looking-at mh-refile-a-msg nil 1 mh-next-msg] 3 (#$ . 15951) (list (intern (mh-prompt-for-refile-folder)))])
#@33 Toggle threaded view of folder.
(defalias 'mh-toggle-threads #[nil "\306\307!\310 \307\311>\203P\312\311!\204\313\314!\210\307eb\210m\2045\306\307!\211\203.
\fB)\307y\210\202\315\316\317\320\f!\"\321#\210)\203W\322 \210\323 \210\202W\324 \210\311B\n\203a\325\n\321\211#\210\326	!\210\327\307!+\207" [buffer-read-only old-buffer-modified-flag msg-at-point mh-view-ops msg-list index mh-get-msg-num nil buffer-modified-p unthread mh-valid-view-change-operation-p error "Can't unthread folder" mh-scan-folder mapcar #[(x) "\301\302\"\207" [x format "%s"] 3] mh-coalesce-msg-list t mh-index-insert-folder-headers mh-notate-cur mh-thread-folder mh-goto-msg set-buffer-modified-p mh-recenter mh-current-folder mh-index-data] 7 (#$ . 16439) nil])
#@65 Find the number of spaces by which current message is indented.
(defalias 'mh-thread-current-indentation-level #[nil "\212\305	\n\306$\307\310 \210\fu\210\311\312f\313\"\203!T\312u\210\202+\207" [mh-cmd-note mh-scan-date-flag-width mh-scan-date-width level address-start-offset + 1 0 beginning-of-line char-equal nil 32] 5 (#$ . 17209)])
#@44 Jump to immediate ancestor in thread tree.
(defalias 'mh-thread-immediate-ancestor #[nil "\303 \210`\304 \305Z\306	\307W?\2053\204+\310y\307\232\203+	\304 \232\203\311\211\203\2042\nb\210+\207" [done ancestor-level point beginning-of-line mh-thread-current-indentation-level 2 nil 0 -1 t] 4 (#$ . 17562)])
#@206 Return a region containing the current message and its children.
The result is returned as a list of two elements. The first is
the point at the start of the region and the second is the point
at the end.
(defalias 'mh-thread-find-children #[nil "\306 \210m?\205V\307	\n\310$\311 \312\211`\313\211\314
T\"\315\"\312y\210\3162Qm?\205Pu\210\317\f\320`\321 \"\"\322\232\204J\306 \210\323u\210\324\316\312\"\210\312y\210\202)0\210`,D\207" [mh-cmd-note mh-scan-date-flag-width mh-scan-date-width begin spaces level beginning-of-line + 1 mh-thread-current-indentation-level nil format "%%%ss" "" --cl-block-nil-- string-match buffer-substring-no-properties mh-line-end-position 0 -1 throw address-start-offset] 5 (#$ . 17890)])
#@33 Generate thread view of folder.
(defalias 'mh-thread-folder #[nil "\306\307\310 \"\210\311 \210eb\210\312 \210\313edB\247\203:\314edB\315\211#\203,edB\211\316\n\317 \f#\210*	B)\202,edB:\203\221edB@\247\203\221edBA\247\203\221\212edB@b\210\320 \210`edBAX\203\215m\204\215\321
!\203\207\322\315!\211 \316\317  #\210*	B)\323y\210\202[)\202,edB\203\246edB9\203\246\324edB!\202\272edB;\203\267\325!edB\"\202\272edB\326 \"\211#\313\211$\203\346$@\211%\"&\316%\315&#\210*$A\211$\204\311*\212eb\210\320 \210`dX\203+m\204+\321
!\203%\322\315!'\327'\"\"\203$'\211()\316(\317 )#\210*	B))\323y\210\202\356+\330!*\331\310 *\"+ed|\210\332+!\210\333 \210\334 \210\335 \210\306\336\310 \"+\207" [msg-list msg #1=#:v mh-thread-scan-line-map #2=#:v mh-scan-valid-regexp message "Threading %s..." buffer-name mh-thread-initialize mh-remove-all-notation nil mh-goto-msg t puthash mh-thread-parse-scan-line beginning-of-line looking-at mh-get-msg-num 1 mh-seq-to-msgs mh-translate-range make-hash-table gethash mh-coalesce-msg-list mh-thread-generate mh-thread-print-scan-lines mh-notate-user-sequences mh-notate-deleted-and-refiled mh-notate-cur "Threading %s...done" #3=#:v #4=#:v mh-current-folder #5=#:seq-hash-table #6=#:msgs --dolist-tail-- #7=#:v #8=#:v v #9=#:v #10=#:v range thread-tree] 5 (#$ . 18634)])
#@93 Update thread tree for FOLDER.
All messages after START-POINT are added to the thread tree.
(defalias 'mh-thread-inc #[(folder start-point) "\306 \210\307 \210b\210\310m\204/\311\310!\211\247\203(\n	B\n\f\312\313 
#\210*\310y\210)\202\314	\"\310\315 ed|\210\316!\210\317 \210\320 \210\321 \210\322!,\207" [start-point msg-list index #1=#:v mh-thread-scan-line-map #2=#:v mh-thread-rewind-pruning mh-remove-all-notation nil mh-get-msg-num puthash mh-thread-parse-scan-line mh-thread-generate buffer-modified-p mh-thread-print-scan-lines mh-notate-user-sequences mh-notate-deleted-and-refiled mh-notate-cur set-buffer-modified-p folder old-buffer-modified-flag buffer-read-only thread-tree] 5 (#$ . 20004)])
#@91 Initialize the hash table in VAR.
TEST is the test to use when creating a new hash table.
(defalias 'mh-thread-initialize-hash '(macro . #[(var test) "9\204\n\302\303\"\210\304\305D\306\307\310	EEF\207" [var test error "Expected a symbol: %s" if clrhash setq make-hash-table :test] 8 (#$ . 20739)]))
#@57 Make new hash tables, or clear them if already present.
(defalias 'mh-thread-initialize #[nil "\203\306!\210\202\307\310\311\"	\203\306	!\210\202 \307\310\311\"\n\203+\306\n!\210\2020\307\310\312\"\203;\306!\210\202@\307\310\312\"\f\203K\306\f!\210\202P\307\310\313\"
\203[\306
!\210\202`\307\310\313\"
\203m\306
!\210\202s\307\310\312\"
\203\200\306!\210\202\206\307\310\312\"\314\211\207" [mh-thread-id-hash mh-thread-subject-hash mh-thread-id-table mh-thread-id-index-map mh-thread-index-id-map mh-thread-scan-line-map clrhash make-hash-table :test equal eq eql nil mh-thread-subject-container-hash mh-thread-duplicates mh-thread-history] 3 (#$ . 21051)])
#@160 Given ID, return the corresponding container in `mh-thread-id-table'.
If no container exists then a suitable container is created and
the id-table is updated.
(defalias 'mh-thread-id-container #[(id) "\204\305\306!\210\307	\"\206(	\310\n\311\312\313\314\313%\311\315\f\313\211\316%)#*\207" [id mh-thread-id-table #1=#:v #2=#:v message error "1" gethash puthash record mh-thread-message nil "" mh-thread-container t] 8 (#$ . 21757)])
(put 'mh-thread-id-container 'byte-optimizer 'byte-compile-inline-expand)
#@43 Remove parent link of CHILD if it exists.
(defalias 'mh-thread-remove-parent-link #[(child) "\306!	>\203\f\2029\211\204\307\310!\210\311\n\"\2068\n\312\f\313\314\n\315\316\315%\313\317\315\211\320%)
#*)\306!	>\204L\321\322\317D\"\210\323H\211\205\316\306!	>\204g\321\322\317D\"\210\211\324\306!	>\204~\321\322\317D\"\210\324H\315\211:\203\255@=\204\244BA\211\202\214\237+I\210)\306!	>\204\305\321\322\317D\"\210\211\323\315I)*\207" [child cl-struct-mh-thread-container-tags id mh-thread-id-table #1=#:v #2=#:v type-of error "1" gethash puthash record mh-thread-message nil "" mh-thread-container t signal wrong-type-argument 2 3 message child-container parent-container #3=#:v #4=#:--cl-var-- elem #5=#:--cl-var-- #6=#:v] 9 (#$ . 22281)])
(put 'mh-thread-remove-parent-link 'byte-optimizer 'byte-compile-inline-expand)
#@225 Add links so that PARENT becomes a parent of CHILD.
Doesn't make any changes if CHILD is already an ancestor of
PARENT. If optional argument AT-END-P is non-nil, the CHILD is
added to the end of the children list of PARENT.
(defalias 'mh-thread-add-link #[(parent child &optional at-end-p) "\204\306\202A\307!	>\203\202A\211\204\310\311!\210\312\n\"\206@\n\313\f\314\315\n\306\316\306%\314\317\306\211\320%)
#*)\307!	>\203O\202}\211\204Z\310\311!\210\312\n\"\206|\n\313\f\314\315\n\306\316\306%\314\317\306\211\320%)
#*)\211\203\321\"\204\321\"\204\307!	>\203\251\202\327\211\204\264\310\311!\210\312\n\"\206\326\n\313\f\314\315\n\306\316\306%\314\317\306\211\320%)
#*)\307!	>\204\352\322\323\317D\"\210\324H\211\205l\307!	>\204\322\323\317D\"\210\211\325\307!	>\204\322\323\317D\"\210\325H\306\211:\203K@=\204BBA\211\202*\237+I\210)\307!	>\204c\322\323\317D\"\210\211\324\306I)+\210\204\227\307!	>\204\204\322\323\317D\"\210\211 \325 \325HBI\210)\202\307!	>\204\250\322\323\317D\"\210\325H\204\323\307!	>\204\300\322\323\317D\"\210\211!\325!\325HBI\210)\202\307!	>\204\344\322\323\317D\"\210\325H\211\"A\203\370\"A\211\"\202\353\"\306B\241\210)\307!	>\204\322\323\317D\"\210\211#\324I\210)?\205\371\307!	>\2035\202c\211\204@\310\311!\210\312\n\"\206b\n\313\f\314\315\n\306\316\306%\314\317\306\211\320%)
#*)\307!	>\204v\322\323\317D\"\210\324H\211\205\370\307!	>\204\221\322\323\317D\"\210\211\325\307!	>\204\250\322\323\317D\"\210\325H\306\211:\203\327@=\204\316BA\211\202\266\237+I\210)\307!	>\204\357\322\323\317D\"\210\211\324\306I)+*\207" [parent cl-struct-mh-thread-container-tags id mh-thread-id-table #1=#:v #2=#:v nil type-of error "1" gethash puthash record mh-thread-message "" mh-thread-container t mh-thread-ancestor-p signal wrong-type-argument 2 3 message child child-container parent-container #3=#:v #4=#:--cl-var-- elem #5=#:--cl-var-- #6=#:v at-end-p #7=#:v #8=#:v last-child #9=#:v] 10 (#$ . 23192)])
(put 'mh-thread-add-link 'byte-optimizer 'byte-compile-inline-expand)
#@54 Restore the thread tree to its state before pruning.
(defalias 'mh-thread-rewind-pruning #[nil "\205 \f\211A\242\211@\306=\203\374	A@\307\n!>\203!\n\202R\n\211\204+\310\311!\210\312\f
\"\206Q\f
\313\314\315\f\316\317\316%\314\320\316\211\321%)#*)\307!>\204e\322\323\320D\"\210\324H\211\205\347\307!>\204\200\322\323\320D\"\210\211\325\307!>\204\227\322\323\320D\"\210\325H \316\211!\" :\203\306 @!!=\204\275!\"B\" A\211 \202\245\"\237+I\210)\307!>\204\336\322\323\320D\"\210\211#\324\316I)+\210	AA@	A@\316$\211%\204\376\316\202>\307%!>\203\f%\202>%\211\204\310\311!\210\312\f
\"\206=\f
\313\314\315\f\316\317\316%\314\320\316\211\321%)#*)\307\n!>\203J\n\202{\n\211\204T\310\311!\210\312\f
\"\206z\f
\313\314\315\f\316\317\316%\314\320\316\211\321%)#*)\211\203\326\"\204\326\"\204\307\n!>\203\244\n\202\325\n\211\204\256\310\311!\210\312\f
\"\206\324\f
\313\314\315\f\316\317\316%\314\320\316\211\321%)#*)\307!>\204\350\322\323\320D\"\210\324H\211\205j\307!>\204\322\323\320D\"\210\211\325\307!>\204\322\323\320D\"\210\325H \316\211!\" :\203I @!!=\204@!\"B\" A\211 \202(\"\237+I\210)\307!>\204a\322\323\320D\"\210\211#\324\316I)+\210$\204\225\307!>\204\202\322\323\320D\"\210\211&\325&\325HBI\210)\202\377\307!>\204\246\322\323\320D\"\210\325H\204\321\307!>\204\276\322\323\320D\"\210\211'\325'\325HBI\210)\202\377\307!>\204\342\322\323\320D\"\210\325H\211(A\203\366(A\211(\202\351(\316B\241\210)\307!>\204\322\323\320D\"\210\211)\324I\210)?\205\367\307\n!>\2030\n\202a\n\211\204:\310\311!\210\312\f
\"\206`\f
\313\314\315\f\316\317\316%\314\320\316\211\321%)#*)\307!>\204t\322\323\320D\"\210\324H\211\205\366\307!>\204\217\322\323\320D\"\210\211\325\307!>\204\246\322\323\320D\"\210\325H \316\211!\" :\203\325 @!!=\204\314!\"B\" A\211 \202\264\"\237+I\210)\307!>\204\355\322\323\320D\"\210\211#\324\316I)+-\210\202\f	@\327=\203	A@	AA@	AAA*%+*\316\211,\203
,@\211\307\n!>\2030\n\202a\n\211\204:\310\311!\210\312\f
\"\206`\f
\313\314\315\f\316\317\316%\314\320\316\211\321%)#*)\307!>\204t\322\323\320D\"\210\324H\211\205\366\307!>\204\217\322\323\320D\"\210\211\325\307!>\204\246\322\323\320D\"\210\325H \316\211!\" :\203\325 @!!=\204\314!\"B\" A\211 \202\264\"\237+I\210)\307!>\204\355\322\323\320D\"\210\211#\324\316I)+\210+\n\316$\211%\204	\316\202I\307%!>\203%\202I%\211\204\"\310\311!\210\312\f
\"\206H\f
\313\314\315\f\316\317\316%\314\320\316\211\321%)#*)\307\n!>\203U\n\202\206\n\211\204_\310\311!\210\312\f
\"\206\205\f
\313\314\315\f\316\317\316%\314\320\316\211\321%)#*)\211\203&\326\"\204&\326\"\204&\307\n!>\203\257\n\202\340\n\211\204\271\310\311!\210\312\f
\"\206\337\f
\313\314\315\f\316\317\316%\314\320\316\211\321%)#*)\307!>\204\363\322\323\320D\"\210\324H\211\205u\307!>\204\322\323\320D\"\210\211\325\307!>\204%\322\323\320D\"\210\325H \316\211!\" :\203T @!!=\204K!\"B\" A\211 \2023\"\237+I\210)\307!>\204l\322\323\320D\"\210\211#\324\316I)+\210$\204\240\307!>\204\215\322\323\320D\"\210\211&\325&\325HBI\210)\202\n\307!>\204\261\322\323\320D\"\210\325H\204\334\307!>\204\311\322\323\320D\"\210\211'\325'\325HBI\210)\202\n\307!>\204\355\322\323\320D\"\210\325H\211(A\203(A\211(\202\364(\316B\241\210)\307!>\204\322\323\320D\"\210\211)\324I\210)?\205\307\n!>\203;\n\202l\n\211\204E\310\311!\210\312\f
\"\206k\f
\313\314\315\f\316\317\316%\314\320\316\211\321%)#*)\307!>\204\322\323\320D\"\210\324H\211\205\307!>\204\232\322\323\320D\"\210\211\325\307!>\204\261\322\323\320D\"\210\325H \316\211!\" :\203\340 @!!=\204\327!\"B\" A\211 \202\277\"\237+I\210)\307!>\204\370\322\323\320D\"\210\211#\324\316I)+-\210,A\211,\204*%+\316$\211%\204 \316\202`\307%!>\203.%\202`%\211\2049\310\311!\210\312\f
\"\206_\f
\313\314\315\f\316\317\316%\314\320\316\211\321%)#*)\307\n!>\203l\n\202\235\n\211\204v\310\311!\210\312\f
\"\206\234\f
\313\314\315\f\316\317\316%\314\320\316\211\321%)#*)\211\203=\n\326\"\204=\n\326\"\204=\n\307\n!>\203\306\n\202\367\n\211\204\320\310\311!\210\312\f
\"\206\366\f
\313\314\315\f\316\317\316%\314\320\316\211\321%)#*)\307!>\204\n	\322\323\320D\"\210\324H\211\205\214	\307!>\204%	\322\323\320D\"\210\211\325\307!>\204<	\322\323\320D\"\210\325H \316\211!\" :\203k	 @!!=\204b	!\"B\" A\211 \202J	\"\237+I\210)\307!>\204\203	\322\323\320D\"\210\211#\324\316I)+\210$\204\267	\307!>\204\244	\322\323\320D\"\210\211&\325&\325HBI\210)\202!\n\307!>\204\310	\322\323\320D\"\210\325H\204\363	\307!>\204\340	\322\323\320D\"\210\211'\325'\325HBI\210)\202!\n\307!>\204\n\322\323\320D\"\210\325H\211(A\203\n(A\211(\202\n(\316B\241\210)\307!>\2042\n\322\323\320D\"\210\211)\324I\210)?\205\307\n!>\203R\n\n\202\203\n\n\211\204\\\n\310\311!\210\312\f
\"\206\202\n\f
\313\314\315\f\316\317\316%\314\320\316\211\321%)#*)\307!>\204\226\n\322\323\320D\"\210\324H\211\205\307!>\204\261\n\322\323\320D\"\210\211\325\307!>\204\310\n\322\323\320D\"\210\325H \316\211!\" :\203\367\n @!!=\204\356\n!\"B\" A\211 \202\326\n\"\237+I\210)\307!>\204\322\323\320D\"\210\211#\324\316I)+-\210+\202\f	@\330=\203\f	A@\211+\307\n!>\2039\n\202j\n\211\204C\310\311!\210\312\f
\"\206i\f
\313\314\315\f\316\317\316%\314\320\316\211\321%)#*)\307!>\204}\322\323\320D\"\210\324H\211\205\377\307!>\204\230\322\323\320D\"\210\211\325\307!>\204\257\322\323\320D\"\210\325H \316\211!\" :\203\336 @!!=\204\325!\"B\" A\211 \202\275\"\237+I\210)\307!>\204\366\322\323\320D\"\210\211#\324\316I)+\210\307+!>\204\f\322\323\320+D\"\210+\211-\331\321I\210*)\202\207" [mh-thread-history action child cl-struct-mh-thread-container-tags id mh-thread-id-table DROP type-of error "1" gethash puthash record mh-thread-message nil "" mh-thread-container t signal wrong-type-argument 2 3 mh-thread-ancestor-p PROMOTE SUBJECT 4 #1=#:v #2=#:v message child-container parent-container #3=#:v #4=#:--cl-var-- elem #5=#:--cl-var-- #6=#:v at-end-p parent #7=#:v #8=#:v last-child #9=#:v children node --dolist-tail-- #10=#:v] 10 (#$ . 25499)])
#@164 Return t if ANCESTOR is really an ancestor of SUCCESSOR and nil otherwise.
In the limit, the function returns t if ANCESTOR and SUCCESSOR
are the same containers.
(defalias 'mh-thread-ancestor-p #[(ancestor successor) "\3032,\203*	=\203\304\303\305\"\210\306!\n>\204\"\307\310\311D\"\210\312H\211\204\3130\207" [successor ancestor cl-struct-mh-thread-container-tags --cl-block-nil-- throw t type-of signal wrong-type-argument mh-thread-container 2 nil] 5 (#$ . 32420)])
#@159 Parse a scan line.
If optional argument STRING is given then that is assumed to be
the scan line. Otherwise uses the line at point as the scan line
to parse.
(defalias 'mh-thread-parse-scan-line #[(&optional string) "\206\n\306\307 \310 \"	\n\\	\f\\\311\312#\211\f\311
\313Z#\311
\"F,\207" [string mh-cmd-note mh-scan-field-from-start-offset address-start mh-scan-field-from-end-offset body-start buffer-substring-no-properties mh-line-beginning-position mh-line-end-position substring 0 2 first-string] 7 (#$ . 32910)])
#@94 Produce canonical string representation for ID.
This allows cheap string comparison with EQ.
(defalias 'mh-thread-canonicalize-id #[(id) "\304\232\203\f\305\304!\206\306	\"\206	\307\n#*\207" [id mh-thread-id-hash #1=#:v #2=#:v "" copy-sequence gethash puthash] 4 (#$ . 33449)])
(put 'mh-thread-canonicalize-id 'byte-optimizer 'byte-compile-inline-expand)
#@289 Prune leading Re:'s, Fwd:'s etc. and trailing (fwd)'s from SUBJECT.
If the result after pruning is not the empty string then it is
canonicalized so that subjects can be tested for equality with
eq. This is done so that all the messages without a subject are
not put into a single thread.
(defalias 'mh-thread-prune-subject #[(subject) "\306\307\310\311\n\"\204\310\312\n\"\203\306\313\n\314\225\"\202\310\315\n\"\204+\310\316\n\"\2037\306\313\n\314\211\224#\202\n\317\232\203C\nD\202V\320\n\"\206T\n\321\f\n
#*D*\207" [subject-pruned-flag case-fold-search subject mh-thread-subject-hash #1=#:v #2=#:v t nil string-match "^[ 	]*\\(re\\|fwd?\\)\\(\\[[0-9]*\\]\\)?:[ 	]*" "^[ 	]*\\[[^\\]][ 	]*" substring 0 "(fwd)$" "[ 	]+$" "" gethash puthash] 4 (#$ . 33823)])
(put 'mh-thread-prune-subject 'byte-optimizer 'byte-compile-inline-expand)
#@177 Group the set of message containers, ROOTS based on subject.
Bug: Check for and make sure that something without Re: is made
the parent in preference to something that has it.
(defalias 'mh-thread-group-by-subject #[(roots) "\306!\210\307\n\307\211\203\204\f@\310!\311
\"\211\203i\312!>\2031\202i\211\204=\313\314!\210\311\"\206h \315\316\317\307\320\307%!\316\321!\307\211\322%) #*)\"\312\"!>\204}\323\324\321\"D\"\210\"\325H\211#\205\312#!>\204\231\323\324\321#D\"\210#\211$\326\312#!>\204\261\323\324\321#D\"\210#\326H%\307\211&'%:\203\340%@&\"&=\204\327&'B'%A\211%\202\277'\237+I\210)\312\"!>\204\371\323\324\321\"D\"\210\"\211(\325\307I)+\210\322)\211\204\307\202]\312!>\203%\202]\211\2041\313\314!\210\311\"\206\\ \315\316\317\307\320\307%!\316\321!\307\211\322%) #*)\312!>\203l\202\244\211\204x\313\314!\210\311\"\206\243 \315\316\317\307\320\307%!\316\321!\307\211\322%) #*)\"\211#\203X\327\"#\"\204X\327#\"\"\204X\"\312!>\203\321\202	\211\204\335\313\314!\210\311\"\206 \315\316\317\307\320\307%!\316\321!\307\211\322%) #*)\"\312\"!>\204\323\324\321\"D\"\210\"\325H\211#\205\242\312#!>\2049\323\324\321#D\"\210#\211$\326\312#!>\204Q\323\324\321#D\"\210#\326H%\307\211&'%:\203\200%@&\"&=\204w&'B'%A\211%\202_'\237+I\210)\312\"!>\204\231\323\324\321\"D\"\210\"\211(\325\307I)+\210)\204\316\312#!>\204\273\323\324\321#D\"\210#\211*\326\"*\326HBI\210)\202;\312#!>\204\340\323\324\321#D\"\210#\326H\204\f\312#!>\204\371\323\324\321#D\"\210#\211+\326\"+\326HBI\210)\202;\312#!>\204\323\324\321#D\"\210#\326H\211,A\2032,A\211,\202%,\"\307B\241\210)\312\"!>\204M\323\324\321\"D\"\210\"\211-\325#I\210)#?\205C\"\312!>\203q\202\251\211\204}\313\314!\210\311\"\206\250 \315\316\317\307\320\307%!\316\321!\307\211\322%) #*)\"\312\"!>\204\275\323\324\321\"D\"\210\"\325H\211#\205B\312#!>\204\331\323\324\321#D\"\210#\211$\326\312#!>\204\361\323\324\321#D\"\210#\326H%\307\211&'%:\203 %@&\"&=\204&'B'%A\211%\202\377'\237+I\210)\312\"!>\2049\323\324\321\"D\"\210\"\211(\325\307I)+-\210\312!>\204U\323\324\321D\"\210\211.\330\307I\210)\331D/B/\202|
01\31501#\210*	B*\fA\211\204*	\237)\207" [mh-thread-subject-container-hash results roots root --dolist-tail-- subject clrhash nil mh-thread-container-subject gethash type-of error "1" puthash record mh-thread-message "" mh-thread-container t signal wrong-type-argument 2 3 mh-thread-ancestor-p 4 SUBJECT parent child cl-struct-mh-thread-container-tags id mh-thread-id-table #1=#:v #2=#:v message child-container parent-container #3=#:v #4=#:--cl-var-- elem #5=#:--cl-var-- #6=#:v at-end-p #7=#:v #8=#:v last-child #9=#:v #10=#:v mh-thread-history #11=#:v #12=#:v] 10 (#$ . 34689)])
(put 'mh-thread-group-by-subject 'byte-optimizer 'byte-compile-inline-expand)
#@104 Return the subject of CONTAINER.
If CONTAINER is empty return the subject info of one of its
children.
(defalias 'mh-thread-container-subject #[(container) "\306!	>\204\307\310\311D\"\210\312H\203\243\306\211!	>\204%\307\310\311D\"\210\312H!\n>\204F\307\310\313\306!	>\204@\307\310\311D\"\210\312HD\"\210\306!	>\204U\307\310\311D\"\210\312H\312H\203\243\306\211!	>\204m\307\310\311D\"\210\312H!\n>\204\216\307\310\313\306!	>\204\210\307\310\311D\"\210\312HD\"\210\306!	>\204\235\307\310\311D\"\210\312H\314H\207\3152V\306!	>\204\266\307\310\311D\"\210\314H\316\211\203Q\f@\306!	>\204\322\307\310\311D\"\210\312H\203J\306\211!	>\204\350\307\310\311D\"\210\312H!\n>\204	\307\310\313\306!	>\204\307\310\311D\"\210\312HD\"\210\306!	>\204\307\310\311D\"\210\312H\312H\203J\306!	>\204/\307\310\311D\"\210\312H\317\315\306
!\n>\204D\307\310\313
D\"\210
\314H\"\210)\fA\211\204\300*\320\321!0\207" [container cl-struct-mh-thread-container-tags cl-struct-mh-thread-message-tags kid --dolist-tail-- kid-message type-of signal wrong-type-argument mh-thread-container 1 mh-thread-message 3 --cl-block-nil-- nil throw error "This can't happen"] 8 (#$ . 37816)])
#@205 Message with id, ID is the message in INDEX.
The function also checks for duplicate messages (that is multiple
messages with the same ID). These messages are put in the
`mh-thread-duplicates' hash table.
(defalias 'mh-thread-update-id-index-maps #[(id index) "\306	\"\211\203\f\307\n\306
\"B
#\210*		\307\n	#\210*\n\f
\307
#+\207" [id mh-thread-id-index-map old-index #1=#:v mh-thread-duplicates #2=#:v gethash puthash #3=#:v #4=#:v index #5=#:v mh-thread-index-id-map #6=#:v] 7 (#$ . 39043)])
(put 'mh-thread-update-id-index-maps 'byte-optimizer 'byte-compile-inline-expand)
#@111 Return container which has MESSAGE in it.
If there is no container present then a new container is
allocated.
(defalias 'mh-thread-get-message-container #[(message) "\306!	>\204\307\310\311D\"\210\312H\313\n\"\211\2038\306\f!
>\204+\307\310\314\fD\"\210\f\211\312I\210)\f\202L\n\315\316\314\317\211\320%#**\207" [message cl-struct-mh-thread-message-tags id mh-thread-id-table container cl-struct-mh-thread-container-tags type-of signal wrong-type-argument mh-thread-message 1 gethash mh-thread-container puthash record nil t #1=#:v #2=#:v #3=#:v] 9 (#$ . 39652)])
(put 'mh-thread-get-message-container 'byte-optimizer 'byte-compile-inline-expand)
#@132 Return appropriate message.
Otherwise update message already present to have the proper ID,
SUBJECT-RE-P, SUBJECT and REFS fields.
(defalias 'mh-thread-get-message #[(id subject-re-p subject refs) "\306	\"\211\205\307\n!>\204\310\311\312\nD\"\210\n\313H\211\203\207\307\f!
>\204/\310\311\314\fD\"\210\f\211\315I\210)\307\f!
>\204H\310\311\314\fD\"\210\f\211\316I\210)\307\f!
>\204a\310\311\314\fD\"\210\f\211\313I\210)\307\f!
>\204y\310\311\314\fD\"\210\f\211\317I\210)\f\202\n\203\256\307\n!>\204\232\310\311\312\nD\"\210\n\211\313\320\314%I)\202\320\314%\211\211\307\f!
>\204\313\310\311\314\fD\"\210\f\313H\306	\"\211\203\364\307\n!>\204\347\310\311\312\nD\"\210\n\211\313\fI\210)\n\202	\321\320\312\f\322\211\323%#*+\210)*\207" [id mh-thread-id-table container cl-struct-mh-thread-container-tags message cl-struct-mh-thread-message-tags gethash type-of signal wrong-type-argument mh-thread-container 1 mh-thread-message 4 3 2 record puthash nil t #1=#:v subject-re-p #2=#:v subject #3=#:v #4=#:v refs #5=#:v #6=#:v #7=#:v #8=#:v] 10 (#$ . 40330)])
(put 'mh-thread-get-message 'byte-optimizer 'byte-compile-inline-expand)
#@63 Regexp to recognize whether a string is a message identifier.
(defvar mh-message-id-regexp "^<.*@.*>$" (#$ . 41534))
#@107 Scan FOLDER to get info for threading.
Only information about messages in MSG-LIST are added to the tree.
(defalias 'mh-thread-generate #[(folder msg-list) "\306\307!rq\210\310\216\311	!\210\n\203'\312\313\314\f\"\315\316\315\317\320\321\322	\323\324\n\"&\210eb\210\315\325>\3262\260\nm?\205\257\n\3272\253\n`\330 {\315y\210?\331?!@`\330 {\315y\210A`\330 {\315y\210B`\330 {\315y\210C`\330 {\315y\210D\315E\332@F\"\204\200\333\327\315\"\210@\250\204\213\333\326\315\"\210\334DD\325\315G\335\336D\"\204\245\335\337D\"\203\263\325G\340D\341\225\"D\202\225\335\342D\"\204\303\335\343D\"\203\322\325G\340D\341\211\224#D\202\263D\344\232\203\341DGD\202\376\332DH\"\206\373DIHJ\345IDJ#*GD+!\211K@DKA@E)\346C!C\347\350B!C\"L\315\211MNL:\203GL@M\335OM\"\203>MNBNLA\211L\202%N\237+BA\211A\344\232\203]\351\344!\206w\332AP\"\206wAQPR\345QAR#*)\211A@@A\332AS\"\211T\203\246AUVW\345UT\332UW\"BW#\210*AXSY\345X@Y#\210*@Z[\\\345ZA\\#-\210\323\352B\"BAEDBBDEA\332A]\"\211^\205\353^!_>\204\377\354\355\356^D\"\210^\357H\211`\203\202\353`!a>\204\354\355\360`D\"\210`\211b\361EI\210)\353`!a>\2048\354\355\360`D\"\210`\211c\362DI\210)\353`!a>\204U\354\355\360`D\"\210`\211d\357AI\210)\353`!a>\204r\354\355\360`D\"\210`\211e\363BI\210)`\202 ^\203\257\353^!_>\204\231\354\355\356^D\"\210^\211f\357\364\360ABDE%I)\202 \364\360ABDE%\211`\211`\353`!a>\204\322\354\355\360`D\"\210`\357HA\332A]\"\211^\203\353^!_>\204\366\354\355\356^D\"\210^\211g\357`I\210)^\202Ah]i\345h\364\356`\315\211\325%i#*+\210).\210B\211jA\203zj@jA@\315kl\211m\204B\315\202\211\353m!_>\203Qm\202\211m\211A\204]\365\366!\210\332A]\"\206\210An]o\345n\364\360A\315\344\315%`\364\356`\315\211\325%)o#*)\353l!_>\203\230l\202\320l\211A\204\244\365\366!\210\332A]\"\206\317An]o\345n\364\360A\315\344\315%`\364\356`\315\211\325%)o#*)p\211q\203\204\367pq\"\204\204\367qp\"\204\204pl\353l!_>\203\375l\2025l\211A\204	\365\366!\210\332A]\"\2064An]o\345n\364\360A\315\344\315%`\364\356`\315\211\325%)o#*)p\353p!_>\204I\354\355\356pD\"\210p\363H\211q\205\316\353q!_>\204e\354\355\356qD\"\210q\211r\362\353q!_>\204}\354\355\356qD\"\210q\362Hs\315\211tus:\203\254s@tpt=\204\243tuBusA\211s\202\213u\237+I\210)\353p!_>\204\305\354\355\356pD\"\210p\211v\363\315I)+\210k\204\372\353q!_>\204\347\354\355\356qD\"\210q\211w\362pw\362HBI\210)\202g\353q!_>\204\f\354\355\356qD\"\210q\362H\2048\353q!_>\204%\354\355\356qD\"\210q\211x\362px\362HBI\210)\202g\353q!_>\204J\354\355\356qD\"\210q\362H\211yA\203^yA\211y\202Qyp\315B\241\210)\353p!_>\204y\354\355\356pD\"\210p\211z\363qI\210)q?\205opl\353l!_>\203\235l\202\325l\211A\204\251\365\366!\210\332A]\"\206\324An]o\345n\364\360A\315\344\315%`\364\356`\315\211\325%)o#*)p\353p!_>\204\351\354\355\356pD\"\210p\363H\211q\205n\353q!_>\204\354\355\356qD\"\210q\211r\362\353q!_>\204\354\355\356qD\"\210q\362Hs\315\211tus:\203Ls@tpt=\204CtuBusA\211s\202+u\237+I\210)\353p!_>\204e\354\355\356pD\"\210p\211v\363\315I)+-\210jA\211j\202(j@\205\250\nAl\353l!_>\203\223l\202\313l\211A\204\237\365\366!\210\332A]\"\206\312An]o\345n\364\360A\315\344\315%`\364\356`\315\211\325%)o#*)p\353p!_>\204\337\354\355\356pD\"\210p\363H\211q\205d\353q!_>\204\373\354\355\356qD\"\210q\211r\362\353q!_>\204\354\355\356qD\"\210q\362Hs\315\211tus:\203Bs@tpt=\2049tuBusA\211s\202!u\237+I\210)\353p!_>\204[\354\355\356pD\"\210p\211v\363\315I)+\210j@A\315kl\211m\204z\315\202\301\353m!_>\203\211m\202\301m\211A\204\225\365\366!\210\332A]\"\206\300An]o\345n\364\360A\315\344\315%`\364\356`\315\211\325%)o#*)\353l!_>\203\320l\202l\211A\204\334\365\366!\210\332A]\"\206An]o\345n\364\360A\315\344\315%`\364\356`\315\211\325%)o#*)p\211q\203\274	\367pq\"\204\274	\367qp\"\204\274	pl\353l!_>\2035l\202ml\211A\204A\365\366!\210\332A]\"\206lAn]o\345n\364\360A\315\344\315%`\364\356`\315\211\325%)o#*)p\353p!_>\204\201\354\355\356pD\"\210p\363H\211q\205	\353q!_>\204\235\354\355\356qD\"\210q\211r\362\353q!_>\204\265\354\355\356qD\"\210q\362Hs\315\211tus:\203\344s@tpt=\204\333tuBusA\211s\202\303u\237+I\210)\353p!_>\204\375\354\355\356pD\"\210p\211v\363\315I)+\210k\2042	\353q!_>\204	\354\355\356qD\"\210q\211w\362pw\362HBI\210)\202\237	\353q!_>\204D	\354\355\356qD\"\210q\362H\204p	\353q!_>\204]	\354\355\356qD\"\210q\211x\362px\362HBI\210)\202\237	\353q!_>\204\202	\354\355\356qD\"\210q\362H\211yA\203\226	yA\211y\202\211	yp\315B\241\210)\353p!_>\204\261	\354\355\356pD\"\210p\211z\363qI\210)q?\205\247\npl\353l!_>\203\325	l\202
\nl\211A\204\341	\365\366!\210\332A]\"\206\f\nAn]o\345n\364\360A\315\344\315%`\364\356`\315\211\325%)o#*)p\353p!_>\204!\n\354\355\356pD\"\210p\363H\211q\205\246\n\353q!_>\204=\n\354\355\356qD\"\210q\211r\362\353q!_>\204U\n\354\355\356qD\"\210q\362Hs\315\211tus:\203\204\ns@tpt=\204{\ntuBusA\211s\202c\nu\237+I\210)\353p!_>\204\235\n\354\355\356pD\"\210p\211v\363\315I)+-.0\210\20230\210\370\371]\"\210\372>!\211>>\373{!\210\315|>\315}\211~\203]~@}\374}!D\332D{\"\211m\203:}l\353l!_>\203\375\nl\2025l\211A\204	\365\366!\210\332A]\"\2064An]o\345n\364\360A\315\344\315%`\364\356`\315\211\325%)o#*)p\353p!_>\204I\354\355\356pD\"\210p\363H\211q\205\316\353q!_>\204e\354\355\356qD\"\210q\211r\362\353q!_>\204}\354\355\356qD\"\210q\362Hs\315\211tus:\203\254s@tpt=\204\243tuBusA\211s\202\213u\237+I\210)\353p!_>\204\305\354\355\356pD\"\210p\211v\363\315I)+\210m}\325kl\211m\204\343\315\202*\f\353m!_>\203\362m\202*\fm\211A\204\376\365\366!\210\332A]\"\206)\fAn]o\345n\364\360A\315\344\315%`\364\356`\315\211\325%)o#*)\353l!_>\2039\fl\202q\fl\211A\204E\f\365\366!\210\332A]\"\206p\fAn]o\345n\364\360A\315\344\315%`\364\356`\315\211\325%)o#*)p\211q\203%\367pq\"\204%\367qp\"\204%pl\353l!_>\203\236\fl\202\326\fl\211A\204\252\f\365\366!\210\332A]\"\206\325\fAn]o\345n\364\360A\315\344\315%`\364\356`\315\211\325%)o#*)p\353p!_>\204\352\f\354\355\356pD\"\210p\363H\211q\205o
\353q!_>\204
\354\355\356qD\"\210q\211r\362\353q!_>\204
\354\355\356qD\"\210q\362Hs\315\211tus:\203M
s@tpt=\204D
tuBusA\211s\202,
u\237+I\210)\353p!_>\204f
\354\355\356pD\"\210p\211v\363\315I)+\210k\204\233
\353q!_>\204\210
\354\355\356qD\"\210q\211w\362pw\362HBI\210)\202\353q!_>\204\255
\354\355\356qD\"\210q\362H\204\331
\353q!_>\204\306
\354\355\356qD\"\210q\211x\362px\362HBI\210)\202\353q!_>\204\353
\354\355\356qD\"\210q\362H\211yA\203\377
yA\211y\202\362
yp\315B\241\210)\353p!_>\204\354\355\356pD\"\210p\211z\363qI\210)q?\205pl\353l!_>\203>l\202vl\211A\204J\365\366!\210\332A]\"\206uAn]o\345n\364\360A\315\344\315%`\364\356`\315\211\325%)o#*)p\353p!_>\204\212\354\355\356pD\"\210p\363H\211q\205\353q!_>\204\246\354\355\356qD\"\210q\211r\362\353q!_>\204\276\354\355\356qD\"\210q\362Hs\315\211tus:\203\355s@tpt=\204\344tuBusA\211s\202\314u\237+I\210)\353p!_>\204\354\355\356pD\"\210p\211v\363\315I)+-\210\353}!_>\204$\354\355\356}D\"\210}\211\361\315I\210)\375}D\200B\200\202SD\201{\202\345\201}\202#\210*}|B|*~A\211~\204\323\n*|\237*\211>\200\203	q\210\203\200.\207" [#1=#:temp-buffer folder msg-list mh-scan-prog mh-progs case-fold-search generate-new-buffer " *temp*" #[nil "\301!\205	\302!\207" [#1# buffer-name kill-buffer] 2] mh-thread-set-tables apply call-process expand-file-name nil (t nil) "-width" "10000" "-format" "%(msg)\n%{message-id}\n%{references}\n%{in-reply-to}\n%{subject}\n" mapcar #[(x) "\301\302\"\207" [x format "%s"] 3] t --cl-block-nil-- --cl-block-process-message-- mh-line-end-position string-to-number gethash throw cl-values-list string-match "^[ 	]*\\(re\\|fwd?\\)\\(\\[[0-9]*\\]\\)?:[ 	]*" "^[ 	]*\\[[^\\]][ 	]*" substring 0 "(fwd)$" "[ 	]+$" "" puthash mh-thread-process-in-reply-to append split-string copy-sequence mh-thread-canonicalize-id type-of signal wrong-type-argument mh-thread-container 1 mh-thread-message 4 3 2 record error "1" mh-thread-ancestor-p maphash #[(_k v) "\303!	>\204\304\305\306D\"\210\307H?\205\nB\211\207" [v cl-struct-mh-thread-container-tags roots type-of signal wrong-type-argument mh-thread-container 2] 4] mh-thread-prune-containers clrhash mh-thread-container-subject SUBJECT roots index-line index id refs in-reply-to subject subject-re-p mh-thread-scan-line-map subject-pruned-flag mh-thread-subject-hash #2=#:v #3=#:v #4=#:--cl-var-- #5=#:--cl-var-- x #6=#:--cl-var-- mh-message-id-regexp mh-thread-id-hash #7=#:v #8=#:v mh-thread-id-index-map old-index #9=#:v mh-thread-duplicates #10=#:v #11=#:v #12=#:v #13=#:v mh-thread-index-id-map #14=#:v mh-thread-id-table container cl-struct-mh-thread-container-tags message cl-struct-mh-thread-message-tags #15=#:v #16=#:v #17=#:v #18=#:v #19=#:v #20=#:v #21=#:v #22=#:v ancestors at-end-p child parent #23=#:v #24=#:v child-container parent-container #25=#:v #26=#:--cl-var-- elem #27=#:--cl-var-- #28=#:v #29=#:v #30=#:v last-child #31=#:v mh-thread-subject-container-hash results root --dolist-tail-- #32=#:v mh-thread-history #33=#:v #34=#:v history] 15 (#$ . 41658)])
#@45 Use the tables of FOLDER in current buffer.
(defalias 'mh-thread-set-tables #[(folder) "\303\304\211\205	@\211r\nq\210J)L\210	A\211\204\304*\207" [v --dolist-tail-- folder (mh-thread-id-hash mh-thread-subject-hash mh-thread-id-table mh-thread-id-index-map mh-thread-index-id-map mh-thread-scan-line-map mh-thread-subject-container-hash mh-thread-duplicates mh-thread-history) nil] 3 (#$ . 51460)])
#@227 Extract message id's from REPLY-TO-HEADER.
Ideally this should have some regexp which will try to guess if a
string between < and > is a message id and not an email address.
For now it will take the last string inside angles.
(defalias 'mh-thread-process-in-reply-to #[(reply-to-header) "\303\304\"\211\247\205 \303\305\306\307	#\"\211\247\205\306\n	T#C))\207" [reply-to-header end begin mh-search-from-end 62 60 substring 0] 7 (#$ . 51874)])
#@49 Prune empty containers in the containers ROOTS.
(defalias 'mh-thread-prune-containers #[(roots) "\306	\203B	\211A\242\307!\f>\204\310\311\312D\"\210\313H\306\211\2039@\211	BA\211\204(*\nB)\202\n\203\301
\n\211A\242\314\307\211!\f>\204]\310\311\312D\"\210\315H!>\204\310\311\316\307!\f>\204y\310\311\312D\"\210\315HD\"\210\307!\f>\204\216\310\311\312D\"\210\315H\315H\"\203\307\307!\f>\204\250\310\311\312D\"\210\211 \313\317\307!\f>\204\275\310\311\312D\"\210\313H!I\210)\202\275
\307!\f>\204\326\310\311\312D\"\210\313H\203J\307!\f>\204\353\310\311\312D\"\210\313HA\203\307!\f>\204\310\311\312D\"\210\320H\203J\306!\307!\f>\204\310\311\312D\"\210\313H\306\"\211\203K@\211\"\307
!\f>\2038
\202o
\211#\204C\321\322!\210\314#$\"\206n#%$&\323%\324\316#\306\325\306%'\324\312'\306\211\326%)&#*)(\307(!\f>\204\202\310\311\312(D\"\210(\320H\211)\205\307)!\f>\204\235\310\311\312)D\"\210)\211*\313\307)!\f>\204\264\310\311\312)D\"\210)\313H+\306\211,-+:\203\343+@,(,=\204\332,-B-+A\211+\202\302-\237+I\210)\307(!\f>\204\373\310\311\312(D\"\210(\211.\320\306I)+\210\307!\f>\204\310\311\312D\"\210\320H\"\306/\2110\204(\306\202n\3070!\f>\20360\202n0\211#\204B\321\322!\210\314#$\"\206m#%$&\323%\324\316#\306\325\306%'\324\312'\306\211\326%)&#*)\307
!\f>\203z
\202\261
\211#\204\205\321\322!\210\314#$\"\206\260#%$&\323%\324\316#\306\325\306%'\324\312'\306\211\326%)&#*)(\211)\203W\327()\"\204W\327)(\"\204W(\307
!\f>\203\332
\202
\211#\204\345\321\322!\210\314#$\"\206#%$&\323%\324\316#\306\325\306%'\324\312'\306\211\326%)&#*)(\307(!\f>\204$\310\311\312(D\"\210(\320H\211)\205\246\307)!\f>\204?\310\311\312)D\"\210)\211*\313\307)!\f>\204V\310\311\312)D\"\210)\313H+\306\211,-+:\203\205+@,(,=\204|,-B-+A\211+\202d-\237+I\210)\307(!\f>\204\235\310\311\312(D\"\210(\211.\320\306I)+\210/\204\321\307)!\f>\204\276\310\311\312)D\"\210)\2111\313(1\313HBI\210)\202;\307)!\f>\204\342\310\311\312)D\"\210)\313H\204
\307)!\f>\204\372\310\311\312)D\"\210)\2112\313(2\313HBI\210)\202;\307)!\f>\204\310\311\312)D\"\210)\313H\2113A\20323A\2113\202%3(\306B\241\210)\307(!\f>\204L\310\311\312(D\"\210(\2114\320)I\210))?\2059(\307
!\f>\203l
\202\243
\211#\204w\321\322!\210\314#$\"\206\242#%$&\323%\324\316#\306\325\306%'\324\312'\306\211\326%)&#*)(\307(!\f>\204\266\310\311\312(D\"\210(\320H\211)\2058\307)!\f>\204\321\310\311\312)D\"\210)\211*\313\307)!\f>\204\350\310\311\312)D\"\210)\313H+\306\211,-+:\203+@,(,=\204,-B-+A\211+\202\366-\237+I\210)\307(!\f>\204/\310\311\312(D\"\210(\211.\320\306I)+-\210\"!B!A\211\204%*\330\307!\f>\204]\310\311\312D\"\210\320H!BBB5B5\307
!\f>\203x
\202\257
\211#\204\203\321\322!\210\314#$\"\206\256#%$&\323%\324\316#\306\325\306%'\324\312'\306\211\326%)&#*)(\307(!\f>\204\302\310\311\312(D\"\210(\320H\211)\205D\307)!\f>\204\335\310\311\312)D\"\210)\211*\313\307)!\f>\204\364\310\311\312)D\"\210)\313H+\306\211,-+:\203#+@,(,=\204,-B-+A\211+\202-\237+I\210)\307(!\f>\204;\310\311\312(D\"\210(\211.\320\306I)+\210)\202\275
\307!\f>\204Y\310\311\312D\"\210\313H\203\307\f\307!\f>\204n\310\311\312D\"\210\2116\313\317\307!\f>\204\203\310\311\312D\"\210\313H!I\210)\307!\f>\204\231\310\311\312D\"\210\313H@\307!\f>\204\254\310\311\312D\"\210\313HA7\2118\307
!\f>\203\302
\202\371
\211#\204\315\321\322!\210\314#$\"\206\370#%$&\323%\324\316#\306\325\306%'\324\312'\306\211\326%)&#*)(\307(!\f>\204\f\310\311\312(D\"\210(\320H\211)\205\216\307)!\f>\204'\310\311\312)D\"\210)\211*\313\307)!\f>\204>\310\311\312)D\"\210)\313H+\306\211,-+:\203m+@,(,=\204d,-B-+A\211+\202L-\237+I\210)\307(!\f>\204\205\310\311\312(D\"\210(\211.\320\306I)+\2107\306\"\211\203\305@\211\"\307
!\f>\203\256
\202\345
\211#\204\271\321\322!\210\314#$\"\206\344#%$&\323%\324\316#\306\325\306%'\324\312'\306\211\326%)&#*)(\307(!\f>\204\370\310\311\312(D\"\210(\320H\211)\205z\307)!\f>\204\310\311\312)D\"\210)\211*\313\307)!\f>\204*\310\311\312)D\"\210)\313H+\306\211,-+:\203Y+@,(,=\204P,-B-+A\211+\2028-\237+I\210)\307(!\f>\204q\310\311\312(D\"\210(\211.\320\306I)+\210\307\"!\f>\204\215\310\311\312\"D\"\210\"\2119\331\306I\210)8\"\326/\2110\204\251\306\202\357\3070!\f>\203\2670\202\3570\211#\204\303\321\322!\210\314#$\"\206\356#%$&\323%\324\316#\306\325\306%'\324\312'\306\211\326%)&#*)\307
!\f>\203\373
\2022	
\211#\204	\321\322!\210\314#$\"\2061	#%$&\323%\324\316#\306\325\306%'\324\312'\306\211\326%)&#*)(\211)\203\330\n\327()\"\204\330\n\327)(\"\204\330\n(\307
!\f>\203[	
\202\222	
\211#\204f	\321\322!\210\314#$\"\206\221	#%$&\323%\324\316#\306\325\306%'\324\312'\306\211\326%)&#*)(\307(!\f>\204\245	\310\311\312(D\"\210(\320H\211)\205'\n\307)!\f>\204\300	\310\311\312)D\"\210)\211*\313\307)!\f>\204\327	\310\311\312)D\"\210)\313H+\306\211,-+:\203\n+@,(,=\204\375	,-B-+A\211+\202\345	-\237+I\210)\307(!\f>\204\n\310\311\312(D\"\210(\211.\320\306I)+\210/\204R\n\307)!\f>\204?\n\310\311\312)D\"\210)\2111\313(1\313HBI\210)\202\274\n\307)!\f>\204c\n\310\311\312)D\"\210)\313H\204\216\n\307)!\f>\204{\n\310\311\312)D\"\210)\2112\313(2\313HBI\210)\202\274\n\307)!\f>\204\237\n\310\311\312)D\"\210)\313H\2113A\203\263\n3A\2113\202\246\n3(\306B\241\210)\307(!\f>\204\315\n\310\311\312(D\"\210(\2114\320)I\210))?\205\272(\307
!\f>\203\355\n
\202$
\211#\204\370\n\321\322!\210\314#$\"\206##%$&\323%\324\316#\306\325\306%'\324\312'\306\211\326%)&#*)(\307(!\f>\2047\310\311\312(D\"\210(\320H\211)\205\271\307)!\f>\204R\310\311\312)D\"\210)\211*\313\307)!\f>\204i\310\311\312)D\"\210)\313H+\306\211,-+:\203\230+@,(,=\204\217,-B-+A\211+\202w-\237+I\210)\307(!\f>\204\260\310\311\312(D\"\210(\211.\320\306I)+-\210A\211\204\233*\330\307!\f>\204\327\310\311\312D\"\210\320H87BBBB5B5\307
!\f>\203\365
\202,\f
\211#\204\f\321\322!\210\314#$\"\206+\f#%$&\323%\324\316#\306\325\306%'\324\312'\306\211\326%)&#*)(\307(!\f>\204?\f\310\311\312(D\"\210(\320H\211)\205\301\f\307)!\f>\204Z\f\310\311\312)D\"\210)\211*\313\307)!\f>\204q\f\310\311\312)D\"\210)\313H+\306\211,-+:\203\240\f+@,(,=\204\227\f,-B-+A\211+\202\f-\237+I\210)\307(!\f>\204\270\f\310\311\312(D\"\210(\211.\320\306I)+\210*\202\275
\332\307!\f>\204\330\f\310\311\312D\"\210\320HE5B5\307
!\f>\203\357\f
\202&

\211#\204\372\f\321\322!\210\314#$\"\206%
#%$&\323%\324\316#\306\325\306%'\324\312'\306\211\326%)&#*)(\307(!\f>\2049
\310\311\312(D\"\210(\320H\211)\205\273
\307)!\f>\204T
\310\311\312)D\"\210)\211*\313\307)!\f>\204k
\310\311\312)D\"\210)\313H+\306\211,-+:\203\232
+@,(,=\204\221
,-B-+A\211+\202y
-\237+I\210)\307(!\f>\204\262
\310\311\312(D\"\210(\211.\320\306I)+\210)\202B\306:\333\334$\"\210\317:!+\207" [roots work-list dfs-ordered-nodes node cl-struct-mh-thread-container-tags child nil type-of signal wrong-type-argument mh-thread-container 3 gethash 1 mh-thread-message mh-thread-sort-containers 2 error "1" puthash record "" t mh-thread-ancestor-p PROMOTE 4 DROP maphash #[(_k v) "\305!	>\204\306\307\310D\"\210\311H?\205f\312\305\211!	>\204'\306\307\310D\"\210\313H!\n>\204H\306\307\314\305!	>\204B\306\307\310D\"\210\313HD\"\210\305!	>\204W\306\307\310D\"\210\313H\313H\"\205f\fB\211\207" [v cl-struct-mh-thread-container-tags cl-struct-mh-thread-message-tags mh-thread-id-index-map results type-of signal wrong-type-argument mh-thread-container 2 gethash 1 mh-thread-message] 8] --dolist-tail-- cl-struct-mh-thread-message-tags mh-thread-id-index-map #1=#:v children kid id mh-thread-id-table #2=#:v #3=#:v message child-container parent-container #4=#:v #5=#:--cl-var-- elem #6=#:--cl-var-- #7=#:v at-end-p parent #8=#:v #9=#:v last-child #10=#:v mh-thread-history #11=#:v other-kids new-parent #12=#:v results] 10 (#$ . 52331)])
#@71 Sort a list of message CONTAINERS to be in ascending order wrt index.
(defalias 'mh-thread-sort-containers #[(containers) "\301\302\"\207" [containers sort #[(x y) "\306!	>\204\307\310\311D\"\210\312H\205\326\306\n!	>\204$\307\310\311\nD\"\210\n\312H\205\326\306\211!	>\204:\307\310\311D\"\210\312H!>\204[\307\310\313\306!	>\204U\307\310\311D\"\210\312HD\"\210\306!	>\204j\307\310\311D\"\210\312H\312H\306\211\n!	>\204\200\307\310\311\nD\"\210\n\312H!>\204\241\307\310\313\306\n!	>\204\233\307\310\311\nD\"\210\n\312HD\"\210\306\n!	>\204\260\307\310\311\nD\"\210\n\312H\312H\314\f
\"\314

\"\250\205\325\250\205\325W,\207" [x cl-struct-mh-thread-container-tags y cl-struct-mh-thread-message-tags id-x id-y type-of signal wrong-type-argument mh-thread-container 1 mh-thread-message gethash mh-thread-id-index-map index-x index-y] 7]] 3 (#$ . 60709)])
#@51 Print scan lines in THREAD-TREE in threaded mode.
(defalias 'mh-thread-print-scan-lines #[(thread-tree) "\306\307 	S#\310\f\204\311
\312\"\202\230\313 \310:\203\225@\314 \310A\310:\203l@\315\"\211\203b\316#\210*)A\211\202;*\317!\320V\203\213o\203~\321\202\322@\322\261\210\311
\312\"\210*A\211\202*\323 *\207" [mh-cmd-note mh-scan-field-subject-start-offset mh-thread-last-ancestor mh-thread-body-width mh-index-data thread-tree - window-width nil mh-thread-generate-scan-lines -2 mh-index-group-by-folder make-hash-table gethash puthash hash-table-count 0 "" "\n" mh-index-create-imenu-index #1=#:--cl-var-- x mh-thread-scan-line-map old-map #2=#:--cl-var-- msg v #3=#:v #4=#:v] 5 (#$ . 61611)])
#@188 Generate scan lines.
TREE is the hierarchical tree of messages, SCAN-LINE-MAP maps
message indices to the corresponding scan lines and LEVEL used to
determine indentation of the message.
(defalias 'mh-thread-generate-scan-lines #[(tree level) "\204\306\207\307!	>\203\307!	>\204\310\311\312D\"\210\313H\307\n!>\2040\310\311\314\nD\"\210\n\313H\315\f
\"!\315\f\"\"#$\316\\%\317&\306\211'(\320\321\322!#B!\"\306)\211*\203A*@\211)\2038&\203\217$\323\232\203\217\324+\"\203\217$\316\\$%\316\\%\317'$\323\232\203\313+\307+!	>\204\252\310\311\312+D\"\210+\316H\203\313\307+!	>\204\302\310\311\312+D\"\210+\316H+\202\231&\203\325$\202\327%,\307!	>\204\350\310\311\312D\"\210\325H\203\370'\204\370&\206\374,\323\232-)@\326\211\327,\"\330\"-\203\331\202\332)A@-\203 \333\202!\334\335)AA@.,Z\"\336\261\210*\317(\306&*A\211*\204c*(\204K$%\307!	>\204Z\310\311\312D\"\210\337H\306/\211*\205|*@/\340/%\"\210*A\211*\204f\306.\n\207$\316\\0\3061\211*\205\245*@1\34010\"\210*A\211*\204\217\306+\207" [tree cl-struct-mh-thread-container-tags message cl-struct-mh-thread-message-tags id mh-thread-id-index-map nil type-of signal wrong-type-argument mh-thread-container 1 mh-thread-message gethash 2 t mapcar #[(x) "\302	\"\207" [x mh-thread-scan-line-map gethash] 3] reverse 0 mh-thread-ancestor-p 4 format "%%%ss" "" "[" "<" "]" ">" truncate-string-to-width "\n" 3 mh-thread-generate-scan-lines index mh-thread-duplicates duplicates level new-level dupl-flag force-angle-flag increment-level-flag scan-line --dolist-tail-- mh-thread-last-ancestor lev square-flag mh-thread-body-width child nlevel ch] 10 (#$ . 62393)])
#@110 In threaded view update `mh-thread-scan-line-map'.
MSG is the message being notated with NOTATION at OFFSET.
(defalias 'mh-thread-update-scan-line-map #[(msg notation offset) "\206\306\307!	\205\310	\"\307\211	\f:\2034\f@\211\205(\310
\"	B	\fA\211\202	\237+\n\n\203O\n@\f

I\210*\n\307\211\205@\211\203u@\fI\210*A\211\204Z\307-\207" [msg mh-thread-scan-line-map cur-scan-line mh-thread-scan-line-map-stack #1=#:--cl-var-- map mh-get-msg-num nil gethash #2=#:--cl-var-- old-scan-lines #3=#:v offset #4=#:v notation line --dolist-tail-- #5=#:v #6=#:v] 4 (#$ . 64128)])
#@91 Find canonicalized subject of MSG.
This function can only be used the folder is threaded.
(defalias 'mh-thread-find-msg-subject #[(msg) "\3051\201\306\211\307\211	\"\n\"!>\204 \310\311\312\307\211	\"\n\"D\"\210\307\211	\"\n\"\313H!\f>\204Y\310\311\314\306\307\211	\"\n\"!>\204M\310\311\312\307\211	\"\n\"D\"\210\307\211	\"\n\"\313HD\"\210\306\307\211	\"\n\"!>\204t\310\311\312\307\211	\"\n\"D\"\210\307\211	\"\n\"\313H\315H0\207\210\316\207" [msg mh-thread-index-id-map mh-thread-id-table cl-struct-mh-thread-container-tags cl-struct-mh-thread-message-tags (error) type-of gethash signal wrong-type-argument mh-thread-container 1 mh-thread-message 3 nil] 10 (#$ . 64764)])
#@66 Add COUNT spaces to each scan line in `mh-thread-scan-line-map'.
(defalias 'mh-thread-add-spaces #[(count) "\306\211\307\"\310\"m?\2057\311\312!\313\314\n\"8\n\247\2030\n\315
\316\306\317	\f#!#\210**\320y\210\202)\207" [count spaces msg-num mh-thread-scan-line-map old-line #1=#:v format "%%%ss" "" mh-get-msg-num nil 3 gethash puthash mh-thread-parse-scan-line "%s%s" 1 #2=#:v] 7 (#$ . 65460)])
#@53 Forget the message INDEX from the threading tables.
(defalias 'mh-thread-forget-message #[(index) "\306	\"\306\n\"\306\n
\"\307	\"\210\307\f\"\210\310\f\"\203.\204.\307\n\"\202|\310\f\"\203j\n
\311
@#\210*@	\311\n#\210*\n
\311A#*\202|\n
\311\312\"#*+\207" [index mh-thread-index-id-map id mh-thread-id-index-map id-index mh-thread-duplicates gethash remhash eql puthash remove duplicates mh-thread-scan-line-map #1=#:v #2=#:v #3=#:v #4=#:v #5=#:v #6=#:v #7=#:v #8=#:v] 5 (#$ . 65877)])
(provide 'mh-thread)

Youez - 2016 - github.com/yon3zu
LinuXploit