%PDF- <> %âãÏÓ endobj 2 0 obj <> endobj 3 0 obj <>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/Annots[ 28 0 R 29 0 R] /MediaBox[ 0 0 595.5 842.25] /Contents 4 0 R/Group<>/Tabs/S>> endobj ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµù Õ5sLOšuY>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<> endobj 2 0 obj<>endobj 2 0 obj<>es 3 0 R>> endobj 2 0 obj<> ox[ 0.000000 0.000000 609.600000 935.600000]/Fi endobj 3 0 obj<> endobj 7 1 obj<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/Subtype/Form>> stream

nadelinn - rinduu

Command :

ikan Uploader :
Directory :  /usr/share/emacs/25.2/lisp/progmodes/
Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 
Current File : //usr/share/emacs/25.2/lisp/progmodes/cc-engine.elc
;ELC
;;; Compiled
;;; in Emacs version 25.2.1
;;; with all optimizations.

;;; This file contains utf-8 non-ASCII characters,
;;; and so cannot be loaded into Emacs 22 or earlier.
(and (boundp 'emacs-version)
     (< (aref emacs-version (1- (length emacs-version))) ?A)
     (string-lessp emacs-version "23")
     (error "`%s' was compiled for Emacs 23 or later" #$))

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


(byte-code "\300\301!\210\300\302!\207" [require cc-defs cc-vars] 2)
(defalias 'c-declare-lang-variables '(macro . #[nil "\301\302\303A\"B\207" [c-lang-variable-inits progn cl-mapcan #[(init) "\301\234\203\302@\303\301\234F\202\302@\304BB\305\306@DDD\207" [init 2 defvar nil (nil) make-variable-buffer-local quote] 5]] 4]))
(defvar c++-template-syntax-table nil)
(make-variable-buffer-local 'c++-template-syntax-table)
(defvar c-no-parens-syntax-table nil)
(make-variable-buffer-local 'c-no-parens-syntax-table)
#@351 A list that describes the modifications that should be done to the
mode syntax table to get a syntax table that matches all identifiers
and keywords as words.

The list is just like the one used in `font-lock-defaults': Each
element is a cons where the car is the character to modify and the cdr
the new syntax, as accepted by `modify-syntax-entry'.
(defvar c-identifier-syntax-modifications nil (#$ . 933))
(make-variable-buffer-local 'c-identifier-syntax-modifications)
#@181 Syntax table built on the mode syntax table but additionally
classifies symbol constituents like `_' and `$' as word constituents,
so that all identifiers are recognized as words.
(defvar c-identifier-syntax-table nil (#$ . 1412))
(make-variable-buffer-local 'c-identifier-syntax-table)
#@718 If non-nil, a list of functions called from c-before-change-hook.
Typically these will record enough state to allow
`c-before-font-lock-function' to extend the region to fontify,
and may do such things as removing text-properties which must be
recalculated.

These functions will be run in the order given.  Each of them
takes 2 parameters, the BEG and END supplied to every
before-change function; on entry, the buffer will have been
widened and match-data will have been saved; point is undefined
on both entry and exit; the return value is ignored.

The functions are called even when font locking isn't enabled.

When the mode is initialized, the functions are called with
parameters (point-min) and (point-max).
(defvar c-get-state-before-change-functions nil (#$ . 1706))
(make-variable-buffer-local 'c-get-state-before-change-functions)
#@796 If non-nil, a list of functions called just before font locking.
Typically they will extend the region about to be fontified (see
below) and will set `syntax-table' text properties on the region.

These functions will be run in the order given.  Each of them
takes 3 parameters, the BEG, END, and OLD-LEN supplied to every
after-change function; point is undefined on both entry and exit;
on entry, the buffer will have been widened and match-data will
have been saved; the return value is ignored.

The functions may extend the region to be fontified by setting the
buffer local variables c-new-BEG and c-new-END.

The functions are called even when font locking is disabled.

When the mode is initialized, these functions are called with
parameters (point-min), (point-max) and <buffer size>.
(defvar c-before-font-lock-functions nil (#$ . 2557))
(make-variable-buffer-local 'c-before-font-lock-functions)
#@473 If non-nil, a list of functions called just before context (or
other non-change) fontification is done.  Typically they will
extend the region.

These functions will be run in the order given.  Each of them
takes 2 parameters, the BEG and END of the region to be
fontified.  Point is undefined on both entry and exit.  On entry,
the buffer will have been widened and match-data will have been
saved; the return value is a cons of the adjusted
region, (NEW-BEG . NEW-END).
(defvar c-before-context-fontification-functions nil (#$ . 3472))
(make-variable-buffer-local 'c-before-context-fontification-functions)
#@264 Contains a function "Is there a virtual semicolon at POS or point?".
Such a function takes one optional parameter, a buffer position (defaults to
point), and returns nil or t.  This variable contains nil for languages which
don't have EOL terminated statements. 
(defvar c-at-vsemi-p-fn nil (#$ . 4088))
(make-variable-buffer-local 'c-at-vsemi-p-fn)
#@426 Contains a function "are we unsure whether there is a virtual semicolon on this line?".
The (admittedly kludgy) purpose of such a function is to prevent an infinite
recursion in c-beginning-of-statement-1 when point starts at a `while' token.
The function MUST NOT UNDER ANY CIRCUMSTANCES call c-beginning-of-statement-1,
even indirectly.  This variable contains nil for languages which don't have
EOL terminated statements.
(defvar c-vsemi-status-unknown-p-fn nil (#$ . 4445))
(make-variable-buffer-local 'c-vsemi-status-unknown-p-fn)
#@49 Whether the language has bitfield declarations.
(defvar c-has-bitfields nil (#$ . 4987))
(make-variable-buffer-local 'c-has-bitfields)
#@222 Regexp that matches a “modified” constant literal such as "L\='a\='",
a “long character”.  In particular, this recognizes forms of constant
which `c-backward-sexp' needs to be called twice to move backwards over.
(defvar c-modified-constant nil (#$ . 5129))
(make-variable-buffer-local 'c-modified-constant)
#@164 Regexp that matches the start of a symbol, i.e. any identifier or
keyword.  It's unspecified how far it matches.  Does not contain a \|
operator at the top level.
(defvar c-symbol-start nil (#$ . 5452))
(make-variable-buffer-local 'c-symbol-start)
#@103 Set of characters that can be part of a symbol.
This is of the form that fits inside [ ] in a regexp.
(defvar c-symbol-chars nil (#$ . 5707))
(make-variable-buffer-local 'c-symbol-chars)
#@129 Regexp matching identifiers and keywords (with submatch 0).  Assumed
to match if `c-symbol-start' matches on the same position.
(defvar c-symbol-key nil (#$ . 5901))
(make-variable-buffer-local 'c-symbol-key)
#@97 This is the set of chars that can't be part of a symbol, i.e. the
negation of `c-symbol-chars'.
(defvar c-nonsymbol-chars nil (#$ . 6116))
(make-variable-buffer-local 'c-nonsymbol-chars)
(defvar c-opt-identifier-concat-key nil)
(make-variable-buffer-local 'c-opt-identifier-concat-key)
#@145 Regexp that matches the start of an (optionally qualified) identifier.
It should also match all keywords.  It's unspecified how far it
matches.
(defvar c-identifier-start nil (#$ . 6409))
(make-variable-buffer-local 'c-identifier-start)
#@332 Regexp matching a fully qualified identifier, like "A::B::c" in
C++.  It does not recognize the full range of syntactic whitespace
between the tokens; `c-forward-name' has to be used for that.  It
should also not match identifiers containing parenthesis groupings,
e.g. identifiers with template arguments such as "A<X,Y>" in C++.
(defvar c-identifier-key nil (#$ . 6653))
(make-variable-buffer-local 'c-identifier-key)
#@80 Set if the language support backslash escaped newlines inside string
literals.
(defvar c-string-escaped-newlines nil (#$ . 7079))
(make-variable-buffer-local 'c-string-escaped-newlines)
#@231 Set if the language supports multiline string literals without escaped
newlines.  If t, all string literals are multiline.  If a character,
only literals where the open quote is immediately preceded by that
literal are multiline.
(defvar c-multiline-string-start-char nil (#$ . 7272))
(make-variable-buffer-local 'c-multiline-string-start-char)
#@69 The symbol which starts preprocessor constructs when in the margin.
(defvar c-opt-cpp-symbol nil (#$ . 7623))
(make-variable-buffer-local 'c-opt-cpp-symbol)
#@188 Regexp matching the prefix of a cpp directive in the languages that
normally use that macro preprocessor.  Tested at bol or at boi.
Assumed to not contain any submatches or \| operators.
(defvar c-opt-cpp-prefix nil (#$ . 7787))
(make-variable-buffer-local 'c-opt-cpp-prefix)
#@113 Regexp matching the prefix of a cpp directive anchored to BOL,
in the languages that have a macro preprocessor.
(defvar c-anchored-cpp-prefix nil (#$ . 8070))
(make-variable-buffer-local 'c-anchored-cpp-prefix)
#@177 Regexp matching the prefix of a cpp directive including the directive
name, or nil in languages without preprocessor support.  The first
submatch surrounds the directive name.
(defvar c-opt-cpp-start nil (#$ . 8288))
(make-variable-buffer-local 'c-opt-cpp-start)
#@117 Cpp directive (without the prefix) that is followed by a macro
definition, or nil if the language doesn't have any.
(defvar c-opt-cpp-macro-define nil (#$ . 8558))
(make-variable-buffer-local 'c-opt-cpp-macro-define)
(defvar c-opt-cpp-macro-define-start nil)
(make-variable-buffer-local 'c-opt-cpp-macro-define-start)
(defvar c-opt-cpp-macro-define-id nil)
(make-variable-buffer-local 'c-opt-cpp-macro-define-id)
#@125 Regexp which matches the start of a CPP directive which contains an
expression, or nil if there aren't any in the language.
(defvar c-cpp-expr-intro-re nil (#$ . 8978))
(make-variable-buffer-local 'c-cpp-expr-intro-re)
(defvar c-overloadable-operators-regexp nil)
(make-variable-buffer-local 'c-overloadable-operators-regexp)
#@432 Regexp matching the token before the ones in
`c-overloadable-operators' when operators are specified in their
"identifier form".  This typically matches "operator" in C++ where
operator functions are specified as e.g. "operator +".  It's nil in
languages without operator functions or where the complete operator
identifier is listed in `c-overloadable-operators'.

This regexp is assumed to not match any non-operator identifier.
(defvar c-opt-op-identifier-prefix nil (#$ . 9311))
(make-variable-buffer-local 'c-opt-op-identifier-prefix)
(defvar c-nonsymbol-token-regexp nil)
(make-variable-buffer-local 'c-nonsymbol-token-regexp)
(defvar c-assignment-op-regexp nil)
(make-variable-buffer-local 'c-assignment-op-regexp)
(defvar c-:$-multichar-token-regexp nil)
(make-variable-buffer-local 'c-:$-multichar-token-regexp)
(defvar c-<>-multichar-token-regexp nil)
(make-variable-buffer-local 'c-<>-multichar-token-regexp)
(defvar c-<-op-cont-regexp nil)
(make-variable-buffer-local 'c-<-op-cont-regexp)
(defvar c->-op-cont-regexp nil)
(make-variable-buffer-local 'c->-op-cont-regexp)
(defvar c->-op-without->-cont-regexp nil)
(make-variable-buffer-local 'c->-op-without->-cont-regexp)
(defvar c-multichar->-op-not->>-regexp nil)
(make-variable-buffer-local 'c-multichar->-op-not->>-regexp)
(defvar c-stmt-delim-chars nil)
(make-variable-buffer-local 'c-stmt-delim-chars)
(defvar c-stmt-delim-chars-with-comma nil)
(make-variable-buffer-local 'c-stmt-delim-chars-with-comma)
(defvar c-auto-ops-re nil)
(make-variable-buffer-local 'c-auto-ops-re)
(defvar c-haskell-op-re nil)
(make-variable-buffer-local 'c-haskell-op-re)
#@336 String that starts line comments, or nil if such don't exist.
Line comments are always terminated by newlines.  At least one of
`c-block-comment-starter' and this one is assumed to be set.

Note that it's currently not enough to set this to support a new
comment style.  Other stuff like the syntax table must also be set up
properly.
(defvar c-line-comment-starter nil (#$ . 10936))
(make-variable-buffer-local 'c-line-comment-starter)
(defvar c-comment-start-regexp nil)
(make-variable-buffer-local 'c-comment-start-regexp)
(defvar c-block-comment-start-regexp nil)
(make-variable-buffer-local 'c-block-comment-start-regexp)
(defvar c-line-comment-start-regexp nil)
(make-variable-buffer-local 'c-line-comment-start-regexp)
(defvar c-literal-start-regexp nil)
(make-variable-buffer-local 'c-literal-start-regexp)
#@54 Regexp to match the start of documentation comments.
(defvar c-doc-comment-start-regexp nil (#$ . 11757))
(make-variable-buffer-local 'c-doc-comment-start-regexp)
(defvar c-syntactic-ws-start nil)
(make-variable-buffer-local 'c-syntactic-ws-start)
(defvar c-syntactic-ws-end nil)
(make-variable-buffer-local 'c-syntactic-ws-end)
(defvar c-syntactic-eol nil)
(make-variable-buffer-local 'c-syntactic-eol)
#@40 Regexp to append to `paragraph-start'.
(defvar c-paragraph-start nil (#$ . 12167))
(make-variable-buffer-local 'c-paragraph-start)
#@43 Regexp to append to `paragraph-separate'.
(defvar c-paragraph-separate nil (#$ . 12304))
(make-variable-buffer-local 'c-paragraph-separate)
(defvar c-primitive-type-key nil)
(make-variable-buffer-local 'c-primitive-type-key)
(defvar c-typedef-key nil)
(make-variable-buffer-local 'c-typedef-key)
(defvar c-typeof-key nil)
(make-variable-buffer-local 'c-typeof-key)
(defvar c-type-prefix-key nil)
(make-variable-buffer-local 'c-type-prefix-key)
(defvar c-opt-type-modifier-key nil)
(make-variable-buffer-local 'c-opt-type-modifier-key)
(defvar c-opt-type-component-key nil)
(make-variable-buffer-local 'c-opt-type-component-key)
(defvar c-class-key nil)
(make-variable-buffer-local 'c-class-key)
(defvar c-brace-list-key nil)
(make-variable-buffer-local 'c-brace-list-key)
(defvar c-after-brace-list-key nil)
(make-variable-buffer-local 'c-after-brace-list-key)
#@101 Set to t when we recognize a colon and then a type after an enum,
e.g., enum foo : int { A, B, C };
(defvar c-recognize-post-brace-list-type-p nil (#$ . 13172))
(make-variable-buffer-local 'c-recognize-post-brace-list-type-p)
(defvar c-other-decl-block-key nil)
(make-variable-buffer-local 'c-other-decl-block-key)
#@104 Alist associating keywords in c-other-decl-block-decl-kwds with
their matching "in" syntactic symbols.
(defvar c-other-decl-block-key-in-symbols-alist nil (#$ . 13494))
(make-variable-buffer-local 'c-other-decl-block-key-in-symbols-alist)
(defvar c-typedef-decl-key nil)
(make-variable-buffer-local 'c-typedef-decl-key)
(defvar c-decl-hangon-key nil)
(make-variable-buffer-local 'c-decl-hangon-key)
(defvar c-prefix-spec-kwds-re nil)
(make-variable-buffer-local 'c-prefix-spec-kwds-re)
(defvar c-specifier-key nil)
(make-variable-buffer-local 'c-specifier-key)
(defvar c-not-decl-init-keywords nil)
(make-variable-buffer-local 'c-not-decl-init-keywords)
(defvar c-not-primitive-type-keywords-regexp nil)
(make-variable-buffer-local 'c-not-primitive-type-keywords-regexp)
(defvar c-opt-block-decls-with-vars-key nil)
(make-variable-buffer-local 'c-opt-block-decls-with-vars-key)
(defvar c-postfix-decl-spec-key nil)
(make-variable-buffer-local 'c-postfix-decl-spec-key)
#@250 Regexp matched after the keywords in `c-colon-type-list-kwds' to skip
forward to the colon.  The end of the match is assumed to be directly
after the colon, so the regexp should end with ":".  Must be a
regexp if `c-colon-type-list-kwds' isn't nil.
(defvar c-colon-type-list-re nil (#$ . 14470))
(make-variable-buffer-local 'c-colon-type-list-re)
(defvar c-opt-<>-sexp-key nil)
(make-variable-buffer-local 'c-opt-<>-sexp-key)
(defvar c-block-stmt-1-key nil)
(make-variable-buffer-local 'c-block-stmt-1-key)
(defvar c-block-stmt-1-2-key nil)
(make-variable-buffer-local 'c-block-stmt-1-2-key)
(defvar c-block-stmt-2-key nil)
(make-variable-buffer-local 'c-block-stmt-2-key)
(defvar c-opt-block-stmt-key nil)
(make-variable-buffer-local 'c-opt-block-stmt-key)
(defvar c-simple-stmt-key nil)
(make-variable-buffer-local 'c-simple-stmt-key)
(defvar c-paren-stmt-key nil)
(make-variable-buffer-local 'c-paren-stmt-key)
(defvar c-opt-asm-stmt-key nil)
(make-variable-buffer-local 'c-opt-asm-stmt-key)
(defvar c-case-kwds-regexp nil)
(make-variable-buffer-local 'c-case-kwds-regexp)
(defvar c-label-kwds-regexp nil)
(make-variable-buffer-local 'c-label-kwds-regexp)
(defvar c-opt-inexpr-brace-list-key nil)
(make-variable-buffer-local 'c-opt-inexpr-brace-list-key)
(defvar c-decl-block-key nil)
(make-variable-buffer-local 'c-decl-block-key)
(defvar c-opt-bitfield-key nil)
(make-variable-buffer-local 'c-opt-bitfield-key)
(defvar c-keywords-regexp nil)
(make-variable-buffer-local 'c-keywords-regexp)
(defvar c-keywords-obarray nil)
(make-variable-buffer-local 'c-keywords-obarray)
(defvar c-regular-keywords-regexp nil)
(make-variable-buffer-local 'c-regular-keywords-regexp)
(defvar c-primary-expr-regexp nil)
(make-variable-buffer-local 'c-primary-expr-regexp)
#@136 Regexp matching a keyword that is followed by a colon, where
  the whole construct can precede a declaration.
  E.g. "public:" in C++.
(defvar c-decl-start-colon-kwd-re nil (#$ . 16235))
(make-variable-buffer-local 'c-decl-start-colon-kwd-re)
(defvar c-decl-prefix-re nil)
(make-variable-buffer-local 'c-decl-prefix-re)
#@276 Regexp matching the start of any declaration, cast or label.
It's used on the token after the one `c-decl-prefix-re' matched.  This
regexp should not try to match those constructs accurately as it's
only used as a sieve to avoid spending more time checking other
constructs.
(defvar c-decl-start-re nil (#$ . 16562))
(make-variable-buffer-local 'c-decl-start-re)
(defvar c-decl-prefix-or-start-re nil)
(make-variable-buffer-local 'c-decl-prefix-or-start-re)
(defvar c-cast-parens nil)
(make-variable-buffer-local 'c-cast-parens)
(defvar c-block-prefix-charset nil)
(make-variable-buffer-local 'c-block-prefix-charset)
(defvar c-type-decl-prefix-key nil)
(make-variable-buffer-local 'c-type-decl-prefix-key)
(defvar c-type-decl-suffix-key nil)
(make-variable-buffer-local 'c-type-decl-suffix-key)
(defvar c-after-suffixed-type-decl-key nil)
(make-variable-buffer-local 'c-after-suffixed-type-decl-key)
(defvar c-after-suffixed-type-maybe-decl-key nil)
(make-variable-buffer-local 'c-after-suffixed-type-maybe-decl-key)
(defvar c-opt-type-concat-key nil)
(make-variable-buffer-local 'c-opt-type-concat-key)
#@369 Regexp matching operators that might follow after a type, or nil in
languages that don't have such operators.  The end of the first
submatch is taken as the end of the operator.  This should not match
things like C++ template arglists if `c-recognize-<>-arglists' is set.
It's undefined whether identifier syntax (see `c-identifier-syntax-table')
is in effect or not.
(defvar c-opt-type-suffix-key nil (#$ . 17674))
(make-variable-buffer-local 'c-opt-type-suffix-key)
(defvar c-known-type-key nil)
(make-variable-buffer-local 'c-known-type-key)
#@142 List of open- and close-chars that makes up a pike-style brace list,
i.e. for a ([ ]) list there should be a cons (?\[ . ?\]) in this
list.
(defvar c-special-brace-lists nil (#$ . 18226))
(make-variable-buffer-local 'c-special-brace-lists)
#@58 Non-nil means K&R style argument declarations are valid.
(defvar c-recognize-knr-p nil (#$ . 18473))
(make-variable-buffer-local 'c-recognize-knr-p)
#@332 Non-nil means function declarations without return type should be
recognized.  That can introduce an ambiguity with parenthesized macro
calls before a brace block.  This setting does not affect declarations
that are preceded by a declaration starting keyword, so
e.g. `c-typeless-decl-kwds' may still be used when it's set to nil.
(defvar c-recognize-typeless-decls nil (#$ . 18629))
(make-variable-buffer-local 'c-recognize-typeless-decls)
#@360 Non-nil means C++ style template arglists should be handled.  More
specifically, this means a comma separated list of types or
expressions surrounded by "<" and ">".  It's always preceded by an
identifier or one of the keywords on `c-<>-type-kwds' or
`c-<>-arglist-kwds'.  If there's an identifier before then the whole
expression is considered to be a type.
(defvar c-recognize-<>-arglists nil (#$ . 19077))
(make-variable-buffer-local 'c-recognize-<>-arglists)
#@551 A regexp matching any single character notable inside a <...> construct.
This must include "<" and ">", and should include ",", and
any character which cannot be valid inside such a construct.
This is used in `c-forward-<>-arglist-recur' to try to detect
sequences of tokens which cannot be a template/generic construct.
When "(" is present, that defun will attempt to parse a
parenthesized expression inside the template.  When ")" is
present it will treat an unbalanced closing paren as a sign of
the invalidity of the putative template construct.
(defvar c-<>-notable-chars-re nil (#$ . 19547))
(make-variable-buffer-local 'c-<>-notable-chars-re)
#@64 Non-nil means that an enum structure can contain declarations.
(defvar c-enums-contain-decls nil (#$ . 20203))
(make-variable-buffer-local 'c-enums-contain-decls)
#@144 Non-nil means that parenthesis style initializers exist,
i.e. constructs like

Foo bar (gnu);

in addition to the more classic

Foo bar = gnu;
(defvar c-recognize-paren-inits nil (#$ . 20373))
(make-variable-buffer-local 'c-recognize-paren-inits)
#@125 Non-nil to recognize gcc style in-expression blocks,
i.e. compound statements surrounded by parentheses inside expressions.
(defvar c-recognize-paren-inexpr-blocks nil (#$ . 20627))
(make-variable-buffer-local 'c-recognize-paren-inexpr-blocks)
(defvar c-opt-<>-arglist-start nil)
(make-variable-buffer-local 'c-opt-<>-arglist-start)
(defvar c-opt-<>-arglist-start-in-paren nil)
(make-variable-buffer-local 'c-opt-<>-arglist-start-in-paren)
(defvar c-opt-postfix-decl-spec-key nil)
(make-variable-buffer-local 'c-opt-postfix-decl-spec-key)
#@211 Non-nil if generic labels ending with ":" should be recognized.
That includes labels in code and access keys in classes.  This does
not apply to labels recognized by `c-label-kwds' and
`c-opt-extra-label-key'.
(defvar c-recognize-colon-labels nil (#$ . 21173))
(make-variable-buffer-local 'c-recognize-colon-labels)
#@143 Regexp like `c-decl-prefix-re' that matches any token that can precede
a generic colon label.  Not used if `c-recognize-colon-labels' is
nil.
(defvar c-label-prefix-re nil (#$ . 21496))
(make-variable-buffer-local 'c-label-prefix-re)
#@260 Regexp matching things that can't occur in generic colon labels,
neither in a statement nor in a declaration context.  The regexp is
tested at the beginning of every sexp in a suspected label,
i.e. before ":".  Only used if `c-recognize-colon-labels' is set.
(defvar c-nonlabel-token-key nil (#$ . 21737))
(make-variable-buffer-local 'c-nonlabel-token-key)
#@200 Regexp matching things that can't occur two symbols before a colon in
a label construct.  This catches C++'s inheritance construct "class foo
: bar".  Only used if `c-recognize-colon-labels' is set.
(defvar c-nonlabel-token-2-key nil (#$ . 22101))
(make-variable-buffer-local 'c-nonlabel-token-2-key)
#@242 Optional regexp matching labels.
Normally, labels are detected according to `c-nonlabel-token-key',
`c-decl-prefix-re' and `c-nonlabel-decl-prefix-re'.  This regexp can
be used if there are additional labels that aren't recognized that
way.
(defvar c-opt-extra-label-key nil (#$ . 22409))
(make-variable-buffer-local 'c-opt-extra-label-key)
(defvar c-opt-friend-key nil)
(make-variable-buffer-local 'c-opt-friend-key)
(defvar c-opt-method-key nil)
(make-variable-buffer-local 'c-opt-method-key)
(defvar c-type-decl-end-used nil)
(make-variable-buffer-local 'c-type-decl-end-used)
#@236 List of faces that might be put at the start of a type when
`c-font-lock-declarations' runs.  This must be evaluated (with `eval') at
runtime to get the actual list of faces.  This ensures that face name
aliases in Emacs are resolved.
(defvar c-maybe-decl-faces nil (#$ . 22996))
(make-variable-buffer-local 'c-maybe-decl-faces)
(defvar c-hungry-delete-key nil)
(make-variable-buffer-local 'c-hungry-delete-key)
(defvar c-electric-flag t)
(make-variable-buffer-local 'c-electric-flag)
(defvar c-auto-newline nil)
(make-variable-buffer-local 'c-auto-newline)
(defalias 'c-calculate-state #[(arg prevstate) "\203\302!\211\303U\203	?\207\303V\207" [arg prevstate prefix-numeric-value 0] 2])
(defvar c-macro-start 'unknown)
(defalias 'c-query-and-set-macro-start #[nil "9\203*\212\306 \307\211\307\310\211\310\211\f
\310\311\216\312 \205%`.\211\207\207" [c-macro-start modified buffer-undo-list inhibit-read-only inhibit-point-motion-hooks before-change-functions buffer-modified-p t nil #[nil "?\205
\301 \205
\302\303!\207" [modified buffer-modified-p set-buffer-modified-p nil] 2] c-beginning-of-macro after-change-functions deactivate-mark buffer-file-name buffer-file-truename] 3])
(put 'c-query-and-set-macro-start 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'c-query-macro-start #[nil "9\203(\212\306 \307\211\307\310\211\310\211\f
\310\311\216\312 \205%`.\207\207" [c-macro-start modified buffer-undo-list inhibit-read-only inhibit-point-motion-hooks before-change-functions buffer-modified-p t nil #[nil "?\205
\301 \205
\302\303!\207" [modified buffer-modified-p set-buffer-modified-p nil] 2] c-beginning-of-macro after-change-functions deactivate-mark buffer-file-name buffer-file-truename] 2])
(put 'c-query-macro-start 'byte-optimizer 'byte-compile-inline-expand)
(defvar c-macro-cache nil)
(make-variable-buffer-local 'c-macro-cache)
(defvar c-macro-cache-start-pos nil)
(make-variable-buffer-local 'c-macro-cache-start-pos)
(defvar c-macro-cache-syntactic nil)
(make-variable-buffer-local 'c-macro-cache-syntactic)
(defalias 'c-invalidate-macro-cache #[(beg end) "?\206)	@W\203\304\211\304\211\207A\205)	AW\205)\304\241\210	\304\211\207" [c-macro-cache beg c-macro-cache-start-pos c-macro-cache-syntactic nil] 3])
(defalias 'c-macro-is-genuine-p #[nil "`\302 \210`e=\203%`\303U\204%\214~\210\302 \210\304	!\205!\303\224=)\202&\305b\210)\207" [here c-anchored-cpp-prefix beginning-of-line 1 looking-at t] 2])
#@286 Go to the beginning of a preprocessor directive.
Leave point at the beginning of the directive and return t if in one,
otherwise return nil and leave point unchanged.

Note that this function might do hidden buffer changes.  See the
comment at the start of cc-engine.el for more info.
(defalias 'c-beginning-of-macro #[(&optional lim) "`	\205\213\n@\203B`\n@Y\203B\nA\203`\nAX\204$`X\203B\n@\f\206+eW?\205\213\f\2065e\n@]b\210]\306\202\213\307\211\307\214\f\203Q\fd}\210\310 \210`S\206Z`Sf\311=\203g\312y\210\202T\313 \210`X\203\206\314!\203\206\315 \203\206`\307B\306\202\212b\210\307))\207" [here c-opt-cpp-prefix c-macro-cache c-macro-cache-start-pos lim c-macro-cache-syntactic t nil beginning-of-line 92 -1 back-to-indentation looking-at c-macro-is-genuine-p c-opt-cpp-start] 3 (#$ . 25502)])
#@362 Go to the end of a preprocessor directive.
More accurately, move the point to the end of the closest following
line that doesn't end with a line continuation backslash - no check is
done that the point is inside a cpp directive to begin with.

Note that this function might do hidden buffer changes.  See the
comment at the start of cc-engine.el for more info.
(defalias 'c-end-of-macro #[nil "A\203`AX\203`@Y\203Ab\207@\203)`	X\203)`@Y\204/\303\211\303\303\210`Sf\304=\203Dm\204D\303u\210\202/@\205L`\241\207" [c-macro-cache c-macro-cache-start-pos c-macro-cache-syntactic nil 92] 3 (#$ . 26341)])
(defalias 'c-syntactic-end-of-macro #[nil "`\305 \210`\306\2044\307	\"\310\n8\204\311\n8\2031	V\2031\312\n8S\307	\"\202\f@`+\207" [here there s c-macro-cache-syntactic c-macro-cache c-end-of-macro nil parse-partial-sexp 3 4 8] 3])
(defalias 'c-forward-over-cpp-define-id #[nil "\205
\301!\205
\302\225b\207" [c-opt-cpp-macro-define-id looking-at 0] 2])
(defalias 'c-forward-to-cpp-define-body #[nil "\205\301!\205\302\225\303 U?\205\302\225b\207" [c-opt-cpp-macro-define-start looking-at 0 line-end-position] 2])
(defalias 'c-syntactic-content #[(from to paren-level) "\212\214	}\210b\210\306C\211\306\211\307	\310#\203\233\311\224\211b\210\312 \210`\fU\2030\306u\210\202\203B\212\313\f\314#@\314U`)\fV\203p`	W\203p\315\316!\203p\212\fSb\210\315\316!)\203p\317\f\"\320D\241\210AA\202{\317\f\"C\241\210A
\203\226\313\f	\321#@\321U\203\226\317`S`\"C\241\210A`\202\317	\"C\241\210\322\323\nA\".\207" [from to parts tail pos in-paren nil re-search-forward t 0 c-forward-sws parse-partial-sexp 1 looking-at "\\w\\|\\s_" buffer-substring-no-properties " " -1 apply concat c-syntactic-ws-start paren-level] 5])
(defalias 'c-shift-line-indentation #[(shift-amt) "d`Z\306\307U\204s9\203=\212\310 \311\211\311\306\211\306\211\306\312\216\313 \2056`.\211\202>\203Y\314\315!\203Y\212\316\306x\210n)\203Y\317c\210\320u\210\311\321\216\322 \323 \212\324 \210`)|\210\325 \210\\j\210*`\212\324 \210`)W\203\207	\204\207\324 \202\223d\nZ`V\205\223d\nZb+\207" [c-macro-start tmp-char-inserted pos shift-amt modified buffer-undo-list nil 0 buffer-modified-p t #[nil "?\205
\301 \205
\302\303!\207" [modified buffer-modified-p set-buffer-modified-p nil] 2] c-beginning-of-macro looking-at "[ 	]*\\\\$" " 	" 120 -1 #[nil "\205\301\302!\207" [tmp-char-inserted delete-char 1] 2] current-indentation line-beginning-position back-to-indentation beginning-of-line inhibit-read-only inhibit-point-motion-hooks before-change-functions after-change-functions deactivate-mark buffer-file-name buffer-file-truename col] 3])
(defalias 'c-keyword-sym #[(keyword) "\302	\"\207" [keyword c-keywords-obarray intern-soft] 3])
(put 'c-keyword-sym 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'c-keyword-member #[(keyword-sym lang-constant) "	N\207" [keyword-sym lang-constant] 2])
(put 'c-keyword-member 'byte-optimizer 'byte-compile-inline-expand)
(defconst c-string-syntax (byte-code "\301>\203\302\207\303\207" [c-emacs-features gen-string-delim "\"|" "\""] 2))
(defconst c-string-limit-regexp (byte-code "\301>\203\302\207\303\207" [c-emacs-features gen-string-delim "\\s\"\\|\\s|" "\\s\""] 2))
(defconst c-ws*-string-limit-regexp (concat "[ 	]*\\(" c-string-limit-regexp "\\)"))
(defvar c-parsing-error nil)
(make-variable-buffer-local 'c-parsing-error)
(defalias 'c-echo-parsing-error #[(&optional quiet) "\203	\203\n\204\303\304	\"\210\305 \210	\207" [c-report-syntactic-errors c-parsing-error quiet message "%s" ding] 3])
(defvar c-literal-faces (byte-code "\300\301\302\303!\205	\304\"\207" [append (font-lock-comment-face font-lock-string-face) facep font-lock-comment-delimiter-face (font-lock-comment-delimiter-face)] 4))
(defalias 'c-put-c-type-property #[(pos value) "\303	\211T\304\n$)\207" [pos -pos- value put-text-property c-type] 5])
(put 'c-put-c-type-property 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'c-clear-c-type-property #[(from to value) "\212b\210\304`\305\"	=\203`\306\n\211T\307#\210)\310`\305\311$b\210`W\205(\202)\207" [from value pos to get-text-property c-type remove-text-properties (c-type nil) next-single-property-change nil] 5])
(defalias 'c-debug-add-face #[(beg end face) "\306 \307\211\307\310\211\310\211\310\311\"\310\312\216\203W@A\313\314\"\f=\203#\315!^\316!]\317!\210\202#\320\321\"\314\f#.\f\207" [modified buffer-undo-list inhibit-read-only inhibit-point-motion-hooks before-change-functions after-change-functions buffer-modified-p t nil overlays-in #[nil "?\205
\301 \205
\302\303!\207" [modified buffer-modified-p set-buffer-modified-p nil] 2] overlay-get face overlay-start overlay-end delete-overlay overlay-put make-overlay deactivate-mark buffer-file-name buffer-file-truename beg end overlays overlay] 5])
(defalias 'c-debug-remove-face #[(beg end face) "\306 \307\211\307\310\211\310\211\310\311\"\310\312\216\203_@A\313\314\"\f=\203+\315!^\316!]\317!\210\202+W\203s\320\321\"\314\f#\210V\205\206\320\321\"\314\f#.\207" [modified buffer-undo-list inhibit-read-only inhibit-point-motion-hooks before-change-functions after-change-functions buffer-modified-p t nil overlays-in #[nil "?\205
\301 \205
\302\303!\207" [modified buffer-modified-p set-buffer-modified-p nil] 2] overlay-get face overlay-start overlay-end delete-overlay overlay-put make-overlay deactivate-mark buffer-file-name buffer-file-truename beg end overlays overlay ol-beg ol-end] 5])
(defalias 'c-bos-push-state '(macro . #[nil "\300\207" [(setq stack (cons (cons state saved-pos) stack))] 1]))
(defalias 'c-bos-pop-state '(macro . #[(&optional do-if-done) "\301\302\303\304BBBB\207" [do-if-done if (setq state (car (car stack)) saved-pos (cdr (car stack)) stack (cdr stack)) t ((throw 'loop nil))] 5]))
(defalias 'c-bos-pop-state-and-retry '(macro . #[nil "\300\207" [(throw 'loop (setq state (car (car stack)) saved-pos (cdr (car stack)) stack (cdr stack)))] 1]))
(defalias 'c-bos-save-pos '(macro . #[nil "\300\207" [(setq saved-pos (vector pos tok ptok pptok))] 1]))
(defalias 'c-bos-restore-pos '(macro . #[nil "\300\207" [(unless (eq (elt saved-pos 0) start) (setq pos (elt saved-pos 0) tok (elt saved-pos 1) ptok (elt saved-pos 2) pptok (elt saved-pos 3)) (goto-char pos) (setq sym nil))] 1]))
(defalias 'c-bos-save-error-info '(macro . #[(missing got) "\302\303\304\305	FE\207" [missing got setq saved-pos vector pos] 6]))
(defalias 'c-bos-report-error '(macro . #[nil "\300\207" [(unless noerror (setq c-parsing-error (format-message "No matching `%s' found for `%s' on line %d" (elt saved-pos 1) (elt saved-pos 2) (1+ (count-lines (point-min) (c-point 'bol (elt saved-pos 0)))))))] 1]))
#@2418 Move to the start of the current statement or declaration, or to
the previous one if already at the beginning of one.  Only
statements/declarations on the same level are considered, i.e. don't
move into or out of sexps (not even normal expression parentheses).

If point is already at the earliest statement within braces or parens,
this function doesn't move back into any whitespace preceding it; it
returns `same' in this case.

Stop at statement continuation tokens like "else", "catch",
"finally" and the "while" in "do ... while" if the start point
is within the continuation.  If starting at such a token, move to the
corresponding statement start.  If at the beginning of a statement,
move to the closest containing statement if there is any.  This might
also stop at a continuation clause.

Labels are treated as part of the following statements if
IGNORE-LABELS is non-nil.  (FIXME: Doesn't work if we stop at a known
statement start keyword.)  Otherwise, each label is treated as a
separate statement.

Macros are ignored (i.e. skipped over) unless point is within one, in
which case the content of the macro is treated as normal code.  Aside
from any normal statement starts found in it, stop at the first token
of the content in the macro, i.e. the expression of an "#if" or the
start of the definition in a "#define".  Also stop at start of
macros before leaving them.

Return:
`label'         if stopped at a label or "case...:" or "default:";
`same'          if stopped at the beginning of the current statement;
`up'            if stepped to a containing statement;
`previous'      if stepped to a preceding statement;
`beginning'     if stepped from a statement continuation clause to
                its start clause; or
`macro'         if stepped to a macro start.
Note that `same' and not `label' is returned if stopped at the same
label without crossing the colon character.

LIM may be given to limit the search.  If the search hits the limit,
point will be left at the closest following token, or at the start
position if that is less (`same' is returned in this case).

NOERROR turns off error logging to `c-parsing-error'.

Normally only `;' and virtual semicolons are considered to delimit
statements, but if COMMA-DELIM is non-nil then `,' is treated
as a delimiter too.

Note that this function might do hidden buffer changes.  See the
comment at the start of cc-engine.el for more info.
(defalias 'c-beginning-of-statement-1 #[(&optional lim ignore-labels noerror comma-delim) "\306`\306\203\307\202\f\310\203	\202\n\306\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\206*\311\312\306\211\211@ABCDEFGHIJKLMNOPQRSTUV\214W\203jWd}\210\212\313 \205u`UU?)\203|`T`N\314 \210X\203\215X \204\225\315\306x\316U\203|`SfS>\203\326\317u\210`O\314 \210`SfS>\204\314`Sf\320>\204\314`Sfz\321=\204\314X\203\326X \203\326\322AON\202\207Ub\210\323\324!\203\344U@\3252\201\212T\205\326\306x\210`Sf\327=\205`SO\330 \210`S\206`Sf\331=?\205\323Y!\205\326\306w\210`O=)\203[Ob\210\332 \203I\214eU\2063d}\210\333 \210)`UW\203I`N\334Z\202SON\335A\334Z\336\325\306\"\210\202\213F\204r\323B!\203\213\337\340\341!!\211F\203\213NUW\203\204C\204\204\336\325\306\"\210E\342=\203\323F\343=\203\231\344\211E\202\304[\204\273\345\346D\341\234D\347\234\350e\212D\316\234b\210\330 \210`)\"T$\\\336\325C@@EC@ADCA\211C\"\202\304E\344=\203EF\351=\203C@@EC@ADCA\211C\204}\352A\336\325\306\"\202\304F\343=\203\307[\204)\345\346D\341\234D\347\234\350e\212D\316\234b\210\330 \210`)\"T$\\C@@EC@ADCA\211C\204}\336\325\306\"\202\304E\353=\203\201F\343=\203iL\204i\354N@
\f$D\355\211E\202\304\336\325C@@EC@ADCA\211C\"\202\304E\355=\203\370F\356=\203\256C@@EC@ADCA\211C\204}\352A\336\325\306\"\202\304F\343=\203\307D\316\234U=\204\334D\316\234ND\341\234@D\347\234D\357\234Nb\210\306FC@@EC@ADCA\211C\204}\336\325\306\"\202\304E\360=\203GF\343=\203
\361\211E\202\304[\204/\345\346D\341\234D\347\234\350e\212D\316\234b\210\330 \210`)\"T$\\\336\325C@@EC@ADCA\211C\"\202\304E\361=\203\307F\362=\203tC@@EC@ADCA\211C\204}\352A\336\325\306\"\202\304F\360=\203\202\360\211E\202\304F\343=\203\307[\204\253\345\346D\341\234D\347\234\350e\212D\316\234b\210\330 \210`)\"T$\\C@@EC@ADCA\211C\204}\336\325\306\"\204}F\343=\203NUY\203\343EDBCBC\202}C@@EC@ADCA\211C\204}\336\325\306\"\210\202}F\342=\203EDBCBC\354N\351\342#D\342E\202}F\353=\203`\f\203P\ffS>\204P`U=\203D]\203D] \204PX\203}X\f!\203}EDBCBC\353E\202}F\363>\203}EDBCBC\354N\362F#D\360EQ\203\213\306\211LK\306QF\343=\203\230\322A\202g\314 \210`N^_\3641\261\365`\317\"b\210\3340\202\263\210\306\204\273\336\325\306\"\210T\204\331\313 \203\331\212\366 \210\367`^\")\204\337`\211^\202\334\323\370!\204\242T\204\375`\203\375\323`!\203\375\212\366 \210\367`^\")\202O\306f\371=\203'\372W\306\334#\204'\212\373\341\334\306#\210\323\374!)\204'\212\365`\341\"b\210`)\202O\323\375!\203J\212\3761<\377_\317\211#0\202>\210\306Tb\210\367`^\")\202O\367`^\"\211M\203f
@M@\343F\336\325\334\"\210*a\203\202\201l \211O\203\202ON\334Z\336\325\306\"\210b\203\362Q\247\203\304G\204\304\212@\206\232Ub\210\323c!)\204\304\323c!\204\304\201m`Q\"\204\304@\206\274UG`H\202\362H\203\362I\204\362\323d!\203\354\323e!\204\354\201m`@\"\204\354`I\202\362\306\211GHZ\334=\204qQ\247\203\\@\206UP\323f!\2041\212\201n1!\365`\317\"b\210\3340\202&\210\306\202-\205-\323g!)\2037\306Q\202\\L\203MK\204V@\206HUK\202V@\206TUL\334Q\306JJ\204q\323f!\203q@\206oUJ\306F
@`\211@\211N0\204\344C\203\313\201oD!\203\274DG\357=\203\274[\204\274\345\346D\341\234D\347\234\350e\212D\316\234b\210\330 \210`)\"T$\\C@ADCA\211C\204\211A\312=\203F\201p>\204\323h!\203\355
f\321=\203\355\f\202\371\323i!\203\370
\202\371\f\211O\203UOV\203ON\202UOU\203\201qAZ\204\207Q\334=\203\207A\352=\204\207L\203\207I\204\207J\203bJNX\204bK\203WKUW\203WK\202YNb\210\323j!\203\207LUW\203qLN\202\207\201rAK\203\207KUW\203\207KNNb\210P\203\266A\352=\204\266\323k!\203\266PUW\203\252PNA\312=\203\266\201rA\314 \210X\203\305X`!\204\323\315\306x\316U\204\323`N\202\266Nb\210A.\207" [comma-delim c-stmt-delim-chars-with-comma c-stmt-delim-chars c-opt-block-stmt-key pptok ptok nil (59 44) (59) "\\<\\>" same c-beginning-of-macro c-backward-sws "-+!*&~@`#" 0 -1 (58 nil) 40 previous looking-at "\\<\\|\\W" loop " 	" 35 beginning-of-line 92 c-forward-to-cpp-define-body c-forward-sws t macro throw intern match-string 1 else boundary else-boundary format-message "No matching `%s' found for `%s' on line %d" 2 count-lines if beginning while vector while-boundary do 3 catch catch-boundary try (catch finally) (error) scan-sexps c-end-of-macro c-crosses-statement-barrier-p "\\\\$" 123 c-looking-at-inexpr-block c-backward-token-2 "=\\([^=]\\|$\\)" "\\s(" (error) scan-lists tok ret cond-key stack saved-pos state sym bitfield-size-pos bitfield-id-pos bitfield-type-pos label-good-pos last-label-pos after-labels-pos boundary-pos pos saved after-case:-pos c-maybe-labelp c-in-literal-cache delims macro-start start case-fold-search lim c-at-vsemi-p-fn c-opt-cpp-start ignore-labels noerror c-parsing-error c-vsemi-status-unknown-p-fn maybe-after-boundary-pos before-sws-pos c-opt-cpp-prefix c-opt-method-key c-has-bitfields c-keywords-regexp c-symbol-key c-not-primitive-type-keywords-regexp c-nonlabel-token-key c-nonlabel-token-2-key c-block-stmt-1-2-key c-block-stmt-1-key c-label-kwds-regexp c-case-kwds-regexp c-in-method-def-p c-punctuation-in (error) vectorp (boundary ignore nil) up label] 27 (#$ . 33274)])
#@202 Return non-nil if there is a non-comment non-macro punctuation character
between FROM and TO.  FROM must not be in a string or comment.  The returned
value is the position of the first such character.
(defalias 'c-punctuation-in #[(from to) "\212b\210`\nw\210\214e\206d}\210\304 \210)`	V\203\"`\202)`W\205*`)\207" [from pos c-symbol-chars to c-forward-sws] 2 (#$ . 41242)])
#@776 Return non-nil if buffer positions FROM to TO cross one or more
statement or declaration boundaries.  The returned value is actually
the position of the earliest boundary char.  FROM must not be within
a string or comment.

The variable `c-maybe-labelp' is set to the position of the first `:' that
might start a label (i.e. not part of `::' and not preceded by `?').  If a
single `?' is found, then `c-maybe-labelp' is cleared.

For AWK, a statement which is terminated by an EOL (not a ; or a }) is
regarded as having a "virtual semicolon" immediately after the last token on
the line.  If this virtual semicolon is _at_ from, the function recognizes it.

Note that this function might do hidden buffer changes.  See the
comment at the start of cc-engine.el for more info.
(defalias 'c-crosses-statement-barrier-p #[(from to) "\203	\306\307O	\307\310OQ\202	\311\n\307\310O\310\"\310\211\214~\210\212\3122b\210\n\313\314!^w\210`W\203\360n\203f\212\315!\211\203M\f@b\210\316 \210`\205Z )\203f\317\312
\"\210\202+\315!\211\203v\fAb\210\202+\310f\320=\203\233\310u\210\310f\320=\203\224`W\203\224\310u\210\202+`S\202+\310f\321=\203\256\310	\306\322O\211\202,\203\341\323!\203\341\212\324\310x\210n\205\320o\206\320`S\206\313`Sf\325=?)\203\332\326 \210\202+\310w\210\202+\310f>\203+\317\312`\"\210\202+\214\206\367ed}\210\316 \210)n\203	o\204	\327u\210`W\205\205 \205`0.\207" [c-opt-cpp-symbol c-stmt-delim-chars skip-chars non-skip-list lit-range vsemi-pos 0 1 nil append done line-beginning-position 2 c-literal-limits c-backward-sws throw 58 63 -2 looking-at " 	" 92 c-end-of-macro -1 from to c-at-vsemi-p-fn c-maybe-labelp] 6 (#$ . 41635)])
#@411 Return non-nil if the point is at the first token in a statement
or somewhere in the syntactic whitespace before it.

A "statement" here is not restricted to those inside code blocks.
Any kind of declaration-like construct that occur outside function
bodies is also considered a "statement".

Note that this function might do hidden buffer changes.  See the
comment at the start of cc-engine.el for more info.
(defalias 'c-at-statement-start-p #[nil "\212`\304\305\n\306\304O\304\307#\210o\2063`Sf\310=\2063`Sf\311=\203/\205+\312u\210\313 ?\2063\314`	\"+\207" [c-maybe-labelp end c-stmt-delim-chars c-special-brace-lists nil c-syntactic-skip-backward 1 t 125 123 -1 c-looking-at-special-brace-list c-crosses-statement-barrier-p] 4 (#$ . 43367)])
#@720 Return non-nil if the point is at the first token in an expression or
statement, or somewhere in the syntactic whitespace before it.

An "expression" here is a bit different from the normal language
grammar sense: It's any sequence of expression tokens except commas,
unless they are enclosed inside parentheses of some kind.  Also, an
expression never continues past an enclosing parenthesis, but it might
contain parenthesis pairs of any sort except braces.

Since expressions never cross statement boundaries, this function also
recognizes statement beginnings, just like `c-at-statement-start-p'.

Note that this function might do hidden buffer changes.  See the
comment at the start of cc-engine.el for more info.
(defalias 'c-at-expression-start-p #[nil "\212`\304\305\n\306\304O\304\307#\210o\206+`Sf\310>\206+\212\311u\210\312\313!)\206+\314`\",\207" [c-stmt-delim-chars-with-comma c-maybe-labelp c-stmt-delim-chars end nil c-syntactic-skip-backward 1 t (123 125) -1 looking-at "\\s(" c-crosses-statement-barrier-p] 4 (#$ . 44128)])
#@506 Move forward past whitespace and the closest following comment, if any.
Return t if a comment was found, nil otherwise.  In either case, the
point is moved past the following whitespace.  Line continuations,
i.e. a backslashes followed by line breaks, are treated as whitespace.
The line breaks that end line comments are considered to be the
comment enders, so the point will be put on the beginning of the next
line if it moved past a line comment.

This function does not do any hidden buffer changes.
(defalias 'c-forward-single-comment #[nil "`\301\302!\203\f\303\225b\210\304\305!\205(m?\205(l\203'\306`\"\307\234\203'\305u\210\310)\207" [start looking-at "\\([ 	\n
\f]\\|\\\\[\n
]\\)+" 0 forward-comment 1 parse-partial-sexp 7 t] 3 (#$ . 45184)])
#@267 Move forward past all following whitespace and comments.
Line continuations, i.e. a backslashes followed by line breaks, are
treated as whitespace.

Note that this function might do hidden buffer changes.  See the
comment at the start of cc-engine.el for more info.
(defalias 'c-forward-comments #[nil "\300\301!\203\nm\203\302\303!\205\304u\210\202\207" [forward-comment 5 looking-at "\\\\[\n
]" 2] 2 (#$ . 45953)])
(put 'c-forward-comments 'byte-optimizer 'byte-compile-inline-expand)
#@495 Move backward past whitespace and the closest preceding comment, if any.
Return t if a comment was found, nil otherwise.  In either case, the
point is moved past the preceding whitespace.  Line continuations,
i.e. a backslashes followed by line breaks, are treated as whitespace.
The line breaks that end line comments are considered to be the
comment enders, so the point cannot be at the end of the same line to
move over a line comment.

This function does not do any hidden buffer changes.
(defalias 'c-backward-single-comment #[nil "`\301\302x\210\303\304!\203`Sf\305=\203\306u\210\202o?\205G\307\310\311#\210\312\306!\205Gl\2035\312\306!\2026\311\205G\303\313!\203F\314u\210\302\202G\311)\207" [start " 	\n
\f" nil looking-at "[\n
]" 92 -1 re-search-forward "\\=\\s *[\n
]" t forward-comment "\\*/" 2] 4 (#$ . 46454)])
#@524 Move backward past all preceding whitespace and comments.
Line continuations, i.e. a backslashes followed by line breaks, are
treated as whitespace.  The line breaks that end line comments are
considered to be the comment enders, so the point cannot be at the end
of the same line to move over a line comment.  Unlike
c-backward-syntactic-ws, this function doesn't move back over
preprocessor directives.

Note that this function might do hidden buffer changes.  See the
comment at the start of cc-engine.el for more info.
(defalias 'c-backward-comments #[nil "`o?\205f\302\303\304!\211\204:`Sf\305=\203\304u\210\202	`Sf\306=\203:`S\206-`Sf\305=\203:\307u\210\202		)\203L\310\311!\203\312u\210\302\202f\310\313!\205f`Sf\314=\205f`W\205f\304u\210\202)\207" [start moved-comment nil forward-comment -1 13 10 -2 looking-at "\\*/" 2 "[\n
]" 92] 2 (#$ . 47302)])
(put 'c-backward-comments 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'c-debug-sws-msg '(macro . #[(&rest args) "\300\207" [nil] 1]))
(defalias 'c-put-is-sws '(macro . #[(beg end) "\302\300D\301	DD\303\304\305!\205\306BBB\207" [beg end let (put-text-property beg end 'c-is-sws t) facep c-debug-is-sws-face ((c-debug-add-face beg end 'c-debug-is-sws-face))] 5]))
(defalias 'c-put-in-sws '(macro . #[(beg end) "\302\300D\301	DD\303\304\305!\205\306BBB\207" [beg end let (put-text-property beg end 'c-in-sws t) facep c-debug-is-sws-face ((c-debug-add-face beg end 'c-debug-in-sws-face))] 5]))
(defalias 'c-remove-is-sws '(macro . #[(beg end) "\302\300D\301	DD\303\304\305!\205\306BBB\207" [beg end let (remove-text-properties beg end '(c-is-sws nil)) facep c-debug-is-sws-face ((c-debug-remove-face beg end 'c-debug-is-sws-face))] 5]))
(defalias 'c-remove-in-sws '(macro . #[(beg end) "\302\300D\301	DD\303\304\305!\205\306BBB\207" [beg end let (remove-text-properties beg end '(c-in-sws nil)) facep c-debug-is-sws-face ((c-debug-remove-face beg end 'c-debug-in-sws-face))] 5]))
(defalias 'c-remove-is-and-in-sws '(macro . #[(beg end) "\302\300D\301	DD\303\304\305!\205\306BBB\207" [beg end let (remove-text-properties beg end '(c-is-sws nil c-in-sws nil)) facep c-debug-is-sws-face ((c-debug-remove-face beg end 'c-debug-is-sws-face) (c-debug-remove-face beg end 'c-debug-in-sws-face))] 5]))
(defalias 'c-invalidate-sws-region-after #[(beg end) "\212b\210\302\303w\210l\203m\204`T)	U\2032\304	\305\"\2032	eV\2032\304	S\305\"\2032	S	\306	\307#*\207" [end beg " 	\f" nil get-text-property c-in-sws remove-text-properties (c-is-sws nil c-in-sws nil)] 4])
(put 'c-invalidate-sws-region-after 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'c-forward-sws #[nil "`\306\211\211\211\211\211\211 !\307\306w\210\310\"!\205`Td^\311!
\312\313$\211\203:\314\312\306
$S!\202=`!\315 #\313\211$%\313&\316\216\203\311\317`\320\"\203\311\314`\320\306d$b\210\317`\312\"\204w\317`S\312\"\204t\321`\312\"b\210\322u\210`!\307\306w\323V\203\311m\204\311\317`\312\"\204\235``T'(\324('\325#\210*!T`T'(\326('\312\313$\210*!`\211!\211'(\326('\320\313$\210*\202L`\327\330!\203\325m\203\313\310\331!\203\341\332u\210\202\313`	U\204\354m?\2021\212)\205\310*!\205\333\306x\210n\205o\206\322u\210`Sf\334=?)\203\354\306\210`Sf\334=\203*\335y\323U\203*\306\210\202\335y\210\313m?\203\354` \307\306w\210`Td^\203O\204_\317	\320\"\203_\311 
\312\313$\211\203\321\203\321	T '(\324('\336#\210*\203{!	U\204\217!	T'(\326('\312\313$\210*\313!`\211!\211'(\326('\320\313$\210*\317
S\312\"\204\275
S
'(\324('\325#\210* 
'(\326('\312\313$\210*\202L\n\211\203\343\314\312\306
$S!\202\347 !\313\202L\f`=\205\fdW\203\n\f\211T'(\324('\325#*\202\fS\f'(\324('\337#*-.\207" [safe-start simple-ws-end next-rung-is-marked rung-is-marked last-put-in-sws-pos rung-end-pos nil " 	\n
\f" looking-at text-property-any c-is-sws t next-single-property-change buffer-modified-p #[nil "?\205\301\302!\207" [#1=#:modified restore-buffer-modified-p nil] 2] get-text-property c-in-sws previous-single-property-change -1 0 remove-text-properties (c-in-sws nil) put-text-property forward-comment 5 "\\\\[\n
]" 2 " 	" 92 1 (c-is-sws nil) (c-is-sws nil c-in-sws nil) next-rung-pos rung-pos c-syntactic-ws-start #1# buffer-undo-list inhibit-read-only inhibit-modification-hooks end beg c-opt-cpp-prefix c-opt-cpp-start] 9])
(defalias 'c-backward-sws #[nil "`\306\211\211\211\211\307\306x\210o?\205\226\212\310u\210\311&!)\205\226`\312\306x\210\313`
Td^\314\315$\211\203=\n\211b\210\202@	b\210\316 '\315\211()\315*\317\216\n\203\327o\204\327\320`S\321\"\203\327\322`\321\306e$b\210\320`\314\"\204v\323`\314\306\211$b\210`\324\306x`\312\306x^\325W\203\221\313`
\314\315$\211\204\227	b\210\202\327\320
S\314\"\204\257
S
+,\326,+\327#\210*\n
+,\330,+\314\315$\210*\n
S+,\330,+\321\315$\210*\n\211\202O`-o?\205B\306.\331\310!\211.\204`Sf\332=\203\371\310u\210\202\342`Sf\333=\203`S\206`Sf\332=\203\334u\210\202\342.)\203'\311\335!\203\332\336u\210\306\202B\311\337!\205B`Sf\340=\205B`-W\205B\310u\210\202\332)\210`/\203\251	U\204\251\341 \203\251`0	b\210\342 \210`V\203v\310u\210`Sf\340=\203v\342 \210\202_`W\203\203b\210\306\202\245	b\210\312\306x\210`Sf\340=\203\225\306u\210\343y\210`	W\203\240`0b\210\315)\202\273\212\312	w\210`\211)	U\204b\fb\210\315\203b`\324\306x\210\n\204\342\320	S\321\"\203\342\212\312\306x\210\313`\fTd^\314\315$)\203[\fT	+,\326,+\344#\210*\n\203\374	
U\2041
Td^1\3201S\314\"\2041S1+,\326,+\327#\210*	1+,\330,+\314\315$\210*\315)`\211\211
+,\330,+\321\315$\210*	\211\fT+,\330,+\314\315$\210*\202O\f`\202O`=\205\225eW\203\200S+,\326,+\327#*\202\225e\343V\205\225\211T+,\326,+\345#*-.\207" [cmt-skip-pos simple-ws-beg rung-is-marked last-put-in-sws-pos next-rung-pos rung-pos nil " 	\f" -1 looking-at " 	\n
\f" text-property-any c-is-sws t buffer-modified-p #[nil "?\205\301\302!\207" [#1=#:modified restore-buffer-modified-p nil] 2] get-text-property c-in-sws previous-single-property-change next-single-property-change " 	\f" 0 remove-text-properties (c-in-sws nil) put-text-property forward-comment 13 10 -2 "\\*/" 2 "[\n
]" 92 c-beginning-of-macro beginning-of-line 1 (c-is-sws nil) (c-is-sws nil c-in-sws nil) c-syntactic-ws-end #1# buffer-undo-list inhibit-read-only inhibit-modification-hooks end beg start moved-comment c-opt-cpp-prefix cpp-beg rung-end-pos] 7])
(defalias 'c-partial-ws-p #[(beg end) "\212Td^e\nS]b\210\206d\304w\210\305f\306=\203-`W\203-\305u\210l\204\307u\210)`=\206\\\nb\210	\206<d\304w\210\305f\306=\203X`W\203X\305u\210l\204=\307u\210)`	=*\207" [end end+1 beg limit " 	\n
\f" nil 92 -1] 2])
(defconst c-state-cache-too-far 5000)
(defvar c-state-cache nil)
(make-variable-buffer-local 'c-state-cache)
(defvar c-state-cache-good-pos 1)
(make-variable-buffer-local 'c-state-cache-good-pos)
(defconst c-state-nonlit-pos-interval 3000)
(defvar c-state-nonlit-pos-cache nil)
(make-variable-buffer-local 'c-state-nonlit-pos-cache)
(defvar c-state-nonlit-pos-cache-limit 1)
(make-variable-buffer-local 'c-state-nonlit-pos-cache-limit)
(defvar c-state-semi-nonlit-pos-cache nil)
(make-variable-buffer-local 'c-state-semi-nonlit-pos-cache)
(defvar c-state-semi-nonlit-pos-cache-limit 1)
(make-variable-buffer-local 'c-state-semi-nonlit-pos-cache-limit)
(defalias 'c-state-pp-to-literal #[(from to &optional not-in-delimiter) "\212\306	\"\307\211\310\f8\204\311\f8\203A\310\f8\203 \312\202+\313\f8\203*\314\202+\315\306`d\307\211\f\316&\210\f\317\f8`BE\202w
\204uo\204u\320u\210\321\322!\204u\321!\203u\321!\203d\315\202e\314`\323\324!\210\f\n`BE\202w\fC,\207" [from to co-st ty s not-in-delimiter parse-partial-sexp nil 3 4 string 7 c++ c syntax-table 8 -1 looking-at "\\s!" forward-comment 1 c-comment-start-regexp c-block-comment-start-regexp] 7])
(put 'c-state-pp-to-literal 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'c-state-safe-place #[(here) "\214~\210\212\306\211\211\211\211\211\211
\203*
@V\203*
A\211
\204

\203H
@V\203H
@
A\211
\2042
@\206Oe\f\204U\\X\205e\\\211\203M
\306\212\307\"\306\211 \310 8\204\221\311 8\203\303\310 8\203\234\312\202\250\313 8\203\247\314\202\250\315\307`d\306\211 \316&\210 \317 8`BE\202\204\375o\204\375\320u\210\321\322!\204\375\321!!\203\375\321\"!\203\347\315\202\350\314`\323\324!\210 `BE\202 C.AA@\211\203AXA\203M
b\210\325 \205%`
U?\205%`\211\2036\326 \210m\2044\306u\210`\n\203C	X	\203M
\211B\202U
\203U
BV\203a.	\207" [c-state-nonlit-pos-cache macro-end macro-beg lit high-pos npos nil parse-partial-sexp 3 4 string 7 c++ c syntax-table 8 -1 looking-at "\\s!" forward-comment 1 c-beginning-of-macro c-syntactic-end-of-macro pos c-state-nonlit-pos-cache-limit here c-state-nonlit-pos-interval not-in-delimiter to from co-st ty s c-comment-start-regexp c-block-comment-start-regexp] 8])
(defalias 'c-state-semi-safe-place #[(here) "\214~\210\212\306\211\211\211\211\211\211
\203*
@V\203*
A\211
\204

\203H
@V\203H
@
A\211
\2042
@\206Oe\f\204\\\211X\203
\306\212\307\"\306\211\3108\204\211\3118\203\273\3108\203\224\312\202\240\3138\203\237\314\202\240\315\307`d\306\211\316&\210\3178`BE\202\370\204\365o\204\365\320u\210\321\322!\204\365\321!\203\365\321 !\203\337\315\202\340\314`\323\324!\210`BE\202\370C.AA@\211\203
AXA\203
\211B\202UV\203#.	\207" [c-state-semi-nonlit-pos-cache macro-end macro-beg lit high-pos npos nil parse-partial-sexp 3 4 string 7 c++ c syntax-table 8 -1 looking-at "\\s!" forward-comment 1 pos c-state-semi-nonlit-pos-cache-limit here c-state-nonlit-pos-interval not-in-delimiter to from co-st ty s c-comment-start-regexp c-block-comment-start-regexp] 8])
(defalias 'c-state-literal-at #[(here) "\214~\210\212\306!\211\307\212\310\f\"\307\211\3118\204(\3128\203Z\3118\2033\313\202?\3148\203>\315\202?\316\310`d\307\211\317&\210\3208`BE\202\224\n\204\221o\204\221\321u\210\322\323!\204\221\322!\203\221\322!\203}\316\202~\315`\324\325!\210
`BE\202\224C.AA@+\207" [here pos not-in-delimiter to from co-st c-state-safe-place nil parse-partial-sexp 3 4 string 7 c++ c syntax-table 8 -1 looking-at "\\s!" forward-comment 1 ty s c-comment-start-regexp c-block-comment-start-regexp] 8])
(defalias 'c-state-lit-beg #[(pos) "\301!@\206\207" [pos c-state-literal-at] 2])
(put 'c-state-lit-beg 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'c-state-cache-non-literal-place #[(pos state) "\3038\204\f\3048\203\3058\202	\212\nb\210\306 \203!`\202\"\n*\207" [state pos res 3 4 8 c-beginning-of-macro] 2])
(put 'c-state-cache-non-literal-place 'byte-optimizer 'byte-compile-inline-expand)
(defvar c-state-point-min 1)
(make-variable-buffer-local 'c-state-point-min)
(defvar c-state-point-min-lit-type nil)
(make-variable-buffer-local 'c-state-point-min-lit-type)
(defvar c-state-point-min-lit-start nil)
(make-variable-buffer-local 'c-state-point-min-lit-start)
(defvar c-state-min-scan-pos 1)
(make-variable-buffer-local 'c-state-min-scan-pos)
(defalias 'c-state-get-min-scan-pos #[nil "\206\214\212~\210	b\210\n\303=\203\304 \210\202\305\306!\210`\211*\207" [c-state-min-scan-pos c-state-point-min-lit-start c-state-point-min-lit-type string forward-sexp forward-comment 1] 2])
(defalias 'c-state-mark-point-min-literal #[nil "e\306\214~\210\307	!\211\2036\212@b\210\310\n!\203\311\202)\310!\203(\312\202)\313)@A\211\f\202>\306\211	\211\f+\207" [lit p-min c-block-comment-start-regexp c-line-comment-starter c-state-point-min-lit-type c-state-point-min-lit-start nil c-state-literal-at looking-at c c++ string c-state-min-scan-pos] 3])
(defvar c-state-brace-pair-desert nil)
(make-variable-buffer-local 'c-state-brace-pair-desert)
(defalias 'c-state-cache-top-lparen '(macro . #[(&optional cache) "\206\302\303\304\305	DD\306	D\305	DF)\207" [cache cash c-state-cache if consp car caar] 5]))
(defalias 'c-state-cache-top-paren '(macro . #[(&optional cache) "\206\302\303\304\305	DD\306	D\305	DF)\207" [cache cash c-state-cache if consp car cdar] 5]))
(defalias 'c-state-cache-after-top-paren '(macro . #[(&optional cache) "\206\302\303\304\305	DD\306	D\307\305	D\310\305	DDEF)\207" [cache cash c-state-cache if consp car cdar and 1+] 8]))
(defalias 'c-get-cache-scan-pos #[(here) "\304\211\203\"\n@:\203\n@@\202\n@Y\203\"\nA\211\204\n@\211:\203<	AV\2037	@T\202R	A\202R	\203E	T\202R\305 X\203Q\305 \202R\304*\207" [c-state-cache elt c here nil c-state-get-min-scan-pos] 3])
(defvar c-state-old-cpp-beg-marker nil)
(make-variable-buffer-local 'c-state-old-cpp-beg-marker)
(defvar c-state-old-cpp-beg nil)
(make-variable-buffer-local 'c-state-old-cpp-beg)
(defvar c-state-old-cpp-end-marker nil)
(make-variable-buffer-local 'c-state-old-cpp-end-marker)
(defvar c-state-old-cpp-end nil)
(make-variable-buffer-local 'c-state-old-cpp-end)
(defalias 'c-get-fallback-scan-pos #[(here) "\212b\210\305o\2043	\306U\2043\307\211\310 \210*\f\203&\311\f!\203&\306\225b\210\307f\312=\203	S\202)`)\207" [here cnt end-of-defun-function beginning-of-defun-function defun-prompt-regexp 2 0 nil beginning-of-defun looking-at 123] 2])
(defalias 'c-state-balance-parens-backwards #[(here- here+ top) "\306\211\211\211\212\214e\f}\210
\3071+\310\311\211#\211\205'	B	\2020\202/\210\2020\210*\f\203]\3121X\205T\310\313\311#\211\205T\nA\211\204@\3060\202\\\210\202]\210,\207" [lonely-rens ren+1 pa pos top here+ nil (error) scan-lists 1 (error) -1 here-] 5])
(defalias 'c-parse-state-get-strategy #[(here good-pos) "\306!\307\211\211\211\206\310 \310 W\203'\311\307\211\312\202YX\203<\313
]\nZ\202YZ
ZW\203Q\314Z\202Y\315
\nZ\316>\203e\203|	V\203|\317!\fZ	W\203|\320\f\n-D\207" [here how-far start-point strategy BOD-pos cache-pos c-get-cache-scan-pos nil c-state-get-min-scan-pos IN-LIT 0 forward backward back-and-forward col-0-paren c-get-fallback-scan-pos BOD good-pos c-emacs-features open-paren-in-column-0-is-defun-start c-state-cache-too-far] 6])
(defalias 'c-renarrow-state-cache #[nil "eW\203\306 \210\307\n\307\202|
\203e\310 W\204 \306 \210\307	B\307	\211\nA@:\2037\nA@@\202;\nA@\211	\203Q	eY\203Q\nA\211\n\202)\n:\203{\nA	=\203f\307\n\202{\n\307\241\210	@:\203w	@@\202y	@T*e\211\207" [c-state-point-min c-state-cache c-state-min-scan-pos c-state-cache-good-pos c-state-brace-pair-desert c-state-point-min-lit-start c-state-mark-point-min-literal nil c-state-get-min-scan-pos pa ptr] 3])
(defalias 'c-append-lower-brace-pair-to-state-cache #[(from here &optional upper-lim) "\212\214\306	@:\203	@@\202	@b\210\307 \210`\310\f\311\"\312=\203(\f\202)\306\2045\205U\n@=\205U@\203P@V\205UAX?\205m\205q\n@=\205qAY\205qA\n\205|\nW\205|\n\211\203\221\203\221]\202\234\206\234\206\234e\313 T}\210*\3141\351\315
\316\211#\211\205\345\315\316\317#\211\205\345
V\204\246W\205\345
f\320=\203\246
b\205\345\307 \205\345`\fW\205\345\202\2460\202\355\210\202\356\210\203
W\203\202\242\203LW\203L
W\203L
f\320=\203L
TB	@:\203-	\240\202m	@\247\203D	@W\203D		AB\241\202m	B\211\202m\203d
W\203dV\203d
\202ee^B\211.\207" [new-cons c-state-cache cache-pos from macro-start-or-from bra nil c-beginning-of-macro get-text-property category c-cpp-delimiter buffer-size (error) scan-lists -1 1 123 ce upper-lim c-state-brace-pair-desert cache-lim desert-lim here] 5])
(defalias 'c-state-push-any-brace-pair #[(bra+1 macro-start-or-here) "\205/	V\204b\210\303 \204*S\304\305\211#B\n@:\203%\nA\202&\nB\211\207\306Sd\"\207" [bra+1 macro-start-or-here c-state-cache c-beginning-of-macro scan-lists 1 c-append-lower-brace-pair-to-state-cache] 5])
(put 'c-state-push-any-brace-pair 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'c-append-to-state-cache #[(from here) "\212b\210\306 \210`)\212b\210\307 \203`\202)\310	\310\211\211\211\211\212\214e}\210\3111c\312\313\314#\211
B\312\313\211#\206Q`Sf\315=\203[
\240\210\2027\210\203\305V\203\305\f\211\205\255\fV\204\212\fb\210\307 \204\250\fS\312\f\313\211#B@:\203\237A\202\241B\211\202\255\316\fSd\"*\210SB\310\211\310\2023\3171\326\312\313\211#\2110\202\330\210\310\2043\f\211\205\fV\204\364\fb\210\307 \204\fS\312\f\313\211#B@:\203	A\202B\211\202\316\fSd\"*\210
@\211\203LV\203.\202?b\210\307 \2058`\211\206?V\203L
A\211\202\203\\\n\203\\\n^\202b\206b	.\207" [here from mstart bra+1s bra+1 paren+1s beginning-of-line c-beginning-of-macro nil (error) scan-lists 1 -1 123 c-append-lower-brace-pair-to-state-cache (error) paren+1 ren+1 pa+1 macro-start-or-here here-bol c-state-cache] 10])
(defalias 'c-remove-stale-state-cache #[(start-point here pps-point) "\212\214\306d}\210\212b\210\307 \205`)\nW\205#\212\nb\210\307 \205\"`)\211\2051\212b\210\310 \210`)\311\211\311\211\311\211\311\211\203\\V\203`W\203`\202d^\203\221@:\203y@@\202|@Y\203\221@\242A\211\204k\203\266@:\203\266@AV\203\266\211@@\240\210@\312\f\203\305	=\204\305\fT\202\306\n\211b\210\203q@\247\204\335A\203q`W\203q
\204\355\313\202\372
@=\203\372
@S\314``W\203\202	\311
%`U\203

@=\203\313`@:\203D`@A=\203DA\242A\243\211\202\315@\247\203Y@A\211\202\315A@\247\203\313A@AA\211\204\320`W\203\201\314`\311\211
%\203\244f\315=\203\244\242:\203\232ABB
F.
\207" [here in-macro-start start-point start-point-actual-macro-start start-point-actual-macro-end pps-state 1 c-beginning-of-macro c-end-of-macro nil t -1 parse-partial-sexp 123 pos upper-lim scan-back-pos cons-separated pair-beg pps-point-state target-depth c-state-old-cpp-beg c-state-old-cpp-end c-state-cache pps-point] 7])
(defalias 'c-remove-stale-state-cache-backwards #[(here) "\306!	\307\211\211\211\211\211\211\211\211\212b\210\310 \210`)\nZe]\203b@:\203E@@\202H@\211Y\203b@:A\2022@:\203\210@AV\203\210@@\240\210T\311E\202u\312!\211@\206\223A\206\234\212b\210\313 \203\277\203\264`U\204\277`\314 \210`\202\306)\214d}\210\315
#)W\203\355\205\350\311E\202u\214\fd}\210\3161\317\320\321#\211\205
\202\3720\202\210\202\210)\214d}\210\3221*\317\320\211#0\202,\210\307\211)\203BT\205=\307E\202u\212\fb\210\320y\210`)\312!@\206W)Y\203j\307\211E\202u\205s\307E.
\207" [here c-state-cache-good-pos c-state-cache-too-far too-far-back here-bol here+ c-get-cache-scan-pos nil beginning-of-line t c-state-literal-at c-beginning-of-macro c-end-of-macro c-state-balance-parens-backwards (error) scan-lists -1 1 (error) here- here-lit-end here-lit-start lit good-pos dropped-cons ren pa pos cache-pos c-state-cache c-state-old-cpp-beg] 15])
(defalias 'c-state-cache-init #[nil "\306\307\306\307\306\307\306	\307\n\306\211\f\307
\306\211\310 \207" [c-state-cache c-state-cache-good-pos c-state-nonlit-pos-cache c-state-nonlit-pos-cache-limit c-state-semi-nonlit-pos-cache c-state-semi-nonlit-pos-cache-limit nil 1 c-state-mark-point-min-literal c-state-brace-pair-desert c-state-point-min c-state-point-min-lit-type c-state-point-min-lit-start c-state-min-scan-pos c-state-old-cpp-beg c-state-old-cpp-end] 2])
(defalias 'c-invalidate-state-cache-1 #[(here) "	X\203	S\nX\203S\203\306 W\203&\307\211\307\202\237\212b\210\310 \210`)\307\211\211\n\f
\f\203p\f@:\203J\f@A\202L\f@\211\nY\203p\f@:\f@:\203e\f@@\202g\f@\f\fA\211\204>\203\204\fX\203\204\311\f
#\210\f@:\203\220\f@A\202\230\f@\203\233\f@T\206\235\306 ,@\205\276@W\203\262\307\211\207AW\205\276\241\207" [here c-state-nonlit-pos-cache-limit c-state-semi-nonlit-pos-cache-limit c-state-cache-good-pos c-state-cache c-state-min-scan-pos c-state-get-min-scan-pos nil beginning-of-line c-append-lower-brace-pair-to-state-cache pa dropped-cons too-high-pa here-bol c-state-brace-pair-desert] 5])
(defalias 'c-parse-state-1 #[nil "`\306\307!\310\211\310\211\310\211\310\211\310eU\204'\311 \210\312\"\211@A@\n\313=\203B\310
\n\314>\203\312\315
	#\211@A@AA@AAA@\203}\204w\n\316=\203}\317\"\210\320\"\203\304\fZW\203\304	 !\321 8\204\245\322 8\203\254\323 8\202\256!\212b\210\324 \203\276`\202\300,\202\305\f\202\n\325=\203\326!\211@A@AA@\203\360\317\"\210\203\374\320\f\"\202\375\f\202\310\211.\207" [here here-bopl strategy cache-pos good-pos start-point line-beginning-position 0 nil c-renarrow-state-cache c-parse-state-get-strategy BOD (forward back-and-forward BOD) c-remove-stale-state-cache forward c-append-lower-brace-pair-to-state-cache c-append-to-state-cache 3 4 8 c-beginning-of-macro backward c-remove-stale-state-cache-backwards bopl-state res cons-separated scan-backward-pos scan-forward-p c-state-point-min c-state-cache-good-pos c-state-cache c-state-cache-too-far state pos] 5])
(defalias 'c-invalidate-state-cache #[(here) "\306\216\307\310\311\312#\210\307\313\311\312#\210\203\203	W\203\203\314\216\315 \316\211\316\312\211\312\211\312\317\216\214~\210\320\211T\321#\210)dW\203W\320\211T\322#\210))\323\216\315 \316\211\316\312\211\312\211\312\324\216\307\325\311#\210\326	!.\202\253\327\216\315 \316\211\316\312\211\312\211\312\330\216\307\325\311#\210\326	!.)\207" [c-state-old-cpp-beg here modified buffer-undo-list inhibit-read-only inhibit-point-motion-hooks #[nil "\302\300\303#\210\302\301\303	#\207" [c-<-as-paren-syntax c->-as-paren-syntax put syntax-table] 4] put c-<-as-paren-syntax syntax-table nil c->-as-paren-syntax #[nil "\306 \307\211\307\310\211\310\211
\310\311\216\214~\210\312\211T\313\314$\210)dW\205=\312\211T\313\314$).\207" [modified buffer-undo-list inhibit-read-only inhibit-point-motion-hooks before-change-functions after-change-functions buffer-modified-p t nil #[nil "?\205
\301 \205
\302\303!\207" [modified buffer-modified-p set-buffer-modified-p nil] 2] put-text-property category c-cpp-delimiter deactivate-mark buffer-file-name buffer-file-truename c-state-old-cpp-beg -pos- c-state-old-cpp-end] 6] buffer-modified-p t #[nil "?\205
\301 \205
\302\303!\207" [modified buffer-modified-p set-buffer-modified-p nil] 2] remove-text-properties (category . #1=(nil)) (category . #1#) #[nil "\306 \307\211\307\310\211\310\211
\310\311\216\312\313\314\310#.\n\207" [modified buffer-undo-list inhibit-read-only inhibit-point-motion-hooks before-change-functions after-change-functions buffer-modified-p t nil #[nil "?\205
\301 \205
\302\303!\207" [modified buffer-modified-p set-buffer-modified-p nil] 2] put c-cpp-delimiter syntax-table deactivate-mark buffer-file-name buffer-file-truename] 5] #[nil "?\205
\301 \205
\302\303!\207" [modified buffer-modified-p set-buffer-modified-p nil] 2] c-cpp-delimiter c-invalidate-state-cache-1 #[nil "\306 \307\211\307\310\211\310\211
\310\311\216\312\313\314\310#.\n\207" [modified buffer-undo-list inhibit-read-only inhibit-point-motion-hooks before-change-functions after-change-functions buffer-modified-p t nil #[nil "?\205
\301 \205
\302\303!\207" [modified buffer-modified-p set-buffer-modified-p nil] 2] put c-cpp-delimiter syntax-table deactivate-mark buffer-file-name buffer-file-truename] 5] #[nil "?\205
\301 \205
\302\303!\207" [modified buffer-modified-p set-buffer-modified-p nil] 2] before-change-functions after-change-functions deactivate-mark buffer-file-name buffer-file-truename pos c-state-old-cpp-end] 5])
(defalias 'c-state-maybe-marker '(macro . #[(place marker) "\302\303	\304	\305BBE\306	EF\207" [place marker and or setq ((make-marker)) set-marker] 7]))
(defalias 'c-parse-state #[nil "\306\211\212\307 \203`\310 \211	V\204\306\211)\311\216\312\313\314\306#\210\312\315\314\306#\210	\203\232	V\203\232\316\216\317 \320\211\320\306\211\306\211\306 \321\216\214~\210	!\322!\211T\323#\210)dW\203o!\322!\211T\324#\210))\325\216\317 \320\211\320\306\211\306\211\306 \326\216\312\327\314#\210\330 .\202\301\331\216\317 \320\211\320\306\211\306\211\306 \332\216\312\327\314#\210\330 .)	\205\330\"\204\323\333 \211\"\205\330\"	\306\223#\205\360$\204\353\333 \211$\205\360$\306\223%*\207" [here-cpp-end here-cpp-beg modified buffer-undo-list inhibit-read-only inhibit-point-motion-hooks nil c-beginning-of-macro c-syntactic-end-of-macro #[nil "\302\300\303#\210\302\301\303	#\207" [c-<-as-paren-syntax c->-as-paren-syntax put syntax-table] 4] put c-<-as-paren-syntax syntax-table c->-as-paren-syntax #[nil "\306 \307\211\307\310\211\310\211
\310\311\216\214~\210\312\211T\313\314$\210)dW\205=\312\211T\313\314$).\207" [modified buffer-undo-list inhibit-read-only inhibit-point-motion-hooks before-change-functions after-change-functions buffer-modified-p t nil #[nil "?\205
\301 \205
\302\303!\207" [modified buffer-modified-p set-buffer-modified-p nil] 2] put-text-property category c-cpp-delimiter deactivate-mark buffer-file-name buffer-file-truename here-cpp-beg -pos- here-cpp-end] 6] buffer-modified-p t #[nil "?\205
\301 \205
\302\303!\207" [modified buffer-modified-p set-buffer-modified-p nil] 2] remove-text-properties (category . #1=(nil)) (category . #1#) #[nil "\306 \307\211\307\310\211\310\211
\310\311\216\312\313\314\310#.\n\207" [modified buffer-undo-list inhibit-read-only inhibit-point-motion-hooks before-change-functions after-change-functions buffer-modified-p t nil #[nil "?\205
\301 \205
\302\303!\207" [modified buffer-modified-p set-buffer-modified-p nil] 2] put c-cpp-delimiter syntax-table deactivate-mark buffer-file-name buffer-file-truename] 5] #[nil "?\205
\301 \205
\302\303!\207" [modified buffer-modified-p set-buffer-modified-p nil] 2] c-cpp-delimiter c-parse-state-1 #[nil "\306 \307\211\307\310\211\310\211
\310\311\216\312\313\314\310#.\n\207" [modified buffer-undo-list inhibit-read-only inhibit-point-motion-hooks before-change-functions after-change-functions buffer-modified-p t nil #[nil "?\205
\301 \205
\302\303!\207" [modified buffer-modified-p set-buffer-modified-p nil] 2] put c-cpp-delimiter syntax-table deactivate-mark buffer-file-name buffer-file-truename] 5] #[nil "?\205
\301 \205
\302\303!\207" [modified buffer-modified-p set-buffer-modified-p nil] 2] make-marker before-change-functions after-change-functions deactivate-mark buffer-file-name buffer-file-truename pos c-state-old-cpp-beg-marker c-state-old-cpp-beg c-state-old-cpp-end-marker c-state-old-cpp-end] 5])
(defvar c-debug-parse-state nil)
(byte-code "\300\301!\204\301\302KM\210\300\207" [fboundp c-real-parse-state c-parse-state] 2)
(defvar c-parse-state-point nil)
(defvar c-parse-state-state nil)
(make-variable-buffer-local 'c-parse-state-state)
(defalias 'c-record-parse-state-state #[nil "`\302\303	\236A!\203\303	\236A\304\211\223\210\305	\236A\304\211\223\210\306\307\310\"\211\207" [c-parse-state-point c-parse-state-state markerp c-state-old-cpp-beg nil c-state-old-cpp-end mapcar #[(arg) "J	:\203\302	!\202\303	!\203\304	!\202	)B\207" [arg val copy-tree markerp copy-marker] 3] (c-state-cache c-state-cache-good-pos c-state-nonlit-pos-cache c-state-nonlit-pos-cache-limit c-state-semi-nonlit-pos-cache c-state-semi-nonlit-pos-cache-limit c-state-brace-pair-desert c-state-point-min c-state-point-min-lit-type c-state-point-min-lit-start c-state-min-scan-pos c-state-old-cpp-beg c-state-old-cpp-end c-parse-state-point)] 3])
(defalias 'c-replay-parse-state-state #[nil "\301\302\303\304\305\306#\307Q\"\207" [c-parse-state-state message "%s" "(setq " mapconcat #[(arg) "\301\302@A:\204\303\202\304\305A!\203 \301\306\307A!\"\202\"A$\207" [arg format "%s %s%s" "" "'" markerp "(copy-marker %s)" marker-position] 8] "  " ")"] 7])
(defalias 'c-debug-parse-state-double-cons #[(state) "\303\211\n\203\n@\nA	:\203\n@:\203\304\202*\207" [conses-not-ok state-car state nil t] 2])
(defalias 'c-debug-parse-state #[nil "`\306 \307\307\310\307\310\307\310\307\211\310\307\211\306 .	\232\204>\311\312\n	$\210\311\313!\210\314 \210\315	!\203Q\311\316\n	#\210\311\313!\210\314 \210\317 \210+\207" [res2 res1 here c-state-old-cpp-end c-state-old-cpp-beg c-state-min-scan-pos c-real-parse-state nil 1 message "c-parse-state inconsistency at %s: using cache: %s, from scratch: %s" "Old state:" c-replay-parse-state-state c-debug-parse-state-double-cons "c-parse-state INVALIDITY at %s: %s" c-record-parse-state-state c-state-point-min-lit-start c-state-point-min-lit-type c-state-point-min c-state-brace-pair-desert c-state-nonlit-pos-cache-limit c-state-nonlit-pos-cache c-state-cache-good-pos c-state-cache] 11])
(defalias 'c-toggle-parse-state-debug #[(&optional arg) "\303	\"\304	\203\301\202\305KM\210\306\302!\203\307\310\311	\203$\312\202%\313\"\207" [arg c-debug-parse-state zmacs-region-stays c-calculate-state c-parse-state c-real-parse-state boundp t message "c-debug-parse-state %sabled" "en" "dis"] 3 nil "P"])
(byte-code "\203\301\302!\210\301\207" [c-debug-parse-state c-toggle-parse-state-debug 1] 2)
(defalias 'c-whack-state-before #[(bufpos paren-state) "\305C\211\305\2032@A\n:\203\n@\202\n\fW\203'\305\211\202	\nC\241\210	A\202A+\207" [newstate ptr car paren-state bufpos nil] 3])
(defalias 'c-whack-state-after #[(bufpos paren-state) "\3032E\205D@\211:\2032\n	@X\204=\n	AW\203*\304\303	@AB\"\210\202=\304\303\"\210\202=\n	X\204=\304\303\"\210A)\2020\207" [paren-state car bufpos done throw] 5])
(defalias 'c-most-enclosing-brace #[(paren-state &optional bufpos) "\303	\204\304\n\203(\n@\nA:\204	Y\203\"\303\202\303\211\204\f)\207" [enclosingp bufpos paren-state nil 134217727] 3])
(defalias 'c-least-enclosing-brace #[(paren-state) "\303\211\n\203\n@\nA\250\203\202	*\207" [elem pos paren-state nil] 2])
(defalias 'c-safe-position #[(bufpos paren-state) "\205Q\303\3042P\n\205O\n@\211:\2039	AW\203&\305\304	A\"\210\202G	@W\203G\305\304	@T^\"\210\202G	W\203G\305\304	T^\"\210\nA\211\204\3030)\207" [bufpos elem paren-state nil done throw] 5])
(defalias 'c-beginning-of-syntax #[nil "\306\3072H	\203F	@\211:\2034\nA`X\203$\310\307\nA\"\210\202?\n@`X\203?\310\307\n@\"\210\202?\n`X\203?\310\307\n\"\210	A\211\204\fe0\211`\311ZV\203Vb\202v\306\211\312 \210*
\203n\313
!\203n\314\225b\210`W\205vb+\207" [c-state-cache paren-state elem pos end-of-defun-function beginning-of-defun-function nil done throw 4000 beginning-of-defun looking-at 0 defun-prompt-regexp] 4])
#@454 Return non-nil if the point is on or directly after an identifier.
Keywords are recognized and not considered identifiers.  If an
identifier is detected, the returned value is its starting position.
If an identifier ends at the point and another begins at it (can only
happen in Pike) then the point for the preceding one is returned.

Note that this function might do hidden buffer changes.  See the
comment at the start of cc-engine.el for more info.
(defalias 'c-on-identifier #[nil "\212\306\307!\210\310!\203\310	!\204`\206\214\n\311=\203E`\312\313x\210\314\313x\315W\2043b\210\313f\316=\205A\310\f!\205A\315\225Y\205A`)\206\214
\205\214\317\315!\315U\205\214\310
!\203o\203k\317\320!\315U\203o\310!\203o`\202\214\212\205\207\310!\205\207\321\320!\315U\205\207\310
!)\205\214`)\207" [c-symbol-start c-keywords-regexp c-buffer-is-cc-mode pos c-symbol-key c-overloadable-operators-regexp skip-syntax-backward "w_" looking-at pike-mode "-!%&*+/<=>^|~[]()" nil "`" 0 96 c-backward-token-2 1 c-forward-token-2 c-opt-op-identifier-prefix] 2 (#$ . 78896)])
(defalias 'c-simple-skip-symbol-backward #[nil "\303\304!\305W\2066\306=\2056`\307\310x\305W\2031\311\310x\305W\2031\312\n!\2031\305\225	Y\2031\313\2025	b\210\310)\207" [c-buffer-is-cc-mode pos c-symbol-key skip-syntax-backward "w_" 0 pike-mode "-!%&*+/<=>^|~[]()" nil "`" looking-at t] 2])
(put 'c-simple-skip-symbol-backward 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'c-beginning-of-current-token #[(&optional back-limit) "`\304\305!\203\306\307	\"\210\2023\306\310	\"\311W\2033\304\n!\203$\311\225\206&`T\211X\205/b)\204`W)\207" [start back-limit c-nonsymbol-token-regexp pos looking-at "\\w\\|\\s_" skip-syntax-backward "w_" ".()" 0] 4])
(defalias 'c-end-of-current-token #[(&optional back-limit) "`\303\304S\"\305W\203\306\304!\210\2022\303\307	\"\305W\2032\310\n!\203)\305\225b\210\202,\311u\210`W\204`V)\207" [start back-limit c-nonsymbol-token-regexp skip-syntax-backward "w_" 0 skip-syntax-forward ".()" looking-at nil] 3])
(defconst c-jump-syntax-balanced (byte-code "\301>\203\302\207\303\207" [c-emacs-features gen-string-delim "\\w\\|\\s_\\|\\s(\\|\\s)\\|\\s\"\\|\\s|" "\\w\\|\\s_\\|\\s(\\|\\s)\\|\\s\""] 2))
(defconst c-jump-syntax-unbalanced (byte-code "\301>\203\302\207\303\207" [c-emacs-features gen-string-delim "\\w\\|\\s_\\|\\s\"\\|\\s|" "\\w\\|\\s_\\|\\s\""] 2))
#@1292 Move forward by tokens.
A token is defined as all symbols and identifiers which aren't
syntactic whitespace (note that multicharacter tokens like "==" are
treated properly).  Point is always either left at the beginning of a
token or not moved at all.  COUNT specifies the number of tokens to
move; a negative COUNT moves in the opposite direction.  A COUNT of 0
moves to the next token beginning only if not already at one.  If
BALANCED is true, move over balanced parens, otherwise move into them.
Also, if BALANCED is true, never move out of an enclosing paren.

LIMIT sets the limit for the movement and defaults to the point limit.
The case when LIMIT is set in the middle of a token, comment or macro
is handled correctly, i.e. the point won't be left there.

Return the number of tokens left to move (positive or negative).  If
BALANCED is true, a move over a balanced paren counts as one.  Note
that if COUNT is 0 and no appropriate token beginning is found, 1 will
be returned.  Thus, a return value of 0 guarantees that point is at
the requested position and a return value less (without signs) than
COUNT guarantees that point is at the beginning of some token.

Note that this function might do hidden buffer changes.  See the
comment at the start of cc-engine.el for more info.
(defalias 'c-forward-token-2 #[(&optional count balanced limit) "\204\306\307W\203\310[	\n#[\207	\203\202\f``\307U\203-\311 \210\214\n\2036e\n}\210`\312 \210`U\204DS\307]m\203W\307U\203P\306b\210\202\270\3131\251\307V\205\245`\314!\203t\315`\306\"b\210\202\230\314!\203\202\307\225b\210\202\230\n\203\225\214~\210\314!)\203\225\316\202\245\316u\210\312 \210S\211\202\\0\202\255\210b\210m\203\270
b\210T)+\207" [count balanced limit c-jump-syntax-balanced c-jump-syntax-unbalanced prev 1 0 c-backward-token-2 c-end-of-current-token c-forward-sws (error) looking-at scan-sexps nil last jump-syntax c-nonsymbol-token-regexp] 5 (#$ . 81332)])
#@63 Move backward by tokens.
See `c-forward-token-2' for details.
(defalias 'c-backward-token-2 #[(&optional count balanced limit) "\204\306\307W\203\310[	\n#[\207\n\204e	\203\"\202#\f`\307U\203v`\311 \210`V\203A`\nW\203v\306\202v\312!\203v\313f\314U\203t\203t\212`\315 \210\312\316!\210\307\225U\205po\206p\317u\210`Sf\320=?)\203v\306\3211\255\307V\205\251\322 \210\317u\210\312!\203\227\323`T\317\"b\210\202\232\311 \210`\nY\205\251`S\211\202{0\202\260\210
b\210`\nW\203\272
b\210*\207" [count balanced limit c-jump-syntax-balanced c-jump-syntax-unbalanced last 1 0 c-forward-token-2 c-beginning-of-current-token looking-at nil 35 beginning-of-line "[ 	]*" -1 92 (error) c-backward-sws scan-sexps jump-syntax c-syntactic-ws-start c-opt-cpp-prefix] 5 (#$ . 83330)])
#@271 Like `c-forward-token-2' but doesn't treat multicharacter operator
tokens like "==" as single tokens, i.e. all sequences of symbol
characters are jumped over character by character.  This function is
for compatibility only; it's only a wrapper over `c-forward-token-2'.
(defalias 'c-forward-token-1 #[(&optional count balanced limit) "\304\305	\n#)\207" [c-nonsymbol-token-regexp count balanced limit "\\s." c-forward-token-2] 4 (#$ . 84149)])
#@273 Like `c-backward-token-2' but doesn't treat multicharacter operator
tokens like "==" as single tokens, i.e. all sequences of symbol
characters are jumped over character by character.  This function is
for compatibility only; it's only a wrapper over `c-backward-token-2'.
(defalias 'c-backward-token-1 #[(&optional count balanced limit) "\304\305	\n#)\207" [c-nonsymbol-token-regexp count balanced limit "\\s." c-backward-token-2] 4 (#$ . 84602)])
#@2020 Like `re-search-forward', but only report matches that are found
in syntactically significant text.  I.e. matches in comments, macros
or string literals are ignored.  The start point is assumed to be
outside any comment, macro or string literal, or else the content of
that region is taken as syntactically significant text.

If PAREN-LEVEL is non-nil, an additional restriction is added to
ignore matches in nested paren sexps.  The search will also not go
outside the current list sexp, which has the effect that if the point
should be moved to BOUND when no match is found (i.e. NOERROR is
neither nil nor t), then it will be at the closing paren if the end of
the current list sexp is encountered first.

If NOT-INSIDE-TOKEN is non-nil, matches in the middle of tokens are
ignored.  Things like multicharacter operators and special symbols
(e.g. "`()" in Pike) are handled but currently not floating point
constants.

If LOOKBEHIND-SUBMATCH is non-nil, it's taken as a number of a
subexpression in REGEXP.  The end of that submatch is used as the
position to check for syntactic significance.  If LOOKBEHIND-SUBMATCH
isn't used or if that subexpression didn't match then the start
position of the whole match is used instead.  The "look behind"
subexpression is never tested before the starting position, so it
might be a good idea to include \=\= as a match alternative in it.

Optimization note: Matches might be missed if the "look behind"
subexpression can match the end of nonwhite syntactic whitespace,
i.e. the end of comments or cpp directives.  This since the function
skips over such things before resuming the search.  It's on the other
hand not safe to assume that the "look behind" subexpression never
matches syntactic whitespace.

Bug: Unbalanced parens inside cpp directives are currently not handled
correctly (i.e. they don't get ignored as they should) when
PAREN-LEVEL is set.

Note that this function might do hidden buffer changes.  See the
comment at the start of cc-engine.el for more info.
(defalias 'c-syntactic-re-search-forward #[(regexp &optional bound noerror paren-level not-inside-token lookbehind-submatch) "\204d	\203\f\306`\307\211\211`\307\211e\307\"#$%&\3101\357`$\311'(#\205\353\312\"\313\224	\307#%#`\")\205W	\203T#@\313Y\205W)\225\211\203i\312\"
	\307#%\202o\"#\f\314\234\203~\311\315(#\202\302\f\316\234\203\215\317\320(#\202\302\f\321\234\204\307
\206\230`Sf\322=\203\307\323
S\324\"\204\307
f\325>\203\307
f\322U\203\276\311\315(#\202\302\317\320(#\202\302	\203\f@\211%\313U\204%\313V\203\372)\203\350\"b\210\202\305\312\"\313\307#%#`\211\"\202\302(\203`S\307\202\353\326\327'C\"\202\302\f\330\234\211%\203`)\204#%\250\204*\"b\210\202\305\331\332%\"\333*+\317+(#\203S\312\"`\307\211#%#`\"#\330\234\202W\307\211*\2044**\202\302\212\334 ,\335\216\336&!+\203\212\337 \210`X\204\305(\203\201\307\202\353\326\327'C\"\202\302-\203\277
W\204\255
\212
b\210\334 ,\340\216\341!\210*`\211)W\203\277)\203\270\"b\202\302^b\202\302\333\307\205\353$`U\203'`U\203\341(?\205\353\326\327'C\"\202\345\307u\210\333\205\353\202'0\202\376.&b\210\326.@.A\")\210\n\203\f\313\225b\210\313\225\202(\333=\203&b\210\202b\210\307.	\207" [bound paren-level found last-token-end-pos check-state check-pos -1 nil (error) re-search-forward parse-partial-sexp 0 7 "[\n
]" 4 search-forward "*/" 5 47 get-text-property syntax-table (47 42) signal search-failed 3 make-string 1 t match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] c-beginning-of-macro c-end-of-macro #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] c-end-of-current-token state-pos state search-pos tmp start regexp noerror lookbehind-submatch continue ender save-match-data-internal not-inside-token err] 9 (#$ . 85060)])
(defalias 'c-ssb-lit-begin #[nil "\212`\304\211\203@`V\203A\211\204\242\211\204/\305`\306 \"\206)\307e]\211C\310	\n\307#`\nW\203D`\211B\202/\311\234\203S\311\234T\211B\312\234\204_\313\234\205b\314\234,\207" [state safe-pos pos safe-pos-list nil c-safe-position c-parse-state 0 parse-partial-sexp 1 3 4 8] 5])
(put 'c-ssb-lit-begin 'byte-optimizer 'byte-compile-inline-expand)
#@766 Like `skip-chars-backward' but only look at syntactically relevant chars,
i.e. don't stop at positions inside syntactic whitespace or string
literals.  Preprocessor directives are also ignored, with the exception
of the one that the point starts within, if any.  If LIMIT is given,
it's assumed to be at a syntactically relevant position.

If PAREN-LEVEL is non-nil, the function won't stop in nested paren
sexps, and the search will also not go outside the current paren sexp.
However, if LIMIT or the buffer limit is reached inside a nested paren
then the point will be left at the limit.

Non-nil is returned if the point moved, nil otherwise.

Note that this function might do hidden buffer changes.  See the
comment at the start of cc-engine.el for more info.
(defalias 'c-syntactic-skip-backward #[(skip-chars &optional limit paren-level) "\306!	\306\n!\f
\307!\203\"\310!\202$\307!\2032\2024\307!\203D\310!\202F\307!\203T\202V`\311\211\211\211` !\"#`$%&x\312W\203\212`\311\211'($!\203\233!@`V\203\233!A\211!\204\212!\242\211(\204\265\313`\314 \"\206\255\312e]\211(C!\315($\312#'`$W\203\321`\211(!B!\202\265'\316\234\203\345'\316\234T\211(!B!'\317\234\204\363'\320\234\205\367'\321\234,\211\203b\210\202q`$W)\203\277`\311\211)\"$*\203\222\212\315$\322#\"`)\"@\312U)\204\222\"@\312W\203\207\212\315)\311\211\"%\211\"@\312W)\203\207\3231z\324$\322\"@[#b\210`&\203u&Y\203u&b\210\311\202v\3250\202\273\210&\206\201eb\210\311\202\273\"\316\234Tb\210\311\202\273\326&!\205\273` \206\256\212#b\210\326&!\210`)\211 W\203\266\325\202\273$b\210\311+\204n`\327 \210`V\204n`#U.?\307!\203\334\311\211\223\210\307!\203\351\311\211\223\210.\f\207" [c-state-cache c-state-cache-good-pos c-state-brace-pair-desert c-state-point-min c-state-point-min-lit-type c-state-point-min-lit-start copy-tree markerp copy-marker nil 0 c-safe-position c-parse-state parse-partial-sexp 1 3 4 8 -1 (error) scan-lists t c-beginning-of-macro c-backward-sws c-state-min-scan-pos c-state-old-cpp-beg-marker c-state-old-cpp-beg c-state-old-cpp-end-marker c-state-old-cpp-end c-parse-state-state paren-level-pos lit-beg start-macro-beg safe-pos-list state-2 start pos skip-chars limit state safe-pos pps-end-pos paren-level] 7 (#$ . 89412)])
#@605 Return the type of literal point is in, if any.
The return value is `c' if in a C-style comment, `c++' if in a C++
style comment, `string' if in a string literal, `pound' if DETECT-CPP
is non-nil and in a preprocessor line, or nil if somewhere else.
Optional LIM is used as the backward limit of the search.  If omitted,
or nil, `c-beginning-of-defun' is used.

The last point calculated is cached if the cache is enabled, i.e. if
`c-in-literal-cache' is bound to a two element vector.

Note that this function might do hidden buffer changes.  See the
comment at the start of cc-engine.el for more info.
(defalias 'c-in-literal #[(&optional lim detect-cpp) "\214~\210\306`!\211`\307\212\310\n\"\307\211\3118\204&\3128\203V\3118\2031\313\202=\3148\203<\315\202=\316\310`d\307\211\317&\210
\3208`BE\202\216	\204\213o\204\213\321u\210\322\323!\204\213\322!\203\213\322!\203y\316\202z\315`\324\325!\210
\f`BE\202\216C.\211A@\206\245\205\245\212\326 )\205\245\327+\207" [safe-place not-in-delimiter to from co-st ty c-state-semi-safe-place nil parse-partial-sexp 3 4 string 7 c++ c syntax-table 8 -1 looking-at "\\s!" forward-comment 1 c-beginning-of-macro pound s c-comment-start-regexp c-block-comment-start-regexp lit detect-cpp] 8 (#$ . 91806)])
#@770 Return a cons of the beginning and end positions of the comment or
string surrounding point (including both delimiters), or nil if point
isn't in one.  If LIM is non-nil, it's used as the "safe" position
to start parsing from.  If NEAR is non-nil, then the limits of any
literal next to point is returned.  "Next to" means there's only
spaces and tabs between point and the literal.  The search for such a
literal is done first in forward direction.  If NOT-IN-DELIMITER is
non-nil, the case when point is inside a starting delimiter won't be
recognized.  This only has effect for comments which have starting
delimiters with more than one character.

Note that this function might do hidden buffer changes.  See the
comment at the start of cc-engine.el for more info.
(defalias 'c-literal-limits #[(&optional lim near not-in-delimiter) "\212`	\206\n\306!\214~\210	\n\212\307\f\"\310\211\"#\311#8\204.\312#8\203`\311#8\2039\313\202E\314#8\203D\315\202E\316\"\307`d\310\211#\317&\210#\"\320#8`BE\202\232\n\204\227o\204\227\321u\210\322\323!\204\227\322$!\203\227\322%!\203\203\316\202\204\315\"`\324\325!\210#\"
`BE\202\232#C.\211&@'&AA@\211(\206E)\205Eb\210\326\310w\210\322*!\203\334`\3271\320\330`\325\"b\210`0\202\324\210\202\327\206\330dB\202E\322$!\203\354`\331 \210`B\202E\326\310x\210`\310+,\212\332-!\333W)\203\3341\330`\321\"b\210`0\202\210\310+\202:\3351#\336u\210\3370\202'\210\202:\203:\322\340!\203:,b\210\341 \210`++\205D+,B*.\207" [pos lim not-in-delimiter to from co-st c-state-semi-safe-place parse-partial-sexp nil 3 4 string 7 c++ c syntax-table 8 -1 looking-at "\\s!" forward-comment 1 " 	" (error) scan-sexps c-forward-single-comment skip-syntax-backward 0 (error) (error) -2 t "*/" c-backward-single-comment ty s c-comment-start-regexp c-block-comment-start-regexp pp-to-lit state lit-limits near c-string-limit-regexp beg end c-string-syntax] 8 (#$ . 93115)])
(defalias 'c-literal-limits-fast 'c-literal-limits)
#@488 If the argument is a cons of two buffer positions (such as returned by
`c-literal-limits'), and that range contains a C++ style line comment,
then an extended range is returned that contains all adjacent line
comments (i.e. all comments that starts in the same column with no
empty lines or non-whitespace characters between them).  Otherwise the
argument is returned.

Note that this function might do hidden buffer changes.  See the
comment at the start of cc-engine.el for more info.
(defalias 'c-collect-line-comments #[(range) "\212\3061g:\203b@b\210\307	!\203bi`\310\311!A\312 \203?`Y\203?\307	!\203?
iU\203?`\310\311!\202\nb\210\313\314w\210\307	!\203[
iU\203[\315y\311U`\204B\f\n,B\202c0\202i\210)\207" [range c-line-comment-starter end bopl beg col (error) looking-at line-beginning-position 0 c-backward-single-comment " 	" nil 1] 4 (#$ . 95142)])
#@417 Convenience function that given the result of `c-literal-limits',
returns nil or the type of literal that the range surrounds, one
of the symbols `c', `c++' or `string'.  It's much faster than using
`c-in-literal' and is intended to be used when you need both the
type of a literal and its limits.

Note that this function might do hidden buffer changes.  See the
comment at the start of cc-engine.el for more info.
(defalias 'c-literal-type #[(range) ":\203-\212@b\210\302	!\203\303\202+\302\304!\204&\302\305!\203*\302\306!\203*\307\202+\310)\207\207" [range c-string-limit-regexp looking-at string "//" "\\s<" "#" c++ c] 2 (#$ . 96034)])
(defalias 'c-determine-limit-get-base #[(start try-size) "	Ze]\305\n!\306\n\"\307\f8\204\310\f8\203!\311\f8\202\"`+\207" [start try-size pos base s c-state-semi-safe-place parse-partial-sexp 4 3 8] 3])
(put 'c-determine-limit-get-base 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'c-determine-limit #[(how-far-back &optional start try-size) "\212\206`	\206\n\306_	\211	Ze]\307!\310\f\"\311
8\204.\312
8\2034\313
8\2025`-\211\310\211\"\314\211\314\315W\203\234\310\314\211
\316&\311
8\204f\312
8\203l\313
8\202m`Z\211\315V\203\200BB\311
8\204\214\312
8\203\226\310`\314\211
\316&`\211\202K\nW\203\276\203\276@AA\\\211\202\236\nY\203\320@\nZ\\\202\342\fe=\203\332e\202\342\317\nZ\f	#.\n\207" [start try-size how-far-back pos base s 2 c-state-semi-safe-place parse-partial-sexp 4 3 8 nil 0 syntax-table c-determine-limit stack elt size count] 8])
(defalias 'c-determine-+ve-limit #[(how-far &optional start-pos) "\212\206`	\305``\"m\204E\306V\203E\305\f\211\\d^\307\211\n\310&\311`\fZ\312#`\313\n8\203\305\fd\307\211\n\310&`\202`,\207" [start-pos how-far s count pos parse-partial-sexp 0 nil syntax-table - 1 8] 7])
(defvar c-find-decl-syntactic-pos nil)
(make-variable-buffer-local 'c-find-decl-syntactic-pos)
(defvar c-find-decl-match-pos nil)
(make-variable-buffer-local 'c-find-decl-match-pos)
(defalias 'c-invalidate-find-decl-cache #[(change-min-pos) "\205
	W\205
\302\211\207" [c-find-decl-syntactic-pos change-min-pos nil] 2])
(put 'c-invalidate-find-decl-cache 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'c-debug-put-decl-spot-faces '(macro . #[(match-pos decl-pos) "\302\303!\205\304\300D\301	DD\305BB\207" [match-pos decl-pos facep c-debug-decl-spot-face c-save-buffer-state ((c-debug-add-face (max match-pos (point-min)) decl-pos 'c-debug-decl-sws-face) (c-debug-add-face decl-pos (min (1+ decl-pos) (point-max)) 'c-debug-decl-spot-face))] 4]))
(defalias 'c-debug-remove-decl-spot-faces '(macro . #[(beg end) "\302\303!\205\304\305\306	\307BBB\306	\310BBBF\207" [beg end facep c-debug-decl-spot-face c-save-buffer-state nil c-debug-remove-face ('c-debug-decl-spot-face) ('c-debug-decl-sws-face)] 7]))
(defalias 'c-find-decl-prefix-search '(macro . #[nil "\300\207" [(progn (unless cfd-prop-match (save-excursion (while (progn (goto-char (c-next-single-property-change (point) 'c-type nil cfd-limit)) (and (< (point) cfd-limit) (not (eq (c-get-char-property (1- (point)) 'c-type) 'c-decl-end))))) (setq cfd-prop-match (point)))) (unless cfd-re-match (if (> cfd-re-match-end (point)) (goto-char cfd-re-match-end)) (while (progn (setq cfd-re-match-end (re-search-forward c-decl-prefix-or-start-re cfd-limit 'move)) (cond ((null cfd-re-match-end) (setq cfd-re-match cfd-limit) nil) ((c-got-face-at (if (setq cfd-re-match (match-end 1)) (progn (goto-char cfd-re-match) (1- cfd-re-match)) (goto-char (match-beginning 0)) (point)) c-literal-faces) (while (progn (goto-char (c-next-single-property-change (point) 'face nil cfd-limit)) (and (< (point) cfd-limit) (c-got-face-at (point) c-literal-faces)))) t) ((and (match-string 1) (string= (match-string 1) ":") (save-excursion (or (/= (c-backward-token-2 2) 0) (not (looking-at c-decl-start-colon-kwd-re))))) t) (t nil)))) (unless cfd-re-match (c-backward-syntactic-ws) (setq cfd-re-match (point)))) (if (< cfd-re-match cfd-prop-match) (setq cfd-match-pos cfd-re-match cfd-re-match nil) (setq cfd-match-pos cfd-prop-match cfd-prop-match nil)) (goto-char cfd-match-pos) (when (< cfd-match-pos cfd-limit) (c-forward-comments) (setq cfd-continue-pos (if cfd-prop-match (min cfd-prop-match (point)) (point)))))] 1]))
(defalias 'c-find-decl-spots #[(cfd-limit cfd-decl-re cfd-face-checklist cfd-fun) "`d\306e?\205\n		\306\307\211*+,-.\306\211\211/01`234\3104\311\"\2115:\203T5\203O5@3>\204O5A\2115\204=5\202Y53>+\203(o\204\245`S234\3104\311\"\2115:\203\2215\203\2145@3>\204\2145A\2115\204z5\202\22653>+\203\245\312`\311\306e$b\210\202]\3136!\204\272\314 \2117\203\2717@b\210)`\2111\203(	\212.b\210\315y\210`)X\203(\212.b\210\316`\311\306	$b\210`	W\203`234\3104\311\"\2115:\2035\203
5@3>\204
5A\2115\204\3735\20253>+\204\325`	U)\203(1\202\f\212\315y\307U\205Bn\205B`	Y\205B\317u\210`Sf\320=)\203P.S\3210\202\f\322 \203X\3210.89\205m89W\205m\306\2119)\210`\211/9=\204\207\2149\206\200ed}\210\323 \210)`9=\203\234:\203\234:/\202\f/9o\203\253\307\211,\202\264\317u\210\324 \210`	W\203*\204\331\212\316`\325\306	$b\210`	W\203\325\310`S\325\"\326=\203\275`*),\204\276+`V\203\351+b\210\327;	\330#\211+\204\373	,\202\263\315\225\211,\203
,b\210,S\202\307\224b\210`234\3104\311\"\2115:\203@5\203;5@3>\204;5A\2115\204)5\202E53>+\203\222\316`\311\306	$b\210`	W\203\351`234\3104\311\"\2115:\203\2065\203\2015@3>\204\2015A\2115\204o5\202\21353>+\204I\202\351\331\315!\203\263\331\315!\332\230\203\263\212\333\334!\307U?\206\257\313<!?)\204\351,\204\276\323 \210`,,*W\203\317,\306,\202\325*\306*
b\210
	W\203\335\336!\203\350m\203\336\313\337!\203\364\334u\210\202\336*\203*`^\202`
.W\205\n
:\f\203\f.W\2030\203\2331\206#.b\210`=o?\205\220\306>\335\317!\211>\204b`Sf\340=\203G\317u\210\2020`Sf\341=\203b`S\206U`Sf\340=\203b\342u\210\2020>)\203u\313\343!\203(\334u\210\306\202\220\313\344!\205\220`Sf\320=\205\220`=W\205\220\317u\210\202()\210\317u\210\324 \210\202\3421\203\336\204\2531b\210\202\310.b\210\312`\325\3061$b\210`1V\203\310\310`\325\"\326=\203\257`1U\203\342\345 \210`	V\203\342	b\210\202\342.b\210`,\203\363,\fW\203\363\306,*\203*\fW\203\306*/\203(
\203s
/W\203s/b\210\346 \210\f\203s\f`W\203s`\202s*\204J\212\316`\325\306	$b\210`	W\203F\310`S\325\"\326=\203.`*),\204/+`V\203Z+b\210\327;	\330#\211+\204l	,\202$\315\225\211,\203~,b\210,S\202\203\307\224b\210`234\3104\311\"\2115:\203\2615\203\2545@3>\204\2545A\2115\204\2325\202\26653>+\203\316`\311\306	$b\210`	W\203Z`234\3104\311\"\2115:\203\3675\203\3625@3>\204\3625A\2115\204\3405\202\37453>+\204\272\202Z\331\315!\203$\331\315!\332\230\203$\212\333\334!\307U?\206 \313<!?)\204Z,\204/\323 \210`,,*W\203@,\306,\202F*\306*
b\210
	W\203s\335\336!\203Ym\203O\313\337!\203e\334u\210\202O*\203q*`^\202r`+
	W\203@
\206`Sf\347=\203\216\310
S\350\"\203\354\fU\204\354\fV\203\237\346 \210``	Y\204\351\313?!\203\351@\203@`@34\3104\311\"\2115:\203\3405\203\3335@3>\204\3335A\2115\204\3115\202\34553>+\204@\fb\210`	W\203@*\204\212\316`\325\306	$b\210`	W\203\310`S\325\"\326=\203\370`*),\204\371+`V\203$+b\210\327;	\330#\211+\2046	,\202\356\315\225\211,\203H,b\210,S\202M\307\224b\210`234\3104\311\"\2115:\203{5\203v5@3>\204v5A\2115\204d5\202\20053>+\203\315\316`\311\306	$b\210`	W\203$`234\3104\311\"\2115:\203\3015\203\2745@3>\204\2745A\2115\204\2525\202\30653>+\204\204\202$\331\315!\203\356\331\315!\332\230\203\356\212\333\334!\307U?\206\352\313<!?)\204$,\204\371\323 \210`,,*W\203\n,\306,\202*\306*
b\210
	W\203t\335\336!\203#m\203\313\337!\203/\334u\210\202*\203;*`^\202<`\202t`	W\205\374`.Y\203\237
\nV\203n\212
b\210\212\322 \205``
W)\203k\351 \210`\202l\307)\n\307U\204\206\n`V\203\201e\n}\210\202\206\307\202\237A
\n\307U?\"\203\224\306*\n\307U\204\237e-}\210\fb\210\f	U\203\256	\211\202u*\204\320\212\316`\325\306	$b\210`	W\203\314\310`S\325\"\326=\203\264`*),\204\265+`V\203\340+b\210\327;	\330#\211+\204\362	,\202\252\315\225\211,\203,b\210,S\202	\307\224b\210`234\3104\311\"\2115:\20375\20325@3>\20425A\2115\204 5\202<53>+\203\211\316`\311\306	$b\210`	W\203\340`234\3104\311\"\2115:\203}5\203x5@3>\204x5A\2115\204f5\202\20253>+\204@\202\340\331\315!\203\252\331\315!\332\230\203\252\212\333\334!\307U?\206\246\313<!?)\204\340,\204\265\323 \210`,,*W\203\306,\306,\202\314*\306*
b\210
	W\203t\335\336!\203\337m\203\325\313\337!\203\353\334u\210\202\325*\203\367*`^\202\370`\202t.	\207" [c-type-decl-end-used cfd-limit cfd-macro-end cfd-token-pos cfd-continue-pos cfd-match-pos nil 0 get-text-property face previous-single-property-change looking-at c-literal-limits 1 next-single-property-change -1 92 t c-beginning-of-macro c-backward-sws c-beginning-of-current-token c-type c-decl-end re-search-forward move match-string ":" c-backward-token-2 2 forward-comment 5 "\\\\[\n
]" 13 10 -2 "\\*/" "[\n
]" c-forward-single-comment c-forward-sws 60 syntax-table c-end-of-macro cfd-prop-match cfd-re-match-end cfd-re-match cfd-buffer-end cfd-start-pos syntactic-pos start-in-macro start-in-literal c-literal-faces faces pos pos-faces c-literal-start-regexp range change-min-pos c-find-decl-syntactic-pos c-find-decl-match-pos c-decl-prefix-or-start-re c-decl-start-colon-kwd-re start moved-comment cfd-decl-re cfd-face-checklist cfd-fun] 10])
(defvar c-found-types nil)
(make-variable-buffer-local 'c-found-types)
(defalias 'c-clear-found-types #[nil "\301\302\303\"\211\207" [c-found-types make-vector 53 0] 3])
(put 'c-clear-found-types 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'c-add-type #[(from to) "\305	\n#\306\f\"?\205\307\310\311O\f\"\210\312\f\")\207" [from to c-recognize-<>-arglists type c-found-types c-syntactic-content intern-soft unintern 0 -1 intern] 4])
(defalias 'c-unfind-type #[(name) "\302	\"\207" [name c-found-types unintern] 3])
(defalias 'c-check-type #[(from to) "\304\305	\n#\"\207" [from to c-recognize-<>-arglists c-found-types intern-soft c-syntactic-content] 5])
(put 'c-check-type 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'c-list-found-types #[nil "\302\303\304	\"\210\305\306\")\207" [type-list c-found-types nil mapatoms #[(type) "\302!	B\211\207" [type type-list symbol-name] 2] sort string-lessp] 3])
(defalias 'c-trim-found-types #[(beg end old-len) "	V\203B\212dW\203$b\210\303 \203$b\210\304 \203$\305\306`\"!\210	eV\203A	b\210\304 \203A	b\210\303 \203A\305\306`	\"!\210)\n\205h\307	\"\203\\	U\206h\310\311\312\n8\"\206h\n@\313=\205h\305\nA@!\207" [end beg c-maybe-stale-found-type c-beginning-of-current-token c-end-of-current-token c-unfind-type buffer-substring-no-properties c-partial-ws-p string-match "^[ 	\n
\f]*$" 5 c-decl-id-start] 4])
(defalias 'c-clear-<-pair-props #[(&optional pos) "\212\203b\210\202
`\306`\307\"	\232\205S\307 p\310\216\311\f!\210\3121/\313`\314\315#b0\2023\210\2024\210+\306`S\307\"
\232\203J`S\316\211T\317#\210)\316\211T\320#))\207" [pos c-<-as-paren-syntax #1=#:buffer #2=#:table c-no-parens-syntax-table c->-as-paren-syntax get-text-property syntax-table #[nil "rq\210\302	!)\207" [#1# #2# set-syntax-table] 2] set-syntax-table (error) scan-lists 1 0 remove-text-properties (category . #3=(nil)) (category . #3#)] 4])
(defalias 'c-clear->-pair-props #[(&optional pos) "\212\203b\210\202
`\306`\307\"	\232\205Q\307 p\310\216\311\f!\210\3121/\313`\314\315#b0\2023\210\2024\210+\306`\307\"
\232\203H`\316\211T\317#\210)\316\211T\320#))\207" [pos c->-as-paren-syntax #1=#:buffer #2=#:table c-no-parens-syntax-table c-<-as-paren-syntax get-text-property syntax-table #[nil "rq\210\302	!)\207" [#1# #2# set-syntax-table] 2] set-syntax-table (error) scan-lists -1 1 remove-text-properties (category . #3=(nil)) (category . #3#)] 4])
(defalias 'c-clear-<>-pair-props #[(&optional pos) "\301f\302=\203\303!\207\301f\304=\203\305!\207\306\307!\210\310 \207" [pos nil 60 c-clear-<-pair-props 62 c-clear->-pair-props message "c-clear-<>-pair-props called from wrong position" ding] 2])
(defalias 'c-clear-<-pair-props-if-match-after #[(lim &optional pos) "\212\203b\210\202
`\306`\307\"	\232\205\\\307 p\310\216\311\f!\210\3121/\313`\314\315#b0\2023\210\2024\210+`
Y\203[\306`S\307\"\232\203[`S\316\211T\317#\210)\316\211T\320#\210)\321)\207" [pos c-<-as-paren-syntax #1=#:buffer #2=#:table c-no-parens-syntax-table lim get-text-property syntax-table #[nil "rq\210\302	!)\207" [#1# #2# set-syntax-table] 2] set-syntax-table (error) scan-lists 1 0 remove-text-properties (category . #3=(nil)) (category . #3#) t c->-as-paren-syntax] 4])
(defalias 'c-clear->-pair-props-if-match-before #[(lim &optional pos) "\212\203b\210\202
`\306`\307\"	\232\205Z\307 p\310\216\311\f!\210\3121/\313`\314\315#b0\2023\210\2024\210+`
X\203Y\306`\307\"\232\203Y`\316\211T\317#\210)\316\211T\320#\210)\321)\207" [pos c->-as-paren-syntax #1=#:buffer #2=#:table c-no-parens-syntax-table lim get-text-property syntax-table #[nil "rq\210\302	!)\207" [#1# #2# set-syntax-table] 2] set-syntax-table (error) scan-lists -1 1 remove-text-properties (category . #3=(nil)) (category . #3#) t c-<-as-paren-syntax] 4])
(defalias 'c-before-change-check-<>-operators #[(beg end) "\212\306 \307\211\307\310\211\310\211\310b\210\311 b\210\311  \310\211!\"\310\211#$\312\216\203@@\202Bb\210\313\314!#\315\316#\"\210`Sf\317=\203i\320 \210\310f\317=\203I\321!\210\202I\322 \210`! \203z A\202|b\210\323\314!$\324\325$\326#\203\251`Sf\327=\203\251\330 \210`Sf\327=\203\203\331`S\"\210\202\203\332 \210`\"!\203\300!%W\203\300!%\"\205\322\"&V\205\322\"\211&.\207" [modified buffer-undo-list inhibit-read-only inhibit-point-motion-hooks before-change-functions after-change-functions buffer-modified-p t nil c-literal-limits #[nil "?\205
\301 \205
\302\303!\207" [modified buffer-modified-p set-buffer-modified-p nil] 2] c-determine-limit 512 c-syntactic-skip-backward "^;{}<" 60 c-backward-token-2 c-clear-<-pair-props-if-match-after c-forward-sws c-determine-+ve-limit c-syntactic-re-search-forward "[;{}>]" end 62 c-end-of-current-token c-clear->-pair-props-if-match-before c-backward-sws deactivate-mark buffer-file-name buffer-file-truename beg beg-lit-limits end-lit-limits new-beg new-end beg-limit end-limit c-new-BEG c-new-END] 5])
(defalias 'c-after-change-check-<>-operators #[(beg end) "\212b\210\303\304!\204\305\306x\307W\203@b\210\310 \210`W\203@\303	!\203@\307\225\211W\203@\311w\210`W\203@\312 \210\306u\210\202-\nW\205\205\nb\210\303\304!\204W\305\306x\307W\205\205\nb\210\310 \210`\nW\205\205\303	!\205\205\n\307\225\211W\205\205\311\nw\210`\nW\205\205\312 \210\306u\210\202r)\207" [beg c-<>-multichar-token-regexp end looking-at "[<>]" "<>" nil 0 c-beginning-of-current-token "^<>" c-clear-<>-pair-props] 3])
(defalias 'c-restore-<>-properties #[(_beg _end _old-len) "\306 \307\211\307\310\211\310\211\310\307\310\211\311\216b\210\312 \211\2032Ab\210`W\205r\313\314\315#\205r\316u\210\212\317 \210\320!?\205c\321 \210`Sf\322>\205c\323`\324\"\325=?)\326\310!\2042\310u\210\2022.
\207" [modified buffer-undo-list inhibit-read-only inhibit-point-motion-hooks before-change-functions after-change-functions buffer-modified-p t nil #[nil "?\205
\301 \205
\302\303!\207" [modified buffer-modified-p set-buffer-modified-p nil] 2] c-literal-limits c-syntactic-re-search-forward "<" bound -1 c-backward-token-2 looking-at c-backward-sws (40 44) get-text-property c-type c-decl-arg-start c-forward-<>-arglist deactivate-mark buffer-file-name buffer-file-truename c-parse-and-markup-<>-arglists c-restricted-<>-arglists lit-limits c-new-BEG c-new-END c-opt-<>-sexp-key] 5])
(defvar c-promote-possible-types nil)
(defvar c-parse-and-markup-<>-arglists nil)
(defvar c-restricted-<>-arglists nil)
(defvar c-record-type-identifiers nil)
(defvar c-record-ref-identifiers nil)
(defvar c-last-identifier-range nil)
(defalias 'c-record-type-id '(macro . #[(range) "\242\301=\203\302\303\301\304BBE\207\305\300DC\306BB\207" [range cons setq c-record-type-identifiers (c-record-type-identifiers) let ((if range (setq c-record-type-identifiers (cons range c-record-type-identifiers))))] 5]))
(defalias 'c-record-ref-id '(macro . #[(range) "\242\301=\203\302\303\301\304BBE\207\305\300DC\306BB\207" [range cons setq c-record-ref-identifiers (c-record-ref-identifiers) let ((if range (setq c-record-ref-identifiers (cons range c-record-ref-identifiers))))] 5]))
(defvar c-record-found-types nil)
(defalias 'c-forward-keyword-prefixed-id '(macro . #[(type) "\301\302\303\304\305\306\307\300=\203\310\202\311E\312BBD\313\314\313\315\300=\203%\316\202&\317E\320BBB\257\207" [type let (res) (setq c-last-identifier-range nil) while if setq res (c-forward-type) (c-forward-name) (nil (and (looking-at c-keywords-regexp) (c-forward-keyword-clause 1))) when (memq res '(t known found prefix maybe)) c-record-type-identifiers (c-record-type-id c-last-identifier-range) (c-record-ref-id c-last-identifier-range) (t)] 10]))
(defalias 'c-forward-id-comma-list '(macro . #[(type update-safe-pos) "\302\303\304\205\305\306BB\304\307\310\311	DFED\207" [update-safe-pos type while and progn (setq safe-pos (point)) ((eq (char-after) 44)) (forward-char) (c-forward-syntactic-ws) c-forward-keyword-prefixed-id] 8]))
(defalias 'c-forward-keyword-clause #[(match) "\306!\307	\n\")\310\211\311\310%\211&\205u\225b\210\312 \210`%&\313'\211('N*\203\274\310\211)*\314 \211)\204L\315+!\203L\316\317!\2047)\320>\205i,\203h*\211-\203g-,B,)\311)\203\274`%\310f\321=\203-\310u\210\312 \210\310\211)*\314 \211)\204\230\315+!\203\230\316\317!\204\203)\320>\205\265,\203\264*\211-\203\263-,B,)\311)\204m\202-&\322'\211('N*\203V\310\211)*\323 \211)\204\346\315+!\203\346\316\317!\204\321)\320>\205,\203*\211-\203-.B.)\311)\203V`%\310f\321=\203-\310u\210\312 \210\310\211)*\323 \211)\2042\315+!\2032\316\317!\204)\320>\205O,\203N*\211-\203M-.B.)\311)\204\202-&\324'\211('N*\203\315\310f\325=\203\315\310u\210\3261|\327`\317\211#0\202~\210\310\211\203-
\206\210`Sf\330=\203-,\203\301&\331'\211('N*\203\301\332/
\311#\203\301\333\224b\210\314 \204\243\3150!\210\333\225b\210\202\243
b\210\312 \210`%\202-&\334'\211('N*\203\375\310f\335=\203\375\336&\337'\211('N*!\203\375\312 \210`%\202-&\340'\211('N*\203-\315/!\204-\3411\"\342`\317\"b\210\3110\202$\210\310\203-\312 \210`%&\343'\211('N*\203p\310f\344=\203\324\310u\210\312 \210\310\211)*\314 \211)\204d\315+!\203d\316\317!\204O)\320>\205\201,\203\200*\211-\203-,B,)\311)\203p`%\310f\321=\203p\310u\210\312 \210\310\211)*\314 \211)\204\260\315+!\203\260\316\317!\204\233)\320>\205\315,\203\314*\211-\203\313-,B,)\311)\204\205\202p,\203p%b\210\3151!\203p\333\225b\210\312 \210\310\211)*\314 \211)\204\315+!\203\316\317!\204\361)\320>\205#,\203\"*\211-\203!-,B,)\311)\203p\310f\321=\203p\310u\210\312 \210\310\211)*\314 \211)\204O\315+!\203O\316\317!\204:)\320>\205l,\203k*\211-\203j-,B,)\311)\204'%b\210\311-\207" [match keyword c-keywords-obarray c-restricted-<>-arglists c-parse-and-markup-<>-arglists pos match-string intern-soft nil t c-forward-sws c-type-list-kwds c-forward-type looking-at c-forward-keyword-clause 1 (t known found prefix maybe) 44 c-ref-list-kwds c-forward-name c-paren-any-kwds 40 (error) scan-lists 41 c-paren-type-kwds c-syntactic-re-search-forward 0 c-<>-sexp-kwds 60 c-forward-<>-arglist c-<>-type-kwds c-nonsymbol-sexp-kwds (error) scan-sexps c-colon-type-list-kwds 58 safe-pos kwd-sym lang-constant keyword-sym res c-last-identifier-range c-keywords-regexp c-record-type-identifiers range c-record-ref-identifiers c-symbol-start c-symbol-key c-colon-type-list-re] 6])
(defalias 'c-forward-<>-arglist #[(all-types) "`\205\305\3062\307!\2110\203+	:\203	\244\f\310=\203'\311 \210\305\202/\nb\210\312*\207" [c-record-type-identifiers c-record-found-types start all-types c-buffer-is-cc-mode t angle-bracket-arglist-escape c-forward-<>-arglist-recur java-mode c-fontify-recorded-types-and-refs nil] 2])
(defalias 'c-forward-<>-arglist-recur #[(all-types) "`\306\211\306
\204B\307`\310\"\203B\306u\210\3111(\312`\313\211#b\210\3140\202,\210\202;\203;`Sf\315=\203;\314\202P\fb\210\306\202P\306u\210\3162!\204G\317 \2103\203Y4\204`5\320=\203\240\317 \210\316\321!\203o\306u\210\202\3166!\203\314\2117\322 \210*\317 \210\316\323!\204\216\316\324!\203\240\325 \210\317 \210\314\2117\322 \210\317 \210*`\3268\306\314\211$\203G`Sf\315=\203\212\327 \210\3169!)\203\307\330\225b\210\202L
\203	\203\353	@S\331:\211;\332;\211T\333:$+\210	A\211\204\317\f;\332;\211T\334\335$\210)`S;\332;\211T\334\336$\210)\314\202G`Sf\337=\203\365`\306\211\211\211<=>?\3162!\203/\330\225b\210\202\361\340u\210\212\341 \210`>\342\343!\330W\204r5\344=\203r`\345\306x\330W\203l\346\306x\330W\203l\316@!\203l\330\225\nY\203l\314\202p\nb\210\306)\210\316A!\211<\204\204\316B!?\205\210`\211?)\203\261\314\2117\347<\205\255\350\313!C\351CD\")\352E\211FEN*!*==\204\271\nb\210=\203\361=3\203\361<\204\361G\203\347\317 \210\316G!\203\347?>BHBH\202\361?>B3B3,\202L`Sf\353=\203\3541
\312`\313\211#b\210\3140\202\210\202\203`Sf\355=\204LI\204@`Sf\356=\2030\306f\356=\2038`Sf\357=\203@`	B\211\202D\360\361\306\"\204L\205P\206P\314-\207" [c-record-found-types arg-start-pos pos res start c-parse-and-markup-<>-arglists nil get-text-property syntax-table (error) scan-lists 1 t 62 looking-at c-forward-sws java-mode "\\?" c-forward-type "extends" "super" forward-word-strictly c-syntactic-re-search-forward c-backward-token-2 0 c-<>-arg-sep put-text-property c-type category c-<-as-paren-syntax c->-as-paren-syntax 60 -1 c-backward-sws skip-syntax-backward "w_" pike-mode "-!%&*+/<=>^|~[]()" "`" c-forward-<>-arglist-recur match-string intern-soft c-<>-type-kwds 40 (error) 41 38 44 throw angle-bracket-arglist-escape c-<-op-cont-regexp c-record-type-identifiers all-types c-buffer-is-cc-mode c-identifier-start c-promote-possible-types c-<>-notable-chars-re c-multichar->-op-not->>-regexp value -pos- keyword-match subres id-end id-start c-symbol-key c-opt-<>-sexp-key c-keywords-regexp keyword c-keywords-obarray lang-constant keyword-sym c-opt-identifier-concat-key c-record-ref-identifiers c-restricted-<>-arglists] 6])
(defalias 'c-backward-<>-arglist #[(all-types &optional limit) "`\305u\210	\2049\306`\307\"\2039\3101 \311`\305\312#b\210\3130\202$\210\2022\2032\314f\315=\2032\313\202\213b\210\314\202\213\316\317\n\313#\210`Sf\315=\204Mb\210\202\207`\320 \210`V\2049\305u\210`\321\f!\203\202`U\203nb\210\314\202\203`V\203{b\210\314\202\203b\210\313\202\203\313)\2049`U?)\207" [start c-parse-and-markup-<>-arglists limit beg-pos all-types -1 get-text-property syntax-table (error) scan-lists 1 t nil 60 c-syntactic-skip-backward "^<;{}" c-beginning-of-current-token c-forward-<>-arglist] 4])
(defalias 'c-forward-name #[nil "``\306\211\211\211\307#!\203\322\310\225\211b\210\311\312!\310W\204R$\313=\203R`\314\306x\310W\203L\315\306x\310W\203L\307%!\203L\310\225
Y\203L\316\202P
b\210\306)\210`\307&!\203!$\317=\203\322\307\320!\203\322\321\224\203\214\212\322 \210\3231}\324u\210\3160\202\202\210\306\202\210\205\210\307\325!)\202\215\316\203\322	b\210\326 \210	\206\233`Sf\327=\203\263\330 \211'\203\257`')\202\322\307(!\203\331 \203\322`\332\307\333!\203\320\310\225b\210\202\363\307(!\203\322\330 \203\322\307\325!\203\322\310\225b\210\326 \210\306f\334=\203\322\306u\210\326 \210`\307)!\203\303\335\225b\210\202\363\307*!\203\322`\310\225B+\310\225b\210\326 \210`\332\202\322\n\2030\n	U\2040\n	B+	b\210\326 \210`\316\211\203\322
b\210,\204K-\203\322,\203a\307,!\203a\310\225b\210\326 \210\202\f-\203\322\306f\336=\203\322\316\211\306+./\337\306!+\203\322\326 \210\306f\340=\204\220\306+\341\f
T\"\210`,\203\270\307,!\203\270/\203\257\n\203\257\n	B0B0\321u\210\326 \210\202\f/\203\320\n\203\320\306f\340=\204\320\n	B/B/\342
b\210.\207" [c-promote-possible-types id-end id-start res start pos nil looking-at 0 skip-syntax-backward "w_" pike-mode "-!%&*+/<=>^|~[]()" "`" t c++-mode "\\(operator\\|\\(template\\)\\)\\([^[:alnum:]_$]\\|$\\)" 2 c-backward-sws (error) -2 "::" c-forward-sws 101 c-forward-name c-forward-type operator "[*&]" 42 1 60 c-forward-<>-arglist 40 c-add-type template c-identifier-key c-buffer-is-cc-mode c-symbol-key c-keywords-regexp subres c-identifier-start c-opt-type-modifier-key c-overloadable-operators-regexp c-last-identifier-range c-opt-identifier-concat-key c-recognize-<>-arglists c-record-found-types c-record-type-identifiers c-record-ref-identifiers] 7])
(defalias 'c-forward-type #[(&optional brace-block-too) "\203\306\307!\203\310\311!\210\312 \210`\313\211\211\211\211\211()*\2039\306*!\2039\314\225b\210\312 \210\315\202&\306+!\203v\314\225b\210\312 \210\313f\316=\205d\3171[\320`\314\"b0\202`\210\313\202d\205d\321\211\203o\312 \210\202\224)b\210\202\224\306,!\203\363\314\225b\210\312 \210`(\322 \211??\f\311=\203\264\323(`\"\210-\203\264.\203\264.\211/\203\263/-B-)0\203\350
\324>\203\350\313f\325=\203\350\212\3261\334\320`\314\"b\210\312 \210`\211(0\202\336\210\313)\203\350(b\210\311
\204\224)b\210\202\224\313(\3061!\203
\212`\322 \211\203\f`.)\3062!\203\311\211\2020\327 3\330\216\3314!\210\3065!*\203\377\332\211\203\377\n\203U\212\333 6\334\216\314\225b\210\312 \210`\211(+\nY\204U\313\211\203\377\314\225-\203r7\204h
\311=\203r\314\224\314\225B-B-8\203\334\333 6\335\216\3068!*\203\334\3139\336\314!\210`9\3068!\203\263-\203\254\3062!\203\254\314\224\314\225B-B-\336\314!\210\202\214\3062!\203\322-\203\311\314\224\314\225B-B-\336\314!\210\311\202\3309b\210\315)\202\224\333 6\337\216\336\314!*\204\224(\203\365(b\210\202\224\314\225b\210\312 \210\202\224\f\203\224\f\311=\203Y\nb\210
\2047\203;\323\n\"\210-\2032	\2032	\211/\2031/-B-)
\204\224\340\202\224\n:;\341\342;:#<\"*\203T\340\202U\343\202\224\f\344=\203\216\nb\210\312 \210\313f\316=\203\211\n:;\341\342;:#<\"*\203\205\340\202\212\343\202\212\311\202\224)b\210\313
\203\206*\203\260\306*!\203\260\314\225b\210\312 \210\311\202\235=\203\306\306=!\203\306\314\225b\210\312 \210\202\265>\203q`(
\345>\206\32677-\205\3407??\313@\306>!\203l\314\225b\210\312 \210\346 \211@\203l
\311=\204V@\311=\2030\f\344=\204\323\n\"\210-\203+	\203+	\211/\203*/-B-)\311\202V
\332=\204V@\332=\203B\332\202V
\340=\204V@\340=\203T\340\202V\343
\311=\203p?:\203p?-\244-\202p(b\210+?\203\206
\347>\203\206	\203\206	?B?
.\207" [c-recognize-<>-arglists id-range id-end id-start name-res res looking-at "<" c-forward-<>-arglist t c-forward-sws nil 1 prefix 40 (error) scan-sexps decltype c-forward-name c-add-type (t nil) 123 (error) syntax-table #[nil "\301!\207" [c-with-syntax-table-orig-table set-syntax-table] 2] set-syntax-table known match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] c-forward-keyword-clause #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] found intern-soft c-syntactic-content maybe template (t known) c-forward-type (known found) pos start c-opt-type-modifier-key c-typeof-key c-type-prefix-key c-record-type-identifiers c-last-identifier-range range brace-block-too c-identifier-start c-primitive-type-key c-with-syntax-table-orig-table c-identifier-syntax-table c-known-type-key save-match-data-internal c-promote-possible-types c-opt-type-component-key safe-pos to from c-found-types c-opt-type-suffix-key c-opt-type-concat-key c-record-found-types subres] 8])
(defalias 'c-forward-annotation #[nil "`\303\304!\203<\303	!\204<\305u\210\303\n!\203<\306\225b\210\307 \210\303\310!\2038\31114\312`\313\306#b\210`0\2029\210\202<\314\206@b\210\305)\207" [pos c-keywords-regexp c-symbol-key looking-at "@" nil 0 c-forward-sws "(" (error) scan-lists 1 t] 4])
(defalias 'c-pull-open-brace '(macro . #[(ps) "\301\302\303\304DD\305\306DEE\307\304D\305\306DEEE\207" [ps progn while consp car setq cdr prog1] 8]))
(defalias 'c-back-over-member-initializer-braces #[nil "`\305\3062\350\3071\310`\311\312#b\210`0\202\210\305\204\"\313\306\305\"\210\314 \210\315\316!\312W\204c\n\317=\203^`\320\305x\312W\203V\321\305x\312W\203V\322\f!\203V\312\225Y\203V\323\202Zb\210\305)\204c\313\306\305\"\210\314 \210`Sf\324=\203\342\311u\210\314 \210`Sf\325>\204\201\313\306\305\"\210\3261\221\310`\311\312#b\210`0\202\223\210\305\204\233\313\306\305\"\210\314 \210\315\316!\312W\204\334\n\317=\203\327`\320\305x\312W\203\317\321\305x\312W\203\317\322\f!\203\317\312\225Y\203\317\323\202\323b\210\305)\204\334\313\306\305\"\210\314 \210\202f`Sf\327=0\211\204\360	b\210*\207" [res here c-buffer-is-cc-mode pos c-symbol-key nil done (error) scan-lists -1 0 throw c-backward-sws skip-syntax-backward "w_" pike-mode "-!%&*+/<=>^|~[]()" "`" looking-at t 44 (41 125) (error) 58] 5])
(defalias 'c-back-over-list-of-member-inits '(macro . #[nil "\300\207" [(while (eq (char-before) 44) (backward-char) (c-backward-syntactic-ws) (when (not (memq (char-before) '(41 125))) (throw 'level nil)) (when (not (c-go-list-backward)) (throw 'done nil)) (c-backward-syntactic-ws) (when (not (c-simple-skip-symbol-backward)) (throw 'level nil)) (c-backward-syntactic-ws))] 1]))
(defalias 'c-back-over-member-initializers #[nil "`\306 \307\211\211\211\3102\"\3112\312 \210`Sf\313>\203=\31410\315`\316\317#b\210`0\2022\210\307\204:\320\310\307\"\210\312 \210\321\322!\317W\204x \323=\203{`\324\307x\317W\203p\325\307x\317W\203p\326!!\203p\317\225Y\203p\327\202tb\210\307)\203{\312 \210`Sf\330=\203\371\316u\210\312 \210`Sf\331>\204\226\320\311\307\"\210\3321\246\315`\316\317#b\210`0\202\250\210\307\204\260\320\310\307\"\210\312 \210\321\322!\317W\204\363 \323=\203\356`\324\307x\317W\203\346\325\307x\317W\203\346\326!!\203\346\317\225Y\203\346\327\202\352b\210\307)\204\363\320\311\307\"\210\312 \210\202{`Sf\333=\205\212\334 \210\326\"!)?\205\335 0\211\203\336 \211\204\f@:\203*\fA\211\202\f@\fA\211\203\3112b\210\312 \210\321\322!\317W\204~ \323=\203y`\324\307x\317W\203q\325\307x\317W\203q\326!!\203q\317\225Y\203q\327\202ub\210\307)\204~\320\311\307\"\210\312 \210`Sf\330=\203\377\316u\210\312 \210`Sf\331>\204\234\320\311\307\"\210\3371\254\315`\316\317#b\210`0\202\256\210\307\204\266\320\310\307\"\210\312 \210\321\322!\317W\204\371 \323=\203\364`\324\307x\317W\203\354\325\307x\317W\203\354\326!!\203\354\317\225Y\203\354\327\202\360b\210\307)\204\371\320\311\307\"\210\312 \210\202\201`Sf\333=\205\212\334 \210\326\"!)?\205\335 0\211\202	\205!\n0\211\204*
b\210.\207" [res at-top-level level-plausible pos paren-state here c-parse-state nil done level c-backward-sws (41 125) (error) scan-lists -1 0 throw skip-syntax-backward "w_" pike-mode "-!%&*+/<=>^|~[]()" "`" looking-at t 44 (41 125) (error) 58 c-backward-token-2 c-just-after-func-arglist-p c-at-toplevel-p (error) c-buffer-is-cc-mode c-symbol-key c-:$-multichar-token-regexp] 7])
(defalias 'c-fdoc-shift-type-backward '(macro . #[(&optional short) "\301?\205\302\303\304\305?\205\306\257\207" [short progn (setq identifier-type at-type identifier-start type-start got-parens nil got-identifier t got-suffix t got-suffix-after-parens id-start paren-depth 0) (if (setq at-type (if (eq backup-at-type 'prefix) t backup-at-type)) (setq type-start backup-type-start id-start backup-id-start) (setq type-start start-pos id-start start-pos)) (or at-type-decl (setq at-type-decl backup-at-type-decl)) (or maybe-typeless (setq maybe-typeless backup-maybe-typeless)) (setq start id-start)] 6]))
(defalias 'c-forward-declarator #[(&optional limit accept-anon) "`\306\211\211\211
\204d`
W\203\375\306\307\310!\203Y\311=\203?\312\224\203?`\313 \210\310\314!\204?\315\202Y\306f\316=\203OT\306u\210\202S\317\225b\210\320 \210\202\204``\204j\313 \203u\212\321 \210`\211)\202\206\203\202\306\211\315\202\206`\fU?)\203\375\307U\204\243\3221\236\323`\317#b0\202\240\210\306\203\375`
X\203\375\310!\203\264\324\317!\210`
X\203\375\306\325\326
\315\211$\211\203\353`Sf\327=\203\353\3301\341\323`\317\211#b\210\3150\202\343\210\306\203\353\315\202\275\331u\210)\203\375\n	\317\224F\202\fb\210\306-\207" [paren-depth brackets-after-id id-end id-start here limit nil 0 looking-at c++-mode 3 c-forward-name "\\(::\\)" t 40 1 c-forward-sws c-backward-sws (error) scan-lists c-forward-keyword-clause c-syntactic-re-search-forward "[;,]\\|\\s)\\|\\'\\|\\(=\\|\\s(\\)" 91 (error) -1 got-identifier c-type-decl-prefix-key c-buffer-is-cc-mode accept-anon c-decl-hangon-key found] 6])
(defalias 'c-forward-decl-or-cast-1 #[(preceding-token-end context last-cast-end) "`\306\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211	@3ABCDEFGHIJKLMN\307 \203C\310 \210\2028`O\306\211PQ\306R\311S!\204cT\312=\203\213\311\313!\203\213\314 U\315\216\311V!*\203t\316E\317\320!W\321WX\")P\212\322\320!\210`Q)\323\316!\211R\203\366T\324=\203\272C\325W\321WX\")=\203\272\311\326!\203\272\316\306ROb\210M\203\325\3273M\330=\203\325\212Lb\210\316Y\323 \210*MJLIKHPGRMOL`K\306\211BAP\203\210P\331Z\211[ZN*\203#\3163M\203QK\202QNQb\202\222\306JQNR\203WP\332Z\211[ZN*\203A\316BP\333Z\211[ZN*\205\222\316\211A\202\222P\332Z\211[ZN*\203i\316FP\333Z\211[ZN*\203{\316D\3163PCQb\202\222R\205\222R\316=?,\204CM\316=\203\261\311\\!\203\253\322\320!\210\202\235`K\202\233M\334=\203\276\316M\202\233M\204\312NK\202\233M\335=\203\233T\324=\203\233\212\306\211\211]^_Kb\210\336 \210`^\337\340!\341W\204*T\342=\203\232``\343\306x\341W\203!\344\306x\341W\203!\311a!\203!\341\225`Y\203!\316\202&`b\210\306)\203\232\345`^\"_\346\306x\341W\203\232`]\337\340!\341W\204zT\342=\203\232``\343\306x\341W\203q\344\306x\341W\203q\311a!\203q\341\225`Y\203q\316\202v`b\210\306)\203\232`LY\203\232\345`]\"_\232\203\232Lb\210\306\211MJLK,`\341\306\211\211\211\211\211\211\211\211\211\211\211bcdefghijkl`mOKb\210n\203\347o\347\232\203\347\306f\350=\203<mTm\306u\210\202<\311o!\203<T\324=\203\351\224\203``\352 \211j\203<`b\311\353!\203<\306j\306f\350=\203$mTm\306u\210\2026h\204/m\341Uh\316l\320\225b\210\310 \210\202\347m\341Vkj\204a\311p!\203a`\211`\203a\352 \211j\203a`b\311q!\203\300\306f\354=\203\201m\341V\203pmSm\306u\210\202j\314 U\355\216\311\356!*\203\241\3571\235\360`\320\"b\210\3160\202\246\210\202p\320\225b\210\316\203pg\204\271m\341U\203\271\341\224g\316\211i\202gm\320U\203ph\204pM\316=\204pJ\204\354D\204\354A\204\354n\203pr\204p\3611\371\362`\320\211#0\202\373\210\306\211`\203p`\206`Sf\354=\203pMeLd\306k\316\211jiKg\341mJ\334=\2031\316\2023J\211M\203DILHK\202LNLNKF\204UBFD\204^ADKO`b\210\316\203p\310 \210\202a\f\203{\311s!\204\224D\204\205A\203\350j\204\350l\204\350M\203\350MeLd\306k\316\211jiKg\341mJ\334=\203\267\316\202\271J\211M\203\312ILHK\202\322NLNKF\204\333BFD\204\344ADKO\f\203\311t!\203\212\341\225b\210\310 \210`L\323 M)\3632\354m\341V\203*\3641\362`\320m#b0\202!\210\202\"\210\365\3633\316=\"\210\311r\366=\2036\367\202@r\203?\370\202@\371!fj\203\345M\204RD\203al\204ak\204a\365\363\316\"\210k\203Ul\204UJ\204\216D\204\216A\204\2163\316=\204\216\212bb\210\323 \372>)\204UMeLd\306k\316\211jiKg\341mJ\334=\203\261\316\202\263J\211M\203\304ILHK\202\314NLNKF\204\325BFD\204\336ADKO\202UJ\203G`OU\203-\306f\373=\203%T\312=\204%3\316=\203\365\363\316\"\210\202-u\203-3\327=\203-\316@\365\363\316\"\210\202-\316@\365\363\316\"\210i\203\223l\204\223k\204\223\316@\365\363\316\"\210\202\223M\316=\203S\365\363\316\"\210`OU\203\223f\203\215r\374=\203wv\204pw\203\205M\375>\202\202r\366=\203\215M\376>\203\215\365\363\316\"\210\202\223\365\3633\"\210k\203 l\204 r\204 M\316=\204 J\204\311D\204\311A\204\311n\203 i\203\311\311x!\204 MeLd\306k\316\211jiKg\341mJ\334=\203\354\316\202\356J\211M\203\377ILHK\202NLNKF\204BFD\204ADKO\202Ul\2034k\204/i\2034\365\363\316\"\210M\203Ul\204Uk\204Ug\203Ugf\350=\203U\365\363\306\"\2103\203_\365\363\316\"\210j\203\347r\204\347\311y!\203\347k\203\335l\204\335i\204\335M\316=\204\335MeLd\306k\316\211jiKg\341mJ\334=\203\251\316\202\253J\211M\203\274ILHK\202\304NLNKF\204\315BFD\204\326ADKO\202\342g\203\347\365\363\316\"\210l\204\361k\204\375M\377>\203\375\365\363\316\"\210M\201\212>\203\365\363\316\"\210T\324=\203re\203re\201\213>\204mdf\201\214=\203r\212dTb\210\310 \210\201\215 z\201\216\216\201\217{!\210\311|!+\204m\212dTb\210`\323 \210`}~\321\201\220~}#\200\"+\203r\365\363\316\"\210j\203\302h\203\235M\203\235f\204\216\311\201\221!\203\235r\204\235i\204\235\365\363\316\"\210g\204\252\311\201\221!\203\347M\330=\203\347r\201\222=\204\347\365\363\316\"\210\202\347r\203\347l\204\342r\374=\203\347w\204\347k\204\342i\203\347\365\363\316\"\210r\374=03.\212\201\205\224	\202eV\205\224	\202\206	`Sf\201>\205\224	\310 \210\311\201\223!\205\224	\306\211`u\210\310 \210`\311\203!\205[	\341\225`\201\224\224\204N	\320\224\203F	3\204N	M\201\225>\202K	\311\204!?\205[	\311\205!?\206[	\341\225`X)\205\224	\202eV\205\224	\202Sb\210`\206=\206\224	\336 \210\337\340!\341W\203\204	\311\207!\202\224	`Sf\201\226>?\205\224	\201\227 ?)\203\274	\203\263	M\203\263	M\316=\204\263	\316YLb\210\323 \210)
b\210\201\230\202V\n3\203Q\n@\203\376	J\334=\203\321	\316\202\323	J\211M\203\344	ILHK\202\354	NLNKF\204\365	BFD\204\376	ADr\374=\203'\n\311\201\231!\203'\n`\201\232\210\211`\211\201\233\211\211T\201\234\210$+\210\203<\nM\203<\n\316Y\212Lb\210\323 \210*KF\204H\nE\205M\nFEBB\202V\n\n\306.\207" [c-record-type-identifiers c-record-ref-identifiers save-rec-ref-ids save-rec-type-ids new-style-auto cast-end nil c-forward-annotation c-forward-sws looking-at java-mode "@[A-Za-z0-9]+" match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] t match-string 1 intern-soft c-forward-keyword-clause c-forward-type c++-mode "auto" "[=(]" ids found c-decl-hangon-kwds c-typedef-decl-kwds c-typeless-decl-kwds prefix maybe c-backward-sws skip-syntax-backward "w_" 0 pike-mode "-!%&*+/<=>^|~[]()" "`" buffer-substring-no-properties ":~ 	\n
\f" "\\<\\>" 40 3 c-forward-name "\\(::\\)" 41 #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] "\\s(" (error) scan-sexps (error) scan-lists at-decl-or-cast (error) throw <> "[,>]" "[,)]" "[,;]" (nil maybe) 58 decl (known found) (known found) (t known) backup-if-not-cast backup-maybe-typeless backup-at-type-decl prev-kwd-sym maybe-typeless at-typedef at-type-decl backup-kwd-sym backup-id-start backup-type-start backup-at-type id-start type-start at-type start-pos start kwd-sym kwd-clause-end found-type c-prefix-spec-kwds-re c-buffer-is-cc-mode save-match-data-internal c-typedef-key keyword c-keywords-obarray c-promote-possible-types lang-constant keyword-sym c-decl-hangon-key end-1 end-2 name pos c-symbol-key name-start c-parse-and-markup-<>-arglists identifier-start identifier-type at-decl-end got-suffix-after-parens got-prefix-before-parens got-suffix got-identifier got-parens got-prefix paren-depth c-recognize-typeless-decls c-type-decl-prefix-key c-identifier-start c-type-decl-suffix-key context c-auto-ops-re c-haskell-op-re c-has-bitfields c-recognize-knr-p c-recognize-paren-inits c-after-suffixed-type-maybe-decl-key c-after-suffixed-type-decl-key c-with-syntax-table-orig-table c-identifier-syntax-table c-known-type-key to from c-recognize-<>-arglists c-found-types c-cast-parens preceding-token-end c-primary-expr-regexp c-keywords-regexp c-nonsymbol-token-regexp last-cast-end c-simple-stmt-key value -pos- (t known) (found known) 126 syntax-table #[nil "\301!\207" [c-with-syntax-table-orig-table set-syntax-table] 2] set-syntax-table c-syntactic-content "=[^=]" arglist "\\s)" 2 (t known found) (41 93) c-on-identifier cast "," c-decl-arg-start put-text-property c-type] 21])
(defalias 'c-forward-label #[(&optional assume-markup preceding-token-end limit) "`\306\211\211\211\211\307/!\203c\310\22501\203&\310\2240B2B20b\210\311\3123\313\211\306\310&\203Y\314\224\203Y\314\224b\210`S\3154\21156\3166\211T\3174$+\210\313\202^0b\210\313)\202\2437\203\233\3077!\203\233\310\225b\2101\203\201\310\224`B2B2`S\3154\21156\3166\211T\3174$+\210\313\202\2438\203\240\306f\320=\204\2409\203\2639eX\202\307\212\321 \210`9o\206\306:\205\306: )\204y;\203\3229S\317\"\315=\204y\2129Sb\210\323 \210\307<!\206\356\307=!)\204y9\206\370`Sf\324=\203\240\325 \202v\2129Sb\210\323 \210\307<!\206\307=!)\204y9\206\"`Sf\324=\203.\325 \202v9\2064`Sf\320=\203\240\214\2129Sb\210\212\326 \205I`)\211\203S\nd}\210\327\330\306\313#\210`\3061>?\205h\307?!?\205u\331 \210\332\306>
#,\203\240@\333=\203\250\334\335\306\313#\203\250\336u\210\214e3\206\223d}\210\331 \210)\307\337!\203\250\306u\210\313\211\202!
b\210\311\3403\313\211$\203\240\336u\210`@\333=\205\307\341\342
`{\"\214e3\206\320d}\210\331 \210)\307\337!\203\372\306u\210\343
\f\"\211\344\230\204\360\345\230\203\364\346\202\365\347\211\202!\203\240\334\3503\313#\203\240\214e3\206d}\210\331 \210)\307\337!\203\240\306u\210\351\211\203\240\214
`}\210\3522\233
b\210\307A!\203A
b\210\306\353\352\306\"\210\3541S\355`\310\"b\210\331 \210\3130\202W\210\202^\203^m\20301\203\203
b\210\307/!\204\203\311B\306\313#\203\203\356\224\356\225B2B2\202mdS\3154\21156\3166\211T\3174$+\210db0\210)\202\243
b\210	.\207" [kwd label-type macro-start qt-symbol-idx label-end start nil looking-at 1 c-syntactic-re-search-forward "[;{=,@]\\|\\(\\=\\|[^:]\\):\\([^:]\\|\\'\\)" t 2 c-decl-end put-text-property c-type 58 c-backward-sws get-text-property c-beginning-of-current-token 41 c-after-conditional c-beginning-of-macro c-syntactic-skip-backward "^-]:?;}=*/%&|,<>!@+" c-forward-sws c-forward-label c++-mode search-forward-regexp "\\=p\\(r\\(ivate\\|otected\\)\\|ublic\\)\\>[^_]" -1 ":\\([^:]\\|\\'\\)" "[ 	\n[:?;{=*/%&|,<>!@+-]" string-match "\\(p\\(r\\(ivate\\|otected\\)\\|ublic\\)\\|more\\)\\>" buffer-substring-no-properties "signals" "Q_SIGNALS" qt-1kwd-colon goto-target "\\=\\(slots\\|Q_SLOTS\\)\\>" qt-2kwds-colon check-label throw (error) scan-sexps 0 c-label-kwds-regexp kwd-end c-record-type-identifiers c-record-ref-identifiers limit value pos -pos- c-opt-extra-label-key c-recognize-colon-labels preceding-token-end c-at-vsemi-p-fn assume-markup c-label-prefix-re c-block-stmt-1-key pte c-opt-cpp-prefix c-buffer-is-cc-mode c-nonlabel-token-key c-symbol-key] 8])
(defalias 'c-forward-objc-directive #[nil "`\306\307\306\211\310\311!\203\312\225b\210\202\214\310\313!\203\271\314\225b\210`\315\306w\210\306f\316=\2038\306u\210l\204#\317u\210\320 \203\271\3212\211\310\322!\203r\306f\306u\210\323 \210\320 \204Z\324\321\306\"\210\325=\203r\306f\326=\204l\324\321\306\"\210\306u\210\323 \210\306f\327=\203\207\307\211\306\330\307!+\202\210\3070\203\271\214	\206\222ed}\210\331 \210)\332\f`S\333#\210`S\333\211 !\334!\211T\335$+\210\307\202\300\332\f`\333#\210\306-\207" [c-recognize-<>-arglists lim c-promote-possible-types start-char start c-restricted-<>-arglists nil t looking-at "\\(\\(?:@\\(?:end\\|p\\(?:r\\(?:ivate\\|otected\\)\\|ublic\\)\\)\\)\\)\\([^[:alnum:]_$@]\\|$\\)" 1 "\\(\\(?:@\\(?:i\\(?:mplementation\\|nterface\\)\\|protocol\\)\\)\\)\\([^[:alnum:]_$@]\\|$\\)" 0 " 	\n
\f" 92 -1 c-forward-type break "[:(]" c-forward-sws throw 40 41 60 c-forward-<>-arglist c-backward-sws c-clear-c-type-property c-decl-end put-text-property c-type c-parse-and-markup-<>-arglists value pos -pos-] 6])
(defalias 'c-beginning-of-inheritance-list #[(&optional lim) "\304 \305\216\306	!\210\307\310\311\n#\210\312!\204\312\313!\205(\307\314\311\n#\310U\205(\202*\207" [c-with-syntax-table-orig-table c++-template-syntax-table lim c-symbol-start syntax-table #[nil "\301!\207" [c-with-syntax-table-orig-table set-syntax-table] 2] set-syntax-table c-backward-token-2 0 t looking-at "[<,]\\|::" 1] 4])
(defalias 'c-in-method-def-p #[nil "\212\301 \210\205\302!\205`)\207" [c-opt-method-key beginning-of-line looking-at] 2])
(defalias 'c-in-gcc-asm-p #[nil "\205\212\301 \210\302\303!\210\304e\305\306#\210\307!)\207" [c-opt-asm-stmt-key beginning-of-line backward-up-list 1 c-beginning-of-statement-1 nil t looking-at] 4])
#@879 Return a determination as to whether point is "at the top level".
Informally, "at the top level" is anywhere where you can write
a function.

More precisely, being at the top-level means that point is either
outside any enclosing block (such as a function definition), or
directly inside a class, namespace or other block that contains
another declaration level.

If point is not at the top-level (e.g. it is inside a method
definition), then nil is returned.  Otherwise, if point is at a
top-level not enclosed within a class definition, t is returned.
Otherwise, a 2-vector is returned where the zeroth element is the
buffer position of the start of the class declaration, and the first
element is the buffer position of the enclosing class's opening
brace.

Note that this function might do hidden buffer changes.  See the
comment at the start of cc-engine.el for more info.
(defalias 'c-at-toplevel-p #[nil "\301 \302!?\206
\303!)\207" [paren-state c-parse-state c-most-enclosing-brace c-search-uplist-for-classkey] 2 (#$ . 142268)])
(defalias 'c-just-after-func-arglist-p #[(&optional lim) "`\305\306\n!\307=\205p\310=\205\311 ?\205p\312\212\313 \210`)\305\211#\242\211\205p	W\205p`	V\204;\314\315!?\205p\212b\210\305f\316=\203O\317`\320\"b\210\202^\f\203^\314\f!\203^\321\322\323\"\210`	W\205o\324\325	\323\211$\205o`S)*\207" [id-start beg lim c-buffer-is-cc-mode c-opt-op-identifier-prefix nil c-beginning-of-statement-1 same objc-mode c-forward-objc-directive c-forward-decl-or-cast-1 c-backward-sws looking-at "[=,]" 40 scan-sexps 1 c-forward-token-2 2 t c-syntactic-re-search-forward "("] 5])
(defalias 'c-in-knr-argdecl #[(&optional lim) "\212\214\212\306 \205	`)\212\205\307 \205`)\n\206e\206\"e]\310\211`%\311&\310\211'(\310\211)*\310\211+,\310-	\206Id}\210\3122\325&\313V\205\324&S&\314\315!\210`Sf\316=\203l`\202~`Sf\317=\203y\310\202~\320\312\310\"\210
\203\265
b\210\3211\225\322`\323\313#b\210`0\202\227\210\310\204\237\320\312\310\"\210`\211\203\257
b\210\324 \210\310f\325>\204\257\fb\210\326 \210\327 `=\204\353\310f\316=\203\257\3301\326\322`\323\331#b\210\3320\202\332\210\202\257\203\257\326 \313=\203\257\327 `=\203\257\fb\210\333 \210\327 \211(\203\257\3342/\310u\210\335 \210\336(`\"'B'\324 \210\310f\337=\203*\333 \210\327 \211(\204\375\320\334\310\"\210\202\375\310f\316=0\203\257\310u\210
)\324 \210\340)\310\211#\211*:\204X)b\210\324 \210\310f\341=-\202\234\310f\342=\203\234`T\211)\203\234*@b\203\234\343 \211+\203\234\336+@+A@\"'\235\211-\203\234)b\210`%W\324 \210\203\234\310-\202;-\203\257\320\312
b\210\324 \210`\"\210\202O\fb\210\202O\3441\305\322`\323\313#b\210`0\202\311\210\202\314\204O\320\312\310\"\210\202O0.\207" [macro-start macro-end lim low-lim before-lparen after-rparen c-beginning-of-macro c-end-of-macro nil 20 knr 0 c-syntactic-skip-backward "^)]}=" 41 93 throw (error) scan-lists -1 c-forward-sws (59 123 61) c-backward-token-2 c-on-identifier (error) 1 t c-forward-token-2 id-list c-end-of-current-token buffer-substring-no-properties 44 c-forward-decl-or-cast-1 123 59 c-forward-declarator (error) here pp-count-out ids id-start after-prec-token decl-or-cast decl-res c-last-identifier-range identifier-ok] 5])
(defalias 'c-skip-conditional #[nil "\300`\301\302!\203\f\303\202\301\304!\203\305\202\306\"b\207" [scan-sexps looking-at "\\<else\\([ 	\n]\\|\\\\\n\\)+if\\>\\([^_]\\|$\\)" 3 "\\<\\(do\\|else\\|try\\|finally\\)\\>\\([^_]\\|$\\)" 1 2] 4])
(defalias 'c-after-conditional #[(&optional lim) "\212\304\305\306#\307U\205/\310	!\204.\311f\312=\205/\304\305\306#\307U\205/\310\n!\204.\310!\205/`)\207" [lim c-block-stmt-1-key c-block-stmt-2-key c-block-stmt-1-2-key c-backward-token-2 1 t 0 looking-at nil 40] 4])
(defalias 'c-after-special-operator-id #[(&optional lim) "\212\205*\303\304\305	#\306U\205*\307!\205*\n\203)\303\304\305	#\306U\205*\307\n!\205*`)\207" [c-overloadable-operators-regexp lim c-opt-op-identifier-prefix c-backward-token-2 1 nil 0 looking-at] 4])
(defalias 'c-backward-to-block-anchor #[(&optional lim) "`\212\302 \210`)U?\205\303!\211\205	b)\207" [lim start back-to-indentation c-after-conditional] 3])
(put 'c-backward-to-block-anchor 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'c-backward-to-decl-anchor #[(&optional lim) "`\212\301 \210`)U?\205\302!\207" [lim back-to-indentation c-beginning-of-statement-1] 2])
(put 'c-backward-to-decl-anchor 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'c-search-decl-header-end #[nil "`	\305=\203x\306\307\310\311\312\211%\205\215\313!\204s\212\3141(\315`\316\"b\210\3120\202-\210\310\2023\2053\317\n!)\204s`Sf\320=\205\215\321 \322\216\323\f!\210\3241`\3251Y\326`\327\211#0\202[\210\310b0\202d\210\202k\203k\312\202odb\210\310*\205\215`\202\306\330\310\311\312\211%\205\215\313!\205\215`\202x)\207" [base c-buffer-is-cc-mode c-opt-op-identifier-prefix c-with-syntax-table-orig-table c++-template-syntax-table c++-mode c-syntactic-re-search-forward "[;{<=]" nil move t c-end-of-current-token (error) scan-sexps -1 looking-at 60 syntax-table #[nil "\301!\207" [c-with-syntax-table-orig-table set-syntax-table] 2] set-syntax-table (error) (error) scan-lists 1 "[;{=]"] 6])
(defalias 'c-beginning-of-decl-1 #[(&optional lim) "\3062K``\307\n\310\311#`\310#\203\312#!\204Y	`U\204Y\214\n\206*ed}\210\313 \210)`Sf\314>\204Y\212\315u\210\312\316!)\204Y\307\n\310\311#\211\317=\204Y
`\f\202
b\210*$\203\254`\310%&\310f\320=\204r	b\210\321\n!\211%\203\247%W\203\247%b\210\307\n\310\311#\317=\204\247\322\306&f\320=\203\236\323\202\237\324%B\"\210\202\253&b\210*\323=\203F\325 '\326\216\327(\330=\203\305)\202\307\325 !\210\212\331\332\311\211\211%\203\372`Sf\333=\203\372*\203\372+\203\372\212\334 \210\312*!\210\334 \210\312+!)\204\312`Sf\333=\205<\331\335\311\211$\205<`Sf\320=\205<\3361-\3371$\340`\341\211#0\202&\210\310b\210\3110\2022\210\310\202<\205<\331\342\311\211$?+\203F\324\310B\202I\310B+0\207" [start last-stmt-start lim move tentative-move beg return c-beginning-of-statement-1 nil t looking-at c-backward-sws (59 125 58 nil) -1 "\\s(" macro 123 c-in-knr-argdecl throw previous same syntax-table #[nil "\301!\207" [c-with-syntax-table-orig-table set-syntax-table] 2] set-syntax-table c++-mode c-syntactic-re-search-forward "[;={]" 61 c-backward-token-2 "[;{]" (error) (error) scan-lists 1 ";" c-opt-method-key c-recognize-knr-p knr-argdecl-start fallback-pos c-with-syntax-table-orig-table c-buffer-is-cc-mode c++-template-syntax-table c-overloadable-operators-regexp c-opt-op-identifier-prefix] 6])
(defalias 'c-end-of-decl-1 #[nil "`\306=\203	\202
\307 \3102\305\311 \210\f\203/`Sf\312=\203/\313!\203/\314\315\316\317\320$\210`Sf\321=\203\242\3221O\3231H\324`\325\211#0\202J\210\316b0\202W\210db\210\326\310\316\"\210
\203\235\212\307 \327\216\330\n!\210` b\210\314\331
\332Q \320\211\211%\205\231\325\224\205\231`Sf\333=?\205\231\314\334 \320\211\211%\205\231`Sf\321=,\204\242\326\310\320\"\210\307 \335\216\330\n!\210`Sf\312=\203\271\326\310\320\"\210\314\336\316\317\320$\204\254*\3160*\207" [c-buffer-is-cc-mode c++-template-syntax-table decl-syntax-table start c-recognize-knr-p c-opt-block-decls-with-vars-key c++-mode syntax-table return c-search-decl-header-end 59 c-in-knr-argdecl c-syntactic-re-search-forward "{" nil move t 123 (error) (error) scan-lists 1 throw #[nil "\301!\207" [c-with-syntax-table-orig-table set-syntax-table] 2] set-syntax-table "[;=([{]\\|\\(" "\\)" 95 "[;=([{]" #[nil "\301!\207" [c-with-syntax-table-orig-table set-syntax-table] 2] ";" c-with-syntax-table-orig-table lim] 6])
(defalias 'c-looking-at-decl-block #[(containing-sexp goto-start &optional limit) "`\306\211\307\f\310#\210
\2031`Sf\311=\2031\310\312\306\f\"\2030\307\f\310#\210`Sf\311=\204)\203F\313\n\310\211$\205\314\224\211b\210\313\n\310\211\211%\203\227\314\224\211b\210\315\232\204~\316  \317\216\212\320!\205y\321\322\310\"\314U\205y\320!!+?\205\322\224\204\316\323 \203\316\320!\206\223\320\"!?\202\313#\324=\205\nb\210\321 \314U\205\320$!\205\325\322!%\326%&\")\327'\211('N*\205`\310\205\203b\210`	W\203\320)!\203\370\314\225*\330\314!\204\364*b\210\331 \210)\202\326\313	\332\310$\203\314\224\211b\210\202\326	\202\326b\210\202	b\210	+\207" [first-specifier-pos kwd-start open-brace c-block-prefix-charset limit c-recognize-<>-arglists nil c-syntactic-skip-backward t 62 c-backward-<>-arglist c-syntactic-re-search-forward 0 "\\<\\>" match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] looking-at c-backward-token-2 1 c-forward-type pike-mode match-string intern-soft c-modifier-kwds c-forward-keyword-clause c-forward-sws move c-parse-and-markup-<>-arglists goto-start c-symbol-start c-decl-block-key c-after-brace-list-key save-match-data-internal c-brace-list-key c-type-decl-prefix-key c-buffer-is-cc-mode c-specifier-key keyword c-keywords-obarray lang-constant keyword-sym c-symbol-key end] 7])
(defalias 'c-search-uplist-for-classkey #[(paren-state) "\302!\211\205%\212	b\210\303f\304=\205$\305\306	\"\303\"\205$\307 \210\310`	\"))\207" [paren-state open-paren-pos c-most-enclosing-brace nil 123 c-looking-at-decl-block c-safe-position back-to-indentation vector] 5])
(defalias 'c-most-enclosing-decl-block #[(paren-state) "@:\203
A\211\202@A@:\203 A\211\202@A	\203N\212	b\210\303\n\304\")\204N\n@:\203EA\211\2029@A\202&	*\207" [paren-state open-brace next-open-brace c-looking-at-decl-block nil] 4])
(defalias 'c-cheap-inside-bracelist-p #[(paren-state) "\302\212	@:\203	A\211\202	@	A\211\203)b\210\303 \210\304 \210\305\306!\203*\207" [b-pos paren-state nil c-backward-sws c-backward-token-2 looking-at "="] 3])
(defalias 'c-backward-typed-enum-colon #[nil "`\303\212\304\305 \306\"\203c\307\310!\203(\3111#\312`\313\314#b\210\3150\202%\210\303\203c\304\303f\316\"\203U\212\317 \210\320 )\203U`\303u\210\321 \210\322 \203P\321 \210`	=\204c\303\202c\304\303f\323\"\204\307\n!\204)\205lb\210\315*\207" [colon-pos here c-symbol-key nil eql c-backward-token-2 0 looking-at "\\s)" (error) scan-lists -1 1 t 58 c-backward-sws c-on-identifier c-forward-sws c-forward-type 40] 4])
(defalias 'c-backward-over-enum-header #[nil "`\306\211\203
\307 \210\310 \311=\203\312\313!\203/\3141*\315`\316\317#b\210\3200\202,\210\306\203\312\f!\203D\321 \203D\204D\320\211\202|\203[\322\306f\323\"\204V\312
!\203[\306\202
\312!\204
\312!\204\203{\306f\324=\203{\312\325!\204
\306\204
\312!\206\212\nb\210\306+\207" [before-identifier up-sexp-pos here c-recognize-post-brace-list-type-p c-symbol-key c-postfix-decl-spec-key nil c-backward-typed-enum-colon c-backward-token-2 0 looking-at "\\s)" (error) scan-lists -1 1 t c-on-identifier eql 44 60 "\\s(" c-after-brace-list-key c-brace-list-key c-recognize-<>-arglists] 4])
(defalias 'c-inside-bracelist-p #[(containing-sexp paren-state) "\212b\210\306 )\206\332\212	\307=\205\n\310\211\211\211\211\"#$#\204\326\203\326%\203T%@:\203B%@A%A%\202F%@%\203T%@%A%b\210\311\f\211\"\203c\310\202 \312\"\313\314\315
#\210&\203\251\310f\316=\203\251\"\312=\203\251\313\314\315
#\317U\204\215\310\202\243\320&!\203\230\315\202\243\320\321!\203\242\312\202\243\310\211\"\202z\"\312=\203p\310f\322=\203\275\310\"\202X$\203\317\320$!\203\317\310\"\202X\310f\323=\203X\324\211\"\324=\203X\313\314\315
#\317U\203X'\203\371\320'!\203\371\310\202R	\307=\203\310f\325=\204\310f\316=\203`Sf\325=\203\310\202R\320\326!\203#\324\202R	\327=\203Q\212`\330\310x\210`()`Sf\331=\205I\332()\"?\205I\333 ?+\203Q\310\202R\315\211\"\202\332\"\312=\203\251\313\314\315
#\317U\204\251\310\211\"\202\253\"\203\203\334\335%!!\210`\211#\202\"\310f\322=\203\217\310\202 `\211\203\315\336 \203\315`=\203\315\337 \210`*b\210\310u\210\340\341*\315\211$\203\306`Sf\322=\203\306\310\211#\202\311#)\202 \f\310\211\202 #.\207" [containing-sexp c-buffer-is-cc-mode c-decl-block-key macro-start next-containing lim c-backward-over-enum-header pike-mode nil c-looking-at-inexpr-block dontknow c-backward-token-2 1 t 91 0 looking-at "\\sw\\|\\s_\\|[.[]" 59 61 maybe 96 "\\s." c++-mode "^<>" 60 c-crosses-statement-barrier-p c-in-literal c-beginning-of-statement-1 c-most-enclosing-brace c-forward-to-cpp-define-body c-end-of-macro c-syntactic-re-search-forward "[;,]" braceassignp bufpos class-key paren-state c-opt-inexpr-brace-list-key c-opt-op-identifier-prefix pos< here macro-end] 7])
(defalias 'c-looking-at-special-brace-list #[(&optional lim) "\205\277\3051\275\212`\306\211\211\307 \210\306f\310=\203+\311u\210\307 \210`\306f\236\202E\306f\236\211\203E`\312 \210\313u\210\306f\310=\205D`\f\205\272	\205\272\3141e\fb\210\315`\311\"b\210``Sf\316U0\202i\210\202\266\203\266\3171\226b\210\320\321!\203\203\315`\311\"b\210\322\202\222\nb\210\313u\210\312 \210`Sf	AU0\202\230\210\306\203\266`Sfz\316U\203\256\307 \210`\nSU\205\272\f\nB	B\202\272\fC	B-0\207\210\306\207" [c-special-brace-lists type end inner-beg beg (error) nil c-forward-sws 40 1 c-backward-sws -1 (error) scan-sexps 41 (error) looking-at "\\s(" t] 4])
(defalias 'c-looking-at-bos #[(&optional lim) "\300 \207" [c-at-statement-start-p] 1])
(make-obsolete 'c-looking-at-bos 'c-at-statement-start-p "22.1")
(defalias 'c-looking-at-inexpr-block #[(lim containing-sexp &optional check-at-end) "\212\306\307\206\f	\206\fe\307f\310=\205`\211\306=\203D\311 \210`V\203Do\204D\312u\210\313\314!\203D\3151D\307u\210\316`\312\"b0\202F\210\307\203D\313*!\203\317\320!+\321+,\")-\n\203\313-\322.\211/.N*\203\313\f\323=?\205\3130!\203\305`1\324\320\307#\325U\203\232\307fz\326=\203\232`1\202\2021b\210\327 )\203\305\2122\205\3013\330=\205\301\nb\210\331\320\332\"\325U\205\301\307f\333=)\205\334`B\202-\335.\211/.N*\203\345\f?\205\336`B\202-\337.\211/.N*\203\f\203\376\f\333=\205\340`B\202-\341.\211/.N*\203\307\202\306)\202?\313\342!\203>\f\2037\f\323=\205?\307f\323=\205?\306\202?\307f\306\202?\306\211\202
\306=\203\3174\205\320\n\205\320\205\320f\333=\205\320b\210\212\214	\206hed}\210\311 \210)`Sf\343=\203\256\344`S\345\"\203\256\214	\203\210	d}\210\3461\230\347`\312\325#b\210`0\202\232\210\307)\203\256\214	\206\244ed}\210\311 \210)\202o`	\206\264eV\205\272\350 )\206\3055\205\305\351 ?\205\320\336`B\202\320
-\207" [containing-sexp lim block-follows closest-lim passed-paren res maybe nil 123 c-backward-sws -1 looking-at "[]).]\\|\\w\\|\\s_" (error) scan-sexps match-string 1 intern-soft c-inexpr-class-kwds 91 c-backward-token-2 0 119 c-at-statement-start-p pike-mode c-forward-token-2 t 40 inexpr-class c-inexpr-block-kwds inexpr-statement c-lambda-kwds inlambda c-block-stmt-kwds "\\s(" 62 get-text-property syntax-table (error) scan-lists c-on-identifier c-looking-at-special-brace-list c-keywords-regexp keyword c-keywords-obarray kw-sym lang-constant keyword-sym c-class-key prev check-at-end c-buffer-is-cc-mode c-recognize-paren-inexpr-blocks c-special-brace-lists] 6])
(defalias 'c-looking-at-inexpr-block-backward #[(paren-state) "\212`\242\304\n:\2059\nAb\210\214e\206d}\210\305 \210)`U\2059\n@b\210A\211\2032\242\306\307	\"	\",\207" [paren-state containing-sexp elem here nil c-forward-sws c-looking-at-inexpr-block c-safe-position] 4])
(defalias 'c-at-macro-vsemi-p #[(&optional pos) "\212\214~\210\203b\210\202`	\205\314\306\307x\310=\205\314\306\307w\205\314\311\312!\203P\310\225b\203P\311\n!\203@\313\314!\203P\306\307w\202M\311!\203L\307\210\202P\307\204\"l\205\314b\205\314\315 \210`=\205\314`Sf\316=\203\205\3171z\320`\321\310#b\210`0\202\210\307\202\314\205\314\315 \210\322\323!\310W\204\276\f\324=\205\314`\325\307x\310W\203\266\326\307x\310W\203\266\311
!\203\266\310\225Y\203\266\327\202\272b\210\307)\205\314\311	!\205\314b\205\314\330 ?*\207" [pos c-macro-with-semi-re c-block-comment-start-regexp c-line-comment-start-regexp c-buffer-is-cc-mode c-symbol-key " 	" nil 0 looking-at "\\(\\\\[\n
][ 	]*\\)*" forward-comment 1 c-backward-sws 41 (error) scan-lists -1 skip-syntax-backward "w_" pike-mode "-!%&*+/<=>^|~[]()" "`" t c-in-literal] 4])
(defalias 'c-macro-vsemi-status-unknown-p #[nil "\300\207" [t] 1])
(defvar c-auto-newline-analysis nil)
(defalias 'c-brace-anchor-point #[(bracepos) "\212\212b\210\303 \210`)b\210`	V\203 \304\n!\204 \305 \210\202`	V\203*`\202+	*\207" [bracepos boi c-other-decl-block-key back-to-indentation looking-at c-backward-token-2] 2])
(defalias 'c-add-syntax #[(symbol &rest args) "	B\nB\211\207" [symbol args c-syntactic-context] 2])
(put 'c-add-syntax 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'c-append-syntax #[(symbol &rest args) "	\nBC\244\211\207" [c-syntactic-context symbol args] 3])
(put 'c-append-syntax 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'c-add-stmt-syntax #[(syntax-symbol syntax-extra-args stop-at-boi-only containing-sexp paren-state) "`\212\306 \210`)U\203\307\310`	$\207\n\212\306 \210`)\311\307\310\312,\"\205)`	$\210\3132\365`\fU\203A\204A\314-!\205\364`..\fU\204]\315 \203]`.\212\306 \210`)\202D.b\210)`\f\316/!012\212\306 \210`)0\317=`2U\203\211\320\313\321\"\210\202\3600\322=\203\251`1Y\203\251\314\323!\203\251\2122b\210\314\324!)\204\3603\204\31121U\204\3110\325>\203\3112b\210\320\313\311\"\210\202\3603\204\3300\326>\203\330\32130\322=\203\360\327\311C4\21154B\nB\211*\210+\20200\203x/\203x/b\2106\203!\330 \2117\203 7@@`W\203 7@@\211/b\210)\331/8\"8\3328!/\212\306 \210`)`\311f\31109:9\333=\203\273:\fU\204\243;\203\220\214/\206Zed}\210\334 \210)\314\335!\203l\336 \204\220\212:Tb\210\337 \210\311f)\340=\203\220\341\3114\21154B\nB\211*\210\202\243\342\311:D4\21154B\nB\211*\210\f/\203\257/T\202\260e]b\210\3430\311\202_\316/!\2110\317=0\343=\203N:`U\204N\311<\212:b\210\344\345/8\"/\"\211<)\203\f<@\346=\203\370\347\202\371\350\311C4\21154B\nB\211*\210\202J\314=!\2039\351\352\353!,\"A\212:b\210\306 \210`)`]C4\21154B\nB\211*\210\202J\347\311C4\21154B\nB\211*\210)\202_\350\311C4\21154B\nB\211*\210:\fU\203m:b\210\202t\212\306 \210`)+\202,\n\311>\211?
=?\205\254?@A\211>\203\243>@\204\232>`\240\210>A\211>\204\217?A\211?\202-\207" [syntax-symbol syntax-extra-args c-syntactic-context on-label boi syntax-last back-to-indentation apply c-add-syntax nil rassq back-up-block looking-at c-backward-single-comment c-beginning-of-statement-1 label throw t up "else\\>[^_]" "if\\>[^_]" (up previous) (up previous beginning) substatement c-looking-at-special-brace-list c-whack-state-after c-most-enclosing-brace 40 c-backward-sws "\\>" c-on-identifier c-forward-sws 123 inexpr-statement arglist-cont-nonempty same c-looking-at-inexpr-block c-safe-position inlambda defun-block-intro statement-block-intro assoc match-string 1 c-other-decl-block-key-in-symbols-alist c-comment-start-regexp savepos containing-sexp step-type old-boi old-pos stop-at-boi-only args symbol c-special-brace-lists special-list paren-state paren-char paren-pos c-recognize-paren-inexpr-blocks inexpr c-other-decl-block-key q p] 7])
(defalias 'c-add-class-syntax #[(symbol containing-decl-open containing-decl-start containing-decl-kwd paren-state) "b\210	\306=\203$`\212\307 \210`)U\203$	C\211\nBB\211*\210\207\fb\210\307 \210	`C\211\nBB\211*\210
\310\211\fN*\203a\f\212\fb\210\307 \210`)U\204a\311\312\211\nBB\211*\210`\207" [containing-decl-open symbol args c-syntactic-context containing-decl-start containing-decl-kwd inclass back-to-indentation c-inexpr-class-kwds inexpr-class nil lang-constant keyword-sym] 3])
(defalias 'c-guess-continued-construct #[(indent-point char-after-ip beg-of-same-or-containing-stmt containing-sexp paren-state) "\306\211\nb\210\307\306w\210\203\310 \206\f\311=\211\203\256\212\306f\311=\205/\312
\313\"\205/`\2110)\203I\3140C1\21121B3B\2113*\202		:\204^\2120b\210\315\316\n\313\211\211%)\203v\317
!\210\3204\203l\321\202m\322\306\211
5%\202	\323 \204\243\317
\306\211\313$\324=\203\243\212\3066\325\212\326 \210`)\306\211#*\203\243\320\327\306\313
5%\202	\320\330\306\211
5%\202	\331\332!\203\340\2120b\210\315\332\n\333\313\211%\205\334\334\212\335 \210`)C1\21121B3B\2113*\210\313)\206	\212\336 \210\306f)\311=\203\323 \204\317
\306\211\313$\324=\203\212\3066\325\212\326 \210`)\306\211#*\203\320\337\306\313
5%\202	7\340=\203^`\211\203^\317 \203^\341 \203<`W\203<\336 \210\202+`Yb\210\203^\317
!\210\342`C1\21121B3B\2113*\202	7\343=\203\375\212\nb\210\344 8\345\216\3469!\210\3471\201\350`\351\352#0\202\203\210\306*\205\246f\353=\205\246\206\225`Sf\353U?\205\246Tb\210\331:!?)\203\375\344 8\354\216\3469!\210b\210\317
\313\"\210*\212\214
\206\305ed}\210\326 \210)`Sf)\353=\203\344b\210\355\356
\313#\210\336 \210\202\347\335 \210\357`D1\21121B3B\2113*\202	\317
!\210\320\322\306\211
5%*\207" [placeholder special-brace-list indent-point c-special-brace-lists char-after-ip containing-sexp nil " 	" c-looking-at-special-brace-list 123 c-looking-at-decl-block t class-open c-syntactic-re-search-forward "=\\([^=]\\|$\\)" c-beginning-of-statement-1 c-add-stmt-syntax brace-list-open statement-cont c-at-statement-start-p same c-forward-decl-or-cast-1 c-backward-sws defun-open substatement-open looking-at "\\(<<\\|>>\\)\\([^=]\\|$\\)" move stream-op back-to-indentation c-forward-sws func-decl-cont java-mode c-forward-annotation annotation-var-cont c++-mode syntax-table #[nil "\301!\207" [c-with-syntax-table-orig-table set-syntax-table] 2] set-syntax-table (error) scan-lists -1 1 60 #[nil "\301!\207" [c-with-syntax-table-orig-table set-syntax-table] 2] c-syntactic-skip-backward "^,;" template-args-cont beg-of-same-or-containing-stmt args symbol c-syntactic-context c-auto-newline-analysis paren-state c-recognize-typeless-decls c-buffer-is-cc-mode c-with-syntax-table-orig-table c++-template-syntax-table c-<-op-cont-regexp] 7])
#@51 Return the syntactic context of the current line.
(defalias 'c-guess-basic-syntax #[nil "\212\306 \210\307 \310\211\310\311\211\311\211@A\311B`C\311\211DE\311\211FG\311\211HI\311\211JK\311\211LM\311\211NO\311\211PQ\311\211RS\311\211TU\311\211VW\311\211XY\312 Z\311[\\\\\313\216\314Z!\211X\203\263Xb\210\311f\315=\203\263\316\314ZX\"\310\"\211L\203\263XU`V\311XLb\210\317]!\205\261\320\321!P\322P^\")WZ\203Z@XZAZX:\203\212XAb\210_\323=\203\340\324 \203\340\325\326\311\310#\210`YZ\203\365Z@XZAZ\202\377XZBZ\311X)\202XTY\202eYX\203Xf\327=\203`\\Cb\210\214Y\206*ed}\210\330 \210)`G`SfFCb\210\331\311w\210\311fH\332Y!\211E\333=\203i\333\334\335!Ca\211baBKB\211K*\210\202fE\336>\203\223\337Y!\211L\203\223EL@Ca\211baBKB\211K*\210\202f\212\340 \205\235`\211I)\203\377I\212\341 \210`)U\204\377\342Oc\203\344\212Ib\210\343 \203\334\212Cb\210\341 \210`)d`dVJ\344O`dU)\202\340\310J\311)\203\377OICa\211baBKB\211K*\210\311I\202f\317\345!\203\346X!\210\347\350\311\310XZ%\210\202f\317\351!\203<\212\346X!\352=`L)\203<Lb\210\347\353\311\310XZ%\210\202f\212_\323=\203J\317\354!\202T_\355=\205\273\317\356!\205\273\3571i\330 \210\360`\361\"b\210\3100\202n\210\311\202\273\205\273\311f\315=\205\273\3621\212\330 \210\360`\361\"b\210\3100\202\217\210\311\202\273\205\273\311f\327=\203\255\3631\250\360`\361\"b\210\3100\202\256\210\311\202\273\310\205\273\317\364!\205\273`\211L)\203\320Lb\210\347\365\311\310XZ%\210\202f\212e\205sF\366=?\205sf\205\350fG!?\205sH\367>?\205sF\370=\203\371g!\205s``L\346Y!\211N\372=\204N\373=\203 Lb\210\202R`LN\374=\203R\317e!\204R\311h\346Y!\211h\372=\2044h\375=\203M`L\202QLb\210)LV\205s\317i!\203o\376\321\311\"\335U\205s\311f\327=\202s\317e!)\203\326N\375=\203\304Lb\210H\315=\203\226\347\377\311\211XZ%\210\202f\212Cb\210\341 \210\201\220 )\203\265\347\201\221\311\211XZ%\210\202f\347\201\222\311\211XZ%\210\202f\201\223CHLYZ%\210\202f\212\317j!\205q_\201\224=\206qX\205qXb\205q\311f\315=\205q\330 \210`Sf\201\225=\205q\201\2261\201\227`\361\335#b\210`0\202\210\311\202q\205q\330 \210\201\230\201\231!\335W\204m_\201\232=\205q`k\201\233\311x\335W\203d\201\234\311x\335W\203d\317l!\203d\335\225kY\203d\310\202ikb\210\311)\205q\317i!)\203\316X\203\266Xb\210\314gX\"\211YY`\212\341 \210`)U?\205\245\201\235Y!\211m\205\244mb))\210\347\201\236\311\310YZ%\210\202f\201\236eCa\211baBKB\211K*\210\202f\212\341 \210\317n!?\205\346\317j!?\205\346\201\220 )\203\220U\203\201\237\201\240UVWZ%L\201\241LCabKbaBC\244\211K*\210\202fX\203xXb\210\314gX\"Y\212\346Y!\375=\203D\317\201\242!\203D\201\236\202E\372O)YY`\212\341 \210`)U?\205h\201\235Y!\211m\205gmb))\210\347O\311\310YZ%\210\202f\201\241eCa\211baBKB\211K*\210\202f\201\243\201\244XZ\"X\310#\211L\203L@\201\245\236\211O\203\272OAO\202\314H\315=\203\307\201\246\202\312\201\247OLAb\210\341 \210\347O\311\310\314g`\"Z%\210`LA=\204fL@\311a\211baBKB\211K*\210\202fU\204X\2049o\203\201\250 \206H\315=\211R\203<\212\311pH\315=\205`\316X\310\"\211p\205``Lpb\210\317l!\205`\320\335!\211PP\322P^\")\201\251q\211rqN**\203\215Lb\210\347P\201\252\230\203x\201\253\202\202\201\254P\201\255P!\311\310XZ%\210\202f\212Cb\210\331\311w\210\311f\315=\205\251\316X\310\"\205\251`\211L)\203\306\201\256LCa\211baBKB\211K*\210\202f\212\201\257Y!\210\317s!\203\354\321\225b\210\214eC\206\341d}\210\201\260 \210)\202\316\212\341 \210`)LR:\206g\212Cb\210\311O`LV\2035\201\261\321\310\"\335U\2035\317\201\262!\2045t\203O\204\317t!\203\201\263O\202\317\201\262!)\204E\317u!\205g\212`CW\203_\376\321\310\"\335U\203_\311f\201\264>\203F\311f\201\265>)?)\203\273v\204\242_\355=\203\242O\201\263=\203\242\346Y!\210\201\263\212\341 \210`)Ca\211baBKB\211K*\210\202f\201\266LCa\211baBKB\211K*\210\202fU\203\370W\201\251q\211rqN*\204\370\201\246\311a\211baBKB\211K*\210\201\237\201\240UVWZ%\210\202f\212\201\257Y!\210\317s!\203\321\225b\210\214eC\206d}\210\201\260 \210)\202\201\267\212\341 \210`)Ca\211baBKB\211K*\210)\202f\212_\323=\205R\201\270 \211L\205R`\211S)\203\246\212\330 \210`)STU\203\204Lb\210\201\271\212\341 \210`)Ca\211baBKB\211K*\210\202fSTb\210\201\260 \210\201\272`Ca\211baBKB\211K*\210\202f\212\201\273Y\201\274\201\275!]!\211L\205\277`\211S)\203U	Sf\201\276=\203\356Lb\210\201\271\212\341 \210`)Ca\211baBKB\211K*\210\202fw\2033	\201\277Y!\2033	\346Y!\210\201\300\212\341 \210`)Ca\211baBKB\211K*\210U\203f\201\237\201\240UVWZ%\210\202f\346Y!\210\201\301\212\341 \210`)Ca\211baBKB\211K*\210\202f_\323=\203s	H\201\302=\203l	\331\311w\210\311u\210\317x!\2048\nF\201\276=\204\247	\212H\201\276=\205\243	\201\3031\224	\321u\210\3100\202\231	\210\311\202\243	\205\243	\311f\201\276=?)\203\320	\212\346Y!\210\317y!\203\310	\321\225b\210\201\260 \210\201\304\311!\210\201\260 \210\317z!)\2048\n_\355=\203?\212\346Y!\210`)\311\211{|}\212{\204&\n\317x!\203\n|`BQ\310{\202 \n\201\3051\n\360`\361\"b\210\3100\202\n\210\311\203\n`}X\203 \n\310{\310|\202\350	)Q+\203?\201\306QA`\"\204?H\201\276=\203c\n\346Y!\210\201\307\212\341 \210`)Ca\211baBKB\211K*\210\202fF\201\276=\203\243\n\346Y!\210\201\307\212\341 \210`)Ca\211baBKB\211K*\210U\203f\201\237\201\240UVWZ%\210\202fQ\203 QAQ@|\211~b\210\317\201\310!\203\337\n\201\301\346Y!\210\212\341 \210`)Ca\211baBKB\211K*\210\202|\203\375\n\201\311~Ca\211baBKB\211K*\210\202\201\307QAb\210\346Y!\210`Ca\211baBKB\211K*\210*\202f\201\312Y!\210\201\311`Ca\211baBKB\211K*\210\202f_\201\313=\203n`L\347\346 \374=\203``LU\204`\201\263\202c\201\314\311\211XZ%\210\202f\212\203\323\325\201\315Y\310#\210`YV\203\334\200\203\234\201\316Y!\211L\203\234Lb\210\202t`Sf\201\317=\203\266\201\320\311Y\"\204t\361u\210\202t`Sf\201\321=\203\334\361u\210\212\201\304\311!)\203t\311u\210\202\334\325\201\322Y\310#\210`Sf\201\323>)\203k
_\323=\203\221\f\212\214\201\324 \201\201\325\216\201\326\202!\210Cb\210\201\3271\f\201\227`\361\321#0\202\f\210\311\211L\205%\fLf\201\321=,\203\221\f\201\324 \201\201\330\216\201\326\202!\210Lb\210\346Y\310\"\210*\212\214Y\206M\fed}\210\330 \210)`Sf)\201\321=\203t\fLb\210\325\201\331Y\310#\210\201\260 \210\202w\f\341 \210\201\332`LDa\211baBKB\211K*\210\202f_\323=\203
\212\346Y!\210`L\317\201\333!\203\260\f\376\321\311C#\210\317z!\205\364\f\376\201\334\311C#\335U\205\364\f\311f\201\321=\203\352\f\201\324 \201\201\335\216\201\326\202!\210\376\321\310C#\335U*\202\353\f\310\205\364\f\311f\201\276=)\203
Lb\210\201\311\212\341 \210`)Ca\211baBKB\211K*\210\202f`\211L\203@
\201\257X!@\374=\203@
\212\330 \210`Sf)\370=\203@
`LW\204
\347`L=\203N
\201\336\202`
F\201\302=\203]
\201\263\202`
\201\337\311\211XZ%\210\202fH\370=\203\267
W\201\251q\211rqN*\203\267
Vb\210\347\201\340W!\201\252\230\203\233
\201\341\202\251
\201\254\201\340W!\201\342P!\311\310\314Z`\"Z%\210\202fX\203\336
H\370=\203\336
UX=\203\336
\201\237\201\343UVWZ%\210\202fw\203/X\204/F\370=\204/\212\201\257Y!A\211L\205e\205\317e!?)\203/LCW\203/Lb\210\201\344`Ca\211baBKB\211K*\210\202f\203\203g\317\203!\203g\346\311\310\"\210`CU\203Jeb\210\201\345\212\341 \210`)Ca\211baBKB\211K*\210\202f\214Y\206ned}\210\330 \210)`Sf\370=\203\316\212`mg\203\234g@:\203\234g@A`=\203\234g@@b\210\201\257X!\210`Lm`U?\205\267\201\346 \210`CY*\203\316Lb\210\347\201\263\311\211XZ%\210\202fI\203\333CIV\204\f\212`LF\201\347>\206^f\203\365fG!\206^F\201\276=\203\346Y!\372=\203\214Y\206ed}\210\330 \210)`\211L\206^_\201\350=\205^\201\3512^\346Y!\210`L\201\352 \203\\`CW\203\\\201\260 \210`CY\203V\201\353\201\351\310\"\210`L\2023\3110)\203\fLb\210\201\314\334 Ca\211baBKB\211K*\210U\203\332W\201\251q\211rqN*\203\312\201\354U!b\210\347\201\340W!\201\252\230\203\256\201\355\202\274\201\254\201\356\201\340W!P!\311\310\314Z`\"Z%\210\202\332\201\237\201\240UVWZ%\210c\203fI\203fI\212Cb\210\341 \210`)U\204f\344\311a\211baBKB\211K*\210\311I\202f\203\203B\212\346Y!\210\306 \210\317\203!\205%`\211L)\203B\201\357LCa\211baBKB\211K*\210\202f\203\206`Sf\201\321=\203\206\200\203_\201\316Y!\204\206\346\201\244`Z\"!\210\201\332\212\341 \210`)Ca\211baBKB\211K*\210\202fI\203\237\346X!\210\347\201\336\311\310XZ%\210\202f_\355=\203\351`\211L\203\351\346 \203\351\201\360 \203\301\201\260 \210\202\262`LYLb\210\203\351\201\361\212\341 \210`)Ca\211baBKB\211K*\210\202f\346\201\244`Z\"!\210_\201\350=\203`L\201\352 \203`CW\203\201\260 \210`L\202\377Lb\210\201\263\212\341 \210`)Ca\211baBKB\211K*\210\202fo\203K\212Xb\210\201\250 )\204\310Xf\315=\204\310H\201\362>\203\251Xb\210\212\341 \210`)L\201\3631y\201\364\321!\210\3100\202}\210\202\221\203\221`LY\203\221\311u\210\331\311w\210\202\225Lb\210\347\201\365XC\310\314Z`\"Z%\210\202fH\315=\203\201\366`Z\"\211L\203\306\201\367\211O\202\335\201\370O\201\243\201\244XZ\"X\"\243\211L\203Lb\210\341 \210\347O@\311\310\314Z`\"Z%\210`LU\204fOA\311a\211baBKB\211K*\210\202fF\201\371>\203jXb\210\212\341 \210`)L\201\3721:\201\364\321!\210\3100\202>\210\202R\203R`LY\203R\311u\210\331\311w\210\202VLb\210\347\201\373XC\310\314Z`\"Z%\210\202fXb\210\201\3741\360`\361\"b\210\3100\202\203\210\202\332\203\332\317\201\375!\203\332XTb\210\214eC\206\233d}\210\201\260 \210)F\366=\203\302\201\336`Ca\211baBKB\211K*\210\202f\201\337`Ca\211baBKB\211K*\210\202f\203\2038Xf\201\376=\2038XSb\210\214\212\311\211\204\205\201\377 \210*\206\203\f\317\206!\203\f\335\225b\210`)\206ed}\210\330 \210)\317l!\2048\201XCa\211baBKB\211K*\204fXTb\210\212\201\260 \210`)\334\201\334!W\203\233Xb\210\212\341 \210`)L\2011k\201\364\321!\210\3100\202o\210\202\203\203\203`LY\203\203\311u\210\331\311w\210\202\207Lb\210\347\201XC\310\314g`\"Z%\210\202f\214eC\206\243d}\210\201\260 \210)\201\212\341 \210`)Ca\211baBKB\211K*\210\202f_\323=\203a\212Cb\210\331\311w\210\317x!)\203aCb\210\331\311w\210H\201\276=\203\214Y\206\370ed}\210\330 \210)\201\307\212\341 \210`)Ca\211baBKB\211K*\210\202fF\201\276=\203B\201\307\212\341 \210`)Ca\211baBKB\211K*\210\202f\201\312Y!\210\201\311`Ca\211baBKB\211K*\210\202f_\201\313=\204\334o\203|\212Xb\210\201\250 )\206\204\201\366XZ\"\211R\203\334R:\203
\212Xb\210\311f)\327=\203
HRA@=\203
R@@b\210\331\311x\210n\203\315\201\201\337\201 \211L\"\203\315LK\202f\346\201\244XSZ\"!\210\376\335!\210\317s!\203\360\321\225b\210\201\260 \210\202\335\201\266\212\341 \210`)Ca\211baBKB\211K*\210\202fR:\203PR@@b\210\212Cb\210\341 \210\311f\201\225=\2034`TR@A=\206L\311fRAA=\205L\376 \335U\205L`TR@A=)\202\202H\370=\203\306\2011w\2011n\201\227`\361\321#0\202p\210\311b\210\3100\202{\210\202\306\203\306`XU\203\306`\212\341 \210`)=\203\250\201`Ca\211baBKB\211K*\210\202f\314g`\"Y\346Y\311\211\310$\210\347\201\311\310YZ%\210\202fR:\203\334R@@b\210\376\321\311C#\210\202\340Xb\210\311u\210`m\214eC\206\356d}\210\201\260 \210)m\334 ]b\210)C\206d\207\201	\207w\210\311f\201\n=\203'`\207W\203'\311u\210l\204\361u\210)`CU\203\200R:\203>R@@b\210\202BXb\210`\212\341 \210`)=\203e\201`Ca\211baBKB\211K*\210\202f\314g`\"Y\346Y!\210\347\201\311\310YZ%\210\202fH\315=\204\254o\203\304\212Cb\210\214e\201\f \206\233d}\210\201\260 \210)\201\250`!)\203\304\201
`Ca\211baBKB\211K*\210\202f\201`Ca\211baBKB\211K*\210\202fF\201>\204*f\203\362fG!\204*F\370=\203\371g!\203*`\212\346X!\210`\211L)V\203*LXU\204*\201\223CHLXZ%\210\202fH\370=\2033\314Z!YXb\210\201\235 \203sYY`\212\341 \210`)U?\205b\201\235Y!\211m\205amb))\210\347\201\311\310YZ%\210\202f\201\243\201\244XZ\"\311\"\211L\203\365L@\201=\203\226\201\202\231\201OXb\210\341 \210X`U\203\300O`Ca\211baBKB\211K*\210\202fLAb\210\341 \210\347O\311\310\314Z`\"Z%\210`LAU\204fL@\311a\211baBKB\211K*\210\202f\212Y\205Yb\210\316\314ZY\"\311\"\205`\211L)\203iYY`\212\341 \210`)U?\205'\346Y!)\210\341 \210\212Lb\210\317\210!)\203Q\201`Ca\211baBKB\211K*\210\202f\201`Ca\211baBKB\211K*\210\202f\212\201 ?\205\225\346Y\311\211\310$\374=\205\225`\211L\205\225\311\211\201\212\330 \210`)\311\211#))\203\266\341 \210`XU\204\247Lb\210\347\201\311\310YZ%\210\202fY\203`\211L\212\341 \210`)U\204\322\346Y!\372=\204\273Lb\210\317j!\203\365\201`Ca\211baBKB\211K*\210\202fXb\210\347\201\311\310YZ%\210\202fXb\210YY`\212\341 \210`)U?\205 \346Y!)\210\347\201\311\211\314Z!Z%\210\202f\203\234\214Xd}\210\2011P\201\227C\361\321#0\202R\210\311)\211T\203\234Tf\201\321=\203\234\212Tb\210\341 \210`)LXb\210`LY\203\204\311u\210\331\311w\210\202\210Lb\210\347\201\332TC\310\314g`\"Z%\210\202fCb\210`\212\346X!\213`\212U\203\275N\206\267\213N\311\202\312\213N`\212\341 \210`)U?*\204\240N\374=\203\353`CU\204\353\347\201\337\311\211XZ%\210\202fN\372=\203\317j!\204\346X!\211N\202\355N\372=\203&\347H\315=\203\201\202\201\311\310XZ%\210\202fN\372=\2037\346X!\211N\202(N\373=\203h\347\201\336\311\310XZ%\210H\315=\203f\201\311a\211baBKB\211K*\210\202fXb\210\314ZX\"Y\201\235 \203\307YY`\212\341 \210`)U?\205\233\201\235Y!\211m\205\232mb))\210\347\201\311\310YZ%\210H\315=\203f\201\311a\211baBKB\211K*\210\202f\201\243\201\244XZ\"\311\"\211L\203`L@\201=\203\352\201\202\355\201O\341 \210X`U\203O`Ca\211baBKB\211K*\210\202BLAb\210\341 \210\347O\311\310\314g`\"Z%\210`LAU\204BL@\311a\211baBKB\211K*\210H\315=\203f\201\311a\211baBKB\211K*\210\202f\212\314Z!\211L?\206Lb\210\311f\315=\205\316\314Z`\"\311\")\203\264YY`\212\341 \210`)U?\205\227\346Y!)\210\341 \210\201`Ca\211baBKB\211K*\210\202f\212\201 ?\205\340\346Y\311\211\310$\374=\205\340`\211L\205\340\311\211\201\212\330 \210`)\311\211#))\203\341 \210`XU\204\362Lb\210\347\201\311\310YZ%\210\202f`\211L\212\341 \210`)U\204\346Y!\372=\204Lb\210\317j!\203;\201`Ca\211baBKB\211K*\210\202KXb\210\347\201\311\310YZ%\210H\315=\203f\201\311a\211baBKB\211K*\210Cb\210\331\311w\210\317\214!\203\230\376\335\311\201\f #\335U\204\230\201\311abKbaBC\244\211K*\210\215\203\272\317\215!\203\272\201\311abKbaBC\244\211K*\210K\211\216\203\216@\211\217A:\203\324\217A\242\202\327\217A)\250\203\367\216@\211\217A:\203\356\217A\242\202\361\217A)[\202\216A\211\216\204\302)I\203?I\212\341 \210`)=\203?_\201\232=\203&ITf\201=\204?\201\311abKbaBC\244\211K*\210\202\320c\203\320I\203\320J\203\224[IW\204z\201\373K\236\204\320\201K\236\204\320\201K\236\204\320\201\365K\236\204\320\311K\342ICa\211baBKB\211K*\210\202\320I[=\203\320\344K\236\204\320\212Ib\210\343 ?\206\272`\212Cb\210\341 \210`)X)\203\320\344\311a\211baBKB\211K*\210K.%\207" [modified buffer-undo-list inhibit-read-only inhibit-point-motion-hooks before-change-functions after-change-functions beginning-of-line buffer-modified-p t nil c-parse-state #[nil "?\205
\301 \205
\302\303!\207" [modified buffer-modified-p set-buffer-modified-p nil] 2] c-most-enclosing-brace 123 c-looking-at-decl-block looking-at match-string 1 intern-soft c++-mode c-back-over-member-initializer-braces c-syntactic-skip-backward "^}" 40 c-backward-sws " 	" c-in-literal string line-beginning-position 0 (c c++) c-literal-limits c-beginning-of-macro back-to-indentation cpp-macro-cont c-forward-to-cpp-define-body cpp-define-intro "else\\>[^_]" c-beginning-of-statement-1 c-add-stmt-syntax else-clause "while\\>[^_]" beginning do-while-closure "catch\\>[^_]" java-mode "\\(catch\\|finally\\)\\>[^_]" (error) scan-sexps -1 (error) (error) "\\(try\\|catch\\)\\>[^_]" catch-clause 59 (41 93 44) 125 c-looking-at-inexpr-block-backward label previous same up c-forward-token-2 substatement-open deactivate-mark buffer-file-name buffer-file-truename indent-point case-fold-search literal char-before-ip before-ws-ip char-after-ip macro-start in-macro-expr c-syntactic-context placeholder c-in-literal-cache step-type tmpsymbol keyword injava-inher special-brace-list tmp-pos containing-< containing-decl-open containing-decl-start containing-decl-kwd containing-sexp lim paren-state syntactic-relpos c-stmt-delim-chars c-keywords-regexp c-keywords-obarray c-buffer-is-cc-mode c-stmt-delim-chars-with-comma args symbol c-syntactic-indentation-in-macros indent-boi c-opt-block-stmt-key c-at-vsemi-p-fn c-state-cache step c-block-stmt-2-key c-label-kwds-regexp pos c-symbol-key start c-syntactic-ws-start c-special-brace-lists tmp lang-constant keyword-sym c-specifier-key c-opt-inexpr-brace-list-key c-brace-list-key c-auto-newline-analysis c-recognize-knr-p c-opt-postfix-decl-spec-key c-opt-<>-sexp-key c-class-key done cont fence where c-recognize-<>-arglists c-overloadable-operators-regexp c-with-syntax-table-orig-table c++-template-syntax-table c-opt-method-key end-of-defun-function beginning-of-defun-function defun-prompt-regexp limit c-other-decl-block-key c-recognize-typeless-decls prev-point last-step-type c-comment-start-regexp c-opt-friend-key p langelem c-forward-label substatement-label substatement c-guess-continued-construct idl-mode 41 (error) scan-lists skip-syntax-backward "w_" pike-mode "-!%&*+/<=>^|~[]()" "`" c-after-conditional case-label c-add-class-syntax inclass access-label "switch\\>[^_]" c-looking-at-inexpr-block c-safe-position ((inexpr-class . class-open) (inexpr-statement . block-open)) inline-open lambda-intro-cont c-looking-at-special-brace-list c-other-block-decl-kwds "extern" extern-lang-open intern "-open" class-open c-beginning-of-decl-1 c-forward-sws c-backward-token-2 "=\\([^=]\\|$\\)" topmost-intro-cont (59 40) (59 40) brace-list-open defun-open c-back-over-member-initializers member-init-intro member-init-cont c-just-after-func-arglist-p c-determine-limit 500 58 c-in-knr-argdecl knr-argdecl-intro func-decl-cont 44 (error) c-forward-<>-arglist (error) c-crosses-statement-barrier-p inher-intro "throws\\>[^_]" inher-cont c-beginning-of-inheritance-list awk-mode topmost-intro "^;,=<>" c-after-special-operator-id 62 c-backward-<>-arglist 60 "^;,=" (44 61 60) syntax-table #[nil "\301!\207" [c-with-syntax-table-orig-table set-syntax-table] 2] set-syntax-table (error) #[nil "\301!\207" [c-with-syntax-table-orig-table set-syntax-table] 2] "^,;" template-args-cont "static\\>[^_]" 2 #[nil "\301!\207" [c-with-syntax-table-orig-table set-syntax-table] 2] statement statement-cont symbol-name extern-lang-close "-close" class-close knr-argdecl objc-method-intro c-end-of-decl-1 (59 123 125 nil) objc-mode not-in-directive c-forward-objc-directive throw c-brace-anchor-point inextern-lang "in" objc-method-args-cont c-forward-annotation annotation-top-cont (41 93) (error) backward-up-list arglist-close c-inside-bracelist-p (brace-list-open . inexpr-class) (block-open . inexpr-statement) (40 91) (error) arglist-intro (error) "\\<for\\>[^_]" 91 beginning-of-defun objc-method-call-cont (error) arglist-cont-nonempty arglist-cont assoc c-guess-basic-syntax (error) (error) brace-list-close " 	\n
\f" 92 brace-list-intro line-end-position brace-entry-open brace-list-entry (59 58) block-close inlambda inline-close defun-close c-at-statement-start-p c-forward-decl-or-cast-1 (error) statement-case-open statement-case-intro block-open statement-block-intro defun-block-intro comment-intro friend 34 cpp-macro] 8 (#$ . 164735)])
(defalias 'c-evaluate-offset #[(offset langelem symbol) "\247\203	\202\335\306!\203\202\335\204\307\202\335\310=\203%	\202\335\311=\2030	[\202\335\312=\203<	\313_\202\335\314=\203I	[\313_\202\335\315=\203U	\313\245\202\335\316=\203b	[\313\245\202\335\317!\203\210\320\n\211@)\n\211A:\203}\nA\242\202\nA)B!\n#\202\335<\203\303@\321=\203\241\322\323#\210\324 \210\307\202\335@\325>\203'\307\211@!A\211\203!\320@\n#\211\203!\204\315
!\202
\250\203\365\306!!\203\353\322\326@!
\f&\210\324 \210\202\f!
\"!\202!\250\203
\322\327@!
\f&\210\324 \210\202\330\f!\331H
\331H\"!!A\211\204\267!+\202\335@\332=\203\231\307\211!A\211\203\223\320@\n#\211\203\214!\204P
!\202\214
\250\203r\306!!\203i\330!\331H
\\!!\202\214!
\\!\202\214\306!!\203\211\322\333@!
%\210\324 \210\202\214
!A\211\204:!*\202\335\307!@\334=\203\246A!\204\275\203\275\320@\n#!A\202\246!)\202\3359\203\323\335!\203\323J\202\335\322\336#\210\324 \210\307\211!\203!\250\204\306!!\203!G\337U\203!\331H\250\203!\202\322\340!$\210\324 \210\307)\207" [offset c-basic-offset langelem symbol method val vectorp nil + - ++ 2 -- * / functionp c-evaluate-offset quote message "The offset %S for %s was mistakenly quoted" ding (min max) "Error evaluating offset %S for %s: Cannot combine absolute offset %S with relative %S in `%s' method" "Error evaluating offset %S for %s: Cannot combine relative offset %S with absolute %S in `%s' method" vector 0 add "Error evaluating offset %S for %s: Cannot combine absolute offsets %S and %S in `add' method" first boundp "Unknown offset format %S for %s" 1 "Error evaluating offset %S for %s: Got invalid value %S" res] 8])
(defalias 'c-calc-offset #[(langelem) "\211@)\211\n\236\211\243\203\306\f	#\202(
\203&\307\310	\"\210\311 \210\312\313\f!\2032\f\202F\f\247\203;\f\206F\f9\203E\fJ\206F\312+\207" [langelem symbol c-offsets-alist match offset c-strict-syntax-p c-evaluate-offset message "No offset found for syntactic symbol %s" ding 0 vectorp] 5])
(defalias 'c-get-offset #[(langelem) "\211A:\203A\242\202A)\203.\301\211@)\211A:\203(A\242\202*A)D!\207\301!\207" [langelem c-calc-offset] 4])
(defalias 'c-get-syntactic-indentation #[(langelems) "\306\307\n\203@\n@\310!\311\f!\203\f\306\234e\2029	\f\\\2049\n@\211A:\2035
A\242\2027
A)\nA*\202\203O	\212b\210i)\\\202P	*\207" [anchor indent langelems c-syntactic-element res langelem 0 nil c-calc-offset vectorp] 3])
(provide 'cc-engine)

Kontol Shell Bypass