%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/local/share/emacs/27.2/lisp/org/
Upload File :
Create Path :
Current File : //usr/local/share/emacs/27.2/lisp/org/org-element.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!\210\300\303!\210\300\304!\210\300\305!\210\300\306!\210\300\307!\210\300\310!\210\300\311!\210\300\312!\207" [require avl-tree cl-lib ol org org-compat org-entities org-footnote org-list org-macs org-table] 2)
#@228 Regexp to separate paragraphs in an Org buffer.
In the case of lines starting with "#" and ":", this regexp
is not sufficient to know if point is at a paragraph ending.  See
`org-element-paragraph-parser' for more information.
(defvar org-element-paragraph-separate nil (#$ . 654))
#@282 Regexp possibly matching the beginning of an object.
This regexp allows false positives.  Dedicated parser (e.g.,
`org-export-bold-parser') will take care of further filtering.
Radio links are not matched by this regexp, as they are treated
specially in `org-element--object-lex'.
(defvar org-element--object-regexp nil (#$ . 943))
#@32 Build variable syntax regexps.
(defalias 'org-element--set-regexps #[0 "\305\306\267\202\307\202\310\202\311	\205\312\313\314\315\260\266\202\316Q\317\320\321\322 !\323\324\325\326\3278\"P\330\331Q\332\333\334\335\314Q\336\337\340\257\n\262\341#\211\207" [org-plain-list-ordered-item-terminator org-list-allow-alphabetical org-element-paragraph-separate org-emphasis-regexp-components org-element--object-regexp "^\\(?:\\*+ \\|\\[fn:[-_[:word:]]+\\]\\|%%(\\|[ 	]*\\(?:$\\||\\|\\+\\(?:-+\\+\\)+[ 	]*$\\|#\\(?: \\|$\\|\\+\\(?:BEGIN_\\S-+\\|\\S-+\\(?:\\[.*\\]\\)?:[ 	]*\\)\\)\\|:\\(?: \\|$\\|[-_[:word:]]+:[ 	]*$\\)\\|-\\{5,\\}[ 	]*$\\|\\\\begin{\\([A-Za-z0-9*]+\\)}\\|CLOCK:\\|" #s(hash-table size 2 test eql rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (41 7 46 11)) ")" "\\." "[.)]" "\\|[A-Za-z]" "\\(?:[-+*]\\|\\(?:[0-9]+" "\\)" "\\)\\(?:[ 	]\\|$\\)" "\\)\\)" mapconcat identity regexp-opt org-link-types "\\(?:[_^][-{(*+.,[:alnum:]]\\)" "[*~=+_/]" format "[^%s]" 2 "\\<" ":" "\\[\\(?:fn:\\|\\[\\|[0-9]\\{4\\}-[0-9]\\{2\\}-[0-9]\\{2\\}\\|[0-9]*\\(?:%\\|/[0-9]*\\)\\]\\)" "@@" "{{{" "<\\(?:%%\\|<\\|[0-9]\\|" "\\$" "\\\\\\(?:[a-zA-Z[(]\\|\\\\[ 	]*$\\|_ +\\)" "\\(?:call\\|src\\)_" "\\|"] 13 (#$ . 1281)])
(org-element--set-regexps)
#@26 Update parser internals.
(defalias 'org-element-update-syntax #[0 "\300 \210\301\302!\207" [org-element--set-regexps org-element-cache-reset all] 2 (#$ . 2549) nil])
#@33 Complete list of element types.
(defconst org-element-all-elements '(babel-call center-block clock comment comment-block diary-sexp drawer dynamic-block example-block export-block fixed-width footnote-definition headline horizontal-rule inlinetask item keyword latex-environment node-property paragraph plain-list planning property-drawer quote-block section special-block src-block table table-row verse-block) (#$ . 2721))
#@55 List of recursive element types aka Greater Elements.
(defconst org-element-greater-elements '(center-block drawer dynamic-block footnote-definition headline inlinetask item plain-list property-drawer quote-block section special-block table) (#$ . 3152))
#@32 Complete list of object types.
(defconst org-element-all-objects '(bold code entity export-snippet footnote-reference inline-babel-call inline-src-block italic line-break latex-fragment link macro radio-target statistics-cookie strike-through subscript superscript table-cell target timestamp underline verbatim) (#$ . 3413))
#@33 List of recursive object types.
(defconst org-element-recursive-objects '(bold footnote-reference italic link subscript radio-target strike-through superscript table-cell underline) (#$ . 3745))
#@68 List of object or element types that can directly contain objects.
(defconst org-element-object-containers (append org-element-recursive-objects '(paragraph table-row verse-block)) (#$ . 3946))
#@163 List of affiliated keywords as strings.
By default, all keywords setting attributes (e.g., "ATTR_LATEX")
are affiliated keywords and need not to be in this list.
(defconst org-element-affiliated-keywords '("CAPTION" "DATA" "HEADER" "HEADERS" "LABEL" "NAME" "PLOT" "RESNAME" "RESULT" "RESULTS" "SOURCE" "SRCNAME" "TBLNAME") (#$ . 4147))
#@169 Alist of usual translations for keywords.
The key is the old name and the value the new one.  The property
holding their value will be named after the translated name.
(defconst org-element-keyword-translation-alist '(("DATA" . "NAME") ("LABEL" . "NAME") ("RESNAME" . "NAME") ("SOURCE" . "NAME") ("SRCNAME" . "NAME") ("TBLNAME" . "NAME") ("RESULT" . "RESULTS") ("HEADERS" . "HEADER")) (#$ . 4490))
#@411 List of affiliated keywords that can occur more than once in an element.

Their value will be consed into a list of strings, which will be
returned as the value of the property.

This list is checked after translations have been applied.  See
`org-element-keyword-translation-alist'.

