MMCT TEAM
Server IP : 111.118.215.189  /  Your IP : 18.117.158.174
Web Server : Apache
System : Linux md-in-83.webhostbox.net 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64
User : a1673wkz ( 2475)
PHP Version : 8.2.25
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON
Directory (0755) :  /usr/share/emacs/24.3/lisp/gnus/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : //usr/share/emacs/24.3/lisp/gnus/gnus-sync.elc
;ELC
;;; Compiled by mockbuild@buildfarm06-new.corp.cloudlinux.com on Fri Oct 11 10:10:08 2024
;;; from file /builddir/build/BUILD/emacs-24.3/lisp/gnus/gnus-sync.el
;;; in Emacs version 24.3.1
;;; 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!\210\300\303!\210\300\304!\210\305\306\307\310\311\312\313\302&\210\314\315\316\317\313\306\320\321&\210\314\322\323\324\313\306\320\325&\210\314\326\307\327\313\306\320\330&\210\314\331\307\332\313\306\320\333&\207" [require json gnus gnus-start gnus-util custom-declare-group gnus-sync nil "The Gnus synchronization facility." :version "24.1" :group custom-declare-variable gnus-sync-newsrc-groups '("nntp" "nnrss") "List of groups to be synchronized in the gnus-newsrc-alist.\nThe group names are matched, they don't have to be fully\nqualified.  Typically you would choose all of these.  That's the\ndefault because there is no active sync backend by default, so\nthis setting is harmless until the user chooses a sync backend." :type (repeat regexp) gnus-sync-newsrc-offsets '(2 3) "List of per-group data to be synchronized." (set (const :tag "Read ranges" 2) (const :tag "Marks" 3)) gnus-sync-global-vars "List of global variables to be synchronized.\nYou may want to sync `gnus-newsrc-last-checked-date' but pretty\nmuch any symbol is fair game.  You could additionally sync\n`gnus-newsrc-alist', `gnus-server-alist', `gnus-topic-topology',\nand `gnus-topic-alist'.  Also see `gnus-variable-list'." (repeat (choice (variable :tag "A known variable") (symbol :tag "Any symbol"))) gnus-sync-backend "The synchronization backend." (radio (const :format "None" nil) (list :tag "Sync server" (const :format "LeSync Server API" lesync) (string :tag "URL of a CouchDB database for API access")) (string :tag "Sync to a file"))] 8)
#@25 Carrier for newsrc data
(defvar gnus-sync-newsrc-loader nil (#$ . 2128))
(byte-code "\300\301\302\303\304\305\306\307\310\311&	\210\300\312\313\314\304\305\306\307\310\315&	\207" [custom-declare-variable gnus-sync-lesync-name (system-name) "The LeSync name for this machine." :group gnus-sync :version "24.3" :type string gnus-sync-lesync-install-topics 'ask "Should LeSync install the recorded topics?" (choice (const :tag "Never Install" nil) (const :tag "Always Install" t) (const :tag "Ask Me Once" ask))] 10)
#@35 LeSync props, keyed by group name
(defvar gnus-sync-lesync-props-hash (make-hash-table :test 'equal) (#$ . 2648))
#@38 The LeSync design prefix for CouchDB
(defvar gnus-sync-lesync-design-prefix "/_design/lesync" (#$ . 2768))
#@40 The LeSync security object for CouchDB
(defvar gnus-sync-lesync-security-object "/_security" (#$ . 2881))
#@39 Parse the result of a LeSync request.
(defalias 'gnus-sync-lesync-parse #[nil "eb\210\300\301\302\217\207" [nil (byte-code "\300\301\302\303#\205\n\304 \207" [search-forward-regexp "^$" nil t json-read] 4) ((error (gnus-message 1 "gnus-sync-lesync-parse: Could not read the LeSync response!") nil))] 3 (#$ . 2993)])
#@81 Make an access request to URL using KVDATA and METHOD.
KVDATA must be an alist.
(defalias 'gnus-sync-lesync-call #[(url method headers &optional kvdata) "\306\307\310!\203
\310K\202\311\312\216\311=\203\313\310!\210\202\"\310M\210\n\f\205+\314\f!r\315!q\210\316 \317\320\321\n\303B\322\fDD&\210\323p!\210.\207" [#1=#:vnew #2=#:old method headers kvdata url-request-data #[(list) "\301!\207" [list gnus-sync-json-alist-p] 2] fboundp json-alist-p cl--unbound ((byte-code "\301=\203
\302\303!\210\202\303M\210\301\207" [#2# cl--unbound fmakunbound json-alist-p] 2)) fmakunbound json-encode url-retrieve-synchronously gnus-sync-lesync-parse gnus-message 12 "gnus-sync-lesync-call: %s URL %s sent %S got %S" data kill-buffer url-request-extra-headers url-request-method url] 8 (#$ . 3316)])
(defalias 'gnus-sync-lesync-PUT #[(url headers &optional data) "\303\304	\n$\207" [url headers data gnus-sync-lesync-call "PUT"] 5])
(defalias 'gnus-sync-lesync-POST #[(url headers &optional data) "\303\304	\n$\207" [url headers data gnus-sync-lesync-call "POST"] 5])
(defalias 'gnus-sync-lesync-GET #[(url headers &optional data) "\303\304	\n$\207" [url headers data gnus-sync-lesync-call "GET"] 5])
(defalias 'gnus-sync-lesync-DELETE #[(url headers &optional data) "\303\304	\n$\207" [url headers data gnus-sync-lesync-call "DELETE"] 5])
#@43 Non-null if and only if LIST is an alist.
(defalias 'gnus-sync-json-alist-p #[(list) ":\203@:\203A\202\301\211\202?\207" [list not-alist] 2 (#$ . 4688)])
#@42 Non-null if and only if LIST is a plist.
(defalias 'gnus-sync-json-plist-p #[(list) ":\203!\302@!\203A:\203\211AA)\202\303\211\202?\207" [list x keywordp not-plist] 3 (#$ . 4861)])
(defalias 'gnus-sync-lesync-setup #[(url &optional user password salt reader admin) "	P\306P\307\310\f!B\311B\312\313\f\"4\206\"\314\312\315\316 \"!\3174B\320\321\312\315\f\"B\322\323B\3245\205C\314\312\3255#!B\2576\326\327\n\211#\210\330\327\n\"\3317\3328\3339\334:\335;\336<\337=\f\203\233\340\341\342\343>\205{\344
BC?\205\204\345
BC\"#\236\205\335\340\341\346!\3474Q\3426#\236\202\234\350\205\335\340\341\n\342\343\205\256\351BC\352\3537B\3548BE\355\356\3579BD\360\357:BD\361\357;BD\362\357<BD\363\357=BD\257D\"#\236.\207" [url gnus-sync-lesync-design-prefix design-url security-object user user-record "/_security" names vector ((roles . #1=[])) format "org.couchdb.user:%s" sha1 "%s" random _id (type . user) name (roles . #1#) salt password_sha "%s%s" gnus-sync-lesync-find-prop rev gnus-sync-lesync-get-prop "function(head,req)\n{\n  var tosend = [];\n  var row;\n  var ftime = (req.query['ftime'] || 0);\n  while (row = getRow())\n  {\n    if (row.value['float-time'] > ftime)\n    {\n      var s = row.value['_id'];\n      if (s) tosend.push('\"'+s.replace('\"', '\\\"')+'\"');\n    }\n  }\n  send('['+tosend.join(',') + ']');\n}" "function(head, req) {\n  var row;\n  start({ 'headers': { 'Content-Type': 'text/xml' } });\n\n  send('<dict>');\n  send('<key>read</key>');\n  send('<dict>');\n  while(row = getRow())\n  {\n    var read = row.value.read;\n    if (read && read[0] && read[0] == 'invlist')\n    {\n      send('<key>'+row.key+'</key>');\n      //send('<invlist>'+read+'</invlist>');\n      send('<array>');\n\n      var from = 0;\n      var flip = false;\n\n      for (var i = 1; i < read.length && read[i]; i++)\n      {\n        var cur = read[i];\n        if (flip)\n        {\n          if (from == cur-1)\n          {\n            send('<integer>'+read[i]+'</integer>');\n          }\n          else\n          {\n            send('<dict>');\n            send('<key>start</key>');\n            send('<integer>'+from+'</integer>');\n            send('<key>end</key>');\n            send('<integer>'+(cur-1)+'</integer>');\n            send('</dict>');\n          }\n\n        }\n        flip = ! flip;\n        from = cur;\n      }\n      send('</array>');\n    }\n  }\n\n  send('</dict>');\n  send('</dict>');\n}\n" "function(doc){emit([doc._id, doc.source], doc._rev);}" "function(doc){emit(doc._id, doc._rev);}" "function(doc)\n{emit([(doc['float-time']||0), doc._id], doc._rev);}" "function(doc)\n{emit([(doc['float-time']||0), doc._id], doc);}" "function(doc){emit(doc._id, doc);}" ok gnus-sync-lesync-PUT nil append readers admins file-name-directory "_users/" t _rev lists latest xmlplistread views subs map revs bytimesubs bytime groups couch-user-name password couch-user-record latest-func xmlplistread-func subs-func revs-func bytimesubs-func bytime-func groups-func reader admin] 15 nil "sEnter URL to set up: "])
#@134 Retrieve a PROPerty of a document KEY at URL.
Calls `gnus-sync-lesync-set-prop'.
For the 'rev PROP, uses '_rev against the document.
(defalias 'gnus-sync-lesync-find-prop #[(prop url key) "\303	\304=\203
\305\202\306\n\307\"\236A#\207" [prop key url gnus-sync-lesync-set-prop rev _rev gnus-sync-lesync-GET nil] 7 (#$ . 7973)])
#@91 Update the PROPerty of document KEY at URL to VAL.
Updates `gnus-sync-lesync-props-hash'.
(defalias 'gnus-sync-lesync-set-prop #[(prop key val) "\304\305\306	#\n#\207" [key prop val gnus-sync-lesync-props-hash puthash format "%s.%s"] 5 (#$ . 8312)])
#@61 Get the PROPerty of KEY from `gnus-sync-lesync-props-hash'.
(defalias 'gnus-sync-lesync-get-prop #[(prop key) "\303\304\305	#\n\"\207" [key prop gnus-sync-lesync-props-hash gethash format "%s.%s"] 5 (#$ . 8570)])
(defalias 'gnus-sync-deep-print #[(data) "\306\211\307\306\307\211\307\n\306\310\311\f\".\207" [print-quoted print-readably print-escape-multibyte print-escape-nonascii print-length print-level t nil format "%S" print-circle print-escape-newlines data] 4])
(defalias 'gnus-sync-newsrc-loader-builder #[(&optional only-modified) "A\306\211\306	\203B	\211A@\211@\307
\"\203	\203;\310\n!\311\312\"\232\204	\313\314\315\316$\210\n\fB\202	\n\fB\202	\f,\207" [gnus-newsrc-alist entries entry name ret gnus-sync-newsrc-groups nil gnus-grep-in-list gnus-sync-deep-print gnus-sync-lesync-get-prop checksum gnus-message 9 "%s: add %s, it's modified" "gnus-sync-newsrc-loader-builder" only-modified] 6])
(defalias 'gnus-sync-range2invlist #[(ranges) "\305\306\307\310\"\310\211\211\211\2037\211A@\211:\204%\202+@A\n\fB	T\fB\202\311\f!-\"\207" [ranges to from range ret append (invlist) delq nil reverse] 8])
(defalias 'gnus-sync-invlist2range #[(inv) "\306\307\"\310\311@\"\312\232\203RA\313\307\211\211\211

\203L
\211A
@	\203DS
\nU\203>
\fB\202D
\nB\fB	?\202\314\f!.\207\207" [inv flip top cur ret start append nil format "%s" "invlist" 0 reverse i] 6])
#@69 Find the position of SEARCH in LIST using TEST, defaulting to `eq'.
(defalias 'gnus-sync-position #[(search list &optional test) "\304\206\305\n\203 \n@\"\204 \n\211A@\210	T\202\n@\"\205)	*\207" [test pos list search 0 eq] 3 (#$ . 10022)])
(defalias 'gnus-sync-topic-group-position #[(group topic-name) "\303\304	\n\"A\305#\207" [group topic-name gnus-topic-alist gnus-sync-position assoc equal] 5])
(defalias 'gnus-sync-fix-topic-group-position #[(group topic-name position) "\306	\n\"\232?\205M\307\310	\311\n\f\"A\"
GS^\211
8\211\205L	\232?\205L
\233\211	\240\210)\311\n\f\"\312
C\"\241\210\313\314\315	&,\207" [position group topic-name loc gnus-topic-alist groups gnus-sync-topic-group-position "gnus-sync-fix-topic-group-position" delete assoc append gnus-message 9 "%s: %s moved to %d, swap with %s" old #1=#:c] 8])
(defalias 'gnus-sync-lesync-pre-save-group-entry #[(url nentry &rest passed-props) "\306	@\307\310\n\"\f\311\n!\312\n\"\307\313\n\"\314\205'\315BC\316\nBC\313\f\235\203:\202>\fBB\317	A@BD\205O\320BC\205Y\321BC\322\323\324	8!BC\325\326\327\330\331	8\"\"&.\207" [loc nentry k revision gnus-sync-lesync-name sname "gnus-sync-lesync-save-group-entry" gnus-sync-lesync-get-prop rev gnus-group-topic gnus-sync-topic-group-position source append _rev _id level topic topic-offset read gnus-sync-range2invlist 2 delq nil mapcar #[(mark-entry) "\303\304\305	@\306\n8%\210	A<\203	@\307	A!B\207\303\310\311	@\306\n8%\210\312\207" [loc mark-entry nentry gnus-message 12 "%s: prep param %s in %s" 3 gnus-sync-range2invlist 9 "%s: non-list param %s in %s" nil] 7] 3 sources passed-props] 14])
(defalias 'gnus-sync-lesync-post-save-group-entry #[(url entry) "\305\306	\236A\307	\236\2032\306	\236\2032\310\307\n\307	\236A#\210\310\311\n\312\313\n\"!#\210\314\315\316\n\f%\210\202o\317\320\321	\236\243\"\322\232\203O\323\324\325\326\n\f\327	\236A&\210\202o\321	\236\203e\323\324\330\n\f\327	\236A&\210\202o\314\331\332\n\f	&\210\313\321	\"*\207" [loc entry k gnus-newsrc-alist url "gnus-sync-lesync-post-save-group-entry" id rev gnus-sync-lesync-set-prop checksum gnus-sync-deep-print assoc gnus-message 9 "%s: successfully synced %s to %s" format "%s" error "conflict" gnus-error 1 "%s: use `%s' to resolve the conflict synchronizing %s to %s: %s" "gnus-sync-read" reason "%s: got error while synchronizing %s to %s: %s" 2 "%s: unknown sync status after %s to %s: %S"] 9])
(defalias 'gnus-sync-lesync-groups-builder #[(url) "	\303Q\304\305\n\306\"\236A)\207" [url gnus-sync-lesync-design-prefix u "/_view/groups" rows gnus-sync-lesync-GET nil] 4])
#@67 Subscribe to group NAME.  Returns NAME on success, nil otherwise.
(defalias 'gnus-sync-subscribe-group #[(name) "\301!\207" [name gnus-subscribe-newsgroup] 2 (#$ . 12684)])
#@328 Read ENTRY information for NAME.  Returns NAME if successful.
Skips entries whose sources don't contain
`gnus-sync-lesync-name'.  When the alist PASSED-PROPS has a
`subscribe-all' element that evaluates to true, we attempt to
subscribe to unknown groups.  The user is also allowed to delete
unwanted groups via the LeSync URL.
(defalias 'gnus-sync-lesync-read-group-entry #[(url name entry &rest passed-props) "\306\307	\n\"\303\n\236A\310	\236A\305	\236A \f\235!\311\"#\"$\312%$\204s\203F\313\314\315\"\"!\203F\316\"!$\317!\202s\313\314\320\"\"!\203s\"\321&\"\"\232\203i\322\323\324\"&%\210\202s\325\323\326\"&%\210$\203\215!\204\215\313\314\327\" \f\206\211\330$!!
\203\230\331\305\"
#\210$\203\321!\203\321\322\332\333\"\f%\210	\203\314	\211A@\211%@%A'(\331(\"'#\210*\202\253\"\202\365$\204\337\322\334\335\"\336%\210!\204\364\322\334\337\" \f\206\361\330&\210\312.\207" [loc entry passed-props subscribe-all sources rev "gnus-sync-lesync-read-group-entry" gnus-sync-lesync-normalize-group-entry source assoc nil y-or-n-p format "Subscribe to group %s?" gnus-sync-subscribe-group t "Delete group %s from server?" gnus-sync-lesync-delete-group gnus-message 1 "%s: removed group %s from server %s" gnus-error "%s: could not remove group %s from server %s" "Read group %s even though %s is not in sources %S?" "" gnus-sync-lesync-set-prop 10 "%s: reading LeSync entry %s, sources %S" 5 "%s: ignoring entry %s, it wasn't subscribed.  %s" "Call `gnus-sync-read' with C-u to force it." "%s: ignoring entry %s, %s not in sources %S" gnus-sync-lesync-name in-sources name gnus-newsrc-alist known cell url val k] 8 (#$ . 12865)])
(defalias 'gnus-sync-lesync-install-group-entry #[(name) "\306	\"\307!\306\f\"\310\311\"*\310\312\"+\306*\f\",\313-\n\203\373.\314=\2034\315\316!..\317=\203\302*\203\302*\232\203T\320\321\322-*%\210\202\260
\203n,\203n
\323
A\"\241\210\320\324\325-%\210,\204\212\315\326\327*\"!\203\212\330*\331\"\210\306*\f\",,\203\246,C\244\210\320\324\332-,@%\210\333 \210\202\260\334\335\336-*%\210+\203\302,\203\302\337*+#\210\310\340\"\203\325\nA\211/\310\340\"\240\210)\nAA\2110\310\341\"\240\210)\342\n\233\2111\310\343\"\240\210)\344\345\346\n!#\210\331\202\334\347\350-$\210\351.\207" [name gnus-newsrc-alist master old-topic-name gnus-topic-alist old-topic assoc gnus-group-topic gnus-sync-lesync-get-prop topic topic-offset "gnus-sync-lesync-install-group-entry" ask y-or-n-p "Install topics from LeSync?" t gnus-message 12 "%s: %s is already in topic %s" gnus-delete-first 5 "%s: removing %s from topic %s" format "Create missing topic %s?" gnus-topic-create-topic nil "%s: adding %s to topic %s" gnus-topic-enter-dribble gnus-error 2 "%s: LeSync group %s can't go in missing topic %s" gnus-sync-fix-topic-group-position level read 3 marks gnus-sync-lesync-set-prop checksum gnus-sync-deep-print 1 "%s: invalid LeSync group %s" invalid-name target-topic-name target-topic-offset target-topic loc gnus-sync-lesync-install-topics #1=#:c #2=#:c #3=#:c] 7])
#@70 Returns NAME if successful deleting it from URL, an error otherwise.
(defalias 'gnus-sync-lesync-delete-group #[(url name) "\211A@)\305\306\n!Q\307\310\311\n\"\205\312\310\311\n\"BC\"\313\f\236A\206&\f*\207" [gnus-sync-backend x name u del "/" url-hexify-string gnus-sync-lesync-DELETE gnus-sync-lesync-get-prop rev "If-Match" id] 7 (#$ . 15994) "sEnter URL to set up: 
sEnter group name: "])
(defalias 'gnus-sync-lesync-normalize-group-entry #[(entry &optional passed-props) "\306\211\211\307\f\"\f\211A@\211\203\222@A\211\310=\203.\311
!B\nB\202\216\312\235\204\216\313=\203E\314
B\nB\202\216\315=\203X\315\307
\306\"B\nB\202\216\316=\204{\317=\204{\320=\204{\321=\204{\322=\203\205
B\nB\202\216\311
!B	B*\202\301	B\n+B\207" [cell marks ret passed-props entry val nil append read gnus-sync-invlist2range (_id subscribe-all _deleted_conflicts) _rev rev source float-time level topic topic-offset read-time k] 5])
#@99 Save the Gnus sync data to the backend.
With a prefix, FORCE is set and all groups will be saved.
(defalias 'gnus-sync-save #[(&optional force) "<\203Y@\306=\203YA@;\203Y	\203'\307\310\311\312A@\n\313Q\314\"\236A\"\210\315 A@\316\317\320	?!\"\211\203J\321\f\322P\323\324\325
\314\"BC#\202P\326\327\330\"\210\314:\316\331:\",\207;\205u\326\332\333#\210;A<\314\211=><:\203\233<@=\334=@?\"\203\222=@\316\335@\"B>B><A\211<\202q>\237+'\336\337\340!!AB\341\216rAq\210CpDE\342\343\344C\"!\210\342\345!\210\346\211FG\314H\346I\314\211JK\314L\346M\347NBO\314PO\203*\350O\211AO@\211P!\203PJ\203\342\351!\210\342\352P!!\210\342\353!\210\354PJ!\210\342\355!\210\202\346\342\356!\210\342\352P!!\210\202\346.\n\326\332\357N'G%\210\326\360\361#\210\212eb\210\362\363\314\346#\203Q\364\365\346\"\210\202Aeb\210\362\366\314\346#\205e\364\367\346\211#\210\202T,rAq\210\370\314\211B\314\371%\210-\207" [gnus-sync-backend force gnus-sync-lesync-design-prefix ftime url entries lesync mapc #[(entry) "\301\236\205\302\236\205\303\304\301\236A\302\236A#\207" [entry key value gnus-sync-lesync-set-prop rev] 5] rows gnus-sync-lesync-GET "/_view/revs" nil float-time mapcar #[(entry) "\304\211A@)\n\305B#\207" [gnus-sync-backend x entry ftime gnus-sync-lesync-pre-save-group-entry float-time] 6] gnus-sync-newsrc-loader-builder gnus-sync-lesync-POST "/_bulk_docs" (("Content-Type" . "application/json")) docs vconcat gnus-message 2 "gnus-sync-save: nothing to save to the LeSync backend" #[(e) "\302	\"\207" [url e gnus-sync-lesync-post-save-group-entry] 3] 7 "gnus-sync-save: saving to backend %s" gnus-grep-in-list #[(offset) "\211	8B\207" [offset entry] 3] get-buffer-create generate-new-buffer-name " *temp file*" ((byte-code "\301!\203\n\302!\210\301\207" [#1=#:temp-buffer buffer-name kill-buffer] 2)) princ format ";; -*- mode:emacs-lisp; coding: %s; -*-\n" ";; Gnus sync data v. 0.0.1\n" t gnus-sync-newsrc-loader boundp "\n(setq " symbol-name " '" prin1 ")\n" "\n;;; skipping empty variable " "gnus-sync-save: stored variables %s and %d groups in %s" 8 "gnus-sync-save: adding whitespace to %s" re-search-forward "^(\\|(\\\"" replace-match "\n\\&" " $" "" write-region 0 sync gnus-newsrc-alist #2=#:--cl-var-- entry #3=#:--cl-var-- gnus-sync-newsrc-groups gnus-sync-newsrc-offsets #1# #4=#:temp-file gnus-ding-file-coding-system standard-output coding-system-for-write print-quoted print-readably print-escape-multibyte print-escape-nonascii print-length print-level print-circle print-escape-newlines gnus-sync-global-vars variables variable] 8 (#$ . 16977) "P"])
#@118 Load the Gnus sync data from the backend.
With a prefix, SUBSCRIBE-ALL is set and unknown groups will be subscribed.
(defalias 'gnus-sync-read #[(&optional subscribe-all) "\205\345\306\307\310#\210<\2030@\311=\2030A@;\2030\312\211\211\313\314\315A@!\"\210+\202\336;\203\336\f\204=
\203F\316\312\317#\210\202K\320\321\322\217\210\323\312 !\312\"\211#\203\265#@\"\324\"@$\"J\203\244 T \"A%\312&%:\203\240%@\211&@\325\"@'\"\233\211(&A\240\210)%A\211%\202{*\202\254\"@B#A\211#\204\\*\306\307\326 !G%\210\203\335\306\307\327G!G%\210\306\330\331\332\333\334##\210*\306\330\335\"\210\336 \207" [gnus-sync-backend ftime name errored debug-on-error debug-on-quit gnus-message 7 "gnus-sync-read: loading from backend %s" lesync nil mapc #[(entry) "\306\236A\n\204\f\307 ?\205.	\310\fA@	\311\236A\312\nD\305
D%\232\205,\313\306\236A!\211\207" [entry name ftime errored gnus-sync-backend subscribe-all id float-time gnus-sync-lesync-read-group-entry value read-time gnus-sync-lesync-install-group-entry] 8] gnus-sync-lesync-groups-builder load t var (load gnus-sync-backend nil t) ((error (byte-code "\303\304	\211A@)#\207" [gnus-sync-backend var x error "Error in %s: %s"] 5))) 0 intern-soft assoc "gnus-sync-read: loaded %d groups (out of %d) from %s" "gnus-sync-read: skipped %d groups (out of %d) from %s" 9 "gnus-sync-read: skipped groups: %s" mapconcat identity ", " "gnus-sync-read: remaking the newsrc hashtable" gnus-make-hashtable-from-newsrc-alist invalid-groups valid-count gnus-sync-newsrc-loader node --dolist-tail-- gnus-newsrc-hashtb #1=#:--cl-var-- store gnus-newsrc-alist #2=#:c] 8 (#$ . 19633) "P"])
#@36 Initialize the Gnus sync facility.
(defalias 'gnus-sync-initialize #[nil "\300\301\302\"\210\303 \207" [gnus-message 5 "Initializing the sync facility" gnus-sync-install-hooks] 3 (#$ . 21327) nil])
#@25 Install the sync hooks.
(defalias 'gnus-sync-install-hooks #[nil "\300\301\302\"\207" [add-hook gnus-save-newsrc-hook gnus-sync-save] 3 (#$ . 21531) nil])
#@27 Uninstall the sync hooks.
(defalias 'gnus-sync-unload-hook #[nil "\300\301\302\"\207" [remove-hook gnus-save-newsrc-hook gnus-sync-save] 3 (#$ . 21692) nil])
(byte-code "\301\302\211\"\210\203\f\303 \210\304\305!\207" [gnus-sync-backend add-hook gnus-sync-unload-hook gnus-sync-initialize provide gnus-sync] 3)

MMCT - 2023