....................................../////.===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.135.64.200
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/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/share/emacs/27.2/lisp/frameset.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.

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


(require 'cl-lib)
#@67 compiler-macro for inlining `frameset-p'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'frameset-p--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block frameset-p (and (vectorp cl-x) (>= (length cl-x) 8) (memq (aref cl-x 0) cl-struct-frameset-tags) t)) nil] 9 (#$ . 426)])
(put 'frameset-p 'compiler-macro 'frameset-p--cmacro)
#@13 

(fn CL-X)
(defalias 'frameset-p #[257 "\301!\205\211G\302Y\205\211\303H>\205\304\207" [cl-struct-frameset-tags vectorp 8 0 t] 3 (#$ . 782)])
(byte-code "\300\301\302\303#\304\305\306\301#\207" [function-put frameset-p side-effect-free error-free put frameset cl-deftype-satisfies] 5)
#@73 compiler-macro for inlining `frameset-version'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'frameset-version--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block frameset-version (progn (or (and (memq (aref cl-x 0) cl-struct-frameset-tags)) (signal 'wrong-type-argument (list 'frameset cl-x))) (aref cl-x 1))) nil] 9 (#$ . 1082)])
(put 'frameset-version 'compiler-macro 'frameset-version--cmacro)
#@61 Access slot "version" of `frameset' struct CL-X.

(fn CL-X)
(defalias 'frameset-version #[257 "\211\301H>\204\302\303\304D\"\210\211\305H\207" [cl-struct-frameset-tags 0 signal wrong-type-argument frameset 1] 5 (#$ . 1510)])
(byte-code "\300\301\302\303#\300\301\304\305#\300\207" [function-put frameset-version side-effect-free t gv-expander #[514 "\300\301\302\"\207" [error "%s is a read-only slot" frameset-version] 5 "\n\n(fn CL-DO CL-X)"]] 5)
#@75 compiler-macro for inlining `frameset-timestamp'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'frameset-timestamp--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block frameset-timestamp (progn (or (and (memq (aref cl-x 0) cl-struct-frameset-tags)) (signal 'wrong-type-argument (list 'frameset cl-x))) (aref cl-x 2))) nil] 9 (#$ . 1969)])
(put 'frameset-timestamp 'compiler-macro 'frameset-timestamp--cmacro)
#@63 Access slot "timestamp" of `frameset' struct CL-X.

(fn CL-X)
(defalias 'frameset-timestamp #[257 "\211\301H>\204\302\303\304D\"\210\211\305H\207" [cl-struct-frameset-tags 0 signal wrong-type-argument frameset 2] 5 (#$ . 2407)])
(byte-code "\300\301\302\303#\300\301\304\305#\300\207" [function-put frameset-timestamp side-effect-free t gv-expander #[514 "\300\301\302\"\207" [error "%s is a read-only slot" frameset-timestamp] 5 "\n\n(fn CL-DO CL-X)"]] 5)
#@69 compiler-macro for inlining `frameset-app'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'frameset-app--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block frameset-app (progn (or (and (memq (aref cl-x 0) cl-struct-frameset-tags)) (signal 'wrong-type-argument (list 'frameset cl-x))) (aref cl-x 3))) nil] 9 (#$ . 2874)])
(put 'frameset-app 'compiler-macro 'frameset-app--cmacro)
#@57 Access slot "app" of `frameset' struct CL-X.

(fn CL-X)
(defalias 'frameset-app #[257 "\211\301H>\204\302\303\304D\"\210\211\305H\207" [cl-struct-frameset-tags 0 signal wrong-type-argument frameset 3] 5 (#$ . 3282)])
(byte-code "\300\301\302\303#\300\207" [function-put frameset-app side-effect-free t] 4)
#@70 compiler-macro for inlining `frameset-name'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'frameset-name--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block frameset-name (progn (or (and (memq (aref cl-x 0) cl-struct-frameset-tags)) (signal 'wrong-type-argument (list 'frameset cl-x))) (aref cl-x 4))) nil] 9 (#$ . 3598)])
(put 'frameset-name 'compiler-macro 'frameset-name--cmacro)
#@58 Access slot "name" of `frameset' struct CL-X.

(fn CL-X)
(defalias 'frameset-name #[257 "\211\301H>\204\302\303\304D\"\210\211\305H\207" [cl-struct-frameset-tags 0 signal wrong-type-argument frameset 4] 5 (#$ . 4011)])
(byte-code "\300\301\302\303#\300\207" [function-put frameset-name side-effect-free t] 4)
#@77 compiler-macro for inlining `frameset-description'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'frameset-description--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block frameset-description (progn (or (and (memq (aref cl-x 0) cl-struct-frameset-tags)) (signal 'wrong-type-argument (list 'frameset cl-x))) (aref cl-x 5))) nil] 9 (#$ . 4330)])
(put 'frameset-description 'compiler-macro 'frameset-description--cmacro)
#@65 Access slot "description" of `frameset' struct CL-X.

(fn CL-X)
(defalias 'frameset-description #[257 "\211\301H>\204\302\303\304D\"\210\211\305H\207" [cl-struct-frameset-tags 0 signal wrong-type-argument frameset 5] 5 (#$ . 4778)])
(byte-code "\300\301\302\303#\300\207" [function-put frameset-description side-effect-free t] 4)
#@76 compiler-macro for inlining `frameset-properties'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'frameset-properties--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block frameset-properties (progn (or (and (memq (aref cl-x 0) cl-struct-frameset-tags)) (signal 'wrong-type-argument (list 'frameset cl-x))) (aref cl-x 6))) nil] 9 (#$ . 5118)])
(put 'frameset-properties 'compiler-macro 'frameset-properties--cmacro)
#@64 Access slot "properties" of `frameset' struct CL-X.

(fn CL-X)
(defalias 'frameset-properties #[257 "\211\301H>\204\302\303\304D\"\210\211\305H\207" [cl-struct-frameset-tags 0 signal wrong-type-argument frameset 6] 5 (#$ . 5561)])
(byte-code "\300\301\302\303#\300\207" [function-put frameset-properties side-effect-free t] 4)
#@72 compiler-macro for inlining `frameset-states'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'frameset-states--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block frameset-states (progn (or (and (memq (aref cl-x 0) cl-struct-frameset-tags)) (signal 'wrong-type-argument (list 'frameset cl-x))) (aref cl-x 7))) nil] 9 (#$ . 5898)])
(put 'frameset-states 'compiler-macro 'frameset-states--cmacro)
#@60 Access slot "states" of `frameset' struct CL-X.

(fn CL-X)
(defalias 'frameset-states #[257 "\211\301H>\204\302\303\304D\"\210\211\305H\207" [cl-struct-frameset-tags 0 signal wrong-type-argument frameset 7] 5 (#$ . 6321)])
(byte-code "\300\301\302\303#\300\207" [function-put frameset-states side-effect-free t] 4)
#@134 compiler-macro for inlining `frameset--make'.

(fn CL-WHOLE &cl-quote &key VERSION TIMESTAMP APP NAME DESCRIPTION PROPERTIES STATES)
(defalias 'frameset--make--cmacro #[385 "\300\301\"\206\302A@\300\303\"\206\304A@\300\305\"A@\300\306\"A@\300\307\"A@\300\310\"A@\300\311\"A@\211\203a\211@\312>\203I\211AA\262\2026\313	>A@\203X\314\262\2026\315\316@\"\210\2026\210\317\320\321\314\f\314\f\f\f\f\f\f\f&\f\207" [plist-member :version (nil 1) :timestamp (nil (current-time)) :app :name :description :properties :states (:version :timestamp :app :name :description :properties :states :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:version :timestamp :app :name :description :properties :states)" cl--defsubst-expand (version timestamp app name description properties states) (cl-block frameset--make (vector 'frameset version timestamp app name description properties states))] 22 (#$ . 6647)])
(put 'frameset--make 'compiler-macro 'frameset--make--cmacro)
#@113 Constructor for objects of type `frameset'.

(fn &key VERSION TIMESTAMP APP NAME DESCRIPTION PROPERTIES STATES)
(defalias 'frameset--make #[128 "\300\301\"\206\302A@\300\303\"\206\304\305 DA@\300\306\"A@\300\307\"A@\300\310\"A@\300\311\"A@\300\312\"A@\211\203d\211@\313>\203L\211AA\262\2029\314	>A@\203[\304\262\2029\315\316@\"\210\2029\210\317\320&\207" [plist-member :version (nil 1) :timestamp nil current-time :app :name :description :properties :states (:version :timestamp :app :name :description :properties :states :allow-other-keys) :allow-other-keys error "Keyword argument %s not one of (:version :timestamp :app :name :description :properties :states)" vector frameset] 17 (#$ . 7674)])
(byte-code "\300\301\302\303#\304\305\306\307\310\303\311\312\305\307&	\210\313\314\315\316#\210\313\317\315\320#\210\313\321\315\322#\210\313\323\315\324#\210\313\325\315\326#\210\313\327\315\330#\210\313\331\315\332#\210\313\333\315\334#\207" [function-put frameset--make side-effect-free t cl-struct-define frameset "A frameset encapsulates a serializable view of a set of frames and windows.\n\nIt contains the following slots, which can be accessed with\n(frameset-SLOT fs) and set with (setf (frameset-SLOT fs) VALUE):\n\n  version      A read-only version number, identifying the format\n		 of the frameset struct.  Currently its value is 1.\n  timestamp    A read-only timestamp, the output of `current-time'.\n  app          A symbol, or a list whose first element is a symbol, which\n		 identifies the creator of the frameset and related info;\n		 for example, desktop.el sets this slot to a list\n		 `(desktop . ,desktop-file-version).\n  name         A string, the name of the frameset instance.\n  description  A string, a description for user consumption (to show in\n		 menus, messages, etc).\n  properties   A property list, to store both frameset-specific and\n		 user-defined serializable data.\n  states       A list of items (FRAME-PARAMETERS . WINDOW-STATE), in no\n		 particular order.  Each item represents a frame to be\n		 restored.  FRAME-PARAMETERS is a frame's parameter alist,\n		 extracted with (frame-parameters FRAME) and filtered\n		 through `frameset-filter-params'.\n		 WINDOW-STATE is the output of `window-state-get' applied\n		 to the root window of the frame.\n\nTo avoid collisions, it is recommended that applications wanting to add\nprivate serializable data to `properties' either store all info under a\nsingle, distinctive name, or use property names with a well-chosen prefix.\n\nA frameset is intended to be used through the following simple API:\n\n - `frameset-save', the type's constructor, captures all or a subset of the\n   live frames, and returns a serializable snapshot of them (a frameset).\n - `frameset-restore' takes a frameset, and restores the frames and windows\n   it describes, as faithfully as possible.\n - `frameset-p' is the predicate for the frameset type.\n - `frameset-valid-p' checks a frameset's validity.\n - `frameset-copy' returns a deep copy of a frameset.\n - `frameset-prop' is a `setf'able accessor for the contents of the\n   `properties' slot.\n - The `frameset-SLOT' accessors described above." nil vector ((cl-tag-slot) (version 1 :read-only t) (timestamp (current-time) :read-only t) (app nil) (name nil) (description nil) (properties nil) (states nil)) cl-struct-frameset-tags put frameset-p function-documentation "Return non-nil if OBJECT is a frameset, nil otherwise.\n\n(fn OBJECT)" frameset-version "Return the version number of FRAMESET.\n\nIt is an integer that identifies the format of the frameset struct.\nThis slot cannot be modified.\n\n(fn FRAMESET)" frameset-timestamp "Return the creation timestamp of FRAMESET.\n\nThe value is in the format returned by `current-time'.\nThis slot cannot be modified.\n\n(fn FRAMESET)" frameset-app "Return the application identifier for FRAMESET.\n\nThe value is either a symbol, like `my-app', or a list\n(my-app ADDITIONAL-DATA...).\n\n(fn FRAMESET)" frameset-name "Return the name of FRAMESET (a string).\n\n(fn FRAMESET)" frameset-description "Return the description of FRAMESET (a string).\n\n(fn FRAMESET)" frameset-properties "Return the property list of FRAMESET.\n\nThis list is useful to store both frameset-specific and user-defined\nserializable data.  The simplest way to access and modify it is\nthrough `frameset-prop' (which see).\n\n(fn FRAMESET)" frameset-states "Return the list of frame states of FRAMESET.\n\nA frame state is a pair (FRAME-PARAMETERS . WINDOW-STATE), where\nFRAME-PARAMETERS is a frame's parameter alist, extracted with\n(frame-parameters FRAME) and filtered through `frameset-filter-params',\nand WINDOW-STATE is the output of `window-state-get' applied to the\nroot window of the frame.\n\nIMPORTANT: Modifying this slot may cause frameset functions to fail,\nunless the type constraints defined above are respected.\n\n(fn FRAMESET)"] 11)
#@85 Return a deep copy of FRAMESET.
FRAMESET is copied with `copy-tree'.

(fn FRAMESET)
(defalias 'frameset-copy #[257 "\300\301\"\207" [copy-tree t] 4 (#$ . 12635)])
#@75 Return non-nil if OBJECT is a valid frameset, nil otherwise.

(fn OBJECT)
(defalias 'frameset-valid-p #[257 "\301!\205\370\211G\302Y\205\370\211\303H>\205\370\211\303H>\204$\304\305\306D\"\210\211\307H\250\205\370\211\303H>\204:\304\305\306D\"\210\211\310H:\205\370\211\303H>\204P\304\305\306D\"\210\211\311H\211?\206e\2119\206e\211:\205e\211@9\262\205\370\211\303H>\204y\304\305\306D\"\210\211\312H\206\200\313;\205\370\211\303H>\204\223\304\305\306D\"\210\211\314H\206\232\313;\205\370\211\303H>\204\255\304\305\306D\"\210\211\315H<\205\370\211\303H>\204\303\304\305\306D\"\210\211\316H\211<\205\341\317\320\303H>\204\335\304\305\306D\"\210\316H\"\262\205\370\211\303H>\204\365\304\305\306D\"\210\211\307H\207" [cl-struct-frameset-tags vectorp 8 0 signal wrong-type-argument frameset 1 2 3 4 "" 5 6 7 cl-every consp] 8 (#$ . 12805)])
#@88 Setter function for `frameset-prop'.  Internal use only.

(fn FRAMESET PROPERTY VALUE)
(defalias 'frameset--prop-setter #[771 "\301H>\204\302\303\304D\"\210\211\305\306\301H>\204$\302\303\304	D\"\210\305H#I\266\207" [cl-struct-frameset-tags 0 signal wrong-type-argument frameset 6 plist-put] 11 (#$ . 13697)])
#@150 Return the value for FRAMESET of PROPERTY.

Properties can be set with

  (setf (frameset-prop FRAMESET PROPERTY) NEW-VALUE)

(fn FRAMESET PROPERTY)
(defalias 'frameset-prop #[514 "\301\302H>\204\303\304\305D\"\210\306H\"\207" [cl-struct-frameset-tags plist-get 0 signal wrong-type-argument frameset 6] 7 (#$ . 14032)])
(byte-code "\300\301\302\303#\300\207" [function-put frameset-prop gv-expander #[385 "\300\301\302$\207" [gv--defsetter frameset-prop #[385 "\300\301C\"B\207" [frameset--prop-setter append] 6 "\n\n(fn VAL &rest ARGS)"]] 7 "\n\n(fn DO &rest ARGS)"]] 4)
#@138 Minimum set of parameters to filter for live (on-session) framesets.
DO NOT MODIFY.  See `frameset-filter-alist' for a full description.
(defvar frameset-session-filter-alist '((name . :never) (left . frameset-filter-iconified) (minibuffer . frameset-filter-minibuffer) (top . frameset-filter-iconified)) (#$ . 14622))
#@116 Parameters to filter for persistent framesets.
DO NOT MODIFY.  See `frameset-filter-alist' for a full description.
(defvar frameset-persistent-filter-alist (nconc '((background-color . frameset-filter-sanitize-color) (buffer-list . :never) (buffer-predicate . :never) (buried-buffer-list . :never) (client . :never) (delete-before . :never) (font . frameset-filter-font-param) (font-backend . :never) (foreground-color . frameset-filter-sanitize-color) (frameset--text-pixel-height . :save) (frameset--text-pixel-width . :save) (fullscreen . frameset-filter-shelve-param) (GUI:font . frameset-filter-unshelve-param) (GUI:fullscreen . frameset-filter-unshelve-param) (GUI:height . frameset-filter-unshelve-param) (GUI:width . frameset-filter-unshelve-param) (height . frameset-filter-shelve-param) (outer-window-id . :never) (parent-frame . :never) (parent-id . :never) (mouse-wheel-frame . :never) (tty . frameset-filter-tty-to-GUI) (tty-type . frameset-filter-tty-to-GUI) (width . frameset-filter-shelve-param) (window-id . :never) (window-system . :never)) frameset-session-filter-alist) (#$ . 14948))
#@2149 Alist of frame parameters and filtering functions.

This alist is the default value of the FILTERS argument of
`frameset-save' and `frameset-restore' (which see).

Initially, `frameset-filter-alist' is set to, and shares the value of,
`frameset-persistent-filter-alist'.  You can override any item in
this alist by `push'ing a new item onto it.  If, for some reason, you
intend to modify existing values, do

  (setq frameset-filter-alist (copy-tree frameset-filter-alist))

before changing anything.

On saving, PARAMETERS is the parameter alist of each frame processed,
and FILTERED is the parameter alist that gets saved to the frameset.

On restoring, PARAMETERS is the parameter alist extracted from the
frameset, and FILTERED is the resulting frame parameter alist used
to restore the frame.

Elements of `frameset-filter-alist' are conses (PARAM . ACTION),
where PARAM is a parameter name (a symbol identifying a frame
parameter), and ACTION can be:

 nil       The parameter is copied to FILTERED.
 :never    The parameter is never copied to FILTERED.
 :save     The parameter is copied only when saving the frame.
 :restore  The parameter is copied only when restoring the frame.
 FILTER    A filter function.

FILTER can be a symbol FILTER-FUN, or a list (FILTER-FUN ARGS...).
FILTER-FUN is invoked with

  (apply FILTER-FUN CURRENT FILTERED PARAMETERS SAVING ARGS)

where

 CURRENT     A cons (PARAM . VALUE), where PARAM is the one being
	     filtered and VALUE is its current value.
 FILTERED    The resulting alist (so far).
 PARAMETERS  The complete alist of parameters being filtered,
 SAVING      Non-nil if filtering before saving state, nil if filtering
	       before restoring it.
 ARGS        Any additional arguments specified in the ACTION.

FILTER-FUN is allowed to modify items in FILTERED, but no other arguments.
It must return:
 nil                      Skip CURRENT (do not add it to FILTERED).
 t                        Add CURRENT to FILTERED as is.
 (NEW-PARAM . NEW-VALUE)  Add this to FILTERED instead of CURRENT.

Frame parameters not on this alist are passed intact, as if they were
defined with ACTION = nil.
(defvar frameset-filter-alist frameset-persistent-filter-alist (#$ . 16060))
#@311 True when switching to a graphic display.
Return non-nil if the parameter alist PARAMETERS describes a frame on a
text-only terminal, and the frame is being restored on a graphic display;
otherwise return nil.  Only meaningful when called from a filtering
function in `frameset-filter-alist'.

(fn PARAMETERS)
(defalias 'frameset-switch-to-gui-p #[257 "\205\301\236A?\205A\207" [frameset--target-display display] 3 (#$ . 18292)])
#@314 True when switching to a text-only terminal.
Return non-nil if the parameter alist PARAMETERS describes a frame on a
graphic display, and the frame is being restored on a text-only terminal;
otherwise return nil.  Only meaningful when called from a filtering
function in `frameset-filter-alist'.

(fn PARAMETERS)
(defalias 'frameset-switch-to-tty-p #[257 "\205\301\236A\205A?\207" [frameset--target-display display] 3 (#$ . 18736)])
#@194 Remove CURRENT when switching from tty to a graphic display.

For the meaning of CURRENT, FILTERED, PARAMETERS and SAVING,
see `frameset-filter-alist'.

(fn CURRENT FILTERED PARAMETERS SAVING)
(defalias 'frameset-filter-tty-to-GUI #[1028 "\211\206\300!?\207" [frameset-switch-to-gui-p] 6 (#$ . 19183)])
#@250 When switching to a GUI frame, remove "unspecified" colors.
Useful as a filter function for tty-specific parameters.

For the meaning of CURRENT, FILTERED, PARAMETERS and SAVING,
see `frameset-filter-alist'.

(fn CURRENT FILTERED PARAMETERS SAVING)
(defalias 'frameset-filter-sanitize-color #[1028 "\211\206!\301!?\206!A;?\206!\302A\303\304\305#)\266\203?\207" [inhibit-changing-match-data frameset-switch-to-gui-p "^unspecified-[fb]g$" nil t string-match] 11 (#$ . 19496)])
#@341 Force the minibuffer parameter to have a sensible value.

When saving, convert (minibuffer . #<window>) to (minibuffer . nil).
When restoring, if there are two copies, keep the one pointing to
a live window.

For the meaning of CURRENT, FILTERED, PARAMETERS and SAVING,
see `frameset-filter-alist'.

(fn CURRENT FILTERED PARAMETERS SAVING)
(defalias 'frameset-filter-minibuffer #[1028 "A\300\203\301!\203\302\202-\303\202-\304\236\211\262\203,\301!\203(\211\241\210\300\202-\303\207" [nil windowp (minibuffer) t minibuffer] 8 (#$ . 19988)])
#@312 When switching to a tty frame, save parameter P as PREFIX:P.
The parameter can be later restored with `frameset-filter-unshelve-param'.
PREFIX defaults to `GUI'.

For the meaning of CURRENT, FILTERED, PARAMETERS and SAVING,
see `frameset-filter-alist'.

(fn CURRENT FILTERED PARAMETERS SAVING &optional PREFIX)
(defalias 'frameset-filter-shelve-param #[1284 "\211\204\300\262\203
\301\207\302!\203)\303\304\305@#!\211\236?\205(\211AB\207\306!\203<\303\304\305@#!\236?\207\301\207" [GUI t frameset-switch-to-tty-p intern format "%s:%s" frameset-switch-to-gui-p] 10 (#$ . 20552)])
#@245 When switching to a GUI frame, restore PREFIX:P parameter as P.
CURRENT must be of the form (PREFIX:P . value).

For the meaning of CURRENT, FILTERED, PARAMETERS and SAVING,
see `frameset-filter-alist'.

(fn CURRENT FILTERED PARAMETERS SAVING)
(defalias 'frameset-filter-unshelve-param #[1028 "\211\2069\301!?\2069\302@!\303\304\305\306\307\310#)\266\203T\"!A\236\211\2042B\2027\211\241\210\306\266\204\207" [inhibit-changing-match-data frameset-switch-to-gui-p symbol-name intern substring ":" nil t string-match] 15 (#$ . 21158)])
#@226 When switching from a tty frame to a GUI frame, remove the FONT param.

When switching from a GUI frame to a tty frame, behave
as `frameset-filter-shelve-param' does.

(fn CURRENT FILTERED PARAMETERS SAVING &optional PREFIX)
(defalias 'frameset-filter-font-param #[1284 "\206\300!\205\301%\207" [frameset-switch-to-tty-p frameset-filter-shelve-param] 11 (#$ . 21717)])
#@330 Remove CURRENT when saving an iconified frame.
This is used for positional parameters `left' and `top', which are
meaningless in an iconified frame, so the frame is restored in a
default position.

For the meaning of CURRENT, FILTERED, PARAMETERS and SAVING,
see `frameset-filter-alist'.

(fn CURRENT FILTERED PARAMETERS SAVING)
(defalias 'frameset-filter-iconified #[1028 "\211\205\n\300\236A\301=?\207" [visibility icon] 6 (#$ . 22104)])
#@314 Filter parameter alist PARAMETERS and return a filtered alist.
FILTER-ALIST is an alist of parameter filters, in the format of
`frameset-filter-alist' (which see).
SAVING is non-nil while filtering parameters to save a frameset,
nil while the filtering is done to restore it.

(fn PARAMETERS FILTER-ALIST SAVING)
(defalias 'frameset-filter-params #[771 "\301C\211\203\232\211@\211@\236A\302\204)\203\202 \303!\242B\240\210\202\221\304\267\202R\202\221\204\221\303!\242B\240\210\202\221\203\221\242B\240\210\202\221:\203n@A\n		&\266\202\221\305!\203\206\211\301&\210\202\221\306\307\310\311\"\312#\266\266A\266\202\202\210\203\276\313\242\236A\203\260\241\210\202\274\313B\211\262\242B\240\210\266\211\242\207" [frameset--target-display nil #[1542 "\300\242		&\211\301=\203\202\211\211\205/\203'\202*\302!\242B\240\207" [apply t copy-tree] 13 "\n\n(fn PARAMETERS SAVING FILTERED CURRENT ARGS FUN)"] copy-tree #s(hash-table size 3 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (:never 47 :restore 50 :save 67)) fboundp delay-warning frameset format "Unknown filter %S" :error display] 17 (#$ . 22553)])
#@63 Set FRAME's id if not yet set.
Internal use only.

(fn FRAME)
(defalias 'frameset--set-id #[257 "\300\301\"?\205*\302\301\303\304\305\306S\211\262\307Y\203#\310\311!B\262\202\211\237\266\202\312##\207" [frame-parameter frameset--id set-frame-parameter mapconcat #[257 "\300\301\"\207" [format "%04X"] 4 "\n\n(fn N)"] 4 nil 0 random 65536 "-"] 10 (#$ . 23786)])
#@72 Return the frame id for frame configuration FRAME-CFG.

(fn FRAME-CFG)
(defalias 'frameset-cfg-id #[257 "\300\236A\207" [frameset--id] 3 (#$ . 24164)])
#@383 Return the frame id of FRAME, if it has one; else, return nil.
A frame id is a string that uniquely identifies a frame.
It is persistent across `frameset-save' / `frameset-restore'
invocations, and once assigned is never changed unless the same
frame is duplicated (via `frameset-restore'), in which case the
newest frame keeps the id and the old frame's is set to nil.

(fn FRAME)
(defalias 'frameset-frame-id #[257 "\300\301\"\207" [frame-parameter frameset--id] 4 (#$ . 24324)])
#@57 Return non-nil if FRAME's id matches ID.

(fn FRAME ID)
(defalias 'frameset-frame-id-equal-p #[514 "\300!\230\207" [frameset-frame-id] 4 (#$ . 24813)])
#@177 Return the live frame with id ID, if exists; else nil.
If FRAME-LIST is a list of frames, check these frames only.
If nil, check all live frames.

(fn ID &optional FRAME-LIST)
(defalias 'frameset-frame-with-id #[513 "\300\301\302\303\304\305!\306\"\307\310%\206\311 \"\207" [cl-find-if make-byte-code 257 "\301!\205\n\302\300\"\207" vconcat vector [frame-live-p frameset-frame-id-equal-p] 4 "\n\n(fn F)" frame-list] 9 (#$ . 24974)])
#@459 Process FRAME-LIST and record relationships.
FRAME-LIST is a list of frames.

The relationships recorded for each frame are

- `minibuffer' via `frameset--mini'
- `delete-before' via `frameset--delete-before'
- `parent-frame' via `frameset--parent-frame'
- `mouse-wheel-frame' via `frameset--mouse-wheel-frame'
- `text-pixel-width' via `frameset--text-pixel-width'
- `text-pixel-height' via `frameset--text-pixel-height'

Internal use only.

(fn FRAME-LIST)
(defalias 'frameset--record-relationships #[257 "\302 \211\203#\211@\211>\203\303!\210\304\305\306=B#\210A\266\202\202\210\211\211\203\234\211@\307!\310\311\"\310\312\"\310\305\"?\211\204K\204K\204K\203\223\211\203S\303!\210\203`\304\313\314!#\210\203m\304\315\314!#\210\203y\304\316\314!#\210\211\203\223\317\320!!\304\305\321\205\217\314!B#\266\266A\266\202\202%\210\211\211\205\306\211@	\203\277\310\322\"\204\277\304\323\324!#\210\304\325\326!#\210A\266\202\202\236\207" [default-minibuffer-frame frame-resize-pixelwise minibuffer-frame-list frameset--set-id set-frame-parameter frameset--mini t frame-parent frame-parameter delete-before mouse-wheel-frame frameset--parent-frame frameset-frame-id frameset--delete-before frameset--mouse-wheel-frame window-frame minibuffer-window nil fullscreen frameset--text-pixel-width frame-text-width frameset--text-pixel-height frame-text-height] 14 (#$ . 25422)])
#@713 Return a frameset for FRAME-LIST, a list of frames.
Dead frames and non-frame objects are silently removed from the list.
If nil, FRAME-LIST defaults to the output of `frame-list' (all live frames).
APP, NAME and DESCRIPTION are optional data; see the docstring of the
`frameset' defstruct for details.
FILTERS is an alist of parameter filters; if nil, the value of the variable
`frameset-filter-alist' is used instead.
PREDICATE is a predicate function, which must return non-nil for frames that
should be saved; if PREDICATE is nil, all frames from FRAME-LIST are saved.
PROPERTIES is a user-defined property list to add to the frameset.

(fn FRAME-LIST &key APP NAME DESCRIPTION FILTERS PREDICATE PROPERTIES)
(defalias 'frameset-save #[385 "\301\302\"A@\301\303\"A@\301\304\"A@\301\305\"A@\301\306\"A@\301\307\"A@\211\203R\211@\310>\203:\211AA\262\202'\311>A@\203I\312\262\202'\313\314@\"\210\202'\210\315!\206\\\316 \312\317\320\203k\317\"\202l\"\312\321!\210\322\302\n\303\304\f\307\323\324\325\326\327\330\331!\332\"\333\334%
\"&\n\262\335!\204\237\336\337!\210)\266\202\207" [frameset--target-display plist-member :app :name :description :filters :predicate :properties (:app :name :description :filters :predicate :properties :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:app :name :description :filters :predicate :properties)" copy-sequence frame-list cl-delete-if-not frame-live-p frameset--record-relationships frameset--make :states mapcar make-byte-code 257 "\302\303!\300\206		\304#\305\306!\304\"B\207" vconcat vector [frameset-filter-alist frameset-filter-params frame-parameters t window-state-get frame-root-window] 5 "\n\n(fn FRAME)" frameset-valid-p cl--assertion-failed (frameset-valid-p fs)] 28 (#$ . 26857)])
#@601 Return an absolute positioning value for a frame.
VALUE is the value of a positional frame parameter (`left' or `top').
If VALUE is relative to the screen edges (like (+ -35) or (-200), it is
converted to absolute by adding it to the corresponding edge; if it is
an absolute position, it is returned unmodified.
LEFT/TOP and RIGHT/BOTTOM indicate the dimensions of the screen in
pixels along the relevant direction: either the position of the left
and right edges for a `left' positional parameter, or the position of
the top and bottom edges for a `top' parameter.

(fn VALUE LEFT/TOP RIGHT/BOTTOM)
(defalias 'frameset-compute-pos #[771 ":\203i@\211\300\267\202dA\211:\2030\211@A\211\204&\\\262\202+\211\262\266\202\2024\211\262\262\202hA\211:\203[\211@A\211\204Q\\\262\202V\211\262\266\202\202_\211\262\262\202h\211\262\207\211\207" [#s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (+ 13 - 57))] 10 (#$ . 28678)])
#@370 If FRAME is offscreen, move it back onscreen and, if necessary, resize it.
For the description of FORCE-ONSCREEN, see `frameset-restore'.
When forced onscreen, frames wider than the monitor's workarea are converted
to fullwidth, and frames taller than the workarea are converted to fullheight.
NOTE: This only works for non-iconified frames.

(fn FRAME FORCE-ONSCREEN)
(defalias 'frameset-move-onscreen #[514 "\300!A@A\211@A\211@A\211@A\211@A\n\301\302#\301\302#\303\304\305\"#\303\304\306\"#\307!\310!\311!\312!_]\313!\314!_]\301\302#\301\302#\315!\203\205		F
F#\202\347\316\267\202\346\211\fW\204\352\211	V\204\352W\204\352\nV\204\352W\204\352\nV\204\352\fW\204\352	V\202\347\nV\204\352W\204\352	V\204\352\211\fW\202\347\317\205\213
VV\317\203\305BB\262\202*
V\203\305	Z\\BB\262\202*\nW\203*\305BB\262\2039\306BB\262\202a\fV\203Q\306Z\\BB\262\202a	W\203a\306BB\262\204i\203\200\320\204r\321\202{\204z\322\202{\323BB\262\211\205\211\324\"\266\203\266\212\266\204\207" [frame-monitor-attributes + -1 frameset-compute-pos frame-parameter left top frame-char-width frame-char-height frame-pixel-width frame-width frame-pixel-height frame-height functionp #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (:all 140 t 200)) nil fullscreen fullheight fullwidth maximized modify-frame-parameters] 32 (#$ . 29680)])
#@283 Find a reusable frame satisfying PREDICATE.
Look through available frames whose display property matches DISPLAY
and return the first one for which (PREDICATE frame ARGS) returns t.
If PREDICATE is nil, it is always satisfied.  Internal use only.

(fn PREDICATE DISPLAY &rest ARGS)
(defalias 'frameset--find-frame-if #[642 "\301\302\303\304\305\306#\307\"\310\311%\"\207" [frameset--reuse-list cl-find-if make-byte-code 257 "\303\304\"\301\232\205\300?\206\305\300\302#\207" vconcat vector [frame-parameter display apply] 5 "\n\n(fn FRAME)"] 12 (#$ . 31219)])
#@224 Return an existing frame to reuse, or nil if none found.
DISPLAY is the display where the frame will be shown, and PARAMETERS
is the parameter alist of the frame being restored.  Internal use only.

(fn DISPLAY PARAMETERS)
(defalias 'frameset--reuse-frame #[514 "\301\211\204\302\301\"\262\202S\303\236A\211\262@\203:\302\304\305!#\262\204S\306\236A\307=\204S\302\310\"\262\202S\211\203M\302\311\305!A$\262\202S\302\301\"\262\203\\\312\"\207" [frameset--reuse-list nil frameset--find-frame-if frameset--mini frameset-frame-id-equal-p frameset-cfg-id minibuffer only #[257 "\300\301\"\302=\207" [frame-parameter minibuffer t] 4 "\n\n(fn F)"] #[771 "\300\"\205\211?\206\300\301\302!!\"\207" [frameset-frame-id-equal-p window-frame minibuffer-window] 7 "\n\n(fn F ID MINI-ID)"] delq] 9 (#$ . 31799)])
#@300 Return a list of PARAMETERS that must be set when creating the frame.
Setting position and size parameters as soon as possible helps reducing
flickering; other parameters, like `minibuffer' and `border-width', can
not be changed once the frame has been created.  Internal use only.

(fn PARAMETERS)
(defalias 'frameset--initial-params #[257 "\300\301\211:\203 @\262\236\211\203\211B\262\210A\262\202\211\237\207" [(left top width height border-width minibuffer) nil] 7 (#$ . 32648)])
#@343 Set up and return a frame according to its saved state.
That means either reusing an existing frame or creating one anew.
PARAMETERS is the frame's parameter alist; WINDOW-STATE is its window state.
For the meaning of FILTERS and FORCE-ONSCREEN, see `frameset-restore'.
Internal use only.

(fn PARAMETERS WINDOW-STATE FILTERS FORCE-ONSCREEN)
(defalias 'frameset--restore-frame #[1028 "\302\236A\303\304#\305\236A\304\211\306	\236A\307\n\236A\203<\310\236\311B\203/\241\210\202:\310B\211\262B\262\266\211\203_\312\236\311B\203R\241\210\202]\312B\211\262B\262\266\266\203\263\313=\205o\310\236A\314=\205y\312\236A\315\236\316\317\320\321$\262\203\225\322\323\310BD\"\262\203\244\322\324\312BD\"\262\211B\262\302BB\262\266\205\273\325\"\262\211\203\312\326\327	#\210\202\333\330\331\332!B\"\262\326\333	#\210\334\335\"\262\336\337\"\211\205\354\340!\341!\203\370\342\343#\210\266\344\336\302\"=\203\334\302\"\202\"\210\203$\336\315\"\345=\204$\346\"\210\203-\344\"\210\347\350!\351#\210\207" [frameset--reuse-list frameset--action-map fullscreen frameset-filter-params nil display frameset--text-pixel-width frameset--text-pixel-height width text-pixels height fullheight fullwidth visibility cl-delete-if #[257 "\211\300>\207" [(visibility fullscreen width height)] 3 "\n\n(fn P)"] :key car append (user-size . t) (user-size . t) frameset--reuse-frame puthash :reused make-frame-on-display (visibility) frameset--initial-params :created assq-delete-all border-width frame-parameter frameset--parent-frame frameset-frame-with-id frame-live-p set-frame-parameter parent-frame modify-frame-parameters icon frameset-move-onscreen window-state-put frame-root-window safe] 17 (#$ . 33153)])
#@175 Predicate to sort frame states in an order suitable for creating frames.
It sorts minibuffer-owning frames before minibufferless ones.
Internal use only.

(fn STATE1 STATE2)
(defalias 'frameset--minibufferless-last-p #[514 "\300@\236A\300@\236A\211@A\211@A\211\301=\203!\301\202F\301=\203+\302\202F\211=\2047\211\301=\202F\211\302=\203E\206F\202F\301\266\202\266\202\266\202\266\202\207" [frameset--mini t nil] 14 (#$ . 34961)])
#@129 True if saved frames' displays should be honored.
For the meaning of FORCE-DISPLAY, see `frameset-restore'.

(fn FORCE-DISPLAY)
(defalias 'frameset-keep-original-display-p #[257 "\301=\203\302\207\303 \203\304\207\211?\207" [system-type windows-nt nil daemonp t] 3 (#$ . 35419)])
#@83 Predicate to sort minibuffer-less frames before other frames.

(fn FRAME1 FRAME2)
(defalias 'frameset-minibufferless-first-p #[514 "\300\301\302\"!\207" [windowp frame-parameter minibuffer] 6 (#$ . 35710)])
#@2927 Restore a FRAMESET into the current display(s).

PREDICATE is a function called with two arguments, the parameter alist
and the window-state of the frame being restored, in that order (see
the docstring of the `frameset' defstruct for additional details).
If PREDICATE returns nil, the frame described by that parameter alist
and window-state is not restored.

FILTERS is an alist of parameter filters; if nil, the value of
`frameset-filter-alist' is used instead.

REUSE-FRAMES selects the policy to reuse frames when restoring:
  t        All existing frames can be reused.
  nil      No existing frame can be reused.
  match    Only frames with matching frame ids can be reused.
  PRED     A predicate function; it receives as argument a live frame,
             and must return non-nil to allow reusing it, nil otherwise.

FORCE-DISPLAY can be:
  t        Frames are restored in the current display.
  nil      Frames are restored, if possible, in their original displays.
  delete   Frames in other displays are deleted instead of restored.
  PRED     A function called with two arguments, the parameter alist and
	     the window state (in that order).  It must return t, nil or
	     `delete', as above but affecting only the frame that will
	     be created from that parameter alist.

FORCE-ONSCREEN can be:
  t        Force onscreen only those frames that are fully offscreen.
  nil      Do not force any frame back onscreen.
  all      Force onscreen any frame fully or partially offscreen.
  PRED     A function called with three arguments,
	   - the live frame just restored,
	   - a list (LEFT TOP WIDTH HEIGHT), describing the frame,
	   - a list (LEFT TOP WIDTH HEIGHT), describing the workarea.
	   It must return non-nil to force the frame onscreen, nil otherwise.

CLEANUP-FRAMES allows "cleaning up" the frame list after restoring a frameset:
  t        Delete all frames that were not created or restored upon.
  nil      Keep all frames.
  FUNC     A function called with two arguments:
           - FRAME, a live frame.
           - ACTION, which can be one of
             :rejected  Frame existed, but was not a candidate for reuse.
             :ignored   Frame existed, was a candidate, but wasn't reused.
             :reused    Frame existed, was a candidate, and restored upon.
             :created   Frame didn't exist, was created and restored upon.
           Return value is ignored.

Note the timing and scope of the operations described above: REUSE-FRAMES
affects existing frames; PREDICATE, FILTERS and FORCE-DISPLAY affect the frame
being restored before that happens; FORCE-ONSCREEN affects the frame once
it has been restored; and CLEANUP-FRAMES affects all frames alive after the
restoration, including those that have been reused or created anew.

All keyword parameters default to nil.

(fn FRAMESET &key PREDICATE FILTERS REUSE-FRAMES FORCE-DISPLAY FORCE-ONSCREEN CLEANUP-FRAMES)
(defalias 'frameset-restore #[385 "\306\307\"A@\306\310\"A@\306\311\"A@\306\312\"A@\306\313\"A@\306\314\"A@\211\203R\211@\315>\203:\211AA\262\202'\316>A@\203I\317\262\202'\320\321@\"\210\202'\210\322!\204^\323\324!\210\325 \326\327\330\"\331=\203o\211\202\323\204w\317\202\323\332=\203\301\333H	>\204\216\334\335\336D\"\210\337H\317\211\211:\203\272@\262@\262\340\341!\"\211\203\262\211B\262\210A\262\202\225\211\237\266\204\202\323\342!\203\316\343\"\202\323\320\344\"\211\211\203\362\211@\345\211\n>\203\347\346\202\350\347#\210A\266\202\202\325\210\350\351\n\333H	>\204\334\335\336
D\"\210\n\337H!\352\"\211\203<\211@\211@A\211\f\203&\f\"\2033\3531%\354\236A\211A@\2056\211\342
!\203F\f\"\202H\f\317\211\317\211\355!\204l\356\317\357\"\357	\236A\232\204l\357\356\317\357\"B\211A?\262\205\201\360=\206\201\205\201\361\236A\362=?\205\340\341	!\"\262\203\367\204\367@\203\262\361\236A\362=\203\367\363\364	\"\262\202\367\203\367\340!\317\204\314\365\336\366\367\"\370#\210\202\351\371!\262\372!\203\335\373!\204\351\365\336\366\374\"\370#\210\317\262\211\203\365\361B\nB\262\n\266\375\n\206\f$\262\211\203=\204\376\377\317#\210\205\211)\266\2070\2022\365\336\201@!\201A#\262\210\266A\266\202\202
\210\325 \211\203\264\211@\356\201B\"\211\205R\340!\356\201C\"=\204m\201D!\203m\376\201C#\210\266\356\201E\"\211\205|\340!\201D!\203\214\376\201F#\210\266\356\201G\"\211\205\233\340!\201D!\203\253\376\201H#\210\266A\266\202\202?\210\201I\333\331\"\210\203'\317C\331=\203\316\201J\202\317\201K\201L\201M\201N\201O\201P!\201Q\"\201R\201S%\"\210\350\242\201T\"\211\203%\211@\201U1\201V\"\"0\202\365\336\201@!\370#\262\210A\266\202\202\371\266\201W26\201K\201X\"0\211\203@\201Y!\210\210\201Z \206W\201[2W\201K\201\\\"0?\205c\201]\201^ !*\262\207" [frameset--action-map cl-struct-frameset-tags frameset--reuse-list frameset--target-display frameset-filter-alist default-minibuffer-frame plist-member :predicate :filters :reuse-frames :force-display :force-onscreen :cleanup-frames (:predicate :filters :reuse-frames :force-display :force-onscreen :cleanup-frames :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:predicate :filters :reuse-frames :force-display :force-onscreen :cleanup-frames)" frameset-valid-p cl--assertion-failed (frameset-valid-p frameset) frame-list make-hash-table :test eq t match 0 signal wrong-type-argument frameset 7 frameset-frame-with-id frameset-cfg-id functionp cl-remove-if-not "Invalid arg :reuse-frames %s" puthash :ignored :rejected sort copy-sequence frameset--minibufferless-last-p (debug error) frameset--mini frameset-keep-original-display-p frame-parameter display delete minibuffer only append ((tool-bar-lines . 0) (menu-bar-lines . 0)) delay-warning format "Minibuffer frame %S not found" :warning minibuffer-window window-live-p window-minibuffer-p "Not a minibuffer window %s" frameset--restore-frame set-frame-parameter frameset--id error-message-string :error frameset--parent-frame parent-frame frame-live-p frameset--delete-before delete-before frameset--mouse-wheel-frame mouse-wheel-frame sit-for #[514 "\211\300>\205	\301!\207" [(:rejected :ignored) delete-frame] 4 "\n\n(fn FRAME ACTION)"] maphash make-byte-code 514 "\300\300\242B\240\207" vconcat vector [] 5 "\n\n(fn FRAME ACTION)" frameset-minibufferless-first-p (debug error) gethash last-focus #[514 "\300\301\"\205\302\303\"\207" [frame-parameter last-focus-update throw last-focus] 5 "\n\n(fn FRAME _)"] select-frame-set-input-focus daemonp visible #[514 "\300!\205\301!\205\302\303\304\"\207" [frame-live-p frame-visible-p throw visible t] 5 "\n\n(fn FRAME _)"] make-frame-visible selected-frame] 30 (#$ . 35926)])
#@76 compiler-macro for inlining `frameset-register-p'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'frameset-register-p--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block frameset-register-p (and (memq (type-of cl-x) cl-struct-frameset-register-tags) t)) nil] 9 (#$ . 42801)])
(put 'frameset-register-p 'compiler-macro 'frameset-register-p--cmacro)
#@13 

(fn CL-X)
(defalias 'frameset-register-p #[257 "\301!>\205	\302\207" [cl-struct-frameset-register-tags type-of t] 3 (#$ . 43178)])
(byte-code "\300\301\302\303#\304\305\306\301#\207" [function-put frameset-register-p side-effect-free error-free put frameset-register cl-deftype-satisfies] 5)
#@83 compiler-macro for inlining `frameset-register-frameset'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'frameset-register-frameset--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block frameset-register-frameset (progn (or (frameset-register-p cl-x) (signal 'wrong-type-argument (list 'frameset-register cl-x))) (aref cl-x 1))) nil] 9 (#$ . 43481)])
(put 'frameset-register-frameset 'compiler-macro 'frameset-register-frameset--cmacro)
#@71 Access slot "frameset" of `frameset-register' struct CL-X.

(fn CL-X)
(defalias 'frameset-register-frameset #[257 "\301!>\204\302\303\304D\"\210\211\305H\207" [cl-struct-frameset-register-tags type-of signal wrong-type-argument frameset-register 1] 5 (#$ . 43945)])
(byte-code "\300\301\302\303#\300\207" [function-put frameset-register-frameset side-effect-free t] 4)
#@83 compiler-macro for inlining `frameset-register-frame-id'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'frameset-register-frame-id--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block frameset-register-frame-id (progn (or (frameset-register-p cl-x) (signal 'wrong-type-argument (list 'frameset-register cl-x))) (aref cl-x 2))) nil] 9 (#$ . 44325)])
(put 'frameset-register-frame-id 'compiler-macro 'frameset-register-frame-id--cmacro)
#@71 Access slot "frame-id" of `frameset-register' struct CL-X.

(fn CL-X)
(defalias 'frameset-register-frame-id #[257 "\301!>\204\302\303\304D\"\210\211\305H\207" [cl-struct-frameset-register-tags type-of signal wrong-type-argument frameset-register 2] 5 (#$ . 44789)])
(byte-code "\300\301\302\303#\300\207" [function-put frameset-register-frame-id side-effect-free t] 4)
#@80 compiler-macro for inlining `frameset-register-point'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'frameset-register-point--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block frameset-register-point (progn (or (frameset-register-p cl-x) (signal 'wrong-type-argument (list 'frameset-register cl-x))) (aref cl-x 3))) nil] 9 (#$ . 45169)])
(put 'frameset-register-point 'compiler-macro 'frameset-register-point--cmacro)
#@68 Access slot "point" of `frameset-register' struct CL-X.

(fn CL-X)
(defalias 'frameset-register-point #[257 "\301!>\204\302\303\304D\"\210\211\305H\207" [cl-struct-frameset-register-tags type-of signal wrong-type-argument frameset-register 3] 5 (#$ . 45618)])
(byte-code "\300\301\302\303#\304\305\306\"\207" [function-put frameset-register-point side-effect-free t defalias copy-frameset-register copy-sequence] 4)
#@98 compiler-macro for inlining `frameset-make-register'.

(fn CL-WHOLE-ARG FRAMESET FRAME-ID POINT)
(defalias 'frameset-make-register--cmacro #[1028 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (frameset frame-id point) (cl-block frameset-make-register (record 'frameset-register frameset frame-id point)) nil] 13 (#$ . 46045)])
(put 'frameset-make-register 'compiler-macro 'frameset-make-register--cmacro)
#@84 Constructor for objects of type `frameset-register'.

(fn FRAMESET FRAME-ID POINT)
(defalias 'frameset-make-register #[771 "\300\301$\207" [record frameset-register] 8 (#$ . 46470)])
(byte-code "\300\301\302\303#\304\305\306\307\310\306\311\312\305\303&	\210\313\314\306\315\306\316%\210\313\317\306\320\306\321%\207" [function-put frameset-make-register side-effect-free t cl-struct-define frameset-register nil cl-structure-object record ((cl-tag-slot) (frameset) (frame-id) (point)) cl-struct-frameset-register-tags cl-generic-define-method register-val-jump-to ((data frameset-register) arg) #[514 "\302\303!>\204\304\305\306D\"\210\307H\310	\311\203\312\202\313\314?\205'\315&\210\316\303!>\204:\304\305\306D\"\210\317H!\303!>\204M\304\305\306D\"\210\320H\321\211\205~\322!\210\323\324!\211\262!\205~\325\326\"\211\262!\205~\327\"\210rq\210b)\207" [cl-struct-frameset-register-tags frameset-session-filter-alist frameset-restore type-of signal wrong-type-argument frameset-register 1 :filters :reuse-frames t match :cleanup-frames #[514 "\211\300\267\202\301!\207\302!\207\303\207" [#s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (rejected 6 ignored 10)) iconify-frame delete-frame nil] 4 "\n\n(fn FRAME ACTION)"] frameset-frame-with-id 2 3 nil select-frame-set-input-focus buffer-live-p marker-buffer window-live-p get-buffer-window set-frame-selected-window] 10 "\n\n(fn DATA ARG)"] register-val-describe ((data frameset-register) _verbose) #[514 "\302!>\204\303\304\305D\"\210\306H\211\307H	>\204!\303\304\310D\"\210\211\311HG\312\313\314\211\306U\2033\315\2024\316\317\320\307H	>\204G\303\304\310D\"\210\321H\"$!\207" [cl-struct-frameset-register-tags cl-struct-frameset-tags type-of signal wrong-type-argument frameset-register 1 0 frameset 7 princ format "a frameset (%d frame%s, saved on %s)." "" "s" format-time-string "%c" 2] 15 "Print basic info about frameset stored in DATA.\nCalled from `list-registers' and `view-register'.  Internal use only.\n\n(fn DATA VERBOSE)"]] 11)
#@231 Store the current frameset in register REGISTER.
Use \[jump-to-register] to restore the frameset.
Argument is a character, naming the register.

Interactively, reads the register using `register-read-with-preview'.

(fn REGISTER)
(defalias 'frameset-to-register #[257 "\301\302\303\304\305\306%\307\303!\310 \311\312$\266\203\"\207" [frameset-session-filter-alist set-register frameset-save nil :app register :filters frameset-frame-id point-marker record frameset-register] 11 (#$ . 48571) (byte-code "\300\301!C\207" [register-read-with-preview "Frameset to register: "] 2)])
(provide 'frameset)

Youez - 2016 - github.com/yon3zu
LinuXploit