By default, all keywords setting attributes (e.g., "ATTR_LATEX")
allow multiple occurrences and need not to be in this list.
(defconst org-element-multiple-keywords '("CAPTION" "HEADER") (#$ . 4895))
#@244 List of affiliated keywords whose value can be parsed.

Their value will be stored as a secondary string: a list of
strings and objects.

This list is checked after translations have been applied.  See
`org-element-keyword-translation-alist'.
(defconst org-element-parsed-keywords '("CAPTION") (#$ . 5387))
#@118 Alist of parsed keywords and associated properties.
This is generated from `org-element-parsed-keywords', which
see.
(defconst org-element--parsed-properties-alist (mapcar #[257 "\211\300\301\227P!B\207" [intern ":"] 5 "\n\n(fn K)"] org-element-parsed-keywords) (#$ . 5701))
#@377 List of affiliated keywords which can have a secondary value.

In Org syntax, they can be written with optional square brackets
before the colons.  For example, RESULTS keyword can be
associated to a hash value with the following:

  #+RESULTS[hash-string]: some-source

This list is checked after translations have been applied.  See
`org-element-keyword-translation-alist'.
(defconst org-element-dual-keywords '("CAPTION" "RESULTS") (#$ . 5984))
#@244 Regexp matching any affiliated keyword.

Keyword name is put in match group 1.  Moreover, if keyword
belongs to `org-element-dual-keywords', put the dual value in
match group 2.

Don't modify it, set `org-element-affiliated-keywords' instead.
(defconst org-element--affiliated-re (byte-code "\302\303\302\304\305!\"\306\302\307\305\310\311	\"!\"\312R\"\207" [org-element-dual-keywords org-element-affiliated-keywords format "[ 	]*#\\+\\(?:%s\\):[ 	]*" "\\(?1:%s\\)\\(?:\\[\\(.*\\)\\]\\)?" regexp-opt "\\|" "\\(?1:%s\\)" cl-remove-if #[257 "\211\235\207" [org-element-dual-keywords] 3 "\n\n(fn K)"] "\\|\\(?1:ATTR_[-_A-Za-z0-9]+\\)"] 10) (#$ . 6439))
#@367 Alist of objects restrictions.

key is an element or object type containing objects and value is
a list of types that can be contained within an element or object
of such type.

This alist also applies to secondary string.  For example, an
`headline' type element doesn't directly contain objects, but
still has an entry since one of its properties (`:title') does.
(defconst org-element-object-restrictions (byte-code "\301\302\303\"\302\304\"\305B\306B\307B\310B\311B\312B\313\302\306\n\"B\314\315\316\317\320\321BBBBBB\322\nB\323\fB\324\fB\325
B\326B\303\315\306\314\320\323\327\330BBBBBBBB\331\332B\333B\257\207" [org-element-all-objects (bold code entity italic latex-fragment strike-through subscript superscript underline verbatim) remq table-cell line-break bold footnote-reference headline inlinetask italic item keyword link export-snippet inline-babel-call inline-src-block macro statistics-cookie paragraph radio-target strike-through subscript superscript target timestamp (table-row table-cell) underline verse-block] 25) (#$ . 7098))
#@64 Alist between element types and locations of secondary values.
(defconst org-element-secondary-value-alist '((headline :title) (inlinetask :title) (item :tag)) (#$ . 8179))
#@90 Table used internally to pair only round brackets.
Other brackets are treated as spaces.
(defconst org-element--pair-round-table (byte-code "\300 \301\302\303#\210\301\304\305#\210\306\211\203\"\211@\301\307#\210A\266\202\202\262\207" [make-syntax-table modify-syntax-entry 40 "()" 41 ")(" (123 125 91 93 60 62) " "] 7) (#$ . 8358))
#@91 Table used internally to pair only square brackets.
Other brackets are treated as spaces.
(defconst org-element--pair-square-table (byte-code "\300 \301\302\303#\210\301\304\305#\210\306\211\203\"\211@\301\307#\210A\266\202\202\262\207" [make-syntax-table modify-syntax-entry 91 "(]" 93 ")[" (123 125 40 41 60 62) " "] 7) (#$ . 8707))
#@90 Table used internally to pair only curly brackets.
Other brackets are treated as spaces.
(defconst org-element--pair-curly-table (byte-code "\300 \301\302\303#\210\301\304\305#\210\306\211\203\"\211@\301\307#\210A\266\202\202\262\207" [make-syntax-table modify-syntax-entry 123 "(}" 125 "){" (91 93 40 41 60 62) " "] 7) (#$ . 9058))
#@193 Parse paired brackets at point.
CHAR is the opening bracket to consider, as a character.  Return
contents between brackets, as a string, or nil.  Also move point
past the brackets.

(fn CHAR)
(defalias 'org-element--parse-paired-brackets #[257 "\211\303f=\205X\211\304\267\202\202	\202\n\202\303`\205V\305 p\306\307\310\311\312\"\313\"\314$\216\315!\210\3161B\317\320\307#0\202D\210\303\211\205Q\211b\210\321TS\"\262)\266\202\266\202\207" [org-element--pair-curly-table org-element--pair-square-table org-element--pair-round-table nil #s(hash-table size 3 test eql rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (123 13 91 17 40 21)) syntax-table make-byte-code 0 "r\301q\210\302\300!)\207" vconcat vector [set-syntax-table] 2 set-syntax-table (error) scan-lists 1 buffer-substring-no-properties] 12 (#$ . 9408)])
#@272 Return type of ELEMENT.

The function returns the type of the element or object provided.
It can also return the following special value:
  `plain-text'       for a string
  `org-data'         for a complete document
  nil                in any other case.

(fn ELEMENT)
(defalias 'org-element-type #[257 "\211:\204\f\211;\205\300\207\211@9\205\211@\207" [plain-text] 2 (#$ . 10262)])
(put 'org-element-type 'byte-optimizer 'byte-compile-inline-expand)
#@75 Extract the value from the PROPERTY of an ELEMENT.

(fn PROPERTY ELEMENT)
(defalias 'org-element-property #[514 "\211;\203\300\301#\207\302A@\"\207" [get-text-property 0 plist-get] 6 (#$ . 10726)])
(put 'org-element-property 'byte-optimizer 'byte-compile-inline-expand)
#@49 Extract contents from an ELEMENT.

(fn ELEMENT)
(defalias 'org-element-contents #[257 "\211:\204\300\207\211@9\203\211AA\207\207" [nil] 2 (#$ . 11008)])
(put 'org-element-contents 'byte-optimizer 'byte-compile-inline-expand)
#@146 Return restriction associated to ELEMENT.
ELEMENT can be an element, an object or a symbol representing an
element or object type.

(fn ELEMENT)
(defalias 'org-element-restriction #[257 "\2119\203	\211\202$\211\211:\204\211;\205\"\301\262\202$\211@9\205\"\211@\262\236A\207" [org-element-object-restrictions plain-text] 3 (#$ . 11244)])
(put 'org-element-restriction 'byte-optimizer 'byte-compile-inline-expand)
#@89 In ELEMENT set PROPERTY to VALUE.
Return modified element.

(fn ELEMENT PROPERTY VALUE)
(defalias 'org-element-put-property #[771 ";\203\f\300\301$\207A\302A@#\240\210\207" [org-add-props nil plist-put] 8 (#$ . 11672)])
(put 'org-element-put-property 'byte-optimizer 'byte-compile-inline-expand)
#@82 Set ELEMENT's contents to CONTENTS.
Return ELEMENT.

(fn ELEMENT &rest CONTENTS)
(defalias 'org-element-set-contents #[385 "\204\207@9\204\f\207A\203A\241\210\207\244\207" [] 4 (#$ . 11984)])
(put 'org-element-set-contents 'byte-optimizer 'byte-compile-inline-expand)
#@131 Non-nil when OBJECT directly belongs to a secondary string.
Return value is the property name, as a keyword, or nil.

(fn OBJECT)
(defalias 'org-element-secondary-p #[257 "\301\211;\203\302\303#\266\202\202\304A@\"\266\202\211\211:\204*\211;\2052\305\262\2024\211@9\2052\211@\262\236A\3062o\211\211\205l\211@\211;\203T\302\303#\266\202\202\\\304A@\"\266\202>\203e\307\306\"\210A\266\202\202<\2620\207" [org-element-secondary-value-alist :parent get-text-property 0 plist-get plain-text exit throw] 12 (#$ . 12272)])
#@232 Return class for ELEMENT, as a symbol.
Class is either `element' or `object'.  Optional argument PARENT
is the element or object containing DATUM.  It defaults to the
value of DATUM `:parent' property.

(fn DATUM &optional PARENT)
(defalias 'org-element-class #[513 "\211:\204\211;\205\303\262\202\211@9\205\211@\262\2068\304\211;\2030\305\306#\266\202\2028\307A@\"\266\202>\203B\310\202\244	>\203L\311\202\244\312\267\202Z\311\202\244\310\202\244\204b\310\202\244\211\204j\311\202\244\211\211:\204{\211;\205\203\303\262\202\205\211@9\205\203\211@\262\211\204\215\310\202\242\211\n>\203\227\310\202\242\313!\203\241\310\202\242\311\262\207" [org-element-all-objects org-element-all-elements org-element-object-containers plain-text :parent get-text-property 0 plist-get object element #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (org-data 82 plain-text 86)) org-element-secondary-p] 9 (#$ . 12827)])
(put 'org-element-class 'byte-optimizer 'byte-compile-inline-expand)
#@253 Append elements to the contents of another element.

PARENT is an element or object.  CHILDREN can be elements,
objects, or a strings.

The function takes care of setting `:parent' property for CHILD.
Return parent element.

(fn PARENT &rest CHILDREN)
(defalias 'org-element-adopt-elements #[385 "\211\204\207\211\211\203:\211@\211\300\206;\203$\301\302$\266\203\2022A\303A@#\240\210\266\203\210A\266\202\202\210\203]\304\305\211\211:\204N\302\262\202Y\211@9\203Y\211AA\262\244#\210\206b\211\207" [:parent org-add-props nil plist-put apply org-element-set-contents] 12 (#$ . 13894)])
(byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put org-element-adopt-elements lisp-indent-function 1 put byte-optimizer byte-compile-inline-expand] 5)
#@155 Extract ELEMENT from parse tree.
Remove element from the parse tree by side-effect, and return it
with its `:parent' property stripped out.

(fn ELEMENT)
(defalias 'org-element-extract-element #[257 "\300\211;\203\301\302#\266\202\202\303A@\"\266\202\304!\211\203a\305\211;\2036\301\302#\266\202\202>\303A@\"\266\202\";\203O\306\307$\266\203\202]A\310A@#\240\210\266\203\210\202\202\311\312\305\211:\204t\307\262\202\211@9\203\211AA\262\"#\210\300\307;\203\225\306\307$\266\203\202\243A\310A@#\240\210\266\203\207" [:parent get-text-property 0 plist-get org-element-secondary-p delq org-add-props nil plist-put apply org-element-set-contents] 13 (#$ . 14684)])
#@173 Insert ELEMENT before LOCATION in parse tree.
LOCATION is an element, object or string within the parse tree.
Parse tree is modified by side effect.

(fn ELEMENT LOCATION)
(defalias 'org-element-insert-before #[514 "\300\211;\203\301\302#\266\202\202\303A@\"\266\202\304!\211\203<\211\211;\2031\301\302#\266\202\202S\303A@\"\266\202\202S\211:\204H\305\262\202S\211@9\203S\211AA\262?\205b\211=\205b@=\211\204\237\203q@=\203yB\262\202\237\204\206C\244\210\202\237\306\"\211\204\222\307\310!\210\211S\233\211AB\241\266\211\203\261\311!\241\210\240\210\202\340\203\332;\203\310\312\305$\266\203\202\326A\313A@#\240\210\266\203\210\202\340\314\315#\210\300;\203\363\312\305$\266\203\202A\313A@#\240\210\266\203\207" [:parent get-text-property 0 plist-get org-element-secondary-p nil cl-position error "No location found to insert element" copy-sequence org-add-props plist-put apply org-element-set-contents] 14 (#$ . 15411)])
#@136 Replace element or object OLD with element or object NEW.
The function takes care of setting `:parent' property for NEW.

(fn OLD NEW)
(defalias 'org-element-set-element #[514 "\211\300\211\211;\203\301\302#\266\202\202\303A@\"\266\202;\203+\304\305$\266\203\2029A\306A@#\240\210\266\203\210\211:\204K\211;\205S\307\262\202U\211@9\205S\211@\262\310>\204z\211\211:\204k\211;\205s\307\262\202u\211@9\205s\211@\262\311>\203\203\312\"\210\313!\207\211\211:\204\217\305\262\202\232\211@9\203\232\211AA\262\211\203\311\211@\211\300;\203\263\304\305$\266\203\202\301A\306A@#\240\210\266\203\210A\266\202\202\232\210\314\315\211:\204\331\305\262\202\344\211@9\203\344\211AA\262#\210AA@\240\210@\240\207" [:parent get-text-property 0 plist-get org-add-props nil plist-put plain-text (plain-text nil) (plain-text nil) org-element-insert-before org-element-extract-element apply org-element-set-contents] 12 (#$ . 16435)])
#@215 Create a new element of type TYPE.
Optional argument PROPS, when non-nil, is a plist defining the
properties of the element.  CHILDREN can be elements, objects or
strings.

(fn TYPE &optional PROPS &rest CHILDREN)
(defalias 'org-element-create #[641 "\300\301D#\207" [apply org-element-adopt-elements] 7 (#$ . 17423)])
#@153 Return a copy of DATUM.
DATUM is an element, object, string or nil.  `:parent' property
is cleared and contents are removed in the process.

(fn DATUM)
(defalias 'org-element-copy #[257 "\211\205H\211\211:\204\211;\205\300\262\202\211@9\205\211@\262\211\301\267\2021\302\303D\202F\304!\202F\211\204;\305!\202F\211\306\305A@!\307\303#D\262\207" [plain-text #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (org-data 37 plain-text 43)) org-data nil substring-no-properties copy-sequence plist-put :parent] 7 (#$ . 17752)])
#@467 Parse a center block.

LIMIT bounds the search.  AFFILIATED is a list of which CAR is
the buffer position at the beginning of the first affiliated
keyword and CDR is a plist of affiliated keywords along with
their value.

Return a list whose CAR is `center-block' and CDR is a plist
containing `:begin', `:end', `:contents-begin', `:contents-end',
`:post-blank' and `:post-affiliated' keywords.

Assume point is at the beginning of the block.

(fn LIMIT AFFILIATED)
(defalias 'org-element-center-block-parser #[514 "\301\212\302\303\301#)\204\304\"\202`\305\224@`\306y\210`W\205\"`\211\205'b\210\306y\210`\212\307w\210m\203<`\202>\310 )\311\312\313\314	\315\n\316\317\f\f\"\320\257\f	A\244D\266\206\262)\207" [case-fold-search t re-search-forward "^[ 	]*#\\+END_CENTER[ 	]*$" org-element-paragraph-parser 0 nil " 
	\n" line-beginning-position center-block :begin :end :contents-begin :contents-end :post-blank count-lines :post-affiliated] 22 (#$ . 18336)])
#@107 Interpret a center-block element as Org syntax.
CONTENTS is the contents of the element.

(fn _ CONTENTS)
(defalias 'org-element-center-block-interpreter #[514 "\300\301\"\207" [format "#+begin_center\n%s#+end_center"] 5 (#$ . 19329)])
#@464 Parse a drawer.

LIMIT bounds the search.  AFFILIATED is a list of which CAR is
the buffer position at the beginning of the first affiliated
keyword and CDR is a plist of affiliated keywords along with
their value.

Return a list whose CAR is `drawer' and CDR is a plist containing
`:drawer-name', `:begin', `:end', `:contents-begin',
`:contents-end', `:post-blank' and `:post-affiliated' keywords.

Assume point is at beginning of drawer.

(fn LIMIT AFFILIATED)
(defalias 'org-element-drawer-parser #[514 "\302\212\303\304\302#)\204\305\"\202h\212\306\224\307	!\210\310\311!@`\312y\210`W\205*`\211\205/b\210\312y\210`\313	w\210m\203C`\202E\314 \315\316\317\320\f\321\322\f\323\324\"\325\257\nA\244D\266\210))\207" [case-fold-search org-drawer-regexp t re-search-forward "^[ 	]*:END:[ 	]*$" org-element-paragraph-parser 0 looking-at match-string-no-properties 1 nil " 
	\n" line-beginning-position drawer :begin :end :drawer-name :contents-begin :contents-end :post-blank count-lines :post-affiliated] 25 (#$ . 19573)])
#@104 Interpret DRAWER element as Org syntax.
CONTENTS is the contents of the element.

(fn DRAWER CONTENTS)
(defalias 'org-element-drawer-interpreter #[514 "\300\301\302\211;\203\303\304#\266\202\202\305A@\"\266\202#\207" [format ":%s:\n%s:END:" :drawer-name get-text-property 0 plist-get] 10 (#$ . 20631)])
#@498 Parse a dynamic block.

LIMIT bounds the search.  AFFILIATED is a list of which CAR is
the buffer position at the beginning of the first affiliated
keyword and CDR is a plist of affiliated keywords along with
their value.

Return a list whose CAR is `dynamic-block' and CDR is a plist
containing `:block-name', `:begin', `:end', `:contents-begin',
`:contents-end', `:arguments', `:post-blank' and
`:post-affiliated' keywords.

Assume point is at beginning of dynamic block.

(fn LIMIT AFFILIATED)
(defalias 'org-element-dynamic-block-parser #[514 "\302\212\303\304\302#)\204\305\"\202q\306\224\212\307	!\210\310\311!\310\312!@`\313y\210`W\205-`\211\2052b\210\313y\210`\314\nw\210m\203G`\202I\315 \316\317\320\321
\322\323
\324\325\326\"\327\257A\244D\266\210)\262)\207" [case-fold-search org-dblock-start-re t re-search-forward "^[ 	]*#\\+END:?[ 	]*$" org-element-paragraph-parser 0 looking-at match-string-no-properties 1 3 nil " 
	\n" line-beginning-position dynamic-block :begin :end :block-name :arguments :contents-begin :contents-end :post-blank count-lines :post-affiliated] 28 (#$ . 20951)])
#@118 Interpret DYNAMIC-BLOCK element as Org syntax.
CONTENTS is the contents of the element.

(fn DYNAMIC-BLOCK CONTENTS)
(defalias 'org-element-dynamic-block-interpreter #[514 "\300\301\302\211;\203\303\304#\266\202\202\305A@\"\266\202\306\211;\203,\303\304#\266\202\2024\305A@\"\266\202\211\203>\307P\202?\310\262$\207" [format "#+begin: %s%s\n%s#+end:" :block-name get-text-property 0 plist-get :arguments " " ""] 11 (#$ . 22094)])
#@49 Regexp used as a footnote definition separator.
(defconst org-element--footnote-separator (concat org-outline-regexp-bol "\\|" org-footnote-definition-re "\\|^\\([ 	]*\n\\)\\{2,\\}") (#$ . 22551))
#@517 Parse a footnote definition.

LIMIT bounds the search.  AFFILIATED is a list of which CAR is
the buffer position at the beginning of the first affiliated
keyword and CDR is a plist of affiliated keywords along with
their value.

Return a list whose CAR is `footnote-definition' and CDR is
a plist containing `:label', `:begin' `:end', `:contents-begin',
`:contents-end', `:pre-blank',`:post-blank' and
`:post-affiliated' keywords.

Assume point is at the beginning of the footnote definition.

(fn LIMIT AFFILIATED)
(defalias 'org-element-footnote-definition-parser #[514 "\212\304!\210\305\306!@`\212\307\210\310	\311#\204\202b\312\224f\313=\203E\314y\210`V\203?\n\311\304!)\262\203?\314y\210\202'\315\316!\202b\312\224f\317=\203R\312\224\202b\320w\210`U\203`\202b\315 )\312\321\322!\210\320w\210`U\203v\307\202\212\315 U\203\201`\202\212\323\315 \"\262\315 b\210\320\307x\210\315\316!\324\325\326	\327	\330	\331\205\251\n\332\333\323\"\334\257	A\244D\266\207)\207" [org-footnote-definition-re org-element--footnote-separator org-element--affiliated-re inhibit-changing-match-data looking-at match-string-no-properties 1 nil re-search-forward t 0 91 -1 line-beginning-position 2 42 " 
	\n" search-forward "]" count-lines footnote-definition :label :begin :end :contents-begin :contents-end :pre-blank :post-blank :post-affiliated] 26 (#$ . 22755)])
#@142 Interpret FOOTNOTE-DEFINITION element as Org syntax.
CONTENTS is the contents of the footnote-definition.

(fn FOOTNOTE-DEFINITION CONTENTS)
(defalias 'org-element-footnote-definition-interpreter #[514 "\300\211;\203\301\302#\266\202\202\303A@\"\266\202\206\304\305^\306\307\310\211;\2032\301\302#\266\202\202:\303A@\"\266\202\"\302U\203\\\311\312\313\203M\314\202N\315\316\313\317\316##\266\202P\202b\320\321\"PP\207" [:pre-blank get-text-property 0 plist-get 1 2 format "[fn:%s]" :label " " nil replace-regexp-in-string "\\`\\([ 	]*\n\\)+" "\\`[ 	\n
]+" "" "[ 	\n
]+\\'" make-string 10] 14 (#$ . 24166)])
#@243 Return node properties associated to headline at point.
Upcase property names.  It avoids confusion between properties
obtained through property drawer and default properties from the
parser (e.g. `:end' and :END:).  Return value is a plist.
(defalias 'org-element--get-node-properties #[0 "\212\304y\210\305\306!)\262\203\304y\210\306\n!\205E\304y\210\307\225\304\310 W\203C\306!\210\311\312!B\262\313\314\315\316!\226P!B\262\304y\210\202\262)\207" [org-planning-line-re inhibit-changing-match-data org-property-drawer-re org-property-re nil t looking-at 0 line-end-position match-string-no-properties 3 intern ":" match-string 2] 6 (#$ . 24809)])
#@82 Return time properties associated to headline at point.
Return value is a plist.
(defalias 'org-element--get-time-properties #[0 "\212\304y\210\305!\205P\306 \304\307	\310#\203N\311\225b\210\312\304w\210\313\311!\314 \n\232\2032\315\316#\262\202I\232\203B\315\317#\262\202I\315\320#\262\266\202
\262)\207" [org-planning-line-re org-keyword-time-not-clock-regexp org-scheduled-string org-deadline-string nil looking-at line-end-position re-search-forward t 1 " 	" match-string org-element-timestamp-parser plist-put :scheduled :deadline :closed] 8 (#$ . 25481)])
#@791 Parse a headline.

Return a list whose CAR is `headline' and CDR is a plist
containing `:raw-value', `:title', `:begin', `:end',
`:pre-blank', `:contents-begin' and `:contents-end', `:level',
`:priority', `:tags', `:todo-keyword', `:todo-type', `:scheduled',
`:deadline', `:closed', `:archivedp', `:commentedp'
`:footnote-section-p', `:post-blank' and `:post-affiliated'
keywords.

The plist also contains any property set in the property drawer,
with its name in upper cases and colons added at the
beginning (e.g., `:CUSTOM_ID').

LIMIT is a buffer position bounding the search.

When RAW-SECONDARY-P is non-nil, headline's title will not be
parsed as a secondary string, but as a plain string instead.

Assume point is at beginning of the headline.

(fn LIMIT &optional RAW-SECONDARY-P)
(defalias 'org-element-headline-parser #[513 "\212`\306\307\310w!\311\310w\210\205%\310\312\313P!)\205%\314\225b\210\311\310w\210\315\316!\211\2054\211\n\235\2033\317\2024\320\312\321!\205C\314\225b\210\315\314!\322H\310\312!)\205O\314\225b`\323\324\325 \326#\205c\314\224b\210\327\315\316!\330\"`\331\"\310\332\203r\333\202s\334\335\332\336\335##\266\202\f\235
\205\207
\230\337 \340 \212\341\342\211\")^\212\310y\210\343w\210`U?\205\245\344 )\211\205\264b\210\343\310x\210\344\322!\345\346	\347\350\351	\204\310\314\202\317\352\"S\353\354\f\355\356\357\360\"\361#\362\203\363\352\"\202\372\352)\"S\363\364\"\365)\3660\257 \244\244D\211\367\203\n\202\\\370b\210\311\310w\210`
b\210\311\310x\210`\310\345\2119\2038\211\202S\211\211:\204I\211;\205Q\371\262\202S\211@9\205Q\211@\262<\236A\262%;\203l\372\310$\266\203\202zA\373A@#\240\210\266\203\262\266\221)\207" [org-todo-regexp case-fold-search org-done-keywords org-comment-string org-archive-tag org-footnote-section org-reduced-level "*" nil " 	" looking-at " " 0 match-string 1 done todo "\\[#.\\][ 	]*" 2 re-search-forward "[ 	]+\\(:[[:alnum:]_@#%:]+:\\)[ 	]*$" line-end-position move org-split-string ":" buffer-substring-no-properties replace-regexp-in-string "\\`\\([ 	]*\n\\)+" "\\`[ 	\n
]+" "" "[ 	\n
]+\\'" org-element--get-node-properties org-element--get-time-properties org-end-of-subtree t " 
	\n" line-beginning-position headline :raw-value :begin :end :pre-blank count-lines :contents-begin :contents-end :level :priority :tags :todo-keyword :todo-type :post-blank :footnote-section-p :archivedp :commentedp :post-affiliated :title org-element--parse-objects plain-text org-add-props plist-put org-element-object-restrictions] 52 (#$ . 26073)])
#@108 Interpret HEADLINE element as Org syntax.
CONTENTS is the contents of the element.

(fn HEADLINE CONTENTS)
(defalias 'org-element-headline-interpreter #[514 "\304\211;\203\305\306#\266\202\202\307A@\"\266\202\310\211;\203*\305\306#\266\202\2022\307A@\"\266\202\311\211;\203C\305\306#\266\202\202K\307A@\"\266\202\312\313\211;\203^\305\306#\266\202\202f\307A@\"\266\202!\314\211;\203y\305\306#\266\202\202\201\307A@\"\266\202\211\205\215\315\316\317\320\321#\"\262\322\211;\203\241\305\306#\266\202\202\251\307A@\"\266\202\323\211;\203\273\305\306#\266\202\202\303\307A@\"\266\202\206\307\306\324\203\324\325_S\202\326\326\"\205\341\327P\205\350\327	P\205\362\315\330	\"\327\n\203\331\211;\203	\305\306#\266\202\202\307A@\"\266\202\203\n\202\260\211\205S\306U\203/\315\332\"\202S\306W\203H\324\333GG#[\334]\335\"P\202S\324GZ\334]\335\"P\324T\336\"R\207" [org-odd-levels-only org-comment-string org-footnote-section org-tags-column :level get-text-property 0 plist-get :todo-keyword :priority org-element-interpret-data :title :tags format ":%s:" mapconcat identity ":" :commentedp :pre-blank make-string 2 42 " " " [#%c]" :footnote-section-p " %s" + 1 32 10] 20 (#$ . 28688)])
#@721 Parse an inline task.

Return a list whose CAR is `inlinetask' and CDR is a plist
containing `:title', `:begin', `:end', `:pre-blank',
`:contents-begin' and `:contents-end', `:level', `:priority',
`:raw-value', `:tags', `:todo-keyword', `:todo-type',
`:scheduled', `:deadline', `:closed', `:post-blank' and
`:post-affiliated' keywords.

The plist also contains any property set in the property drawer,
with its name in upper cases and colons added at the
beginning (e.g., `:CUSTOM_ID').

When optional argument RAW-SECONDARY-P is non-nil, inline-task's
title will not be parsed as a secondary string, but as a plain
string instead.

Assume point is at beginning of the inline task.

(fn LIMIT &optional RAW-SECONDARY-P)
(defalias 'org-element-inlinetask-parser #[513 "\212`\306\307\310w!\311\310w\210\205#\310\312!)\205#\313\225b\210\311\310w\210\314\313!\211\2052\211\n\235\2031\315\2022\316\312\317!\205A\313\225b\210\314\313!\320H`\321\322\323 \324#\205U\313\224b\210\325\314\326!\327\"`\330\"\310\331\203d\332\202e\333\334\331\335\334##\266\202\212\310\210\321\f\336#\205\212\337\336\312!)\262\205\212\340 )\211\205\221\341 \205\227\342 \205\252`W\205\252\310y\210\343\310w\210\340 \211\205\257\203\266b\210\310y\210\344w\210m\203\306`\202\310\340 \345\346\347\350\351\n\204\334\313\202\343\352\f\"S\353\f\354
\355\356\357\360 \361!\362\352\206'\"S\363(\257\244\244D\211\364\203	\202]\365
b\210\311\310w\210`\fb\210\311\310x\210`\310\345\2119\203:\211\202U\211\211:\204K\211;\205S\366\262\202U\211@9\205S\211@\262
\236A\262%;\203m\367\310$\266\203\202{A\370A@#\240\210\266\203\266\220)\207" [org-todo-regexp case-fold-search org-done-keywords org-outline-regexp-bol inhibit-changing-match-data org-element-object-restrictions org-reduced-level "*" nil " 	" looking-at 0 match-string done todo "\\[#.\\][ 	]*" 2 re-search-forward "[ 	]+\\(:[[:alnum:]_@#%:]+:\\)[ 	]*$" line-end-position move org-split-string 1 ":" buffer-substring-no-properties replace-regexp-in-string "\\`\\([ 	]*\n\\)+" "\\`[ 	\n
]+" "" "[ 	\n
]+\\'" t "[ 	]*END[ 	]*$" line-beginning-position org-element--get-node-properties org-element--get-time-properties " 	\n" " 
	\n" inlinetask :raw-value :begin :end :pre-blank count-lines :contents-begin :contents-end :level :priority :tags :todo-keyword :todo-type :post-blank :post-affiliated :title org-element--parse-objects plain-text org-add-props plist-put] 44 (#$ . 29987)])
#@111 Interpret INLINETASK element as Org syntax.
CONTENTS is the contents of inlinetask.

(fn INLINETASK CONTENTS)
(defalias 'org-element-inlinetask-interpreter #[514 "\301\211;\203\302\303#\266\202\202\304A@\"\266\202\305\211;\203*\302\303#\266\202\2022\304A@\"\266\202\306\211;\203C\302\303#\266\202\202K\304A@\"\266\202\307\310\211;\203^\302\303#\266\202\202f\304A@\"\266\202!\311\211;\203y\302\303#\266\202\202\201\304A@\"\266\202\211\205\215\312\313\314\315\316#\"\262\317\320\"\205\232\321P\205\243\312\322\"\205\252\321PR\211\205\341\303U\203\275\312\323\"\202\341\303W\203\326\317\324GG#[\325]\326\"P\202\341\317GZ\325]\326\"P\205\360\327	\317\n\320\"\330RQ\207" [org-tags-column :level get-text-property 0 plist-get :todo-keyword :priority org-element-interpret-data :title :tags format ":%s:" mapconcat identity ":" make-string 42 " " " [#%c]" " %s" + 1 32 "\n" " end"] 15 (#$ . 32500)])
#@531 Parse an item.

STRUCT is the structure of the plain list.

Return a list whose CAR is `item' and CDR is a plist containing
`:bullet', `:begin', `:end', `:contents-begin', `:contents-end',
`:checkbox', `:counter', `:tag', `:structure', `:pre-blank',
`:post-blank' and `:post-affiliated' keywords.

When optional argument RAW-SECONDARY-P is non-nil, item's tag, if
any, will not be parsed as a secondary string, but as a plain
string instead.

Assume point is at the beginning of the item.

(fn _ STRUCT &optional RAW-SECONDARY-P)
(defalias 'org-element-item-parser #[770 "\212\302 \210\303!\210`\304\305!\306\307!\211\310\267\202!\311\202\"\312\202\"\313\202\"\314\262\306\315!\316 \317\320\321\322\323!\324\"\307$\216\204=\314\202]\325\326\"\203P\327\306\320\"\226!\330Z\202]\325\331\"\205]\332\306\320\"!)\262\262\333`\2368b\210n\203r`\202u\334\315!\320\335\224\203\231\316 \317\320\321\322\323!\336\"\307$\216\325\337\")\262\203\231\335\224\202\233\320\225b\210\340w\210`U\203\253\314\202\301\334 U\203\267`\202\301\341\334 \"\262\334 \211\205\317b\210\340\314x\210\334\315!\342\343\344\345	\346	\347\n\350\351\352\353\354\341\206\364\"\355\257D\211\356\n
\357\2368\266\203\266\202\211\205O\f\203\211\202O\360\335\224\335\225\314\342\2119\203,\211\202G\211\211:\204=\211;\205E\361\262\202G\211@9\205E\211@\262	\236A\262%\262;\203a\362\314$\266\203\202oA\363A@#\240\210\266\203\266\211)\207" [org-list-full-item-re org-element-object-restrictions beginning-of-line looking-at match-string-no-properties 1 match-string 3 #s(hash-table size 3 test equal rehash-size 1.5 rehash-threshold 0.8125 purecopy t data ("[ ]" 21 "[X]" 25 "[-]" 29)) off on trans nil 2 match-data make-byte-code 0 "\301\300\302\"\207" vconcat vector [set-match-data evaporate] string-match "[A-Za-z]" string-to-char 64 "[0-9]+" string-to-number 6 line-beginning-position 4 [set-match-data evaporate] "[.)]" " 
	\n" count-lines item :bullet :begin :end :contents-begin :contents-end :checkbox :counter :structure :pre-blank :post-blank :post-affiliated :tag 5 org-element--parse-objects plain-text org-add-props plist-put] 34 (#$ . 33475)])
#@100 Interpret ITEM element as Org syntax.
CONTENTS is the contents of the element.

(fn ITEM CONTENTS)
(defalias 'org-element-item-interpreter #[514 "\303\211;\203\304\305#\266\202\202\306A@\"\266\202\211\205&\211\307\310\311!\"\262\262\312\313\211;\203:\304\305#\266\202\202B\306A@\"\266\202\314\315\316#)\266\203\204T\317\202_	\320=\203^\321\202_\322\323 \324\305\325\326\327!\330\"\331$\216\n\203|\316\n\"\203|\332\202}\333\316\334\"\203\217\335\314\211\336%\202\220\262)\262\262\211\337\211;\203\251\304\305#\266\202\202\261\306A@\"\266\202\211\205\274\211\307\340\"\262\262\341\211;\203\320\304\305#\266\202\202\330\306A@\"\266\202\211\342\267\202\352\343\202\353\344\202\353\345\202\353\314\262\205R\346\203\375\347\202\377G\350\"\351	\211;\203\304\305#\266\202\202\306A@\"\266\202\206\336\352^\353\354\314\211\336&\305U\203J\211\314\353\203<\355\202=\356\357\353\360\357##\266\202\202P\346\361\"P\266\203\260\207" [inhibit-changing-match-data org-plain-list-ordered-item-terminator org-list-two-spaces-after-bullet-regexp :tag get-text-property 0 plist-get format "%s :: " org-element-interpret-data "[0-9a-zA-Z]" :bullet nil t string-match "- " 41 "1)" "1." match-data make-byte-code "\301\300\302\"\207" vconcat vector [set-match-data evaporate] 3 "  " " " "\\S-+\\([ 	]*\\)" replace-match 1 :counter "[@%d] " :checkbox #s(hash-table size 3 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (on 222 off 226 trans 230)) "[X] " "[ ] " "[-] " make-string 5 32 :pre-blank 2 replace-regexp-in-string "\\(^\\)[ 	]*\\S-" "\\`\\([ 	]*\n\\)+" "\\`[ 	\n
]+" "" "[ 	\n
]+\\'" 10] 20 (#$ . 35698)])
#@14 

(fn LIMIT)
(defalias 'org-element--list-struct #[257 "\305\306 \307\310!\205\311\312\211\212\3132}`Y\203E\314\312x\210\315\316!\211\2036\211@\317\233\240\210A\266\202\202#\266\320\313\321\244\322\"\"\210\202\323	!\203m\211\203_\211@\317\233`\240\210A\266\202\202L\210\320\313\321\244\322\"\"\210\202\323!\203\335\212\324\312w\210i)^\262\203\241\211@A@X\203\241\211A\262\242\317\233`\240\210\211B\262\210\202\323\n!\210\325\326!`\325\316!\325\327!\330 \331\332\333\334\335!\336\"\327$\216\337\340\")\262\205\315\325\341!\312\257\262B\262\210\312y\210\202\323\342!\203\351\312y\210\202\203\323!\203\312y\210`\343	\305#\203\344\305\323!)\262\203\312y\210\202\211b\210\210\202\212\324\312w\210i)\212\314\312x\210\315\316!)@A@X\203T\211A\262\242\317\233\240\210\211B\262\204P\320\313\321\322\"\"\210\210\202)\266\323\345!\203j\343\346\347\350\326!\"\305#\204w\323\f!\203w\343\351\305#\210\312y\210\202*\207" [case-fold-search org-list-end-re org-list-full-item-re inhibit-changing-match-data org-drawer-regexp t org-item-re featurep org-inlinetask "^\\*+ " nil :exit " 
	\n" line-beginning-position 2 6 throw sort car-less-than-car looking-at " 	" match-string-no-properties 1 3 match-data make-byte-code 0 "\301\300\302\"\207" vconcat vector [set-match-data evaporate] string-match "[-+*]" 4 "^[ 	]*$" re-search-forward "END[ 	]*$" "[ 	]*#\\+BEGIN\\(:\\|_\\S-+\\)" format "^[ 	]*#\\+END%s[ 	]*$" match-string "^[ 	]*:END:[ 	]*$"] 21 (#$ . 37412)])
#@558 Parse a plain list.

LIMIT bounds the search.  AFFILIATED is a list of which CAR is
the buffer position at the beginning of the first affiliated
keyword and CDR is a plist of affiliated keywords along with
their value.  STRUCTURE is the structure of the plain list being
parsed.

Return a list whose CAR is `plain-list' and CDR is a plist
containing `:type', `:begin', `:end', `:contents-begin' and
`:contents-end', `:structure', `:post-blank' and
`:post-affiliated' keywords.

Assume point is at the beginning of the list.

(fn LIMIT AFFILIATED STRUCTURE)
(defalias 'org-element-plain-list-parser #[771 "\212\211\206\301!\302\303\304!)\262\203\305\202%\306`\2368\203$\307\202%\310`@\236\211A@\3118\211\236\211\262\203KA@U\203K\3118\262\2021\266\202\211b\210\312w\210`U\203a\202c\313 \314\315\316\317\320\321\322\323\324\"\325\257	A\244D\266\206)\207" [inhibit-changing-match-data org-element--list-struct "[ 	]*[A-Za-z0-9]" t looking-at ordered 5 descriptive unordered 6 " 
	\n" line-beginning-position plain-list :type :begin :end :contents-begin :contents-end :structure :post-blank count-lines :post-affiliated] 26 (#$ . 38970)])
#@103 Interpret plain-list element as Org syntax.
CONTENTS is the contents of the element.

(fn _ CONTENTS)
(defalias 'org-element-plain-list-interpreter #[514 "\300\301!r\211q\210\302\303\304\305\306!\307\"\310$\216c\210eb\210\311 \210\312 *\207" [generate-new-buffer " *temp*" make-byte-code 0 "\301\300!\205	\302\300!\207" vconcat vector [buffer-name kill-buffer] 2 org-list-repair buffer-string] 9 (#$ . 40165)])
#@299 Parse a property drawer.

LIMIT bounds the search.

Return a list whose car is `property-drawer' and cdr is a plist
containing `:begin', `:end', `:contents-begin', `:contents-end',
`:post-blank' and `:post-affiliated' keywords.

Assume point is at the beginning of the property drawer.

(fn LIMIT)
(defalias 'org-element-property-drawer-parser #[257 "\212\301`\302\303!\304\305\301#\210\306\224V\205\306\224\307y\210`\310w\210m\203(`\202*\302 \311\312\313\314\2058	\315\n\316\317\f\f\"\320\257\fD\266\203)\266\203)\207" [case-fold-search t line-beginning-position 2 re-search-forward "^[ 	]*:END:[ 	]*$" 0 nil " 
	\n" property-drawer :begin :end :contents-begin :contents-end :post-blank count-lines :post-affiliated] 20 (#$ . 40586)])
#@113 Interpret property-drawer element as Org syntax.
CONTENTS is the properties within the drawer.

(fn _ CONTENTS)
(defalias 'org-element-property-drawer-interpreter #[514 "\300\301\"\207" [format ":PROPERTIES:\n%s:END:"] 5 (#$ . 41351)])
#@465 Parse a quote block.

LIMIT bounds the search.  AFFILIATED is a list of which CAR is
the buffer position at the beginning of the first affiliated
keyword and CDR is a plist of affiliated keywords along with
their value.

Return a list whose CAR is `quote-block' and CDR is a plist
containing `:begin', `:end', `:contents-begin', `:contents-end',
`:post-blank' and `:post-affiliated' keywords.

Assume point is at the beginning of the block.

(fn LIMIT AFFILIATED)
(defalias 'org-element-quote-block-parser #[514 "\301\212\302\303\301#)\204\304\"\202`\305\224\212@`\306y\210`W\205#`\211\205(b\210\306y\210`\307w\210m\203<`\202>\310 \311\312\313\314	\315\n\316\317\f\f\"\320\257\f	A\244D\266\206)\262)\207" [case-fold-search t re-search-forward "^[ 	]*#\\+END_QUOTE[ 	]*$" org-element-paragraph-parser 0 nil " 
	\n" line-beginning-position quote-block :begin :end :contents-begin :contents-end :post-blank count-lines :post-affiliated] 22 (#$ . 41595)])
#@104 Interpret quote-block element as Org syntax.
CONTENTS is the contents of the element.

(fn _ CONTENTS)
(defalias 'org-element-quote-block-interpreter #[514 "\300\301\"\207" [format "#+begin_quote\n%s#+end_quote"] 5 (#$ . 42582)])
#@194 Parse a section.

Return a list whose CAR is `section' and CDR is a plist
containing `:begin', `:end', `:contents-begin', `contents-end',
`:post-blank' and `:post-affiliated' keywords.

(fn _)
(defalias 'org-element-section-parser #[257 "\212`\304\305 \211\306	P\307 \210,`\310\311x\210\312\313!\314\315\316\317\320\321\322
\"\323\257\fD\266\203)\207" [org-called-with-limited-levels org-outline-regexp outline-regexp org-outline-regexp-bol t org-get-limited-outline-regexp "^" outline-next-heading " 
	\n" nil line-beginning-position 2 section :begin :end :contents-begin :contents-end :post-blank count-lines :post-affiliated] 18 (#$ . 42820)])
#@100 Interpret section element as Org syntax.
CONTENTS is the contents of the element.

(fn _ CONTENTS)
(defalias 'org-element-section-interpreter #[514 "\207" [] 3 (#$ . 43489)])
#@478 Parse a special block.

LIMIT bounds the search.  AFFILIATED is a list of which CAR is
the buffer position at the beginning of the first affiliated
keyword and CDR is a plist of affiliated keywords along with
their value.

Return a list whose CAR is `special-block' and CDR is a plist
containing `:type', `:begin', `:end', `:contents-begin',
`:contents-end', `:post-blank' and `:post-affiliated' keywords.

Assume point is at the beginning of the block.

(fn LIMIT AFFILIATED)
(defalias 'org-element-special-block-parser #[514 "\301\302\303!\210\304\305!\212\306\307\310\311!\"\301#)\204\312\"\202p\313\224\212@`\314y\210`W\205/`\211\2054b\210\314y\210`\315	w\210m\203H`\202J\316 \317\320	\321	\322\323\324\f\325\326\"\327\257\nA\244D\266\206)\262)\207" [case-fold-search t looking-at "[ 	]*#\\+BEGIN_\\(\\S-+\\)" match-string-no-properties 1 re-search-forward format "^[ 	]*#\\+END_%s[ 	]*$" regexp-quote org-element-paragraph-parser 0 nil " 
	\n" line-beginning-position special-block :type :begin :end :contents-begin :contents-end :post-blank count-lines :post-affiliated] 25 (#$ . 43671)])
#@118 Interpret SPECIAL-BLOCK element as Org syntax.
CONTENTS is the contents of the element.

(fn SPECIAL-BLOCK CONTENTS)
(defalias 'org-element-special-block-interpreter #[514 "\300\211;\203\301\302#\266\202\202\303A@\"\266\202\304\305$\207" [:type get-text-property 0 plist-get format "#+begin_%s\n%s#+end_%s"] 8 (#$ . 44806)])
#@448 Parse a babel call.

LIMIT bounds the search.  AFFILIATED is a list of which car is
the buffer position at the beginning of the first affiliated
keyword and cdr is a plist of affiliated keywords along with
their value.

Return a list whose car is `babel-call' and cdr is a plist
containing `:call', `:inside-header', `:arguments',
`:end-header', `:begin', `:end', `:value', `:post-blank' and
`:post-affiliated' as keywords.

(fn LIMIT AFFILIATED)
(defalias 'org-element-babel-call-parser #[514 "\212\211@`\300\301!\302\303\304#\210\305\306w\210\307`\310 \"\306\311\203 \312\202!\313\314\311\315\314##\266\202\316\307`\317w\210`\"!\320\321!\316\320\322!!\316\307`\310 \"\306\311\203M\312\202N\313\314\311\315\314##\266\202!\306y\210\323\nw\210m\203i`\202k\300 \324\325\326\327\330	\331\332\f\333\334\335\"\336\257A\244D\266\211)\207" [line-beginning-position 2 search-forward ":" t " 	" nil buffer-substring-no-properties line-end-position replace-regexp-in-string "\\`\\([ 	]*\n\\)+" "\\`[ 	\n
]+" "" "[ 	\n
]+\\'" org-string-nw-p "^[]()" org-element--parse-paired-brackets 91 40 " 
	\n" babel-call :call :inside-header :arguments :end-header :begin :end :value :post-blank count-lines :post-affiliated] 30 (#$ . 45150)])
#@64 Interpret BABEL-CALL element as Org syntax.

(fn BABEL-CALL _)
(defalias 'org-element-babel-call-interpreter #[514 "\300\301\211;\203\302\303#\266\202\202\304A@\"\266\202\305\211;\203+\302\303#\266\202\2023\304A@\"\266\202\211\205;\306\307\"\262\310\311\211;\203P\302\303#\266\202\202X\304A@\"\266\202\312Q\313\211;\203l\302\303#\266\202\202t\304A@\"\266\202\211\205{\314P\262\260\207" ["#+call: " :call get-text-property 0 plist-get :inside-header format "[%s]" "(" :arguments ")" :end-header " "] 12 (#$ . 46414)])
#@218 Parse a clock.

LIMIT bounds the search.

Return a list whose CAR is `clock' and CDR is a plist containing
`:status', `:value', `:time', `:begin', `:end', `:post-blank' and
`:post-affiliated' as keywords.

(fn LIMIT)
(defalias 'org-element-clock-parser #[257 "\212\301`\302\303\304 \305#\210\306\301w\210\307 \302\310\304 \305#\205'\306\301w\210\311\312!\205'\313\314!\211\203/\315\2020\316\301y\210`\317w\210\306\301x\210n\204D\301\210\320`\"\262`\321\322\323\324	\325
\326\n\327
\330\257)D\266\206)\207" [case-fold-search nil search-forward "CLOCK:" line-end-position t " 	" org-element-timestamp-parser " => " looking-at "\\(\\S-+\\)[ 	]*$" match-string-no-properties 1 closed running " 
	\n" count-lines clock :status :value :duration :begin :end :post-blank :post-affiliated] 22 (#$ . 46977)])
#@54 Interpret CLOCK element as Org syntax.

(fn CLOCK _)
(defalias 'org-element-clock-interpreter #[514 "\300\301\302\211;\203\303\304#\266\202\202\305A@\"\266\202\306\"\307\211;\203.\303\304#\266\202\2026\305A@\"\266\202\211\205D\310\311\312\313\314\315\"#P\262Q\207" ["CLOCK: " org-element-timestamp-interpreter :value get-text-property 0 plist-get nil :duration " => " apply format "%2s:%02s" org-split-string ":"] 12 (#$ . 47803)])
#@235 Parse a comment.

LIMIT bounds the search.

Return a list whose CAR is `comment' and CDR is a plist
containing `:begin', `:end', `:value', `:post-blank',
`:post-affiliated' keywords.

Assume point is at comment beginning.

(fn LIMIT)
(defalias 'org-element-comment-parser #[257 "\212`\300\301!\210\302\303\225\304 \"\305y\210`W\203,\300\306!\203,\211\307\302\303\225\304 \"Q\262\305y\210\202`\211b\210\310w\210m\203<`\202>\311 \312\313\314\315\316\317\n\n\"\320
\257\nD\266\204)\207" [looking-at "[ 	]*# ?" buffer-substring-no-properties 0 line-end-position nil "[ 	]*#\\( \\|$\\)" "\n" " 
	\n" line-beginning-position comment :begin :end :value :post-blank count-lines :post-affiliated] 16 (#$ . 48261)])
#@75 Interpret COMMENT element as Org syntax.
CONTENTS is nil.

(fn COMMENT _)
(defalias 'org-element-comment-interpreter #[514 "\300\301\302\303\211;\203\304\305#\266\202\202\306A@\"\266\202#\207" [replace-regexp-in-string "^" "# " :value get-text-property 0 plist-get] 11 (#$ . 48989)])
#@440 Parse an export block.

LIMIT bounds the search.  AFFILIATED is a list of which CAR is
the buffer position at the beginning of the first affiliated
keyword and CDR is a plist of affiliated keywords along with
their value.

Return a list whose CAR is `comment-block' and CDR is a plist
containing `:begin', `:end', `:value', `:post-blank' and
`:post-affiliated' keywords.

Assume point is at comment block beginning.

(fn LIMIT AFFILIATED)
(defalias 'org-element-comment-block-parser #[514 "\301\212\302\303\301#)\204\304\"\202W\305\224\212@`\306y\210`b\210\306y\210`\307w\210m\2031`\2023\310 \311\"\312\313\314\315\316\317\"\320\257\n	A\244D\266\206)\262)\207" [case-fold-search t re-search-forward "^[ 	]*#\\+END_COMMENT[ 	]*$" org-element-paragraph-parser 0 nil " 
	\n" line-beginning-position buffer-substring-no-properties comment-block :begin :end :value :post-blank count-lines :post-affiliated] 20 (#$ . 49289)])
#@70 Interpret COMMENT-BLOCK element as Org syntax.

(fn COMMENT-BLOCK _)
(defalias 'org-element-comment-block-interpreter #[514 "\300\301\302\303\304\211;\203\305\306#\266\202\202\307A@\"\266\202!!\"\207" [format "#+begin_comment\n%s#+end_comment" org-element-normalize-string org-remove-indentation :value get-text-property 0 plist-get] 12 (#$ . 50244)])
#@389 Parse a diary sexp.

LIMIT bounds the search.  AFFILIATED is a list of which CAR is
the buffer position at the beginning of the first affiliated
keyword and CDR is a plist of affiliated keywords along with
their value.

Return a list whose CAR is `diary-sexp' and CDR is a plist
containing `:begin', `:end', `:value', `:post-blank' and
`:post-affiliated' keywords.

(fn LIMIT AFFILIATED)
(defalias 'org-element-diary-sexp-parser #[514 "\212\211@`\300\301!\210\302\303!\304y\210`\305w\210m\203`\202\306 \307\310\311\312\313\314\n\n\"\315
\257\nA\244D\266\205)\207" [looking-at "\\(%%(.*\\)[ 	]*$" match-string-no-properties 1 nil " 
	\n" line-beginning-position diary-sexp :value :begin :end :post-blank count-lines :post-affiliated] 18 (#$ . 50613)])
#@56 Interpret DIARY-SEXP as Org syntax.

(fn DIARY-SEXP _)
(defalias 'org-element-diary-sexp-interpreter #[514 "\300\211;\203
\301\302#\207\303A@\"\207" [:value get-text-property 0 plist-get] 8 (#$ . 51386)])
#@493 Parse an example block.

LIMIT bounds the search.  AFFILIATED is a list of which CAR is
the buffer position at the beginning of the first affiliated
keyword and CDR is a plist of affiliated keywords along with
their value.

Return a list whose CAR is `example-block' and CDR is a plist
containing `:begin', `:end', `:number-lines', `:preserve-indent',
`:retain-labels', `:use-labels', `:label-fmt', `:switches',
`:value', `:post-blank' and `:post-affiliated' keywords.

(fn LIMIT AFFILIATED)
(defalias 'org-element-example-block-parser #[514 "\301\212\302\303\301#)\204\304\"\202\331\305\224\212\306\307!\210\310\311!\211\205G\312\313\"\205G\314\311\"\315\232\2035\316\2026\317\320\225\204?\305\202F\321\314\320\"!SB\205O\312\322\"?\206d\312\323\"?\206d\205d\312\324\"?\206r\211\205r\312\324\"?\205\203\312\325\"\205\203\314\311\"@`\326\320!\327\330\f\"!\nb\210\331y\210`\332w\210m\203\246`\202\250\326 \333\334\335\336\337\340\341\342\343\344\345\346\"\347\257A\244D\266\214)\262)\207" [case-fold-search t re-search-forward "^[ 	]*#\\+END_EXAMPLE[ 	]*$" org-element-paragraph-parser 0 looking-at "^[ 	]*#\\+BEGIN_EXAMPLE\\(?: +\\(.*\\)\\)?" match-string-no-properties 1 string-match "\\([-+]\\)n\\(?: *\\([0-9]+\\)\\)?\\>" match-string "-" new continued 2 string-to-number "-i\\>" "-r\\>" "-k\\>" "-l +\"\\([^\"\n]+\\)\"" line-beginning-position org-unescape-code-in-string buffer-substring-no-properties nil " 
	\n" example-block :begin :end :value :switches :number-lines :preserve-indent :retain-labels :use-labels :label-fmt :post-blank count-lines :post-affiliated] 38 (#$ . 51604)])
#@70 Interpret EXAMPLE-BLOCK element as Org syntax.

(fn EXAMPLE-BLOCK _)
(defalias 'org-element-example-block-interpreter #[514 "\302\211;\203\303\304#\266\202\202\305A@\"\266\202\306\211;\203*\303\304#\266\202\2022\305A@\"\266\202\204R\307\211;\203G\303\304#\266\202\202O\305A@\"\266\202\203V\211\202q	\304U\203b\310!\202q\311	\312\"\313\314\315P\310!#\262\262\316\205{\317P\320\321\322!!\323\260\207" [org-src-preserve-indentation org-edit-src-content-indentation :switches get-text-property 0 plist-get :value :preserve-indent org-remove-indentation make-string 32 replace-regexp-in-string "^[ 	]*\\S-" "\\&" "#+begin_example" " " "\n" org-element-normalize-string org-escape-code-in-string "#+end_example"] 10 (#$ . 53273)])
#@447 Parse an export block.

LIMIT bounds the search.  AFFILIATED is a list of which CAR is
the buffer position at the beginning of the first affiliated
keyword and CDR is a plist of affiliated keywords along with
their value.

Return a list whose CAR is `export-block' and CDR is a plist
containing `:begin', `:end', `:type', `:value', `:post-blank' and
`:post-affiliated' keywords.

Assume point is at export-block beginning.

(fn LIMIT AFFILIATED)
(defalias 'org-element-export-block-parser #[514 "\301\212\302\303\301#)\204\304\"\202h\212\305\224\306\307!\210\310\311!@`\312y\210`b\210\312y\210`\313w\210m\2038`\202:\314 \315\316	\"!\317\320\205K\226\321	\322\323\324\325

\"\326\257\f\nA\244D\266\210))\207" [case-fold-search t re-search-forward "^[ 	]*#\\+END_EXPORT[ 	]*$" org-element-paragraph-parser 0 looking-at "[ 	]*#\\+BEGIN_EXPORT\\(?:[ 	]+\\(\\S-+\\)\\)?[ 	]*$" match-string-no-properties 1 nil " 
	\n" line-beginning-position org-unescape-code-in-string buffer-substring-no-properties export-block :type :begin :end :value :post-blank count-lines :post-affiliated] 23 (#$ . 54044)])
#@68 Interpret EXPORT-BLOCK element as Org syntax.

(fn EXPORT-BLOCK _)
(defalias 'org-element-export-block-interpreter #[514 "\300\301\302\211;\203\303\304#\266\202\202\305A@\"\266\202\306\211;\203,\303\304#\266\202\2024\305A@\"\266\202#\207" [format "#+begin_export %s\n%s#+end_export" :type get-text-property 0 plist-get :value] 11 (#$ . 55174)])
#@458 Parse a fixed-width section.

LIMIT bounds the search.  AFFILIATED is a list of which CAR is
the buffer position at the beginning of the first affiliated
keyword and CDR is a plist of affiliated keywords along with
their value.

Return a list whose CAR is `fixed-width' and CDR is a plist
containing `:begin', `:end', `:value', `:post-blank' and
`:post-affiliated' keywords.

Assume point is at the beginning of the fixed-width area.

(fn LIMIT AFFILIATED)
(defalias 'org-element-fixed-width-parser #[514 "\212\211@``W\203\300\301!\203\302y\210\202n\203 \303\304!\202!`\305w\210m\203-`\202/\306 \307\310\311\312\313\314\315\316\f\f\"#\317\320\n\n\"\321\f\257\nA\244D\266\204)\207" [looking-at "[ 	]*:\\( \\|$\\)" nil line-end-position 0 " 
	\n" line-beginning-position fixed-width :begin :end :value replace-regexp-in-string "^[ 	]*: ?" "" buffer-substring-no-properties :post-blank count-lines :post-affiliated] 18 (#$ . 55542)])
#@66 Interpret FIXED-WIDTH element as Org syntax.

(fn FIXED-WIDTH _)
(defalias 'org-element-fixed-width-interpreter #[514 "\300\211;\203\301\302#\266\202\202\303A@\"\266\202\211\205\"\304\305\306#\207" [:value get-text-property 0 plist-get replace-regexp-in-string "^" ": "] 8 (#$ . 56500)])
#@390 Parse an horizontal rule.

LIMIT bounds the search.  AFFILIATED is a list of which CAR is
the buffer position at the beginning of the first affiliated
keyword and CDR is a plist of affiliated keywords along with
their value.

Return a list whose CAR is `horizontal-rule' and CDR is a plist
containing `:begin', `:end', `:post-blank' and `:post-affiliated'
keywords.

(fn LIMIT AFFILIATED)
(defalias 'org-element-horizontal-rule-parser #[514 "\212\211@`\300y\210`\301w\210m\203`\202\302 \303\304\305\306\307\"\310\n\257A\244D\266\204)\207" [nil " 
	\n" line-beginning-position horizontal-rule :begin :end :post-blank count-lines :post-affiliated] 15 (#$ . 56806)])
#@64 Interpret HORIZONTAL-RULE element as Org syntax.

(fn &rest _)
(defalias 'org-element-horizontal-rule-interpreter #[128 "\300\207" ["-----"] 2 (#$ . 57491)])
#@425 Parse a keyword at point.

LIMIT bounds the search.  AFFILIATED is a list of which CAR is
the buffer position at the beginning of the first affiliated
keyword and CDR is a plist of affiliated keywords along with
their value.

Return a list whose CAR is a normalized `keyword' (uppercase) and
CDR is a plist containing `:key', `:value', `:begin', `:end',
`:post-blank' and `:post-affiliated' keywords.

(fn LIMIT AFFILIATED)
(defalias 'org-element-keyword-parser #[514 "\212\211@\206``\300\301!\210\302\303!\226\304\305\225\306 \"\307\310\203 \311\202!\312\313\310\314\313##\266\202\307y\210`\315w\210m\203<`\202>\316 \317\320\321\322\323\324\325\f\f\"\326\257\fA\244D\266\206)\207" [looking-at "[ 	]*#\\+\\(\\S-*\\):" match-string-no-properties 1 buffer-substring-no-properties 0 point-at-eol nil replace-regexp-in-string "\\`\\([ 	]*\n\\)+" "\\`[ 	\n
]+" "" "[ 	\n
]+\\'" " 
	\n" line-beginning-position keyword :key :value :begin :end :post-blank count-lines :post-affiliated] 21 (#$ . 57656)])
#@58 Interpret KEYWORD element as Org syntax.

(fn KEYWORD _)
(defalias 'org-element-keyword-interpreter #[514 "\300\301\302\211;\203\303\304#\266\202\202\305A@\"\266\202\227\306\211;\203-\303\304#\266\202\2025\305A@\"\266\202#\207" [format "#+%s: %s" :key get-text-property 0 plist-get :value] 11 (#$ . 58683)])
#@151 Regexp matching the beginning of a LaTeX environment.
The environment is captured by the first group.

See also `org-element--latex-end-environment'.
(defconst org-element--latex-begin-environment "^[ 	]*\\\\begin{\\([A-Za-z0-9*]+\\)}" (#$ . 59014))
#@108 Format string matching the ending of a LaTeX environment.
See also `org-element--latex-begin-environment'.
(defconst org-element--latex-end-environment "\\\\end{%s}[ 	]*$" (#$ . 59271))
#@463 Parse a LaTeX environment.

LIMIT bounds the search.  AFFILIATED is a list of which CAR is
the buffer position at the beginning of the first affiliated
keyword and CDR is a plist of affiliated keywords along with
their value.

Return a list whose CAR is `latex-environment' and CDR is a plist
containing `:begin', `:end', `:value', `:post-blank' and
`:post-affiliated' keywords.

Assume point is at the beginning of the latex environment.

(fn LIMIT AFFILIATED)
(defalias 'org-element-latex-environment-parser #[514 "\212\303`\304	!\210\305\306\n\307\310\311!!\"\303#\204\312\"\202S\313y\210`@\314\"\315w\210m\2036`\2028\316 \317\320\321\322\323\324\f\n\"\325\257\nA\244D\266\204)\266\202)\207" [case-fold-search org-element--latex-begin-environment org-element--latex-end-environment t looking-at re-search-forward format regexp-quote match-string 1 org-element-paragraph-parser nil buffer-substring-no-properties " 
	\n" line-beginning-position latex-environment :begin :end :value :post-blank count-lines :post-affiliated] 19 (#$ . 59464)])
#@78 Interpret LATEX-ENVIRONMENT element as Org syntax.

(fn LATEX-ENVIRONMENT _)
(defalias 'org-element-latex-environment-interpreter #[514 "\300\211;\203
\301\302#\207\303A@\"\207" [:value get-text-property 0 plist-get] 8 (#$ . 60539)])
#@228 Parse a node-property at point.

LIMIT bounds the search.

Return a list whose CAR is `node-property' and CDR is a plist
containing `:key', `:value', `:begin', `:end', `:post-blank' and
`:post-affiliated' keywords.

(fn LIMIT)
(defalias 'org-element-node-property-parser #[257 "\302!\210\303`\304\305!\304\306!\212\307\210\310\303#\203\311 \202)\312\313\314\315	\316\317\320\321\257\f)D\207" [org-property-re case-fold-search looking-at t match-string-no-properties 2 3 nil re-search-forward line-beginning-position node-property :key :value :begin :end :post-blank 0 :post-affiliated] 19 (#$ . 60786)])
#@70 Interpret NODE-PROPERTY element as Org syntax.

(fn NODE-PROPERTY _)
(defalias 'org-element-node-property-interpreter #[514 "\301\301\302\303\211;\203\304\305#\266\202\202\306A@\"\266\202\"\307\211;\2030\304\305#\266\202\2028\306A@\"\266\202\206<\310#\207" [org-property-format format ":%s:" :key get-text-property 0 plist-get :value ""] 12 (#$ . 61415)])
#@468 Parse a paragraph.

LIMIT bounds the search.  AFFILIATED is a list of which CAR is
the buffer position at the beginning of the first affiliated
keyword and CDR is a plist of affiliated keywords along with
their value.

Return a list whose CAR is `paragraph' and CDR is a plist
containing `:begin', `:end', `:contents-begin' and
`:contents-end', `:post-blank' and `:post-affiliated' keywords.

Assume point is at the beginning of the paragraph.

(fn LIMIT AFFILIATED)
(defalias 'org-element-paragraph-parser #[514 "\212\211@`\306\307\210\310	\311#\203k\312 \210\313\n!\203$\212\310\314\306#)\202b\313\315!\203;\212\310\316\317\320\321\322!!\"\306#)\202b\313!\203R\212\310\316\f\320\321\322!!\"\306#)\202b\313\323!\203a\324\321\322!
\"\202b\306\204k\307\210\202	`U\203u\202x\325 b)\212\326x\210\325\327!)\326w\210m\203\217`\202\221\325 \330\331\332\333	\334	\335\336
\f\"\337\257\fA\244D\266\205)\207" [case-fold-search org-element-paragraph-separate org-drawer-regexp org-element--latex-begin-environment org-element--latex-end-environment org-element-dual-keywords t nil re-search-forward move beginning-of-line looking-at "^[ 	]*:END:[ 	]*$" "[ 	]*#\\+BEGIN_\\(\\S-+\\)" format "^[ 	]*#\\+END_%s[ 	]*$" regexp-quote match-string 1 "[ 	]*#\\+\\(\\S-+\\)\\[.*\\]:" member-ignore-case line-beginning-position " 
	\n" 2 paragraph :begin :end :contents-begin :contents-end :post-blank count-lines :post-affiliated] 20 (#$ . 61797)])
#@102 Interpret paragraph element as Org syntax.
CONTENTS is the contents of the element.

(fn _ CONTENTS)
(defalias 'org-element-paragraph-interpreter #[514 "\207" [] 3 (#$ . 63272)])
#@229 Parse a planning.

LIMIT bounds the search.

Return a list whose CAR is `planning' and CDR is a plist
containing `:closed', `:deadline', `:scheduled', `:begin',
`:end', `:post-blank' and `:post-affiliated' keywords.

(fn LIMIT)
(defalias 'org-element-planning-parser #[257 "\212\304`\304y\210`\305w\210\306\304x\210n\204\304\210\307`\"\262`\304\211\211b\210\310	\311#\203Y\312\225b\210\306w\210\313\312!\314 \n\232\203E\211\262\202T\232\203Q\211\262\202T\211\262\266\202$\315\316\317\320\321
\322
\323\324\257)D\266\206)\207" [case-fold-search org-keyword-time-not-clock-regexp org-closed-string org-deadline-string nil " 
	\n" " 	" count-lines re-search-forward t 1 match-string org-element-timestamp-parser planning :closed :deadline :scheduled :begin :end :post-blank :post-affiliated] 22 (#$ . 63458)])
#@60 Interpret PLANNING element as Org syntax.

(fn PLANNING _)
(defalias 'org-element-planning-interpreter #[514 "\303\304\305\306\307\211;\203\310\311#\266\202\202\312A@\"\266\202\211\205)\313\314\306\"Q\262\315\211;\203=\310\311#\266\202\202E\312A@\"\266\202\211\205P	\313\314\306\"Q\262\316\211;\203d\310\311#\266\202\202l\312A@\"\266\202\211\205w\n\313\314\306\"Q\262E\"\313#\207" [org-deadline-string org-scheduled-string org-closed-string mapconcat identity delq nil :deadline get-text-property 0 plist-get " " org-element-timestamp-interpreter :scheduled :closed] 14 (#$ . 64305)])
#@563 Parse a source block.

LIMIT bounds the search.  AFFILIATED is a list of which CAR is
the buffer position at the beginning of the first affiliated
keyword and CDR is a plist of affiliated keywords along with
their value.

Return a list whose CAR is `src-block' and CDR is a plist
containing `:language', `:switches', `:parameters', `:begin',
`:end', `:number-lines', `:retain-labels', `:use-labels',
`:label-fmt', `:preserve-indent', `:value', `:post-blank' and
`:post-affiliated' keywords.

Assume point is at the beginning of the block.

(fn LIMIT AFFILIATED)
(defalias 'org-element-src-block-parser #[514 "\301\212\302\303\301#)\204\304\"\202\305\224\212@`\306\307!\210\310\311!\310\312!\310\313!\205P\314\315\"\205P\316\311\"\317\232\203>\320\202?\321\312\225\204H\305\202O\322\316\312\"!SB\205X\314\323\"\205g\314\324\"\205g\316\311\"?\206~\314\325\"?\206~\205~\314\326\"?\206\215\211\205\215\314\326\"?\327\330\331\312!
\"!b\210\332y\210`\333w\210m\203\253`\202\255\331 \334\335\f\336\337!\205\320
\332\340\203\305\341\202\306\342\343\340\344\343##\266\202\345\337!\205\357\332\340\203\344\341\202\345\342\343\340\344\343##\266\202\346\347\n\350\351\352\353\354\355\356\357\"\360%\257A\244D\266\215)\262)\207" [case-fold-search t re-search-forward "^[ 	]*#\\+END_SRC[ 	]*$" org-element-paragraph-parser 0 looking-at "^[ 	]*#\\+BEGIN_SRC\\(?: +\\(\\S-+\\)\\)?\\(\\(?: +\\(?:-\\(?:l \".+\"\\|[ikr]\\)\\|[-+]n\\(?: *[0-9]+\\)?\\)\\)+\\)?\\(.*\\)[ 	]*$" match-string-no-properties 1 2 3 string-match "\\([-+]\\)n\\(?: *\\([0-9]+\\)\\)?\\>" match-string "-" new continued string-to-number "-i\\>" "-l +\"\\([^\"\n]+\\)\"" "-r\\>" "-k\\>" org-unescape-code-in-string buffer-substring-no-properties line-beginning-position nil " 
	\n" src-block :language :switches org-string-nw-p replace-regexp-in-string "\\`\\([ 	]*\n\\)+" "\\`[ 	\n
]+" "" "[ 	\n
]+\\'" :parameters :begin :end :number-lines :preserve-indent :retain-labels :use-labels :label-fmt :value :post-blank count-lines :post-affiliated] 43 (#$ . 64933)])
#@62 Interpret SRC-BLOCK element as Org syntax.

(fn SRC-BLOCK _)
(defalias 'org-element-src-block-interpreter #[514 "\302\211;\203\303\304#\266\202\202\305A@\"\266\202\306\211;\203*\303\304#\266\202\2022\305A@\"\266\202\307\211;\203C\303\304#\266\202\202K\305A@\"\266\202\310\211;\203\\\303\304#\266\202\202d\305A@\"\266\202\204\205\311\211;\203z\303\304#\266\202\202\202\305A@\"\266\202\203\211\211\202\244	\304U\203\225\312!\202\244\313	\314\"\315\316\317P\312!#\262\262\320\321\205\260\322P\205\270\322P\205\300\322PQ\323\324!!#\207" [org-src-preserve-indentation org-edit-src-content-indentation :language get-text-property 0 plist-get :switches :parameters :value :preserve-indent org-remove-indentation make-string 32 replace-regexp-in-string "^[ 	]*\\S-" "\\&" format "#+begin_src%s\n%s#+end_src" " " org-element-normalize-string org-escape-code-in-string] 12 (#$ . 67047)])
#@491 Parse a table at point.

LIMIT bounds the search.  AFFILIATED is a list of which CAR is
the buffer position at the beginning of the first affiliated
keyword and CDR is a plist of affiliated keywords along with
their value.

Return a list whose CAR is `table' and CDR is a plist containing
`:begin', `:end', `:tblfm', `:type', `:contents-begin',
`:contents-end', `:value', `:post-blank' and `:post-affiliated'
keywords.

Assume point is at the beginning of the table.

(fn LIMIT AFFILIATED)
(defalias 'org-element-table-parser #[514 "\212\301`\302\303!\203\304\202\305\306\307\304=\203\310\202\311\"@\312\313#\203.\314\224b\202/`\315\302\316!\203C\317\320!B\262\315y\210\2020\211\262`\321	w\210m\203T`\202V\322 \323\324\325\326\f\327\n\330\304=\205l\331\304=\205v\332\305=\205\204\333\"\334\335\"\336\257\nA\244)D\266\210)\207" [case-fold-search t looking-at "[ 	]*|" org table\.el format "^[ 	]*\\($\\|[^| 	%s]\\)" "" "+" re-search-forward move 0 nil "[ 	]*#\\+TBLFM: +\\(.*\\)[ 	]*$" match-string-no-properties 1 " 
	\n" line-beginning-position table :begin :end :type :tblfm :contents-begin :contents-end :value buffer-substring-no-properties :post-blank count-lines :post-affiliated] 29 (#$ . 67994)])
#@117 Interpret TABLE element as Org syntax.
CONTENTS is a string, if table's type is `org', or nil.

(fn TABLE CONTENTS)
(defalias 'org-element-table-interpreter #[514 "\300\211;\203\301\302#\266\202\202\303A@\"\266\202\304=\203:\305\306\211;\2030\301\302#\266\202\2028\303A@\"\266\202!\207\307\310!r\211q\210\311\302\312\313\314!\315\"\316$\216c\210\317 \210\320 *\262\321\322\323\324\211;\203m\301\302#\266\202\202u\303A@\"\266\202!\325#P\207" [:type get-text-property 0 plist-get table\.el org-remove-indentation :value generate-new-buffer " *temp*" make-byte-code "\301\300!\205	\302\300!\207" vconcat vector [buffer-name kill-buffer] 2 org-table-align buffer-string mapconcat #[257 "\300P\207" ["#+TBLFM: "] 3 "\n\n(fn FM)"] reverse :tblfm "\n"] 12 (#$ . 69260)])
#@215 Parse table row at point.

Return a list whose CAR is `table-row' and CDR is a plist
containing `:begin', `:end', `:contents-begin', `:contents-end',
`:type', `:post-blank' and `:post-affiliated' keywords.

(fn _)
(defalias 'org-element-table-row-parser #[257 "\212\300\301!\203\302\202\f\303`\303=\205\304\305!\303=\205$\306\210\307\306x\210`\310\311!\312\313\314\315\316\n\317\320\321\322\257D\266\205)\207" [looking-at "^[ 	]*|-" rule standard search-forward "|" nil " 	" line-beginning-position 2 table-row :type :begin :end :contents-begin :contents-end :post-blank 0 :post-affiliated] 21 (#$ . 70061)])
#@112 Interpret TABLE-ROW element as Org syntax.
CONTENTS is the contents of the table row.

(fn TABLE-ROW CONTENTS)
(defalias 'org-element-table-row-interpreter #[514 "\300\211;\203\301\302#\266\202\202\303A@\"\266\202\304=\203 \305\207\306P\207" [:type get-text-property 0 plist-get rule "|-" "|"] 8 (#$ . 70698)])
#@461 Parse a verse block.

LIMIT bounds the search.  AFFILIATED is a list of which CAR is
the buffer position at the beginning of the first affiliated
keyword and CDR is a plist of affiliated keywords along with
their value.

Return a list whose CAR is `verse-block' and CDR is a plist
containing `:begin', `:end', `:contents-begin', `:contents-end',
`:post-blank' and `:post-affiliated' keywords.

Assume point is at beginning of the block.

(fn LIMIT AFFILIATED)
(defalias 'org-element-verse-block-parser #[514 "\301\212\302\303\301#)\204\304\"\202U\305\224\212@`\306y\210`b\210\306y\210`\307w\210m\2031`\2023\310 \311\312\313\314\315
\316\317\f\f\"\320\257\fA\244D\266\205)\262)\207" [case-fold-search t re-search-forward "^[ 	]*#\\+END_VERSE[ 	]*$" org-element-paragraph-parser 0 nil " 
	\n" line-beginning-position verse-block :begin :end :contents-begin :contents-end :post-blank count-lines :post-affiliated] 21 (#$ . 71027)])
#@97 Interpret verse-block element as Org syntax.
CONTENTS is verse block contents.

(fn _ CONTENTS)
(defalias 'org-element-verse-block-interpreter #[514 "\300\301\"\207" [format "#+begin_verse\n%s#+end_verse"] 5 (#$ . 71988)])
#@270 Parse bold object at point, if any.

When at a bold object, return a list whose car is `bold' and cdr
is a plist with `:begin', `:end', `:contents-begin' and
`:contents-end' and `:post-blank' keywords.  Otherwise, return
nil.

Assume point is at the first star marker.
(defalias 'org-element-bold-parser #[0 "\212n\204\301u\210\302!\2050\303\224\304\224\304\225\303\225b\210\305\306w`\307\310\311\312	\313\n\314\257\nD\266\205)\207" [org-emph-re -1 looking-at 2 4 " 	" nil bold :begin :end :contents-begin :contents-end :post-blank] 16 (#$ . 72219)])
#@95 Interpret bold object as Org syntax.
CONTENTS is the contents of the object.

(fn _ CONTENTS)
(defalias 'org-element-bold-interpreter #[514 "\300\301\"\207" [format "*%s*"] 5 (#$ . 72787)])
#@242 Parse code object at point, if any.

When at a code object, return a list whose car is `code' and cdr
is a plist with `:value', `:begin', `:end' and `:post-blank'
keywords.  Otherwise, return nil.

Assume point is at the first tilde marker.
(defalias 'org-element-code-parser #[0 "\212n\204\301u\210\302!\205,\303\224\304\305!\303\225b\210\306\307w`\310\311\312\313\314	\257D\266\204)\207" [org-verbatim-re -1 looking-at 2 match-string-no-properties 4 " 	" nil code :value :begin :end :post-blank] 13 (#$ . 72985)])
#@51 Interpret CODE object as Org syntax.

(fn CODE _)
(defalias 'org-element-code-interpreter #[514 "\300\301\302\211;\203\303\304#\266\202\202\305A@\"\266\202\"\207" [format "~%s~" :value get-text-property 0 plist-get] 10 (#$ . 73518)])
#@316 Parse entity at point, if any.

When at an entity, return a list whose car is `entity' and cdr
a plist with `:begin', `:end', `:latex', `:latex-math-p',
`:html', `:latin1', `:utf-8', `:ascii', `:use-brackets-p' and
`:post-blank' as keywords.  Otherwise, return nil.

Assume point is at the beginning of the entity.
(defalias 'org-element-entity-parser #[0 "\3022n\303\304!\205m\212\305\306!\307\"\206\307	\"\262\206\"\310\302\311\"\312\224\305\313!\314\230\306\225b\210\211\2034\313u\210\315\311w`\316\317@\320A@\321\3138\322\323
8\324\3258\326\3278\330\3318\332\333\334\335\257D\266\205)0\207" [org-entities-user org-entities no-object looking-at "\\\\\\(?:\\(?1:_ +\\)\\|\\(?1:there4\\|sup[123]\\|frac[13][24]\\|[a-zA-Z]+\\)\\(?2:$\\|{}\\|[^[:alpha:]]\\)\\)" match-string 1 assoc throw nil 0 2 "{}" " 	" entity :name :latex :latex-math-p :html 3 :ascii 4 :latin1 5 :utf-8 6 :begin :end :use-brackets-p :post-blank] 28 (#$ . 73768)])
#@55 Interpret ENTITY object as Org syntax.

(fn ENTITY _)
(defalias 'org-element-entity-interpreter #[514 "\300\301\211;\203\302\303#\266\202\202\304A@\"\266\202\305\211;\203+\302\303#\266\202\2023\304A@\"\266\202\2057\306Q\207" ["\\" :name get-text-property 0 plist-get :use-brackets-p "{}"] 10 (#$ . 74741)])
#@270 Parse export snippet at point.

When at an export snippet, return a list whose car is
`export-snippet' and cdr a plist with `:begin', `:end',
`:back-end', `:value' and `:post-blank' as keywords.  Otherwise,
return nil.

Assume point is at the beginning of the snippet.
(defalias 'org-element-export-snippet-parser #[0 "\212\300\301\302!\205M\303 \304\305\306\307\310!\311\"\312$\216\305\225b\210\313\314\300\315#\210\305\224)\262\211\262\205M\305\224\316\317!\320\305\225\"\321\300w`\322\323\324\325\n\326\327\257\nD\266\205\262)\207" [nil looking-at "@@\\([-A-Za-z0-9]+\\):" match-data make-byte-code 0 "\301\300\302\"\207" vconcat vector [set-match-data evaporate] 3 re-search-forward "@@" t match-string-no-properties 1 buffer-substring-no-properties " 	" export-snippet :back-end :value :begin :end :post-blank] 17 (#$ . 75072)])
#@71 Interpret EXPORT-SNIPPET object as Org syntax.

(fn EXPORT-SNIPPET _)
(defalias 'org-element-export-snippet-interpreter #[514 "\300\301\302\211;\203\303\304#\266\202\202\305A@\"\266\202\306\211;\203,\303\304#\266\202\2024\305A@\"\266\202#\207" [format "@@%s:%s@@" :back-end get-text-property 0 plist-get :value] 11 (#$ . 75927)])
#@271 Parse footnote reference at point, if any.

When at a footnote reference, return a list whose car is
`footnote-reference' and cdr a plist with `:label', `:type',
`:begin', `:end', `:contents-begin', `:contents-end' and
`:post-blank' as keywords.  Otherwise, return nil.
(defalias 'org-element-footnote-reference-parser #[0 "\302!\205x\303 p\304\305\306\307\310\"\311\"\312$\216\313	!\210\3141)\315`\316\305#0\202+\210\317)\266\202\211\205v\212`\320\316!\305\225S\312\225\203D\321\202E\322b\210\323\317w`\324\325\326\327\f\330\331\f\321=\205c\332\321=\205m\333\257D\266\207)\262\207" [org-footnote-re org-element--pair-square-table looking-at syntax-table make-byte-code 0 "r\301q\210\302\300!)\207" vconcat vector [set-syntax-table] 2 set-syntax-table (error) scan-lists 1 nil match-string-no-properties inline standard " 	" footnote-reference :label :type :begin :end :contents-begin :contents-end :post-blank] 23 (#$ . 76280)])
#@135 Interpret FOOTNOTE-REFERENCE object as Org syntax.
CONTENTS is its definition, when inline, or nil.

(fn FOOTNOTE-REFERENCE CONTENTS)
(defalias 'org-element-footnote-reference-interpreter #[514 "\300\301\302\211;\203\303\304#\266\202\202\305A@\"\266\202\206\306\203)\307P\202*\306#\207" [format "[fn:%s%s]" :label get-text-property 0 plist-get "" ":"] 10 (#$ . 77250)])
#@333 Parse inline babel call at point, if any.

When at an inline babel call, return a list whose car is
`inline-babel-call' and cdr a plist with `:call',
`:inside-header', `:arguments', `:end-header', `:begin', `:end',
`:value' and `:post-blank' as keywords.  Otherwise, return nil.

Assume point is at the beginning of the babel call.
(defalias 'org-element-inline-babel-call-parser #[0 "\212\3012\224\302\303\304!)\205\223\305\225b\210\306\224\307\305!\310\311!\312!\205:\313\314\315\302\313\203.\316\202/\317\320\313\321\320##\266\202#\262\312\310\322!\206G\323\301\302\"!\310\311!\312!\205k\313\314\315\302\313\203_\316\202`\317\320\313\321\320##\266\202#\262\324`\"\325\302w`\326\327\330	\331\n\332\333\334\f\335\336\257D\266\2100)\207" [case-fold-search :no-object nil looking-at "\\<call_\\([^ 	\n[(]+\\)[([]" 1 0 match-string-no-properties org-element--parse-paired-brackets 91 org-string-nw-p replace-regexp-in-string "\n[ 	]*" " " "\\`\\([ 	]*\n\\)+" "\\`[ 	\n
]+" "" "[ 	\n
]+\\'" 40 throw buffer-substring-no-properties " 	" inline-babel-call :call :inside-header :arguments :end-header :begin :end :value :post-blank] 25 (#$ . 77642)])
#@77 Interpret INLINE-BABEL-CALL object as Org syntax.

(fn INLINE-BABEL-CALL _)
(defalias 'org-element-inline-babel-call-interpreter #[514 "\300\301\211;\203\302\303#\266\202\202\304A@\"\266\202\305\211;\203+\302\303#\266\202\2023\304A@\"\266\202\211\205;\306\307\"\262\310\311\211;\203P\302\303#\266\202\202X\304A@\"\266\202\312\313\211;\203k\302\303#\266\202\202s\304A@\"\266\202\211\205{\306\307\"\262\260\207" ["call_" :call get-text-property 0 plist-get :inside-header format "[%s]" "(" :arguments ")" :end-header] 14 (#$ . 78830)])
#@317 Parse inline source block at point, if any.

When at an inline source block, return a list whose car is
`inline-src-block' and cdr a plist with `:begin', `:end',
`:language', `:value', `:parameters' and `:post-blank' as
keywords.  Otherwise, return nil.

Assume point is at the beginning of the inline source block.
(defalias 'org-element-inline-src-block-parser #[0 "\212\3012_\302\303\304!)\205^\305\225b\210\306\224\307\305!\310\311!\312!\205:\313\314\315\302\313\203.\316\202/\317\320\313\321\320##\266\202#\262\310\322!\206F\323\301\302\"\324\302w\325\326\327\330\331\f\332`\333\f\257\fD\266\2050)\207" [case-fold-search :no-object nil looking-at "\\<src_\\([^ 	\n[{]+\\)[{[]" 1 0 match-string-no-properties org-element--parse-paired-brackets 91 org-string-nw-p replace-regexp-in-string "\n[ 	]*" " " "\\`\\([ 	]*\n\\)+" "\\`[ 	\n
]+" "" "[ 	\n
]+\\'" 123 throw " 	" inline-src-block :language :value :parameters :begin :end :post-blank] 18 (#$ . 79410)])
#@75 Interpret INLINE-SRC-BLOCK object as Org syntax.

(fn INLINE-SRC-BLOCK _)
(defalias 'org-element-inline-src-block-interpreter #[514 "\300\211;\203\301\302#\266\202\202\303A@\"\266\202\304\211;\203*\301\302#\266\202\2022\303A@\"\266\202\305\211;\203C\301\302#\266\202\202K\303A@\"\266\202\306\307\203Z\306\310\"\202[\311$\207" [:language get-text-property 0 plist-get :parameters :value format "src_%s%s{%s}" "[%s]" ""] 11 (#$ . 80396)])
#@278 Parse italic object at point, if any.

When at an italic object, return a list whose car is `italic' and
cdr is a plist with `:begin', `:end', `:contents-begin' and
`:contents-end' and `:post-blank' keywords.  Otherwise, return
nil.

Assume point is at the first slash marker.
(defalias 'org-element-italic-parser #[0 "\212n\204\301u\210\302!\2050\303\224\304\224\304\225\303\225b\210\305\306w`\307\310\311\312	\313\n\314\257\nD\266\205)\207" [org-emph-re -1 looking-at 2 4 " 	" nil italic :begin :end :contents-begin :contents-end :post-blank] 16 (#$ . 80870)])
#@97 Interpret italic object as Org syntax.
CONTENTS is the contents of the object.

(fn _ CONTENTS)
(defalias 'org-element-italic-interpreter #[514 "\300\301\"\207" [format "/%s/"] 5 (#$ . 81450)])
#@272 Parse LaTeX fragment at point, if any.

When at a LaTeX fragment, return a list whose car is
`latex-fragment' and cdr a plist with `:value', `:begin', `:end',
and `:post-blank' as keywords.  Otherwise, return nil.

Assume point is at the beginning of the LaTeX fragment.
(defalias 'org-element-latex-fragment-parser #[0 "\3012\244\212`\302f\303=\2043`Tf\211\304\267\202&\305\306\302\307#\202.\305\310\302\307#\202.\311\312!\205.\313\225\262\202z`Tf\303=\203D\305\314\302\307\315$\202z`Sf\303=?\205z`Tf\316>?\205z\305\317\302\307\315$\205z\313\224\206e`Sf\320>?\205z\321\307\311!)\262\205z`\211\204\205\322\301\302\"\202\213\211b\210\323\302w`\324\325\326\"\327\330\331	\257D\266\204)0\207" [inhibit-changing-match-data no-object nil 36 #s(hash-table size 2 test eql rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (40 22 91 30)) search-forward "\\)" t "\\]" looking-at "\\\\[a-zA-Z]+\\*?\\(\\(\\[[^][\n{}]*\\]\\)\\|\\({[^{}\n]*}\\)\\)*" 0 "$$" 2 (32 9 10 44 46 59) "$" (32 9 10 44 46) "\\(\\s.\\|\\s-\\|\\s(\\|\\s)\\|\\s\"\\|'\\|$\\)" throw " 	" latex-fragment :value buffer-substring-no-properties :begin :end :post-blank] 13 (#$ . 81652)])
#@71 Interpret LATEX-FRAGMENT object as Org syntax.

(fn LATEX-FRAGMENT _)
(defalias 'org-element-latex-fragment-interpreter #[514 "\300\211;\203
\301\302#\207\303A@\"\207" [:value get-text-property 0 plist-get] 8 (#$ . 82839)])
#@242 Parse line break at point, if any.

When at a line break, return a list whose car is `line-break',
and cdr a plist with `:begin', `:end' and `:post-blank' keywords.
Otherwise, return nil.

Assume point is at the beginning of the line break.
(defalias 'org-element-line-break-parser #[0 "\301\302\303!)\262\205!`Sf\304=?\205!\305\306`\307\310\311!\312\313\257D\207" [inhibit-changing-match-data "\\\\\\\\[ 	]*$" t looking-at 92 line-break :begin :end line-beginning-position 2 :post-blank 0] 7 (#$ . 83076)])
#@58 Interpret LINE-BREAK object as Org syntax.

(fn &rest _)
(defalias 'org-element-line-break-interpreter #[128 "\300\207" ["\\\\\n"] 2 (#$ . 83596)])
#@333 Parse link at point, if any.

When at a link, return a list whose car is `link' and cdr a plist
with `:type', `:path', `:format', `:raw-link', `:application',
`:search-option', `:begin', `:end', `:contents-begin',
`:contents-end' and `:post-blank' as keywords.  Otherwise, return
nil.

Assume point is at the beginning of the link.
(defalias 'org-element-link-parser #[0 "\3062\247`\307\211\211\211\211\211\211\211\211\211\211\203=\212n\204\310u\210\311!)\203=\312\262\313\262\314\225\262\315\314!\262\314\224\262\n\314\225\262	\202 \311	!\203\326\316\262\317\224\262\n\317\225\262	\320\225\262\321\322\323\324\325\315\314!#!!\262\326!\204l\327\330\"\203u\331\262\262\202 \327\n\"\203\214\332\314\"\262\333\320\225\"\262\202 \334\307\335\327#)\266\203\203\271\336\307\335\327#)\266\203\203\271\337\262\333\314\310#\262\202 \340!\341U\203\315\342\262\333\314\"\262\202 \343\262\262\202 \311\f!\203\365\313\262\315\320!\262\315\314!\262\320\225\262\315\317!\262\202 \311
!\203\344\262\315\314!\262\320\225\262\345\314\224\317\225\"\262\323\324\346\315\317!#\262\202 \347\306\307\"\210\212b\210\350\307w\262`\262)\327\351\"\203`\332\314\"\262\331\262\327\352\"\203X\332\314\"\262\353\346\307\211	$\262\323\354\355#\262\356;!\205m;\"\211\203y\211@\262\211A\262\210\357\360\361	\362	\363\n\206\214
\364\n\365
\366\367\370\371\372\257D\266\2140\207" [org-target-link-regexp org-link-bracket-re org-link-types-re inhibit-changing-match-data org-link-plain-re org-link-angle-re no-object nil -1 looking-at "radio" plain 1 match-string-no-properties bracket 2 0 org-link-expand-abbrev org-link-unescape replace-regexp-in-string "[ 	]*\n[ 	]*" " " file-name-absolute-p string-match "\\`\\.\\.?/" "file" match-string substring "\\`(" t ")\\'" "coderef" string-to-char 35 "custom-id" "fuzzy" angle buffer-substring-no-properties "" throw " 	" "\\`file\\(?:\\+\\(.+\\)\\)?\\'" "::\\(.*\\)\\'" replace-match "\\`///*\\(.:\\)?/" "\\1/" functionp link :type :path :format :raw-link :application :search-option :begin :end :contents-begin :contents-end :post-blank org-link-translation-function] 35 (#$ . 83751)])
#@106 Interpret LINK object as Org syntax.
CONTENTS is the contents of the object, or nil.

(fn LINK CONTENTS)
(defalias 'org-element-link-interpreter #[514 "\300\211;\203\301\302#\266\202\202\303A@\"\266\202\304\211;\203*\301\302#\266\202\2022\303A@\"\266\202\305\230\203<\211\202\376\306\211;\203M\301\302#\266\202\202U\303A@\"\266\202\203e\307\310\311\312\313#\"\202\216\211\314>\203o\315\202\216\316\235\203y\315\202\216\211\317\267\202\207\320\202\216\321\202\216\211\322\323\"\262\262\307\324\267\202\367\307\325\"\202\373\326P\202\373\327\211;\203\267\301\302#\266\202\202\277\303A@\"\266\202\330\211;\203\321\301\302#\266\202\202\331\303A@\"\266\202\205\342\331P\332\205\354\333P\260\266\202\202\373\202\373\332Q\"\262\207" [:type get-text-property 0 plist-get :path "radio" :format format "[[%%s][%s]]" replace-regexp-in-string "%" "%%" (nil bracket) "[[%s]]" ("coderef" "custom-id" "fuzzy") #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (angle 127 plain 131)) "<%s>" "%s" error "Wrong `:format' value: %s" #s(hash-table size 4 test equal rehash-size 1.5 rehash-threshold 0.8125 purecopy t data ("coderef" 152 "custom-id" 159 "file" 165 "fuzzy" 243)) "(%s)" "#" :application :search-option "+" ":" "::"] 15 (#$ . 85978)])
#@235 Parse macro at point, if any.

When at a macro, return a list whose car is `macro' and cdr
a plist with `:key', `:args', `:begin', `:end', `:value' and
`:post-blank' as keywords.  Otherwise, return nil.

Assume point is at the macro.
(defalias 'org-element-macro-parser #[0 "\212\300\301!\205W`\302\303!\227\302\304!\304\225b\210\305\306w`\302\307!\211\205=\211\310\311\312\313\306\311\203.\314\202/\315\316\311\317\316##\266\202#!\262\262\320\321\322\323\324
\325\326\257\fD\266\206)\207" [looking-at "{{{\\([a-zA-Z][-a-zA-Z0-9_]*\\)\\((\\([^]*?\\))\\)?}}}" match-string-no-properties 1 0 " 	" nil 3 org-macro-extract-arguments replace-regexp-in-string "[ 	
\n]+" " " "\\`\\([ 	]*\n\\)+" "\\`[ 	\n
]+" "" "[ 	\n
]+\\'" macro :key :value :args :begin :end :post-blank] 20 (#$ . 87331)])
#@53 Interpret MACRO object as Org syntax.

(fn MACRO _)
(defalias 'org-element-macro-interpreter #[514 "\300\301\302\211;\203\303\304#\266\202\202\305A@\"\266\202\306\211;\203,\303\304#\266\202\2024\305A@\"\266\202\211\204<\307\202F\211\300\310\311\312\"\"\262\262#\207" [format "{{{%s%s}}}" :key get-text-property 0 plist-get :args "" "(%s)" apply org-macro-escape-arguments] 12 (#$ . 88146)])
#@281 Parse radio target at point, if any.

When at a radio target, return a list whose car is `radio-target'
and cdr a plist with `:begin', `:end', `:contents-begin',
`:contents-end', `:value' and `:post-blank' as keywords.
Otherwise, return nil.

Assume point is at the radio target.
(defalias 'org-element-radio-target-parser #[0 "\212\301!\205.`\302\224\302\225\303\302!\304\225b\210\305\306w`\307\310\311\312\n\313\314\315\257\fD\266\206)\207" [org-radio-target-regexp looking-at 1 match-string-no-properties 0 " 	" nil radio-target :begin :end :contents-begin :contents-end :post-blank :value] 19 (#$ . 88565)])
#@97 Interpret target object as Org syntax.
CONTENTS is the contents of the object.

(fn _ CONTENTS)
(defalias 'org-element-radio-target-interpreter #[514 "\300\301Q\207" ["<<<" ">>>"] 5 (#$ . 89195)])
#@281 Parse statistics cookie at point, if any.

When at a statistics cookie, return a list whose car is
`statistics-cookie', and cdr a plist with `:begin', `:end',
`:value' and `:post-blank' keywords.  Otherwise, return nil.

Assume point is at the beginning of the statistics-cookie.
(defalias 'org-element-statistics-cookie-parser #[0 "\212\300\301!\205&`\302\303\224\303\225\"\303\225b\210\304\305w`\306\307\310\311\312	\257D\266\204)\207" [looking-at "\\[[0-9]*\\(%\\|/[0-9]*\\)\\]" buffer-substring-no-properties 0 " 	" nil statistics-cookie :begin :end :value :post-blank] 13 (#$ . 89400)])
#@77 Interpret STATISTICS-COOKIE object as Org syntax.

(fn STATISTICS-COOKIE _)
(defalias 'org-element-statistics-cookie-interpreter #[514 "\300\211;\203
\301\302#\207\303A@\"\207" [:value get-text-property 0 plist-get] 8 (#$ . 90005)])
#@304 Parse strike-through object at point, if any.

When at a strike-through object, return a list whose car is
`strike-through' and cdr is a plist with `:begin', `:end',
`:contents-begin' and `:contents-end' and `:post-blank' keywords.
Otherwise, return nil.

Assume point is at the first plus sign marker.
(defalias 'org-element-strike-through-parser #[0 "\212n\204\301u\210\302!\2050\303\224\304\224\304\225\303\225b\210\305\306w`\307\310\311\312	\313\n\314\257\nD\266\205)\207" [org-emph-re -1 looking-at 2 4 " 	" nil strike-through :begin :end :contents-begin :contents-end :post-blank] 16 (#$ . 90251)])
#@105 Interpret strike-through object as Org syntax.
CONTENTS is the contents of the object.

(fn _ CONTENTS)
(defalias 'org-element-strike-through-interpreter #[514 "\300\301\"\207" [format "+%s+"] 5 (#$ . 90874)])
#@287 Parse subscript at point, if any.

When at a subscript object, return a list whose car is
`subscript' and cdr a plist with `:begin', `:end',
`:contents-begin', `:contents-end', `:use-brackets-p' and
`:post-blank' as keywords.  Otherwise, return nil.

Assume point is at the underscore.
(defalias 'org-element-subscript-parser #[0 "\212n\204\301u\210\302!\205?\303\224\304\224\303\224\206\305\224\303\225\206 \305\225\306\225b\210\307\310w`\311\312\313\314\315\316\f\317
\257\fD\266\206)\207" [org-match-substring-regexp -1 looking-at 4 2 3 0 " 	" nil subscript :begin :end :use-brackets-p :contents-begin :contents-end :post-blank] 19 (#$ . 91092)])
#@108 Interpret SUBSCRIPT object as Org syntax.
CONTENTS is the contents of the object.

(fn SUBSCRIPT CONTENTS)
(defalias 'org-element-subscript-interpreter #[514 "\300\301\211;\203\302\303#\266\202\202\304A@\"\266\202\203!\305\202\"\306\"\207" [format :use-brackets-p get-text-property 0 plist-get "_{%s}" "_%s"] 9 (#$ . 91765)])
#@288 Parse superscript at point, if any.

When at a superscript object, return a list whose car is
`superscript' and cdr a plist with `:begin', `:end',
`:contents-begin', `:contents-end', `:use-brackets-p' and
`:post-blank' as keywords.  Otherwise, return nil.

Assume point is at the caret.
(defalias 'org-element-superscript-parser #[0 "\212n\204\301u\210\302!\205?\303\224\304\224\303\224\206\305\224\303\225\206 \305\225\306\225b\210\307\310w`\311\312\313\314\315\316\f\317
\257\fD\266\206)\207" [org-match-substring-regexp -1 looking-at 4 2 3 0 " 	" nil superscript :begin :end :use-brackets-p :contents-begin :contents-end :post-blank] 19 (#$ . 92110)])
#@112 Interpret SUPERSCRIPT object as Org syntax.
CONTENTS is the contents of the object.

(fn SUPERSCRIPT CONTENTS)
(defalias 'org-element-superscript-interpreter #[514 "\300\301\211;\203\302\303#\266\202\202\304A@\"\266\202\203!\305\202\"\306\"\207" [format :use-brackets-p get-text-property 0 plist-get "^{%s}" "^%s"] 9 (#$ . 92788)])
#@179 Parse table cell at point.
Return a list whose car is `table-cell' and cdr is a plist
containing `:begin', `:end', `:contents-begin', `:contents-end'
and `:post-blank' keywords.
(defalias 'org-element-table-cell-parser #[0 "\300\301!\210\302\224\302\225\303\224\303\225\304\305\306\307\310\311\302\257\nD\207" [looking-at "[ 	]*\\(.*?\\)[ 	]*\\(?:|\\|$\\)" 0 1 table-cell :begin :end :contents-begin :contents-end :post-blank] 15 (#$ . 93139)])
#@108 Interpret table-cell element as Org syntax.
CONTENTS is the contents of the cell, or nil.

(fn _ CONTENTS)
(defalias 'org-element-table-cell-interpreter #[514 "\300\301Q\207" [" " " |"] 5 (#$ . 93598)])
#@222 Parse target at point, if any.

When at a target, return a list whose car is `target' and cdr
a plist with `:begin', `:end', `:value' and `:post-blank' as
keywords.  Otherwise, return nil.

Assume point is at the target.
(defalias 'org-element-target-parser #[0 "\212\301!\205#`\302\303!\304\225b\210\305\306w`\307\310\311\312\313	\257D\266\204)\207" [org-target-regexp looking-at match-string-no-properties 1 0 " 	" nil target :begin :end :value :post-blank] 13 (#$ . 93809)])
#@55 Interpret TARGET object as Org syntax.

(fn TARGET _)
(defalias 'org-element-target-interpreter #[514 "\300\301\302\211;\203\303\304#\266\202\202\305A@\"\266\202\"\207" [format "<<%s>>" :value get-text-property 0 plist-get] 10 (#$ . 94301)])
#@44 Regexp matching any timestamp type object.
(defconst org-element--timestamp-regexp (concat org-ts-regexp-both "\\|\\(?:<[0-9]+-[0-9]+-[0-9]+[^>\n]+?\\+[0-9]+[dwmy]>\\)\\|\\(?:<%%\\(?:([^>\n]+)\\)>\\)") (#$ . 94558))
#@514 Parse time stamp at point, if any.

When at a time stamp, return a list whose car is `timestamp', and
cdr a plist with `:type', `:raw-value', `:year-start',
`:month-start', `:day-start', `:hour-start', `:minute-start',
`:year-end', `:month-end', `:day-end', `:hour-end',
`:minute-end', `:repeater-type', `:repeater-value',
`:repeater-unit', `:warning-type', `:warning-value',
`:warning-unit', `:begin', `:end' and `:post-blank' keywords.
Otherwise, return nil.

Assume point is at the beginning of the timestamp.
(defalias 'org-element-timestamp-parser #[0 "\302\303!)\262\205\276\212`\304f\305=\303\306!\210\307\310!\307\311!\312\313!\314\224\310\225b\210\315\304w`?\205E\316\317\"\205E\320\312\314\"!\320\312\313\"!B\203M\321\202t\203^\204Z\211\203^\322\202t\203g\323\202t\204o\211\203s\324\202t\325?\205\303\316\326	\"\205\303\327\312\311\n\"\211\330\267\202\225\331\202\226\332\202\226\333\262\334\320\312\314
\"!\335\336\312\313\"!\211\337\267\202\276\340\202\277\341\202\277\342\202\277\343\202\277\344\262\257?\205	\316\345\n\"\205	\346\312\311\"\203\335\347\202\336\350\351\320\312\314\"!\352\336\312\313\"!\211\353\267\202\340\202\341\202\342\202\343\202\344\262\257\304\211\211\211\211\211\211\211\211\211\2047\354\302\"\3558\262\3568\262\n\3138\262	\3148\262\211A@\262\210\204\204\205F\354\302\"\3558\206N\n\262\3568\206X	\262\3138\206b\262\3148\206r@\206r\262\211A@\206\202A\206\202\266\202\357\360\361\362\363\364\365\366\367\370\371\372\373\374/\375*\376-\257
\244\f\244D\266\226)\207" [org-element--timestamp-regexp inhibit-changing-match-data t looking-at nil 60 "\\([<[]\\(%%\\)?.*?\\)[]>]\\(?:--\\([<[].*?[]>]\\)\\)?" match-string-no-properties 0 1 match-string 3 2 " 	" string-match "[012]?[0-9]:[0-5][0-9]\\(-\\([012]?[0-9]\\):\\([0-5][0-9]\\)\\)" string-to-number diary active-range active inactive-range inactive "\\([.+]?\\+\\)\\([0-9]+\\)\\([hdwmy]\\)" :repeater-type #s(hash-table size 2 test equal rehash-size 1.5 rehash-threshold 0.8125 purecopy t data ("++" 141 ".+" 145)) catch-up restart cumulate :repeater-value :repeater-unit string-to-char #s(hash-table size 4 test eql rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (104 174 100 178 119 182 109 186)) hour day week month year "\\(-\\)?-\\([0-9]+\\)\\([hdwmy]\\)" :warning-type first all :warning-value :warning-unit #s(hash-table size 4 test eql rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (104 244 100 248 119 252 109 256)) org-parse-time-string 5 4 timestamp :type :raw-value :year-start :month-start :day-start :hour-start :minute-start :year-end :month-end :day-end :hour-end :minute-end :begin :end :post-blank] 53 (#$ . 94781)])
#@61 Interpret TIMESTAMP object as Org syntax.

(fn TIMESTAMP _)
(defalias 'org-element-timestamp-interpreter #[514 "\300\211;\203\301\302#\266\202\202\303A@\"\266\202\211\304\267\202+\305\202,\306\202,\307\202,\310\262\311\211;\203?\301\302#\266\202\202G\303A@\"\266\202\211\205N\312!\262\313\211;\203a\301\302#\266\202\202i\303A@\"\266\202\211\314\267\202\203\315\202\204\316\202\204\317\202\204\320\202\204\321\202\204\310\262Q\322\211;\203\230\301\302#\266\202\202\240\303A@\"\266\202\211\323\267\202\256\324\202\257\325\202\257\310\262\326\211;\203\302\301\302#\266\202\202\312\303A@\"\266\202\211\205\321\312!\262\327\211;\203\344\301\302#\266\202\202\354\303A@\"\266\202\211\330\267\202\315\202\316\202\317\202\320\202\321\202\310\262Q\331\332\333\334\335\"\336\"\337\340%\341\211;\203*\301\302#\266\202\2022\303A@\"\266\202\211\342\267\202y\343\211;\203J\301\302#\266\202\202R\303A@\"\266\202\344\211;\203d\301\302#\266\202\202l\303A@\"\266\202\345\211;\203~\301\302#\266\202\202\206\303A@\"\266\202\346	\211;\203\230\301\302#\266\202\202\240\303A@\"\266\202\205\273\211\205\273\205\273\205\273U?\206\273U?\347\302\206\305\302\206\313\302\350\211;\203\335\301\302#\266\202\202\345\303A@\"\266\202\351\211;\203\367\301\302#\266\202\202\377\303A@\"\266\202\352\211;\203\301\302#\266\202\202\303A@\"\266\202&\353=\205%\205*\2050%\266\205\202\223\343\211;\203H\301\302#\266\202\202P\303A@\"\266\202\344\211;\203b\301\302#\266\202\202j\303A@\"\266\202\345\211;\203|\301\302#\266\202\202\204\303A@\"\266\202\346	\211;\203\226\301\302#\266\202\202\236\303A@\"\266\202\347\302\206\247\302\206\254\302\350\211;\203\276\301\302#\266\202\202\306\303A@\"\266\202\351\211;\203\330\301\302#\266\202\202\340\303A@\"\266\202\352\211;\203\362\301\302#\266\202\202\372\303A@\"\266\202&\354=\205#\324\347\302\206\302\206\302\355\211;\203*\301\302#\266\202\2022\303A@\"\266\202\356\211;\203D\301\302#\266\202\202L\303A@\"\266\202\357\211;\203^\301\302#\266\202\202f\303A@\"\266\202&\354=\205r#Q\266\204\202\223\360\211;\203\213\301\302#\266\202\202\223\303A@\"\266\202\207" [:repeater-type get-text-property 0 plist-get #s(hash-table size 3 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (cumulate 31 catch-up 35 restart 39)) "+" "++" ".+" nil :repeater-value number-to-string :repeater-unit #s(hash-table size 5 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (hour 111 day 115 week 119 month 123 year 127)) "h" "d" "w" "m" "y" :warning-type #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (first 166 all 170)) "--" "-" :warning-value :warning-unit #s(hash-table size 5 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (hour 242 day 246 week 250 month 254 year 258)) make-byte-code 1282 "\303\203	\304\202\n\305\n!\"\203(\203(\306\307\"\210\310\311\312#\313\211$\262\2046\311\314\315\316\317#\"\262\300\301D\211\203[\211@\320!\203T\315\321\317#\322\315\317\"R\262A\266\202\2029\210\211\207" vconcat vector [org-time-stamp-formats format-time-string cdr car string-match "[012]?[0-9]:[0-5][0-9]" replace-match format "\\&-%02d:%02d" nil "[%s]" substring 1 -1 org-string-nw-p 0 " "] 14 "\n\n(fn TIME ACTIVEP &optional WITH-TIME-P HOUR-END MINUTE-END)" :type #s(hash-table size 4 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (inactive 312 active 312 inactive-range 566 active-range 566)) :minute-start :minute-end :hour-start :hour-end encode-time :day-start :month-start :year-start active active-range :day-end :month-end :year-end :raw-value] 25 (#$ . 97579)])
#@291 Parse underline object at point, if any.

When at an underline object, return a list whose car is
`underline' and cdr is a plist with `:begin', `:end',
`:contents-begin' and `:contents-end' and `:post-blank' keywords.
Otherwise, return nil.

Assume point is at the first underscore marker.
(defalias 'org-element-underline-parser #[0 "\212n\204\301u\210\302!\2050\303\224\304\224\304\225\303\225b\210\305\306w`\307\310\311\312	\313\n\314\257\nD\266\205)\207" [org-emph-re -1 looking-at 2 4 " 	" nil underline :begin :end :contents-begin :contents-end :post-blank] 16 (#$ . 101465)])
#@100 Interpret underline object as Org syntax.
CONTENTS is the contents of the object.

(fn _ CONTENTS)
(defalias 'org-element-underline-interpreter #[514 "\300\301\"\207" [format "_%s_"] 5 (#$ . 102066)])
#@259 Parse verbatim object at point, if any.

When at a verbatim object, return a list whose car is `verbatim'
and cdr is a plist with `:value', `:begin', `:end' and
`:post-blank' keywords.  Otherwise, return nil.

Assume point is at the first equal sign marker.
(defalias 'org-element-verbatim-parser #[0 "\212n\204\301u\210\302!\205,\303\224\304\305!\303\225b\210\306\307w`\310\311\312\313\314	\257D\266\204)\207" [org-verbatim-re -1 looking-at 2 match-string-no-properties 4 " 	" nil verbatim :value :begin :end :post-blank] 13 (#$ . 102275)])
#@59 Interpret VERBATIM object as Org syntax.

(fn VERBATIM _)
(defalias 'org-element-verbatim-interpreter #[514 "\300\301\302\211;\203\303\304#\266\202\202\305A@\"\266\202\"\207" [format "=%s=" :value get-text-property 0 plist-get] 10 (#$ . 102834)])
#@908 Parse the element starting at point.

Return value is a list like (TYPE PROPS) where TYPE is the type
of the element and PROPS a plist of properties associated to the
element.

Possible types are defined in `org-element-all-elements'.

LIMIT bounds the search.

Optional argument GRANULARITY determines the depth of the
recursion.  Allowed values are `headline', `greater-element',
`element', `object' or nil.  When it is broader than `object' (or
nil), secondary values will not be parsed, since they only
contain objects.

Optional argument MODE, when non-nil, can be either
`first-section', `item', `node-property', `planning',
`property-drawer', `section', `table-row', or `top-comment'.


If STRUCTURE isn't provided but MODE is set to `item', it will be
computed.

This function assumes point is always at the beginning of the
element it has to parse.

(fn LIMIT &optional GRANULARITY MODE STRUCTURE)
(defalias 'org-element--current-element #[1025 "\212\306\205\n\307=?\310\267\202)\311#\202J\312!\202J\313!\202J\306\314 \211\315\nP\316 ,\203B\317\"\202J\320\267\202h\321!\202J\321\212\306\314 \211\315\nP\322 -\206d!\202J\323\324!\203u\325!\202J\326=\203\221\327\330!f\331=\203\221\323
!\203\221\332!\202J\333\267\202\255\327\330!f\331=\202\256\212\334\330!\210\323\335!)?\202\256\336\203\277\323@!\203\277\337!\202Jn\204\314\340`C\"\202J\323A!\203\332\341!\202J\323\342!\203\350\343\"\202J\344\345>\"\211A\203`Y\203\211@b\210\346\336\"\202H\323B!\203\347\"\202H\323C!\203&\350\"\202H\323\351!\2034\352\"\202H\323\353!\203\265\330\225b\210\323\354!\203w\334 \210\355\356!\226\211\357\267\202m\360\202n\361\202n\362\202n\363\202n\364\202n\365\202n\366\202n\367\262\"\202H\323\370!\203\210\334 \210\371\"\202H\323\372!\203\231\334 \210\373\"\202H\323\374!\203\252\334 \210\346\"\202H\334 \210\340\"\202H\323D!\203\304\375\"\202H\323\376!\203\322\377\"\202H\323\201E!\203\344\201F\"\202H\323\201G!\204\201H\327\201I!\323!\205\212\336y\210\201J\201K\n\306#\210\327 V\205\201L!)\266\202\203%\201M\"\202H\323\201N !\203C\201O\206?\201P\n!#\202H\340\"\262)\266\202)\207" [case-fold-search org-called-with-limited-levels org-outline-regexp outline-regexp org-outline-regexp-bol org-planning-line-re t object #s(hash-table size 3 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (item 18 table-row 27 node-property 34)) org-element-item-parser org-element-table-row-parser org-element-node-property-parser org-get-limited-outline-regexp "^" org-at-heading-p org-element-headline-parser #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (section 72 first-section 79)) org-element-section-parser outline-next-heading looking-at "^[ 	]*#\\(?: \\|$\\)" org-element-comment-parser planning line-beginning-position 0 42 org-element-planning-parser #s(hash-table size 3 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (planning 151 top-comment 160 property-drawer 160)) beginning-of-line "[[:blank:]]*$" nil org-element-property-drawer-parser org-element-paragraph-parser org-element-clock-parser "^\\*+ " org-element-inlinetask-parser org-element--collect-affiliated-keywords (nil object) org-element-keyword-parser org-element-latex-environment-parser org-element-drawer-parser "[ 	]*:\\( \\|$\\)" org-element-fixed-width-parser "[ 	]*#\\+" "BEGIN_\\(\\S-+\\)" match-string 1 #s(hash-table size 7 test equal rehash-size 1.5 rehash-threshold 0.8125 purecopy t data ("CENTER" 337 "COMMENT" 341 "EXAMPLE" 345 "EXPORT" 349 "QUOTE" 353 "SRC" 357 "VERSE" 361)) org-element-center-block-parser org-element-comment-block-parser org-element-example-block-parser org-element-export-block-parser org-element-quote-block-parser org-element-src-block-parser org-element-verse-block-parser org-element-special-block-parser "CALL:" org-element-babel-call-parser "BEGIN:? " org-element-dynamic-block-parser "\\S-+:" org-element-footnote-definition-parser "[ 	]*-\\{5,\\}[ 	]*$" org-element-horizontal-rule-parser org-property-drawer-re org-clock-line-re org-element--latex-begin-environment org-drawer-regexp org-footnote-definition-re "%%(" org-element-diary-sexp-parser "[ 	]*|" "[ 	]*\\+\\(-+\\+\\)+[ 	]*$" 2 re-search-forward "^[ 	]*\\($\\|[^|]\\)" org-match-line org-element-table-parser org-item-re org-element-plain-list-parser org-element--list-struct] 14 (#$ . 103097)])
#@518 Collect affiliated keywords from point down to LIMIT.

Return a list whose CAR is the position at the first of them and
CDR a plist of keywords and values and move point to the
beginning of the first line after them.

As a special case, if element doesn't start at the beginning of
the line (e.g., a paragraph starting an item), CAR is current
position of point and CDR is nil.

When PARSE is non-nil, values from keywords belonging to
`org-element-parsed-keywords' are parsed as secondary strings.

(fn LIMIT PARSE)
(defalias 'org-element--collect-affiliated-keywords #[514 "n\204`C\207\306`\2057\307\2119\203\211\2022\211\211:\204(\211;\2050\310\262\2022\211@9\2050\211@\262\236A\262\311`W\203\312\n!\203\313\314!\226\315\"A\206T\211\211\f\235\316\225\212\311\210\317\311x\210`)\203\202\320 \321\316\322\323\324!\325\"\326$\216\327\311$)\262\202\233\330\"\311\331\203\220\332\202\221\333\334\331\335\334##\266\202\266\202
\235\211\205\323\336\337!\211\203\314\203\314\320 \321\316\322\323\324!\340\"\326$\216\327\337\224\337\225\311\f$)\262\202\321\211\205\321\211\262\205\336\341\342\227P!\203\357\204\352\205\355B\262(\235\204\376\343\344\"\203\345	\"B\262\346#\262\311y\266\202:\312\347!\203#b\210\311\262)B\207" [org-element-object-restrictions case-fold-search org-element--affiliated-re org-element-keyword-translation-alist org-element-parsed-keywords org-element-dual-keywords t keyword plain-text nil looking-at match-string 1 assoc 0 " 	" match-data make-byte-code "\301\300\302\"\207" vconcat vector [set-match-data evaporate] 3 org-element--parse-objects buffer-substring-no-properties replace-regexp-in-string "\\`\\([ 	]*\n\\)+" "\\`[ 	\n
]+" "" "[ 	\n
]+\\'" match-string-no-properties 2 [set-match-data evaporate] intern ":" string-match "^ATTR_" plist-get plist-put "[ 	]*$" org-element-multiple-keywords] 20 (#$ . 107623)])
#@1876 Recursively parse the buffer and return structure.
If narrowing is in effect, only parse the visible part of the
buffer.

Optional argument GRANULARITY determines the depth of the
recursion.  It can be set to the following symbols:

`headline'          Only parse headlines.
`greater-element'   Don't recurse into greater elements except
		    headlines and sections.  Thus, elements
		    parsed are the top-level ones.
`element'           Parse everything but objects and plain text.
`object'            Parse the complete buffer (default).

When VISIBLE-ONLY is non-nil, don't parse contents of hidden
elements.

An element or object is represented as a list with the
pattern (TYPE PROPERTIES CONTENTS), where :

  TYPE is a symbol describing the element or object.  See
  `org-element-all-elements' and `org-element-all-objects' for an
  exhaustive list of such symbols.  One can retrieve it with
  `org-element-type' function.

  PROPERTIES is the list of attributes attached to the element or
  object, as a plist.  Although most of them are specific to the
  element or object type, all types share `:begin', `:end',
  `:post-blank' and `:parent' properties, which respectively
  refer to buffer position where the element or object starts,
  ends, the number of white spaces or blank lines after it, and
  the element or object containing it.  Properties values can be
  obtained by using `org-element-property' function.

  CONTENTS is a list of elements, objects or raw strings
  contained in the current element or object, when applicable.
  One can access them with `org-element-contents' function.

The Org buffer has `org-data' as type and nil as properties.
`org-element-map' function can be used to find specific elements
or objects within the parse tree.

This function assumes that current major mode is `org-mode'.

(fn &optional GRANULARITY VISIBLE-ONLY)
(defalias 'org-element-parse-buffer #[512 "\212eb\210\300 \210\301\302 d\303\304\305\304D&)\207" [org-skip-whitespace org-element--parse-elements point-at-bol first-section nil org-data] 11 (#$ . 109566)])
#@396 Recursively parse objects in STRING and return structure.

RESTRICTION is a symbol limiting the object types that will be
looked after.

Optional argument PARENT, when non-nil, is the element or object
containing the secondary string.  It is used to set correctly
`:parent' property within the string.

If STRING is the empty string or nil, return nil.

(fn STRING RESTRICTION &optional PARENT)
(defalias 'org-element-parse-secondary-string #[770 "\204\301\207\302\232\203\301\207\303 \304\305!r\211q\210\306\307\310\311\312!\313\"\314$\216\211\203X\211@\3151L\2119\2039\316!\202H\211@\317>?\205H\320@!AL0\202P\210\202Q\210A\266\202\202$\210\321c\210)\322\301!\210\323ed\301%*\262\207" [inhibit-read-only nil "" buffer-local-variables generate-new-buffer " *temp*" make-byte-code 0 "\301\300!\205	\302\300!\207" vconcat vector [buffer-name kill-buffer] 2 (error) makunbound (buffer-file-name buffer-file-truename) make-local-variable t restore-buffer-modified-p org-element--parse-objects] 11 (#$ . 111659)])
#@2362 Map a function on selected elements or objects.

DATA is a parse tree, an element, an object, a string, or a list
of such constructs.  TYPES is a symbol or list of symbols of
elements or objects types (see `org-element-all-elements' and
`org-element-all-objects' for a complete list of types).  FUN is
the function called on the matching element or object.  It has to
accept one argument: the element or object itself.

When optional argument INFO is non-nil, it should be a plist
holding export options.  In that case, parts of the parse tree
not exportable according to that property list will be skipped.

When optional argument FIRST-MATCH is non-nil, stop at the first
match for which FUN doesn't return nil, and return that value.

Optional argument NO-RECURSION is a symbol or a list of symbols
representing elements or objects types.  `org-element-map' won't
enter any recursive element or object whose type belongs to that
list.  Though, FUN can still be applied on them.

When optional argument WITH-AFFILIATED is non-nil, FUN will also
apply to matching objects within parsed affiliated keywords (see
`org-element-parsed-keywords').

Nil values returned from FUN do not appear in the results.


Examples:
---------

Assuming TREE is a variable containing an Org buffer parse tree,
the following example will return a flat list of all `src-block'
and `example-block' elements in it:

  (org-element-map tree \='(example-block src-block) #\='identity)

The following snippet will find the first headline with a level
of 1 and a "phone" tag, and will return its beginning position:

  (org-element-map tree \='headline
   (lambda (hl)
     (and (= (org-element-property :level hl) 1)
          (member "phone" (org-element-property :tags hl))
          (org-element-property :begin hl)))
   nil t)

The next example will return a flat list of all `plain-list' type
elements in TREE that are not a sub-list themselves:

  (org-element-map tree \='plain-list #\='identity nil nil \='plain-list)

Eventually, this example will return a flat list of all `bold'
type objects containing a `latex-snippet' type object, even
looking into captions:

  (org-element-map tree \='bold
   (lambda (b)
     (and (org-element-map b \='latex-snippet #\='identity nil t) b))
   nil nil nil t)

(fn DATA TYPES FUN &optional INFO FIRST-MATCH NO-RECURSION WITH-AFFILIATED)
(defalias 'org-element-map #[1795 "<\203	\202C<\203\202C\3022O\303\304B\211\203I\211@\211>\2033\305\302\306\"\210\202B\211	>\204B\307=\204B\307\262A\266\202\202\262\266\2020\310C\310C\211\311\312\313\314\315&	\316\"\317\320%\240\210\3212\202\211\242\f!\210\242\2370\262\207" [org-element-all-objects org-element-greater-elements :--found greater-elements plain-text throw objects elements nil make-byte-code 257 "\211\211:\204\211;\205\311\262\202\211@9\205\211@\262?\206\251\301\203-\312\301\313\">\206\251\211\2049\314\310\242\"\202\251\211\315=\203]\314\310\242\211:\204N\316\262\202Y\211@9\203Y\211AA\262\"\202\251\211\304>\203~\300!\211\203}\302\203v\317\320\"\210\202}\307\307\242B\240\210\210\306\321=\203\271;\204\271\211\236A\211\203\270\211@\310\242\211;\203\247\322\323#\266\202\202\257\312A@\"\266\202!\210A\266\202\202\216\210\303\203Q\306\321=\203Q\324!\325=\203Q\211\203P\211@\211@A\211;\203\347\322\323#\266\202\202\357\312A@\"\266\202\211\203G\235\2030\235\203!\326!\211\203\211@\310\242A!\210\310\242@!\210A\266\202\202\210\202G\310\242A!\210\310\242@!\210\202G\235\203B\314\310\242\326!\"\210\202G\310\242!\210\266A\266\202\202\315\210\211\305>\206\251\211:\204c\316\262\202n\211@9\203n\211AA\262?\206\251\306\327=\203\200\211>?\206\251\306\330=\203\216\324!\331=\206\251\314\310\242\211:\204\235\316\262\202\250\211@9\203\250\211AA\262\"\207" vconcat vector [plain-text plist-get :ignore-list mapc org-data nil throw :--map-first-match objects get-text-property 0 #[513 "\211:\204\211;\205\303\262\202\211@9\205\211@\262\2068\304\211;\2030\305\306#\266\202\2028\307A@\"\266\202>\203B\310\202\244	>\203L\311\202\244\312\267\202Z\311\202\244\310\202\244\204b\310\202\244\211\204j\311\202\244\211\211:\204{\211;\205\203\303\262\202\205\211@9\205\203\211@\262\211\204\215\310\202\242\211\n>\203\227\310\202\242\313!\203\241\310\202\242\311\262\207" [org-element-all-objects org-element-all-elements org-element-object-containers plain-text :parent get-text-property 0 plist-get object element #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (org-data 82 plain-text 86)) org-element-secondary-p] 9 "Return class for ELEMENT, as a symbol.\nClass is either `element' or `object'.  Optional argument PARENT\nis the element or object containing DATUM.  It defaults to the\nvalue of DATUM `:parent' property.\n\n(fn DATUM &optional PARENT)"] element reverse greater-elements elements object org-element-secondary-value-alist org-element--parsed-properties-alist org-element-dual-keywords org-element-multiple-keywords org-element-greater-elements] 11 "\n\n(fn --DATA)" :--map-first-match] 27 (#$ . 112704)])
(put 'org-element-map 'lisp-indent-function 2)
#@448 Return next mode according to current one.

MODE is a symbol representing the expectation about the next
element or object.  Meaningful values are `first-section',
`item', `node-property', `planning', `property-drawer',
`section', `table-row', `top-comment', and nil.

TYPE is the type of the current element or object.

If PARENT? is non-nil, assume the next element or object will be
located inside the current one.  

(fn MODE TYPE PARENT\=\?)
(defalias 'org-element--next-mode #[771 "\211\2036\300=\203\f\301\207\302=\203$\303\267\202\"\304\207\305\207\306\207\307\207\310\207\311\207\312\267\2024\305\207\306\207\307\207\305\207\310\207\311\207\313\267\202J\306\207\307\207\305=\205Y\314\207\310\207\304=\203V\315=\204X\311\207\314\207" [headline section first-section #s(hash-table size 5 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (section 24 inlinetask 26 plain-list 28 property-drawer 30 table 32)) top-comment planning item node-property table-row nil #s(hash-table size 5 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (inlinetask 42 plain-list 44 property-drawer 46 section 48 table 50)) #s(hash-table size 4 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (item 60 node-property 62 planning 64 table-row 72)) property-drawer comment] 5 (#$ . 117991)])
(put 'org-element--next-mode 'byte-optimizer 'byte-compile-inline-expand)
#@583 Parse elements between BEG and END positions.

MODE prioritizes some elements over the others.  It can be set to
`first-section', `item', `node-property', `planning',
`property-drawer', `section', `table-row', `top-comment', or nil.

When value is `item', STRUCTURE will be used as the current list
structure.

GRANULARITY determines the depth of the recursion.  See
`org-element-parse-buffer' for more information.

When VISIBLE-ONLY is non-nil, don't parse contents of hidden
elements.

Elements are accumulated into ACC.

(fn BEG END MODE STRUCTURE GRANULARITY VISIBLE-ONLY ACC)
(defalias 'org-element--parse-elements #[1799 "\212b\210\306=\203\307 \204\310\311 \211\312	P\313 \210,\314`W\203\220\203D\315\314\310\"\203D\316 b\210l\203 m\204 \314u\210\202 \317$\211\211:\204^\211;\205f\320\262\202h\211@9\205f\211@\262\321\211;\203y\322\323#\266\202\202\201\324A@\"\266\202\325\211;\203\222\322\323#\266\202\202\232\324A@\"\266\202b\210\211\203]\f>\203\326>\204\300\327=\203\272\330=\204\300\306=\203\331\332\211;\203\323\322\323#\266\202\202\333\324A@\"\266\202\333\f\310#\334>\205\335\211;\203\372\322\323#\266\202\202\324A@\"\266\202	&\210\202]\336>\203]\337\332\211;\203(\322\323#\266\202\2020\324A@\"\266\202\2119\203;\211\202V\211\211:\204L\211;\205T\320\262\202V\211@9\205T\211@\262
\236A\262$\210\340;\203q\341\314$\266\203\202A\342A@#\240\210\266\203B\262\333	\314#\262	\266\202 \343\344\237#\262)\207" [org-called-with-limited-levels org-outline-regexp outline-regexp org-outline-regexp-bol org-element-greater-elements org-element-object-restrictions headline org-at-heading-p t org-get-limited-outline-regexp "^" outline-next-heading nil org-invisible-p org-find-visible org-element--current-element plain-text :contents-begin get-text-property 0 plist-get :end (element object nil) greater-element section org-element--parse-elements :contents-end #[771 "\211\2036\300=\203\f\301\207\302=\203$\303\267\202\"\304\207\305\207\306\207\307\207\310\207\311\207\312\267\2024\305\207\306\207\307\207\305\207\310\207\311\207\313\267\202J\306\207\307\207\305=\205Y\314\207\310\207\304=\203V\315=\204X\311\207\314\207" [headline section first-section #s(hash-table size 5 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (section 24 inlinetask 26 plain-list 28 property-drawer 30 table 32)) top-comment planning item node-property table-row nil #s(hash-table size 5 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (inlinetask 42 plain-list 44 property-drawer 46 section 48 table 50)) #s(hash-table size 4 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (item 60 node-property 62 planning 64 table-row 72)) property-drawer comment] 5 "Return next mode according to current one.\n\nMODE is a symbol representing the expectation about the next\nelement or object.  Meaningful values are `first-section',\n`item', `node-property', `planning', `property-drawer',\n`section', `table-row', `top-comment', and nil.\n\nTYPE is the type of the current element or object.\n\nIf PARENT? is non-nil, assume the next element or object will be\nlocated inside the current one.  \n\n(fn MODE TYPE PARENT\\=\\?)"] (item plain-list) :structure (object nil) org-element--parse-objects :parent org-add-props plist-put apply org-element-set-contents] 22 (#$ . 119408)])
#@244 Return next object in current buffer or nil.
RESTRICTION is a list of object types, as symbols, that should be
looked after.  This function assumes that the buffer is narrowed
to an appropriate container (e.g., a paragraph).

(fn RESTRICTION)
(defalias 'org-element--object-lex #[257 "\302>\203	\303 \207`\212\204\304\202P\305>\204\304\202Pn\204$\306u\210\307\304\310#\2040\304\202P\211\311 TU\203M\211\312\225U\203M\307\304\310#\205P\312\224T\202P\312\224T)\304\212\211\204\363\307	\313#\203\363\314\224b\210\315\314!\316\317\310#\203y\320>\205\346\321 \202\346\316\322\310#\203\214\323>\205\346\324 \202\346\304f\211\325\267\202\333\326>\205\344\327 \202\344\330>\203\254\331 \206\344\332>\205\344\333 \202\344\334>\205\344\335 \202\344\336>\205\344\337 \202\344\340>\205\344\341 \202\344\342>\205\344\343 \202\344\344>\205\344\345 \202\344\346>\205\344\347 \202\344\350>\205\344\351 \202\344\352>\205\344\353 \202\344\312H\354=\2038\355>\203,\356 \206\344\357>\205\344\360 \202\344\361>\203D\362 \206\344\305>\205\344\363 \202\344\312H\364=\203d\365>\205\344\366 \202\344\367>\203p\370 \206\344\352>\205\344\353 \202\344\312H\371\372\267\202\275\305>\203\222\363 \202\326\361>\203\236\362 \206\326\373>\205\326\374 \202\326\375>\203\266\376 \202\326\211!\202\326\377\201@\"\203\315\373>\204\324\211!\202\326\374 \266\202\202\344\305>\205\344\363 \262\262m\204\357\304u\210\210\202S\211\206\203\306u\210\363 \202\304)\207" [org-target-link-regexp org-element--object-regexp table-cell org-element-table-cell-parser nil link -1 re-search-forward t line-beginning-position 1 move 0 match-string string-prefix-p "call_" inline-babel-call org-element-inline-babel-call-parser "src_" inline-src-block org-element-inline-src-block-parser #s(hash-table size 13 test eql rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (94 148 95 160 42 184 47 196 126 208 61 220 43 232 64 244 123 256 36 268 60 280 92 336 91 380)) superscript org-element-superscript-parser subscript org-element-subscript-parser underline org-element-underline-parser bold org-element-bold-parser italic org-element-italic-parser code org-element-code-parser verbatim org-element-verbatim-parser strike-through org-element-strike-through-parser export-snippet org-element-export-snippet-parser macro org-element-macro-parser latex-fragment org-element-latex-fragment-parser 60 radio-target org-element-radio-target-parser target org-element-target-parser timestamp org-element-timestamp-parser org-element-link-parser 92 line-break org-element-line-break-parser entity org-element-entity-parser #[257 "\300>\203\301 \206\302>\205\303 \207" [timestamp org-element-timestamp-parser statistics-cookie org-element-statistics-cookie-parser] 3 "\n\n(fn RESTRICTION)"] #s(hash-table size 2 test eql rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (91 390 102 426)) statistics-cookie org-element-statistics-cookie-parser footnote-reference org-element-footnote-reference-parser memql (47 37)] 11 (#$ . 122872)])
#@519 Parse objects between BEG and END and return recursive structure.

Objects are accumulated in ACC.  RESTRICTION is a list of object
successors which are allowed in the current object.

ACC becomes the parent for all parsed objects.  However, if ACC
is nil (i.e., a secondary string is being parsed) and optional
argument PARENT is non-nil, use it as the parent for all objects.
Eventually, if both ACC and PARENT are nil, the common parent is
the list of objects itself.

(fn BEG END ACC RESTRICTION &optional PARENT)
(defalias 'org-element--parse-objects #[1284 "\212\214}\210eb\210\301\211m\204\"\302!\211\262\203\"\303\211;\203)\304\305#\266\202\2021\306A@\"\266\202`U\204k\307`\"\203e\211\310;\203T\311\301$\266\203\202fA\312A@#\240\210\266\203\202f\211B\262\210\210\313\211;\203}\304\305#\266\202\202\205\306A@\"\266\202\314\211;\203\226\304\305#\266\202\202\236\306A@\"\266\202\203\306\310;\203\267\311\301$\266\203\202\305A\312A@#\240\210\266\203\210\211\203\315\316\211;\203\336\304\305#\266\202\202\346\306A@\"\266\202\211\2119\203\362\211\202
\211\211:\204\211;\205\317\262\202
\211@9\205\211@\262\236A\262$\202B\262b\266\202m\204Y\307`\"\203T\211\310;\203C\311\301$\266\203\202UA\312A@#\240\210\266\203\202U\211B\266\202\203g\320\321\237#\202\243\211\237\206n\211\211\203\236\211@\211\310;\203\210\311\301$\266\203\202\226A\312A@#\240\210\266\203\210A\266\202\202o\262\266\202\266\202*\207" [org-element-object-restrictions nil org-element--object-lex :begin get-text-property 0 plist-get buffer-substring-no-properties :parent org-add-props plist-put :end :contents-begin org-element--parse-objects :contents-end plain-text apply org-element-set-contents] 19 (#$ . 126024)])
#@154 Interpret DATA as Org syntax.
DATA is a parse tree, an element, an object or a secondary string
to interpret.  Return Org syntax as a string.

(fn DATA)
(defalias 'org-element-interpret-data #[257 "\300C\211\301\302\303\304\305!\306\"\307\310%\240\210\211\242\300\"\207" [nil make-byte-code 514 "\211:\204\211;\205\301\262\202\211@9\205\211@\262\302\303\304\"!\305!\203+\211\202,\306\262\204G\307\310\311\312\313\314\300	\"\315\"\316\317%\320#\202>\321=\203x\307\310\311\312\313\314\300	\"\315\"\316\317%\211:\204h\322\262\202s\211@9\203s\211AA\262\320#\202>;\203\201\202>\211:\204\215\322\262\202\230\211@9\203\230\211AA\262\204\242\211\322\"\202>\211\307\310\311\312\313\314\300\f\"\315\"\316\323%\324>\204\276\202%\325\326=\205$\211:\204\332\211;\205\342\301\262\202\344\211@9\205\342\211@\262\327>\205$		\211:\204\370\322\262\202\211@9\203\211AA\262@=\205$\330	\211;\203\331\332#\266\202\202\"\333A@\"\266\202\332=\"\211:\2040\322\262\202;\211@9\203;\211AA\262\320#\"\334>\203H\211\202\207\335\211;\203Y\331\332#\266\202\202a\333A@\"\266\202\206e\332\336\"\337=\203y\340\341\"P\202\205\342!\343!\340\344\"Q\262\207" vconcat vector [plain-text intern format "org-element-%s-interpreter" fboundp #[514 "\207" #1=[] 3 "\n\n(fn _ CONTENTS)"] mapconcat make-byte-code 257 "\300\242\301\"\207" vconcat vector #1# 4 "\n\n(fn OBJ)" "" org-data nil "\n\n(fn DATUM)" (paragraph verse-block) org-element-normalize-contents paragraph (footnote-definition item) :pre-blank get-text-property 0 plist-get (org-data plain-text nil) :post-blank #[513 "\211:\204\211;\205\303\262\202\211@9\205\211@\262\2068\304\211;\2030\305\306#\266\202\2028\307A@\"\266\202>\203B\310\202\244	>\203L\311\202\244\312\267\202Z\311\202\244\310\202\244\204b\310\202\244\211\204j\311\202\244\211\211:\204{\211;\205\203\303\262\202\205\211@9\205\203\211@\262\211\204\215\310\202\242\211\n>\203\227\310\202\242\313!\203\241\310\202\242\311\262\207" [org-element-all-objects org-element-all-elements org-element-object-containers plain-text :parent get-text-property 0 plist-get object element #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (org-data 82 plain-text 86)) org-element-secondary-p] 9 "Return class for ELEMENT, as a symbol.\nClass is either `element' or `object'.  Optional argument PARENT\nis the element or object containing DATUM.  It defaults to the\nvalue of DATUM `:parent' property.\n\n(fn DATUM &optional PARENT)"] object make-string 32 org-element--interpret-affiliated-keywords org-element-normalize-string 10] 16 "\n\n(fn DATA PARENT)"] 9 (#$ . 127865)])
#@127 Return ELEMENT's affiliated keywords as Org syntax.
If there is no affiliated keyword, return the empty string.

(fn ELEMENT)
(defalias 'org-element--interpret-affiliated-keywords #[257 "\302\303\304\305\306\307\310\"\311\"\312\313%A@\314\211:\203J@\262\315\316!\317\"\226\320\321\"\2068\211\235\2058\322	\"?\262\203BB\262AA\262\202\211\237\266\203\323#\207" [org-element-affiliated-keywords org-element-keyword-translation-alist #[514 "\302\235\203A\262@\262\303\227\205\304\305\306!\"\307	\235\203+\306!\202,\310\260\207" [org-element-dual-keywords org-element-parsed-keywords nil "#+" format "[%s]" org-element-interpret-data ": " "\n"] 9 "\n\n(fn KEY VALUE)"] mapconcat make-byte-code 257 "\211\300\211;\203\303\304#\266\202\202\305A@\"\266\202\306\307!\310\"\226\205L\211\n\235\2041\311\312\"\203H\313\314\315\316\317\320\301\"\321\"\322\323%\324!\325#\202L\301\"\207" vconcat vector [org-element-multiple-keywords get-text-property 0 plist-get substring symbol-name 1 string-match "^ATTR_" mapconcat make-byte-code 257 "\300\301\"\207" vconcat vector [] 4 "\n\n(fn LINE)" reverse #1=""] 11 "\n\n(fn PROP)" nil substring symbol-name 1 string-match "^ATTR_" assoc #1#] 11 (#$ . 130618)])
#@219 Ensure string S ends with a single newline character.

If S isn't a string return it unchanged.  If S is the empty
string, return it.  Otherwise, return a new string with a single
newline character at its end.

(fn S)
(defalias 'org-element-normalize-string #[257 "\211;\204\207\211\300\230\203\300\207\301\302\"\205\303\304\305\211$\207" ["" string-match "\\(\n[ 	]*\\)*\\'" replace-match "\n" nil] 6 (#$ . 131883)])
#@349 Normalize plain text in ELEMENT's contents.

ELEMENT must only contain plain text and objects.

If optional argument IGNORE-FIRST is non-nil, ignore first line's
indentation to compute maximal common indentation.

Return the normalized element that is element with global
indentation removed from its contents.

(fn ELEMENT &optional IGNORE-FIRST)
(defalias 'org-element-normalize-contents #[513 "\301C\301C\302\303\304\305\306!\307\"\310\311%\240\210\211\3122!\242?#0\240\210\211\242\313U\2041\211\242U\2035\202O\301C\211\302\314\315\305\306\"\316\"\317\320%\240\210\211\242!\262\207" [most-positive-fixnum nil make-byte-code 771 "\211:\204\f\302\262\202\211@9\203\211AA\262\211\203#\211@\203m\302\262\211;\2041\303\304\305\"\210\202m\306\307\"\204@\303\304\305\"\210\202m\310\311\"\312\232\203V\313\314\224\314\225\315\316%\210\202m\317\310\314\"!\313\314\224\314\225\315%\210\211^\262\210\211;\203\316\305\306\320#\203\312\314\225\262\310\314\"\321\232\203\231\310\311\"\322\235\204s\303\304\305\"\210\202s\310\311\"\312\232\203\260\313\314\224\314\225\315\316%\210\202s\317\310\314\"!\313\314\224\314\225\315%\210\211^\262\210\202s\210\202\211\211:\204\337\211;\205\347\323\262\202\351\211@9\205\347\211@\262\324=\203\364\325\262\202\211\211:\204\211;\205
\323\262\202\211@9\205
\211@\262	>\203\300\242#\262A\266\202\202\207" vconcat vector [org-element-recursive-objects nil throw :zero 0 string-match "\\`\\([ 	]+\\)\\([^ 	\n]\\|\n\\|\\'\\)" match-string 2 "\n" put-text-property 1 org-ind empty string-width "\n\\([ 	]*\\)\\([^ 	\n]\\|\n\\|\\'\\)" #1="" (#1# "\n") plain-text line-break t] 13 "\n\n(fn BLOB FIRST-FLAG MIN-IND)" :zero 0 257 "\211A\302\303\304\305\306\307\300\301\"\310\"\311\312%\211:\204\313\262\202'\211@9\203'\211AA\262\"\241\210\207" [mapcar make-byte-code 257 "\211;\203K\303\304!r\211q\210\305\306\307\310\311!\312\"\313$\216c\210e\314d\315\316$\211\262\203F\211b\210\317\315\"\320\316w\210`|\210\211\250\203B\211\300\242Zj\210\210\202\210\321 *\207\211\211:\204\\\211;\205d\322\262\202f\211@9\205d\211@\262\n>\203p\301\242!\207\207" vconcat vector [org-element-recursive-objects generate-new-buffer " *temp*" make-byte-code 0 "\301\300!\205	\302\300!\207" vconcat vector [buffer-name kill-buffer] 2 text-property-not-all org-ind nil get-text-property " 	" buffer-string plain-text] 8 "\n\n(fn OBJECT)" nil] 10 "\n\n(fn DATUM)"] 13 (#$ . 132316)])
#@214 Non-nil when Org parser should cache its results.

WARNING: for the time being, using cache sometimes triggers
freezes.  Therefore, it is disabled by default.  Activate it if
you want to help debugging the issue.
(defvar org-element-use-cache nil (#$ . 134825))
#@56 Length, in seconds, of idle time before syncing cache.
(defvar org-element-cache-sync-idle-time 0.6 (#$ . 135093))
#@195 Maximum duration, as a time value, for a cache synchronization.
If the synchronization is not over after this delay, the process
pauses and resumes after `org-element-cache-sync-break'
seconds.
(defvar org-element-cache-sync-duration 0.04 (#$ . 135215))
#@127 Duration, as a time value, of the pause between synchronizations.
See `org-element-cache-sync-duration' for more information.
(defvar org-element-cache-sync-break 0.3 (#$ . 135476))
#@179 AVL tree used to cache elements.
Each node of the tree contains an element.  Comparison is done
with `org-element--cache-compare'.  This cache is used in
`org-element-at-point'.
(defvar org-element--cache nil (#$ . 135665))
#@1184 List of pending synchronization requests.

A request is a vector with the following pattern:

 [NEXT BEG END OFFSET PARENT PHASE]

Processing a synchronization request consists of three phases:

  0. Delete modified elements,
  1. Fill missing area in cache,
  2. Shift positions and re-parent elements after the changes.

During phase 0, NEXT is the key of the first element to be
removed, BEG and END is buffer position delimiting the
modifications.  Elements starting between them (inclusive) are
removed.  So are elements whose parent is removed.  PARENT, when
non-nil, is the parent of the first element to be removed.

During phase 1, NEXT is the key of the next known element in
cache and BEG its beginning position.  Parse buffer between that
element and the one before it in order to determine the parent of
the next element.  Set PARENT to the element containing NEXT.

During phase 2, NEXT is the key of the next element to shift in
the parse tree.  All elements starting from this one have their
properties relatives to buffer positions shifted by integer
OFFSET and, if they belong to element PARENT, are adopted by it.

PHASE specifies the phase number, as an integer.
(defvar org-element--cache-sync-requests nil (#$ . 135897))
#@39 Timer used for cache synchronization.
(defvar org-element--cache-sync-timer nil (#$ . 137146))
#@106 Hash table used to store keys during synchronization.
See `org-element--cache-key' for more information.
(defvar org-element--cache-sync-keys nil (#$ . 137248))
#@741 Return a unique key for ELEMENT in cache tree.

Keys are used to keep a total order among elements in the cache.
Comparison is done with `org-element--cache-key-less-p'.

When no synchronization is taking place, a key is simply the
beginning position of the element, or that position plus one in
the case of an first item (respectively row) in
a list (respectively a table).

During a synchronization, the key is the one the element had when
the cache was synchronized for the last time.  Elements added to
cache during the synchronization get a new key generated with
`org-element--cache-generate-key'.

Such keys are stored in `org-element--cache-sync-keys'.  The hash
table is cleared once the synchronization is complete.

(fn ELEMENT)
(defalias 'org-element--cache-key #[257 "\302\"\206U\303\211;\203\304\305#\266\202\202 \306A@\"\266\202\211:\2041\211;\2059\307\262\202;\211@9\2059\211@\262\310>\203E\211T\202F\211	\203R\311#\202S\211\266\202\207" [org-element--cache-sync-keys org-element--cache-sync-requests gethash :begin get-text-property 0 plist-get plain-text (item table-row) puthash] 7 (#$ . 137416)])
(put 'org-element--cache-key 'byte-optimizer 'byte-compile-inline-expand)
#@1326 Generate a key between LOWER and UPPER.

LOWER and UPPER are fixnums or lists of same, possibly empty.

If LOWER and UPPER are equals, return LOWER.  Otherwise, return
a unique key, as an integer or a list of integers, according to
the following rules:

  - LOWER and UPPER are compared level-wise until values differ.

  - If, at a given level, LOWER and UPPER differ from more than
    2, the new key shares all the levels above with LOWER and
    gets a new level.  Its value is the mean between LOWER and
    UPPER:

      (1 2) + (1 4) --> (1 3)

  - If LOWER has no value to compare with, it is assumed that its
    value is `most-negative-fixnum'.  E.g.,

      (1 1) + (1 1 2)

    is equivalent to

      (1 1 m) + (1 1 2)

    where m is `most-negative-fixnum'.  Likewise, if UPPER is
    short of levels, the current value is `most-positive-fixnum'.

  - If they differ from only one, the new key inherits from
    current LOWER level and fork it at the next level.  E.g.,

      (2 1) + (3 3)

    is equivalent to

      (2 1) + (2 M)

    where M is `most-positive-fixnum'.

  - If the key is only one level long, it is returned as an
    integer:

      (1 2) + (3 2) --> 2

When they are not equals, the function assumes that LOWER is
lesser than UPPER, per `org-element--cache-key-less-p'.

(fn LOWER UPPER)
(defalias 'org-element--cache-generate-key #[514 "\232\203\207\250\203C\202\250\203C\202\302\211\3032\202@\206*\2032	\2028@\2068	TW\203c\304\305\306\"\305\306\"\307\310##\311\303\203\\B\237\202]\"\266\202}W\203p\204p\312\262B\262A\262A\262\266\202$\207" [most-negative-fixnum most-positive-fixnum nil exit + ash -1 logand 1 throw t] 15 (#$ . 138640)])
#@139 Non-nil if key A is less than key B.
A and B are either integers or lists of integers, as returned by
`org-element--cache-key'.

(fn A B)
(defalias 'org-element--cache-key-less-p #[514 "\250\203\211\250\203W\207@X\207\211\250\203@W\207\3002Y\203R\211\203R\301\"\2038\302\300\303\"\210\202!\301\"\203G\302\300\304\"\210\202!A\262\211A\262\202!?\205X\2110\207" [exit car-less-than-car throw t nil] 5 (#$ . 140383)])
(put 'org-element--cache-key-less-p 'byte-optimizer 'byte-compile-inline-expand)
#@63 Non-nil when element A is located before element B.

(fn A B)
(defalias 'org-element--cache-compare #[514 "\302\"\206V\303\211;\203\304\305#\266\202\202!\306A@\"\266\202\211:\2042\211;\205:\307\262\202<\211@9\205:\211@\262\310>\203F\211T\202G\211	\203S\311#\202T\211\266\202\262\302\"\206\256\303\211;\203q\304\305#\266\202\202y\306A@\"\266\202\211:\204\212\211;\205\222\307\262\202\224\211@9\205\222\211@\262\310>\203\236\211T\202\237\211	\203\253\311#\202\254\211\266\202\262\250\203\303\211\250\203\276W\207@X\207\211\250\203\315@W\207\3122	\203\211\203\313\"\203\350\314\312\315\"\210\202\321\313\"\203\367\314\312\316\"\210\202\321A\262\211A\262\202\321?\205\2110\207" [org-element--cache-sync-keys org-element--cache-sync-requests gethash :begin get-text-property 0 plist-get plain-text (item table-row) puthash exit car-less-than-car throw t nil] 10 (#$ . 140915)])
#@93 Return root value in cache.
This function assumes `org-element--cache' is a valid AVL tree.
(defalias 'org-element--cache-root #[0 "\302!	>\204\303\304\305D\"\210\306H\307H\207" [org-element--cache cl-struct-avl-tree--tags type-of signal wrong-type-argument avl-tree- 1 0] 4 (#$ . 141878)])
(put 'org-element--cache-root 'byte-optimizer 'byte-compile-inline-expand)
#@49 Non-nil when cache is active in current buffer.
(defalias 'org-element--cache-active-p #[0 "\205	\205\302\303!\207" [org-element-use-cache org-element--cache derived-mode-p org-mode] 2 (#$ . 142255)])
(put 'org-element--cache-active-p 'byte-optimizer 'byte-compile-inline-expand)
#@448 Find element in cache starting at POS or before.

POS refers to a buffer position.

When optional argument SIDE is non-nil, the function checks for
elements starting at or past POS instead.  If SIDE is `both', the
function returns a cons cell where car is the first element
starting at or before POS and cdr the first element starting
after POS.

The function can only find elements in the synchronized part of
the cache.

(fn POS &optional SIDE)
(defalias 'org-element--cache-find #[513 "\205@\304H\305	!\n>\204\306\307\310	D\"\210	\311H\304H\312\211\203\320\313H\314\211;\2036\315\304#\266\202\202>\316A@\"\266\202\203\317\"\206\230\314\211;\203[\315\304#\266\202\202c\316A@\"\266\202\211:\204t\211;\205|\320\262\202~\211@9\205|\211@\262\321>\203\210\211T\202\211\211\203\225\322#\202\226\211\266\202\262\250\203\267\211\250\203\256W\266\202\202@X\266\202\202\211\250\203\305@W\266\202\202\3232\203\372\211\203\372\324\"\203\340\325\323\326\"\210\202\311\324\"\203\357\325\323\312\"\210\202\311A\262\211A\262\202\311?\205\2110\266\202\204\304H\262\202\313\211V\203 \262\304H\262\202\313\211W\2032\262\311H\262\202\313\327=\203D\262\311H\262\202\313\211:\204U\211;\205]\320\262\202_\211@9\205]\211@\262\330>\203\302\331\211;\203u\315\304#\266\202\202}\316A@\"\266\202\314\211;\203\216\315\304#\266\202\202\226\316A@\"\266\202\332\211;\203\247\315\304#\266\202\202\257\316A@\"\266\202U\205\275\312\262\211\262\211\211\262\262\204\313\312\262\262\262\266\202\327=\203\334B\202\345\204\344\202\345\211\207" [org-element--cache-sync-requests org-element--cache cl-struct-avl-tree--tags org-element--cache-sync-keys 0 type-of signal wrong-type-argument avl-tree- 1 nil 2 :begin get-text-property plist-get gethash plain-text (item table-row) puthash exit car-less-than-car throw t both (item table-row) :parent :contents-begin] 16 (#$ . 142547)])
#@68 Store ELEMENT in current buffer's cache, if allowed.

(fn ELEMENT)
(defalias 'org-element--cache-put #[257 "\205	\205\304\305!\205\n\203\375\306\307\211;\203$\310\311#\266\202\202,\312A@\"\266\202\313\"\314\315@\205\217@\316\"\206\215\307\211;\203P\310\311#\266\202\202X\312A@\"\266\202\211:\204i\211;\205q\317\262\202s\211@9\205q\211@\262\320>\203}\211T\202~\211\n\203\212\314#\202\213\211\266\202\262A\203\360A\316\"\206\353\307\211;\203\256\310\311#\266\202\202\266\312A@\"\266\202\211:\204\307\211;\205\317\317\262\202\321\211@9\205\317\211@\262\320>\203\333\211T\202\334\211\n\203\350\314#\202\351\211\266\202\262\202\370\n\205\370\n@\311H\"#\266\321	\"\207" [org-element-use-cache org-element--cache org-element--cache-sync-requests org-element--cache-sync-keys derived-mode-p org-mode org-element--cache-find :begin get-text-property 0 plist-get both puthash org-element--cache-generate-key gethash plain-text (item table-row) avl-tree-enter] 13 (#$ . 144561)])
#@102 Remove ELEMENT from cache.
Assume ELEMENT belongs to cache and that a cache is active.

(fn ELEMENT)
(defalias 'org-element--cache-remove #[257 "\301\"\207" [org-element--cache avl-tree-delete] 4 (#$ . 145614)])
(put 'org-element--cache-remove 'byte-optimizer 'byte-compile-inline-expand)
#@66 Set idle timer for cache synchronization in BUFFER.

(fn BUFFER)
(defalias 'org-element--cache-set-timer #[257 "\203\303!\210\304\305 \211\203\306	\"\202\n\262\307\310$\211\207" [org-element--cache-sync-timer org-element-cache-sync-break org-element-cache-sync-idle-time cancel-timer run-with-idle-timer current-idle-time org-time-add nil org-element--cache-sync] 6 (#$ . 145911)])
(put 'org-element--cache-set-timer 'byte-optimizer 'byte-compile-inline-expand)
#@113 Non-nil when synchronization process should be interrupted.
TIME-LIMIT is a time value or nil.

(fn TIME-LIMIT)
(defalias 'org-element--cache-interrupt-p #[257 "\211\205
\300 \206
\301\302\"\207" [input-pending-p org-time-less-p nil] 4 (#$ . 146392)])
(put 'org-element--cache-interrupt-p 'byte-optimizer 'byte-compile-inline-expand)
#@357 Shift ELEMENT properties relative to buffer positions by OFFSET.

Properties containing buffer positions are `:begin', `:end',
`:contents-begin', `:contents-end' and `:structure'.  When
optional argument PROPS is a list of keywords, only shift
properties provided in that list.

Properties are modified by side-effect.

(fn ELEMENT OFFSET &optional PROPS)
(defalias 'org-element--cache-shift-positions #[770 "A@\203
\300>\203x\211:\204\211;\205&\301\262\202(\211@9\205&\211@\262\302=\203x\303\304\"\211:\204A\211;\205I\301\262\202K\211@9\205I\211@\262\305=\204x\303\300\"\211\203w\211@\211\211@\\\240\266\306\233\211@\\\240\266A\266\202\202T\210\307\211\205\242\211@\203\211\211>\205\215\303\"\211\203\232\310\\#\210\210A\266\202\202y\262\207" [:structure plain-text plain-list plist-get :parent item 6 (:begin :contents-begin :contents-end :end :post-affiliated) plist-put] 12 (#$ . 146736)])
(put 'org-element--cache-shift-positions 'byte-optimizer 'byte-compile-inline-expand)
#@600 Synchronize cache with recent modification in BUFFER.

When optional argument THRESHOLD is non-nil, do the
synchronization for all elements starting before or at threshold,
then exit.  Otherwise, synchronize cache for as long as
`org-element-cache-sync-duration' or until Emacs leaves idle
state.

FUTURE-CHANGE, when non-nil, is a buffer position where changes
not registered yet in the cache are going to happen.  It is used
in `org-element--cache-submit-request', where cache is partially
updated before current modification are actually submitted.

(fn BUFFER &optional THRESHOLD FUTURE-CHANGE)
(defalias 'org-element--cache-sync #[769 "\306!\205\223rq\210\307\310\211	\203\311	!\210\3122a\n\205`\n@\262\nA@\262\313\2051\314H\211?\205<\315\310\"%\210\211\203X\211\211\316\316H\316H\\I\266\211\317\317HI\210\nA\211\204\3100\210\n\203\213	\203o\311	!\210\320\321 \211\203}\315\f\"\202~
\262\310\322$\211\262\202\217\323!)\266\203)\207" [inhibit-quit org-element--cache-sync-timer org-element--cache-sync-requests org-element-cache-sync-duration org-element-cache-sync-break org-element-cache-sync-idle-time buffer-live-p t nil cancel-timer interrupt org-element--cache-process-request 0 org-time-add 3 2 run-with-idle-timer current-idle-time org-element--cache-sync clrhash org-element--cache-sync-keys] 14 (#$ . 147774)])
#@728 Process synchronization REQUEST for all entries before NEXT.

REQUEST is a vector, built by `org-element--cache-submit-request'.

NEXT is a cache key, as returned by `org-element--cache-key'.

When non-nil, THRESHOLD is a buffer position.  Synchronization
stops as soon as a shifted element begins after it.

When non-nil, TIME-LIMIT is a time value.  Synchronization stops
after this time or when Emacs exits idle state.

When non-nil, FUTURE-CHANGE is a buffer position where changes
not registered yet in the cache are going to happen.  See
`org-element--cache-submit-request' for more information.

Throw `interrupt' if the process stops before completing the
request.

(fn REQUEST NEXT THRESHOLD TIME-LIMIT FUTURE-CHANGE)
(defalias 'org-element--cache-process-request #[1285 "\3042z\305H\306U\203\301\3072\300\211\205\310 \206\311\312\"\262\203(\313\314\312\"\210\306H\315H\316!	>\204=\317\320\321D\"\210\322H\306H\312\211\211\203\242\315H\211\323\n\"\206\242\324\211;\203e\325\306#\266\202\202m\326A@\"\266\202\211:\204~\211;\205\206\327\262\202\210\211@9\205\206\211@\262\330>\203\222\211T\202\223\211\203\237\331\n#\202\240\211\266\202\262\211\250\203\302\211\250\203\271W\266\202\202@X\266\202\202\211\250\203\320@W\266\202\202\3322\f\203\211\203\333\"\203\353\313\332\334\"\210\202\324\333\"\203\372\313\332\312\"\210\202\324A\262\211A\262\202\324?\205\2110\266\202\203\322H\262\202\235\250\2037\211\250\203.W\266\202\202\203@X\266\202\202\203\211\250\203E@W\266\202\202\203\3322\201\203z\211\203z\333\"\203`\313\332\334\"\210\202I\333\"\203o\313\332\312\"\210\202IA\262\211A\262\202I?\205\200\2110\266\202\203\224\262\211\262\306H\262\202\235\262\211\262\312\262\266\202E\203\266\324\211;\203\267\325\306#\266\202\202\277\326A@\"\266\202\n\2031\250\203\342\211\250\203\331W\266\202\202.@X\266\202\202.\211\250\203\360@W\266\202\202.\3322,\203%\211\203%\333\"\203\313\332\334\"\210\202\364\333\"\203\313\332\312\"\210\202\364A\262\211A\262\202\364?\205+\2110\266\202\2038\211X\202h\203\233\211\203e\211=\204e\335\211;\203X\325\306#\266\202\202`\326A@\"\266\202\262\202=\211\262\203\233\204\221\336\211;\203\200\325\306#\266\202\202\210\326A@\"\266\202V\203\221\262\337\"\266\202\262\306I\210\322I\210\305\322I\210\313\307\312\"\210\210\202\273\313\304\334\"\210\266\202\210\305H\322U\203\226\306H\203W\211\250\203\355\211\250\203\344W\266\202\2029@X\266\202\2029\211\250\203\373@W\266\202\2029\33227\2030\211\2030\333\"\203\313\332\334\"\210\202\377\333\"\203%\313\332\312\"\210\202\377A\262\211A\262\202\377?\2056\2110\266\202\204WA@\211\306I\210\211\322\322HI\210\211\305\322I\266\313\304\334\"\210\210\322H\340H\\\203q\211V\203q\313\314\312\"\210\202\225\203\203\211Y\203\203\305\315I\210\202\225\341\334#\342I\210\305\315I\266\210\306H\340H\342H\316!	>\204\257\317\320\321D\"\210\322H\306H\312C\334\312\204\307\306U\203\307\313\304\334\"\210\203v\315H\211\323\n\"\206$\324\211;\203\347\325\306#\266\202\202\357\326A@\"\266\202\211:\204\211;\205\327\262\202\n\211@9\205\211@\262\330>\203\211T\202\211\203!\331\n#\202\"\211\266\202\262\203\252\306H\203\252\211	\250\203N\211\250\203EW\266\202\202\232@X\266\202\202\232\211\250\203\\@W\266\202\202\232\3322\230\203\221\211\203\221\333\"\203w\313\332\334\"\210\202`\333\"\203\206\313\332\312\"\210\202`A\262\211A\262\202`?\205\227\2110\266\202\204\252B\262\306H\262\202q\211	\250\203\310\211\250\203\277W\266\202\202@X\266\202\202\211\250\203\326@W\266\202\202\3322\203\211\203\333\"\203\361\313\332\334\"\210\202\332\333\"\203\313\332\312\"\210\202\332A\262\211A\262\202\332?\205\2110\266\202\204Z\211
\232\203#\313\304\334\"\210\204;\n\211\2056\310 \2066\311\312\"\262\203M
\306I\210
\342I\210\313\314\312\"\210\306U\204\376\312A@\203e\343>\203\320\211:\204v\211;\205~\327\262\202\200\211@9\205~\211@\262\344=\203\320\326\335\"\211:\204\231\211;\205\241\327\262\202\243\211@9\205\241\211@\262\345=\204\320\326\343\"\211\203\317\211@\211\211@\\\240\266\346\233\211@\\\240\266A\266\202\202\254\210\347\211\205\372\211@\203\341\211>\205\345\326\"\211\203\362\350\\#\210\210A\266\202\202\321\262\266\324\211;\203\325\306#\266\202\202\326A@\"\266\202\203Z\336\211;\203.\325\306#\266\202\2026\326A@\"\266\202X\203Z\335\211;\203M\325\306#\266\202\202U\326A@\"\266\202\262\202\204n\306U\203n\313\304\312\"\210\202J\203J\335\211;\203\204\325\306#\266\202\202\214\326A@\"\266\202\211?\206\305\324\211;\203\242\325\306#\266\202\202\252\326A@\"\266\202\324\n\211;\203\274\325\306#\266\202\202\304\326A@\"\266\202W\262\203J\335	;\203\336\351\312$\266\203\202\354A\350A@#\240\210\266\203\210\343\211;\203\377\325\306#\266\202\202\326A@\"\266\202\211\203I\343\211;\203\325\306#\266\202\202$\326A@\"\266\202\203I\343;\203:\351\312$\266\203\202HA\350A@#\240\210\266\203\210\210\f\203Y\211
V\203Y\334\262\210\322H\211\262\203i\322H\202o\211A\262\242\262\266\202\307\334\266\2070\207" [org-element--cache cl-struct-avl-tree--tags org-element--cache-sync-keys org-element--cache-sync-requests quit 5 0 end-phase input-pending-p org-time-less-p nil throw interrupt 2 type-of signal wrong-type-argument avl-tree- 1 gethash :begin get-text-property plist-get plain-text (item table-row) puthash exit car-less-than-car t :parent :end avl-tree-delete 3 org-element--parse-to 4 :structure plain-list item 6 (:begin :contents-begin :contents-end :end :post-affiliated) plist-put org-add-props] 26 (#$ . 149148)])
#@534 Parse elements in current section, down to POS.

Start parsing from the closest between the last known element in
cache or headline above.  Return the smallest element containing
POS.

When optional argument SYNCP is non-nil, return the parent of the
element containing POS instead.  In that case, it is also
possible to provide TIME-LIMIT, which is a time value specifying
when the parsing should stop.  The function throws `interrupt' if
the process stopped before finding the expected result.

(fn POS &optional SYNCP TIME-LIMIT)
(defalias 'org-element--parse-to #[769 "\3062\340\212\214~\210b\210\205	\205\307\310!\205\311\312\"\313\211;\203.\314\315#\266\202\2026\316A@\"\266\202\312\211\211\204d\317\320 \211\321P\322 ,\203W\323\262\312y\210\202Z\324\262\325\312w\210\326 \210\202CU\203\226\327\306\203\217\330\211;\203\204\314\315#\266\202\202\221\316A@\"\266\202\202\221\"\210\202C\331\317\320 \211\321P+\317#\203\270\312y\210\325\312w\210\326 \210\323\262\202Cd	U\203\306S\202\310\332\211;\203\332\314\315#\266\202\202\342\316A@\"\266\202\206\346b\210\333\211;\203\371\314\315#\266\202\202\316A@\"\266\202\211X\205(\211b\205(\330\211;\203\314\315#\266\202\202%\316A@\"\266\202\211\262\262\204\350\203Am\203;\262\202A\262`\262\266\333\211;\203T\314\315#\266\202\202\\\316A@\"\266\202\206q\212\317\320 \211\321P\334 \210,`)\203\237`\nU\203\206\327\306\"\210\202\237\211\205\225\335 \206\225\336\312\"\262\203\237\327\337\312\"\210\204\351\340\341\342\211;\203\270\314\315#\266\202\202\300\316A@\"\266\202$\262\330;\203\326\343\312$\266\203\202\344A\344A@#\240\210\266\203\210\345!\210\333\211;\203\372\314\315#\266\202\202\316A@\"\266\202\211:\204\211;\205\346\262\202\211@9\205\211@\262\fX\2037dU\2047b\210\347\312#\262\202\330\211*>\204G\327\306\"\210\202\330\332\211;\203Y\314\315#\266\202\202a\316A@\"\266\202\350\211;\203s\314\315#\266\202\202{\316A@\"\266\202\f\204\262\205\315\211\205\315W\204\235U\205\315\351>?\205\315\211V\204\262\211U\205\315dU\205\315\206\270b\210\312\262\347\317#\262\262\211\211\262\266\202\204\330\327\306\"\210\266\312\262\202r\207" [org-element-use-cache org-element--cache org-called-with-limited-levels org-outline-regexp outline-regexp org-outline-regexp-bol exit derived-mode-p org-mode org-element--cache-find nil :begin get-text-property 0 plist-get t org-get-limited-outline-regexp "^" outline-previous-heading planning top-comment " 
	\n" beginning-of-line throw :parent re-search-backward :contents-begin :end outline-next-heading input-pending-p org-time-less-p interrupt org-element--current-element element :structure org-add-props plist-put org-element--cache-put plain-text #[771 "\211\2036\300=\203\f\301\207\302=\203$\303\267\202\"\304\207\305\207\306\207\307\207\310\207\311\207\312\267\2024\305\207\306\207\307\207\305\207\310\207\311\207\313\267\202J\306\207\307\207\305=\205Y\314\207\310\207\304=\203V\315=\204X\311\207\314\207" [headline section first-section #s(hash-table size 5 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (section 24 inlinetask 26 plain-list 28 property-drawer 30 table 32)) top-comment planning item node-property table-row nil #s(hash-table size 5 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (inlinetask 42 plain-list 44 property-drawer 46 section 48 table 50)) #s(hash-table size 4 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (item 60 node-property 62 planning 64 table-row 72)) property-drawer comment] 5 "Return next mode according to current one.\n\nMODE is a symbol representing the expectation about the next\nelement or object.  Meaningful values are `first-section',\n`item', `node-property', `planning', `property-drawer',\n`section', `table-row', `top-comment', and nil.\n\nTYPE is the type of the current element or object.\n\nIf PARENT? is non-nil, assume the next element or object will be\nlocated inside the current one.  \n\n(fn MODE TYPE PARENT\\=\\?)"] :contents-end (plain-list table) org-element-greater-elements] 21 (#$ . 155130)])
#@273 Regexp matching a sensitive line, structure wise.
A sensitive line is a headline, inlinetask, block, drawer, or
latex-environment boundary.  When such a line is modified,
structure changes in the document may propagate in the whole
section, possibly making cache invalid.
(defconst org-element--cache-sensitive-re "^\\*+ \\|\\\\end{[A-Za-z0-9*]+}[ 	]*$\\|^[ 	]*\\(?:#\\+\\(?:BEGIN[:_]\\|END\\(?:_\\|:?[ 	]*$\\)\\)\\|\\\\begin{[A-Za-z0-9*]+}\\|:\\(?:\\w\\|[-_]\\)+:[ 	]*$\\)" (#$ . 159404))
#@99 Non-nil when a sensitive line is about to be changed.
It is a symbol among nil, t and `headline'.
(defvar org-element--cache-change-warning nil (#$ . 159900))
#@194 Request extension of area going to be modified if needed.
BEG and END are the beginning and end of the range of changed
text.  See `before-change-functions' for more information.

(fn BEG END)
(defalias 'org-element--cache-before-change #[514 "\205\\	\205\\\306\307!\205\\\212\214~\210b\210\310 \210\212\211b\210\311 )\312 \313\314\315\316\317!\320\"\321$\216\322\323 \211\324P\325 ,\203I\311 U\203I\326\202S\322\327\322#))\262\211\262*\207" [org-element-use-cache org-element--cache org-called-with-limited-levels org-outline-regexp outline-regexp org-outline-regexp-bol derived-mode-p org-mode beginning-of-line line-end-position match-data make-byte-code 0 "\301\300\302\"\207" vconcat vector [set-match-data evaporate] 3 t org-get-limited-outline-regexp "^" org-at-heading-p headline re-search-forward case-fold-search org-element--cache-sensitive-re org-element--cache-change-warning] 11 (#$ . 160066)])
#@258 Update buffer modifications for current buffer.
BEG and END are the beginning and end of the range of changed
text, and the length in bytes of the pre-change text replaced by
that range.  See `after-change-functions' for more information.

(fn BEG END PRE)
(defalias 'org-element--cache-after-change #[771 "\205\303	\205\303\306\307!\205\303\212\214~\210b\210\310 \210\311 \312\313\314\315\316!\317\"\320$\216`\212b\210\321 )\n\322\267\202Q\202^\323\324 \211\325\fP\"\326 ,\205M\321 U?\202[\323#\327$\323#)\203\211\323\324 \211\325\fP\"b\210\330 \203u\331y\210`\262\211b\210\332 \203\205`S\202\206`\262,\333#\334Z#\266)\210*p%\203\247\335%!\210\336\337 \211\203\266\340&\"\202\270'\262\331\341$\211%\262\207" [org-element-use-cache org-element--cache org-element--cache-change-warning org-called-with-limited-levels org-outline-regexp outline-regexp derived-mode-p org-mode beginning-of-line match-data make-byte-code 0 "\301\300\302\"\207" vconcat vector [set-match-data evaporate] 3 line-end-position #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (t 52 headline 55)) t org-get-limited-outline-regexp "^" org-at-heading-p re-search-forward outline-previous-heading nil outline-next-heading - org-element--cache-submit-request cancel-timer run-with-idle-timer current-idle-time org-time-add org-element--cache-sync org-outline-regexp-bol case-fold-search org-element--cache-sensitive-re org-element--cache-sync-timer org-element-cache-sync-break org-element-cache-sync-idle-time] 12 (#$ . 161006)])
#@416 Return first element to remove from cache.

BEG and END are buffer positions delimiting buffer modifications.
OFFSET is the size of the changes.

Returned element is usually the first element in cache containing
any position between BEG and END.  As an exception, greater
elements around the changes that are robust to contents
modifications are preserved and updated according to the
changes.

(fn BEG END OFFSET)
(defalias 'org-element--cache-for-removal #[771 "\300S\301\"\211@A\204\211\202\243\302\203y\211:\204(\211;\2050\303\262\2022\211@9\2050\211@\262\211\304>\204]\211\305=\205\237\306\211;\203O\307\310#\266\202\202W\311A@\"\266\202\312\230?\205\237\313\211;\203n\307\310#\266\202\202v\311A@\"\266\202\211\205\235\211\nX\205\235\314\211;\203\222\307\310#\266\202\202\232\311A@\"\266\202	V\262\262\203Q\315A@\203\265\316>\203 \211:\204\306\211;\205\316\303\262\202\320\211@9\205\316\211@\262\317=\203 \311\320\"\211:\204\351\211;\205\361\303\262\202\363\211@9\205\361\211@\262\321=\204 \311\316\"\211\203\211@\211\211@\\\240\266\322\233\211@\\\240\266A\266\202\202\374\210\323\211\205J\211@\2031\211>\2055\311\"\211\203B\324\\#\210\210A\266\202\202!\262\266\202[\262\211\203[\325\262\320\211;\203l\307\310#\266\202\202t\311A@\"\266\202\262\202\326\211;\203\212\307\310#\266\202\202\222\311A@\"\266\202W\204\234\211\203\240\202\241\266\202\207" [org-element--cache-find both t plain-text (center-block dynamic-block quote-block special-block) drawer :drawer-name get-text-property 0 plist-get "PROPERTIES" :contents-begin :contents-end (:contents-end :end) :structure plain-list :parent item 6 (:begin :contents-begin :contents-end :end :post-affiliated) plist-put nil :end] 20 (#$ . 162603)])
#@232 Submit a new cache synchronization request for current buffer.
BEG and END are buffer positions delimiting the minimal area
where cache data should be removed.  OFFSET is the size of the
change, as an integer.

(fn BEG END OFFSET)
(defalias 'org-element--cache-submit-request #[771 "@\302\211\203\264\303H\304U\203\264\305H\306H\\\211\262V\203\264\307H\211\262X\203\264\211\306\306H\\I\266V\203\310H\211\205\n\211\311A@\203S\312>\203\276\211:\204d\211;\205l\313\262\202n\211@9\205l\211@\262\314=\203\276\315\316\"\211:\204\207\211;\205\217\313\262\202\221\211@9\205\217\211@\262\317=\204\276\315\312\"\211\203\275\211@\211\211@\\\240\266\320\233\211@\\\240\266A\266\202\202\232\210\321\211\205\350\211@\203\317\211>\205\323\315\"\211\203\340\322\\#\210\210A\266\202\202\277\262\266\316\211;\203\375\323\304#\266\202\202\315A@\"\266\202\262\202?\262\202'\324#\211\205\257\304\325	\"\206r\326\211;\2035\323\304#\266\202\202=\315A@\"\266\202\211:\204N\211;\205V\313\262\202X\211@9\205V\211@\262\327>\203b\211T\202c\211\203o\330	#\202p\211\266\202\262I\210\307\326\211;\203\211\323\304#\266\202\202\221\315A@\"\266\202I\210\310\316\211;\203\246\323\304#\266\202\202\256\315A@\"\266\202I\262\202'\203\300\331p#\210\324#\211\203\326\211;\203\335\323\304#\266\202\202\345\315A@\"\266\202\325	\"\206;\326\211;\203\376\323\304#\266\202\202\315A@\"\266\202\211:\204\211;\205\313\262\202!\211@9\205\211@\262\327>\203+\211T\202,\211\2038\330	#\2029\211\266\202\262V\203Q\332\302\n\302\307&\202\333\211;\203b\323\304#\266\202\202j\315A@\"\266\202\211	V\205|\332\304&\262\206\334!\333\211;\203\226\323\304#\266\202\202\236\315A@\"\266\202\316\211;\203\260\323\304#\266\202\202\270\315A@\"\266\202\211\262\203\375\326\211;\203\317\323\304#\266\202\202\327\315A@\"\266\202Y\203\375\333\211;\203\355\323\304#\266\202\202\365\315A@\"\266\202\262\211\262\202\237\332
\304&\266\203\266\202B\211\202%\205%@\211\306\306H\\I\262\262\207" [org-element--cache-sync-requests org-element--cache-sync-keys nil 5 0 2 3 1 4 (:contents-end :end) :structure plain-text plain-list plist-get :parent item 6 (:begin :contents-begin :contents-end :end :post-affiliated) plist-put get-text-property org-element--cache-for-removal gethash :begin (item table-row) puthash org-element--cache-sync vector :end org-element--cache-find] 19 (#$ . 164443)])
#@123 Reset cache in current buffer.
When optional argument ALL is non-nil, reset cache in all Org
buffers.

(fn &optional ALL)
(defalias 'org-element-cache-reset #[256 "\211\203	\306 \202pC\211\205a\211@r\211q\210\203Y\307\310!\203Y\311\301!\210\312\313\314\315\211\211\316$\317#\311\302!\210\320\321\322\323\324$\311\303!\210\315\311\304!\210\315\311\305!\210\315\325\326\327\315\330$\210\325\331\332\315\330$\210)A\266\202\202\207" [org-element-use-cache org-element--cache org-element--cache-sync-keys org-element--cache-change-warning org-element--cache-sync-requests org-element--cache-sync-timer buffer-list derived-mode-p org-mode make-local-variable record avl-tree- vector nil 0 org-element--cache-compare make-hash-table :weakness key :test eq add-hook before-change-functions org-element--cache-before-change t after-change-functions org-element--cache-after-change] 10 (#$ . 167039) "P"])
#@42 Refresh cache at position POS.

(fn POS)
(defalias 'org-element-cache-refresh #[257 "\205;	\205;\305\306!\205;\307p\"\210\310\211\311#\210p\n\203\"\312\n!\210\313\314 \211\2030\315\"\2021\f\262\316\307$\211\262\207" [org-element-use-cache org-element--cache org-element--cache-sync-timer org-element-cache-sync-break org-element-cache-sync-idle-time derived-mode-p org-mode org-element--cache-sync org-element--cache-submit-request 0 cancel-timer run-with-idle-timer current-idle-time org-time-add nil] 7 (#$ . 167956)])
#@716 Determine closest element around point.

Return value is a list like (TYPE PROPS) where TYPE is the type
of the element and PROPS a plist of properties associated to the
element.

Possible types are defined in `org-element-all-elements'.
Properties depend on element or object type, but always include
`:begin', `:end', and `:post-blank' properties.

As a special case, if point is at the very beginning of the first
item in a list or sub-list, returned element will be that list
instead of the item.  Likewise, if point is at the beginning of
the first row of a table, returned element will be the table
instead of the first row.

When point is at the end of the buffer, return the innermost
element ending there.
(defalias 'org-element-at-point #[0 "\212\214~\210`\306\210\307\306x\210o\203\306\202O\310\311 \211\312	P\313 ,\203/\314 \210\315d\310\"\202O\f\203L
\203L\316\317!\203L
\204G\320 \210\202L\321p\"\210\322!\262*\207" [org-called-with-limited-levels org-outline-regexp outline-regexp org-outline-regexp-bol org-element-use-cache org-element--cache nil " 
	\n" t org-get-limited-outline-regexp "^" org-at-heading-p beginning-of-line org-element-headline-parser derived-mode-p org-mode org-element-cache-reset org-element--cache-sync org-element--parse-to] 5 (#$ . 168499)])
#@701 Return smallest element or object around point.

Return value is a list like (TYPE PROPS) where TYPE is the type
of the element or object and PROPS a plist of properties
associated to it.

Possible types are defined in `org-element-all-elements' and
`org-element-all-objects'.  Properties depend on element or
object type, but always include `:begin', `:end', `:parent' and
`:post-blank'.

As a special case, if point is right after an object and not at
the beginning of any other object, return that object.

Optional argument ELEMENT, when non-nil, is the closest element
containing point, as returned by `org-element-at-point'.
Providing it allows for quicker computation.

(fn &optional ELEMENT)
(defalias 'org-element-context #[256 "\3062.\212\214~\210`\206\307 \211\211:\204 \211;\205(\310\262\202*\211@9\205(\211@\262\311\211;\203;\312\313#\266\202\202C\314A@\"\266\202\211\203\237W\203\237\315 \210\316\317	!\210)\320\321\322!\n\"\204h\323\306\"\210\202\231\313\225W\203x\313\225\324 }\210\202\231\325\224\203\224\325\224Y\203\224\325\225W\203\224\325\224\325\225}\210\202\231\323\306\"\210\326\262\202\267\327\267\202\262\330\211;\203\266\312\313#\266\202\202\276\314A@\"\266\202\211\203\311\331 U\204\321\323\306\"\210\202\370\315 \210\332\324 \"\210\313\224b\210`Y\203\363\313\225W\203\363`\313\225}\210\202\370\323\306\"\210\210\202\267\333\334\211;\203\312\313#\266\202\202\314A@\"\266\202b\210\317!\210\335\225\211\204+\323\306\"\210\202K\335\224b\210\317\f!\2039\313\225b\210`Y\203G\323\306\"\210\202K`}\210\210)\202\267\336\211;\203a\312\313#\266\202\202i\314A@\"\266\202\337\211;\203z\312\313#\266\202\202\202\314A@\"\266\202\203\247\211\203\247Y\203\247W\204\240U\203\247m\203\247}\210\202\255\323\306\"\210\266\202\267\323\306\"\210eb\210\2119\203\304\211\202\337\211\211:\204\325\211;\205\335\310\262\202\337\211@9\205\335\211@\262
\236A\262\333\3402(\341!\211\203\211\342;\203\343\333$\266\203\202A\344A@#\240\210\266\203\210\211\2036\334\211;\203(\312\313#\266\202\2020\314A@\"\266\202V\203B\323\340\206=\"\210\202#\345\211;\203S\312\313#\266\202\202[\314A@\"\266\202\336\211;\203l\312\313#\266\202\202t\314A@\"\266\202\337\211;\203\205\312\313#\266\202\202\215\314A@\"\266\202X\203\262dU\204\262b\210U\203!`Sf\346>\204!\262\202!\203\211\203\nY\203\nW\204\343\nU\203dU\204\343\n\206\334`Sf\347>\204b\210`}\210\262\2119\203\367\211\202\211\211:\204\211;\205\310\262\202\211@9\205\211@\262
\236A\262\262\202!\323\340\"\210\266\210\202\3520\266\203\266\204*0\207" [case-fold-search org-element--affiliated-re org-element-parsed-keywords org-complex-heading-regexp org-comment-string org-element-object-restrictions objects-forbidden org-element-at-point plain-text :post-affiliated get-text-property 0 plist-get beginning-of-line t looking-at member-ignore-case match-string 1 throw line-end-position 2 keyword #s(hash-table size 6 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (item 165 headline 252 inlinetask 252 paragraph 336 table-row 336 verse-block 336)) :tag line-beginning-position search-forward nil :begin 4 :contents-begin :contents-end exit org-element--object-lex :parent org-add-props plist-put :end (32 9) (32 9)] 17 (#$ . 169809)])
#@652 List all ancestors of a given element or object.

DATUM is an object or element.

Return ancestors from the closest to the farthest.  When optional
argument TYPES is a list of symbols, return the first element or
object in the lineage whose type belongs to that list instead.

When optional argument WITH-SELF is non-nil, lineage includes
DATUM itself as the first element, and TYPES, if provided, also
apply to it.

When DATUM is obtained through `org-element-context' or
`org-element-at-point', only ancestors from its section can be
found.  There is no such limitation when DATUM belongs to a full
parse tree.

(fn DATUM &optional TYPES WITH-SELF)
(defalias 'org-element-lineage #[769 "\211\203\202!\300\211;\203\301\302#\266\202\202!\303A@\"\266\202\304\203m\211:\2047\211;\205?\305\262\202A\211@9\205?\211@\262>\204m\204OB\262\300\211;\203`\301\302#\266\202\202h\303A@\"\266\202\262\202\"\203u\202w\211\237\207" [:parent get-text-property 0 plist-get nil plain-text] 11 (#$ . 173244)])
#@73 Non-nil when elements ELEM-A and ELEM-B are nested.

(fn ELEM-A ELEM-B)
(defalias 'org-element-nested-p #[514 "\300\211;\203\301\302#\266\202\202\303A@\"\266\202\300\211;\203*\301\302#\266\202\2022\303A@\"\266\202\304\211;\203C\301\302#\266\202\202K\303A@\"\266\202\304\211;\203\\\301\302#\266\202\202d\303A@\"\266\202Y\203pX\206yY\205y\211X\207" [:begin get-text-property 0 plist-get :end] 11 (#$ . 174282)])
#@134 Swap elements ELEM-A and ELEM-B.
Assume ELEM-B is after ELEM-A in the buffer.  Leave point at the
end of ELEM-A.

(fn ELEM-A ELEM-B)
(defalias 'org-element-swap-A-B #[514 "\300\211;\203\301\302#\266\202\202\303A@\"\266\202b\210n?\211\203{\211:\2042\211;\205:\304\262\202<\211@9\205:\211@\262\305=\203w\300\211;\203R\301\302#\266\202\202Z\303A@\"\266\202\306\211;\203k\301\302#\266\202\202s\303A@\"\266\202U\204{\307\310!\210\211\205\234\300\211;\203\220\301\302#\266\202\202\230\303A@\"\266\202b\210\311 \300\211;\203\255\301\302#\266\202\202\265\303A@\"\266\202\212\312\211;\203\307\301\302#\266\202\202\317\303A@\"\266\202b\210\313\314x\210\315 )\300\211;\203\351\301\302#\266\202\202\361\303A@\"\266\202\212\312\211;\203\301\302#\266\202\202\f\303A@\"\266\202b\210\313\314x\210\315 )\316\314\317\320\321\322\323\324\"\325\"\326\327%\330\"\"\"\316\314\317\320\321\322\323\324\n\n\"\331\"\326\327%\330\"\"\"B{\332\"b\210\203d\333\334\335#\262j\210c\210Z@\211\203\212\211@\336@A@\\\3378\\#\210A\266\202\202m\210b\210|\210c\210A\211\203\267\211@\336@A@Z\3378Z#\210A\266\202\202\232\266\312\n\211;\203\313\301\302#\266\202\202\323\303A@\"\266\202b\266\210\207" [:begin get-text-property 0 plist-get plain-text paragraph :contents-begin error "Cannot swap elements" current-indentation :end " 
	\n" nil point-at-eol delq mapcar make-byte-code 257 "\302!\300Y\205\303!\301X\205\211\302!\303!E\207" vconcat vector [overlay-start overlay-end] 5 "\n\n(fn O)" overlays-in [overlay-start overlay-end] delete-and-extract-region replace-regexp-in-string "\\`[ 	]*" "" move-overlay 2] 19 (#$ . 174739)])
(provide 'org-element)

Zerion Mini Shell 1.0