? Fallagassrini

Fallagassrini Bypass Shell

echo"
Fallagassrini
";
Current Path : /usr/share/emacs/24.3/lisp/

Linux gator3171.hostgator.com 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64
Upload File :
Current File : //usr/share/emacs/24.3/lisp/allout.elc

;ELC
;;; Compiled by mockbuild@buildfarm06-new.corp.cloudlinux.com on Fri Oct 11 10:06:10 2024
;;; from file /builddir/build/BUILD/emacs-24.3/lisp/allout.el
;;; in Emacs version 24.3.1
;;; with all optimizations.

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

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

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


(byte-code "\300\301!\210\302\303\304\305\306\307\310\311&\210\302\312\304\313\310\303%\207" [require overlay custom-declare-group allout nil "Extensive outline minor-mode, for use stand-alone and with other modes.\n\nSee Allout Auto Activation for automatic activation." :prefix "allout-" :group outlines allout-keybindings "Allout outline mode keyboard bindings configuration."] 8)
#@212 Keybindings place-holder for (allout) outline minor mode.

Do NOT set the value of this variable.  Instead, customize
`allout-command-prefix', `allout-prefixed-keybindings', and
`allout-unprefixed-keybindings'.
(defvar allout-mode-map 'allout-mode-map (#$ . 935))
#@192 Keymap for allout outline minor mode.

Do NOT set the value of this variable.  Instead, customize
`allout-command-prefix', `allout-prefixed-keybindings', and
`allout-unprefixed-keybindings'.
(defvar allout-mode-map-value nil (#$ . 1206))
(defalias 'allout-mode-map allout-mode-map-value)
#@264 Create the allout keymap according to the keybinding specs, and set it.

Useful standalone or to effect customizations of the
respective allout-mode keybinding variables, `allout-command-prefix',
`allout-prefixed-keybindings', and `allout-unprefixed-keybindings'
(defalias 'allout-compose-and-institute-keymap #[(&optional varname value) "\203	\306	\"\210\307 \310\303!\2039\311\211\2038
@\312\n\313\314\f@!@\"\f\211A@)#\210
A\211\204*\310\315!\203c
\311\211\203b
@\312\n\314\f@!@\f\211A@)#\210
A\211\204H*\316\317\320\n$\210\316\321\320\n$\210\316\322\323\n$\210\316\324\323\n$\210\325\n!)\207" [varname value map allout-prefixed-keybindings entry --dolist-tail-- set-default make-sparse-keymap boundp nil define-key vconcat read-from-string allout-unprefixed-keybindings substitute-key-definition beginning-of-line allout-beginning-of-line move-beginning-of-line end-of-line allout-end-of-line move-end-of-line allout-institute-keymap allout-command-prefix x global-map] 7 (#$ . 1501)])
#@61 Associate allout-mode bindings with allout as a minor mode.
(defalias 'allout-institute-keymap #[(map) "\n	M\207" [map allout-mode-map-value allout-mode-map] 2 (#$ . 2531)])
(byte-code "\300 \210\301\302\303\304\305\306\307\310\311\300&	\210\312\313\314\315\305\316%\210\301\317\320\321\322\323\305\313\307\310\311\300&\210\301\324\325\326\322\323\305\313\307\310\311\300&\207" [allout-compose-and-institute-keymap custom-declare-variable allout-command-prefix " " "Key sequence to be used as prefix for outline mode command key bindings.\n\nDefault is '<space>'; just '' is more short-and-sweet, if you're\nwilling to let allout use a bunch of  keybindings." :type string :group allout-keybindings :set define-widget allout-keybindings-binding lazy "Structure of allout keybindings customization items." (repeat (list (string :tag "Key" :value "[(meta control shift ?f)]") (function :tag "Function name" :value allout-forward-current-level))) allout-prefixed-keybindings '(("[(control ?n)]" allout-next-visible-heading) ("[(control ?p)]" allout-previous-visible-heading) ("[(control ?u)]" allout-up-current-level) ("[(control ?f)]" allout-forward-current-level) ("[(control ?b)]" allout-backward-current-level) ("[(control ?a)]" allout-beginning-of-current-entry) ("[(control ?e)]" allout-end-of-entry) ("[(control ?i)]" allout-show-children) ("[(control ?s)]" allout-show-current-subtree) ("[(control ?t)]" allout-toggle-current-subtree-exposure) ("[?h]" allout-hide-current-subtree) ("[(control ?o)]" allout-show-current-entry) ("[?!]" allout-show-all) ("[?x]" allout-toggle-current-subtree-encryption) ("[? ]" allout-open-sibtopic) ("[?.]" allout-open-subtopic) ("[?,]" allout-open-supertopic) ("[?']" allout-shift-in) ("[?>]" allout-shift-in) ("[?<]" allout-shift-out) ("[(control ?m)]" allout-rebullet-topic) ("[?*]" allout-rebullet-current-heading) ("[?#]" allout-number-siblings) ("[(control ?k)]" allout-kill-topic) ("[(meta ?k)]" allout-copy-topic-as-kill) ("[?@]" allout-resolve-xref) ("[?=?c]" allout-copy-exposed-to-buffer) ("[?=?i]" allout-indented-exposed-to-buffer) ("[?=?t]" allout-latexify-exposed) ("[?=?p]" allout-flatten-exposed-to-buffer)) "Allout-mode key bindings that are prefixed with `allout-command-prefix'.\n\nSee `allout-unprefixed-keybindings' for the list of keybindings\nthat are not prefixed.\n\nUse vector format for the keys:\n  - put literal keys after a '?' question mark, eg: '?a', '?.'\n  - enclose control, shift, or meta-modified keys as sequences within\n    parentheses, with the literal key, as above, preceded by the name(s)\n    of the modifiers, eg: [(control ?a)]\nSee the existing keys for examples.\n\nFunctions can be bound to multiple keys, but binding keys to\nmultiple functions will not work - the last binding for a key\nprevails." :version "24.1" allout-unprefixed-keybindings '(("[(control ?k)]" allout-kill-line) ("[(meta ?k)]" allout-copy-line-as-kill) ("[(control ?y)]" allout-yank) ("[(meta ?y)]" allout-yank-pop)) "Allout-mode functions bound to keys without any added prefix.\n\nThis is in contrast to the majority of allout-mode bindings on\n`allout-prefixed-bindings', whose bindings are created with a\npreceding command key.\n\nUse vector format for the keys:\n  - put literal keys after a '?' question mark, eg: '?a', '?.'\n  - enclose control, shift, or meta-modified keys as sequences within\n    parentheses, with the literal key, as above, preceded by the name(s)\n    of the modifiers, eg: [(control ?a)]\nSee the existing keys for examples."] 12)
#@105 Institute `allout-auto-activation'.

Intended to be used as the `allout-auto-activation' :set function.
(defalias 'allout-auto-activation-helper #[(var value) "\302	\"\210\303 \207" [var value set-default allout-setup] 3 (#$ . 6069)])
#@273 Do fundamental Emacs session for allout auto-activation.

Establishes allout processing as part of visiting a file if
`allout-auto-activation' is non-nil, or removes it otherwise.

The proper way to use this is through customizing the setting of
`allout-auto-activation'.
(defalias 'allout-setup #[nil "\204	\301\302\303\"\207\304\302\303\"\207" [allout-auto-activation remove-hook find-file-hook allout-find-file-hook add-hook] 3 (#$ . 6312)])
(byte-code "\300\301\302\303\304\305\306\307\310\311&	\210\312 \210\300\313\314\315\306\316\310\311&\210\317\316\320\321\306\322%\210\300\323\302\324\306\325\310\311&\210\326\323!\210\300\327\302\330\331\332\306\325\310\311&	\210\326\327!\210\300\333\334\335\306\325\310\311&\210\326\333!\210\336\333\337\340\341!\203_\341\202`\342#\210\300\343\344\345\306\346\310\311&\210\326\343!\210\336\343\337\347#\210\300\350\302\351\306\325\310\311&\210\326\350!\210\336\350\337\340\341!\203\223\341\202\224\352#\210\300\353\334\354\306\325\310\311&\210\300\355\334\356\306\325\310\311&\210\300\357\360\361\306\362\310\311&\210\326\357!\210\336\357\337\363#\210\300\364\365\366\306\362\310\311&\210\326\364!\210\336\364\337\363#\210\300\367\370\371\306\362\310\311&\210\326\367!\210\336\367\337\363#\210\300\372\373\374\306\362\310\311&\210\326\372!\210\336\372\337\363#\210\300\375\334\376\306\377\310\311&\210\336\375\337\201@#\207" [custom-declare-variable allout-auto-activation nil "Configure allout outline mode auto-activation.\n\nControl whether and how allout outline mode is automatically\nactivated when files are visited with non-nil buffer-specific\nfile variable `allout-layout'.\n\nWhen allout-auto-activation is \"On\" (t), allout mode is\nactivated in buffers with non-nil `allout-layout', and the\nspecified layout is applied.\n\nWith value \"ask\", auto-mode-activation is enabled, and endorsement for\nperforming auto-layout is asked of the user each time.\n\nWith value \"activate\", only auto-mode-activation is enabled.\nAuto-layout is not.\n\nWith value nil, inhibit any automatic allout-mode activation." :set allout-auto-activation-helper :type (choice (const :tag "On" t) (const :tag "Ask about layout" "ask") (const :tag "Mode only" "activate") (const :tag "Off" nil)) :group allout allout-setup allout-default-layout '(-2 : 0) "Default allout outline layout specification.\n\nThis setting specifies the outline exposure to use when\n`allout-layout' has the local value `t'.  This docstring describes the\nlayout specifications.\n\nA list value specifies a default layout for the current buffer,\nto be applied upon activation of `allout-mode'.  Any non-nil\nvalue will automatically trigger `allout-mode', provided\n`allout-auto-activation' has been customized to enable it.\n\nThe types of elements in the layout specification are:\n\n INTEGER -- dictate the relative depth to open the corresponding topic(s),\n            where:\n         -- negative numbers force the topic to be closed before opening\n            to the absolute value of the number, so all siblings are open\n            only to that level.\n         -- positive numbers open to the relative depth indicated by the\n            number, but do not force already opened subtopics to be closed.\n         -- 0 means to close topic -- hide all subitems.\n :   -- repeat spec -- apply the preceding element to all siblings at\n        current level, *up to* those siblings that would be covered by specs\n        following the `:' on the list.  Ie, apply to all topics at level but\n        trailing ones accounted for by trailing specs.  (Only the first of\n        multiple colons at the same level is honored -- later ones are ignored.)\n *   -- completely exposes the topic, including bodies\n +   -- exposes all subtopics, but not the bodies\n -   -- exposes the body of the corresponding topic, but not subtopics\n LIST -- a nested layout spec, to be applied intricately to its\n        corresponding item(s)\n\nExamples:\n (-2 : 0)\n	Collapse the top-level topics to show their children and\n        grandchildren, but completely collapse the final top-level topic.\n (-1 () : 1 0)\n	Close the first topic so only the immediate subtopics are shown,\n        leave the subsequent topics exposed as they are until the second\n	second to last topic, which is exposed at least one level, and\n        completely close the last topic.\n (-2 : -1 *)\n        Expose children and grandchildren of all topics at current\n	level except the last two; expose children of the second to\n	last and completely expose the last one, including its subtopics.\n\nSee `allout-expose-topic' for more about the exposure process.\n\nAlso, allout's mode-specific provisions will make topic prefixes default\nto the comment-start string, if any, of the language of the file.  This\nis modulo the setting of `allout-use-mode-specific-leader', which see." allout-layout-type define-widget lazy "Allout layout format customization basic building blocks." (repeat (choice (integer :tag "integer (<= zero is strict)") (const :tag ": (repeat prior)" :) (const :tag "* (completely expose)" *) (const :tag "+ (expose all offspring, headlines only)" +) (const :tag "- (expose topic body but not offspring)" -) (allout-layout-type :tag "<Nested layout>"))) allout-inhibit-auto-fill "If non-nil, auto-fill will be inhibited in the allout buffers.\n\nYou can customize this setting to set it for all allout buffers, or set it\nin individual buffers if you want to inhibit auto-fill only in particular\nbuffers.  (You could use a function on `allout-mode-hook' to inhibit\nauto-fill according, eg, to the major mode.)\n\nIf you don't set this and auto-fill-mode is enabled, allout will use the\nvalue that `normal-auto-fill-function', if any, when allout mode starts, or\nelse allout's special hanging-indent maintaining auto-fill function,\n`allout-auto-fill'." boolean make-variable-buffer-local allout-inhibit-auto-fill-on-headline "If non-nil, auto-fill will be inhibited while on topic's header line." :version "24.1" allout-use-hanging-indents t "If non-nil, topic body text auto-indent defaults to indent of the header.\nIe, it is indented to be just past the header prefix.  This is\nrelevant mostly for use with `indented-text-mode', or other situations\nwhere auto-fill occurs." put safe-local-variable fboundp booleanp #[(x) "\301\235\207" [x (t nil)] 2] allout-reindent-bodies (if allout-use-hanging-indents 'text) "Non-nil enables auto-adjust of topic body hanging indent with depth shifts.\n\nWhen active, topic body lines that are indented even with or beyond\ntheir topic header are reindented to correspond with depth shifts of\nthe header.\n\nA value of t enables reindent in non-programming-code buffers, ie\nthose that do not have the variable `comment-start' set.  A value of\n`force' enables reindent whether or not `comment-start' is set." (choice (const nil) (const t) (const text) (const force)) #[(x) "\301>\207" [x (nil t text force)] 2] allout-show-bodies "If non-nil, show entire body when exposing a topic, rather than\njust the header." #[(x) "\301\235\207" [x (t nil)] 2] allout-beginning-of-line-cycles "If non-nil, \\[allout-beginning-of-line] will cycle through smart-placement options.\n\nCycling only happens on when the command is repeated, not when it\nfollows a different command.\n\nSmart-placement means that repeated calls to this function will\nadvance as follows:\n\n - if the cursor is on a non-headline body line and not on the first column:\n   then it goes to the first column\n - if the cursor is on the first column of a non-headline body line:\n   then it goes to the start of the headline within the item body\n - if the cursor is on the headline and not the start of the headline:\n   then it goes to the start of the headline\n - if the cursor is on the start of the headline:\n   then it goes to the bullet character (for hotspot navigation)\n - if the cursor is on the bullet character:\n   then it goes to the first column of that line (the headline)\n - if the cursor is on the first column of the headline:\n   then it goes to the start of the headline within the item body.\n\nIn this fashion, you can use the beginning-of-line command to do\nits normal job and then, when repeated, advance through the\nentry, cycling back to start.\n\nIf this configuration variable is nil, then the cursor is just\nadvanced to the beginning of the line and remains there on\nrepeated calls." allout-end-of-line-cycles "If non-nil, \\[allout-end-of-line] will cycle through smart-placement options.\n\nCycling only happens on when the command is repeated, not when it\nfollows a different command.\n\nSmart placement means that repeated calls to this function will\nadvance as follows:\n\n - if the cursor is not on the end-of-line,\n   then it goes to the end-of-line\n - if the cursor is on the end-of-line but not the end-of-entry,\n   then it goes to the end-of-entry, exposing it if necessary\n - if the cursor is on the end-of-entry,\n   then it goes to the end of the head line\n\nIn this fashion, you can use the end-of-line command to do its\nnormal job and then, when repeated, advance through the entry,\ncycling back to start.\n\nIf this configuration variable is nil, then the cursor is just\nadvanced to the end of the line and remains there on repeated\ncalls." allout-header-prefix "." "Leading string which helps distinguish topic headers.\n\nOutline topic header lines are identified by a leading topic\nheader prefix, which mostly have the value of this var at their front.\nLevel 1 topics are exceptions.  They consist of only a single\ncharacter, which is typically set to the `allout-primary-bullet'." string stringp allout-primary-bullet "*" "Bullet used for top-level outline topics.\n\nOutline topic header lines are identified by a leading topic header\nprefix, which is concluded by bullets that includes the value of this\nvar and the respective allout-*-bullets-string vars.\n\nThe value of an asterisk (`*') provides for backwards compatibility\nwith the original Emacs outline mode.  See `allout-plain-bullets-string'\nand `allout-distinctive-bullets-string' for the range of available\nbullets." allout-plain-bullets-string ".," "The bullets normally used in outline topic prefixes.\n\nSee `allout-distinctive-bullets-string' for the other kind of\nbullets.\n\nDO NOT include the close-square-bracket, `]', as a bullet.\n\nOutline mode has to be reactivated in order for changes to the value\nof this var to take effect." allout-distinctive-bullets-string "*+-=>()[{}&!?#%\"X@$~_\\:;^" "Persistent outline header bullets used to distinguish special topics.\n\nThese bullets are distinguish topics with particular character.\nThey are not used by default in the topic creation routines, but\nare offered as options when you modify topic creation with a\nuniversal argument (\\[universal-argument]), or during rebulleting (\\[allout-rebullet-current-heading]).\n\nDistinctive bullets are not cycled when topics are shifted or\notherwise automatically rebulleted, so their marking is\npersistent until deliberately changed.  Their significance is\npurely by convention, however.  Some conventions suggest\nthemselves:\n\n `(' - open paren -- an aside or incidental point\n `?' - question mark -- uncertain or outright question\n `!' - exclamation point/bang -- emphatic\n `[' - open square bracket -- meta-note, about item instead of item's subject\n `\"' - double quote -- a quotation or other citation\n `=' - equal sign -- an assignment, some kind of definition\n `^' - carat -- relates to something above\n\nSome are more elusive, but their rationale may be recognizable:\n\n `+' - plus -- pending consideration, completion\n `_' - underscore -- done, completed\n `&' - ampersand -- addendum, furthermore\n\n(Some other non-plain bullets have special meaning to the\nsoftware.  By default:\n\n `~' marks encryptable topics -- see `allout-topic-encryption-bullet'\n `#' marks auto-numbered bullets -- see `allout-numbered-bullet'.)\n\nSee `allout-plain-bullets-string' for the standard, alternating\nbullets.\n\nYou must run `set-allout-regexp' in order for outline mode to\nadopt changes of this value.\n\nDO NOT include the close-square-bracket, `]', on either of the bullet\nstrings." allout-use-mode-specific-leader "When non-nil, use mode-specific topic-header prefixes.\n\nAllout outline mode will use the mode-specific `allout-mode-leaders' or\ncomment-start string, if any, to lead the topic prefix string, so topic\nheaders look like comments in the programming language.  It will also use\nthe comment-start string, with an '_' appended, for `allout-primary-bullet'.\n\nString values are used as literals, not regular expressions, so\ndo not escape any regular-expression characters.\n\nValue t means to first check for assoc value in `allout-mode-leaders'\nalist, then use comment-start string, if any, then use default (`.').\n(See note about use of comment-start strings, below.)\n\nSet to the symbol for either of `allout-mode-leaders' or\n`comment-start' to use only one of them, respectively.\n\nValue nil means to always use the default (`.') and leave\n`allout-primary-bullet' unaltered.\n\ncomment-start strings that do not end in spaces are tripled in\nthe header-prefix, and an `_' underscore is tacked on the end, to\ndistinguish them from regular comment strings.  comment-start\nstrings that do end in spaces are not tripled, but an underscore\nis substituted for the space.  [This presumes that the space is\nfor appearance, not comment syntax.  You can use\n`allout-mode-leaders' to override this behavior, when\nundesired.]" (choice (const t) (const nil) string (const allout-mode-leaders) (const comment-start)) #[(x) "\301>\206;\207" [x (t nil allout-mode-leaders comment-start)] 2]] 10)
#@482 Specific allout-prefix leading strings per major modes.

Use this if the mode's comment-start string isn't what you
prefer, or if the mode lacks a comment-start string.  See
`allout-use-mode-specific-leader' for more details.

If you're constructing a string that will comment-out outline
structuring so it can be included in program code, append an extra
character, like an "_" underscore, to distinguish the lead string
from regular comments that start at the beginning-of-line.
(defvar allout-mode-leaders nil (#$ . 20142))
(byte-code "\302\303\304\305\306\307\310\311&\210\312\303!\210\313\303\314\315\316!\203\316\202\317#\210\302\320\321\322\306\307\310\311&\210\312\320!\210\313\320\314\315\316!\203;\316\202<\323#\210\302\324\325\326\306\327\310\311&\210\312\324!\210\313\324\314\315\330!\203Z\330\202[\331#\210\302\332\333\334\306\335\310\311&\210\313\332\314\315\330!\203u\330\202v\336#\210\302\337\340\341\306\342\310\311&\210\312\337!\210\313\337\314\343#\210\344\345\346\304#\210\347\304\211\203\271	@\345N\203\262\346N\204\262\313\346\345N#\210	A\211\204\233*\350\345\346\351#\210\302\346\304\352\353\351\306\307\310\311&	\210\302\354\304\355\306\307\310\311&\210\302\356\357\360\306\361\310\311&\210\302\362\363\364\306\361\310\311&\210\302\365\366\364\306\361\310\311&\210\302\367\370\371\306\361\310\311&\210\302\372\373\374\306\375\310\311&\210\302\376\377\201@\306\361\310\311&\210\302\201A\201B\201C\306\361\310\311&\210\201D\201E\304\201F\310\311%\210\302\201G\201H\201I\306\201J\353\201K\310\201E&	\210\302\201L\321\201M\306\307\353\201N\310\201E&	\210\312\201L!\207" [prop --dolist-tail-- custom-declare-variable allout-old-style-prefixes nil "When non-nil, use only old-and-crusty `outline-mode' `*' topic prefixes.\n\nNon-nil restricts the topic creation and modification\nfunctions to asterix-padded prefixes, so they look exactly\nlike the original Emacs-outline style prefixes.\n\nWhatever the setting of this variable, both old and new style prefixes\nare always respected by the topic maneuvering functions." :type boolean :group allout make-variable-buffer-local put safe-local-variable fboundp booleanp #[(x) "\301\235\207" [x (t nil)] 2] allout-stylish-prefixes t "Do fancy stuff with topic prefix bullets according to level, etc.\n\nNon-nil enables topic creation, modification, and repositioning\nfunctions to vary the topic bullet char (the char that marks the topic\ndepth) just preceding the start of the topic text) according to level.\nOtherwise, only asterisks (`*') and distinctive bullets are used.\n\nThis is how an outline can look (but sans indentation) with stylish\nprefixes:\n\n    * Top level\n    .* A topic\n    . + One level 3 subtopic\n    .  . One level 4 subtopic\n    .  . A second 4 subtopic\n    . + Another level 3 subtopic\n    .  #1 A numbered level 4 subtopic\n    .  #2 Another\n    .  ! Another level 4 subtopic with a different distinctive bullet\n    .  #4 And another numbered level 4 subtopic\n\nThis would be an outline with stylish prefixes inhibited (but the\nnumbered and other distinctive bullets retained):\n\n    * Top level\n    .* A topic\n    . * One level 3 subtopic\n    .  * One level 4 subtopic\n    .  * A second 4 subtopic\n    . * Another level 3 subtopic\n    .  #1 A numbered level 4 subtopic\n    .  #2 Another\n    .  ! Another level 4 subtopic with a different distinctive bullet\n    .  #4 And another numbered level 4 subtopic\n\nStylish and constant prefixes (as well as old-style prefixes) are\nalways respected by the topic maneuvering functions, regardless of\nthis variable setting.\n\nThe setting of this var is not relevant when `allout-old-style-prefixes'\nis non-nil." #[(x) "\301\235\207" [x (t nil)] 2] allout-numbered-bullet "#" "String designating bullet of topics that have auto-numbering; nil for none.\n\nTopics having this bullet have automatic maintenance of a sibling\nsequence-number tacked on, just after the bullet.  Conventionally set\nto \"#\", you can set it to a bullet of your choice.  A nil value\ndisables numbering maintenance." (choice (const nil) string) string-or-null-p #[(x) ";\206?\207" [x] 1] allout-file-xref-bullet "@" "Bullet signifying file cross-references, for `allout-resolve-xref'.\n\nSet this var to the bullet you want to use for file cross-references." (choice (const nil) string) #[(x) ";\206?\207" [x] 1] allout-presentation-padding 2 "Presentation-format white-space padding factor, for greater indent." integer integerp defvaralias allout-abbreviate-flattened-numbering allout-flattened-numbering-abbreviation (saved-value saved-variable-comment) make-obsolete-variable "24.1" "If non-nil, `allout-flatten-exposed-to-buffer' abbreviates topic\nnumbers to minimal amount with some context.  Otherwise, entire\nnumbers are always used." :version allout-number-pages "Non-nil turns on page numbering for LaTeX formatting of an outline." allout-label-style "\\large\\bf" "Font and size of labels for LaTeX formatting of an outline." string allout-head-line-style "\\large\\sl " "Font and size of entries for LaTeX formatting of an outline." allout-body-line-style " " allout-title-style "\\Large\\bf" "Font and size of titles for LaTeX formatting of an outline." allout-title '(or buffer-file-name (buffer-name)) "Expression to be evaluated to determine the title for LaTeX\nformatted copy." sexp allout-line-skip ".05cm" "Space between lines for LaTeX formatting of an outline." allout-indent ".3cm" "LaTeX formatted depth-indent spacing." custom-declare-group allout-encryption "Settings for topic encryption features of allout outliner." allout-topic-encryption-bullet "~" "Bullet signifying encryption of the entry's body." (choice (const nil) string) "22.1" allout-encrypt-unencrypted-on-saves "If non-nil, topics pending encryption are encrypted during buffer saves.\n\nThis prevents file-system exposure of un-encrypted contents of\nitems marked for encryption.\n\nWhen non-nil, if the topic currently being edited is decrypted,\nit will be encrypted for saving but automatically decrypted\nbefore any subsequent user interaction, so it is once again clear\ntext for editing though the file system copy is encrypted.\n\n(Auto-saves are handled differently.  Buffers with plain-text\nexposed encrypted topics are exempted from auto saves until all\nsuch topics are encrypted.)" "23.1"] 11)
#@189 True while topic encryption is pending and auto-saving was active.

The value of `buffer-saved-size' at the time of decryption is used,
for restoring when all encryptions are established.
(defvar allout-auto-save-temporarily-disabled nil (#$ . 26549))
#@68 True just after undo commands, until allout-post-command-business.
(defvar allout-just-did-undo nil (#$ . 26807))
(byte-code "\300\301!\210\302\303\304\305\306\307%\210\310\311\304\312\313\314\306\303&\210\310\315\316\317\313\314\306\307&\210\300\315!\207" [make-variable-buffer-local allout-just-did-undo custom-declare-group allout-developer nil "Allout settings developers care about, including topic encryption and more." :group allout custom-declare-variable allout-run-unit-tests-on-load "When non-nil, unit tests will be run at end of loading the allout module.\n\nGenerally, allout code developers are the only ones who'll want to set this.\n\n(If set, this makes it an even better practice to exercise changes by\ndoing byte-compilation with a repeat count, so the file is loaded after\ncompilation.)\n\nSee `allout-run-unit-tests' to see what's run." :type boolean allout-enable-file-variable-adjustment t "If non-nil, some allout outline actions edit Emacs local file var text.\n\nThis can range from changes to existing entries, addition of new ones,\nand creation of a new local variables section when necessary.\n\nEmacs file variables adjustments are also inhibited if `enable-local-variables'\nis nil.\n\nOperations potentially causing edits include allout encryption routines.\nFor details, see `allout-toggle-current-subtree-encryption's docstring."] 8)
#@59 Version of currently loaded outline package.  (allout.el)
(defvar allout-version "2.3" (#$ . 28187))
#@54 Return string describing the loaded outline version.
(defalias 'allout-version #[(&optional here) "\303P\n\203	c\210\304\305	\"\210	)\207" [allout-version msg here "Allout Outline Mode v " message "%s"] 3 (#$ . 28294) "P"])
#@38 Allout outline mode minor-mode flag.
(defvar allout-mode nil (#$ . 28528))
(make-variable-buffer-local 'allout-mode)
#@1049 Buffer-specific setting for allout layout.

In buffers where this is non-nil (and if `allout-auto-activation'
has been customized to enable this behavior), `allout-mode' will be
automatically activated.  The layout dictated by the value will be used to
set the initial exposure when `allout-mode' is activated.

*You should not setq-default this variable non-nil unless you want every
visited file to be treated as an allout file.*

The value would typically be set by a file local variable.  For
example, the following lines at the bottom of an Emacs Lisp file:

;;;Local variables:
;;;allout-layout: (0 : -1 -1 0)
;;;End:

dictate activation of `allout-mode' mode when the file is visited
(presuming proper `allout-auto-activation' customization),
followed by the equivalent of `(allout-expose-topic 0 : -1 -1 0)'.
(This is the layout used for the allout.el source file.)

`allout-default-layout' describes the specification format.
`allout-layout' can additionally have the value `t', in which
case the value of `allout-default-layout' is used.
(defvar allout-layout nil (#$ . 28653))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local allout-layout put safe-local-variable #[(x) "\247\206
<\206
\301>\207" [x (: * + -)] 2]] 4)
#@215 Regular expression to match the beginning of a heading line.

Any line whose beginning matches this regexp is considered a
heading.  This var is set according to the user configuration vars
by `set-allout-regexp'.
(defvar allout-regexp "" (#$ . 29921))
(make-variable-buffer-local 'allout-regexp)
#@247 A string dictating the valid set of outline topic bullets.

This var should *not* be set by the user -- it is set by `set-allout-regexp',
and is produced from the elements of `allout-plain-bullets-string'
and `allout-distinctive-bullets-string'.
(defvar allout-bullets-string "" (#$ . 30225))
(make-variable-buffer-local 'allout-bullets-string)
#@59 Length of current buffers' `allout-plain-bullets-string'.
(defvar allout-bullets-string-len 0 (#$ . 30576))
(make-variable-buffer-local 'allout-bullets-string-len)
#@454 Regular expression to match a heading line prefix for a particular depth.

This expression is used to search for depth-specific topic
headers at depth 2 and greater.  Use `allout-depth-one-regexp'
for to seek topics at depth one.

This var is set according to the user configuration vars by
`set-allout-regexp'.  It is prepared with format strings for two
decimal numbers, which should each be one less than the depth of the
topic prefix to be matched.
(defvar allout-depth-specific-regexp "" (#$ . 30747))
(make-variable-buffer-local 'allout-depth-specific-regexp)
#@289 Regular expression to match a heading line prefix for depth one.

This var is set according to the user configuration vars by
`set-allout-regexp'.  It is prepared with format strings for two
decimal numbers, which should each be one less than the depth of the
topic prefix to be matched.
(defvar allout-depth-one-regexp "" (#$ . 31320))
(make-variable-buffer-local 'allout-depth-one-regexp)
#@111 `allout-regexp' prepended with a newline for the search target.

This is properly set by `set-allout-regexp'.
(defvar allout-line-boundary-regexp nil (#$ . 31718))
(make-variable-buffer-local 'allout-line-boundary-regexp)
#@73 Like `allout-line-boundary-regexp', for headers at beginning of buffer.
(defvar allout-bob-regexp nil (#$ . 31946))
(make-variable-buffer-local 'allout-bob-regexp)
#@69 Allout-header prefix length to subtract when computing topic depth.
(defvar allout-header-subtraction (byte-code "GS\207" [allout-header-prefix] 1) (#$ . 32116))
(make-variable-buffer-local 'allout-header-subtraction)
#@74 Length of `allout-plain-bullets-string', updated by `set-allout-regexp'.
(defvar allout-plain-bullets-string-len (length allout-plain-bullets-string) (#$ . 32341))
(make-variable-buffer-local 'allout-plain-bullets-string-len)
#@1272 Validate apparent topics of this depth and shallower as being non-aberrant.

Verified with `allout-aberrant-container-p'.  The usefulness of
this check is limited to shallow depths, because the
determination of aberrance is according to the mistaken item
being followed by a legitimate item of excessively greater depth.

The classic example of a mistaken item, for a standard allout
outline configuration, is a body line that begins with an '...'
ellipsis.  This happens to contain a legitimate depth-2 header
prefix, constituted by two '..' dots at the beginning of the
line.  The only thing that can distinguish it *in principle* from
a legitimate one is if the following real header is at a depth
that is discontinuous from the depth of 2 implied by the
ellipsis, ie depth 4 or more.  As the depth being tested gets
greater, the likelihood of this kind of disqualification is
lower, and the usefulness of this test is lower.

Extending the depth of the doublecheck increases the amount it is
applied, increasing the cost of the test - on casual estimation,
for outlines with many deep topics, geometrically (O(n)?).
Taken together with decreasing likelihood that the test will be
useful at greater depths, more modest doublecheck limits are more
suitably economical.
(defconst allout-doublecheck-at-and-shallower 3 (#$ . 32575))
#@58 Reset the leading string used to identify topic headers.
(defalias 'allout-reset-header-lead #[(header-lead) "\211GS\303 \207" [header-lead allout-header-prefix allout-header-subtraction set-allout-regexp] 2 (#$ . 33914) "sNew lead string: "])
#@165 Set the topic-header leading string to specified string.

Useful for encapsulating outline structure in programming
language comments.  Returns the leading string.
(defalias 'allout-lead-with-comment-string #[(&optional header-lead) ";\204	\302\303!\304\305!\210\207" [header-lead allout-reindent-bodies read-string "String prefix for topic headers: " nil allout-reset-header-lead] 2 (#$ . 34168) "P"])
#@326 Determine appropriate `allout-header-prefix' and `allout-primary-bullet'.

Works according to settings of:

       `comment-start'
       `allout-header-prefix' (default)
       `allout-use-mode-specific-leader'
and    `allout-mode-leaders'.

Apply this via (re)activation of `allout-mode', rather than
invoking it directly.
(defalias 'allout-infer-header-lead-and-primary-bullet #[nil "\306\300!\205;\204\307>\203\202\310\211\204\311\202W	;\203(	\202W	\312>\2035\n\236A\206W	\313>\205W\f\205W\f\211GS\311O\314\230\203Q\f\315\316O\202U\f\211\211Q\317P\211\205i
\204g
*\207" [allout-use-mode-specific-leader use-leader major-mode allout-mode-leaders comment-start leader boundp (allout-mode-leaders comment-start t) t nil (t allout-mode-leaders) (t comment-start) " " 0 -1 "_" allout-header-prefix allout-old-style-prefixes allout-primary-bullet] 4 (#$ . 34584)])
(defalias 'allout-infer-header-lead 'allout-infer-header-lead-and-primary-bullet)
#@215 Determine proper setting for `allout-reindent-bodies'.

Depends on default setting of `allout-reindent-bodies' (which see)
and presence of setting for `comment-start', to tell whether the
file is programming code.
(defalias 'allout-infer-body-reindent #[nil "\205	\205\302=?\205\303\211\207" [allout-reindent-bodies comment-start force nil] 2 (#$ . 35571)])
#@223 Generate proper topic-header regexp form for outline functions.

Works with respect to `allout-plain-bullets-string' and
`allout-distinctive-bullets-string'.

Also refresh various data structures that hinge on the regexp.
(defalias 'set-allout-regexp #[nil "\306\307\310\311E\312\211\211\211\211\203P\313
@J\211G	W\203I\f	H\n\314=\2031\315\202@\n\316=\203;\306\202@\317\320\n!!P	T\211\202
A\211\204-G%&GS'\312\211\211()*\321\317&!\322\323\324\325\260*\321\317	!\326\317&!\325\327\330	\324\260	)\331(*\326)\326(\260+\332*\326\332)\326\332(\260,\333*\326\333)\326\333(\260-\334\321\211\335\317&!!\336\323\335!\324\325\313'W\203\317\306\202\353\337\335\317	!!\335\317	!!\335\317	!!\340\341\335	!\342\260\325\260.\334\321\211\317&!\343\344\324Q\325\313'W\203\306\202\326\317	!\341	\324\260\325\260	\211/+\207" [allout-bullets-string index cur-char cur-len cur-string strings "" allout-plain-bullets-string allout-distinctive-bullets-string allout-primary-bullet nil 0 45 "--" 93 regexp-quote char-to-string "\\(" "[ 	]*" "[" "]" "\\)" "\\|" "+" " ?[^" "\\(\f\\)" "\n" "\\`" "\\(^\\|\\`\\)" allout-format-quote " \\{%s\\}" "\\|\\(" "\\{%s\\}" "[^" "]\\)" " *" "[^ " allout-plain-bullets-string-len allout-header-prefix allout-header-subtraction formfeed-part old-part new-part allout-regexp allout-line-boundary-regexp allout-bob-regexp allout-depth-specific-regexp allout-depth-one-regexp] 18 (#$ . 35945) nil])
(defalias 'produce-allout-mode-menubar-entries #[nil "\301\302!\210\303\304!\210\305\306\307\310$\210\311\304!\210\305\312\313\314$\210\315\304!\210\305\316\317\320$\210\321\304!\210\305\322\323\324$\207" [allout-mode-map-value require easymenu (lambda (#1=#:def-tmp-var) (defvar allout-mode-exposure-menu #1# #2="Allout outline exposure menu.")) nil easy-menu-do-define allout-mode-exposure-menu #2# ("Exposure" ["Show Entry" allout-show-current-entry t] ["Show Children" allout-show-children t] ["Show Subtree" allout-show-current-subtree t] ["Hide Subtree" allout-hide-current-subtree t] ["Hide Leaves" allout-hide-current-leaves t] "----" ["Show All" allout-show-all t]) (lambda (#1#) (defvar allout-mode-editing-menu #1# #3="Allout outline editing menu.")) allout-mode-editing-menu #3# ("Headings" ["Open Sibling" allout-open-sibtopic t] ["Open Subtopic" allout-open-subtopic t] ["Open Supertopic" allout-open-supertopic t] "----" ["Shift Topic In" allout-shift-in t] ["Shift Topic Out" allout-shift-out t] ["Rebullet Topic" allout-rebullet-topic t] ["Rebullet Heading" allout-rebullet-current-heading t] ["Number Siblings" allout-number-siblings t] "----" ["Toggle Topic Encryption" allout-toggle-current-subtree-encryption (> (allout-current-depth) 1)]) (lambda (#1#) (defvar allout-mode-navigation-menu #1# #4="Allout outline navigation menu.")) allout-mode-navigation-menu #4# ("Navigation" ["Next Visible Heading" allout-next-visible-heading t] ["Previous Visible Heading" allout-previous-visible-heading t] "----" ["Up Level" allout-up-current-level t] ["Forward Current Level" allout-forward-current-level t] ["Backward Current Level" allout-backward-current-level t] "----" ["Beginning of Entry" allout-beginning-of-current-entry t] ["End of Entry" allout-end-of-entry t] ["End of Subtree" allout-end-of-current-subtree t]) (lambda (#1#) (defvar allout-mode-misc-menu #1# #5="Allout outlines miscellaneous bindings.")) allout-mode-misc-menu #5# ("Misc" ["Version" allout-version t] "----" ["Duplicate Exposed" allout-copy-exposed-to-buffer t] ["Duplicate Exposed, numbered" allout-flatten-exposed-to-buffer t] ["Duplicate Exposed, indented" allout-indented-exposed-to-buffer t] "----" ["Set Header Lead" allout-reset-header-lead t] ["Set New Exposure" allout-expose-topic t])] 5])
#@133 Internal `allout-mode' use; settings to be resumed on mode deactivation.

See `allout-add-resumptions' and `allout-do-resumptions'.
(defvar allout-mode-prior-settings nil (#$ . 39738))
(make-variable-buffer-local 'allout-mode-prior-settings)
#@1124 Set name/value PAIRS.

Old settings are preserved for later resumption using `allout-do-resumptions'.

The new values are set as a buffer local.  On resumption, the prior buffer
scope of the variable is restored along with its value.  If it was a void
buffer-local value, then it is left as nil on resumption.

The pairs are lists whose car is the name of the variable and car of the
cdr is the new value: '(some-var some-value)'.  The pairs can actually be
triples, where the third element qualifies the disposition of the setting,
as described further below.

If the optional third element is the symbol 'extend, then the new value
created by `cons'ing the second element of the pair onto the front of the
existing value.

If the optional third element is the symbol 'append, then the new value is
extended from the existing one by `append'ing a list containing the second
element of the pair onto the end of the existing value.

Extension, and resumptions in general, should not be used for hook
functions -- use the 'local mode of `add-hook' for that, instead.

The settings are stored on `allout-mode-prior-settings'.
(defalias 'allout-add-resumptions #[(&rest pairs) "\205\254\211A@\211@	\211A@)	G\306V\205	AA@\307\n9\2040\310\311\n\312\n!#\210\307\313\314\217\315\n\"\204\\\316\np\"\203Q\nDB\202\\\nCB\317\n!\210
\203\244
\320=\203}<\204s\310\321!\210\202\250\n\fBL\210\202\250
\322=\203\234<\204\220\310\323!\210\202\250\n\322\fC\"L\210\202\250\310\324
\"\210\202\250\n\fL\210-\202\207" [pairs pair name x value qualifier 2 nil error "Pair's name, %S, must be a symbol, not %s" type-of (symbol-value name) ((void-variable)) assoc local-variable-p make-local-variable extend "extension of non-list prior value attempted" append "appending of non-list prior value attempted" "unrecognized setting qualifier `%s' encountered" prior-value allout-mode-prior-settings] 6 (#$ . 39988)])
#@194 Resume all name/value settings registered by `allout-add-resumptions'.

This is used when concluding allout-mode, to resume selected variables to
their settings before allout-mode was started.
(defalias 'allout-do-resumptions #[nil "\205$\211A@\211@	A\211\204\304\n!\210\202 \n@L\210+\202\207" [allout-mode-prior-settings pair name value-cell kill-local-variable] 3 (#$ . 41934)])
#@61 Enable internal outline operations to alter invisible text.
(defalias 'allout-unprotected '(macro . #[(expr) "\301\302E\207" [expr let ((inhibit-read-only (if (not buffer-read-only) t)) (inhibit-field-text-motion t))] 3 (#$ . 42334)]))
#@35 Hook run when allout mode starts.
(defvar allout-mode-hook nil (#$ . 42577))
(byte-code "\302\303\304\305#\210\306\305\211\203,	@\303N\203%\304N\204%\307\304\303N#\210	A\211\204*\310\303\304\311#\207" [prop --dolist-tail-- defvaralias allout-mode-deactivate-hook allout-mode-off-hook nil (saved-value saved-variable-comment) put make-obsolete-variable "24.1"] 6)
#@33 Hook run when allout mode ends.
(defvar allout-mode-deactivate-hook nil (#$ . 42959))
#@59 Symbol for use as allout invisible-text overlay category.
(defvar allout-exposure-category nil (#$ . 43051))
(byte-code "\302\303\304\305#\210\306\305\211\203,	@\303N\203%\304N\204%\307\304\303N#\210	A\211\204*\310\303\304\311#\210\312\304\305\313\314\315\316\317\320\311&	\210\302\321\322\305#\210\306\305\211\203l	@\321N\203e\322N\204e\307\322\321N#\210	A\211\204N*\310\321\322\311#\210\312\322\305\323\314\315\316\317\320\311&	\210\302\324\325\305#\210\306\305\211\203\254	@\324N\203\245\325N\204\245\307\325\324N#\210	A\211\204\216*\310\324\325\311#\210\312\325\305\326\314\315\316\317\320\311&	\210\302\327\330\305#\210\306\305\211\203\354	@\327N\203\345\330N\204\345\307\330\327N#\210	A\211\204\316*\310\327\330\311#\210\312\330\305\331\314\315\316\317\320\311&	\210\312\332\305\333\314\315\316\317\320\311&	\210\312\334\305\335\314\315\316\317\320\311&	\207" [prop --dolist-tail-- defvaralias allout-exposure-change-hook allout-exposure-change-functions nil (saved-value saved-variable-comment) put make-obsolete-variable "24.3" custom-declare-variable "Abnormal hook run after allout outline subtree exposure changes.\nIt is run at the conclusion of `allout-flag-region'.\n\nFunctions on the hook must take three arguments:\n\n - FROM -- integer indicating the point at the start of the change.\n - TO -- integer indicating the point of the end of the change.\n - FLAG -- change mode: nil for exposure, otherwise concealment.\n\nThis hook might be invoked multiple times by a single command." :type hook :group allout :version allout-structure-added-hook allout-structure-added-functions "Abnormal hook run after adding items to an Allout outline.\nFunctions on the hook should take two arguments:\n\n - NEW-START -- integer indicating position of start of the first new item.\n - NEW-END -- integer indicating position of end of the last new item.\n\nThis hook might be invoked multiple times by a single command." allout-structure-deleted-hook allout-structure-deleted-functions "Abnormal hook run after deleting subtrees from an Allout outline.\nFunctions on the hook must take two arguments:\n\n - DEPTH -- integer indicating the depth of the subtree that was deleted.\n - REMOVED-FROM -- integer indicating the point where the subtree was removed.\n\nSome edits that remove or invalidate items may be missed by this hook:\nspecifically edits that native allout routines do not control.\n\nThis hook might be invoked multiple times by a single command." allout-structure-shifted-hook allout-structure-shifted-functions "Abnormal hook run after shifting items in an Allout outline.\nFunctions on the hook should take two arguments:\n\n - DEPTH-CHANGE -- integer indicating depth increase, negative for decrease\n - START -- integer indicating the start point of the shifted parent item.\n\nSome edits that shift items can be missed by this hook: specifically edits\nthat native allout routines do not control.\n\nThis hook might be invoked multiple times by a single command." allout-after-copy-or-kill-hook "Normal hook run after copying outline text.." allout-post-undo-hook "Normal hook run after undo activity.\nThe item that's current when the hook is run *may* be the one\nthat was affected by the undo.."] 11)
#@194 Value of `normal-auto-fill-function' outside of allout mode.

Used by `allout-auto-fill' to do the mandated `normal-auto-fill-function'
wrapped within allout's automatic `fill-prefix' setting.
(defvar allout-outside-normal-auto-fill-function nil (#$ . 46335))
(byte-code "\300\301!\210\302\303\304\"\207" [make-variable-buffer-local allout-outside-normal-auto-fill-function add-to-list desktop-minor-mode-handlers (allout-mode)] 3)
#@624 Setting used to test solicited encryption passphrases against the one
already associated with a file.

It consists of an encrypted random string useful only to verify that a
passphrase entered by the user is effective for decryption.  The passphrase
itself is *not* recorded in the file anywhere, and the encrypted contents
are random binary characters to avoid exposing greater susceptibility to
search attacks.

The verifier string is retained as an Emacs file variable, as well as in
the Emacs buffer state, if file variable adjustments are enabled.  See
`allout-enable-file-variable-adjustment' for details about that.
(defvar allout-passphrase-verifier-string nil (#$ . 46774))
(byte-code "\300\301!\210\302\301\211\303#\210\304\301\305\306#\207" [make-variable-buffer-local allout-passphrase-verifier-string make-obsolete-variable "23.3" put safe-local-variable stringp] 4)
#@380 Variable used to retain reminder string for file's encryption passphrase.

See the description of `allout-passphrase-hint-handling' for details about how
the reminder is deployed.

The hint is retained as an Emacs file variable, as well as in the Emacs buffer
state, if file variable adjustments are enabled.  See
`allout-enable-file-variable-adjustment' for details about that.
(defvar allout-passphrase-hint-string "" (#$ . 47661))
(byte-code "\300\301!\210\302\301\303\"\210\304\301\211\305#\210\306\301\307\310#\207" [make-variable-buffer-local allout-passphrase-hint-string set-default "" make-obsolete-variable "23.3" put safe-local-variable stringp] 4)
#@328 Internal variable, is nil or has the value of two points:

 - the location of a topic to be decrypted after saving is done
 - where to situate the cursor after the decryption is performed

This is used to decrypt the topic that was currently being edited, if it
was encrypted automatically as part of a file write or autosave.
(defvar allout-after-save-decrypt nil (#$ . 48328))
(make-variable-buffer-local 'allout-after-save-decrypt)
#@595 List of regexps whose matches are removed from plaintext before encryption.

This is for the sake of removing artifacts, like escapes, that are added on
and not actually part of the original plaintext.  The removal is done just
prior to encryption.

Entries must be symbols that are bound to the desired values.

Each value can be a regexp or a list with a regexp followed by a
substitution string.  If it's just a regexp, all its matches are removed
before the text is encrypted.  If it's a regexp and a substitution, the
substitution is used against the regexp matches, a la `replace-match'.
(defvar allout-encryption-plaintext-sanitization-regexps nil (#$ . 48770))
(make-variable-buffer-local 'allout-encryption-text-removal-regexps)
#@427 Variable for regexps matching plaintext to remove before encryption.

This is used to detect strings in encryption results that would
register as allout mode structural elements, for example, as a
topic prefix.

Entries must be symbols that are bound to the desired regexp values.

Encryptions that result in matches will be retried, up to
`allout-encryption-ciphertext-rejection-limit' times, after which
an error is raised.
(defvar allout-encryption-ciphertext-rejection-regexps nil (#$ . 49515))
(make-variable-buffer-local 'allout-encryption-ciphertext-rejection-regexps)
#@138 Limit on number of times encryption ciphertext is rejected.

See `allout-encryption-ciphertext-rejection-regexps' for rejection reasons.
(defvar allout-encryption-ciphertext-rejection-ceiling 5 (#$ . 50098))
(make-variable-buffer-local 'allout-encryption-ciphertext-rejection-ceiling)
#@56 Return t if `allout-mode' is active in current buffer.
(defalias 'allout-mode-p '(macro . #[nil "\300\207" [allout-mode] 1 (#$ . 50389)]))
#@396 Implement `allout-encrypt-unencrypted-on-saves' for file writes

Return nil if all goes smoothly, or else return an informative
message if an error is encountered.  The message will serve as a
non-nil return on `write-contents-functions' to prevent saving of
the buffer while it has decrypted content.

This behavior depends on Emacs versions that implement the
`write-contents-functions' hook.
(defalias 'allout-write-contents-hook-handler #[nil "?\206\302\301!?\206	??\205(\212eb\210\303 )\205(\304\305!\210\306\307!\210\310\311\312\217\207" [allout-mode allout-encrypt-unencrypted-on-saves boundp allout-next-topic-pending-encryption message "auto-encrypting pending topics" sit-for 0 failure (byte-code "\301 \302\207" [allout-after-save-decrypt allout-encrypt-decrypted nil] 1) ((error (byte-code "\302\303\304p!#\305	!\210\306\307!\210	)\207" [failure text format "%s contents write inhibited due to encrypted topic encryption error: %s" buffer-name message sit-for 2] 4)))] 3 (#$ . 50535)])
#@286 Decrypt topic encrypted for save, if it's currently being edited.

Ie, if it was pending encryption and contained the point in its body before
the save.

We use values stored in `allout-after-save-decrypt' to locate the topic
and the place for the cursor after the decryption is done.
(defalias 'allout-after-saves-handler #[nil "\203\304\301!\203	\204\305\207	@b\210\306 \307 \210\n\204\"\310\311!\210)	\211A@)b\210\311\211\207" [allout-mode allout-after-save-decrypt was-modified x boundp t buffer-modified-p allout-toggle-subtree-encryption set-buffer-modified-p nil] 3 (#$ . 51550)])
#@69 A version of `called-interactively-p' independent of Emacs version.
(defalias 'allout-called-interactively-p '(macro . #[nil "\300\301K!\302\232\203\303\207\304\207" [subr-arity called-interactively-p (0 . 0) (called-interactively-p) (called-interactively-p 'interactive)] 2 (#$ . 52155)]))
#@151 Internal state, for momentarily inhibits aberrance doublecheck.

This should only be momentarily let-bound non-nil, not set
non-nil in a lasting way.
(defvar allout-inhibit-aberrance-doublecheck nil (#$ . 52455))
#@118 If t, `allout-mode's last deactivation was deliberate.
So `allout-post-command-business' should not reactivate it...
(defvar allout-explicitly-deactivated nil (#$ . 52675))
(make-variable-buffer-local 'allout-explicitly-deactivated)
#@254 DEPRECATED - configure allout activation by customizing
`allout-auto-activation'.  This function remains around, limited
from what it did before, for backwards compatibility.

MODE is the activation mode - see `allout-auto-activation' for
valid values.
(defalias 'allout-init #[(mode) "\301\302\303\304\"D!\210\303\304\"\207" [mode custom-set-variables allout-auto-activation format "%s"] 5 (#$ . 52915)])
(make-obsolete 'allout-init 'allout-auto-activation "23.3")
#@65 Populate the current buffer's menubar with `allout-mode' stuff.
(defalias 'allout-setup-menubar #[nil "	\nF\306
\205
@
A\307\f!\210\202*\207" [allout-mode-exposure-menu allout-mode-editing-menu allout-mode-navigation-menu allout-mode-misc-menu cur menus nil easy-menu-add] 4 (#$ . 53389)])
#@69 Set the properties of the allout invisible-text overlay and others.
(defalias 'allout-overlay-preparations #[nil "\300\301\302\"\210\303\301\304\305#\210\303\301\306\307#\210\303\301\310\311#\210\303\301\312\313#\210\303\301\314\315#\207" [setplist allout-exposure-category nil put invisible allout evaporate t isearch-open-invisible allout-isearch-end-handler insert-in-front-hooks (allout-overlay-insert-in-front-handler) modification-hooks (allout-overlay-interior-modification-handler)] 4 (#$ . 53695)])
#@91 Non-nil if Allout mode is enabled.
Use the command `allout-mode' to change this variable.
(defvar allout-mode nil (#$ . 54209))
(make-variable-buffer-local 'allout-mode)
#@12876 Toggle Allout outline mode.
With a prefix argument ARG, enable Allout outline mode if ARG is
positive, and disable it otherwise.  If called from Lisp, enable
the mode if ARG is omitted or nil.

\<allout-mode-map-value>
Allout outline mode is a minor mode that provides extensive
outline oriented formatting and manipulation.  It enables
structural editing of outlines, as well as navigation and
exposure.  It also is specifically aimed at accommodating
syntax-sensitive text like programming languages.  (For example,
see the allout code itself, which is organized as an allout
outline.)

In addition to typical outline navigation and exposure, allout includes:

 - topic-oriented authoring, including keystroke-based topic creation,
   repositioning, promotion/demotion, cut, and paste
 - incremental search with dynamic exposure and reconcealment of hidden text
 - adjustable format, so programming code can be developed in outline-structure
 - easy topic encryption and decryption, symmetric or key-pair
 - "Hot-spot" operation, for single-keystroke maneuvering and exposure control
 - integral outline layout, for automatic initial exposure when visiting a file
 - independent extensibility, using comprehensive exposure and authoring hooks

and many other features.

Below is a description of the key bindings, and then description
of special `allout-mode' features and terminology.  See also the
outline menubar additions for quick reference to many of the
features.  Customize `allout-auto-activation' to prepare your
Emacs session for automatic activation of `allout-mode'.

The bindings are those listed in `allout-prefixed-keybindings'
and `allout-unprefixed-keybindings'.  We recommend customizing
`allout-command-prefix' to use just `\C-c' as the command
prefix, if the allout bindings don't conflict with any personal
bindings you have on \C-c.  In any case, outline structure
navigation and authoring is simplified by positioning the cursor
on an item's bullet character, the "hot-spot" -- then you can
invoke allout commands with just the un-prefixed,
un-control-shifted command letters.  This is described further in
the HOT-SPOT Operation section.

        Exposure Control:
        ----------------
\[allout-hide-current-subtree]   `allout-hide-current-subtree'
\[allout-show-children] `allout-show-children'
\[allout-show-current-subtree] `allout-show-current-subtree'
\[allout-show-current-entry] `allout-show-current-entry'
\[allout-show-all]   `allout-show-all'

        Navigation:
        ----------
\[allout-next-visible-heading] `allout-next-visible-heading'
\[allout-previous-visible-heading] `allout-previous-visible-heading'
\[allout-up-current-level] `allout-up-current-level'
\[allout-forward-current-level] `allout-forward-current-level'
\[allout-backward-current-level] `allout-backward-current-level'
\[allout-end-of-entry] `allout-end-of-entry'
\[allout-beginning-of-current-entry] `allout-beginning-of-current-entry' (alternately, goes to hot-spot)
\[allout-beginning-of-line]  `allout-beginning-of-line' -- like regular beginning-of-line, but
     if immediately repeated cycles to the beginning of the current item
     and then to the hot-spot (if `allout-beginning-of-line-cycles' is set).


        Topic Header Production:
        -----------------------
\[allout-open-sibtopic] `allout-open-sibtopic' Create a new sibling after current topic.
\[allout-open-subtopic]   `allout-open-subtopic' ... an offspring of current topic.
\[allout-open-supertopic] `allout-open-supertopic' ... a sibling of the current topic's parent.

        Topic Level and Prefix Adjustment:
        ---------------------------------
\[allout-shift-in] `allout-shift-in'   Shift current topic and all offspring deeper
\[allout-shift-out] `allout-shift-out' ... less deep
\[allout-rebullet-current-heading] `allout-rebullet-current-heading' Prompt for alternate bullet for
            current topic
\[allout-rebullet-topic] `allout-rebullet-topic'   Reconcile bullets of topic and
            its offspring -- distinctive bullets are not changed, others
            are alternated according to nesting depth.
\[allout-number-siblings] `allout-number-siblings'  Number bullets of topic and siblings --
           the offspring are not affected.
           With repeat count, revoke numbering.

        Topic-oriented Killing and Yanking:
        ----------------------------------
\[allout-kill-topic] `allout-kill-topic'   Kill current topic, including offspring.
\[allout-copy-topic-as-kill] `allout-copy-topic-as-kill' Copy current topic, including offspring.
\[allout-kill-line]     `allout-kill-line'    Kill line, attending to outline structure.
\[allout-copy-line-as-kill]     `allout-copy-line-as-kill' Copy line but don't delete it.
\[allout-yank] `allout-yank'        Yank, adjusting depth of yanked topic to
                             depth of heading if yanking into bare topic
                             heading (ie, prefix sans text).
\[allout-yank-pop]     `allout-yank-pop'       Is to `allout-yank' as `yank-pop' is to `yank'.

        Topic-oriented Encryption:
        -------------------------
\[allout-toggle-current-subtree-encryption] `allout-toggle-current-subtree-encryption'
          Encrypt/Decrypt topic content

        Misc commands:
        -------------
M-x outlineify-sticky       Activate outline mode for current buffer,
                            and establish a default file-var setting
                            for `allout-layout'.
\[allout-mark-topic]       `allout-mark-topic'
\[allout-copy-exposed-to-buffer] `allout-copy-exposed-to-buffer'
                            Duplicate outline, sans concealed text, to
                            buffer with name derived from derived from that
                            of current buffer -- "*BUFFERNAME exposed*".
\[allout-flatten-exposed-to-buffer] `allout-flatten-exposed-to-buffer'
                            Like above 'copy-exposed', but convert topic
                            prefixes to section.subsection... numeric
                            format.
\[customize-variable] allout-auto-activation
                            Prepare Emacs session for allout outline mode
                            auto-activation.

                  Topic Encryption

Outline mode supports gpg encryption of topics, with support for
symmetric and key-pair modes, and auto-encryption of topics
pending encryption on save.

Topics pending encryption are, by default, automatically
encrypted during file saves, including checkpoint saves, to avoid
exposing the plain text of encrypted topics in the file system.
If the content of the topic containing the cursor was encrypted
for a save, it is automatically decrypted for continued editing.

NOTE: A few GnuPG v2 versions improperly preserve incorrect
symmetric decryption keys, preventing entry of the correct key on
subsequent decryption attempts until the cache times-out.  That
can take several minutes.  (Decryption of other entries is not
affected.)  Upgrade your EasyPG version, if you can, and you can
deliberately clear your gpg-agent's cache by sending it a '-HUP'
signal.

See `allout-toggle-current-subtree-encryption' function docstring
and `allout-encrypt-unencrypted-on-saves' customization variable
for details.

                 HOT-SPOT Operation

Hot-spot operation provides a means for easy, single-keystroke outline
navigation and exposure control.

When the text cursor is positioned directly on the bullet character of
a topic, regular characters (a to z) invoke the commands of the
corresponding allout-mode keymap control chars.  For example, "f"
would invoke the command typically bound to "C-c<space>C-f"
(\[allout-forward-current-level] `allout-forward-current-level').

Thus, by positioning the cursor on a topic bullet, you can
execute the outline navigation and manipulation commands with a
single keystroke.  Regular navigation keys (eg, \[forward-char], \[next-line]) don't get
this special translation, so you can use them to get out of the
hot-spot and back to normal editing operation.

In allout-mode, the normal beginning-of-line command (\[allout-beginning-of-line]) is
replaced with one that makes it easy to get to the hot-spot.  If you
repeat it immediately it cycles (if `allout-beginning-of-line-cycles'
is set) to the beginning of the item and then, if you hit it again
immediately, to the hot-spot.  Similarly, `allout-beginning-of-current-entry'
(\[allout-beginning-of-current-entry]) moves to the hot-spot when the cursor is already located
at the beginning of the current entry.

                             Extending Allout

Allout exposure and authoring activities all have associated
hooks, by which independent code can cooperate with allout
without changes to the allout core.  Here are key ones:

`allout-mode-hook'
`allout-mode-deactivate-hook' (deprecated)
`allout-mode-off-hook'
`allout-exposure-change-functions'
`allout-structure-added-functions'
`allout-structure-deleted-functions'
`allout-structure-shifted-functions'
`allout-after-copy-or-kill-hook'
`allout-post-undo-hook'

                            Terminology

Topic hierarchy constituents -- TOPICS and SUBTOPICS:

ITEM:   A unitary outline element, including the HEADER and ENTRY text.
TOPIC:  An ITEM and any ITEMs contained within it, ie having greater DEPTH
        and with no intervening items of lower DEPTH than the container.
CURRENT ITEM:
        The visible ITEM most immediately containing the cursor.
DEPTH:  The degree of nesting of an ITEM; it increases with containment.
        The DEPTH is determined by the HEADER PREFIX.  The DEPTH is also
        called the:
LEVEL:  The same as DEPTH.

ANCESTORS:
        Those ITEMs whose TOPICs contain an ITEM.
PARENT: An ITEM's immediate ANCESTOR.  It has a DEPTH one less than that
        of the ITEM.
OFFSPRING:
        The ITEMs contained within an ITEM's TOPIC.
SUBTOPIC:
        An OFFSPRING of its ANCESTOR TOPICs.
CHILD:
        An immediate SUBTOPIC of its PARENT.
SIBLINGS:
        TOPICs having the same PARENT and DEPTH.

Topic text constituents:

HEADER: The first line of an ITEM, include the ITEM PREFIX and HEADER
        text.
ENTRY:  The text content of an ITEM, before any OFFSPRING, but including
        the HEADER text and distinct from the ITEM PREFIX.
BODY:   Same as ENTRY.
PREFIX: The leading text of an ITEM which distinguishes it from normal
        ENTRY text.  Allout recognizes the outline structure according
        to the strict PREFIX format.  It consists of a PREFIX-LEAD string,
        PREFIX-PADDING, and a BULLET.  The BULLET might be followed by a
        number, indicating the ordinal number of the topic among its
        siblings, or an asterisk indicating encryption, plus an optional
        space.  After that is the ITEM HEADER text, which is not part of
        the PREFIX.

        The relative length of the PREFIX determines the nesting DEPTH
        of the ITEM.
PREFIX-LEAD:
        The string at the beginning of a HEADER PREFIX, by default a `.'.
        It can be customized by changing the setting of
        `allout-header-prefix' and then reinitializing `allout-mode'.

        When the PREFIX-LEAD is set to the comment-string of a
        programming language, outline structuring can be embedded in
        program code without interfering with processing of the text
        (by Emacs or the language processor) as program code.  This
        setting happens automatically when allout mode is used in
        programming-mode buffers.  See `allout-use-mode-specific-leader'
        docstring for more detail.
PREFIX-PADDING:
        Spaces or asterisks which separate the PREFIX-LEAD and the
        bullet, determining the ITEM's DEPTH.
BULLET: A character at the end of the ITEM PREFIX, it must be one of
        the characters listed on `allout-plain-bullets-string' or
        `allout-distinctive-bullets-string'.  When creating a TOPIC,
        plain BULLETs are by default used, according to the DEPTH of the
        TOPIC.  Choice among the distinctive BULLETs is offered when you
        provide a universal argument (\[universal-argument]) to the
        TOPIC creation command, or when explicitly rebulleting a TOPIC.  The
        significance of the various distinctive bullets is purely by
        convention.  See the documentation for the above bullet strings for
        more details.
EXPOSURE:
        The state of a TOPIC which determines the on-screen visibility
        of its OFFSPRING and contained ENTRY text.
CONCEALED:
        TOPICs and ENTRY text whose EXPOSURE is inhibited.  Concealed
        text is represented by "..." ellipses.

        CONCEALED TOPICs are effectively collapsed within an ANCESTOR.
CLOSED: A TOPIC whose immediate OFFSPRING and body-text is CONCEALED.
OPEN:	A TOPIC that is not CLOSED, though its OFFSPRING or BODY may be.
(defalias 'allout-mode #[(&optional arg) "\306 	\307=\203\n?\202\310	!\311V<\203\202\f\n\204R\312 \210\313\314!\210\315\316\317\320#\210\315\321\322\320#\210\315\323\324\320#\210\315\325\326\320#\210\315\327\330\320#\210\331ed\332\333$\210\202@\203[\334\335!\210\336 \210\337 \210\340 \210\341 \210\334\342\343\"\210\344 \210\345 \210\346\347!\210\334\350!\210\351\316\317\352\320$\210\351\321\322\352\320$\210\351\323\324\352\320$\210\351\325\326\352\320$\210\351\327\330\352\320$\210\334\353AD\354BD\355\356.\357C\360RD\3611\357C\360RD%\210A\203\311D\204\311\334\362!\210\363 \210\203E\203
\203E\364\230\204E\365\230\203\373\366\367\370\371 
#!\204\373\372\373\371 \"\210\202\212\372\374\371 \"\210\311b\210\375 \210\376\377\201F\217\210))\201G\201H\n\203!\201I\202$\201J\"\210\201K\201L!\203O\306 \203<\306 \232\203O\372\201M\n\203J\201N\202M\201O\"\210)\201P \210\n\207" [#1=#:last-message arg allout-mode allout-layout allout-default-layout use-layout current-message toggle prefix-numeric-value 0 allout-do-resumptions remove-from-invisibility-spec (allout . t) remove-hook pre-command-hook allout-pre-command-business t post-command-hook allout-post-command-business before-change-functions allout-before-change-handler isearch-mode-end-hook allout-isearch-end-handler write-contents-functions allout-write-contents-hook-handler remove-overlays category allout-exposure-category allout-add-resumptions (allout-primary-bullet "*") allout-overlay-preparations allout-infer-header-lead-and-primary-bullet allout-infer-body-reindent set-allout-regexp (allout-encryption-ciphertext-rejection-regexps allout-line-boundary-regexp extend) (allout-encryption-ciphertext-rejection-regexps allout-bob-regexp extend) allout-compose-and-institute-keymap produce-allout-mode-menubar-entries add-to-invisibility-spec (allout . t) (line-move-ignore-invisible t) add-hook nil allout-former-auto-filler allout-outside-normal-auto-fill-function (normal-auto-fill-function allout-auto-fill) paragraph-start "\\|^\\(" "\\)" paragraph-separate (auto-fill-function allout-auto-fill) allout-setup-menubar "activate" "ask" y-or-n-p format "Expose %s with layout '%s'? " buffer-name message "Skipped %s layout." "Adjusting '%s' exposure..." allout-this-or-next-heading err (byte-code "\301\302C\"\210\303\304\305 \"\207" [use-layout apply allout-expose-topic message "Adjusting '%s' exposure... done." buffer-name] 3) allout-old-style-prefixes auto-fill-function normal-auto-fill-function allout-regexp allout-inhibit-auto-fill allout-auto-activation ((error (byte-code "\301\302A@\"\210\303\304!\207" [err message "%s" sit-for 1] 3))) run-hooks allout-mode-hook allout-mode-on-hook allout-mode-off-hook called-interactively-p any "Allout mode %sabled" "en" "dis" force-mode-line-update] 10 (#$ . 54388) (list (or current-prefix-arg 'toggle))])
#@27 Keymap for `allout-mode'.
(defvar allout-mode-map (byte-code "\301\302!\203\f\202<\203\303!\202\304\305\")\207" [m allout-mode-map keymapp easy-mmode-define-keymap error "Invalid keymap %S"] 3) (#$ . 70160))
(byte-code "\301\302\303\304\211%\210\305\306\302\"\207" [allout-mode-map add-minor-mode allout-mode " Allout" nil defalias allout-minor-mode] 6)
#@36 Unload the allout outline library.
(defalias 'allout-unload-function #[nil "r\303 \304\211\203	@\211q\210\n\203\302\305!\210	A\211\204\n+\304\207" [buffer --dolist-tail-- allout-mode buffer-list nil -1] 3 (#$ . 70534)])
#@68 Non-nil if the character after point was made invisible by allout.
(defalias 'allout-hidden-p #[(&optional pos) "\301\206`\302\"\303=\207" [pos get-char-property invisible allout] 3 (#$ . 70769)])
(put 'allout-hidden-p 'byte-optimizer 'byte-compile-inline-expand)
#@65 Shift the overlay so stuff inserted in front of it is excluded.
(defalias 'allout-overlay-insert-in-front-handler #[(ol after beg end &optional prelen) "\205\f\303	\nT\304	!#\207" [after ol beg move-overlay overlay-end] 5 (#$ . 71042)])
#@372 Get confirmation before making arbitrary changes to invisible text.

We expose the invisible text and ask for confirmation.  Refusal or
`keyboard-quit' abandons the changes, with keyboard-quit additionally
reclosing the opened text.

No confirmation is necessary when `inhibit-read-only' is set -- eg, allout
internal functions use this feature cohesively bunch changes.
(defalias 'allout-overlay-interior-modification-handler #[(ol after beg end &optional prelen) "?\205r	?\205r`\306\n!\307\n!\310b\210`W\203b\310\311\206,`\312\")\313=\203W\314 \210\310\311\206A`\312\")\313=\203Q\212\315u\210\314 \210)\204W`\316`T\"b\210\202\203nb\210\310\317\320\217\210b,\207" [inhibit-read-only after ol first ol-end ol-start overlay-start overlay-end nil get-char-property invisible allout allout-show-to-offshoot 1 next-char-property-change (byte-code "\301\302\303!!\204b\210\304\305!\210\301\207" [start yes-or-no-p substitute-command-keys "Modify concealed text?  (\"no\" just aborts, \\[keyboard-quit] also reconceals) " error "Concealed-text change refused"] 3) ((quit (byte-code "\302	\303#\210\302	\304#\210\305\306!\207" [ol-start ol-end allout-flag-region nil t error "Concealed-text change abandoned, text reconcealed"] 4))) start beg end pos] 4 (#$ . 71288)])
#@109 Protect against changes to invisible text.

See `allout-overlay-interior-modification-handler' for details.
(defalias 'allout-before-change-handler #[(beg end) "\203	\203\304\305\306\206`\307\")\310=\203\311 \210\305\207" [allout-mode undo-in-progress allout-just-did-undo pos t nil get-char-property invisible allout allout-show-children] 3 (#$ . 72599)])
#@275 Reconcile allout outline exposure on arriving in hidden text after isearch.

Optional OVERLAY parameter is for when this function is used by
`isearch-open-invisible' overlay property.  It is otherwise unused, so this
function can also be used as an `isearch-mode-end-hook'.
(defalias 'allout-isearch-end-handler #[(&optional overlay) "\205\302\303	\206\f`\304\")\305=\205\306 \207" [allout-mode pos nil get-char-property invisible allout allout-show-to-offshoot] 3 (#$ . 72975)])
#@65 Buffer point of the start of the last topic prefix encountered.
(defvar allout-recent-prefix-beginning 0 (#$ . 73468))
(make-variable-buffer-local 'allout-recent-prefix-beginning)
#@63 Buffer point of the end of the last topic prefix encountered.
(defvar allout-recent-prefix-end 0 (#$ . 73654))
(make-variable-buffer-local 'allout-recent-prefix-end)
#@45 Depth of the last topic prefix encountered.
(defvar allout-recent-depth 0 (#$ . 73826))
(make-variable-buffer-local 'allout-recent-depth)
#@64 Buffer point last returned by `allout-end-of-current-subtree'.
(defvar allout-recent-end-of-subtree 0 (#$ . 73970))
(make-variable-buffer-local 'allout-recent-end-of-subtree)
#@136 Register allout-prefix state data.

For reference by `allout-recent' funcs.  Return
the new value of `allout-recent-prefix-beginning'.
(defalias 'allout-prefix-data #[nil "\304\225\206\f\305\225\206\f\306\225\304\224\206\305\224\206\306\224\304\307	\n#]	\207" [allout-recent-prefix-end allout-recent-prefix-beginning allout-header-subtraction allout-recent-depth 1 2 3 -] 5 (#$ . 74152)])
(put 'allout-prefix-data 'byte-optimizer 'byte-compile-inline-expand)
#@49 Mark allout prefix data as being uninformative.
(defalias 'nullify-allout-prefix-data #[nil "``\303	\207" [allout-recent-prefix-end allout-recent-prefix-beginning allout-recent-depth 0] 1 (#$ . 74627)])
(put 'nullify-allout-prefix-data 'byte-optimizer 'byte-compile-inline-expand)
#@314 Return depth of last heading encountered by an outline maneuvering function.

All outline functions which directly do string matches to assess
headings set the variables `allout-recent-prefix-beginning' and
`allout-recent-prefix-end' if successful.  This function uses those settings
to return the current depth.
(defalias 'allout-recent-depth #[nil "\207" [allout-recent-depth] 1 (#$ . 74918)])
(put 'allout-recent-depth 'byte-optimizer 'byte-compile-inline-expand)
#@311 Like `allout-recent-depth', but returns text of last encountered prefix.

All outline functions which directly do string matches to assess
headings set the variables `allout-recent-prefix-beginning' and
`allout-recent-prefix-end' if successful.  This function uses those settings
to return the current prefix.
(defalias 'allout-recent-prefix #[nil "\302	\"\207" [allout-recent-prefix-beginning allout-recent-prefix-end buffer-substring-no-properties] 3 (#$ . 75393)])
(put 'allout-recent-prefix 'byte-optimizer 'byte-compile-inline-expand)
#@348 Like `allout-recent-prefix', but returns bullet of last encountered prefix.

All outline functions which directly do string matches to assess
headings set the variables `allout-recent-prefix-beginning' and
`allout-recent-prefix-end' if successful.  This function uses those settings
to return the current depth of the most recently matched topic.
(defalias 'allout-recent-bullet '(macro . #[nil "\300\207" [(buffer-substring-no-properties (1- allout-recent-prefix-end) allout-recent-prefix-end)] 1 (#$ . 75941)]))
#@74 True if current item conditions qualify for checking on topic aberrance.
(defalias 'allout-do-doublecheck #[nil "?\205	\nX\207" [allout-inhibit-aberrance-doublecheck allout-recent-depth allout-doublecheck-at-and-shallower] 2 (#$ . 76461)])
(put 'allout-do-doublecheck 'byte-optimizer 'byte-compile-inline-expand)
#@476 True if topic, or next sibling with children, contains them discontinuously.

Discontinuous means an immediate offspring that is nested more
than one level deeper than the topic.

If topic has no offspring, then the next sibling with offspring will
determine whether or not this one is determined to be aberrant.

If true, then the allout-recent-* settings are calibrated on the
offspring that qualifies it as aberrant, ie with depth that
exceeds the topic by more than one.
(defalias 'allout-aberrant-container-p #[nil "\306 `\307\211\310 \311\216\212	\204f\312
\307\313#\203f\314\225\206'\315\225\206'\316\225\314\224\2065\315\224\2065\316\224\314\317#]\210b\210=\204TV\203`\320\211\202\320\211\203+\203o\202v\nb\210\306 \210\307,\207" [aberrant done start-point depth save-match-data-internal allout-line-boundary-regexp allout-depth nil match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) re-search-forward 0 1 2 3 - t allout-recent-prefix-end allout-recent-prefix-beginning allout-header-subtraction allout-recent-depth] 6 (#$ . 76784)])
#@111 Return non-nil if point is on current visible topics' header line.

Actually, returns prefix beginning point.
(defalias 'allout-on-current-heading-p #[nil "\212\306 \210\307 \310\216\311	!\205F\312\225\206\313\225\206\314\225\312\224\206(\313\224\206(\314\224\312\315\n\f#]\205F?\205?
X?\206F\316 ?+\207" [save-match-data-internal allout-regexp allout-recent-prefix-end allout-recent-prefix-beginning allout-header-subtraction allout-recent-depth allout-beginning-of-current-line match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) looking-at 1 2 3 - allout-aberrant-container-p allout-inhibit-aberrance-doublecheck allout-doublecheck-at-and-shallower] 5 (#$ . 77926)])
(defalias 'allout-on-heading-p 'allout-on-current-heading-p)
#@75 True if point is located where current topic prefix ends, heading begins.
(defalias 'allout-e-o-prefix-p #[nil "\303 \304\216\212\305\306 \210)\307\n!\210)`\212\310 \210`)U*\207" [save-match-data-internal inhibit-field-text-motion allout-regexp match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) t beginning-of-line looking-at allout-end-of-prefix] 2 (#$ . 78728)])
#@234 Return depth of topic most immediately containing point.

Does not do doublecheck for aberrant topic header.

Return zero if point is not within any topic.

Like `allout-current-depth', but respects hidden as well as visible topics.
(defalias 'allout-depth #[nil "\212`\304 \203`W\204	\202``\305\210\305*\207" [start-point allout-recent-depth allout-recent-prefix-end allout-recent-prefix-beginning allout-goto-prefix 0] 2 (#$ . 79149)])
#@113 Return depth of visible topic most immediately containing point.

Return zero if point is not within any topic.
(defalias 'allout-current-depth #[nil "\212\303 \203\304\305	\n#]\202\306)\207" [allout-recent-prefix-end allout-recent-prefix-beginning allout-header-subtraction allout-back-to-current-heading 1 - 0] 5 (#$ . 79606)])
#@36 Topic prefix of the current topic.
(defalias 'allout-get-current-prefix #[nil "\212\302 \205\n\303	\")\207" [allout-recent-prefix-beginning allout-recent-prefix-end allout-goto-prefix buffer-substring-no-properties] 3 (#$ . 79947)])
#@53 Return bullet of containing topic (visible or not).
(defalias 'allout-get-bullet #[nil "\212\301 \205\302S\")\207" [allout-recent-prefix-end allout-goto-prefix buffer-substring-no-properties] 3 (#$ . 80188)])
#@74 Return bullet of current (visible) topic heading, or none if none found.
(defalias 'allout-current-bullet #[nil "\300\301\302\217\207" [nil (byte-code "\212\301 \210\302S\")\207" [allout-recent-prefix-end allout-back-to-current-heading buffer-substring-no-properties] 3) ((args-out-of-range))] 3 (#$ . 80407)])
#@55 Return the bullet of the header prefix string PREFIX.
(defalias 'allout-get-prefix-bullet #[(prefix) "\302	\"\205	\303\225S\303\225O\207" [allout-regexp prefix string-match 2] 3 (#$ . 80726)])
#@219 Item number of this prospective topic among its siblings.

If optional arg DEPTH is greater than current depth, then we're
opening a new level, and return 0.

If less than this depth, ascend to that depth and count...
(defalias 'allout-sibling-index #[(&optional depth) "\212\203\303X\203\303\202>\203\304 U\203.\305\306\n\307\"\203)	T\202	)\202>\nW\203=\310!\210\311 \202>\303)\207" [depth index allout-recent-depth 0 allout-depth 1 allout-previous-sibling nil allout-ascend-to-depth allout-sibling-index] 3 (#$ . 80929)])
#@92 Return a list indicating point's numeric section.subsect.subsubsect...
Outermost is first.
(defalias 'allout-topic-flat-index #[nil "\303 \304!\305	\306V\203	\nBS\304!\211\202\n\n+\207" [depth next-index rev-sibls allout-depth allout-sibling-index nil 0] 3 (#$ . 81481)])
#@46 Like beginning of line, but to visible text.
(defalias 'allout-beginning-of-current-line #[nil "\302\303\304!\210\305 \210o?\205?n\203\"\306\307	\206`\310\")\311=\205?\305 \210\306\307	\206-`\310\")\311=\2049n\204	\312u\210\202	)\207" [inhibit-field-text-motion pos t move-beginning-of-line 1 beginning-of-line nil get-char-property invisible allout -1] 3 (#$ . 81771)])
#@54 Move to the end of line, past concealed text if any.
(defalias 'allout-end-of-current-line #[nil "\302\303\210\303\304	\206
`\305\")\306=\205.\303\210\303\304	\206 `\305\")\306=\203\307u\210\202)\207" [inhibit-field-text-motion pos t nil get-char-property invisible allout 1] 3 (#$ . 82160)])
#@76 Beginning-of-line with `allout-beginning-of-line-cycles' behavior, if set.
(defalias 'allout-beginning-of-line #[nil "\203\n	\n\232\204*n\204&`S\306\206`\307\")\310=\203&\311`S\307\"b\210\312\313!\207\314 \210\212\f\204D
X\203D\315 \203D\316\313!\204.\317 \210`)i\320U\203Wb\202}`W\203c\321 \202}`U\203p\322 b\202}\321 \210`W\205}b)\207" [allout-beginning-of-line-cycles last-command this-command pos allout-inhibit-aberrance-doublecheck allout-recent-depth get-char-property invisible allout allout-previous-single-char-property-change move-beginning-of-line 1 allout-depth allout-aberrant-container-p allout-previous-visible-heading allout-beginning-of-current-entry 0 allout-beginning-of-current-line allout-current-bullet-pos allout-doublecheck-at-and-shallower beginning-of-body] 3 (#$ . 82471) nil])
#@64 End-of-line with `allout-end-of-line-cycles' behavior, if set.
(defalias 'allout-end-of-line #[nil "\203\n	\n\232\204
\305 \207\212\306 \210`)l\204\305 \202g\307\310\f\206%`\311\")\312=\204A\212\313u\210\307\310\f\2069`\311\"*\312=\203O\314 \210\315 \210\316 \210\306 \202g`Y\203]\314 \210\305 \202g\317 \204e\320 \210\306 )\207" [allout-end-of-line-cycles last-command this-command end-of-entry pos allout-end-of-current-line allout-end-of-entry nil get-char-property invisible allout -1 allout-back-to-current-heading allout-show-current-entry allout-show-children allout-mark-active-p push-mark] 3 (#$ . 83317) nil])
#@49 True if the mark is currently or always active.
(defalias 'allout-mark-active-p #[nil "\301\300!\203\207\302\303!\203\303 \207\304\207" [mark-active boundp fboundp region-active-p t] 2 (#$ . 83961)])
#@205 Move to the heading for the topic (possibly invisible) after this one.

Returns the location of the heading, or nil if none found.

We skip anomalous low-level topics, a la `allout-aberrant-container-p'.
(defalias 'allout-next-heading #[nil "\306 \307\216\310	!\203\311u\210\312\n\313\314#\205Z\311\225\206\"\315\225\206\"\316\225\311\224\206/\315\224\206/\316\224\311\317\f
#]\f\210\fb\210n\204H\320u\210\202>\204XX\203X\321 \210\fb*\207" [save-match-data-internal allout-regexp allout-line-boundary-regexp allout-recent-prefix-end allout-recent-prefix-beginning allout-header-subtraction match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) looking-at 1 re-search-forward nil 0 2 3 - -1 allout-aberrant-container-p allout-recent-depth allout-inhibit-aberrance-doublecheck allout-doublecheck-at-and-shallower] 5 (#$ . 84173)])
(put 'allout-next-heading 'byte-optimizer 'byte-compile-inline-expand)
#@45 Position cursor on current or next heading.
(defalias 'allout-this-or-next-heading #[nil "\306 ?\205a\307 \310\216\311	!\203\312u\210\313\n\314\315#\205`\312\225\206(\316\225\206(\317\225\312\224\2065\316\224\2065\317\224\312\320\f
#]\f\210\fb\210n\204N\321u\210\202D\204^X\203^\322 \210\fb*\207" [save-match-data-internal allout-regexp allout-line-boundary-regexp allout-recent-prefix-end allout-recent-prefix-beginning allout-header-subtraction allout-goto-prefix-doublechecked match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) looking-at 1 re-search-forward nil 0 2 3 - -1 allout-aberrant-container-p allout-recent-depth allout-inhibit-aberrance-doublecheck allout-doublecheck-at-and-shallower] 5 (#$ . 85145)])
#@202 Move to the prior (possibly invisible) heading line.

Return the location of the beginning of the heading, or nil if not found.

We skip anomalous low-level topics, a la `allout-aberrant-container-p'.
(defalias 'allout-previous-heading #[nil "o?\205i`\306 \210\307 \310\216\311\n\312\313#\204\314!\205h\315\225\206)\316\225\206)\317\225\315\224\2066\316\224\2066\317\224\315\320\f
#]
b\210\204gX\203g\321 \203g\322 \206hb\203c\323 \210\312\202h`+\207" [start-point save-match-data-internal allout-line-boundary-regexp allout-bob-regexp allout-recent-prefix-end allout-recent-prefix-beginning allout-goto-prefix match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) re-search-backward nil 0 looking-at 1 2 3 - allout-aberrant-container-p allout-previous-heading allout-depth allout-header-subtraction allout-recent-depth allout-inhibit-aberrance-doublecheck allout-doublecheck-at-and-shallower] 5 (#$ . 85938)])
#@64 Return the overlay at point that dictates allout invisibility.
(defalias 'allout-get-invisibility-overlay #[nil "\302`!\303	\203'\204'\304	@\305\"\306\232\203	@\202	\211A@\210\202*\207" [got overlays overlays-at nil overlay-get invisible allout] 3 (#$ . 86928)])
#@72 Move to most recent prior character that is visible, and return point.
(defalias 'allout-back-to-visible-text #[nil "\301\302\206`\303\")\304=\203\305\306 !b\210`\207" [pos nil get-char-property invisible allout overlay-start allout-get-invisibility-overlay] 3 (#$ . 87211)])
#@1169 Produce a location "chart" of subtopics of the containing topic.

Optional argument LEVELS specifies a depth limit (relative to start
depth) for the chart.  Null LEVELS means no limit.

When optional argument VISIBLE is non-nil, the chart includes
only the visible subelements of the charted subjects.

The remaining optional args are for internal use by the function.

Point is left at the end of the subtree.

Charts are used to capture outline structure, so that outline-altering
routines need to assess the structure only once, and then use the chart
for their elaborate manipulations.

The chart entries for the topics are in reverse order, so the
last topic is listed first.  The entry for each topic consists of
an integer indicating the point at the beginning of the topic
prefix.  Charts for offspring consist of a list containing,
recursively, the charts for the respective subtopics.  The chart
for a topics' offspring precedes the entry for the topic itself.

The other function parameters are for internal recursion, and should
not be specified by external callers.  ORIG-DEPTH is depth of topic at
starting point, and PREV-DEPTH is depth of prior topic.
(defalias 'allout-chart-subtree #[(&optional levels visible orig-depth prev-depth) "?\306\211\211\203\207\307 \f\204T
\203 \310\311!\210\202\207\312 \313\216\314!\2030\311u\210\315\306\316#\205\205\311\225\206E\317\225\206E\320\225\311\224\206S\317\224\206S\320\224\311\321#]\210b\210n\204r\322u\210\202h\204\202X\203\202\323 \210b*\210m\204\307\211W\203\307\f	U\203\241\nB \203. \311X\203.\324	!\204\207	X\203\307
\203\302\310\311!\202(\312 \313\216\314!\203\322\311u\210\315\306\316#\205'\311\225\206\347\317\225\206\347\320\225\311\224\206\365\317\224\206\365\320\224\311\321#]\210b\210n\204\322u\210\202\n\204$X\203$\323 \210b*\203\307\202\261
\2038\310\311!\202\304\312 \313\216\314!\203H\311u\210\315\306\316#\205\235\311\225\206]\317\225\206]\320\225\311\224\206k\317\224\206k\320\224\311\321#]\210b\210n\204\212\322u\210\202\200\204\232X\203\232\323 \210b*\202\304\f	W\203\307 \203\263 \316V\203\307\325 \205\274 S
	$\nB\211\204\207\203\354m\204\322\322u\210h\326U\203\351\311`\320Z]`{\311H\326U\203\351\322u\210`!\n+\207" [orig-depth curr-depth chart original prev-depth visible nil allout-depth allout-next-visible-heading 1 match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) looking-at re-search-forward 0 2 3 - -1 allout-aberrant-container-p allout-next-sibling allout-chart-subtree 10 save-match-data-internal allout-regexp allout-line-boundary-regexp allout-recent-prefix-end allout-recent-prefix-beginning allout-header-subtraction allout-recent-depth allout-inhibit-aberrance-doublecheck allout-doublecheck-at-and-shallower levels allout-recent-end-of-subtree] 6 (#$ . 87501)])
#@169 Produce a list of locations of this and succeeding sibling topics.
Effectively a top-level chart of siblings.  See `allout-chart-subtree'
for an explanation of charts.
(defalias 'allout-chart-siblings #[(&optional start end) "\212\301 \205`C\302 \203`B\202	\205\237\211))\207" [chart allout-goto-prefix-doublechecked allout-next-sibling] 2 (#$ . 90491)])
#@205 Return a flat list of hidden points in subtree CHART, up to DEPTH.

If DEPTH is nil, include hidden points at any depth.

Note that point can be left at any of the points on chart, or at the
start point.
(defalias 'allout-chart-to-reveal #[(chart depth) "\306\211\n\203\n\307V\203U\203U@\211<\2038\310\n\204$\n\202&\nS\"\211\2031\311\f	\"A)\202b\210\306\312
\206C`\313\")\314=\203O	BA\202	*\207" [here result depth chart further pos nil 0 allout-chart-to-reveal append get-char-property invisible allout] 4 (#$ . 90866)])
#@241 Put point at beginning of immediately containing outline topic.

Goes to most immediate subsequent topic if none immediately containing.

Not sensitive to topic visibility.

Returns the point at the beginning of the prefix, or nil if none.
(defalias 'allout-goto-prefix #[nil "\306 \307\216\310	\204K\311\312\310\313#\203K\313u\210\314\n!\203E\313\225\206(\315\225\206(\316\225\313\224\2065\315\224\2065\316\224\313\317\f
#]\f\211\202\320u\210\202o\203\337\314\n!\203|\313\225\206a\315\225\206a\316\225\313\224\206n\315\224\206n\316\224\313\317\f
#]\f\202\340\306 \321\216\314\n!\203\212\313u\210\322\310\323#\205\327\313\225\206\237\315\225\206\237\316\225\313\224\206\254\315\224\206\254\316\224\313\317\f
#]\f\210\fb\210n\204\305\320u\210\202\273\204\325X\203\325\324 \210\fb*\206\340	\202\340	+\207" [save-match-data-internal done allout-regexp allout-recent-prefix-end allout-recent-prefix-beginning allout-header-subtraction match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) nil search-backward "\n" 1 looking-at 2 3 - -1 ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) re-search-forward 0 allout-aberrant-container-p allout-recent-depth allout-line-boundary-regexp allout-inhibit-aberrance-doublecheck allout-doublecheck-at-and-shallower] 6 (#$ . 91425)])
#@275 Put point at beginning of immediately containing outline topic.

Like `allout-goto-prefix', but shallow topics (according to
`allout-doublecheck-at-and-shallower') are checked and
disqualified for child containment discontinuity, according to
`allout-aberrant-container-p'.
(defalias 'allout-goto-prefix-doublechecked #[nil "\303 \205\204	\nX\203\304 \203\305 \207`\207" [allout-inhibit-aberrance-doublecheck allout-recent-depth allout-doublecheck-at-and-shallower allout-goto-prefix allout-aberrant-container-p allout-previous-heading] 2 (#$ . 92837)])
#@173 Position cursor at beginning of header text.

If optional IGNORE-DECORATIONS is non-nil, put just after bullet,
otherwise skip white space between bullet and ensuing text.
(defalias 'allout-end-of-prefix #[(&optional ignore-decorations) "\303 \205-b\210\304 \305\216\n\204*\306\307!\203\310u\210\202l\204*\306\311!\203*\310u\210*\312 \207" [allout-recent-prefix-end save-match-data-internal ignore-decorations allout-goto-prefix-doublechecked match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) looking-at "[0-9]" 1 "\\s-" allout-current-depth] 2 (#$ . 93407)])
#@54 Return position of current (visible) topic's bullet.
(defalias 'allout-current-bullet-pos #[nil "\301 \205S\207" [allout-recent-prefix-end allout-current-depth] 1 (#$ . 94030)])
#@240 Move to heading line of current topic, or beginning if not in a topic.

If interactive, we position at the end of the prefix.

Return value of resulting point, unless we started outside
of (before any) topics, in which case we return nil.
(defalias 'allout-back-to-current-heading #[(&optional interactive) "\306 \210`\307 \205W`X\203S`\306 \210`U\204E\310	!\203E\311\225\206-\312\225\206-\313\225\311\224\206:\312\224\206:\313\224\311\314\n\f#]\210\203O\315 \202W`\202Web\210\316)\207" [bol-point allout-regexp allout-recent-prefix-end allout-recent-prefix-beginning allout-header-subtraction allout-recent-depth allout-beginning-of-current-line allout-goto-prefix-doublechecked looking-at 1 2 3 - allout-end-of-prefix nil interactive] 5 (#$ . 94218) "p"])
(defalias 'allout-back-to-heading 'allout-back-to-current-heading)
#@86 Skip forward to just before the next heading line.

Returns that character position.
(defalias 'allout-pre-next-prefix #[nil "\306 \307\216\310	!\203\311u\210\312\n\313\314#\205Z\311\225\206\"\315\225\206\"\316\225\311\224\206/\315\224\206/\316\224\311\317\f
#]\f\210\fb\210n\204H\320u\210\202>\204XX\203X\321 \210\fb*\205a\fSb\207" [save-match-data-internal allout-regexp allout-line-boundary-regexp allout-recent-prefix-end allout-recent-prefix-beginning allout-header-subtraction match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) looking-at 1 re-search-forward nil 0 2 3 - -1 allout-aberrant-container-p allout-recent-depth allout-inhibit-aberrance-doublecheck allout-doublecheck-at-and-shallower] 5 (#$ . 95071)])
#@363 Put point at the end of the last leaf in the containing topic.

Optional CURRENT means put point at the end of the containing
visible topic.

Optional INCLUDE-TRAILING-BLANK means include a trailing blank line, if
any, as part of the subtree.  Otherwise, that trailing blank will be
excluded as delimiting whitespace between topics.

Returns the value of point.
(defalias 'allout-end-of-subtree #[(&optional current include-trailing-blank) "\203\n\306 \210\202
\307 \210	\310 \311\216\312\f!\203\313u\210\314
\315\316#\205o\313\225\2061\317\225\2061\320\225\313\224\206?\317\224\206?\320\224\313\321#]\210b\210n\204]\322u\210\202S\204l	X\203l\323 \210b*\210m\204\340	\nV\203\340\310 \311\216\312\f!\203\211\313u\210\314
\315\316#\205\333\313\225\206\235\317\225\206\235\320\225\313\224\206\253\317\224\206\253\320\224\313\321#]\210b\210n\204\311\322u\210\202\277\204\330	X\203\330\323 \210b*\210\202qm\203\352\324 \210\202\355\322u\210\204\373h\325U\203\373\322u\210`\211)\207" [current allout-recent-depth level save-match-data-internal allout-regexp allout-line-boundary-regexp allout-back-to-current-heading allout-goto-prefix-doublechecked match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) looking-at 1 re-search-forward nil 0 2 3 - -1 allout-aberrant-container-p allout-end-of-entry 10 allout-recent-prefix-end allout-recent-prefix-beginning allout-header-subtraction allout-inhibit-aberrance-doublecheck allout-doublecheck-at-and-shallower include-trailing-blank allout-recent-end-of-subtree] 5 (#$ . 95867) "P"])
#@291 Put point at end of last leaf in currently visible containing topic.

Optional INCLUDE-TRAILING-BLANK means include a trailing blank line, if
any, as part of the subtree.  Otherwise, that trailing blank will be
excluded as delimiting whitespace between topics.

Returns the value of point.
(defalias 'allout-end-of-current-subtree #[(&optional include-trailing-blank) "\301\302\"\207" [include-trailing-blank allout-end-of-subtree t] 3 (#$ . 97521) nil])
#@209 When not already there, position point at beginning of current topic header.

If already there, move cursor to bullet for hot-spot operation.
(See `allout-mode' doc string for details of hot-spot operation.)
(defalias 'allout-beginning-of-current-entry #[(&optional interactive) "`\303\304!\210\305\306 W\203	b\210\202eb\210\307 \210\n\205&`U\205&\310 b)\207" [start-point allout-recent-prefix-end interactive move-beginning-of-line 1 0 allout-current-depth allout-end-of-prefix allout-current-bullet-pos] 2 (#$ . 97984) "p"])
#@217 Position the point at the end of the current topics' entry.

Optional INCLUSIVE means also include trailing empty line, if any.  When
unset, whitespace between items separates them even when the items are
collapsed.
(defalias 'allout-end-of-entry #[(&optional inclusive) "\301 \210\204o\204h\302U\203\303u\210`\207" [inclusive allout-pre-next-prefix 10 -1] 2 (#$ . 98526) nil])
(defalias 'allout-end-of-current-heading #[nil "\300 \210\301\302\303\304#\210\305u\207" [allout-beginning-of-current-entry search-forward "\n" nil t -1] 4 nil nil])
(defalias 'allout-end-of-heading 'allout-end-of-current-heading)
#@75 Return the unmangled body text of the topic immediately containing point.
(defalias 'allout-get-body-text #[nil "\212\301 \210\302\303\304\305#\205&\306u\210`\211\205%\307\305!\210`U?\205%\310T`\"))\207" [pre-body allout-end-of-prefix search-forward "\n" nil t -1 allout-end-of-entry buffer-substring-no-properties] 5 (#$ . 99148)])
#@67 Ascend to depth DEPTH, returning depth if successful, nil if not.
(defalias 'allout-ascend-to-depth #[(depth) "\304V\205.\305 X\205.\306\nW\203\307 \211\204b\210\310\311!\203(\312 \210	\205-\n)\207" [depth last-ascended allout-recent-depth allout-recent-prefix-beginning 0 allout-depth nil allout-ascend called-interactively-p interactive allout-end-of-prefix] 2 (#$ . 99493)])
#@261 Ascend one level, returning resulting depth if successful, nil if not.

Point is left at the beginning of the level whether or not
successful, unless optional DONT-MOVE-IF-UNSUCCESSFUL is set, in
which case point is returned to its original starting location.
(defalias 'allout-ascend #[(&optional dont-move-if-unsuccessful) "\203`\304 \2058`	\305 \210	\nW\203	\2027	\nU\2030\203)b\210\306 \210\307\2027b\210\306 \210\307*\310\311!\203A\312 \210\207" [dont-move-if-unsuccessful allout-recent-depth bolevel-depth bolevel allout-beginning-of-level allout-previous-heading allout-depth nil called-interactively-p interactive allout-end-of-prefix] 3 (#$ . 99892)])
#@90 Descend to depth DEPTH within current topic.

Returning depth if successful, nil if not.
(defalias 'allout-descend-to-depth #[(depth) "`\306 \306 \307V\203}\nU\204}\310 \311\216\312
!\203 \313u\210\314\315\307#\205s\313\225\2065\316\225\2065\317\225\313\224\206C\316\224\206C\317\224\313\320#]\210b\210n\204a\321u\210\202W\204pX\203p\322 \210b*\203}W\204\306 \307V\203\216\nU\203\216\n\202\222	b\210\315*\207" [start-depth start-point depth allout-recent-depth save-match-data-internal allout-regexp allout-depth 0 match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) looking-at 1 re-search-forward nil 2 3 - -1 allout-aberrant-container-p allout-line-boundary-regexp allout-recent-prefix-end allout-recent-prefix-beginning allout-header-subtraction allout-inhibit-aberrance-doublecheck allout-doublecheck-at-and-shallower] 5 (#$ . 100576)])
#@49 Move out ARG levels from current visible topic.
(defalias 'allout-up-current-level #[(arg) "`\302 \210\303 \204b\210\304\305!\202\306\307!\203\310 \210	)\207" [start-point allout-recent-prefix-beginning allout-back-to-current-heading allout-ascend error "Can't ascend past outermost level" called-interactively-p interactive allout-end-of-prefix] 2 (#$ . 101517) "p"])
#@255 Like `allout-forward-current-level', but respects invisible topics.

Traverse at optional DEPTH, or current depth if none specified.

Go backward if optional arg BACKWARD is non-nil.

Return the start point of the new topic if successful, nil otherwise.
(defalias 'allout-next-sibling #[(&optional depth backward) "\203o\202	m?\205	\206\306 `\n\307\310\211\f\204\267\203-o\202.m\204\267\203:\311 \202\233\312 \313\216\314!\203J\315u\210\316\310\307#\205\232\315\225\206_\317\225\206_\320\225\315\224\206m\317\224\206m\320\224\315\321\n#]\n\210\nb\210n\204\210\322u\210\202~ \204\230!X\203\230\323 \210\nb*\203\267\211V\203\267
T\211\324V\203!\325\211\203%\f\203\330\326\"\206\fb\210	\203\321\306 \210\202\324\210\310\202\fm\204\372\206\342\306 \307V\203\372U\203\372\nU\204\372\n\202\fb\210	\203\306 \210\202\210\310.\207" [backward depth allout-recent-prefix-beginning last-depth leaping count allout-depth 0 nil allout-previous-heading match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) looking-at 1 re-search-forward 2 3 - -1 allout-aberrant-container-p 7 t allout-next-sibling-leap start-prefix-beginning start-point target-depth save-match-data-internal allout-regexp allout-line-boundary-regexp allout-recent-prefix-end allout-header-subtraction allout-recent-depth allout-inhibit-aberrance-doublecheck allout-doublecheck-at-and-shallower] 7 (#$ . 101901)])
#@791 Like `allout-next-sibling', but by direct search for topic at depth.

Traverse at optional DEPTH, or current depth if none specified.

Go backward if optional arg BACKWARD is non-nil.

Return the start point of the new topic if successful, nil otherwise.

Costs more than regular `allout-next-sibling' for short traversals:

 - we have to check the prior (next, if traveling backwards)
   item to confirm connectivity with the prior topic, and
 - if confirmed, we have to reestablish the allout-recent-* settings with
   some extra navigation
 - if confirmation fails, we have to do more work to recover

It is an increasingly big win when there are many intervening
offspring before the next sibling, however, so
`allout-next-sibling' resorts to this if it finds itself in that
situation.
(defalias 'allout-next-sibling-leap #[(&optional depth backward) "\203o\202	m?\205\n`\n\206\306 \307\310Z\311X\203'\202-\312
\211#\307\211\313 \314\216\203H\315\307\316#\202Q\311u\210\317\307\316#*\211\203`\320 \203`\307\206n\203mo\202nm\211\2035\204\200	b\210\307\202\203\356\313 \321\216\322!\203\224\311u\210\317 \307\323#\205\351\311\225\206\251\310\225\206\251\324\225!\311\224\206\267\310\224\206\267\324\224\"\311\325!\"##]$\"\210\"b\210n\204\326\326u\210\202\314%\204\346$&X\203\346\320 \210\"b*\210\202\361\327 \210$W\203	b\210\306 \210\307\202b\210\330 .\207" [backward start-point depth target-depth search-whitespace-regexp depth-biased allout-depth nil 2 1 format match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) re-search-backward to-limit re-search-forward allout-aberrant-container-p ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) looking-at 0 3 - -1 allout-previous-heading allout-goto-prefix allout-depth-one-regexp allout-depth-specific-regexp expression found done save-match-data-internal allout-regexp allout-line-boundary-regexp allout-recent-prefix-end allout-recent-prefix-beginning allout-header-subtraction allout-recent-depth allout-inhibit-aberrance-doublecheck allout-doublecheck-at-and-shallower] 6 (#$ . 103417)])
#@228 Like `allout-forward-current-level' backwards, respecting invisible topics.

Optional DEPTH specifies depth to traverse, default current depth.

Optional BACKWARD reverses direction.

Return depth if successful, nil otherwise.
(defalias 'allout-previous-sibling #[(&optional depth backward) "\302	?\"\207" [depth backward allout-next-sibling] 3 (#$ . 105640)])
#@94 Position cursor at end of previous topic.

Presumes point is at the start of a topic prefix.
(defalias 'allout-snug-back #[nil "o\204m\204\300u\210o\204h\301U\203\300u\210`\207" [-1 10] 2 (#$ . 106008)])
#@61 Go back to the first sibling at this level, visible or not.
(defalias 'allout-beginning-of-level #[nil "\300\301!\207" [allout-end-of-level backward] 2 (#$ . 106226)])
#@55 Go to the last sibling at this level, visible or not.
(defalias 'allout-end-of-level #[(&optional backward) "\302 \303\304\"\204	\305\306!\203\307 \210)\207" [depth allout-recent-depth allout-depth allout-previous-sibling nil called-interactively-p interactive allout-end-of-prefix] 3 (#$ . 106400)])
#@147 Move to the next ARGth visible heading line, backward if ARG is negative.

Move to buffer limit in indicated direction if headings are exhausted.
(defalias 'allout-next-visible-heading #[(arg) "\306	\307W\205\f	[\211\211\203\310\202\311\312 \313\211	\307V\203\274\n\203-o\202.m\204\255\313\314\315\217\316 \210\n\204O`\fX\203O\313\210\313\317\320\217\210\316 \210`\203\255\321 \322\216\323!\204c\306\202\251\311\225\206o\324\225\206o\325\225\311\224\206}\324\224\206}\325\224\311\326#]\210 \204\244!X\203\244\327 \203\244\306\202\251\313*\204%\203\265	S\211\202 \203\306\330 \202\333
\203\322
b\210\330 \202\333\n?\205\333\313\210\313.\207" [inhibit-field-text-motion arg backward step progress prev t 0 -1 1 allout-current-bullet-pos nil (byte-code "\301!\206\302\207" [step line-move t] 2) ((error)) allout-beginning-of-current-line (line-move step) ((error)) match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) looking-at 2 3 - allout-aberrant-container-p allout-end-of-prefix got save-match-data-internal allout-regexp allout-recent-prefix-end allout-recent-prefix-beginning allout-header-subtraction allout-recent-depth allout-inhibit-aberrance-doublecheck allout-doublecheck-at-and-shallower] 6 (#$ . 106714) "p"])
#@173 Move to the previous heading line.

With argument, repeats or can move forward if negative.
A heading line is one that starts with a `*' (or that `allout-regexp'
matches).
(defalias 'allout-previous-visible-heading #[(arg) "\301[!\302\303!\203
\304 \210\207" [arg allout-next-visible-heading called-interactively-p interactive allout-end-of-prefix] 3 (#$ . 108066) "p"])
#@174 Position point at the next heading of the same level.

Takes optional repeat-count, goes backward if count is negative.

Returns resulting position, else nil if none found.
(defalias 'allout-forward-current-level #[(arg) "\305 \306V\211\306U\203\307\310!\210	\203[\311 \210\312!\2047	\203,\313 \202.\314 \2037S\202\315\316!\205\\\317 \210\312!?\205\\\307\320	\203Q\321\202R\322\f\323\n!Z\323\n!%+\207" [arg backward start-arg start-depth allout-recent-depth allout-current-depth 0 error "No siblings, not in a topic..." allout-back-to-current-heading zerop allout-previous-sibling allout-next-sibling called-interactively-p interactive allout-end-of-prefix "Hit %s level %d topic, traversed %d of %d requested" "first" "last" abs] 8 (#$ . 108446) "p"])
#@44 Inverse of `allout-forward-current-level'.
(defalias 'allout-backward-current-level #[(arg) "\302\303!\203[\304\305!)\207\305[!\207" [arg current-prefix-arg called-interactively-p interactive call-interactively allout-forward-current-level] 2 (#$ . 109231) "p"])
#@378 Outline internal var, for `allout-pre-command-business' hot-spot operation.

When set, tells post-processing to reposition on topic bullet, and
then unset it.  Set by `allout-pre-command-business' when implementing
hot-spot operation, where literal characters typed over a topic bullet
are mapped to the command of the corresponding control-key on the
`allout-mode-map-value'.
(defvar allout-post-goto-bullet nil (#$ . 109506))
(make-variable-buffer-local 'allout-post-goto-bullet)
#@164 Counter that monotonically increases in allout-mode buffers.

Set by `allout-pre-command-business', to support allout addons in
coordinating with allout activity.
(defvar allout-command-counter 0 (#$ . 109995))
(make-variable-buffer-local 'allout-command-counter)
#@59 True if the most recent allout-mode command hid any text.
(defvar allout-this-command-hid-text nil (#$ . 110265))
(make-variable-buffer-local 'allout-this-command-hid-text)
#@449 Outline `post-command-hook' function.

- Implement (and clear) `allout-post-goto-bullet', for hot-spot
  outline commands.

- Move the cursor to the beginning of the entry if it is hidden
  and collapsing activity just happened.

- If the command we're following was an undo, check for change in
  the status of encrypted items and adjust auto-save inhibitions
  accordingly.

- Decrypt topic currently being edited if it was encrypted for a save.
(defalias 'allout-post-command-business #[nil "\205g	\2030\306\307\310!\210\n\311U\203\203\312 \210\2020\212\214~\210eb\210\313 *\2040\314\315 !\210\316\304!\203=\f\203=\317 \210
\203N\320 \203N\320 b\210\306\211\207\306\321\206X`\322\")\323=\205g\205g\324 \207" [allout-mode allout-just-did-undo buffer-saved-size allout-auto-save-temporarily-disabled allout-after-save-decrypt allout-post-goto-bullet nil run-hooks allout-post-undo-hook -1 allout-maybe-resume-auto-save-info-after-encryption allout-next-topic-pending-encryption allout-inhibit-auto-save-info-for-decryption buffer-size boundp allout-after-saves-handler allout-current-bullet-pos get-char-property invisible allout allout-beginning-of-current-entry pos allout-this-command-hid-text] 3 (#$ . 110445)])
#@826 Outline `pre-command-hook' function for outline buffers.

Among other things, implements special behavior when the cursor is on the
topic bullet character.

When the cursor is on the bullet character, self-insert
characters are reinterpreted as the corresponding
control-character in the `allout-mode-map-value'.  The
`allout-mode' `post-command-hook' insures that the cursor which
has moved as a result of such reinterpretation is positioned on
the bullet character of the destination topic.

The upshot is that you can get easy, single (ie, unmodified) key
outline maneuvering operations by positioning the cursor on the bullet
char.  When in this mode you can use regular cursor-positioning
command/keystrokes to relocate the cursor off of a bullet character to
return to regular interpretation of self-insert characters.
(defalias 'allout-pre-command-business #[nil "\205	T\304\305=\205`\306 =\205\307 \207" [allout-mode allout-command-counter allout-this-command-hid-text this-command nil self-insert-command allout-current-bullet-pos allout-hotspot-key-handler] 2 (#$ . 111694)])
#@275 Catchall handling of key bindings in hot-spots.

Translates unmodified keystrokes to corresponding allout commands, when
they would qualify if prefixed with the `allout-command-prefix', and sets
`this-command' accordingly.

Returns the qualifying command, if any, else nil.
(defalias 'allout-hotspot-key-handler #[nil "\306!\247\203
\202$\307\310!\203#\311\310C\"\203#\311\312C\"\202$\313\314\315\n!?\205\210	\204i\316\nX\203i\317\320\f\321\322\nX\203N\323\nY\203N\n\324Z\202O\n!\"\325\"\206_\317\320\f\321\n!\"\325\"\211\203i\325\202o\317\321\n!!\326!\203\200\327\321\330 !\"\202o\205\210\211+\207" [last-command-event modified key-num mapped-binding allout-command-prefix allout-post-goto-bullet event-modifiers fboundp characterp apply char-to-int 0 nil zerop 33 key-binding vconcat vector 97 122 96 t keymapp lookup-key read-char this-command] 6 (#$ . 112797) nil])
#@132 Activate `allout-mode' on non-nil `allout-auto-activation', `allout-layout'.

See `allout-auto-activation' for setup instructions.
(defalias 'allout-find-file-hook #[nil "\205	?\205\n\205\301 \207" [allout-auto-activation allout-mode allout-layout] 1 (#$ . 113709)])
#@131 Prompt for and return a bullet char as an alternative to the current one.

Offer one suitable for current depth DEPTH as default.
(defalias 'allout-solicit-alternate-bullet #[(depth &optional current-bullet) ";\203	\206\f\306	!\307!\310\212\311 b\210\312\313\314\f\315\n!#\f\316#)\317\320!\210
\320\230\2033\n\2024
+\207" [current-bullet depth default-bullet allout-bullets-string sans-escapes choice allout-bullet-for-depth regexp-sans-escapes nil allout-current-bullet-pos solicit-char-in-string format "Select bullet: %s ('%s' default): " allout-substring-no-properties t message ""] 6 (#$ . 113990)])
#@72 True if BULLET is one of those on `allout-distinctive-bullets-string'.
(defalias 'allout-distinctive-bullet #[(bullet) "\302\303!	\"\207" [bullet allout-distinctive-bullets-string string-match regexp-quote] 3 (#$ . 114612)])
#@58 True if current header prefix bullet is numbered bullet.
(defalias 'allout-numbered-type-prefix #[(&optional prefix) "\205	\203\302	!\202\303 \230\207" [allout-numbered-bullet prefix allout-get-prefix-bullet allout-get-bullet] 3 (#$ . 114844)])
#@72 True if current header prefix bullet is for an encrypted entry (body).
(defalias 'allout-encrypted-type-prefix #[(&optional prefix) "\205	\203\302	!\202\303 \230\207" [allout-topic-encryption-bullet prefix allout-get-prefix-bullet allout-get-bullet] 3 (#$ . 115103)])
#@73 Return outline topic bullet suited to optional DEPTH, or current depth.
(defalias 'allout-bullet-for-depth #[(&optional depth) "\203\305	\306\n\307Z]\246H!\207\f\207" [allout-stylish-prefixes allout-plain-bullets-string depth allout-plain-bullets-string-len allout-primary-bullet char-to-string 0 2] 5 (#$ . 115385)])
#@2075 Generate a topic prefix suitable for optional arg DEPTH, or current depth.

All the arguments are optional.

PRIOR-BULLET indicates the bullet of the prefix being changed, or
nil if none.  This bullet may be preserved (other options
notwithstanding) if it is on the `allout-distinctive-bullets-string',
for instance.

Second arg NEW indicates that a new topic is being opened after the
topic at point, if non-nil.  Default bullet for new topics, eg, may
be set (contingent to other args) to numbered bullets if previous
sibling is one.  The implication otherwise is that the current topic
is being adjusted -- shifted or rebulleted -- and we don't consider
bullet or previous sibling.

Third arg DEPTH forces the topic prefix to that depth, regardless of
the current topics' depth.

If INSTEAD is:

- nil, then the bullet char for the context is used, per distinction or depth
- a (numeric) character, then character's string representation is used
- a string, then the user is asked for bullet with the first char as default
- anything else, the user is solicited with bullet char per context as default

(INSTEAD overrides other options, including, eg, a distinctive
PRIOR-BULLET.)

Fifth arg, NUMBER-CONTROL, matters only if `allout-numbered-bullet'
is non-nil *and* no specific INSTEAD was specified.  Then
NUMBER-CONTROL non-nil forces prefix to either numbered or
unnumbered format, depending on the value of the sixth arg, INDEX.

(Note that NUMBER-CONTROL does *not* apply to level 1 topics.  Sorry...)

If NUMBER-CONTROL is non-nil and sixth arg INDEX is non-nil then
the prefix of the topic is forced to be numbered.  Non-nil
NUMBER-CONTROL and nil INDEX forces non-numbered format on the
bullet.  Non-nil NUMBER-CONTROL and non-nil, non-number INDEX means
that the index for the numbered prefix will be derived, by counting
siblings back to start of level.  If INDEX is a number, then that
number is used as the index for the numbered prefix (allowing, eg,
sequential renumbering to not require this function counting back the
index for each successive sibling).
(defalias 'allout-make-topic-prefix #[(&optional prior-bullet new depth instead number-control index) "\306\211\306\206\f\307 \f\310X\203\311\202\203/\312\313!\"\311\211\202\312\314Z\315\"\203\204;\203TG\316V\205e\317\316\310O\"\202e\320!\203b\321!\202e\317!\205}\205t??\205}\230)\202\203\266\203\266?\211?\211\203\236\202 \203\260 \230\204\260 \202\322!\202!\203\360\307 X\203\360\203\360\n\204\360\212\307 Y\204\327\323!\210\324 )\211\"\205\354\"\230\205\354\"\211)\206 \203\325 !\203\203 \230\203\n?\211\203 \206\322!#
#	\205C\326\327\2034\247\2034\202B!\203@\330!T\202B\330 \"R.\207" [body numbering denumbering depth allout-header-prefix header-lead nil allout-depth 1 "" make-string string-to-char 2 32 0 allout-solicit-alternate-bullet characterp char-to-string allout-bullet-for-depth allout-ascend-to-depth allout-get-bullet allout-distinctive-bullet format "%d" allout-sibling-index allout-primary-bullet allout-old-style-prefixes instead got allout-numbered-bullet number-control index prior-bullet new sibling-bullet bullet-char] 8 (#$ . 115715)])
#@1471 Open a new topic at depth DEPTH.

New topic is situated after current one, unless optional flag BEFORE
is non-nil, or unless current line is completely empty -- lacking even
whitespace -- in which case open is done on the current line.

When adding an offspring, it will be added immediately after the parent if
the other offspring are exposed, or after the last child if the offspring
are hidden.  (The intervening offspring will be exposed in the latter
case.)

If OFFER-RECENT-BULLET is true, offer to use the bullet of the prior sibling.

Nuances:

- Creation of new topics is with respect to the visible topic
  containing the cursor, regardless of intervening concealed ones.

- New headers are generally created after/before the body of a
  topic.  However, they are created right at cursor location if the
  cursor is on a blank line, even if that breaks the current topic
  body.  This is intentional, to provide a simple means for
  deliberately dividing topic bodies.

- Double spacing of topic lists is preserved.  Also, the first
  level two topic is created double-spaced (and so would be
  subsequent siblings, if that's left intact).  Otherwise,
  single-spacing is used.

- Creation of sibling or nested topics is with respect to the topic
  you're starting from, even when creating backwards.  This way you
  can easily create a sibling in front of the current topic without
  having to go to its preceding sibling, and then open forward
  from there.
(defalias 'allout-open-topic #[(relative-depth &optional before offer-recent-bullet) "\306 \210\307 \310\216\311\312 \n\\\313\314!\205\315\211?\315\21134\3155\212\n\316W\2031\317!\210\202:\n\320Y\204:\321 \210647\320V\203O\3227S7\"\202P\3235\2128\205k\n\316X\204d\324!\205k\325 \205k8)3`)9\315\211:;\315\211<=
\204s9b\210\n\316X\203\252\212\316\326yV\206\233\313\327!\206\233o)\203\252\212\330 \210\313\331!)\206\3004\320U\205\300\f\206\300\320U\206\300\212\332 )?:\f\203\334\n\316Y\203\334\321 \210o;o\204\350\333 \210\202\350\f\203\350o\203\350\334\320!\210\n\316X\203N;\203:\204\377\334\320!\210\202\334\335!\210\202\f\203?\315\210\332 \210g\336U\2032\212\320u\210\315>\337>\206$`\340\"*\341=\2032\320u\210\202\313\314!\204\334\320!\210\202\330 \210\313\331!\203\320u\210\202\342 \210m\203\\\343\320!\210\202`\344\320!\210\306 \210\326u\210n\203s\311:\345\346\315\311#\210\313\331!\203|\311:\212\307 \347\216\313?!\203\214\320u\210\350@\315\316#\205\341\320\225\206\241\335\225\206\241\351\2257\320\224\206\257\335\224\206\257\351\224A\320\3527AB#]6A\210Ab\210n\204\316\326u\210\202\304C\204\3366DX\203\336\353 \210Ab*\21064V\205\361\326y\210\313\327!)\203\377\320y\210\334\320!\210\320y\210\354 \210o\204s4V\204\f\204\334\320!\210\202?:\204+4V\203+\343\320!\210\202?:\2037\334\320!\210\202?\f\204?\343\320!\210:\203N\n\316V\204N\343\320!\210m\204sn\203po\204s\212\326u\210\315>\337>\206h`\340\"*\341=\203s\320u\210`<\3553\311#\356Pc\210`T=\357E\205\2145\315\211\311%\210\n\316V\203\241\2129b\210\360 \210)\315\210\361\362<=#.
\207" [save-match-data-internal inhibit-field-text-motion relative-depth depth before opening-on-blank allout-beginning-of-current-line match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) t allout-current-depth looking-at "^$" nil 0 allout-ascend-to-depth 1 allout-back-to-current-heading buffer-substring-no-properties "" allout-descend-to-depth allout-numbered-type-prefix -1 "^\\s-*$" allout-end-of-current-subtree "\n\n" allout-pre-next-prefix allout-previous-heading open-line 2 10 get-char-property invisible allout allout-end-of-entry newline line-move re-search-backward "[^ 	\n]" ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) re-search-forward 3 - allout-aberrant-container-p allout-end-of-current-line allout-make-topic-prefix " " allout-rebullet-heading allout-show-children run-hook-with-args allout-structure-added-functions opening-numbered ref-depth ref-bullet allout-recent-depth allout-recent-prefix-end allout-numbered-bullet ref-topic dbl-space doing-beginning start end pos allout-regexp allout-line-boundary-regexp allout-recent-prefix-beginning allout-header-subtraction allout-inhibit-aberrance-doublecheck allout-doublecheck-at-and-shallower offer-recent-bullet] 7 (#$ . 119012)])
#@157 Open new topic header at deeper level than the current one.

Negative universal ARG means to open deeper, but place the new topic
prior to the current one.
(defalias 'allout-open-subtopic #[(arg) "\301\302\303V\302W#\207" [arg allout-open-topic 1 0] 5 (#$ . 123467) "p"])
#@206 Open new topic header at same level as the current one.

Positive universal ARG means to use the bullet of the prior sibling.

Negative universal ARG means to place the new topic prior to the current
one.
(defalias 'allout-open-sibtopic #[(arg) "\301\302\211V\303U?#\207" [arg allout-open-topic 0 1] 5 (#$ . 123748) "p"])
#@163 Open new topic header at shallower level than the current one.

Negative universal ARG means to open shallower, but place the new
topic prior to the current one.
(defalias 'allout-open-supertopic #[(arg) "\301\302\303V\304W#\207" [arg allout-open-topic -1 0 1] 5 (#$ . 124079) "p"])
#@66 Name of modal fill function being wrapped by `allout-auto-fill'.
(defvar allout-former-auto-filler nil (#$ . 124370))
#@119 `allout-mode' autofill function.

Maintains outline hanging topic indentation if
`allout-use-hanging-indents' is set.
(defalias 'allout-auto-fill #[nil "?\205R	\203\306 ?\205R\n\205*\307 \310\216\212\311 \210\312\f!\205)\313\314 \210i\315\"+
\316=\203;\316=\203;\317\202A
\206A\204N\n\205Q *\207" [allout-inhibit-auto-fill allout-inhibit-auto-fill-on-headline allout-use-hanging-indents save-match-data-internal allout-regexp allout-outside-normal-auto-fill-function allout-on-current-heading-p match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) beginning-of-line looking-at make-string allout-end-of-prefix 32 allout-auto-fill do-auto-fill auto-fill-function use-auto-fill-function fill-prefix allout-former-auto-filler] 3 (#$ . 124495)])
#@208 Reindent body lines which were indented at OLD-DEPTH to NEW-DEPTH.

Optional arg NUMBER indicates numbering is being added, and it must
be accommodated.

Note that refill of indented paragraphs is not done.
(defalias 'allout-reindent-body #[(old-depth new-depth &optional number) "\212\306 \210i\307\211\307\f
Z\\?\205\310\310\311 \312\216\313\314\307\310#\205Z\315\224\315\225\211\205Z\316!?\205Z\317\nZZ\211V\204%\n|\210\320	i#j\210\202%.\n\207" [new-margin excess old-indent-begin old-indent-end old-depth new-depth allout-end-of-prefix nil t match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) re-search-forward "\n\\(\\s-*\\)" 1 looking-at 0 + old-margin buffer-read-only inhibit-field-text-motion inhibit-read-only save-match-data-internal allout-regexp] 5 (#$ . 125314)])
#@49 Solicit new bullet for current visible heading.
(defalias 'allout-rebullet-current-heading #[(arg) "i`\306 =\307\211\310W\205[\211\310V\203Y\212\311 \210\312 \210\313\314\307\211\211\314%\210\315\316\n\314$\210)S\211\310X\204\307	\204O\317\320!\210\202\321 \210\317\322!\210\202\323\324!\210\f\203g\306 b\202n
\205n\325
!-\207" [arg backwards to from on-bullet initial-col allout-current-bullet-pos nil 0 allout-back-to-current-heading allout-end-of-prefix allout-rebullet-heading t run-hook-with-args allout-exposure-change-functions allout-next-visible-heading 1 allout-goto-prefix-doublechecked -1 message "Done." move-to-column allout-recent-prefix-beginning allout-recent-prefix-end] 7 (#$ . 126176) "p"])
#@1436 Adjust bullet of current topic prefix.

All args are optional.

If INSTEAD is:
- nil, then the bullet char for the context is used, per distinction or depth
- a (numeric) character, then character's string representation is used
- a string, then the user is asked for bullet with the first char as default
- anything else, the user is solicited with bullet char per context as default

Second arg DEPTH forces the topic prefix to that depth, regardless
of the topic's current depth.

Third arg NUMBER-CONTROL can force the prefix to or away from
numbered form.  It has effect only if `allout-numbered-bullet' is
non-nil and soliciting was not explicitly invoked (via first arg).
Its effect, numbering or denumbering, then depends on the setting
of the fourth arg, INDEX.

If NUMBER-CONTROL is non-nil and fourth arg INDEX is nil, then the
prefix of the topic is forced to be non-numbered.  Null index and
non-nil NUMBER-CONTROL forces denumbering.  Non-nil INDEX (and
non-nil NUMBER-CONTROL) forces a numbered-prefix form.  If non-nil
INDEX is a number, then that number is used for the numbered
prefix.  Non-nil and non-number means that the index for the
numbered prefix will be derived by allout-make-topic-prefix.

Fifth arg DO-SUCCESSORS t means re-resolve count on succeeding
siblings.

Cf vars `allout-stylish-prefixes', `allout-old-style-prefixes',
and `allout-numbered-bullet', which all affect the behavior of
this function.
(defalias 'allout-rebullet-heading #[(&optional instead new-depth number-control index do-successors) "\306 	\206\n\f\307
S
\"\310\311\"\312\313	& 	U\203@ \211GS\313O\230\203@\314\202\364!?\205G\314\314\"#
|\210*b\210\315 $\316\216%\203\200%\230\203\200\317\320!\203\200!?\205t\314\314\"#\321\224\321\225|\210**\203\221\322\321 G\311\314 %\210!?\205\230\314\314\"# c\210*&\203\267	U\204\267\323 \204\267\324	\"\210\325\326
\313$\210'\205\364\212\327	\313\"\205\363\247\203\327T\202\337?\205\337\330 \331 \203\304\332\313	\313%\210\202\304).\207" [current-depth new-depth allout-recent-prefix-beginning mb allout-recent-prefix-end me allout-depth buffer-substring-no-properties get-text-property allout-was-hidden allout-make-topic-prefix nil t match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) looking-at "[0-9]+" 0 put-text-property allout-encrypted-topic-p allout-reindent-body run-hook-with-args allout-exposure-change-functions allout-next-sibling allout-sibling-index allout-numbered-type-prefix allout-rebullet-heading current-bullet has-annotation instead number-control index new-prefix buffer-read-only inhibit-field-text-motion inhibit-read-only save-match-data-internal allout-numbered-bullet allout-reindent-bodies do-successors] 7 (#$ . 126927)])
#@480 Rebullet the visible topic containing point and all contained subtopics.

Descends into invisible as well as visible topics, however.

When optional SANS-OFFSPRING is non-nil, subtopics are not
shifted.  (Shifting a topic outwards without shifting its
offspring is disallowed, since this would create a "containment
discontinuity", where the depth difference between a topic and
its immediate offspring is greater than one.)

With repeat count, shift topic depth by that amount.
(defalias 'allout-rebullet-topic #[(arg &optional sans-offspring) "i\212	\204\f\304\202	<\203	@\305	!\204\306\307!\210\310 \210\n	\\\304X\203-\311\312!\210\313	\314\211\211\211&\210\305	!\204A\306\315!\210)\316\304	\\]!)\207" [start-col arg allout-recent-depth sans-offspring 0 zerop message "Shifting..." allout-back-to-current-heading error "Attempt to shift topic below level 1" allout-rebullet-topic-grunt nil "Shifting... done." move-to-column] 7 (#$ . 129761) "P"])
#@680 Like `allout-rebullet-topic', but on nearest containing topic
(visible or not).

See `allout-rebullet-heading' for rebulleting behavior.

All arguments are optional.

First arg RELATIVE-DEPTH means to shift the depth of the entire
topic that amount.

Several subsequent args are for internal recursive use by the function
itself: STARTING-DEPTH, STARTING-POINT, and INDEX.

Finally, if optional SANS-OFFSPRING is non-nil then the offspring
are not shifted.  (Shifting a topic outwards without shifting
its offspring is disallowed, since this would create a
"containment discontinuity", where the depth difference between
a topic and its immediate offspring is greater than one.)
(defalias 'allout-rebullet-topic-grunt #[(&optional relative-depth starting-depth starting-point index do-successors sans-offspring) "\203	\203	\306W\203\307\310!\210	\206\306\311 \206 \n\f?\2066\312	!\2044
?\2056\313 \211\306	W\f\206E``
\203^\203^\306	\\V\203^\307\314!\210\nU\203	\306Y\203u\315\316	\\\316\316%\210\204\377\306\317 \320\216\321 !\203\214\322u\210\323!\316\306#\205\341\322\225\206\241\324\225\206\241\325\225\"\322\224\206\257\324\224\206\257\325\224#\322\326\"#$#]%#\210#b\210n\204\316\327u\210\202\304&\204\336%'X\203\336\330 \210#b*\210m\204\377\311 W\203\377T\331	T\f$\210\202\343	\306W\203(\212b\210\315\316	\\\316\316%\210)\202(\nW\203(\331	\n\f%\210
\205`(\204G\312	!\204O%U\204G%	\\U\203O\315\316\211\211\211\332%\210\fb\210\312	!?\205`\315\316\211\211\211\332%.	\207" [sans-offspring relative-depth new-depth starting-depth starting-point on-starting-call 0 error "Attempt to shift topic outwards without offspring, would cause containment discontinuity." allout-depth zerop allout-sibling-index "Attempt to shift topic out beyond level 1" allout-rebullet-heading nil match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) looking-at 1 re-search-forward 2 3 - -1 allout-aberrant-container-p allout-rebullet-topic-grunt t index starting-index moving-outwards local-point save-match-data-internal allout-regexp allout-line-boundary-regexp allout-recent-prefix-end allout-recent-prefix-beginning allout-header-subtraction allout-recent-depth allout-inhibit-aberrance-doublecheck allout-doublecheck-at-and-shallower do-successors] 7 (#$ . 130734)])
#@134 Renumber siblings at current depth.

Affects superior topics if optional arg DEPTH is less than current depth.

Returns final depth.
(defalias 'allout-renumber-to-depth #[(&optional depth) "\306 \307m\204\247\306 \203\247\nY\203\247	Y\203\247m\211\204\214\n	V\203\214\310 \311\216\312
!\2034\313u\210\314\307\315#\205\207\313\225\206I\316\225\206I\317\225\313\224\206W\316\224\206W\317\224\313\320#]\210b\210n\204u\321u\210\202k\204\204\nX\203\204\322 \210b*\210\202\nS\nY\203\235\323\307\211\211\211\324%\210\203db\210\202*\n\207" [was-eobp ascender allout-recent-depth depth save-match-data-internal allout-regexp allout-depth nil match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) looking-at 1 re-search-forward 0 2 3 - -1 allout-aberrant-container-p allout-rebullet-heading t allout-line-boundary-regexp allout-recent-prefix-end allout-recent-prefix-beginning allout-header-subtraction allout-inhibit-aberrance-doublecheck allout-doublecheck-at-and-shallower] 6 (#$ . 133141)])
#@260 Assign numbered topic prefix to this topic and its siblings.

With universal argument, denumber -- assign default bullet to this
topic and its siblings.

With repeated universal argument (`^U^U'), solicit bullet for each
rebulleting each topic at this level.
(defalias 'allout-number-siblings #[(&optional denumber) "\212\306 \210\307 \210	?\205\310	\311\232\312\n\2053\313
\312\f\314%\210\f\203)\fT\315
\314\"\211\204\314-\207" [allout-recent-depth denumber more use-bullet index depth allout-back-to-current-heading allout-beginning-of-level 1 (16) t allout-rebullet-heading nil allout-next-sibling] 7 (#$ . 134231) "P"])
#@633 Increase depth of current heading and any items collapsed within it.

With a negative argument, the item is shifted out using
`allout-shift-out', instead.

With an argument greater than one, shift-in the item but not its
offspring, making the item into a sibling of its former children,
and a child of sibling that formerly preceded it.

You are not allowed to shift the first offspring of a topic
inwards, because that would yield a "containment
discontinuity", where the depth difference between a topic and
its immediate offspring is greater than one.  The first topic in
the file can be adjusted to any positive depth, however.
(defalias 'allout-shift-in #[(arg) "\306W\203\307[!\207\212\310 \210o\204L	`\311u\210\312 \210`W\203'	\202(\306\211\306V\203>\nT\fTV\203>\313\314!\210\202K\310 \210	\nTW\203K\315 \210+)`\316\317\317V\205X\320\"\210\321\322
#)\207" [arg allout-recent-depth current-depth start-point predecessor-depth where 0 allout-shift-out allout-back-to-current-heading -1 allout-goto-prefix-doublechecked error "Disallowed shift deeper than containing topic's children." allout-show-children allout-rebullet-topic 1 sans-offspring run-hook-with-args allout-structure-shifted-functions] 5 (#$ . 134876) "p"])
#@520 Decrease depth of current heading and any topics collapsed within it.
This will make the item a sibling of its former container.

With a negative argument, the item is shifted in using
`allout-shift-in', instead.

With an argument greater than one, shift-out the item's offspring
but not the item itself, making the former children siblings of
the item.

With an argument greater than 1, the item's offspring are shifted
out without shifting the item.  This will make the immediate
subtopics into siblings of the item.
(defalias 'allout-shift-out #[(arg) "\306W\203\307[!\207\212\310 \203\311 \210)\312 \203$\212\313 )\203$\311 \210\314 \205*	\212\315V\203^\316\315!\211@<\203@\317!\212\320\211\203Z
@\211b\210\321\315!\210
A\211\204I,\202c\322[!\210)\323\324[\n#)\207" [arg allout-recent-prefix-beginning where children-chart child-point --dolist-tail-- 0 allout-shift-in allout-ascend allout-show-children allout-current-topic-collapsed-p allout-next-sibling allout-depth 1 allout-chart-subtree allout-flatten nil allout-shift-out allout-rebullet-topic run-hook-with-args allout-structure-shifted-functions] 5 (#$ . 136129) "p"])
#@66 Kill line, adjusting subsequent lines suitably for outline mode.
(defalias 'allout-kill-line #[(&optional arg) "\203n\203\306 \307\216\310\n!*\204\311!\207`\312\211\313\206&`\314\")\315=\212\316 \210`\312\313\206=`\314\"*\315=\317 \320\f
\"\210\321\216\204l\204l?\205`\322\322\311!*\202o\311!.\207" [allout-mode save-match-data-internal allout-regexp arg beg end match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) looking-at kill-line nil get-char-property invisible allout allout-end-of-current-line allout-depth allout-annotate-hidden ((byte-code "\306\307!\210\310	\"\210\n\203\204\212\311 \312\216\313\f!*\204~\311 \314\216\313\f!\203(\315u\210\316
\317\320#\205|\315\225\206<\321\225\206<\322\225\315\224\206J\321\224\206J\322\224\315\323#]\210b\210n\204i\324u\210\202_\204yX\203y\325 \210b*\210\326!\210)\327\330`#\207" [beg end allout-numbered-bullet save-match-data-internal allout-regexp allout-line-boundary-regexp run-hooks allout-after-copy-or-kill-hook allout-deannotate-hidden match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) looking-at ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 1 re-search-forward nil 0 2 3 - -1 allout-aberrant-container-p allout-renumber-to-depth run-hook-with-args allout-structure-deleted-functions allout-recent-prefix-end allout-recent-prefix-beginning allout-header-subtraction allout-recent-depth allout-inhibit-aberrance-doublecheck allout-doublecheck-at-and-shallower depth] 5)) t pos beg-hidden end-hidden depth buffer-read-only inhibit-field-text-motion inhibit-read-only] 4 (#$ . 137293) "*P"])
#@70 Like `allout-kill-topic', but save to kill ring instead of deleting.
(defalias 'allout-copy-line-as-kill #[nil "\301\302\303\304\217)\207" [buffer-read-only t nil (allout-kill-line) ((buffer-read-only))] 3 (#$ . 139065) nil])
#@408 Kill topic together with subtopics.

Trailing whitespace is killed with a topic if that whitespace:

 - would separate the topic from a subsequent sibling
 - would separate the topic from the end of buffer
 - would not be added to whitespace already separating the topic from the
   previous one.

Topic exposure is marked with text-properties, to be used by
`allout-yank-processing' for exposure recovery.
(defalias 'allout-kill-topic #[nil "\306\307 \310 \210\311\312 \210i\313U\204m\204\314u\210m\204\260\315 \316\216\317\320!*\203\260\212\315 \321\216\317!\203<\314u\210\322\311\313#\205\217\314\225\206Q\323\225\206Q\324\225\314\224\206_\323\224\206_\324\224\314\325 #]\210b\210n\204}\326u\210\202s!\204\214\"X\203\214\327 \210b*?\206\227\fU)\204\255	eZ\324V\203\260	\323Z	{\330\230\203\260\314u\210\331	`\211\"\210\332\216#?\205\300\306\306$\333	\n\".\207" [inhibit-field-text-motion beg end allout-recent-depth depth save-match-data-internal t allout-back-to-current-heading beginning-of-line nil allout-end-of-current-subtree 0 1 match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) looking-at "\n" ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) re-search-forward 2 3 - -1 allout-aberrant-container-p "\n\n" allout-annotate-hidden ((byte-code "\303	\"\210\304\305!\210\212\306\n!\210)\307\310\n`#\207" [beg end depth allout-deannotate-hidden run-hooks allout-after-copy-or-kill-hook allout-renumber-to-depth run-hook-with-args allout-structure-deleted-functions] 4)) kill-region allout-regexp allout-line-boundary-regexp allout-recent-prefix-end allout-recent-prefix-beginning allout-header-subtraction allout-inhibit-aberrance-doublecheck allout-doublecheck-at-and-shallower buffer-read-only inhibit-read-only] 5 (#$ . 139299) nil])
#@70 Like `allout-kill-topic', but save to kill ring instead of deleting.
(defalias 'allout-copy-topic-as-kill #[nil "\301\302\303\304\217)\207" [buffer-read-only t nil (allout-kill-topic) ((buffer-read-only (message "Topic copied...")))] 3 (#$ . 141188) nil])
#@59 Qualify text with properties to indicate exposure status.
(defalias 'allout-annotate-hidden #[(begin end) "\306 \307\310\n\"\210\212\nb\210\307\211\211\211\204\234\307\311\206'`\312\")\313=\204:`T\314`\312\307$]\203F
=\203M\315\211\202b\210\307\311\206^`\312\")\313=\204m\315\211\202\316 \317\f!\211\203b\210?\205\206\315\315\315\320\321\f!\322\315$\210+\202-\323	!*\207" [buffer-read-only was-modified begin end overlay prev buffer-modified-p nil allout-deannotate-hidden get-char-property invisible allout allout-next-single-char-property-change t allout-get-invisibility-overlay overlay-end put-text-property overlay-start allout-was-hidden set-buffer-modified-p next done pos inhibit-field-text-motion inhibit-read-only buffer-undo-list] 7 (#$ . 141451)])
#@61 Remove allout hidden-text annotation between BEGIN and END.
(defalias 'allout-deannotate-hidden #[(begin end) "?\205\306\306\306\211\307\f
d^\310#,\207" [buffer-read-only inhibit-field-text-motion inhibit-read-only buffer-undo-list begin end t remove-text-properties (allout-was-hidden t)] 4 (#$ . 142285)])
#@76 Translate text properties indicating exposure status into actual exposure.
(defalias 'allout-hide-by-annotation #[(begin end) "\212b\210\306 \307\211\211\204p\310`\311\"\204\312`\311\307
$\n\203)	\n=\203/\313\211\202\nb\210\n\310`\311\"\204A\313\211\202\312`\311\307
$\314	\n\307\315$\316\317\320#\210\316\321\313#\210)\322	\n\"\210\n\n\203
\nb\210\202
\323\f!-\207" [begin prev next done was-modified end buffer-modified-p nil get-text-property allout-was-hidden allout-next-single-char-property-change t make-overlay front-advance overlay-put category allout-exposure-category evaporate allout-deannotate-hidden set-buffer-modified-p o] 6 (#$ . 142606)])
#@716 Incidental allout-specific business to be done just after text yanks.

Does depth adjustment of yanked topics, when:

1 the stuff being yanked starts with a valid outline header prefix, and
2 it is being yanked at the end of a line which consists of only a valid
     topic prefix.

Also, adjusts numbering of subsequent siblings when appropriate.

Depth adjustment alters the depth of all the topics being yanked
the amount it takes to make the first topic have the depth of the
header into which it's being yanked.

The point is left in front of yanked, adjusted topics, rather than
at the end (and vice-versa with the mark).  Non-adjusted yanks,
however, are left exactly like normal, non-allout-specific yanks.
(defalias 'allout-yank-processing #[(&optional arg) "\306\307!`W\203\310 \210\311 \312\216`n\306\307!\307\313 )\205P\314
!\205P\315\225\2062\316\225\2062\317\225'\315\224\206@\316\224\206@\317\224(\315\320'()#]*(\211+\206]\n\205]\314
!,+\203\203\307-\315\225\204p\315\202t\315\225	Z.*/\321'S'\"0\212b\205\327l\205\327	b\205\327\314
!\205\327\322 \210`	U?\205\327\314
!\205\327\315\225\206\264\316\225\206\264\317\225'\315\224\206\302\316\224\206\302\317\224(\315\320'()#]*(\205\327*)1\30723,1\203~\214	}\210db\210\314\323!\2034?\205\373\307\307-5\324\325!\210*2\203A\326 \210\327\307!\204
\2124?\205\307\307-5\3301/Z!\210*\331 \210)o?\2112\203~\210\325u\210	`}\210\202)4?\205I\307\307-5`\332`.1/Z#|\210\314\333!\203h\324\315!\210\202[\324\325!\210l\204s\334u\210*\335\3360!!\210\202\201\310 \210.,\203\260\212\337\340!\210	b\210\341 \203\2534?\205\234\307\307-5\335\334\331 \334\211\307%\210*\337\342!\210)\n\204\271+\203\303\343`\306\307!\"\210\202\312\344\306\307!`\"\210+\204\322\310 \210\345\346	#.\207" [save-match-data-internal subj-beg into-bol subj-end allout-inhibit-aberrance-doublecheck allout-regexp allout-mark-marker t exchange-point-and-mark match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) allout-e-o-prefix-p looking-at 1 2 3 - buffer-substring-no-properties beginning-of-line "^$" delete-char -1 allout-back-to-current-heading allout-ascend allout-rebullet-topic-grunt allout-depth + "[0-9]" nil allout-rebullet-heading string-to-char message "... reconciling numbers" allout-goto-prefix-doublechecked "" allout-hide-by-annotation allout-deannotate-hidden run-hook-with-args allout-structure-added-functions allout-recent-prefix-end allout-recent-prefix-beginning allout-header-subtraction allout-recent-depth resituate rectify-numbering inhibit-field-text-motion prefix-len subj-depth prefix-bullet adjust-to-depth more allout-numbered-bullet buffer-read-only inhibit-read-only] 7 (#$ . 143300) "*P"])
#@1110 `allout-mode' yank, with depth and numbering adjustment of yanked topics.

Non-topic yanks work no differently than normal yanks.

If a topic is being yanked into a bare topic prefix, the depth of the
yanked topic is adjusted to the depth of the topic prefix.

  1 we're yanking in an `allout-mode' buffer
  2 the stuff being yanked starts with a valid outline header prefix, and
  3 it is being yanked at the end of a line which consists of only a valid
    topic prefix.

If these conditions hold then the depth of the yanked topics are all
adjusted the amount it takes to make the first one at the depth of the
header into which it's being yanked.

The point is left in front of yanked, adjusted topics, rather than
at the end (and vice-versa with the mark).  Non-adjusted yanks,
however, (ones that don't qualify for adjustment) are handled
exactly like normal yanks.

Numbering of yanked topics, and the successive siblings at the depth
into which they're being yanked, is adjusted.

`allout-yank-pop' works with `allout-yank' just like normal `yank-pop'
works with normal `yank' in non-outline buffers.
(defalias 'allout-yank #[(&optional arg) "\306	?\205\307\307\306\f!\210*
\205\310 \207" [this-command buffer-read-only inhibit-field-text-motion inhibit-read-only arg allout-mode yank t allout-yank-processing] 2 (#$ . 146103) "*P"])
#@238 Yank-pop like `allout-yank' when popping to bare outline prefixes.

Adapts level of popped topics to level of fresh prefix.

Note -- prefix changes to distinctive bullets will stick, if followed
by pops to non-distinctive yanks.  Bug...
(defalias 'allout-yank-pop #[(&optional arg) "\303\304	!\210\n\205\f\305 \207" [this-command arg allout-mode yank yank-pop allout-yank-processing] 2 (#$ . 147459) "*p"])
#@132 Pop to file associated with current heading, if it has an xref bullet.

(Works according to setting of `allout-file-xref-bullet').
(defalias 'allout-resolve-xref #[nil "\204\306\307!\207\310 \230\204\306\311\"\207\312\313\314 \315\216\212\f\316 
b\210\317\320\312#\2055\321\224\321\225{-\322	!\323	!\204W\324	!\203P\325\326\327	\"!\202T\306\330	\"\203^\331\332\333\217\202b\306\334	\"*\207" [allout-file-xref-bullet file-name inhibit-field-text-motion save-match-data-internal allout-recent-prefix-end text-start error "Outline cross references disabled -- no `allout-file-xref-bullet'" allout-current-bullet "Current heading lacks cross-reference bullet `%s'" t nil match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) point-at-eol re-search-forward "\\s-\\(\\S-*\\)" 1 expand-file-name file-exists-p file-writable-p y-or-n-p format "%s not there, create one? " "%s not found and can't be created" failure (find-file-other-window file-name) ((error failure)) "%s not found" heading-end] 4 (#$ . 147875) nil])
#@206 Conceal text between FROM and TO if FLAG is non-nil, else reveal it.
After the exposure changes are made, run the abnormal hook
`allout-exposure-change-functions' with the same arguments as
this function.
(defalias 'allout-flag-region #[(from to flag) "\305	\306\307$\210\n\203!\310	\311\312$\313\306\307#\210\313\314\315#\210)\315\316\317	\n$\207" [from to flag o allout-this-command-hid-text remove-overlays category allout-exposure-category make-overlay nil front-advance overlay-put evaporate t run-hook-with-args allout-exposure-change-functions] 5 (#$ . 148959)])
#@76 Conceal currently-visible topic's subtree if FLAG non-nil, else reveal it.
(defalias 'allout-flag-current-subtree #[(flag) "\212\302 \210\303\304\210)\305`\306	?!	#)\207" [inhibit-field-text-motion flag allout-back-to-current-heading t nil allout-flag-region allout-end-of-current-subtree] 4 (#$ . 149543)])
#@310 Like `allout-show-current-entry', but reveals entries in hidden topics.

This is a way to give restricted peek at a concealed locality without the
expense of exposing its context, but can leave the outline with aberrant
exposure.  `allout-show-offshoot' should be used after the peek to rectify
the exposure.
(defalias 'allout-show-entry #[nil "\212\303\211\304 \210\303\305\n\206`\306\")\307=\203`S\202`\310 \311	\303#\210	+D\207" [end beg pos nil allout-goto-prefix-doublechecked get-char-property invisible allout allout-pre-next-prefix allout-flag-region] 4 (#$ . 149860) nil])
#@563 If point is visible, show all direct subheadings of this heading.

Otherwise, do `allout-show-to-offshoot', and then show subheadings.

Optional LEVEL specifies how many levels below the current level
should be shown, or all levels if t.  Default is 1.

Optional STRICT means don't resort to -show-to-offshoot, no matter
what.  This is basically so -show-to-offshoot, which is called by
this function, can employ the pure offspring-revealing capabilities of
it.

Returns point at end of subtree that was opened, if any.  (May get a
point of non-opened subtree?)
(defalias 'allout-show-children #[(&optional level strict) "`	\204!\306\307\n\206`\310\")\311=\203!\312 \210\313\314\"\210\202C\212\315 \210\214\306\2040\316\202;\314=\203:\306\202;\317
!*\320*
\"\206\342*\205\342\321\322!\205\342\212\323 \210\324 \325 +\326\216\327,!\203k\316u\210\330-\306\331#\205\300\316\225\206\200\332\225\206\200\333\225.\316\224\206\216\332\224\206\216\333\224/\316\334./0#]1/\210/b\210n\204\255\335u\210\202\2432\204\27513X\203\275\336 \210/b*\205\3111\fTV)\205\342\337\340\341\342!\341\343!\344$\205\342\320*1\fZ\"4b\210	\203\306\307\n\206\363`\310\")\311=\203\345`\346 \306#\2105\2034@b\210\347 \2104\203A4@b\210\345\212\346 \210`)\350\351\306\314#\210`S\306#\2105\20384@b\210\347 \2104A\2114\204.b)\207" [start-point strict pos level depth chart-level nil get-char-property invisible allout allout-show-to-offshoot allout-show-children t allout-beginning-of-current-line 1 allout-chart-subtree allout-chart-to-reveal called-interactively-p interactive allout-back-to-current-heading allout-current-depth match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) looking-at re-search-forward 0 2 3 - -1 allout-aberrant-container-p message "Discontinuous offspring; use `%s %s'%s." substitute-command-keys "\\[universal-argument]" "\\[allout-shift-out]" " to elevate them." allout-flag-region allout-snug-back allout-show-current-entry search-forward "\n" chart save-match-data-internal allout-regexp allout-line-boundary-regexp allout-recent-prefix-end allout-recent-prefix-beginning allout-header-subtraction allout-recent-depth allout-inhibit-aberrance-doublecheck allout-doublecheck-at-and-shallower to-reveal allout-show-bodies] 7 (#$ . 150462) "p"])
#@143 Like `allout-show-entry', but reveals all concealed ancestors, as well.

Useful for coherently exposing to a random point in a hidden region.
(defalias 'allout-show-to-offshoot #[nil "\212\306`\307 `\310\311V\204\"\312\313
\206`\314\")\315=\203\312\313
\206*`\314\")\315=\203L\316\311!\210\312\313
\206>`\314\")\315=\203\"\317u\210\202\"	`\211U\203n\320 \210\321 \210b\210T\211\311V\203\f\322\323\324\"\210\202\f\310V\203v\310\325 \210\nb\210\202\fb\210.\312\313
\206\214`\314\")\315=\205\226\326 \207" [bag-it last-at orig-pref orig-pt inhibit-field-text-motion pos t allout-goto-prefix-doublechecked 0 1 nil get-char-property invisible allout move-beginning-of-line -1 beginning-of-line allout-show-current-subtree error "allout-show-to-offshoot: %s" "Stumped by aberrant nesting." allout-show-children allout-show-entry] 6 (#$ . 152832) nil])
#@48 Hide the body directly following this heading.
(defalias 'allout-hide-current-entry #[nil "\301 \210\212\302\303\210)\304`\305 \210`\302#)\207" [inhibit-field-text-motion allout-back-to-current-heading t nil allout-flag-region allout-end-of-entry] 4 (#$ . 153719) nil])
#@77 Show body following current heading, or hide entry with universal argument.
(defalias 'allout-show-current-entry #[(&optional arg) "\203\301 \207\212\302 \210)\212\303`\304\305!\210`\306#)\207" [arg allout-hide-current-entry allout-show-to-offshoot allout-flag-region allout-end-of-entry t nil] 4 (#$ . 153997) "P"])
#@100 Show everything within the current topic.
With a repeat-count, expose this topic and its siblings.
(defalias 'allout-show-current-subtree #[(&optional arg) "\212\306 \307X\203x\310 \311\216\312	!\203\313u\210\314\n\315\307#\205b\313\225\206*\316\225\206*\317\225\313\224\2067\316\224\2067\317\224\313\320\f
#]\f\210\fb\210n\204P\321u\210\202F\204`X\203`\322 \210\fb*\204l\323\324!\202\214\325\326!\210\327ed\315#\202\214\330 \210 \204\206\331\315!\202\214\332 \210\333\334!)\207" [save-match-data-internal allout-regexp allout-line-boundary-regexp allout-recent-prefix-end allout-recent-prefix-beginning allout-header-subtraction allout-current-depth 0 match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) looking-at 1 re-search-forward nil 2 3 - -1 allout-aberrant-container-p error "No topics" message "Above outermost topic -- exposing all." allout-flag-region allout-beginning-of-current-line allout-flag-current-subtree allout-beginning-of-level allout-expose-topic (* :) allout-recent-depth allout-inhibit-aberrance-doublecheck allout-doublecheck-at-and-shallower arg] 5 (#$ . 154324) "P"])
#@315 True if the currently visible containing topic is already collapsed.

Single line topics intrinsically can be considered as being both
collapsed and uncollapsed.  If optional INCLUDE-SINGLE-LINERS is
true, then single-line topics are considered to be collapsed.  By
default, they are treated as being uncollapsed.
(defalias 'allout-current-topic-collapsed-p #[(&optional include-single-liners) "\304 \305\216\212\306 \210\307\310\311!\210)`\312\313\314!?!Y\205/\n\206/\315u\210\316\317\206*`\320\")\321=+\207" [save-match-data-internal inhibit-field-text-motion include-single-liners pos match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) allout-back-to-current-heading t move-end-of-line 1 allout-end-of-current-subtree looking-at "\n\n" -1 nil get-char-property invisible allout] 4 (#$ . 155502)])
#@286 Close the current topic, or containing topic if this one is already closed.

If this topic is closed and it's a top level topic, close this topic
and its siblings.

If optional arg JUST-CLOSE is non-nil, do not close the parent or
siblings, even if the target topic is already closed.
(defalias 'allout-hide-current-subtree #[(&optional just-close) "`\304\305\306!?\211\203\307\306!\210\2027\2047\310 \203#\311 \210\2027\312b\210\313	!\210\314 \210\315\316!\210\313	\317P!\210b+\207" [from sibs-msg current-exposed just-close "Top-level topic already closed -- closing siblings..." allout-current-topic-collapsed-p t allout-flag-current-subtree allout-ascend allout-hide-current-subtree 0 message allout-goto-prefix-doublechecked allout-expose-topic (0 :) "  Done."] 4 (#$ . 156362) nil])
#@66 Show or hide the current subtree depending on its current state.
(defalias 'allout-toggle-current-subtree-exposure #[nil "\212\301 \210\302 \303\206
`\304\")\305=\203\306 \202\307 )\207" [pos allout-back-to-heading point-at-eol get-char-property invisible allout allout-show-current-subtree allout-hide-current-subtree] 3 (#$ . 157168) nil])
#@61 Show all subheadings of this heading, but not their bodies.
(defalias 'allout-show-current-branches #[nil "\301\302 \210)\303\301!\207" [inhibit-field-text-motion t beginning-of-line allout-show-children] 2 (#$ . 157523) nil])
#@61 Hide the bodies of the current topic and all its offspring.
(defalias 'allout-hide-current-leaves #[nil "\300 \210\301`\302 \210`\"\207" [allout-back-to-current-heading allout-hide-region-body allout-end-of-current-subtree] 3 (#$ . 157757) nil])
#@37 Show all of the text in the buffer.
(defalias 'allout-show-all #[nil "\300\301!\210\302ed\303#\210\300\304!\207" [message "Exposing entire buffer..." allout-flag-region nil "Exposing entire buffer...  Done."] 4 (#$ . 158009) nil])
#@37 Hide all of buffer except headings.
(defalias 'allout-hide-bodies #[nil "\300ed\"\207" [allout-hide-region-body] 3 (#$ . 158246) nil])
#@54 Hide all body lines in the region, but not headings.
(defalias 'allout-hide-region-body #[(start end) "\304 \305\216\212\214	\n}\210eb\210\306m?\2053\307\210\310`\311 \306#\210m\204\312\313!\203-\314\202.\315u\210\202-\207" [save-match-data-internal start end inhibit-field-text-motion match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) t nil allout-flag-region allout-end-of-entry looking-at "\n\n" 2 1] 4 (#$ . 158387)])
#@2446 Apply exposure specs to successive outline topic items.

Use the more convenient frontend, `allout-new-exposure', if you don't
need evaluation of the arguments, or even better, the `allout-layout'
variable-keyed mode-activation/auto-exposure feature of allout outline
mode.  See the respective documentation strings for more details.

Cursor is left at start position.

SPEC is either a number or a list.

Successive specs on a list are applied to successive sibling topics.

A simple spec (either a number, one of a few symbols, or the null
list) dictates the exposure for the corresponding topic.

Non-null lists recursively designate exposure specs for respective
subtopics of the current topic.

The `:' repeat spec is used to specify exposure for any number of
successive siblings, up to the trailing ones for which there are
explicit specs following the `:'.

Simple (numeric and null-list) specs are interpreted as follows:

 Numbers indicate the relative depth to open the corresponding topic.
     - negative numbers force the topic to be closed before opening to the
       absolute value of the number, so all siblings are open only to
       that level.
     - positive numbers open to the relative depth indicated by the
       number, but do not force already opened subtopics to be closed.
     - 0 means to close topic -- hide all offspring.
  :  - `repeat'
       apply prior element to all siblings at current level, *up to*
       those siblings that would be covered by specs following the `:'
       on the list.  Ie, apply to all topics at level but the last
       ones.  (Only first of multiple colons at same level is
       respected -- subsequent ones are discarded.)
  *  - completely opens the topic, including bodies.
  +  - shows all the sub headers, but not the bodies
  -  - exposes the body of the corresponding topic.

Examples:
(allout-expose-topic '(-1 : 0))
	Close this and all following topics at current level, exposing
	only their immediate children, but close down the last topic
	at this current level completely.
(allout-expose-topic '(-1 () : 1 0))
	Close current topic so only the immediate subtopics are shown;
	show the children in the second to last topic, and completely
	close the last one.
(allout-expose-topic '(-2 : -1 *))
        Expose children and grandchildren of all topics at current
	level except the last two; expose children of the second to
	last and completely open the last one.
(defalias 'allout-expose-topic #[(spec) "<\205\224\306 \307\310\211\211\203\222\n@A\n\203\n9\203\231\n\311=\203;\312 \210&\fV\203&\202\n\313=\203i\310'\314'\206K`\315\")\316=\204Y\212\317\320!\210)\321 \210&\fV\203&\202\n\322=\203u\323 \210\202\n\324=\203\320\325 GGZ(\307(W\203\225\326\327(\"\")\202\n\247\203\347\307\nY\203\314\310'\314'\206\256`\315\")\316=\204\314\212\317\320!\210\307\nV\204\313&\fV\203\313&)\330\n!\307V\203\331\330\n!!\210&\fV\203&\202\n<\203\332
T!\203\333\n!\211)\203)\fV\203))	\203\310\202@<\204\f`V\203\213d\f^b\210\334 *\335\216\336+!\2031\337u\210\340,\310\307#\205\206\337\225\206F\341\225\206F\342\225-\337\224\206T\341\224\206T\342\224.\337\322-./#]0.\210.b\210n\204s\343u\210\202i1\204\20302X\203\203\344 \210.b*\210\202\345
!\210\202\f-\207" [spec stay curr-elem prev-elem max-pos depth allout-depth 0 nil * allout-show-current-subtree + get-char-property invisible allout allout-hide-current-subtree t allout-show-current-branches - allout-show-current-entry : allout-chart-siblings append make-list abs allout-show-children allout-descend-to-depth allout-expose-topic match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) looking-at 1 re-search-forward 2 3 -1 allout-aberrant-container-p allout-next-sibling allout-recent-end-of-subtree pos residue got save-match-data-internal allout-regexp allout-line-boundary-regexp allout-recent-prefix-end allout-recent-prefix-beginning allout-header-subtraction allout-recent-depth allout-inhibit-aberrance-doublecheck allout-doublecheck-at-and-shallower] 6 (#$ . 158874) "xExposure spec: "])
#@1458 Deprecated.  Use `allout-expose-topic' (with different schema
format) instead.

Dictate wholesale exposure scheme for current topic, according to SPEC.

SPEC is either a number or a list.  Optional successive args
dictate exposure for subsequent siblings of current topic.

A simple spec (either a number, a special symbol, or the null list)
dictates the overall exposure for a topic.  Non null lists are
composite specs whose first element dictates the overall exposure for
a topic, with the subsequent elements in the list interpreted as specs
that dictate the exposure for the successive offspring of the topic.

Simple (numeric and null-list) specs are interpreted as follows:

 - Numbers indicate the relative depth to open the corresponding topic:
  - negative numbers force the topic to be close before opening to the
    absolute value of the number.
  - positive numbers just open to the relative depth indicated by the number.
  - 0 just closes
 - `*' completely opens the topic, including bodies.
 - `+' shows all the sub headers, but not the bodies
 - `-' exposes the body and immediate offspring of the corresponding topic.

If the spec is a list, the first element must be a number, which
dictates the exposure depth of the topic as a whole.  Subsequent
elements of the list are nested SPECs, dictating the specific exposure
for the corresponding offspring of the topic.

Optional FOLLOWERS arguments dictate exposure for succeeding siblings.
(defalias 'allout-old-expose-topic #[(spec &rest followers) "\306\307 \310\203\2519\203.\311=\203\312 \210\313=\203\"\314 \210\315=\203\251\316 \210\202\251\247\203d\317Y\203W\212\320\306!\210\310\210\203K`V\203M`\317V\203V[)\317V\203\251\321!\210\202\251<\203\251\307 T\310\322@!A\211\203\250\323
!\203\250\310\324\206\213`\325\")\326=\204\250\327\322\"\211\203\250\203\246\fV\203\250\f*\203\325\203\275`W\203\275b\210\310\310\210\330	!\203\325\322@!\210A\211\204\256+\207" [max-pos depth inhibit-field-text-motion spec got new-depth t allout-current-depth nil * allout-show-current-subtree + allout-show-current-branches - allout-show-current-entry 0 allout-hide-current-subtree allout-show-children allout-old-expose-topic allout-descend-to-depth get-char-property invisible allout apply allout-next-sibling pos followers] 4 (#$ . 163063) "xExposure spec: "])
#@934 Literal frontend for `allout-expose-topic', doesn't evaluate arguments.
Some arguments that would need to be quoted in `allout-expose-topic'
need not be quoted in `allout-new-exposure'.

Cursor is left at start position.

Use this instead of obsolete `allout-exposure'.

Examples:
(allout-new-exposure (-1 () () () 1) 0)
	Close current topic at current level so only the immediate
	subtopics are shown, except also show the children of the
	third subtopic; and close the next topic at the current level.
(allout-new-exposure : -1 0)
	Close all topics at current level to expose only their
	immediate children, except for the last topic at the current
	level, in which even its immediate children are hidden.
(allout-new-exposure -2 : -1 *)
        Expose children and grandchildren of first topic at current
	level, and expose children of subsequent topics at current
	level *except* for the last, which should be opened completely.
(defalias 'allout-new-exposure '(macro . #[(&rest spec) "\301\302\303\304DDE\207" [spec save-excursion (if (not (or (allout-goto-prefix-doublechecked) (allout-next-heading))) (error "allout-new-exposure: Can't find any outline topics")) allout-expose-topic quote] 5 (#$ . 165466)]))
#@130 Convert list representing section/subsection/... to document string.

Optional arg CONTEXT indicates interior levels to include.
(defalias 'allout-stringify-flat-index #[(flat-index &optional context) "\306\307\211\203\310\202\f\311	\312V\203=\313
@!
A\211\203*\f\nBB\202-\nB
\2037	S\2028\312\211\202\314
\203k
\203h\f\315\316\317
@!\203U\311\202Y\320
@!!T\321\"BB
A\211\204GA\322\323\",\207" [context context-depth numstr result delim flat-index "." nil 2 1 0 int-to-string " " make-string truncate zerop log10 32 apply concat] 6 (#$ . 166690)])
#@70 Convert list representing section/subsection/... to document string.
(defalias 'allout-stringify-flat-index-plain #[(flat-index) "\303\304\n\203\305\n@!\205	BB\nA\211\204\306\307\"*\207" [result delim flat-index "." nil int-to-string apply concat] 4 (#$ . 167276)])
#@70 Convert list representing section/subsection/... to document string.
(defalias 'allout-stringify-flat-index-indented #[(flat-index) "\304\305\211\306@!A\211\203\n	BB\202	B\307\203L\203I\n\310\311\312@!\2036\313\202:\314@!!T\315\"	BBA\211\204(	A\316\317	\"+\207" [numstr result delim flat-index "." nil int-to-string " " make-string truncate zerop 1 log10 32 apply concat] 6 (#$ . 167561)])
#@926 Produce a list representing exposed topics in current region.

This list can then be used by `allout-process-exposed' to manipulate
the subject region.

Optional START and END indicate bounds of region.

Optional arg, FORMAT, designates an alternate presentation form for
the prefix:

 list -- Present prefix as numeric section.subsection..., starting with
	section indicated by the list, innermost nesting first.
 `indent' (symbol) --  Convert header prefixes to all white space,
		       except for distinctive bullets.

The elements of the list produced are lists that represents a topic
header and body.  The elements of that list are:

 - a number representing the depth of the topic,
 - a string representing the header-prefix, including trailing whitespace and
   bullet.
 - a string representing the bullet character,
 - and a series of strings, each containing one line of the exposed
   portion of the topic entry.
(defalias 'allout-listify-exposed #[(&optional start end format) "\212\306\307\211\307\211\307\211\307\211\307\211 !\307\"#b\210\310 \210\311 #V\203:\312\313\307\314#`S\"FC\"\204fm\204f`$V\204f%\314&S&\"\314'&\"\315\306!\210` \316\317!?\"%
\fW\310 \210`! b\210\307!`V\203\251\314 \307\210\320 \"	B`!W\203\243\321\317!\210\310 \210` \202\202	\237(\203\322\323!)\"\205\276*(<\203\340\f+\203\325\324(\"\202\331\325(!	*F\202\f(\326=\203*\203\374\f\327\fT\330\"\n\331\307OP	E\202\f\f\327\f\330\"	E\202\f\332\333\334(#)\202\f\n	EB(\203:(<\203:
\fU\2035(@T(AB(\202:
\fV\203D\317(B(\202:
\fW\203U(A(\fS\202D(@\206\\\331T(AB(\202:\237.
\207" [inhibit-field-text-motion strings prefix result depth new-depth t nil beginning-of-line allout-goto-prefix-doublechecked 0 "" buffer-substring-no-properties allout-end-of-prefix allout-next-visible-heading 1 allout-back-to-visible-text line-move string-match regexp-quote allout-stringify-flat-index allout-stringify-flat-index-plain indent make-string 32 -1 error "allout-listify-exposed: %s %s" "invalid format" out gone-out bullet beg next done start end allout-recent-depth allout-recent-prefix-end allout-recent-prefix-beginning format allout-distinctive-bullets-string special allout-flattened-numbering-abbreviation] 7 (#$ . 167986) "r"])
(defalias 'allout-region-active-p '(macro . #[nil "\300\301!\203\302\207\300\303!\203\304\207\305\207" [fboundp use-region-p (use-region-p) region-active-p (region-active-p) mark-active] 2]))
#@995 Map function on exposed parts of current topic; results to another buffer.

All args are options; default values itemized below.

Apply FUNCTION to exposed portions FROM position TO position in buffer
FROMBUF to buffer TOBUF.  Sixth optional arg, FORMAT, designates an
alternate presentation form:

 `flat' -- Present prefix as numeric section.subsection..., starting with
	 section indicated by the START-NUM, innermost nesting first.
 X`flat-indented' -- Prefix is like `flat' for first topic at each
 X		   level, but subsequent topics have only leaf topic
 X		   number, padded with blanks to line up with first.
 `indent' (symbol) --  Convert header prefixes to all white space,
		       except for distinctive bullets.

Defaults:
  FUNCTION:	`allout-insert-listified'
  FROM:		region start, if region active, else start of buffer
  TO:		region end, if region active, else end of buffer
  FROMBUF:	current buffer
  TOBUF:	buffer name derived: "*current-buffer-name exposed*"
  FORMAT:	nil
(defalias 'allout-process-exposed #[(&optional func from to frombuf tobuf format start-num) "\204\306	\203\n\204 \307 \203\310 \311 \202 ed\203B\312!\204D\313!\211\204<\314\315\316Q!\210\202>\f)\202Dp
\203U\312
!\204\\\317
!\202\\\320\321!\322Q<\203f\237\210q\210\323	\n#
q\210\324\"\210\325
!)\207" [func from to frombuf got tobuf allout-insert-listified use-region-p region-beginning region-end bufferp get-buffer error "allout-process-exposed: source buffer " " not found." get-buffer-create "*" buffer-name " exposed*" allout-listify-exposed mapc pop-to-buffer format listified] 5 (#$ . 170508)])
#@266 Insert contents of listified outline portion in current buffer.

LISTIFIED is a list representing each topic header and body:

 `(depth prefix text)'

or `(depth prefix text bullet-plus)'

If `bullet-plus' is specified, it is inserted just after the entire prefix.
(defalias 'allout-insert-listified #[(listified) "A\211@A\211@A\211@\211c\210	\203\304	Pc\210\n\2033\n@c\210\nA\211\203\305c\210\202\305c+\207" [listified bullet-plus text prefix " " "\n"] 4 (#$ . 172155)])
#@744 Duplicate exposed portions of current outline to another buffer.

Other buffer has current buffers name with " exposed" appended to it.

With repeat count, copy the exposed parts of only the current topic.

Optional second arg TOBUF is target buffer name.

Optional third arg FORMAT, if non-nil, symbolically designates an
alternate presentation format for the outline:

 `flat'   - Convert topic header prefixes to numeric
	    section.subsection... identifiers.
 `indent' - Convert header prefixes to all white space, except for
	    distinctive bullets.
 `indent-flat' - The best of both - only the first of each level has
		 the full path, the rest have only the section number
		 of the leaf, preceded by the right amount of indentation.
(defalias 'allout-copy-exposed-to-buffer #[(&optional arg tobuf format) "\204\f\306\307\310 \311Q!`\n\203\312 \202e\n\203\"\313 \202#dp\314\315=\203A\n\203>\212b\210\316 )\202?\317rq\210\320 \210)\321\322\fp&\210eb\210\323
!\210	b-\207" [tobuf start-pt arg beg end buf get-buffer-create "*" buffer-name " exposed*" allout-back-to-current-heading allout-end-of-current-subtree nil flat allout-topic-flat-index (1) erase-buffer allout-process-exposed allout-insert-listified pop-to-buffer start-list format] 8 (#$ . 172651) "P"])
#@481 Present numeric outline of outline's exposed portions in another buffer.

The resulting outline is not compatible with outline mode -- use
`allout-copy-exposed-to-buffer' if you want that.

Use `allout-indented-exposed-to-buffer' for indented presentation.

With repeat count, copy the exposed portions of only current topic.

Other buffer has current buffer's name with " exposed" appended to
it, unless optional second arg TOBUF is specified, in which case it is
used verbatim.
(defalias 'allout-flatten-exposed-to-buffer #[(&optional arg tobuf) "\302	\303#\207" [arg tobuf allout-copy-exposed-to-buffer flat] 4 (#$ . 173960) "P"])
#@490 Present indented outline of outline's exposed portions in another buffer.

The resulting outline is not compatible with outline mode -- use
`allout-copy-exposed-to-buffer' if you want that.

Use `allout-flatten-exposed-to-buffer' for numeric sectional presentation.

With repeat count, copy the exposed portions of only current topic.

Other buffer has current buffer's name with " exposed" appended to
it, unless optional second arg TOBUF is specified, in which case it is
used verbatim.
(defalias 'allout-indented-exposed-to-buffer #[(&optional arg tobuf) "\302	\303#\207" [arg tobuf allout-copy-exposed-to-buffer indent] 4 (#$ . 174602) "P"])
#@175 Return copy of STRING for literal reproduction across LaTeX processing.
Expresses the original characters (including carriage returns) of the
string across LaTeX processing.
(defalias 'allout-latex-verb-quote #[(string &optional flow) "\301\302\303#\207" [string mapconcat #[(char) "\301>\203
\302\303!\304Q\207\305U\203\306\207\307!\207" [char (92 36 37 35 38 123 125 95 94 45 42) "\\char" number-to-string "{}" 10 "\\\\" char-to-string] 3] ""] 4 (#$ . 175256)])
#@251 Express line for exact (literal) representation across LaTeX processing.

Adjust line contents so it is unaltered (from the original line)
across LaTeX processing, within the context of a `verbatim'
environment.  Leaves point at the end of the line.
(defalias 'allout-latex-verbatim-quote-curr-line #[nil "\304\305 \210`\306 \307 \310\216\311\312	\313#\205)\314\224b\210\315c\210	T\314\225Tb\210\202-\207" [inhibit-field-text-motion end beg save-match-data-internal t beginning-of-line point-at-eol match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) re-search-forward "\\\\" 1 2 "\\"] 4 (#$ . 175735)])
#@51 Insert initial LaTeX commands at point in BUFFER.
(defalias 'allout-insert-latex-header #[(buffer) "q\210\306\307\310\"	\203\311\202\312\306\313\n\"\306\314\"\306\315\f\"\306\316
\"\306\317\320\321)\322%\306\323\324\325\326\327\330*\331&\306\332\333\325\334\335*\331&\336\306\317\337\340+\203P\341\342\343\217\202Q\344!\322\345%\346\347\350,-./012345678\2119876543210/.-,\260c.\207" [buffer allout-number-pages allout-title-style allout-label-style allout-head-line-style allout-body-line-style format "\n\\documentstyle{%s}\n" "report" "\\pagestyle{empty}\n" "" "\\newcommand{\\titlecmd}[1]{{%s #1}}\n" "\\newcommand{\\labelcmd}[1]{{%s #1}}\n" "\\newcommand{\\headlinecmd}[1]{{%s #1}}\n" "\\newcommand{\\bodylinecmd}[1]{{%s #1}}\n" "%s%s%s%s" "\\newlength{\\stepsize}\n" "\\setlength{\\stepsize}{" "}\n" "%s%s%s%s%s%s%s" "\\newcommand{\\OneHeadLine}[3]{%\n" "\\noindent%\n" "\\hspace*{#2\\stepsize}%\n" "\\labelcmd{#1}\\hspace*{.2cm}" "\\headlinecmd{#3}\\\\[" "]\n}\n" "%s%s%s%s%s%s" "\\newcommand{\\OneBodyLine}[2]{%\n" "\\hspace*{#1\\stepsize}%\n" "\\bodylinecmd{#2}\\\\[" "\\begin{document}\n\\begin{center}\n" "\\titlecmd{" allout-latex-verb-quote nil (eval allout-title) ((error "<unnamed buffer>")) "Unnamed Outline" "\\end{center}\n\n" "\\hsize = 7.5 true in\n" "\\hoffset = -1.5 true in\n" "\\vspace{.1cm}\n\n" allout-indent allout-line-skip allout-title vspace hoffset hsize title begindoc onebodyline oneheadline setlength bodylinecmd headlinecmd labelcmd titlecmd page-numbering doc-style] 18 (#$ . 176398)])
#@54 Insert concluding LaTeX commands at point in BUFFER.
(defalias 'allout-insert-latex-trailer #[(buffer) "q\210\301c\207" [buffer "\n\\end{document}\n"] 1 (#$ . 177968)])
#@183 Insert LaTeX commands for formatting one outline item.

Args are the topics numeric DEPTH, the header PREFIX lead string, the
BULLET string, and a list of TEXT strings for the body.
(defalias 'allout-latexify-one-item #[(depth prefix bullet text) "\205@A\306\211\306\307\310!\311\312	\203#\310	!\202$\313\314\260c\210\n\205\200\315c\210\n\203l\n@\f\204D\316\317\"\204D\320\f\203\\\316\321\"\211\203\\\322
O\323
\306OQc\210\324 \210\325c\210\nA\211\2044\f\203u\306\202~\326u\210\327c\210\330u\210\331c-\207" [text head-line body-lines curr-line body-content bop nil "\\OneHeadLine{\\verb " allout-latex-verb-quote "}{" "}{\\verb " "" "}\n" "\\begin{verbatim}\n" string-match "^\\s-*$" t "\\end{verbatim}" 0 ">" allout-latex-verbatim-quote-curr-line "\n" -1 "\\ " 1 "\\end{verbatim}\n" bullet depth] 8 (#$ . 178145)])
#@254 Format current topics exposed portions to TOBUF for LaTeX processing.
TOBUF defaults to a buffer named the same as the current buffer, but
with "*" prepended and " latex-formed*" appended.

With repeat count, copy the exposed portions of entire buffer.
(defalias 'allout-latexify-exposed #[(arg &optional tobuf) "\204\f\306\307\310 \311Q!`\n\203e\202\312 \n\203!d\202#\313 pq\210\314 \210\315!\210db\210\316\317\f
%\210db\210\320!\210eb\210\321
!\210	b,\207" [tobuf start-pt arg beg end buf get-buffer-create "*" buffer-name " latexified*" allout-back-to-current-heading allout-end-of-current-subtree erase-buffer allout-insert-latex-header allout-process-exposed allout-latexify-one-item allout-insert-latex-trailer pop-to-buffer] 6 (#$ . 179009) "P"])
#@1815 Encrypt clear or decrypt encoded topic text.

Allout uses Emacs 'epg' library to perform encryption.  Symmetric
and keypair encryption are supported.  All encryption is ascii
armored.

Entry encryption defaults to symmetric key mode unless keypair
recipients are associated with the file (see
`epa-file-encrypt-to') or the function is invoked with a
(KEYMODE-CUE) universal argument greater than 1.

When encrypting, KEYMODE-CUE universal argument greater than 1
causes prompting for recipients for public-key keypair
encryption.  Selecting no recipients results in symmetric key
encryption.

Further, encrypting with a KEYMODE-CUE universal argument greater
than 4 - eg, preceded by a doubled Ctrl-U - causes association of
the specified recipients with the file, replacing those currently
associated with it.  This can be used to dissociate any
recipients with the file, by selecting no recipients in the
dialog.

Encrypted topic's bullets are set to a `~' to signal that the
contents of the topic (body and subtopics, but not heading) is
pending encryption or encrypted.  `*' asterisk immediately after
the bullet signals that the body is encrypted, its absence means
the topic is meant to be encrypted but is not currently.  When a
file with topics pending encryption is saved, topics pending
encryption are encrypted.  See `allout-encrypt-unencrypted-on-saves'
for auto-encryption specifics.

*NOTE WELL* that automatic encryption that happens during saves will
default to symmetric encryption -- you must deliberately (re)encrypt key-pair
encrypted topics if you want them to continue to use the key-pair cipher.

Level-one topics, with prefix consisting solely of an `*' asterisk, cannot be
encrypted.  If you want to encrypt the contents of a top-level topic, use
\[allout-shift-in] to increase its depth.
(defalias 'allout-toggle-current-subtree-encryption #[(&optional keymode-cue) "\212\301 \210\302!)\207" [keymode-cue allout-back-to-current-heading allout-toggle-subtree-encryption] 2 (#$ . 179789) "P"])
#@969 Encrypt clear text or decrypt encoded topic contents (body and subtopics.)

Entry encryption defaults to symmetric key mode unless keypair
recipients are associated with the file (see
`epa-file-encrypt-to') or the function is invoked with a
(KEYMODE-CUE) universal argument greater than 1.

When encrypting, KEYMODE-CUE universal argument greater than 1
causes prompting for recipients for public-key keypair
encryption.  Selecting no recipients results in symmetric key
encryption.

Further, encrypting with a KEYMODE-CUE universal argument greater
than 4 - eg, preceded by a doubled Ctrl-U - causes association of
the specified recipients with the file, replacing those currently
associated with it.  This can be used to dissociate any
recipients with the file, by selecting no recipients in the
dialog.

Encryption and decryption uses the Emacs 'epg' library.

Encrypted text will be ascii-armored.

See `allout-toggle-current-subtree-encryption' for more details.
(defalias 'allout-toggle-subtree-encryption #[(&optional keymode-cue) "\212\306\307!\210\310U\203\311\312!\210p\n\f`)d)U\203#\311\313!\210\314 *\315\316\317\307#\205A\320u\210\317+\321+\206<`\322\")\323=,`T-\324 .\325-.\"/.Sf0.f1/\326\230\204l/\316\230\205y\311\327*\203w\330\202x\331\"234*\204\243\332-.\"\21134\232\204\243\333\334\3353\"!\203\243\336\3373\"\210\340/*p5$26?\205\265\307\30778	q\210-.|\2102c\210,\203\324\341-S`\307#\210*\204\3530\342U\203\3531\342U\203\3531c\210\325)S)\"9\230\204)Sb\210\343\310!\2109c\210*\203)b\210\343\310!\210\202)b\210\344c\210**\203)\345!\210\202,\346 \210\347\350
.#.\207" [allout-recent-depth allout-buffer buffer-saved-size was-buffer-saved-size allout-recent-prefix-beginning bullet-pos allout-end-of-prefix t 1 error "Cannot encrypt or decrypt level 1 topics - shift it in to make it encryptable" "no body to encrypt" allout-encrypted-topic-p search-forward "\n" nil -1 get-char-property invisible allout allout-end-of-subtree buffer-substring-no-properties "" "No topic contents to %scrypt" "de" "en" allout-select-safe-coding-system yes-or-no-p format "Register coding system %s as file local var?  Necessary when only encrypted text is in that coding system. " allout-adjust-file-variable "buffer-file-coding-system" allout-encrypt-string allout-flag-region 10 delete-char "*" allout-inhibit-auto-save-info-for-decryption allout-maybe-resume-auto-save-info-after-encryption run-hook-with-args allout-structure-added-functions after-bullet-pos was-encrypted pos was-collapsed subtree-beg subtree-end subject-text subtree-end-char subtree-trailing-char result-text buffer-file-coding-system was-coding-system keymode-cue buffer-read-only inhibit-field-text-motion inhibit-read-only allout-topic-encryption-bullet] 6 (#$ . 181815) "P"])
#@1564 Encrypt or decrypt message TEXT.

Returns the resulting string, or nil if the transformation fails.

If DECRYPT is true (default false), then decrypt instead of encrypt.

ALLOUT-BUFFER identifies the buffer containing the text.

Entry encryption defaults to symmetric key mode unless keypair
recipients are associated with the file (see
`epa-file-encrypt-to') or the function is invoked with a
(KEYMODE-CUE) universal argument greater than 1.

When encrypting, KEYMODE-CUE universal argument greater than 1
causes prompting for recipients for public-key keypair
encryption.  Selecting no recipients results in symmetric key
encryption.

Further, encrypting with a KEYMODE-CUE universal argument greater
than 4 - eg, preceded by a doubled Ctrl-U - causes association of
the specified recipients with the file, replacing those currently
associated with it.  This can be used to dissociate any
recipients with the file, by selecting no recipients in the
dialog.

Optional REJECTED is for internal use, to convey the number of
rejections due to matches against
`allout-encryption-ciphertext-rejection-regexps', as limited by
`allout-encryption-ciphertext-rejection-ceiling'.

NOTE: A few GnuPG v2 versions improperly preserve incorrect
symmetric decryption keys, preventing entry of the correct key on
subsequent decryption attempts until the cache times-out.  That
can take several minutes.  (Decryption of other entries is not
affected.)  Upgrade your EasyPG version, if you can, and you can
deliberately clear your gpg-agent's cache by sending it a '-HUP'
signal.
(defalias 'allout-encrypt-string #[(text decrypt allout-buffer keymode-cue &optional rejected) "\306\307!\210\306\310!\210\311\312\313\"\314\315\"\210)r\nq\210)r\nq\210
)@\316AB?\2051\317A!C\320DB?\205@\317D!EF\206H\321FGFZHB\203Z\322\202~\323I!\324X\203g\325\202~\323I!\326X\203t\327\202~\323I!\326V\205~\330J\331K\332\333!\205\213L\312\211MN\312O\334\335!PrPq\210\336\216Qc\210\337@!\210\f\203\276\340\f!\210B\204\276\341ed\f#\210C\203\"B\204\"C\312R\211S\203!S@\211R<\203\343R@\202\345RR<\203\366R\211TA@)\202\367\342UReb\210\343 V\344\216\345R\312\313#\203\346U\312\211#\210\202,SA\211S\204\323*\347ed\"N+\350J\322\"\2035\312\202^\350J\325\"\203JL\205^\351	L\"\202^\352J\353\"\205^\354 W\355\216\356	K\"*MB\203l\357\360\361\217\202~\362\363\342\364	\365N\f\206y\366\"M##\211O\204\222\367\370B\203\217\371\202\220\372\"\210J\330=\203\246\373\374M\"\375\376\"\210B\204\375E\312XYY\203\320X\204\320\377Y@O\"XY\211AY@\210\202\262X*\203\375HS\211H\321X\203\354\367\201ZG\320#\202\201[QB\nJFT%\202B\204\377\201\\O\"\203\367\201]!\202O.\207" [context epg-context allout-buffer buffer-file-coding-system encoding enable-multibyte-characters require epg epa epg-make-context nil t epg-context-set-passphrase-callback epa-passphrase-callback-function allout-encryption-plaintext-sanitization-regexps allout-get-configvar-values allout-encryption-ciphertext-rejection-regexps 0 decrypting prefix-numeric-value 1 default 4 prompt prompt-save "Select encryption recipients.\nSymmetric encryption is done if no recipients are selected.  " boundp epa-file-encrypt-to generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1=#:temp-buffer buffer-name kill-buffer] 2)) set-buffer-multibyte set-buffer-file-coding-system encode-coding-region "" match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) re-search-forward replace-match buffer-substring-no-properties eql epg-list-keys memql (prompt prompt-save) current-window-configuration ((set-window-configuration #2=#:wconfig)) epa-select-keys err (byte-code "\303\304	\n\206	\305\"\"\207" [epg-context massaged-text encoding epg-decrypt-string encode-coding-string utf-8] 5) ((epg-error (byte-code "\302\303\211A@)\304P\211AA)B\"\207" [err x signal egp-error " - gpg version problem?"] 5))) replace-regexp-in-string "\n$" epg-encrypt-string encode-coding-string utf-8 error "%scryption failed." "De" "En" mapcar #[(key) "\301\302!@!\207" [key epg-user-id-string epg-key-user-id-list] 3] allout-adjust-file-variable "epa-file-encrypt-to" string-match multibyte sani-regexps decrypt strip-plaintext-regexps rejection-regexps reject-ciphertext-regexps rejected allout-encryption-ciphertext-rejection-ceiling rejections-left keymode-cue keypair-mode keypair-message encrypt-to recipients massaged-text result-text #1# text re --dolist-tail-- x replacement save-match-data-internal #2# reject-it regexps "Ciphertext rejected too many times (%s), per `%s'" allout-encrypt-string "[-]" "Encryption produced non-armored text, whichconflicts with allout mode -- reconfigure!"] 9 (#$ . 184659)])
#@158 Temporarily prevent auto-saves in this buffer when an item is decrypted.

WAS-BUFFER-SAVED-SIZE is the value of `buffer-saved-size' *before*
the decryption.
(defalias 'allout-inhibit-auto-save-info-for-decryption #[(was-buffer-saved-size) "\303U\206		\303U?\205	\303\211\207" [buffer-saved-size was-buffer-saved-size allout-auto-save-temporarily-disabled -1] 2 (#$ . 189487)])
#@70 Restore auto-save info, *if* there are no topics pending encryption.
(defalias 'allout-maybe-resume-auto-save-info-after-encryption #[nil "\205	\302U\205\212\214~\210eb\210\303 *?\205\304\211\207" [allout-auto-save-temporarily-disabled buffer-saved-size -1 allout-next-topic-pending-encryption nil] 2 (#$ . 189876)])
#@57 True if the current topic is encryptable and encrypted.
(defalias 'allout-encrypted-topic-p #[nil "\212\302\303!\210\304`S`\"\230\205\305 \306\216\307\310!*)\207" [allout-topic-encryption-bullet save-match-data-internal allout-end-of-prefix t buffer-substring-no-properties match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) looking-at "\\*"] 3 (#$ . 190209)])
#@237 Return the point of the next topic pending encryption, or nil if none.

Such a topic has the `allout-topic-encryption-bullet' without an
immediately following '*' that would mark the topic as being encrypted.
It must also have content.
(defalias 'allout-next-topic-pending-encryption #[nil "\306\211\211\307 \310\216\n\204z\311\312\313\314\f!\314
!#\306\315#\204&\306\315\202=\316\224\211b\210\307 \317\216\320\321!*\203;\322u\210`	\204G\315\211\202\f\323\321!\204U\306\315\211\202\fm\203a\306\315\211\202\f`\324u\210\325 \210`X\203t\306\202\315\211\203	\205\200	b-\207" [content-beg got done save-match-data-internal allout-header-prefix allout-topic-encryption-bullet nil match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) re-search-forward format "\\(\\`\\|\n\\)%s *%s[^*]" regexp-quote t 0 ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) looking-at "\n" 1 search-forward -1 allout-end-of-subtree] 7 (#$ . 190627)])
#@437 Encrypt topics pending encryption except those containing exemption point.

If a topic that is currently being edited was encrypted, we return a list
containing the location of the topic and the location of the cursor just
before the topic was encrypted.  This can be used, eg, to decrypt the topic
and exactly resituate the cursor if this is being done as part of a file
save.  See `allout-encrypt-unencrypted-on-saves' for more info.
(defalias 'allout-encrypt-decrypted #[nil "\306 \307\216\212\310 \311	!\312\211\312\211eb\210\313 \203r\314 \212\315\316!\205V\205V\317\320!\211\205V\312\321\206?`\322\")\323=?\205V	`Y\205V\324 \205V	`X)\203d`\n\325\f\n\"Z\326 \210\204\327\312!\210\202\204z\327\312!\210
\205\202
D.	\207" [save-match-data-internal current-mark current-mark-position was-modified bo-subtree editing-topic match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) point-marker marker-position nil allout-next-topic-pending-encryption buffer-modified-p boundp allout-encrypt-unencrypted-on-saves re-search-forward "$" get-char-property invisible allout allout-end-of-current-subtree count-trailing-whitespace-region allout-toggle-subtree-encryption set-buffer-modified-p editing-point pos] 5 (#$ . 191671) "p"])
(defalias 'outlinify-sticky 'outlineify-sticky)
#@208 Activate outline mode and establish file var so it is started subsequently.

See `allout-layout' and customization of `allout-auto-activation'
for details on preparing Emacs for automatic allout activation.
(defalias 'outlineify-sticky #[(&optional arg) "\203\300 \210\300 \210\212eb\210\302 \203\303\202&\304\305!\210\306c\210\307\310	\206%\311\")\207" [allout-mode allout-layout allout-goto-prefix t allout-open-topic 2 "Dummy outline topic header -- see`allout-mode' docstring: `^Hm'." allout-adjust-file-variable "allout-layout" (-1 : 0)] 3 (#$ . 193032) "P"])
#@139 Return data identifying the file-vars section, or nil if none.

Returns a list of the form (BEGINNING-POINT PREFIX-STRING SUFFIX-STRING).
(defalias 'allout-file-vars-section-data #[nil "\304\211\211\212db\210\305\306d\307Ze]\310#\210\311\312\313\304\311#)??\205I`\314Z\315`\312\316\304\311#\2032\317u\210`\"\315\305\316\304\311#\203A\320u\210`\n\"\n	E,\207" [suffix prefix beg case-fold-search nil search-backward "\n\f" 3000 move t search-forward "Local Variables:" 16 buffer-substring-no-properties "\n" -1 1] 6 (#$ . 193611)])
#@594 Adjust the setting of an Emacs file variable named VARNAME to VALUE.

This activity is inhibited if either `enable-local-variables' or
`allout-enable-file-variable-adjustment' are nil.

When enabled, an entry for the variable is created if not already present,
or changed if established with a different value.  The section for the file
variables, itself, is created if not already present.  When created, the
section lines (including the section line) exist as second-level topics in
a top-level topic at the end of the file.

`enable-local-variables' must be true for any of this to happen.
(defalias 'allout-adjust-file-variable #[(varname value) "\205\263	\205\263\212\306\307 \310\211\211
\2030
@
\211A@)
\211AA)@\202^db\210\311\312!\210\313\314!\210\310\210\315c\210\313\312!\210`\316\317\320 \210`\f\"\fb\210\321c\210\313\314!\210\322c\210\fb\210\323 \210\324\325\326R\310\306#\203\231`\324\325\310\306#\203\327u\210`\211\nGZ\211V\203\225|\210+\202\252\310\210\311\312!\210\312y\210\326Qc\210\330\331 \n#c.\207" [enable-local-variables allout-enable-file-variable-adjustment suffix prefix beg section-data t allout-file-vars-section-data nil open-line 1 allout-open-topic 0 "Local emacs vars.\n" "" buffer-substring-no-properties beginning-of-line "Local variables:\n" "End:\n" allout-show-to-offshoot search-forward "\n" ":" -1 format " %S%s" inhibit-field-text-motion x varname value-beg line-end value-end value] 6 (#$ . 194159)])
#@249 Return a list of values of the symbols in list bound to CONFIGVAR-NAME.

The user is prompted for removal of symbols that are unbound, and they
otherwise are ignored.

CONFIGVAR-NAME should be the name of the configuration variable,
not its value.
(defalias 'allout-get-configvar-values #[(configvar-name) "J\305\211\305\211\2035\f@\306!\204)\307\310\311#!\203.\312J\"\210\202.J	B\fA\211\204
*\313	!*\207" [configvar-name got configvar-value sym --dolist-tail-- nil boundp yes-or-no-p format "%s entry `%s' is unbound -- remove it? " delq reverse] 6 (#$ . 195655)])
#@57 Put the region around topic currently containing point.
(defalias 'allout-mark-topic #[nil "\301\302 \210)\303 \210\304`!\210\305 \210\306 \207" [inhibit-field-text-motion t beginning-of-line allout-goto-prefix-doublechecked push-mark allout-end-of-current-subtree exchange-point-and-mark] 2 (#$ . 196246) nil])
#@141 Solicit (with first arg PROMPT) choice of a character from string STRING.

Optional arg DO-DEFAULTING indicates to accept empty input (CR).
(defalias 'solicit-char-in-string #[(prompt string &optional do-defaulting) "\306	\204K\307\310\n\"\210\311\306\312 )!\313\314	!\f\"\203\"	\202F
\2030	\315\230\2030\316\202F	\317\230\203=\320\321\306\"\202F	\322\f\316\260\306\211\203	*\207" [prompt got new-prompt cursor-in-echo-area string do-defaulting nil message "%s" char-to-string read-char string-match regexp-quote "
" "" "" signal quit " ...pick from: "] 6 (#$ . 196566)])
#@221 Return a copy of REGEXP with all character escapes stripped out.

Representations of actual backslashes -- '\\\\' -- are left as a
single backslash.

Optional arg SUCCESSIVE-BACKSLASHES is used internally for recursion.
(defalias 'regexp-sans-escapes #[(regexp &optional successive-backslashes) "\302\230\203\302\207\303H\304U\205	\203	T\202\305\211\203%	\306U\2031\303\305O\307\305\310O!P\207\307\305\310O	\"\207" [regexp successive-backslashes "" 0 92 1 2 regexp-sans-escapes nil] 6 (#$ . 197165)])
#@105 Return number of trailing whitespace chars between BEG and END.

If BEG is bigger than END we return 0.
(defalias 'count-trailing-whitespace-region #[(beg end) "	V\203\304\207\305 \306\216\212b\210\304\307\310	\311#\203&\312\224Tb\210T\202,\207" [beg end save-match-data-internal count 0 match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) re-search-forward "[ 	][ 	]*$" t 2] 4 (#$ . 197689)])
#@58 Return a copy of string with all "%" characters doubled.
(defalias 'allout-format-quote #[(string) "\301\302\303\304\"\"\207" [string apply concat mapcar #[(char) "\301U\203\302\207\303!\207" [char 37 "%%" char-to-string] 2]] 5 (#$ . 198146)])
#@37 Return a list of all atoms in list.
(defalias 'allout-flatten #[(list) "\204\301\207@:\204@\302A!B\207\303\302@!\302A!\"\207" [list nil allout-flatten append] 4 (#$ . 198401)])
(byte-code "\300\301!\204\302\303!\210\304\305\306\307\303$\210\310\305\303\"\210\303\207" [boundp undo-in-progress (lambda (#1=#:def-tmp-var) (defvar undo-in-progress #1# "Placeholder defvar for XEmacs compatibility from allout.el.")) nil ad-add-advice undo-more (allout nil t (advice lambda nil (let ((undo-in-progress t)) ad-do-it))) around ad-activate] 5)
#@163 Accommodate the different signature for `mark-marker' across Emacsen.

XEmacs takes two optional args, while Emacs does not,
so pass them along when appropriate.
(defalias 'allout-mark-marker #[(&optional force buffer) "\300 \207" [mark-marker] 1 (#$ . 198957)])
(byte-code "\300\301!\204\302\301\303\"\210\300\304!\204\302\304\305\"\210\300\306!\204!\302\306\307\"\210\300\310!\204,\302\310\311\"\210\300\312!\2047\302\312\313\"\210\300\314!\204B\302\314\315\"\210\300\316!\204M\302\316\317\"\210\300\320!\204X\302\320\321\"\210\302\322\300\323!\203d\323\202e\324\"\210\302\325\300\326!\203s\326\202t\327\"\210\302\330\300\331!\203\202\331\202\203\332\"\210\302\333\334\"\210\300\334!\204\225\302\333\335\"\210\300\207" [fboundp subst-char-in-string defalias #[(fromchar tochar string &optional inplace) "G	\203\n\202
\306!\307V\203(S\nH\f=\203\n
I\210\202\n*\207" [string inplace newstr i fromchar tochar copy-sequence 0] 3 "Replace FROMCHAR with TOCHAR in STRING each time it occurs.\nUnless optional argument INPLACE is non-nil, return a new string."] wholenump natnump remove-overlays #[(&optional beg end name val) "\204e	\204\fd	W\203	\212\306	\"\307\211\205}@\310\n\f\"
=\203u\311\n!W\203^\312\n!	V\203S\313\314\n!\311\n!#\210\313\n	\312\n!#\210\202u\313\n\311\n!#\210\202u\312\n!	V\203q\313\n	\312\n!#\210\202u\315\n!\210A\211\204\"\307+\207" [beg end o --dolist-tail-- name val overlays-in nil overlay-get overlay-start overlay-end move-overlay copy-overlay delete-overlay] 6 "Clear BEG and END of overlays whose property NAME has value VAL.\nOverlays might be moved and/or split.\nBEG and END default respectively to the beginning and end of buffer."] copy-overlay #[(o) "\303\304!\305!\306!#\307!	\203%\310\n	\211A@	\211A@#\210\202\n*\207" [o props o1 make-overlay overlay-start overlay-end overlay-buffer overlay-properties overlay-put] 5 "Return a copy of overlay O."] add-to-invisibility-spec #[(element) "\302=\203	\302C	B\211\207" [buffer-invisibility-spec element t] 2 "Add ELEMENT to `buffer-invisibility-spec'.\nSee documentation for `buffer-invisibility-spec' for the kind of elements\nthat can be added."] remove-from-invisibility-spec #[(element) ":\205\302	\"\211\207" [buffer-invisibility-spec element delete] 3 "Remove ELEMENT from `buffer-invisibility-spec'."] move-beginning-of-line #[(arg) "\204\303\303U\204\304\305\306\217\210\307\304x\210o\204B\310`S\311\"\n\312=\203)	\2022	\n>\2062	\n\236)\203B\313`!b\210\307\304x\210\202\314\315!\207" [arg prop buffer-invisibility-spec 1 nil (byte-code "\301S!\207" [arg line-move] 2) ((error)) "^\n" get-char-property invisible t previous-char-property-change vertical-motion 0] 3 "Move point to beginning of current line as displayed.\n(This disregards invisible newlines such as those\nwhich are part of the text that an image rests on.)\n\nWith argument ARG not nil or 1, move forward ARG - 1 lines first.\nIf point reaches the beginning or end of buffer, it stops there.\nTo ignore intangibility, bind `inhibit-point-motion-hooks' to t." "p"] move-end-of-line #[(arg) "\204\306\307	?\205z\212\310\307\311\312\217\203Go\204Go\204D\313`S\314\"\f\315=\203/\2028\f>\2068\f\236)\203D\316`!b\210\202\317u\210`*\211b\210`
V\203_h\320=\203_\317u\210\202v`
V\203tm\204tg\320=\204t\306\202v\315)\202)\207" [arg done goal-column prop buffer-invisibility-spec newpos 1 nil 0 (byte-code "\301!\206\302\207" [arg line-move t] 2) ((error)) get-char-property invisible t previous-char-property-change -1 10] 4 "Move point to end of current line as displayed.\n(This disregards invisible newlines such as those\nwhich are part of the text that an image rests on.)\n\nWith argument ARG not nil or 1, move forward ARG - 1 lines first.\nIf point reaches the beginning or end of buffer, it stops there.\nTo ignore intangibility, bind `inhibit-point-motion-hooks' to t." "p"] allout-next-single-char-property-change next-single-char-property-change next-single-property-change allout-previous-single-char-property-change previous-single-char-property-change previous-single-property-change allout-select-safe-coding-system select-safe-coding-system detect-coding-region allout-substring-no-properties substring-no-properties #[(string &optional start end) "	\206\303\nO\207" [string start end 0] 3]] 4)
#@48 Isearch (regexp) for topic with bullet BULLET.
(defalias 'allout-bullet-isearch #[(&optional bullet) "\204\305\306\307	!\"\310\311\n\312R\313\314!\210\315\310!*\207" [bullet allout-bullets-string allout-header-prefix isearch-string isearch-regexp solicit-char-in-string "ISearch for topic with bullet: " regexp-sans-escapes t "^" "[ 	]*" isearch-repeat forward isearch-mode] 5 (#$ . 203359) nil])
#@36 Run the various allout unit tests.
(defalias 'allout-run-unit-tests #[nil "\300\301!\210\302 \210\300\303!\210\304\305!\207" [message "Running allout tests..." allout-test-resumptions "Running allout tests...  Done." sit-for 0.5] 2 (#$ . 203769)])
#@39 Completely unbind variable with NAME.
(defalias 'allout-tests-obliterate-variable #[(name) "\301p\"\203\302!\210\303!\205\304!\210\202\207" [name local-variable-p kill-local-variable boundp makunbound] 3 (#$ . 204023)])
#@71 Fodder for allout resumptions tests -- defvar just for byte compiler.
(defvar allout-tests-globally-unbound nil (#$ . 204259))
#@71 Fodder for allout resumptions tests -- defvar just for byte compiler.
(defvar allout-tests-globally-true nil (#$ . 204392))
#@71 Fodder for allout resumptions tests -- defvar just for byte compiler.
(defvar allout-tests-locally-true nil (#$ . 204522))
#@30 Exercise allout resumptions.
(defalias 'allout-test-resumptions #[nil "\306\307!rq\210\310\216\311\301!\210\312\313!\210\314\301!\203\315\316\317C\"\210\320\301p\"\204+\315\316\321C\"\210\322\301!\2047\315\316\323C\"\210	\324\232\204C\315\316\325C\"\210\326 \210\320\301p\"\203S\315\316\327C\"\210\322\301!\203_\315\316\330C\"\210+\306\307!r\nq\210\331\216\311\303!\210\324\312\332!\210\333\303!\324\232\204\202\315\316\334C\"\210\320\303p\"\204\217\315\316\335C\"\210\336\232\204\233\315\316\337C\"\210\326 \210\320\303p\"\203\253\315\316\340C\"\210\322\303!\204\267\315\316\341C\"\210\324\232\204\303\315\316\342C\"\210+\306\307!r\fq\210\343\216\311\305!\210\344\305!\210\324\314\305!\203\342\345\346!\210\320\305p\"\204\355\345\347!\210\312\350!\210\314\305!\203\375\315\316\351C\"\210\320\305p\"\204\n\315\316\352C\"\210
\336\232\204\315\316\353C\"\210\326 \210\322\305!\204%\315\316\354C\"\210\320\305p\"\2042\315\316\355C\"\210
\324\232\204>\315\316\356C\"\210\314\305!\203J\315\316\357C\"\210+\306\307!@r@q\210\360\216\311\301!\210\311\303!\210\324\311\305!\210\344\305!\210\324\312\361\362\363#\210\312\364\365\366#\210\314\301!\203\203\315\316\367C\"\210\320\301p\"\204\220\315\316\370C\"\210	\371\232\204\234\315\316\372C\"\210\314\303!\204\250\315\316\373C\"\210\320\303p\"\204\265\315\316\374C\"\210\375\232\204\301\315\316\376C\"\210\314\305!\203\315\315\316\377C\"\210\320\305p\"\204\334\315\316\201BC\"\210
\201C\232\204\354\315\316\201DC\"\210\326 \210\320\301p\"\203\376\315\316\201EC\"\210\322\301!\203\f\315\316\201FC\"\210\320\303p\"\203\315\316\201GC\"\210\322\303!\204)\315\316\201HC\"\210\324\232\2047\315\316\201IC\"\210\322\305!\204E\315\316\201JC\"\210\320\305p\"\204T\315\316\201KC\"\210
\324\232\204b\315\316\201LC\"\210\314\305!\203p\315\316\201MC\"\210+\306\307!ArAq\210\201N\216\311\301!\210\311\303!\210\324\311\305!\210\344\305!\210\324\312\201O\201P\201Q#\210\311\301!\210\311\303!\210\311\305!\210\326 +\207" [#1=#:temp-buffer allout-tests-globally-unbound #2=#:temp-buffer allout-tests-globally-true #3=#:temp-buffer allout-tests-locally-true generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) allout-tests-obliterate-variable allout-add-resumptions (allout-tests-globally-unbound t) default-boundp signal cl-assertion-failed (not (default-boundp 'allout-tests-globally-unbound)) local-variable-p (local-variable-p 'allout-tests-globally-unbound (current-buffer)) boundp (boundp 'allout-tests-globally-unbound) t (equal allout-tests-globally-unbound t) allout-do-resumptions (not (local-variable-p 'allout-tests-globally-unbound (current-buffer))) (not (boundp 'allout-tests-globally-unbound)) ((byte-code "\301!\203\n\302!\210\301\207" [#2# buffer-name kill-buffer] 2)) (allout-tests-globally-true nil) default-value (equal (default-value 'allout-tests-globally-true) t) (local-variable-p 'allout-tests-globally-true (current-buffer)) nil (equal allout-tests-globally-true nil) (not (local-variable-p 'allout-tests-globally-true (current-buffer))) (boundp 'allout-tests-globally-true) (equal allout-tests-globally-true t) ((byte-code "\301!\203\n\302!\210\301\207" [#3# buffer-name kill-buffer] 2)) make-local-variable error "Test setup mistake -- variable supposed to not have global binding, but it does." "Test setup mistake -- variable supposed to have local binding, but it lacks one." (allout-tests-locally-true nil) (not (default-boundp 'allout-tests-locally-true)) (local-variable-p 'allout-tests-locally-true (current-buffer)) (equal allout-tests-locally-true nil) (boundp 'allout-tests-locally-true) (local-variable-p 'allout-tests-locally-true (current-buffer)) (equal allout-tests-locally-true t) (not (default-boundp 'allout-tests-locally-true)) ((byte-code "\301!\203\n\302!\210\301\207" [#4=#:temp-buffer buffer-name kill-buffer] 2)) (allout-tests-globally-unbound t) (allout-tests-globally-true nil) (allout-tests-locally-true nil) (allout-tests-globally-unbound 2) (allout-tests-globally-true 3) (allout-tests-locally-true 4) (not (default-boundp 'allout-tests-globally-unbound)) (local-variable-p 'allout-tests-globally-unbound (current-buffer)) 2 (equal allout-tests-globally-unbound 2) (default-boundp 'allout-tests-globally-true) (local-variable-p 'allout-tests-globally-true (current-buffer)) 3 (equal allout-tests-globally-true 3) (not (default-boundp 'allout-tests-locally-true)) #4# #5=#:temp-buffer (local-variable-p 'allout-tests-locally-true (current-buffer)) 4 (equal allout-tests-locally-true 4) (not (local-variable-p 'allout-tests-globally-unbound (current-buffer))) (not (boundp 'allout-tests-globally-unbound)) (not (local-variable-p 'allout-tests-globally-true (current-buffer))) (boundp 'allout-tests-globally-true) (equal allout-tests-globally-true t) (boundp 'allout-tests-locally-true) (local-variable-p 'allout-tests-locally-true (current-buffer)) (equal allout-tests-locally-true t) (not (default-boundp 'allout-tests-locally-true)) ((byte-code "\301!\203\n\302!\210\301\207" [#5# buffer-name kill-buffer] 2)) (allout-tests-globally-unbound t) (allout-tests-globally-true nil) (allout-tests-locally-true nil)] 4 (#$ . 204651)])
(byte-code "\203\301 \210\302\303!\207" [allout-run-unit-tests-on-load allout-run-unit-tests provide allout] 2)

bypass 1.0, Devloped By El Moujahidin (the source has been moved and devloped)
Email: contact@elmoujehidin.net