- Match more function calls.
- Contain function call syntax groups.
- Improve differentiation between Ex commands and builtin functions with
the same name. Remove special cases. Command modifiers are not
currently well differentiated from functions.
closes: #17712
Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
" Language: Vim script
" Maintainer: Hirohito Higashi <h.east.727 ATMARK gmail.com>
" Doug Kearns <dougkearns@gmail.com>
-" Last Change: 2025 Jul 05
+" Last Change: 2025 Jul 10
" Former Maintainer: Charles E. Campbell
" DO NOT CHANGE DIRECTLY.
" All vimCommands are contained by vimIsCommand. {{{2
syn cluster vimCmdList contains=vimAbb,vimAddress,vimAutocmd,vimAugroup,vimBehave,vimCall,vimCatch,vimCommandModifier,vimConst,vimDoautocmd,vimDebuggreedy,vimDef,vimDefFold,vimDelcommand,vimDelFunction,@vimEcho,vimElse,vimEnddef,vimEndfunction,vimEndif,vimExecute,vimIsCommand,vimExtCmd,vimExFilter,vimExMark,vimFiletype,vimFor,vimFunction,vimFunctionFold,vimGrep,vimGrepAdd,vimGlobal,vimHelpgrep,vimHighlight,vimImport,vimLet,vimLoadkeymap,vimLockvar,vimMake,vimMap,vimMark,vimMatch,vimNotFunc,vimNormal,vimProfdel,vimProfile,vimRedir,vimSet,vimSleep,vimSort,vimSyntax,vimSynColor,vimSynLink,vimThrow,vimUniq,vimUnlet,vimUnlockvar,vimUnmap,vimUserCmd,vimVimgrep,vimVimgrepadd,vimMenu,vimMenutranslate,@vim9CmdList,@vimExUserCmdList,vimLua,vimMzScheme,vimPerl,vimPython,vimPython3,vimPythonX,vimRuby,vimTcl
syn cluster vim9CmdList contains=vim9Abstract,vim9Class,vim9Const,vim9Enum,vim9Export,vim9Final,vim9For,vim9Interface,vim9Type,vim9Var
-syn match vimCmdSep "\\\@1<!|" skipwhite nextgroup=@vimCmdList,vimSubst1,vimFunc
+syn match vimCmdSep "\\\@1<!|" skipwhite nextgroup=@vimCmdList,vimSubst1,@vimFunc
syn match vimCmdSep ":\+" skipwhite nextgroup=@vimCmdList,vimSubst1
syn match vimCount contained "\d\+"
syn match vimIsCommand "\<\%(\h\w*\|[23]mat\%[ch]\)\>" nextgroup=vimBang contains=vimCommand
Vim9 syn match vim9LhsRegister "@["0-9\-a-zA-Z#=*+_/]\ze\s\+\%(\.\.\)\=="
-syn cluster vimExprList contains=@vimSpecialVar,vimFunc,vimNumber,vimOper,vimOperParen,vimLambda,vimString,vimVar,@vim9ExprList
+syn cluster vimExprList contains=@vimSpecialVar,@vimFunc,vimNumber,vimOper,vimOperParen,vimLambda,vimString,vimVar,@vim9ExprList
syn cluster vim9ExprList contains=vim9Boolean,vim9LambdaParams,vim9Null
" Insertions And Appends: insert append {{{2
" Call {{{2
" ====
-syn match vimCall "\<call\=\>" skipwhite nextgroup=vimFunc
+syn match vimCall "\<call\=\>" skipwhite nextgroup=@vimFunc
" Debuggreedy {{{2
" ===========
" Augroup : vimAugroupError removed because long augroups caused sync'ing problems. {{{2
" ======= : Trade-off: Increasing synclines with slower editing vs augroup END error checking.
-syn cluster vimAugroupList contains=@vimCmdList,vimFilter,vimFunc,vimLineComment,vimSpecFile,vimOper,vimNumber,vimOperParen,@vimComment,vimString,vimSubst,vimRegister,vimCmplxRepeat,vimNotation,vimCtrlChar,vimContinue
+syn cluster vimAugroupList contains=@vimCmdList,vimFilter,@vimFunc,vimLineComment,vimSpecFile,vimOper,vimNumber,vimOperParen,@vimComment,vimString,vimSubst,vimRegister,vimCmplxRepeat,vimNotation,vimCtrlChar,vimContinue
" define
VimFolda syn region vimAugroup
" Functions: Tag is provided for those who wish to highlight tagged functions {{{2
" =========
-syn cluster vimFunctionBodyCommon contains=@vimCmdList,vimCmplxRepeat,vimContinue,vimCtrlChar,vimDef,vimFBVar,vimFunc,vimFunction,vimNotFunc,vimNumber,vimOper,vimOperParen,vimRegister,vimSpecFile,vimString,vimSubst,vimFunctionFold,vimDefFold,vimCmdSep
+syn cluster vimFunctionBodyCommon contains=@vimCmdList,vimCmplxRepeat,vimContinue,vimCtrlChar,vimDef,vimFBVar,vimFunction,vimNotFunc,vimNumber,vimOper,vimOperParen,vimRegister,vimSpecFile,vimString,vimSubst,vimFunctionFold,vimDefFold,vimCmdSep
syn cluster vimFunctionBodyList contains=@vimFunctionBodyCommon,vimComment,vimLineComment,vimInsert,vimConst,vimLet,vimSearch
-syn cluster vimDefBodyList contains=@vimFunctionBodyCommon,vim9Comment,vim9LineComment,vim9Block,vim9Const,vim9Final,vim9Var,vim9Null,vim9Boolean,vim9For,vim9LhsVariable,vim9LhsVariableList,vim9LhsRegister,vim9Search,@vimSpecialVar
+syn cluster vimDefBodyList contains=@vimFunctionBodyCommon,vim9Comment,vim9LineComment,vim9Block,vim9Const,vim9Final,vim9Var,vim9Null,vim9Boolean,vim9For,vim9LhsVariable,vim9LhsVariableList,vim9LhsRegister,vim9Search,@vimSpecialVar,@vim9Func
syn region vimFunctionPattern contained
\ matchgroup=vimOper
" User-Specified Commands: {{{2
" =======================
-syn cluster vimUserCmdList contains=@vimCmdList,vimCmplxRepeat,@vimComment,vimCtrlChar,vimEscapeBrace,vimFunc,vimNotation,vimNumber,vimOper,vimRegister,vimSpecFile,vimString,vimSubst,vimSubstRep,vimSubstRange
+syn cluster vimUserCmdList contains=@vimCmdList,vimCmplxRepeat,@vimComment,vimCtrlChar,vimEscapeBrace,@vimFunc,vimNotation,vimNumber,vimOper,vimRegister,vimSpecFile,vimString,vimSubst,vimSubstRep,vimSubstRange
syn match vimUserCmd "\<com\%[mand]\>!\=" skipwhite nextgroup=vimUserCmdAttrs,vimUserCmdName contains=vimBang
syn match vimUserCmd +\<com\%[mand]\>!\=\ze\s*\n\s*\%(\\\|["#]\\ \)+ skipwhite skipnl nextgroup=vimUserCmdAttrs,vimUserCmdName contains=vimBang
" Set command and associated set-options (vimOptions) with comment {{{2
syn match vimSet "\<\%(setl\%[ocal]\|setg\%[lobal]\|se\%[t]\)\>" skipwhite nextgroup=vimSetBang,vimCmdSep,vimComment,vimSetArgs
syn region vimSetComment contained start=+"+ skip=+\n\s*\%(\\\||"\\ \)+ end="$" contains=@vimCommentGroup,vimCommentString extend
-syn match vimSetCmdSep contained "|" skipwhite nextgroup=@vimCmdList,vimSubst1,vimFunc
+syn match vimSetCmdSep contained "|" skipwhite nextgroup=@vimCmdList,vimSubst1,@vimFunc
syn match vimSetEscape contained "\\\%(\\[|"]\|.\)"
syn match vimSetBarEscape contained "\\|"
syn match vimSetQuoteEscape contained +\\"+
\ skip="\\\\\|\\[,[:space:]]"
\ end="\ze[,[:space:]]"
\ end="$"
- \ skipwhite nextgroup=vimAutocmdPatternSep,vimAutocmdMod,vimAutocmdBlock
+ \ skipwhite nextgroup=vimAutocmdPatternSep,vimAutocmdMod,vimAutocmdBlock,@vimFunc
\ contains=vimEnvvar,@vimWildcard,vimAutocmdPatternEscape
-syn match vimAutocmdBufferPattern contained "<buffer\%(=\%(\d\+\|abuf\)\)\=>" skipwhite nextgroup=vimAutocmdPatternSep,vimAutocmdMod,vimAutocmdBlock
+syn match vimAutocmdBufferPattern contained "<buffer\%(=\%(\d\+\|abuf\)\)\=>" skipwhite nextgroup=vimAutocmdPatternSep,vimAutocmdMod,vimAutocmdBlock,@vimFunc
" trailing pattern separator comma allowed
syn match vimAutocmdPatternSep contained "," skipwhite nextgroup=@vimAutocmdPattern,vimAutocmdMod,vimAutocmdBlock
syn match vimAutocmdPatternEscape contained "\\."
syn match vimMenutranslateName "\%(\\\s\|\S\)\+" contained contains=vimMenuNotation,vimNotation
syn match vimMenutranslateComment +".*+ contained containedin=vimMenutranslate
+" If, While and Return: {{{2
+" ====================
+syn match vimNotFunc "\%#=1\<\%(if\|el\%[seif]\|retu\%[rn]\|while\)\>" skipwhite nextgroup=@vimExprList,vimNotation
+syn match vimElse "\<el\%[se]\>" skipwhite nextgroup=vimComment,vim9Comment
+syn match vimEndif "\<en\%[dif]\>" skipwhite nextgroup=vimComment,vim9Comment
+
" Angle-Bracket Notation: (tnx to Michael Geddes) {{{2
" ======================
syn case ignore
syn match vimBracket contained "[\\<>]"
syn case match
-" User Function Highlighting: {{{2
-" (following Gautam Iyer's suggestion)
-" ==========================
-syn match vimFunc "\%(\%([sSgGbBwWtTlL]:\|<[sS][iI][dD]>\)\=\%(\w\+\.\)*\I[a-zA-Z0-9_.]*\)\ze\s*(" skipwhite nextgroup=vimOperParen contains=vimFuncEcho,vimFuncName,vimUserFunc,vimExecute
-syn match vimUserFunc contained "\%(\%([sSgGbBwWtTlL]:\|<[sS][iI][dD]>\)\=\%(\w\+\.\)*\I[a-zA-Z0-9_.]*\)\|\<\u[a-zA-Z0-9.]*\>\|\<if\>" contains=vimNotation,vim9MethodName,vim9Super,vim9This
-syn keyword vimFuncEcho contained ec ech echo
-
-syn match vimMap "\<map\%(\s\+(\)\@=" skipwhite nextgroup=vimMapBang,vimMapMod,vimMapLhs
-
" User Command Highlighting: {{{2
-syn match vimUsrCmd '^\s*\zs\u\%(\w*\)\@>\%([(#[]\|\s\+\%([-+*/%]\=\|\.\.\)=\)\@!'
+syn match vimUsrCmd '^\s*\zs\u\%(\w*\)\@>\%([.(#[]\|\s\+\%([-+*/%]\=\|\.\.\)=\)\@!'
" Vim user commands
syn match vimBufnrWarn /\<bufnr\s*(\s*["']\.['"]\s*)/
endif
-" If, While and Return: {{{2
-" ====================
-syn match vimNotFunc "\%#=1\<\%(if\|el\%[seif]\|retu\%[rn]\|while\)\>" skipwhite nextgroup=@vimExprList,vimNotation
-syn match vimElse "\<el\%[se]\>" skipwhite nextgroup=vimComment,vim9Comment
-syn match vimEndif "\<en\%[dif]\>" skipwhite nextgroup=vimComment,vim9Comment
-
" Match: {{{2
" =====
syn match vimMatch "\<[23]\=mat\%[ch]\>" skipwhite nextgroup=vimMatchGroup,vimMatchNone
\ contains=@vimTclScript
unlet s:interfaces
+" Function Call Highlighting: {{{2
+" (following Gautam Iyer's suggestion)
+" ==========================
+syn match vimFunc contained "\<\l\w*\ze\s*(" skipwhite nextgroup=vimOperParen contains=vimFuncName
+syn match vimUserFunc contained "\<\%([[:upper:]_]\|\%(\h\w*\.\)\+\h\)\w*\ze\s*(" skipwhite nextgroup=vimOperParen contains=vim9MethodName,vim9Super,vim9This
+syn match vimUserFunc contained "\<\%(g:\)\=\%(\h\w*#\)\+\h\w*\ze\s*(" skipwhite nextgroup=vimOperParen contains=vimVarScope
+syn match vimUserFunc contained "\%(\<[sgbwtlav]:\|<[sS][iI][dD]>\)\%(\h\w*\.\)*\h\w*\ze\s*(" skipwhite nextgroup=vimOperParen contains=vimVarScope,vimNotation
+
+Vim9 syn match vim9UserFunc "^\s*\zs\%([sgbwtv]:\|<[sS][iI][dD]>\)\=\%(\h\w*[.#]\)*\h\w*\ze(" skipwhite nextgroup=vimOperParen contains=vimVarScope,vimNotation,vim9MethodName,vim9Super,vim9This
+Vim9 syn match vim9Func "^\s*\zs\l\w*\ze(" skipwhite nextgroup=vimOperParen contains=vimFuncName
+
+syn cluster vimFunc contains=vimFunc,vimUserFunc
+syn cluster vim9Func contains=vim9Func,vim9UserFunc
+
" Beginners - Patterns that involve ^ {{{2
" =========
Vim9 syn region vim9LineComment start=+^[ \t:]*\zs#.*$+ skip=+\n\s*\\\|\n\s*#\\ + end="$" contains=@vimCommentGroup,vimCommentString,vim9CommentTitle extend
hi def link vimFTError vimError
hi def link vimFunctionError vimError
hi def link vimFunc vimError
+ hi def link vim9Func vimError
hi def link vimHiAttribList vimError
hi def link vimHiCtermError vimError
hi def link vimHiKeyError vimError
@2|f+0#af5f00255&|u|n| +0#0000000&|s+0#e000e06&|:|D+0#0000000&|o|T|e|s|t|3|(+0#e000e06&|)| +0#0000000&|a+0#e000e06&|b|o|r|t| +0#0000000&@8|#+0#ffffff16#ff404010| |f|u|n| +0#0000000#ffffff0@37
@4|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|3+0#e000002&| +0#0000000&@62
@2|e+0#af5f00255&|n|d|f|u|n| +0#0000000&@23|#+0#ffffff16#ff404010| |e|n|d|f|u|n| +0#0000000#ffffff0@34
-@2|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|s|:|D|o|T|e|s|t|3|(+0#e000e06&|)| +0#0000000&@54
+@2|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|s+0#00e0e07&|:|D+0#0000000&|o|T|e|s|t|3|(+0#e000e06&|)| +0#0000000&@54
|e+0#af5f00255&|n|d|f|u|n| +0#0000000&@25|#+0#ffffff16#ff404010| |e|n|d|f|u|n| +0#0000000#ffffff0@34
@57|1|,|1| @10|T|o|p|
@2|f+0#af5f00255&|u|n| +0#0000000&|s+0#e000e06&|:|D+0#0000000&|o|T|e|s|t|3|(+0#e000e06&|)| +0#0000000&|a+0#e000e06&|b|o|r|t| +0#0000000&@8|#+0#ffffff16#ff404010| |f|u|n| +0#0000000#ffffff0@37
@4|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|3+0#e000002&| +0#0000000&@62
@2|e+0#af5f00255&|n|d|f|u|n| +0#0000000&@23|#+0#ffffff16#ff404010| |e|n|d|f|u|n| +0#0000000#ffffff0@34
-@2|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|s|:|D|o|T|e|s|t|3|(+0#e000e06&|)| +0#0000000&@54
+@2|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|s+0#00e0e07&|:|D+0#0000000&|o|T|e|s|t|3|(+0#e000e06&|)| +0#0000000&@54
>e+0#af5f00255&|n|d|f|u|n| +0#0000000&@25|#+0#ffffff16#ff404010| |e|n|d|f|u|n| +0#0000000#ffffff0@34
@75
|d+0#af5f00255&|e|f| +0#0000000&|T|e|s|t|4|(+0#e000e06&|)|:+0#0000000&| |n+0#00e0003&|u|m|b|e|r| +0#0000000&@12|"+0#ffffff16#ff404010| |d|e|f| +0#0000000#ffffff0@37
@2|d+0#af5f00255&|e|f| +0#0000000&|s+0#e000e06&|:|D+0#0000000&|o|T|e|s|t|6|(+0#e000e06&|)|:+0#0000000&| |n+0#00e0003&|u|m|b|e|r| +0#0000000&@6|"+0#ffffff16#ff404010| |d|e|f| +0#0000000#ffffff0@37
@4>r+0#af5f00255&|e|t|u|r|n| +0#0000000&|6+0#e000002&| +0#0000000&@62
@2|e+0#af5f00255&|n|d@1|e|f| +0#0000000&@23|"+0#ffffff16#ff404010| |e|n|d@1|e|f| +0#0000000#ffffff0@34
-@2|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|s|:|D|o|T|e|s|t|6|(+0#e000e06&|)| +0#0000000&@54
+@2|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|s+0#00e0e07&|:|D+0#0000000&|o|T|e|s|t|6|(+0#e000e06&|)| +0#0000000&@54
|e+0#af5f00255&|n|d|f|u|n| +0#0000000&@25|#+0#ffffff16#ff404010| |e|n|d|f|u|n| +0#0000000#ffffff0@34
@75
|f+0#af5f00255&|o|r| +0#0000000&|d+0#00e0e07&| +0#0000000&|i+0#af5f00255&|n| +0#0000000&|r+0#00e0e07&|a|n|g|e|(+0#e000e06&|1+0#e000002&|,+0#0000000&| |6+0#e000002&|)+0#e000e06&| +0#0000000&@54
@2|f+0#af5f00255&|u|n| +0#0000000&|s+0#e000e06&|:|D+0#0000000&|o|T|e|s|t|3|(+0#e000e06&|)| +0#0000000&|a+0#e000e06&|b|o|r|t| +0#0000000&@8|"+0#0000e05&| |f|u|n| +0#0000000&@37
@4|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|3+0#e000002&| +0#0000000&@62
@2|e+0#af5f00255&|n|d|f|u|n| +0#0000000&@23|"+0#0000e05&| |e|n|d|f|u|n| +0#0000000&@34
-@2|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|s|:|D|o|T|e|s|t|3|(+0#e000e06&|)| +0#0000000&@54
+@2|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|s+0#00e0e07&|:|D+0#0000000&|o|T|e|s|t|3|(+0#e000e06&|)| +0#0000000&@54
|e+0#af5f00255&|n|d|f|u|n| +0#0000000&@25|"+0#0000e05&| |e|n|d|f|u|n| +0#0000000&@34
@57|1|,|1| @10|T|o|p|
@2|f+0#af5f00255&|u|n| +0#0000000&|s+0#e000e06&|:|D+0#0000000&|o|T|e|s|t|3|(+0#e000e06&|)| +0#0000000&|a+0#e000e06&|b|o|r|t| +0#0000000&@8|"+0#0000e05&| |f|u|n| +0#0000000&@37
@4|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|3+0#e000002&| +0#0000000&@62
@2|e+0#af5f00255&|n|d|f|u|n| +0#0000000&@23|"+0#0000e05&| |e|n|d|f|u|n| +0#0000000&@34
-@2|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|s|:|D|o|T|e|s|t|3|(+0#e000e06&|)| +0#0000000&@54
+@2|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|s+0#00e0e07&|:|D+0#0000000&|o|T|e|s|t|3|(+0#e000e06&|)| +0#0000000&@54
>e+0#af5f00255&|n|d|f|u|n| +0#0000000&@25|"+0#0000e05&| |e|n|d|f|u|n| +0#0000000&@34
@75
|d+0#af5f00255&|e|f| +0#0000000&|T|e|s|t|4|(+0#e000e06&|)|:+0#0000000&| |n+0#00e0003&|u|m|b|e|r| +0#0000000&@12|#+0#0000e05&| |d|e|f| +0#0000000&@37
@2|d+0#af5f00255&|e|f| +0#0000000&|s+0#e000e06&|:|D+0#0000000&|o|T|e|s|t|6|(+0#e000e06&|)|:+0#0000000&| |n+0#00e0003&|u|m|b|e|r| +0#0000000&@6|#+0#0000e05&| |d|e|f| +0#0000000&@37
@4>r+0#af5f00255&|e|t|u|r|n| +0#0000000&|6+0#e000002&| +0#0000000&@62
@2|e+0#af5f00255&|n|d@1|e|f| +0#0000000&@23|#+0#0000e05&| |e|n|d@1|e|f| +0#0000000&@34
-@2|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|s|:|D|o|T|e|s|t|6|(+0#e000e06&|)| +0#0000000&@54
+@2|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|s+0#00e0e07&|:|D+0#0000000&|o|T|e|s|t|6|(+0#e000e06&|)| +0#0000000&@54
|e+0#af5f00255&|n|d|f|u|n| +0#0000000&@25|"+0#0000e05&| |e|n|d|f|u|n| +0#0000000&@34
@75
|f+0#af5f00255&|o|r| +0#0000000&|d+0#00e0e07&| +0#0000000&|i+0#af5f00255&|n| +0#0000000&|r+0#00e0e07&|a|n|g|e|(+0#e000e06&|1+0#e000002&|,+0#0000000&| |6+0#e000002&|)+0#e000e06&| +0#0000000&@54
--- /dev/null
+>v+0#af5f00255#ffffff0|i|m|9|s|c|r|i|p|t| +0#0000000&@64
+|#+0#0000e05&| |V|i|m| |f|u|n|c|t|i|o|n| |c|a|l@1|s| +0#0000000&@54
+|#+0#0000e05&| |V|I|M|_|S|E|T|U|P| |h|i|g|h|l|i|g|h|t| |l|i|n|k| |v|i|m|U|s|e|r|F|u|n|c| |T|o|d|o| +0#0000000&@31
+|#+0#0000e05&| |V|I|M|_|S|E|T|U|P| |h|i|g|h|l|i|g|h|t| |l|i|n|k| |v|i|m|9|U|s|e|r|F|u|n|c| |T|o|d|o| +0#0000000&@30
+@75
+@75
+|c+0#af5f00255&|a|l@1| +0#0000000&|a+0#00e0e07&|b|s|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@62
+|a+0#00e0e07&|b|s|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@67
+@75
+@75
+|#+0#0000e05&| |c|o|m@1|a|n|d|/|f|u|n|c|t|i|o|n| |d|i|s|t|i|n|c|t|i|o|n| +0#0000000&@44
+@75
+|#+0#0000e05&| |a|p@1|e|n|d| |b|r|o|w|s|e| |c|a|l@1| |c|h|d|i|r| |c|o|n|f|i|r|m| |c|o|p|y| |d|e|l|e|t|e| |e|v|a|l| |e|x|e|c|u|t|e| |f|i|l|t|e|r| |f|u|n|c|t|i|o|n
+|#| |i|n|s|e|r|t| |j|o|i|n| |m|a|p| |m|a|t|c|h| |m|o|d|e| |s|o|r|t| |s|p|l|i|t| |s|u|b|s|t|i|t|u|t|e| |s|w|a|p|n|a|m|e| |t|y|p|e| +0#0000000&@10
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|a|p@1|e|n|d| |=+0#af5f00255&| +0#0000000&|a+0#00e0e07&|p@1|e|n|d|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@51
+|c+0#af5f00255&|a|l@1| +0#0000000&|a+0#00e0e07&|p@1|e|n|d|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@59
+|#+0#0000e05&| |f|u|n|c|t|i|o|n| +0#0000000&@64
+|a+0#00e0e07&|p@1|e|n|d|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@64
+@57|1|,|1| @10|T|o|p|
--- /dev/null
+|#+0#0000e05#ffffff0| |i|n|s|e|r|t| |j|o|i|n| |m|a|p| |m|a|t|c|h| |m|o|d|e| |s|o|r|t| |s|p|l|i|t| |s|u|b|s|t|i|t|u|t|e| |s|w|a|p|n|a|m|e| |t|y|p|e| +0#0000000&@10
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|a|p@1|e|n|d| |=+0#af5f00255&| +0#0000000&|a+0#00e0e07&|p@1|e|n|d|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@51
+|c+0#af5f00255&|a|l@1| +0#0000000&|a+0#00e0e07&|p@1|e|n|d|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@59
+|#+0#0000e05&| |f|u|n|c|t|i|o|n| +0#0000000&@64
+>a+0#00e0e07&|p@1|e|n|d|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@64
+|#+0#0000e05&| |L|e|g|a|c|y| |c|o|m@1|a|n|d| +0#0000000&@58
+|#+0#0000e05&| |a|p@1|e|n|d| |(|4|2|)| +0#0000000&@61
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|b|r|o|w|s|e| |=+0#af5f00255&| +0#0000000&|b+0#00e0e07&|r|o|w|s|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@51
+|c+0#af5f00255&|a|l@1| +0#0000000&|b+0#00e0e07&|r|o|w|s|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@59
+|#+0#0000e05&| |f|u|n|c|t|i|o|n| +0#0000000&@64
+|b+0#af5f00255&|r|o|w|s|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@64
+|#+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|b+0#af5f00255&|r|o|w|s|e| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@63
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|c|a|l@1| |=+0#af5f00255&| +0#0000000&|c+0#00e0e07&|a|l@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|c+0#00e0e07&|a|l@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@61
+|#+0#0000e05&| |f|u|n|c|t|i|o|n| +0#0000000&@64
+@57|1|9|,|1| @10|4|%|
--- /dev/null
+|#+0#0000e05#ffffff0| |f|u|n|c|t|i|o|n| +0#0000000&@64
+|c+0#00e0e07&|a|l@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@66
+|#+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|c+0#af5f00255&|a|l@1| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@65
+@75
+>v+0#af5f00255&|a|r| +0#0000000&|c|h|d|i|r| |=+0#af5f00255&| +0#0000000&|c+0#00e0e07&|h|d|i|r|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@53
+|c+0#af5f00255&|a|l@1| +0#0000000&|c+0#00e0e07&|h|d|i|r|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@60
+|#+0#0000e05&| |f|u|n|c|t|i|o|n| +0#0000000&@64
+|c+0#00e0e07&|h|d|i|r|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@65
+|#+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|c+0#af5f00255&|h|d|i|r| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@64
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|c|o|n|f|i|r|m| |=+0#af5f00255&| +0#0000000&|c+0#00e0e07&|o|n|f|i|r|m|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@49
+|c+0#af5f00255&|a|l@1| +0#0000000&|c+0#00e0e07&|o|n|f|i|r|m|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@58
+|#+0#0000e05&| |f|u|n|c|t|i|o|n| +0#0000000&@64
+|c+0#af5f00255&|o|n|f|i|r|m|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@63
+|#+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|c+0#af5f00255&|o|n|f|i|r|m| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@62
+@75
+@57|3|7|,|1| @9|1@1|%|
--- /dev/null
+| +0&#ffffff0@74
+|v+0#af5f00255&|a|r| +0#0000000&|c|o|p|y| |=+0#af5f00255&| +0#0000000&|c+0#00e0e07&|o|p|y|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|c+0#00e0e07&|o|p|y|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@61
+|#+0#0000e05&| |f|u|n|c|t|i|o|n| +0#0000000&@64
+|c+0#00e0e07&|o|p|y|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@66
+>#+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|c+0#af5f00255&|o|p|y| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@65
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|d|e|l|e|t|e| |=+0#af5f00255&| +0#0000000&|d+0#00e0e07&|e|l|e|t|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@51
+|c+0#af5f00255&|a|l@1| +0#0000000&|d+0#00e0e07&|e|l|e|t|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@59
+|#+0#0000e05&| |f|u|n|c|t|i|o|n| +0#0000000&@64
+|d+0#00e0e07&|e|l|e|t|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@64
+|#+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|d+0#af5f00255&|e|l|e|t|e| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@63
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|e|v|a|l| |=+0#af5f00255&| +0#0000000&|e+0#00e0e07&|v|a|l|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|e+0#00e0e07&|v|a|l|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@61
+|#+0#0000e05&| |f|u|n|c|t|i|o|n| +0#0000000&@64
+|e+0#00e0e07&|v|a|l|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@66
+@57|5@1|,|1| @9|1|7|%|
--- /dev/null
+|e+0#00e0e07#ffffff0|v|a|l|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@66
+|#+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|e+0#af5f00255&|v|a|l| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@65
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|e|x|e|c|u|t|e| |=+0#af5f00255&| +0#0000000&|e+0#00e0e07&|x|e|c|u|t|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@49
+>c+0#af5f00255&|a|l@1| +0#0000000&|e+0#00e0e07&|x|e|c|u|t|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@58
+|#+0#0000e05&| |f|u|n|c|t|i|o|n| +0#0000000&@64
+|e+0#00e0e07&|x|e|c|u|t|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@63
+|#+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|e+0#af5f00255&|x|e|c|u|t|e| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@62
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|f|i|l|t|e|r| |=+0#af5f00255&| +0#0000000&|f+0#00e0e07&|i|l|t|e|r|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@51
+|c+0#af5f00255&|a|l@1| +0#0000000&|f+0#00e0e07&|i|l|t|e|r|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@59
+|#+0#0000e05&| |f|u|n|c|t|i|o|n| +0#0000000&@64
+|f+0#00e0e07&|i|l|t|e|r|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@64
+|#+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|f+0#af5f00255&|i|l|t|e|r| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@63
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|f|u|n|c|t|i|o|n| |=+0#af5f00255&| +0#0000000&|f+0#00e0e07&|u|n|c|t|i|o|n|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@47
+@57|7|3|,|1| @9|2|4|%|
--- /dev/null
+|v+0#af5f00255#ffffff0|a|r| +0#0000000&|f|u|n|c|t|i|o|n| |=+0#af5f00255&| +0#0000000&|f+0#00e0e07&|u|n|c|t|i|o|n|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@47
+|c+0#af5f00255&|a|l@1| +0#0000000&|f+0#00e0e07&|u|n|c|t|i|o|n|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@57
+|#+0#0000e05&| |f|u|n|c|t|i|o|n| +0#0000000&@64
+|f+0#00e0e07&|u|n|c|t|i|o|n|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@62
+|#+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+>f+0#af5f00255&|u|n|c|t|i|o|n| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@61
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|i|n|s|e|r|t| |=+0#af5f00255&| +0#0000000&|i+0#00e0e07&|n|s|e|r|t|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@51
+|c+0#af5f00255&|a|l@1| +0#0000000&|i+0#00e0e07&|n|s|e|r|t|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@59
+|#+0#0000e05&| |f|u|n|c|t|i|o|n| +0#0000000&@64
+|i+0#00e0e07&|n|s|e|r|t|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@64
+|#+0#0000e05&| |L|e|g|a|c|y| |c|o|m@1|a|n|d| +0#0000000&@58
+|#+0#0000e05&| |i|n|s|e|r|t| |(|4|2|)| +0#0000000&@61
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|j|o|i|n| |=+0#af5f00255&| +0#0000000&|j+0#00e0e07&|o|i|n|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|j+0#00e0e07&|o|i|n|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@61
+|#+0#0000e05&| |f|u|n|c|t|i|o|n| +0#0000000&@64
+|j+0#00e0e07&|o|i|n|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@66
+|#+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+@57|9|1|,|1| @9|3|0|%|
--- /dev/null
+|#+0#0000e05#ffffff0| |c|o|m@1|a|n|d| +0#0000000&@65
+|j+0#af5f00255&|o|i|n| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@65
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|m|a|p| |=+0#af5f00255&| +0#0000000&|m+0#00e0e07&|a|p|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@57
+|c+0#af5f00255&|a|l@1| +0#0000000&|m+0#00e0e07&|a|p|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@62
+>#+0#0000e05&| |f|u|n|c|t|i|o|n| +0#0000000&@64
+|m+0#00e0e07&|a|p|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@67
+|#+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|m+0#af5f00255&|a|p| +0#0000000&|(|4|2|)| @66
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|m|a|t|c|h| |=+0#af5f00255&| +0#0000000&|m+0#00e0e07&|a|t|c|h|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@53
+|c+0#af5f00255&|a|l@1| +0#0000000&|m+0#00e0e07&|a|t|c|h|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@60
+|#+0#0000e05&| |f|u|n|c|t|i|o|n| +0#0000000&@64
+|m+0#00e0e07&|a|t|c|h|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@65
+|#+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|m+0#af5f00255&|a|t|c|h| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@64
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|s|o|r|t| |=+0#af5f00255&| +0#0000000&|s+0#00e0e07&|o|r|t|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|s+0#00e0e07&|o|r|t|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@61
+@57|1|0|9|,|1| @8|3|7|%|
--- /dev/null
+|c+0#af5f00255#ffffff0|a|l@1| +0#0000000&|s+0#00e0e07&|o|r|t|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@61
+|#+0#0000e05&| |f|u|n|c|t|i|o|n| +0#0000000&@64
+|s+0#00e0e07&|o|r|t|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@66
+|#+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|s+0#af5f00255&|o|r|t| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@65
+> @74
+|v+0#af5f00255&|a|r| +0#0000000&|s|p|l|i|t| |=+0#af5f00255&| +0#0000000&|s+0#00e0e07&|p|l|i|t|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@53
+|c+0#af5f00255&|a|l@1| +0#0000000&|s+0#00e0e07&|p|l|i|t|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@60
+|#+0#0000e05&| |f|u|n|c|t|i|o|n| +0#0000000&@64
+|s+0#00e0e07&|p|l|i|t|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@65
+|#+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|s+0#af5f00255&|p|l|i|t| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@64
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|s|u|b|s|t|i|t|u|t|e| |=+0#af5f00255&| +0#0000000&|s+0#00e0e07&|u|b|s|t|i|t|u|t|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@43
+|c+0#af5f00255&|a|l@1| +0#0000000&|s+0#00e0e07&|u|b|s|t|i|t|u|t|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|#+0#0000e05&| |f|u|n|c|t|i|o|n| +0#0000000&@64
+|s+0#00e0e07&|u|b|s|t|i|t|u|t|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@60
+|#+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|s+0#af5f00255&|u|b|s|t|i|t|u|t|e| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@59
+@57|1|2|7|,|0|-|1| @6|4|3|%|
--- /dev/null
+|s+0#af5f00255#ffffff0|u|b|s|t|i|t|u|t|e| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@59
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|s|w|a|p|n|a|m|e| |=+0#af5f00255&| +0#0000000&|s+0#00e0e07&|w|a|p|n|a|m|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@47
+|c+0#af5f00255&|a|l@1| +0#0000000&|s+0#00e0e07&|w|a|p|n|a|m|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@57
+|#+0#0000e05&| |f|u|n|c|t|i|o|n| +0#0000000&@64
+>s+0#00e0e07&|w|a|p|n|a|m|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@62
+|#+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|s+0#af5f00255&|w|a|p|n|a|m|e| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@61
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|t|y|p|e| |=+0#af5f00255&| +0#0000000&|t+0#00e0e07&|y|p|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|t+0#00e0e07&|y|p|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@61
+|#+0#0000e05&| |f|u|n|c|t|i|o|n| +0#0000000&@64
+|t+0#00e0e07&|y|p|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@66
+|#+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|t+0#af5f00255&|y|p|e| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@65
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|u|n|i|q| |=+0#af5f00255&| +0#0000000&|u+0#00e0e07&|n|i|q|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|u+0#00e0e07&|n|i|q|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@61
+|#+0#0000e05&| |f|u|n|c|t|i|o|n| +0#0000000&@64
+@57|1|4|5|,|1| @8|5|0|%|
--- /dev/null
+|#+0#0000e05#ffffff0| |f|u|n|c|t|i|o|n| +0#0000000&@64
+|u+0#00e0e07&|n|i|q|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@66
+|#+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|u+0#af5f00255&|n|i|q| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@65
+@75
+> @74
+|#+0#0000e05&| |e|r@1|o|r|s| +0#0000000&@66
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|f+0#ffffff16#ff404010|o@1|(+0#e000e06#ffffff0|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@57
+|c+0#af5f00255&|a|l@1| +0#0000000&|f+0#ffffff16#ff404010|o@1|(+0#e000e06#ffffff0|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@62
+|f+0#ffffff16#ff404010|o@1|(+0#e000e06#ffffff0|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@67
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|i|f| |=+0#af5f00255&| +0#0000000&|i+0#ffffff16#ff404010|f|(+0#e000e06#ffffff0|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@59
+|c+0#af5f00255&|a|l@1| +0#0000000&|i+0#ffffff16#ff404010|f|(+0#e000e06#ffffff0|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@63
+|#+0#0000e05&| |f|u|n|c|t|i|o|n| +0#0000000&@64
+|i+0#ffffff16#ff404010|f|(+0#e000e06#ffffff0|4+0#e000002&|2|)+0#e000e06&| +0#0000000&||| |.+0#af5f00255&@1| +0#0000000&||| |e+0#af5f00255&|n|d|i|f| +0#0000000&@55
+|#+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|i+0#af5f00255&|f| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&||| |.+0#af5f00255&@1| +0#0000000&||| |e+0#af5f00255&|n|d|i|f| +0#0000000&@54
+@75
+@57|1|6|3|,|0|-|1| @6|5|6|%|
--- /dev/null
+| +0&#ffffff0@74
+|v+0#af5f00255&|a|r| +0#0000000&|e|c|h|o| |=+0#af5f00255&| +0#0000000&|e+0#ffffff16#ff404010|c|h|o|(+0#e000e06#ffffff0|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|e+0#ffffff16#ff404010|c|h|o|(+0#e000e06#ffffff0|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@61
+|#+0#0000e05&| |f|u|n|c|t|i|o|n| +0#0000000&@64
+|e+0#ffffff16#ff404010|c|h|o|(+0#e000e06#ffffff0|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@66
+>#+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|e+0#af5f00255&|c|h|o| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@65
+@75
+@75
+|#+0#0000e05&| |e|x|p|r|e|s@1|i|o|n|s| +0#0000000&@61
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|a+0#00e0e07&|b|s|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@57
+@75
+|a+0#00e0e07&|b|s|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@67
+|c+0#af5f00255&|a|l@1| +0#0000000&|a+0#00e0e07&|b|s|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@62
+|e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&||| |a+0#00e0e07&|b|s|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@54
+@75
+|e+0#af5f00255&|c|h|o| +0#0000000&|a+0#00e0e07&|b|s|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@62
+|e+0#af5f00255&|c|h|o| +0#0000000&|(+0#e000e06&|a+0#00e0e07&|b|s|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&@1| +0#0000000&@60
+@57|1|8|1|,|1| @8|6|3|%|
--- /dev/null
+|e+0#af5f00255#ffffff0|c|h|o| +0#0000000&|(+0#e000e06&|a+0#00e0e07&|b|s|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&@1| +0#0000000&@60
+|e+0#af5f00255&|c|h|o| +0#0000000&|a+0#00e0e07&|b|s|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&|++0#af5f00255&| +0#0000000&|f|o@1| @56
+|e+0#af5f00255&|c|h|o| +0#0000000&|f|o@1| |++0#af5f00255&| +0#0000000&|a+0#00e0e07&|b|s|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@56
+@75
+|F|o@1|(+0#e000e06&|)| +0#0000000&@69
+>c+0#af5f00255&|a|l@1| +0#0000000&|F|o@1|(+0#e000e06&|)| +0#0000000&@64
+|e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&||| |F|o@1|(+0#e000e06&|)| +0#0000000&@56
+@75
+|e+0#af5f00255&|c|h|o| +0#0000000&|F|o@1|(+0#e000e06&|)| +0#0000000&@64
+|e+0#af5f00255&|c|h|o| +0#0000000&|(+0#e000e06&|F+0#0000000&|o@1|(+0#e000e06&|)@1| +0#0000000&@62
+|e+0#af5f00255&|c|h|o| +0#0000000&|F|o@1|(+0#e000e06&|)| +0#0000000&|++0#af5f00255&| +0#0000000&|b|a|r| @58
+|e+0#af5f00255&|c|h|o| +0#0000000&|b|a|r| |++0#af5f00255&| +0#0000000&|F|o@1|(+0#e000e06&|)| +0#0000000&@58
+@75
+@75
+|#+0#0000e05&| |s|c|o|p|e| |m|o|d|i|f|i|e|r|s| |a|n|d| |q|u|a|l|i|f|i|e|d| |n|a|m|e|s| +0#0000000&@37
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|g+0#00e0e07&|:|f+0#0000000&|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|g+0#00e0e07&|:|f+0#0000000&|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@60
+@75
+@57|1|9@1|,|1| @8|6|9|%|
--- /dev/null
+| +0&#ffffff0@74
+|v+0#af5f00255&|a|r| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|b+0#00e0e07&|:|f+0#0000000&|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|b+0#00e0e07&|:|f+0#0000000&|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@60
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|w+0#00e0e07&|:|f+0#0000000&|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+>c+0#af5f00255&|a|l@1| +0#0000000&|w+0#00e0e07&|:|f+0#0000000&|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@60
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|t+0#00e0e07&|:|f+0#0000000&|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|t+0#00e0e07&|:|f+0#0000000&|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@60
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|v+0#00e0e07&|:|f+0#0000000&|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|v+0#00e0e07&|:|f+0#0000000&|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@60
+@75
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|m|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@50
+|c+0#af5f00255&|a|l@1| +0#0000000&|m|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|m|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@60
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|g+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@48
+@57|2|1|7|,|1| @8|7|6|%|
--- /dev/null
+|v+0#af5f00255#ffffff0|a|r| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|g+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@48
+|c+0#af5f00255&|a|l@1| +0#0000000&|g+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@53
+|g+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@58
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|b+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@48
+>c+0#af5f00255&|a|l@1| +0#0000000&|b+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@53
+|b+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@58
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|w+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@48
+|c+0#af5f00255&|a|l@1| +0#0000000&|w+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@53
+|w+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@58
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|t+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@48
+|c+0#af5f00255&|a|l@1| +0#0000000&|t+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@53
+|t+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@58
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|v+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@48
+|c+0#af5f00255&|a|l@1| +0#0000000&|v+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@53
+|v+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@58
+@57|2|3|5|,|1| @8|8|2|%|
--- /dev/null
+|v+0#00e0e07#ffffff0|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@58
+@75
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|m|o|d|u|l|e|#|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@50
+|c+0#af5f00255&|a|l@1| +0#0000000&|m|o|d|u|l|e|#|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+>m|o|d|u|l|e|#|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@60
+@75
+|v+0#af5f00255&|a|r| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|g+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|#|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@48
+|c+0#af5f00255&|a|l@1| +0#0000000&|g+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|#|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@53
+|g+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|#|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@58
+@75
+@75
+|#+0#0000e05&| |n|o|t| |b|u|i|l|t|i|n| |f|u|n|c|t|i|o|n|s| +0#0000000&@51
+@75
+|c+0#af5f00255&|a|l@1| +0#0000000&|g+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|b+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|w+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|t+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|v+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@55
+@57|2|5|3|,|1| @8|8|9|%|
--- /dev/null
+|c+0#af5f00255#ffffff0|a|l@1| +0#0000000&|v+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@55
+@75
+|c+0#af5f00255&|a|l@1| +0#0000000&|<+0#e000e06&|S|I|D|>|s+0#0000000&|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@52
+@75
+|c+0#af5f00255&|a|l@1| +0#0000000&|g+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|.|s|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@44
+>c+0#af5f00255&|a|l@1| +0#0000000&|b+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|.|s|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@44
+|c+0#af5f00255&|a|l@1| +0#0000000&|w+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|.|s|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@44
+|c+0#af5f00255&|a|l@1| +0#0000000&|t+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|.|s|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@44
+|c+0#af5f00255&|a|l@1| +0#0000000&|v+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|.|s|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@44
+@75
+|c+0#af5f00255&|a|l@1| +0#0000000&|s|u|b|s|t|i|t|u|t|e|#|s|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@46
+|c+0#af5f00255&|a|l@1| +0#0000000&|g+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|#|s|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@44
+@75
+|g+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@60
+|b+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@60
+|w+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@60
+|t+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@60
+|v+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@60
+@75
+@57|2|7|1|,|1| @8|9|6|%|
--- /dev/null
+| +0&#ffffff0@74
+|<+0#e000e06&|S|I|D|>|s+0#0000000&|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@57
+@75
+|g+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|.|s|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@49
+|b+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|.|s|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@49
+>w+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|.|s|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@49
+|t+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|.|s|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@49
+|v+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|.|s|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@49
+@75
+|s|u|b|s|t|i|t|u|t|e|#|s|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@51
+|g+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|#|s|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@49
+@75
+|~+0#4040ff13&| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+| +0#0000000&@56|2|8|9|,|1| @8|B|o|t|
|#+0#0000e05&| |I|s@1|u|e| |#|1|6|9|6|5| |(|v|i|m| |s|y|n|t|a|x|:| |w|r|o|n|g| |h|i|g|h|l|i|g|h|t| |w|i|t|h| |l|a|m|b|d|a|,| |a|u|t|o|l|o|a|d|,| |a|n|d| |f|a|l|s
|e| |k|e|y|w|o|r|d|)| +0#0000000&@64
@75
-|a+0#af5f00255&|u|t|o|c|m|d| +0#0000000&|B+0#00e0003&|u|f|R|e|a|d| +0#0000000&|*+0#e000e06&| +0#0000000&|t+0#00e0e07&|i|m|e|r|_|s|t|a|r|t|(+0#e000e06&|0+0#e000002&|,+0#0000000&| |(+0#0000001#ffff4012|_+0#00e0e07#ffffff0|)+0#0000001#ffff4012| +0#0000000#ffffff0|=+0#0000001#ffff4012|>| +0#0000000#ffffff0|f+0#00e0e07&|#|a|(+0#e000e06&|f+0#e000002&|a|l|s|e|,+0#0000000&| |f+0#e000002&|a|l|s|e|)+0#e000e06&@1| +0#0000000&@16
+|a+0#af5f00255&|u|t|o|c|m|d| +0#0000000&|B+0#00e0003&|u|f|R|e|a|d| +0#0000000&|*+0#e000e06&| +0#0000000&|t+0#00e0e07&|i|m|e|r|_|s|t|a|r|t|(+0#e000e06&|0+0#e000002&|,+0#0000000&| |(+0#0000001#ffff4012|_+0#00e0e07#ffffff0|)+0#0000001#ffff4012| +0#0000000#ffffff0|=+0#0000001#ffff4012|>| +0#0000000#ffffff0|f|#|a|(+0#e000e06&|f+0#e000002&|a|l|s|e|,+0#0000000&| |f+0#e000002&|a|l|s|e|)+0#e000e06&@1| +0#0000000&@16
>a+0#af5f00255&|u|t|o|c|m|d| +0#0000000&@67
@75
|~+0#4040ff13&| @73
|"+0#0000e05&| |i|n|v|a|l|i|d| |e|x|p|r|e|s@1|i|o|n| +0#0000000&@54
|e+0#af5f00255&|x|e|c|u|t|e| +0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&||+0#af5f00255&@1| +0#0000000&@58
@75
-@57|1|9|,|0|-|1| @7|3|1|%|
+@57|1|9|,|0|-|1| @7|3|2|%|
|"+0#0000e05&| |:|e|x|e|c|u|t|e| |w|i|t|h|o|u|t| |{|e|x|p|r|}| +0#0000000&@49
|e+0#af5f00255&|x|e|c|u|t|e||+0#0000000&| |e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@55
@75
-@57|3|7|,|7| @9|7|5|%|
+@57|3|7|,|7| @9|7@1|%|
@75
>"+0#0000e05&| |I|s@1|u|e| |#|9@1|8|7| |(|p|a|r|e|n|t|h|e|s|i|s|e|d| |a|r|g|u|m|e|n|t| |-| |n|o|t| |a| |f|u|n|c|t|i|o|n| |c|a|l@1|)| +0#0000000&@14
@75
-|"+0#0000e05&| +0#0000000&|F+0#0000001#ffff4012|I|X|M|E|:+0#e000e06#ffffff0| +0#0000e05&|e|x|e|c|u|t|e| |i|s| |e|x| |c|o|m@1|a|n|d| |n|o|t| |b|u|i|l|t|i|n| |f|u|n|c|t|i|o|n| +0#0000000&@23
|l+0#af5f00255&|e|t| +0#0000000&|f+0#00e0e07&|o@1| +0#0000000&|=+0#af5f00255&| +0#0000000&|{+0#e000e06&|'+0#e000002&|a|r|g|'|:+0#0000000&| |"+0#e000002&|c|a|l@1| |F|o@1|(|)|"|}+0#e000e06&| +0#0000000&@43
-|e+0#00e0e07&|x|e|c|u|t|e| +0#0000000&|(+0#e000e06&|f+0#00e0e07&|o@1|.+0#af5f00255&|a+0#00e0e07&|r|g|)+0#e000e06&| +0#0000000&@57
+|e+0#af5f00255&|x|e|c|u|t|e| +0#0000000&|(+0#e000e06&|f+0#00e0e07&|o@1|.+0#af5f00255&|a+0#00e0e07&|r|g|)+0#e000e06&| +0#0000000&@57
@75
|~+0#4040ff13&| @73
|~| @73
|~| @73
|~| @73
|~| @73
+|~| @73
| +0#0000000&@56|5@1|,|1| @9|B|o|t|
@2|f+0#af5f00255&|u|n| +0#0000000&|s+0#e000e06&|:|D+0#0000000&|o|T|e|s|t|3|(+0#e000e06&|)| +0#0000000&|a+0#e000e06&|b|o|r|t| +0#0000000&@8|#+0#ffffff16#ff404010| |f|u|n| +0#0000000#ffffff0@37
@4|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|3+0#e000002&| +0#0000000&@62
@2|e+0#af5f00255&|n|d|f|u|n| +0#0000000&@23|#+0#ffffff16#ff404010| |e|n|d|f|u|n| +0#0000000#ffffff0@34
-@2|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|s|:|D|o|T|e|s|t|3|(+0#e000e06&|)| +0#0000000&@54
+@2|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|s+0#00e0e07&|:|D+0#0000000&|o|T|e|s|t|3|(+0#e000e06&|)| +0#0000000&@54
|e+0#af5f00255&|n|d|f|u|n| +0#0000000&@25|#+0#ffffff16#ff404010| |e|n|d|f|u|n| +0#0000000#ffffff0@34
@75
|d+0#af5f00255&|e|f| +0#0000000&|s+0#e000e06&|:|T+0#0000000&|e|s|t|4|(+0#e000e06&|)|:+0#0000000&| |n+0#00e0003&|u|m|b|e|r| +0#0000000&@10|"+0#ffffff16#ff404010| |d|e|f| +0#0000000#ffffff0@37
| +0&#ffffff0@3|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|3+0#e000002&| +0#0000000&@62
@2|e+0#af5f00255&|n|d|f|u|n| +0#0000000&@23|#+0#ffffff16#ff404010| |e|n|d|f|u|n| +0#0000000#ffffff0@34
-@2|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|s|:|D|o|T|e|s|t|3|(+0#e000e06&|)| +0#0000000&@54
+@2|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|s+0#00e0e07&|:|D+0#0000000&|o|T|e|s|t|3|(+0#e000e06&|)| +0#0000000&@54
|e+0#af5f00255&|n|d|f|u|n| +0#0000000&@25|#+0#ffffff16#ff404010| |e|n|d|f|u|n| +0#0000000#ffffff0@34
@75
>d+0#af5f00255&|e|f| +0#0000000&|s+0#e000e06&|:|T+0#0000000&|e|s|t|4|(+0#e000e06&|)|:+0#0000000&| |n+0#00e0003&|u|m|b|e|r| +0#0000000&@10|"+0#ffffff16#ff404010| |d|e|f| +0#0000000#ffffff0@37
@2|d+0#af5f00255&|e|f| +0#0000000&|s+0#e000e06&|:|D+0#0000000&|o|T|e|s|t|6|(+0#e000e06&|)|:+0#0000000&| |n+0#00e0003&|u|m|b|e|r| +0#0000000&@6|"+0#ffffff16#ff404010| |d|e|f| +0#0000000#ffffff0@37
@4|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|6+0#e000002&| +0#0000000&@62
@2|e+0#af5f00255&|n|d@1|e|f| +0#0000000&@23|"+0#ffffff16#ff404010| |e|n|d@1|e|f| +0#0000000#ffffff0@34
-@2>r+0#af5f00255&|e|t|u|r|n| +0#0000000&|s|:|D|o|T|e|s|t|6|(+0#e000e06&|)| +0#0000000&@54
+@2>r+0#af5f00255&|e|t|u|r|n| +0#0000000&|s+0#00e0e07&|:|D+0#0000000&|o|T|e|s|t|6|(+0#e000e06&|)| +0#0000000&@54
|e+0#af5f00255&|n|d|f|u|n| +0#0000000&@25|#+0#ffffff16#ff404010| |e|n|d|f|u|n| +0#0000000#ffffff0@34
@75
|f+0#af5f00255&|o|r| +0#0000000&|d+0#00e0e07&| +0#0000000&|i+0#af5f00255&|n| +0#0000000&|r+0#00e0e07&|a|n|g|e|(+0#e000e06&|1+0#e000002&|,+0#0000000&| |6+0#e000002&|)+0#e000e06&|-+0#af5f00255&|>|r+0#00e0e07&|e|v|e|r|s|e|(+0#e000e06&|)| +0#0000000&@43
@2|f+0#af5f00255&|u|n| +0#0000000&|s+0#e000e06&|:|D+0#0000000&|o|T|e|s|t|3|(+0#e000e06&|)| +0#0000000&|a+0#e000e06&|b|o|r|t| +0#0000000&@8|"+0#0000e05&| |f|u|n| +0#0000000&@37
@4|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|3+0#e000002&| +0#0000000&@62
@2|e+0#af5f00255&|n|d|f|u|n| +0#0000000&@23|"+0#0000e05&| |e|n|d|f|u|n| +0#0000000&@34
-@2|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|s|:|D|o|T|e|s|t|3|(+0#e000e06&|)| +0#0000000&@54
+@2|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|s+0#00e0e07&|:|D+0#0000000&|o|T|e|s|t|3|(+0#e000e06&|)| +0#0000000&@54
|e+0#af5f00255&|n|d|f|u|n| +0#0000000&@25|"+0#0000e05&| |e|n|d|f|u|n| +0#0000000&@34
@75
|d+0#af5f00255&|e|f| +0#0000000&|s+0#e000e06&|:|T+0#0000000&|e|s|t|4|(+0#e000e06&|)|:+0#0000000&| |n+0#00e0003&|u|m|b|e|r| +0#0000000&@10|#+0#0000e05&| |d|e|f| +0#0000000&@37
| +0&#ffffff0@3|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|3+0#e000002&| +0#0000000&@62
@2|e+0#af5f00255&|n|d|f|u|n| +0#0000000&@23|"+0#0000e05&| |e|n|d|f|u|n| +0#0000000&@34
-@2|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|s|:|D|o|T|e|s|t|3|(+0#e000e06&|)| +0#0000000&@54
+@2|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|s+0#00e0e07&|:|D+0#0000000&|o|T|e|s|t|3|(+0#e000e06&|)| +0#0000000&@54
|e+0#af5f00255&|n|d|f|u|n| +0#0000000&@25|"+0#0000e05&| |e|n|d|f|u|n| +0#0000000&@34
@75
>d+0#af5f00255&|e|f| +0#0000000&|s+0#e000e06&|:|T+0#0000000&|e|s|t|4|(+0#e000e06&|)|:+0#0000000&| |n+0#00e0003&|u|m|b|e|r| +0#0000000&@10|#+0#0000e05&| |d|e|f| +0#0000000&@37
@2|d+0#af5f00255&|e|f| +0#0000000&|s+0#e000e06&|:|D+0#0000000&|o|T|e|s|t|6|(+0#e000e06&|)|:+0#0000000&| |n+0#00e0003&|u|m|b|e|r| +0#0000000&@6|#+0#0000e05&| |d|e|f| +0#0000000&@37
@4|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|6+0#e000002&| +0#0000000&@62
@2|e+0#af5f00255&|n|d@1|e|f| +0#0000000&@23|#+0#0000e05&| |e|n|d@1|e|f| +0#0000000&@34
-@2>r+0#af5f00255&|e|t|u|r|n| +0#0000000&|s|:|D|o|T|e|s|t|6|(+0#e000e06&|)| +0#0000000&@54
+@2>r+0#af5f00255&|e|t|u|r|n| +0#0000000&|s+0#00e0e07&|:|D+0#0000000&|o|T|e|s|t|6|(+0#e000e06&|)| +0#0000000&@54
|e+0#af5f00255&|n|d|f|u|n| +0#0000000&@25|"+0#0000e05&| |e|n|d|f|u|n| +0#0000000&@34
@75
|f+0#af5f00255&|o|r| +0#0000000&|d+0#00e0e07&| +0#0000000&|i+0#af5f00255&|n| +0#0000000&|r+0#00e0e07&|a|n|g|e|(+0#e000e06&|1+0#e000002&|,+0#0000000&| |6+0#e000002&|)+0#e000e06&|-+0#af5f00255&|>|r+0#00e0e07&|e|v|e|r|s|e|(+0#e000e06&|)| +0#0000000&@43
->"+0#0000e05#ffffff0| |V|i|m| |:|m|a|t|c|h|,| |:|2|m|a|t|c|h| |a|n|d| |:|3|m|a|t|c|h| |c|o|m@1|a|n|d|s| +0#0000000&@32
+>"+0#0000e05#ffffff0| |V|i|m| |:|m|a|t|c|h| |c|o|m@1|a|n|d| +0#0000000&@54
+@75
@75
|m+0#af5f00255&|a|t|c|h| +0#0000000&|F+0#00e0003&|o@1|G|r|o|u|p| +0#0000000&|/+0#e000e06&|F+0#0000000&|o@1|/+0#e000e06&| +0#0000000&@54
|m+0#af5f00255&|a|t|c|h| +0#0000000&@69
|3+0#af5f00255&|m|a|t|c|h| +0#0000000&|n+0#00e0003&|o|n|e| +0#0000000&@63
@75
@75
-|"+0#0000e05&| |D|i|f@1|e|r|e|n|t|i|a|t|e| |m|a|p|(|)| |f|r|o|m| |:|m|a|p| +0#0000000&@43
+|"+0#0000e05&| |D|i|f@1|e|r|e|n|t|i|a|t|e| |m|a|t|c|h|(|)| |f|r|o|m| |:|m|a|t|c|h| +0#0000000&@39
@75
|c+0#af5f00255&|a|l@1| +0#0000000&|m+0#00e0e07&|a|t|c|h|(+0#e000e06&|h+0#00e0e07&|a|y|s|t|a|c|k|,+0#0000000&| |'+0#e000002&|n|e@1|d|l|e|'|)+0#e000e06&| +0#0000000&@44
-|c+0#af5f00255&|a|l@1| +0#0000000&|m+0#00e0e07&|a|t|c|h| +0#0000000&|(+0#e000e06&|h+0#00e0e07&|a|y|s|t|a|c|k|,+0#0000000&| |'+0#e000002&|n|e@1|d|l|e|'|)+0#e000e06&| +0#0000000&@43
@57|1|,|1| @10|T|o|p|
-| +0&#ffffff0@74
+|3+0#af5f00255#ffffff0|m|a|t|c|h| +0#0000000&|n+0#00e0003&|o|n|e| +0#0000000&@63
@75
-|"+0#0000e05&| |D|i|f@1|e|r|e|n|t|i|a|t|e| |m|a|p|(|)| |f|r|o|m| |:|m|a|p| +0#0000000&@43
@75
-|c+0#af5f00255&|a|l@1| +0#0000000&|m+0#00e0e07&|a|t|c|h|(+0#e000e06&|h+0#00e0e07&|a|y|s|t|a|c|k|,+0#0000000&| |'+0#e000002&|n|e@1|d|l|e|'|)+0#e000e06&| +0#0000000&@44
->c+0#af5f00255&|a|l@1| +0#0000000&|m+0#00e0e07&|a|t|c|h| +0#0000000&|(+0#e000e06&|h+0#00e0e07&|a|y|s|t|a|c|k|,+0#0000000&| |'+0#e000002&|n|e@1|d|l|e|'|)+0#e000e06&| +0#0000000&@43
+|"+0#0000e05&| |D|i|f@1|e|r|e|n|t|i|a|t|e| |m|a|t|c|h|(|)| |f|r|o|m| |:|m|a|t|c|h| +0#0000000&@39
+@75
+>c+0#af5f00255&|a|l@1| +0#0000000&|m+0#00e0e07&|a|t|c|h|(+0#e000e06&|h+0#00e0e07&|a|y|s|t|a|c|k|,+0#0000000&| |'+0#e000002&|n|e@1|d|l|e|'|)+0#e000e06&| +0#0000000&@44
+|c+0#af5f00255&|a|l@1| +0#0000000&|m+0#00e0e07&|a|t|c|h| +0#0000000&|(+0#e000e06&|h+0#00e0e07&|a|y|s|t|a|c|k|,+0#0000000&| |'+0#e000002&|n|e@1|d|l|e|'|)+0#e000e06&| +0#0000000&@43
@75
|f+0#af5f00255&|u|n|c|t|i|o|n| +0#0000000&|F|o@1|(+0#e000e06&|)| +0#0000000&@60
@2|m+0#af5f00255&|a|t|c|h| +0#0000000&|F+0#00e0003&|o@1|G|r|o|u|p| +0#0000000&|/+0#e000e06&|F+0#0000000&|o@1|/+0#e000e06&| +0#0000000&@52
|e+0#af5f00255&|n|d|f|u|n|c|t|i|o|n| +0#0000000&@63
@75
|d+0#af5f00255&|e|f| +0#0000000&|F|o@1|(+0#e000e06&|)| +0#0000000&@65
+@2|#+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@63
@2|m+0#af5f00255&|a|t|c|h| +0#0000000&|F+0#00e0003&|o@1|G|r|o|u|p| +0#0000000&|/+0#e000e06&|F+0#0000000&|o@1|/+0#e000e06&| +0#0000000&@52
-@2|m+0#af5f00255&|a|t|c|h|(+0#e000e06&|h+0#00e0e07&|a|y|s|t|a|c|k|,+0#0000000&| |'+0#e000002&|n|e@1|d|l|e|'|)+0#e000e06&| +0#0000000&@47
-@2|#+0#0000e05&| +0#0000000&|E+0#e000e06&|r@1|o|r|:| +0#0000e05&|b|a|d| |:|m|a|t|c|h| |c|o|m@1|a|n|d| |-| |t|r|a|i|l|i|n|g| |c|h|a|r|a|c|t|e|r|s| +0#0000000&@23
-@2|m+0#af5f00255&|a|t|c|h| +0#0000000&|(+0#e000e06&|h+0#00e0e07&|a|y|s|t|a|c|k|,+0#0000000&| |'+0#e000002&|n|e@1|d|l|e|'|)+0#e000e06&| +0#0000000&@46
-|e+0#af5f00255&|n|d@1|e|f| +0#0000000&@68
-@57|1|9|,|1| @9|B|o|t|
+@2|#+0#0000e05&| |f|u|n|c|t|i|o|n| +0#0000000&@62
+@2|m+0#00e0e07&|a|t|c|h|(+0#e000e06&|h+0#00e0e07&|a|y|s|t|a|c|k|,+0#0000000&| |'+0#e000002&|n|e@1|d|l|e|'|)+0#e000e06&| +0#0000000&@47
+@57|1|9|,|1| @9|7|6|%|
--- /dev/null
+| +0&#ffffff0@1|m+0#00e0e07&|a|t|c|h|(+0#e000e06&|h+0#00e0e07&|a|y|s|t|a|c|k|,+0#0000000&| |'+0#e000002&|n|e@1|d|l|e|'|)+0#e000e06&| +0#0000000&@47
+@2|#+0#0000e05&| +0#0000000&|E+0#e000e06&|r@1|o|r|:| +0#0000e05&|b|a|d| |:|m|a|t|c|h| |c|o|m@1|a|n|d| |-| |t|r|a|i|l|i|n|g| |c|h|a|r|a|c|t|e|r|s| +0#0000000&@23
+@2|m+0#af5f00255&|a|t|c|h| +0#0000000&|(+0#e000e06&|h+0#00e0e07&|a|y|s|t|a|c|k|,+0#0000000&| |'+0#e000002&|n|e@1|d|l|e|'|)+0#e000e06&| +0#0000000&@46
+|e+0#af5f00255&|n|d@1|e|f| +0#0000000&@68
+> @74
+|~+0#4040ff13&| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+| +0#0000000&@56|3|6|,|0|-|1| @7|B|o|t|
@75
|d+0#af5f00255&|e|f| +0#0000000&|T|e|s|t|(+0#e000e06&|)| +0#0000000&@64
@1| +0#00e0e07&|s|t|r|[+0#0000000&|s+0#00e0e07&|]+0#0000000&| @66
-@2|s|t|r|(+0#e000e06&|s+0#00e0e07&|)+0#e000e06&| +0#0000000&@66
+@2|s+0#ffffff16#ff404010|t|r|(+0#e000e06#ffffff0|s+0#00e0e07&|)+0#e000e06&| +0#0000000&@66
|e+0#af5f00255&|n|d@1|e|f| +0#0000000&@68
@75
|~+0#4040ff13&| @73
--- /dev/null
+>"+0#0000e05#ffffff0| |V|i|m| |f|u|n|c|t|i|o|n| |c|a|l@1|s| +0#0000000&@54
+|"+0#0000e05&| |V|I|M|_|S|E|T|U|P| |h|i|g|h|l|i|g|h|t| |l|i|n|k| |v|i|m|U|s|e|r|F|u|n|c| |T|o|d|o| +0#0000000&@31
+@75
+@75
+|c+0#af5f00255&|a|l@1| +0#0000000&|a+0#00e0e07&|b|s|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@62
+@75
+@75
+|"+0#0000e05&| |c|o|m@1|a|n|d|/|f|u|n|c|t|i|o|n| |d|i|s|t|i|n|c|t|i|o|n| +0#0000000&@44
+@75
+|"+0#0000e05&| |a|p@1|e|n|d| |b|r|o|w|s|e| |c|a|l@1| |c|h|d|i|r| |c|o|n|f|i|r|m| |c|o|p|y| |d|e|l|e|t|e| |e|v|a|l| |e|x|e|c|u|t|e| |f|i|l|t|e|r| |f|u|n|c|t|i|o|n
+|"| |i|n|s|e|r|t| |j|o|i|n| |m|a|p| |m|a|t|c|h| |m|o|d|e| |s|o|r|t| |s|p|l|i|t| |s|u|b|s|t|i|t|u|t|e| |s|w|a|p|n|a|m|e| |t|y|p|e| +0#0000000&@10
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|a|p@1|e|n|d| |=+0#af5f00255&| +0#0000000&|a+0#00e0e07&|p@1|e|n|d|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@51
+|c+0#af5f00255&|a|l@1| +0#0000000&|a+0#00e0e07&|p@1|e|n|d|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@59
+|"+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|a+0#af5f00255&|p@1|e|n|d| +0#0000000&@68
+|.+0#af5f00255&| +0#0000000&@73
+|"+0#0000e05&| |b|a|d| |c|o|m@1|a|n|d| +0#0000000&@61
+|a|p@1|e|n|d|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@64
+@57|1|,|1| @10|T|o|p|
--- /dev/null
+|c+0#af5f00255#ffffff0|a|l@1| +0#0000000&|a+0#00e0e07&|p@1|e|n|d|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@59
+|"+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|a+0#af5f00255&|p@1|e|n|d| +0#0000000&@68
+|.+0#af5f00255&| +0#0000000&@73
+|"+0#0000e05&| |b|a|d| |c|o|m@1|a|n|d| +0#0000000&@61
+>a|p@1|e|n|d|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@64
+|a|p@1|e|n|d| |(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@63
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|b|r|o|w|s|e| |=+0#af5f00255&| +0#0000000&|b+0#00e0e07&|r|o|w|s|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@51
+|c+0#af5f00255&|a|l@1| +0#0000000&|b+0#00e0e07&|r|o|w|s|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@59
+|"+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|b+0#af5f00255&|r|o|w|s|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@64
+|b+0#af5f00255&|r|o|w|s|e| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@63
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|c|a|l@1| |=+0#af5f00255&| +0#0000000&|c+0#00e0e07&|a|l@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|c+0#00e0e07&|a|l@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@61
+|"+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|c+0#af5f00255&|a|l@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@66
+|c+0#af5f00255&|a|l@1| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@65
+@57|1|9|,|1| @10|5|%|
--- /dev/null
+|c+0#af5f00255#ffffff0|a|l@1| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@65
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|c|h|d|i|r| |=+0#af5f00255&| +0#0000000&|c+0#00e0e07&|h|d|i|r|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@53
+|c+0#af5f00255&|a|l@1| +0#0000000&|c+0#00e0e07&|h|d|i|r|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@60
+|"+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+>c+0#af5f00255&|h|d|i|r|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@65
+|c+0#af5f00255&|h|d|i|r| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@64
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|c|o|n|f|i|r|m| |=+0#af5f00255&| +0#0000000&|c+0#00e0e07&|o|n|f|i|r|m|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@49
+|c+0#af5f00255&|a|l@1| +0#0000000&|c+0#00e0e07&|o|n|f|i|r|m|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@58
+|"+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|c+0#af5f00255&|o|n|f|i|r|m|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@63
+|c+0#af5f00255&|o|n|f|i|r|m| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@62
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|c|o|p|y| |=+0#af5f00255&| +0#0000000&|c+0#00e0e07&|o|p|y|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|c+0#00e0e07&|o|p|y|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@61
+|"+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|c+0#af5f00255&|o|p|y|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@66
+|c+0#af5f00255&|o|p|y| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@65
+@57|3|7|,|1| @9|1|2|%|
--- /dev/null
+|c+0#af5f00255#ffffff0|o|p|y| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@65
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|d|e|l|e|t|e| |=+0#af5f00255&| +0#0000000&|d+0#00e0e07&|e|l|e|t|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@51
+|c+0#af5f00255&|a|l@1| +0#0000000&|d+0#00e0e07&|e|l|e|t|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@59
+|"+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+>d+0#af5f00255&|e|l|e|t|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@64
+|d+0#af5f00255&|e|l|e|t|e| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@63
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|e|v|a|l| |=+0#af5f00255&| +0#0000000&|e+0#00e0e07&|v|a|l|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|e+0#00e0e07&|v|a|l|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@61
+|"+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|e+0#af5f00255&|v|a|l|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@66
+|e+0#af5f00255&|v|a|l| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@65
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|e|x|e|c|u|t|e| |=+0#af5f00255&| +0#0000000&|e+0#00e0e07&|x|e|c|u|t|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@49
+|c+0#af5f00255&|a|l@1| +0#0000000&|e+0#00e0e07&|x|e|c|u|t|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@58
+|"+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|e+0#af5f00255&|x|e|c|u|t|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@63
+|e+0#af5f00255&|x|e|c|u|t|e| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@62
+@57|5@1|,|1| @9|1|9|%|
--- /dev/null
+|e+0#af5f00255#ffffff0|x|e|c|u|t|e| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@62
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|f|i|l|t|e|r| |=+0#af5f00255&| +0#0000000&|f+0#00e0e07&|i|l|t|e|r|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@51
+|c+0#af5f00255&|a|l@1| +0#0000000&|f+0#00e0e07&|i|l|t|e|r|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@59
+|"+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+>f+0#af5f00255&|i|l|t|e|r|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@64
+|f+0#af5f00255&|i|l|t|e|r| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@63
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|f|u|n|c|t|i|o|n| |=+0#af5f00255&| +0#0000000&|f+0#00e0e07&|u|n|c|t|i|o|n|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@47
+|c+0#af5f00255&|a|l@1| +0#0000000&|f+0#00e0e07&|u|n|c|t|i|o|n|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@57
+|"+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|f+0#af5f00255&|u|n|c|t|i|o|n|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@62
+|f+0#af5f00255&|u|n|c|t|i|o|n| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@61
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|i|n|s|e|r|t| |=+0#af5f00255&| +0#0000000&|i+0#00e0e07&|n|s|e|r|t|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@51
+|c+0#af5f00255&|a|l@1| +0#0000000&|i+0#00e0e07&|n|s|e|r|t|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@59
+|"+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|i+0#af5f00255&|n|s|e|r|t| +0#0000000&@68
+|.+0#af5f00255&| +0#0000000&@73
+@57|7|3|,|1| @9|2|7|%|
--- /dev/null
+|.+0#af5f00255#ffffff0| +0#0000000&@73
+|"+0#0000e05&| |b|a|d| |c|o|m@1|a|n|d| +0#0000000&@61
+|i|n|s|e|r|t|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@64
+|i|n|s|e|r|t| |(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@63
+@75
+>l+0#af5f00255&|e|t| +0#0000000&|j|o|i|n| |=+0#af5f00255&| +0#0000000&|j+0#00e0e07&|o|i|n|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|j+0#00e0e07&|o|i|n|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@61
+|"+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|j+0#af5f00255&|o|i|n|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@66
+|j+0#af5f00255&|o|i|n| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@65
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|m|a|p| |=+0#af5f00255&| +0#0000000&|m+0#00e0e07&|a|p|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@57
+|c+0#af5f00255&|a|l@1| +0#0000000&|m+0#00e0e07&|a|p|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@62
+|"+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|m+0#af5f00255&|a|p|(+0#0000000&|4|2|)| @67
+|m+0#af5f00255&|a|p| +0#0000000&|(|4|2|)| @66
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|m|a|t|c|h| |=+0#af5f00255&| +0#0000000&|m+0#00e0e07&|a|t|c|h|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@53
+|c+0#af5f00255&|a|l@1| +0#0000000&|m+0#00e0e07&|a|t|c|h|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@60
+@57|9|1|,|1| @9|3|4|%|
--- /dev/null
+|c+0#af5f00255#ffffff0|a|l@1| +0#0000000&|m+0#00e0e07&|a|t|c|h|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@60
+|"+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|m+0#af5f00255&|a|t|c|h|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@65
+|m+0#af5f00255&|a|t|c|h| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@64
+@75
+>l+0#af5f00255&|e|t| +0#0000000&|s|o|r|t| |=+0#af5f00255&| +0#0000000&|s+0#00e0e07&|o|r|t|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|s+0#00e0e07&|o|r|t|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@61
+|"+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|s+0#af5f00255&|o|r|t|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@66
+|s+0#af5f00255&|o|r|t| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@65
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|s|p|l|i|t| |=+0#af5f00255&| +0#0000000&|s+0#00e0e07&|p|l|i|t|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@53
+|c+0#af5f00255&|a|l@1| +0#0000000&|s+0#00e0e07&|p|l|i|t|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@60
+|"+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|s+0#af5f00255&|p|l|i|t|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@65
+|s+0#af5f00255&|p|l|i|t| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@64
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|s|u|b|s|t|i|t|u|t|e| |=+0#af5f00255&| +0#0000000&|s+0#00e0e07&|u|b|s|t|i|t|u|t|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@43
+|c+0#af5f00255&|a|l@1| +0#0000000&|s+0#00e0e07&|u|b|s|t|i|t|u|t|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+@57|1|0|9|,|1| @8|4|1|%|
--- /dev/null
+|c+0#af5f00255#ffffff0|a|l@1| +0#0000000&|s+0#00e0e07&|u|b|s|t|i|t|u|t|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|"+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|s+0#af5f00255&|u|b|s|t|i|t|u|t|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@60
+|s+0#af5f00255&|u|b|s|t|i|t|u|t|e| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@59
+@75
+>l+0#af5f00255&|e|t| +0#0000000&|s|w|a|p|n|a|m|e| |=+0#af5f00255&| +0#0000000&|s+0#00e0e07&|w|a|p|n|a|m|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@47
+|c+0#af5f00255&|a|l@1| +0#0000000&|s+0#00e0e07&|w|a|p|n|a|m|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@57
+|"+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|s+0#af5f00255&|w|a|p|n|a|m|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@62
+|s+0#af5f00255&|w|a|p|n|a|m|e| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@61
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|t|y|p|e| |=+0#af5f00255&| +0#0000000&|t+0#00e0e07&|y|p|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|t+0#00e0e07&|y|p|e|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@61
+|"+0#0000e05&| |V|i|m|9| |c|o|m@1|a|n|d| +0#0000000&@60
+|"+0#0000e05&| |t|y|p|e|(|4|2|)| +0#0000000&@64
+|"+0#0000e05&| |t|y|p|e| |(|4|2|)| +0#0000000&@63
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|u|n|i|q| |=+0#af5f00255&| +0#0000000&|u+0#00e0e07&|n|i|q|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|u+0#00e0e07&|n|i|q|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@61
+@57|1|2|7|,|1| @8|4|9|%|
--- /dev/null
+|c+0#af5f00255#ffffff0|a|l@1| +0#0000000&|u+0#00e0e07&|n|i|q|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@61
+|"+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|u+0#af5f00255&|n|i|q|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@66
+|u+0#af5f00255&|n|i|q| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@65
+@75
+> @74
+|"+0#0000e05&| |e|r@1|o|r|s| +0#0000000&@66
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|f+0#ffffff16#ff404010|o@1|(+0#e000e06#ffffff0|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@57
+|c+0#af5f00255&|a|l@1| +0#0000000&|f+0#ffffff16#ff404010|o@1|(+0#e000e06#ffffff0|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@62
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|i|f| |=+0#af5f00255&| +0#0000000&|i+0#ffffff16#ff404010|f|(+0#e000e06#ffffff0|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@59
+|c+0#af5f00255&|a|l@1| +0#0000000&|i+0#ffffff16#ff404010|f|(+0#e000e06#ffffff0|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@63
+|"+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|i+0#af5f00255&|f|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&||| |.+0#af5f00255&@1| +0#0000000&||| |e+0#af5f00255&|n|d|i|f| +0#0000000&@55
+|i+0#af5f00255&|f| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&||| |.+0#af5f00255&@1| +0#0000000&||| |e+0#af5f00255&|n|d|i|f| +0#0000000&@54
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|e|c|h|o| |=+0#af5f00255&| +0#0000000&|e+0#ffffff16#ff404010|c|h|o|(+0#e000e06#ffffff0|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|e+0#ffffff16#ff404010|c|h|o|(+0#e000e06#ffffff0|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@61
+@57|1|4|5|,|0|-|1| @6|5|6|%|
--- /dev/null
+|c+0#af5f00255#ffffff0|a|l@1| +0#0000000&|e+0#ffffff16#ff404010|c|h|o|(+0#e000e06#ffffff0|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@61
+|"+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
+|e+0#af5f00255&|c|h|o|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@66
+|e+0#af5f00255&|c|h|o| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@65
+@75
+> @74
+|"+0#0000e05&| |e|x|p|r|e|s@1|i|o|n|s| +0#0000000&@61
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|a+0#00e0e07&|b|s|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@57
+@75
+|e+0#af5f00255&|c|h|o| +0#0000000&|a+0#00e0e07&|b|s|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@62
+|e+0#af5f00255&|c|h|o| +0#0000000&|(+0#e000e06&|a+0#00e0e07&|b|s|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&@1| +0#0000000&@60
+|e+0#af5f00255&|c|h|o| +0#0000000&|a+0#00e0e07&|b|s|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&|++0#af5f00255&| +0#0000000&|f|o@1| @56
+|e+0#af5f00255&|c|h|o| +0#0000000&|f|o@1| |++0#af5f00255&| +0#0000000&|a+0#00e0e07&|b|s|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@56
+@75
+|e+0#af5f00255&|c|h|o| +0#0000000&|F|o@1|(+0#e000e06&|)| +0#0000000&@64
+|e+0#af5f00255&|c|h|o| +0#0000000&|(+0#e000e06&|F+0#0000000&|o@1|(+0#e000e06&|)@1| +0#0000000&@62
+|e+0#af5f00255&|c|h|o| +0#0000000&|F|o@1|(+0#e000e06&|)| +0#0000000&|++0#af5f00255&| +0#0000000&|b|a|r| @58
+|e+0#af5f00255&|c|h|o| +0#0000000&|b|a|r| |++0#af5f00255&| +0#0000000&|F|o@1|(+0#e000e06&|)| +0#0000000&@58
+@57|1|6|3|,|0|-|1| @6|6|3|%|
--- /dev/null
+|e+0#af5f00255#ffffff0|c|h|o| +0#0000000&|b|a|r| |++0#af5f00255&| +0#0000000&|F|o@1|(+0#e000e06&|)| +0#0000000&@58
+@75
+@75
+|"+0#0000e05&| |s|c|o|p|e| |m|o|d|i|f|i|e|r|s| |a|n|d| |q|u|a|l|i|f|i|e|d| |n|a|m|e|s| +0#0000000&@37
+@75
+>l+0#af5f00255&|e|t| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|s+0#00e0e07&|:|f+0#0000000&|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|s+0#00e0e07&|:|f+0#0000000&|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@60
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|g+0#00e0e07&|:|f+0#0000000&|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|g+0#00e0e07&|:|f+0#0000000&|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@60
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|b+0#00e0e07&|:|f+0#0000000&|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|b+0#00e0e07&|:|f+0#0000000&|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@60
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|w+0#00e0e07&|:|f+0#0000000&|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|w+0#00e0e07&|:|f+0#0000000&|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@60
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|t+0#00e0e07&|:|f+0#0000000&|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|t+0#00e0e07&|:|f+0#0000000&|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@60
+@57|1|8|1|,|1| @8|7|1|%|
--- /dev/null
+|c+0#af5f00255#ffffff0|a|l@1| +0#0000000&|t+0#00e0e07&|:|f+0#0000000&|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@60
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|l+0#00e0e07&|:|f+0#0000000&|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|l+0#00e0e07&|:|f+0#0000000&|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@60
+@75
+>l+0#af5f00255&|e|t| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|a+0#00e0e07&|:|f+0#0000000&|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|a+0#00e0e07&|:|f+0#0000000&|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@60
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|v+0#00e0e07&|:|f+0#0000000&|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|v+0#00e0e07&|:|f+0#0000000&|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@60
+@75
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|m|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@50
+|c+0#af5f00255&|a|l@1| +0#0000000&|m|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|s+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@48
+|c+0#af5f00255&|a|l@1| +0#0000000&|m|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|g+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@48
+@57|1|9@1|,|1| @8|7|8|%|
--- /dev/null
+|l+0#af5f00255#ffffff0|e|t| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|g+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@48
+|c+0#af5f00255&|a|l@1| +0#0000000&|g+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@53
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|b+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@48
+|c+0#af5f00255&|a|l@1| +0#0000000&|b+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@53
+> @74
+|l+0#af5f00255&|e|t| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|w+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@48
+|c+0#af5f00255&|a|l@1| +0#0000000&|w+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@53
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|t+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@48
+|c+0#af5f00255&|a|l@1| +0#0000000&|t+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@53
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|l+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@48
+|c+0#af5f00255&|a|l@1| +0#0000000&|l+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@53
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|a+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@48
+|c+0#af5f00255&|a|l@1| +0#0000000&|a+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@53
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|v+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@48
+@57|2|1|7|,|0|-|1| @6|8|5|%|
--- /dev/null
+|l+0#af5f00255#ffffff0|e|t| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|v+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@48
+|c+0#af5f00255&|a|l@1| +0#0000000&|v+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|.|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@53
+@75
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|m|o|d|u|l|e|#|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@50
+>c+0#af5f00255&|a|l@1| +0#0000000&|m|o|d|u|l|e|#|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@55
+@75
+|l+0#af5f00255&|e|t| +0#0000000&|f|o@1| |=+0#af5f00255&| +0#0000000&|g+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|#|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@48
+|c+0#af5f00255&|a|l@1| +0#0000000&|g+0#00e0e07&|:|m+0#0000000&|o|d|u|l|e|#|f|o@1|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@53
+@75
+@75
+|"+0#0000e05&| |n|o|t| |b|u|i|l|t|i|n| |f|u|n|c|t|i|o|n|s| +0#0000000&@51
+@75
+|c+0#af5f00255&|a|l@1| +0#0000000&|s+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|g+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|b+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|w+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|t+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|l+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@55
+@57|2|3|5|,|1| @8|9|3|%|
--- /dev/null
+|c+0#af5f00255#ffffff0|a|l@1| +0#0000000&|l+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|a+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@55
+|c+0#af5f00255&|a|l@1| +0#0000000&|v+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@55
+@75
+|c+0#af5f00255&|a|l@1| +0#0000000&|<+0#e000e06&|S|I|D|>|s+0#0000000&|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@52
+> @74
+|c+0#af5f00255&|a|l@1| +0#0000000&|s+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|.|s|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@44
+|c+0#af5f00255&|a|l@1| +0#0000000&|g+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|.|s|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@44
+|c+0#af5f00255&|a|l@1| +0#0000000&|b+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|.|s|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@44
+|c+0#af5f00255&|a|l@1| +0#0000000&|w+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|.|s|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@44
+|c+0#af5f00255&|a|l@1| +0#0000000&|t+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|.|s|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@44
+|c+0#af5f00255&|a|l@1| +0#0000000&|l+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|.|s|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@44
+|c+0#af5f00255&|a|l@1| +0#0000000&|a+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|.|s|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@44
+|c+0#af5f00255&|a|l@1| +0#0000000&|v+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|.|s|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@44
+@75
+|c+0#af5f00255&|a|l@1| +0#0000000&|s|u|b|s|t|i|t|u|t|e|#|s|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@46
+|c+0#af5f00255&|a|l@1| +0#0000000&|g+0#00e0e07&|:|s+0#0000000&|u|b|s|t|i|t|u|t|e|#|s|u|b|s|t|i|t|u|t|e|(+0#e000e06&|)| +0#0000000&@44
+@75
+|~+0#4040ff13&| @73
+| +0#0000000&@56|2|5|3|,|0|-|1| @6|B|o|t|
@8|e+0#af5f00255&|n|d@1|e|f| +0#0000000&@60
|e+0#af5f00255&|n|d|c|l|a|s@1| +0#0000000&@66
@75
-|T|e|s|t|.+0#af5f00255&|n+0#00e0e07&|e|w|(+0#e000e06&|)| +0#0000000&@64
-|T|e|s|t|.+0#af5f00255&|n+0#00e0e07&|e|w|O|t|h|e|r|(+0#e000e06&|)| +0#0000000&@59
-|T|e|s|t|.+0#af5f00255&|n+0#00e0e07&|e|w|y|e|t|a|n|o|t|h|e|r|(+0#e000e06&|)| +0#0000000&@54
+|T|e|s|t|.|n+0#00e0e07&|e|w|(+0#e000e06&|)| +0#0000000&@64
+|T|e|s|t|.|n+0#00e0e07&|e|w|O|t|h|e|r|(+0#e000e06&|)| +0#0000000&@59
+|T|e|s|t|.|n+0#00e0e07&|e|w|y|e|t|a|n|o|t|h|e|r|(+0#e000e06&|)| +0#0000000&@54
|n+0#af5f00255&|e|w| +0#0000000&@71
|q+0#af5f00255&|u|i|t| +0#0000000&@70
|~+0#4040ff13&| @73
--- /dev/null
+vim9script
+# Vim function calls
+# VIM_SETUP highlight link vimUserFunc Todo
+# VIM_SETUP highlight link vim9UserFunc Todo
+
+
+call abs(42)
+abs(42)
+
+
+# command/function distinction
+
+# append browse call chdir confirm copy delete eval execute filter function
+# insert join map match mode sort split substitute swapname type
+
+var append = append(42)
+call append(42)
+# function
+append(42)
+# Legacy command
+# append (42)
+
+var browse = browse(42)
+call browse(42)
+# function
+browse(42)
+# command
+browse (42)
+
+var call = call(42)
+call call(42)
+# function
+call(42)
+# command
+call (42)
+
+var chdir = chdir(42)
+call chdir(42)
+# function
+chdir(42)
+# command
+chdir (42)
+
+var confirm = confirm(42)
+call confirm(42)
+# function
+confirm(42)
+# command
+confirm (42)
+
+var copy = copy(42)
+call copy(42)
+# function
+copy(42)
+# command
+copy (42)
+
+var delete = delete(42)
+call delete(42)
+# function
+delete(42)
+# command
+delete (42)
+
+var eval = eval(42)
+call eval(42)
+# function
+eval(42)
+# command
+eval (42)
+
+var execute = execute(42)
+call execute(42)
+# function
+execute(42)
+# command
+execute (42)
+
+var filter = filter(42)
+call filter(42)
+# function
+filter(42)
+# command
+filter (42)
+
+var function = function(42)
+call function(42)
+# function
+function(42)
+# command
+function (42)
+
+var insert = insert(42)
+call insert(42)
+# function
+insert(42)
+# Legacy command
+# insert (42)
+
+var join = join(42)
+call join(42)
+# function
+join(42)
+# command
+join (42)
+
+var map = map(42)
+call map(42)
+# function
+map(42)
+# command
+map (42)
+
+var match = match(42)
+call match(42)
+# function
+match(42)
+# command
+match (42)
+
+var sort = sort(42)
+call sort(42)
+# function
+sort(42)
+# command
+sort (42)
+
+var split = split(42)
+call split(42)
+# function
+split(42)
+# command
+split (42)
+
+var substitute = substitute(42)
+call substitute(42)
+# function
+substitute(42)
+# command
+substitute (42)
+
+var swapname = swapname(42)
+call swapname(42)
+# function
+swapname(42)
+# command
+swapname (42)
+
+var type = type(42)
+call type(42)
+# function
+type(42)
+# command
+type (42)
+
+var uniq = uniq(42)
+call uniq(42)
+# function
+uniq(42)
+# command
+uniq (42)
+
+
+# errors
+
+var foo = foo(42)
+call foo(42)
+foo(42)
+
+var if = if(42)
+call if(42)
+# function
+if(42) | .. | endif
+# command
+if (42) | .. | endif
+
+var echo = echo(42)
+call echo(42)
+# function
+echo(42)
+# command
+echo (42)
+
+
+# expressions
+
+var foo = abs(42)
+
+abs(42)
+call abs(42)
+echo "Foo" | abs(42)
+
+echo abs(42)
+echo (abs(42))
+echo abs(42) + foo
+echo foo + abs(42)
+
+Foo()
+call Foo()
+echo "Foo" | Foo()
+
+echo Foo()
+echo (Foo())
+echo Foo() + bar
+echo bar + Foo()
+
+
+# scope modifiers and qualified names
+
+var foo = g:foo(42)
+call g:foo(42)
+
+var foo = b:foo(42)
+call b:foo(42)
+
+var foo = w:foo(42)
+call w:foo(42)
+
+var foo = t:foo(42)
+call t:foo(42)
+
+var foo = v:foo(42)
+call v:foo(42)
+
+
+var foo = module.foo(42)
+call module.foo(42)
+module.foo(42)
+
+var foo = g:module.foo(42)
+call g:module.foo(42)
+g:module.foo(42)
+
+var foo = b:module.foo(42)
+call b:module.foo(42)
+b:module.foo(42)
+
+var foo = w:module.foo(42)
+call w:module.foo(42)
+w:module.foo(42)
+
+var foo = t:module.foo(42)
+call t:module.foo(42)
+t:module.foo(42)
+
+var foo = v:module.foo(42)
+call v:module.foo(42)
+v:module.foo(42)
+
+
+var foo = module#foo(42)
+call module#foo(42)
+module#foo(42)
+
+var foo = g:module#foo(42)
+call g:module#foo(42)
+g:module#foo(42)
+
+
+# not builtin functions
+
+call g:substitute()
+call b:substitute()
+call w:substitute()
+call t:substitute()
+call v:substitute()
+
+call <SID>substitute()
+
+call g:substitute.substitute()
+call b:substitute.substitute()
+call w:substitute.substitute()
+call t:substitute.substitute()
+call v:substitute.substitute()
+
+call substitute#substitute()
+call g:substitute#substitute()
+
+g:substitute()
+b:substitute()
+w:substitute()
+t:substitute()
+v:substitute()
+
+<SID>substitute()
+
+g:substitute.substitute()
+b:substitute.substitute()
+w:substitute.substitute()
+t:substitute.substitute()
+v:substitute.substitute()
+
+substitute#substitute()
+g:substitute#substitute()
+
" Issue #9987 (parenthesised argument - not a function call)
-" FIXME: execute is ex command not builtin function
let foo = {'arg': "call Foo()"}
execute (foo.arg)
-" Vim :match, :2match and :3match commands
+" Vim :match command
+
match FooGroup /Foo/
match
3match none
-" Differentiate map() from :map
+" Differentiate match() from :match
call match(haystack, 'needle')
call match (haystack, 'needle')
endfunction
def Foo()
+ # command
match FooGroup /Foo/
+ # function
match(haystack, 'needle')
# Error: bad :match command - trailing characters
match (haystack, 'needle')
enddef
+
--- /dev/null
+" Vim function calls
+" VIM_SETUP highlight link vimUserFunc Todo
+
+
+call abs(42)
+
+
+" command/function distinction
+
+" append browse call chdir confirm copy delete eval execute filter function
+" insert join map match mode sort split substitute swapname type
+
+let append = append(42)
+call append(42)
+" command
+append
+.
+" bad command
+append(42)
+append (42)
+
+let browse = browse(42)
+call browse(42)
+" command
+browse(42)
+browse (42)
+
+let call = call(42)
+call call(42)
+" command
+call(42)
+call (42)
+
+let chdir = chdir(42)
+call chdir(42)
+" command
+chdir(42)
+chdir (42)
+
+let confirm = confirm(42)
+call confirm(42)
+" command
+confirm(42)
+confirm (42)
+
+let copy = copy(42)
+call copy(42)
+" command
+copy(42)
+copy (42)
+
+let delete = delete(42)
+call delete(42)
+" command
+delete(42)
+delete (42)
+
+let eval = eval(42)
+call eval(42)
+" command
+eval(42)
+eval (42)
+
+let execute = execute(42)
+call execute(42)
+" command
+execute(42)
+execute (42)
+
+let filter = filter(42)
+call filter(42)
+" command
+filter(42)
+filter (42)
+
+let function = function(42)
+call function(42)
+" command
+function(42)
+function (42)
+
+let insert = insert(42)
+call insert(42)
+" command
+insert
+.
+" bad command
+insert(42)
+insert (42)
+
+let join = join(42)
+call join(42)
+" command
+join(42)
+join (42)
+
+let map = map(42)
+call map(42)
+" command
+map(42)
+map (42)
+
+let match = match(42)
+call match(42)
+" command
+match(42)
+match (42)
+
+let sort = sort(42)
+call sort(42)
+" command
+sort(42)
+sort (42)
+
+let split = split(42)
+call split(42)
+" command
+split(42)
+split (42)
+
+let substitute = substitute(42)
+call substitute(42)
+" command
+substitute(42)
+substitute (42)
+
+let swapname = swapname(42)
+call swapname(42)
+" command
+swapname(42)
+swapname (42)
+
+let type = type(42)
+call type(42)
+" Vim9 command
+" type(42)
+" type (42)
+
+let uniq = uniq(42)
+call uniq(42)
+" command
+uniq(42)
+uniq (42)
+
+
+" errors
+
+let foo = foo(42)
+call foo(42)
+
+let if = if(42)
+call if(42)
+" command
+if(42) | .. | endif
+if (42) | .. | endif
+
+let echo = echo(42)
+call echo(42)
+" command
+echo(42)
+echo (42)
+
+
+" expressions
+
+let foo = abs(42)
+
+echo abs(42)
+echo (abs(42))
+echo abs(42) + foo
+echo foo + abs(42)
+
+echo Foo()
+echo (Foo())
+echo Foo() + bar
+echo bar + Foo()
+
+
+" scope modifiers and qualified names
+
+let foo = s:foo(42)
+call s:foo(42)
+
+let foo = g:foo(42)
+call g:foo(42)
+
+let foo = b:foo(42)
+call b:foo(42)
+
+let foo = w:foo(42)
+call w:foo(42)
+
+let foo = t:foo(42)
+call t:foo(42)
+
+let foo = l:foo(42)
+call l:foo(42)
+
+let foo = a:foo(42)
+call a:foo(42)
+
+let foo = v:foo(42)
+call v:foo(42)
+
+
+let foo = module.foo(42)
+call module.foo(42)
+
+let foo = s:module.foo(42)
+call module.foo(42)
+
+let foo = g:module.foo(42)
+call g:module.foo(42)
+
+let foo = b:module.foo(42)
+call b:module.foo(42)
+
+let foo = w:module.foo(42)
+call w:module.foo(42)
+
+let foo = t:module.foo(42)
+call t:module.foo(42)
+
+let foo = l:module.foo(42)
+call l:module.foo(42)
+
+let foo = a:module.foo(42)
+call a:module.foo(42)
+
+let foo = v:module.foo(42)
+call v:module.foo(42)
+
+
+let foo = module#foo(42)
+call module#foo(42)
+
+let foo = g:module#foo(42)
+call g:module#foo(42)
+
+
+" not builtin functions
+
+call s:substitute()
+call g:substitute()
+call b:substitute()
+call w:substitute()
+call t:substitute()
+call l:substitute()
+call a:substitute()
+call v:substitute()
+
+call <SID>substitute()
+
+call s:substitute.substitute()
+call g:substitute.substitute()
+call b:substitute.substitute()
+call w:substitute.substitute()
+call t:substitute.substitute()
+call l:substitute.substitute()
+call a:substitute.substitute()
+call v:substitute.substitute()
+
+call substitute#substitute()
+call g:substitute#substitute()
+
" All vimCommands are contained by vimIsCommand. {{{2
syn cluster vimCmdList contains=vimAbb,vimAddress,vimAutocmd,vimAugroup,vimBehave,vimCall,vimCatch,vimCommandModifier,vimConst,vimDoautocmd,vimDebuggreedy,vimDef,vimDefFold,vimDelcommand,vimDelFunction,@vimEcho,vimElse,vimEnddef,vimEndfunction,vimEndif,vimExecute,vimIsCommand,vimExtCmd,vimExFilter,vimExMark,vimFiletype,vimFor,vimFunction,vimFunctionFold,vimGrep,vimGrepAdd,vimGlobal,vimHelpgrep,vimHighlight,vimImport,vimLet,vimLoadkeymap,vimLockvar,vimMake,vimMap,vimMark,vimMatch,vimNotFunc,vimNormal,vimProfdel,vimProfile,vimRedir,vimSet,vimSleep,vimSort,vimSyntax,vimSynColor,vimSynLink,vimThrow,vimUniq,vimUnlet,vimUnlockvar,vimUnmap,vimUserCmd,vimVimgrep,vimVimgrepadd,vimMenu,vimMenutranslate,@vim9CmdList,@vimExUserCmdList,vimLua,vimMzScheme,vimPerl,vimPython,vimPython3,vimPythonX,vimRuby,vimTcl
syn cluster vim9CmdList contains=vim9Abstract,vim9Class,vim9Const,vim9Enum,vim9Export,vim9Final,vim9For,vim9Interface,vim9Type,vim9Var
-syn match vimCmdSep "\\\@1<!|" skipwhite nextgroup=@vimCmdList,vimSubst1,vimFunc
+syn match vimCmdSep "\\\@1<!|" skipwhite nextgroup=@vimCmdList,vimSubst1,@vimFunc
syn match vimCmdSep ":\+" skipwhite nextgroup=@vimCmdList,vimSubst1
syn match vimCount contained "\d\+"
syn match vimIsCommand "\<\%(\h\w*\|[23]mat\%[ch]\)\>" nextgroup=vimBang contains=vimCommand
Vim9 syn match vim9LhsRegister "@["0-9\-a-zA-Z#=*+_/]\ze\s\+\%(\.\.\)\=="
-syn cluster vimExprList contains=@vimSpecialVar,vimFunc,vimNumber,vimOper,vimOperParen,vimLambda,vimString,vimVar,@vim9ExprList
+syn cluster vimExprList contains=@vimSpecialVar,@vimFunc,vimNumber,vimOper,vimOperParen,vimLambda,vimString,vimVar,@vim9ExprList
syn cluster vim9ExprList contains=vim9Boolean,vim9LambdaParams,vim9Null
" Insertions And Appends: insert append {{{2
" Call {{{2
" ====
-syn match vimCall "\<call\=\>" skipwhite nextgroup=vimFunc
+syn match vimCall "\<call\=\>" skipwhite nextgroup=@vimFunc
" Debuggreedy {{{2
" ===========
" Augroup : vimAugroupError removed because long augroups caused sync'ing problems. {{{2
" ======= : Trade-off: Increasing synclines with slower editing vs augroup END error checking.
-syn cluster vimAugroupList contains=@vimCmdList,vimFilter,vimFunc,vimLineComment,vimSpecFile,vimOper,vimNumber,vimOperParen,@vimComment,vimString,vimSubst,vimRegister,vimCmplxRepeat,vimNotation,vimCtrlChar,vimContinue
+syn cluster vimAugroupList contains=@vimCmdList,vimFilter,@vimFunc,vimLineComment,vimSpecFile,vimOper,vimNumber,vimOperParen,@vimComment,vimString,vimSubst,vimRegister,vimCmplxRepeat,vimNotation,vimCtrlChar,vimContinue
" define
VimFolda syn region vimAugroup
" Functions: Tag is provided for those who wish to highlight tagged functions {{{2
" =========
-syn cluster vimFunctionBodyCommon contains=@vimCmdList,vimCmplxRepeat,vimContinue,vimCtrlChar,vimDef,vimFBVar,vimFunc,vimFunction,vimNotFunc,vimNumber,vimOper,vimOperParen,vimRegister,vimSpecFile,vimString,vimSubst,vimFunctionFold,vimDefFold,vimCmdSep
+syn cluster vimFunctionBodyCommon contains=@vimCmdList,vimCmplxRepeat,vimContinue,vimCtrlChar,vimDef,vimFBVar,vimFunction,vimNotFunc,vimNumber,vimOper,vimOperParen,vimRegister,vimSpecFile,vimString,vimSubst,vimFunctionFold,vimDefFold,vimCmdSep
syn cluster vimFunctionBodyList contains=@vimFunctionBodyCommon,vimComment,vimLineComment,vimInsert,vimConst,vimLet,vimSearch
-syn cluster vimDefBodyList contains=@vimFunctionBodyCommon,vim9Comment,vim9LineComment,vim9Block,vim9Const,vim9Final,vim9Var,vim9Null,vim9Boolean,vim9For,vim9LhsVariable,vim9LhsVariableList,vim9LhsRegister,vim9Search,@vimSpecialVar
+syn cluster vimDefBodyList contains=@vimFunctionBodyCommon,vim9Comment,vim9LineComment,vim9Block,vim9Const,vim9Final,vim9Var,vim9Null,vim9Boolean,vim9For,vim9LhsVariable,vim9LhsVariableList,vim9LhsRegister,vim9Search,@vimSpecialVar,@vim9Func
syn region vimFunctionPattern contained
\ matchgroup=vimOper
" User-Specified Commands: {{{2
" =======================
-syn cluster vimUserCmdList contains=@vimCmdList,vimCmplxRepeat,@vimComment,vimCtrlChar,vimEscapeBrace,vimFunc,vimNotation,vimNumber,vimOper,vimRegister,vimSpecFile,vimString,vimSubst,vimSubstRep,vimSubstRange
+syn cluster vimUserCmdList contains=@vimCmdList,vimCmplxRepeat,@vimComment,vimCtrlChar,vimEscapeBrace,@vimFunc,vimNotation,vimNumber,vimOper,vimRegister,vimSpecFile,vimString,vimSubst,vimSubstRep,vimSubstRange
syn match vimUserCmd "\<com\%[mand]\>!\=" skipwhite nextgroup=vimUserCmdAttrs,vimUserCmdName contains=vimBang
syn match vimUserCmd +\<com\%[mand]\>!\=\ze\s*\n\s*\%(\\\|["#]\\ \)+ skipwhite skipnl nextgroup=vimUserCmdAttrs,vimUserCmdName contains=vimBang
" Set command and associated set-options (vimOptions) with comment {{{2
syn match vimSet "\<\%(setl\%[ocal]\|setg\%[lobal]\|se\%[t]\)\>" skipwhite nextgroup=vimSetBang,vimCmdSep,vimComment,vimSetArgs
syn region vimSetComment contained start=+"+ skip=+\n\s*\%(\\\||"\\ \)+ end="$" contains=@vimCommentGroup,vimCommentString extend
-syn match vimSetCmdSep contained "|" skipwhite nextgroup=@vimCmdList,vimSubst1,vimFunc
+syn match vimSetCmdSep contained "|" skipwhite nextgroup=@vimCmdList,vimSubst1,@vimFunc
syn match vimSetEscape contained "\\\%(\\[|"]\|.\)"
syn match vimSetBarEscape contained "\\|"
syn match vimSetQuoteEscape contained +\\"+
\ skip="\\\\\|\\[,[:space:]]"
\ end="\ze[,[:space:]]"
\ end="$"
- \ skipwhite nextgroup=vimAutocmdPatternSep,vimAutocmdMod,vimAutocmdBlock
+ \ skipwhite nextgroup=vimAutocmdPatternSep,vimAutocmdMod,vimAutocmdBlock,@vimFunc
\ contains=vimEnvvar,@vimWildcard,vimAutocmdPatternEscape
-syn match vimAutocmdBufferPattern contained "<buffer\%(=\%(\d\+\|abuf\)\)\=>" skipwhite nextgroup=vimAutocmdPatternSep,vimAutocmdMod,vimAutocmdBlock
+syn match vimAutocmdBufferPattern contained "<buffer\%(=\%(\d\+\|abuf\)\)\=>" skipwhite nextgroup=vimAutocmdPatternSep,vimAutocmdMod,vimAutocmdBlock,@vimFunc
" trailing pattern separator comma allowed
syn match vimAutocmdPatternSep contained "," skipwhite nextgroup=@vimAutocmdPattern,vimAutocmdMod,vimAutocmdBlock
syn match vimAutocmdPatternEscape contained "\\."
syn match vimMenutranslateName "\%(\\\s\|\S\)\+" contained contains=vimMenuNotation,vimNotation
syn match vimMenutranslateComment +".*+ contained containedin=vimMenutranslate
+" If, While and Return: {{{2
+" ====================
+syn match vimNotFunc "\%#=1\<\%(if\|el\%[seif]\|retu\%[rn]\|while\)\>" skipwhite nextgroup=@vimExprList,vimNotation
+syn match vimElse "\<el\%[se]\>" skipwhite nextgroup=vimComment,vim9Comment
+syn match vimEndif "\<en\%[dif]\>" skipwhite nextgroup=vimComment,vim9Comment
+
" Angle-Bracket Notation: (tnx to Michael Geddes) {{{2
" ======================
syn case ignore
syn match vimBracket contained "[\\<>]"
syn case match
-" User Function Highlighting: {{{2
-" (following Gautam Iyer's suggestion)
-" ==========================
-syn match vimFunc "\%(\%([sSgGbBwWtTlL]:\|<[sS][iI][dD]>\)\=\%(\w\+\.\)*\I[a-zA-Z0-9_.]*\)\ze\s*(" skipwhite nextgroup=vimOperParen contains=vimFuncEcho,vimFuncName,vimUserFunc,vimExecute
-syn match vimUserFunc contained "\%(\%([sSgGbBwWtTlL]:\|<[sS][iI][dD]>\)\=\%(\w\+\.\)*\I[a-zA-Z0-9_.]*\)\|\<\u[a-zA-Z0-9.]*\>\|\<if\>" contains=vimNotation,vim9MethodName,vim9Super,vim9This
-syn keyword vimFuncEcho contained ec ech echo
-
-syn match vimMap "\<map\%(\s\+(\)\@=" skipwhite nextgroup=vimMapBang,vimMapMod,vimMapLhs
-
" User Command Highlighting: {{{2
-syn match vimUsrCmd '^\s*\zs\u\%(\w*\)\@>\%([(#[]\|\s\+\%([-+*/%]\=\|\.\.\)=\)\@!'
+syn match vimUsrCmd '^\s*\zs\u\%(\w*\)\@>\%([.(#[]\|\s\+\%([-+*/%]\=\|\.\.\)=\)\@!'
" Vim user commands
syn match vimBufnrWarn /\<bufnr\s*(\s*["']\.['"]\s*)/
endif
-" If, While and Return: {{{2
-" ====================
-syn match vimNotFunc "\%#=1\<\%(if\|el\%[seif]\|retu\%[rn]\|while\)\>" skipwhite nextgroup=@vimExprList,vimNotation
-syn match vimElse "\<el\%[se]\>" skipwhite nextgroup=vimComment,vim9Comment
-syn match vimEndif "\<en\%[dif]\>" skipwhite nextgroup=vimComment,vim9Comment
-
" Match: {{{2
" =====
syn match vimMatch "\<[23]\=mat\%[ch]\>" skipwhite nextgroup=vimMatchGroup,vimMatchNone
\ contains=@vimTclScript
unlet s:interfaces
+" Function Call Highlighting: {{{2
+" (following Gautam Iyer's suggestion)
+" ==========================
+syn match vimFunc contained "\<\l\w*\ze\s*(" skipwhite nextgroup=vimOperParen contains=vimFuncName
+syn match vimUserFunc contained "\<\%([[:upper:]_]\|\%(\h\w*\.\)\+\h\)\w*\ze\s*(" skipwhite nextgroup=vimOperParen contains=vim9MethodName,vim9Super,vim9This
+syn match vimUserFunc contained "\<\%(g:\)\=\%(\h\w*#\)\+\h\w*\ze\s*(" skipwhite nextgroup=vimOperParen contains=vimVarScope
+syn match vimUserFunc contained "\%(\<[sgbwtlav]:\|<[sS][iI][dD]>\)\%(\h\w*\.\)*\h\w*\ze\s*(" skipwhite nextgroup=vimOperParen contains=vimVarScope,vimNotation
+
+Vim9 syn match vim9UserFunc "^\s*\zs\%([sgbwtv]:\|<[sS][iI][dD]>\)\=\%(\h\w*[.#]\)*\h\w*\ze(" skipwhite nextgroup=vimOperParen contains=vimVarScope,vimNotation,vim9MethodName,vim9Super,vim9This
+Vim9 syn match vim9Func "^\s*\zs\l\w*\ze(" skipwhite nextgroup=vimOperParen contains=vimFuncName
+
+syn cluster vimFunc contains=vimFunc,vimUserFunc
+syn cluster vim9Func contains=vim9Func,vim9UserFunc
+
" Beginners - Patterns that involve ^ {{{2
" =========
Vim9 syn region vim9LineComment start=+^[ \t:]*\zs#.*$+ skip=+\n\s*\\\|\n\s*#\\ + end="$" contains=@vimCommentGroup,vimCommentString,vim9CommentTitle extend
hi def link vimFTError vimError
hi def link vimFunctionError vimError
hi def link vimFunc vimError
+ hi def link vim9Func vimError
hi def link vimHiAttribList vimError
hi def link vimHiCtermError vimError
hi def link vimHiKeyError vimError