runtime(java): Recognise the CommonMark form (///) of Javadoc comments

Complement "g:java_ignore_javadoc" with "g:java_ignore_html"
and "g:java_ignore_markdown" to allow selectively disabling
the recognition of HTML and CommonMark respectively.

(Note that this is not a preview feature.)

======================== LIMITATION ========================

According to the syntactical details of JEP 467:

> Any leading whitespace and the three initial / characters
> are removed from each line.
>
> The lines are shifted left, by removing leading whitespace
> characters, until the non-blank line with the least
> leading whitespace has no remaining leading whitespace.
>
> Additional leading whitespace and any trailing whitespace
> in each line is preserved, because it may be significant.

the following example:
------------------------------------------------------------
///    A summary sentence.
///     A list:
///      - Item A.
///     - Item B.
///
///     Some code span, starting here `
///      1 + 2 ` and ending at the previous \`.
------------------------------------------------------------

should be interpreted as if it were written thus:
------------------------------------------------------------
///A summary sentence.
/// A list:
///  - Item A.
/// - Item B.
///
/// Some code span, starting here `
///  1 + 2 ` and ending at the previous \`.
------------------------------------------------------------

Since automatic line rewriting will not be pursued, parts of
such comments having significant whitespace may be ‘wrongly’
highlighted.  For convenience, a &fex function is defined to
‘correct’ it: g:javaformat#RemoveCommonMarkdownWhitespace()
(:help ft-java-plugin).

References:
https://openjdk.org/jeps/467
https://spec.commonmark.org/0.31.2

closes: #15740

Co-authored-by: Tim Pope <code@tpope.net>
Signed-off-by: Aliaksei Budavei <0x000c70@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
Aliaksei Budavei
2024-09-30 19:40:04 +02:00
committed by Christian Brabandt
parent de6c1d1182
commit 85f054aa3f
28 changed files with 706 additions and 122 deletions

View File

@ -0,0 +1,92 @@
" Vim formatting plugin file
" Language: Java
" Maintainer: Aliaksei Budavei <0x000c70 AT gmail DOT com>
" Repository: https://github.com/zzzyxwvut/java-vim.git
" Last Change: 2024 Sep 26
" Documented in ":help ft-java-plugin".
if &cp || exists("g:loaded_javaformat") || exists("g:java_ignore_javadoc") || exists("g:java_ignore_markdown")
finish
endif
let g:loaded_javaformat = 1
"""" STRIVE TO REMAIN COMPATIBLE FOR AT LEAST VIM 7.0.
function! javaformat#RemoveCommonMarkdownWhitespace() abort
if mode() != 'n'
return 0
endif
let pattern = '\(^\s*///\)\(\s*\)\(.*\)'
" E121 for v:numbermax before v8.2.2388.
" E15 for expr-<< before v8.2.5003.
let common = 0x7fffffff
let comments = []
for n in range(v:lnum, (v:lnum + v:count - 1))
let parts = matchlist(getline(n), pattern)
let whitespace = get(parts, 2, '')
let nonwhitespace = get(parts, 3, '')
if !empty(whitespace)
let common = min([common, strlen(whitespace)])
elseif !empty(nonwhitespace) || empty(parts)
" No whitespace prefix or not a Markdown comment.
return 0
endif
call add(comments, [whitespace, parts[1], nonwhitespace])
endfor
let cursor = v:lnum
for line in comments
call setline(cursor, join(line[1 :], strpart(line[0], common)))
let cursor += 1
endfor
return 0
endfunction
" See ":help vim9-mix".
if !has("vim9script")
finish
endif
def! g:javaformat#RemoveCommonMarkdownWhitespace(): number
if mode() != 'n'
return 0
endif
const pattern: string = '\(^\s*///\)\(\s*\)\(.*\)'
var common: number = v:numbermax
var comments: list<list<string>> = []
for n in range(v:lnum, (v:lnum + v:count - 1))
const parts: list<string> = matchlist(getline(n), pattern)
const whitespace: string = get(parts, 2, '')
const nonwhitespace: string = get(parts, 3, '')
if !empty(whitespace)
common = min([common, strlen(whitespace)])
elseif !empty(nonwhitespace) || empty(parts)
# No whitespace prefix or not a Markdown comment.
return 0
endif
add(comments, [whitespace, parts[1], nonwhitespace])
endfor
var cursor: number = v:lnum
for line in comments
setline(cursor, join(line[1 :], strpart(line[0], common)))
cursor += 1
endfor
return 0
enddef
" vim: fdm=syntax sw=4 ts=8 noet sta

View File

@ -1,4 +1,4 @@
*filetype.txt* For Vim version 9.1. Last change: 2024 Aug 21 *filetype.txt* For Vim version 9.1. Last change: 2024 Sep 29
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -698,6 +698,28 @@ Remember to manually trigger the |FileType| event from a buffer with a Java
file loaded in it each time after assigning a new value to the variable: > file loaded in it each time after assigning a new value to the variable: >
doautocmd FileType doautocmd FileType
< <
Markdown documentation comments may contain common runs of vertical leading
whitespace following the comment marks (`///`) for aesthetic reasons; however,
some horizontal runs of leading whitespace are significant in Markdown because
they denote code blocks etc. For convenience, a 'formatexpr' function is
provided for the |gq| operator. As long as neither "g:java_ignore_javadoc"
nor "g:java_ignore_markdown" is defined, the reformatting of Markdown comments
can be enabled on demand with: >
setlocal formatexpr=g:javaformat#RemoveCommonMarkdownWhitespace()
<
Or for Vim versions less than `7.4.265`, with: >
setlocal formatexpr=javaformat#RemoveCommonMarkdownWhitespace()
<
This function accepts a range of lines, removes a common run of vertical
leading whitespace, and rewrites the lines of the range. Depending on the
author's layout style and the comment contents, which lines to select for
reformatting can vary from the whole comment to only some portion of it.
To enable the recognition of Markdown comments each time after removing
"g:java_ignore_markdown" or "g:java_ignore_javadoc", remember to manually
re-source "javaformat.vim" for Vim versions greater than `8.2.1397`: >
runtime autoload/javaformat.vim
<
JSON-FORMAT *ft-json-plugin* JSON-FORMAT *ft-json-plugin*

View File

@ -1,4 +1,4 @@
*syntax.txt* For Vim version 9.1. Last change: 2024 Sep 19 *syntax.txt* For Vim version 9.1. Last change: 2024 Sep 28
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -2106,7 +2106,8 @@ respectively.
Javadoc is a program that takes special comments out of Java program files and Javadoc is a program that takes special comments out of Java program files and
creates HTML pages. The standard configuration will highlight this HTML code creates HTML pages. The standard configuration will highlight this HTML code
similarly to HTML files (see |html.vim|). You can even add JavaScript and CSS similarly to HTML files (see |html.vim|). You can even add JavaScript and CSS
inside this code (see below). The HTML rendering diverges as follows: inside this code (see below). The HTML rendering and the Markdown rendering
diverge as follows:
1. The first sentence (all characters up to the first period `.`, which is 1. The first sentence (all characters up to the first period `.`, which is
followed by a whitespace character or a line terminator, or up to the followed by a whitespace character or a line terminator, or up to the
first block tag, e.g. `@param`, `@return`) is colored as first block tag, e.g. `@param`, `@return`) is colored as
@ -2119,8 +2120,14 @@ inside this code (see below). The HTML rendering diverges as follows:
*Special special symbols *Special special symbols
and some of their arguments are colored as and some of their arguments are colored as
*Function function names. *Function function names.
To turn this feature off, add the following line to your startup file: > To turn this feature off for both HTML and Markdown, add the following line to
your startup file: >
:let g:java_ignore_javadoc = 1 :let g:java_ignore_javadoc = 1
Alternatively, only suppress HTML comments or Markdown comments: >
:let g:java_ignore_html = 1
:let g:java_ignore_markdown = 1
See |ft-java-plugin| for additional support available for Markdown comments.
If you use the special Javadoc comment highlighting described above, you can If you use the special Javadoc comment highlighting described above, you can
also turn on special highlighting for JavaScript, Visual Basic scripts, and also turn on special highlighting for JavaScript, Visual Basic scripts, and

View File

@ -3,18 +3,29 @@
" Maintainer: Aliaksei Budavei <0x000c70 AT gmail DOT com> " Maintainer: Aliaksei Budavei <0x000c70 AT gmail DOT com>
" Former Maintainer: Dan Sharp " Former Maintainer: Dan Sharp
" Repository: https://github.com/zzzyxwvut/java-vim.git " Repository: https://github.com/zzzyxwvut/java-vim.git
" Last Change: 2024 Apr 18 " Last Change: 2024 Sep 26
" 2024 Jan 14 by Vim Project (browsefilter) " 2024 Jan 14 by Vim Project (browsefilter)
" 2024 May 23 by Riley Bruins <ribru17@gmail.com> ('commentstring') " 2024 May 23 by Riley Bruins <ribru17@gmail.com> ('commentstring')
if exists("b:did_ftplugin") | finish | endif
let b:did_ftplugin = 1
" Make sure the continuation lines below do not cause problems in " Make sure the continuation lines below do not cause problems in
" compatibility mode. " compatibility mode.
let s:save_cpo = &cpo let s:save_cpo = &cpo
set cpo-=C set cpo-=C
if (exists("g:java_ignore_javadoc") || exists("g:java_ignore_markdown")) &&
\ exists("*javaformat#RemoveCommonMarkdownWhitespace")
delfunction javaformat#RemoveCommonMarkdownWhitespace
unlet! g:loaded_javaformat
endif
if exists("b:did_ftplugin")
let &cpo = s:save_cpo
unlet s:save_cpo
finish
endif
let b:did_ftplugin = 1
" For filename completion, prefer the .java extension over the .class " For filename completion, prefer the .java extension over the .class
" extension. " extension.
set suffixes+=.class set suffixes+=.class
@ -27,6 +38,8 @@ setlocal suffixesadd=.java
" Clean up in case this file is sourced again. " Clean up in case this file is sourced again.
unlet! s:zip_func_upgradable unlet! s:zip_func_upgradable
"""" STRIVE TO REMAIN COMPATIBLE FOR AT LEAST VIM 7.0.
" Documented in ":help ft-java-plugin". " Documented in ":help ft-java-plugin".
if exists("g:ftplugin_java_source_path") && if exists("g:ftplugin_java_source_path") &&
\ type(g:ftplugin_java_source_path) == type("") \ type(g:ftplugin_java_source_path) == type("")
@ -59,8 +72,9 @@ endif
" and insert the comment leader when hitting <CR> or using "o". " and insert the comment leader when hitting <CR> or using "o".
setlocal formatoptions-=t formatoptions+=croql setlocal formatoptions-=t formatoptions+=croql
" Set 'comments' to format dashed lists in comments. Behaves just like C. " Set 'comments' to format Markdown Javadoc comments and dashed lists
setlocal comments& comments^=sO:*\ -,mO:*\ \ ,exO:*/ " in other multi-line comments (it behaves just like C).
setlocal comments& comments^=:///,sO:*\ -,mO:*\ \ ,exO:*/
setlocal commentstring=//\ %s setlocal commentstring=//\ %s
@ -103,3 +117,4 @@ endif
" Restore the saved compatibility options. " Restore the saved compatibility options.
let &cpo = s:save_cpo let &cpo = s:save_cpo
unlet s:save_cpo unlet s:save_cpo
" vim: fdm=syntax sw=4 ts=8 noet sta

View File

@ -3,7 +3,7 @@
" Maintainer: Aliaksei Budavei <0x000c70 AT gmail DOT com> " Maintainer: Aliaksei Budavei <0x000c70 AT gmail DOT com>
" Former Maintainer: Claudio Fleiner <claudio@fleiner.com> " Former Maintainer: Claudio Fleiner <claudio@fleiner.com>
" Repository: https://github.com/zzzyxwvut/java-vim.git " Repository: https://github.com/zzzyxwvut/java-vim.git
" Last Change: 2024 Sep 19 " Last Change: 2024 Sep 28
" Please check :help java.vim for comments on some of the options available. " Please check :help java.vim for comments on some of the options available.
@ -156,6 +156,10 @@ else
let [s:ff.PeekTo, s:ff.PeekFrom, s:ff.GroupArgs] = repeat([s:ff.RightConstant], 3) let [s:ff.PeekTo, s:ff.PeekFrom, s:ff.GroupArgs] = repeat([s:ff.RightConstant], 3)
endif endif
let s:with_html = !exists("g:java_ignore_html")
let s:with_markdown = !exists("g:java_ignore_markdown")
lockvar s:with_html s:with_markdown
" Java module declarations (JLS-17, §7.7). " Java module declarations (JLS-17, §7.7).
" "
" Note that a "module-info" file will be recognised with an arbitrary " Note that a "module-info" file will be recognised with an arbitrary
@ -172,7 +176,7 @@ if fnamemodify(bufname("%"), ":t") =~ '^module-info\>\%(\.class\>\)\@!'
hi def link javaModuleStmt Statement hi def link javaModuleStmt Statement
hi def link javaModuleExternal Include hi def link javaModuleExternal Include
if !exists("g:java_ignore_javadoc") && g:main_syntax != 'jsp' if !exists("g:java_ignore_javadoc") && (s:with_html || s:with_markdown) && g:main_syntax != 'jsp'
syn match javaDocProvidesTag contained "@provides\_s\+\S\+" contains=javaDocParam syn match javaDocProvidesTag contained "@provides\_s\+\S\+" contains=javaDocParam
syn match javaDocUsesTag contained "@uses\_s\+\S\+" contains=javaDocParam syn match javaDocUsesTag contained "@uses\_s\+\S\+" contains=javaDocParam
hi def link javaDocProvidesTag Special hi def link javaDocProvidesTag Special
@ -335,18 +339,52 @@ syn match javaCommentMarkupTagAttr contained "\<region\>" nextgroup=javaCommen
exec 'syn region javaCommentMarkupTagAttr contained transparent matchgroup=javaHtmlArg start=/\<\%(re\%(gex\|gion\|placement\)\|substring\|t\%(arget\|ype\)\)\%(\s*=\)\@=/ matchgroup=javaHtmlString end=/\%(=\s*\)\@' . s:ff.Peek('80', '') . '<=\%("[^"]\+"\|' . "\x27[^\x27]\\+\x27" . '\|\%([.-]\|\k\)\+\)/ nextgroup=javaCommentMarkupTagAttr,javaSpaceError skipwhite oneline' exec 'syn region javaCommentMarkupTagAttr contained transparent matchgroup=javaHtmlArg start=/\<\%(re\%(gex\|gion\|placement\)\|substring\|t\%(arget\|ype\)\)\%(\s*=\)\@=/ matchgroup=javaHtmlString end=/\%(=\s*\)\@' . s:ff.Peek('80', '') . '<=\%("[^"]\+"\|' . "\x27[^\x27]\\+\x27" . '\|\%([.-]\|\k\)\+\)/ nextgroup=javaCommentMarkupTagAttr,javaSpaceError skipwhite oneline'
syn match javaCommentError contained "/\*"me=e-1 display syn match javaCommentError contained "/\*"me=e-1 display
if !exists("g:java_ignore_javadoc") && g:main_syntax != 'jsp' if !exists("g:java_ignore_javadoc") && (s:with_html || s:with_markdown) && g:main_syntax != 'jsp'
" The overridable "html*" default links must be defined _before_ the " The overridable "html*" and "markdown*" default links must be
" inclusion of the same default links from "html.vim". " defined _before_ the inclusion of the same default links from
hi def link htmlComment Special " "html.vim" and "markdown.vim".
hi def link htmlCommentPart Special if s:with_html || s:with_markdown
hi def link htmlArg Type hi def link htmlComment Special
hi def link htmlString String hi def link htmlCommentPart Special
hi def link htmlArg Type
hi def link htmlString String
endif
if s:with_markdown
hi def link markdownCode Special
hi def link markdownCodeBlock Special
hi def link markdownCodeDelimiter Special
hi def link markdownLinkDelimiter Comment
endif
syntax case ignore syntax case ignore
" Note that javaDocSeeTag is valid in HTML and Markdown.
let s:ff.WithMarkdown = s:ff.RightConstant
" Include HTML syntax coloring for Javadoc comments. " Include HTML syntax coloring for Javadoc comments.
syntax include @javaHtml syntax/html.vim if s:with_html
unlet b:current_syntax syntax include @javaHtml syntax/html.vim
unlet b:current_syntax
endif
" Include Markdown syntax coloring (v7.2.437) for Javadoc comments.
if s:with_markdown
try
syntax include @javaMarkdown syntax/markdown.vim
unlet b:current_syntax
let s:ff.WithMarkdown = s:ff.LeftConstant
catch /\<E48[45]:/
call s:ReportOnce(v:exception)
unlockvar s:with_markdown
let s:with_markdown = 0
lockvar s:with_markdown
hi clear markdownCode
hi clear markdownCodeBlock
hi clear markdownCodeDelimiter
hi clear markdownLinkDelimiter
endtry
endif
" HTML enables spell checking for all text that is not in a syntax " HTML enables spell checking for all text that is not in a syntax
" item (:syntax spell toplevel); instead, limit spell checking to " item (:syntax spell toplevel); instead, limit spell checking to
@ -357,10 +395,71 @@ if !exists("g:java_ignore_javadoc") && g:main_syntax != 'jsp'
call s:ReportOnce(v:exception) call s:ReportOnce(v:exception)
endtry endtry
syn region javaDocComment start="/\*\*" end="\*/" keepend contains=javaCommentTitle,@javaHtml,@javaDocTags,javaTodo,javaCommentError,javaSpaceError,@Spell fold if s:with_markdown
exec 'syn region javaCommentTitle contained matchgroup=javaDocComment start="/\*\*" matchgroup=javaCommentTitle end="\.$" end="\.[ \t\r]\@=" end="\%(^\s*\**\s*\)\@' . s:ff.Peek('80', '') . '<=@"me=s-2,he=s-1 end="\*/"me=s-1,he=s-1 contains=@javaHtml,javaCommentStar,javaTodo,javaCommentError,javaSpaceError,@Spell,@javaDocTags' syn region javaMarkdownComment start="///" skip="^\s*///.*$" end="^" keepend contains=javaMarkdownCommentTitle,javaMarkdownShortcutLink,@javaMarkdown,@javaDocTags,javaTodo,@Spell nextgroup=javaMarkdownCommentTitle fold
syn region javaCommentTitle contained matchgroup=javaDocComment start="/\*\*\s*\r\=\n\=\s*\**\s*\%({@return\>\)\@=" matchgroup=javaCommentTitle end="}\%(\s*\.*\)*" contains=@javaHtml,javaCommentStar,javaTodo,javaCommentError,javaSpaceError,@Spell,@javaDocTags,javaTitleSkipBlock syn match javaMarkdownCommentMask contained "^\s*///"
syn region javaCommentTitle contained matchgroup=javaDocComment start="/\*\*\s*\r\=\n\=\s*\**\s*\%({@summary\>\)\@=" matchgroup=javaCommentTitle end="}" contains=@javaHtml,javaCommentStar,javaTodo,javaCommentError,javaSpaceError,@Spell,@javaDocTags,javaTitleSkipBlock exec 'syn region javaMarkdownCommentTitle contained matchgroup=javaMarkdownComment start="\%(///.*\r\=\n\s*\)\@' . s:ff.Peek('80', '') . '<!///" matchgroup=javaMarkdownCommentTitle end="\.$" end="\.[ \t\r]\@=" end="\n\%(\s*///\s*$\)\@=" end="\%(^\s*///\s*\)\@' . s:ff.Peek('80', '') . '<=@"me=s-2,he=s-1 contains=javaMarkdownShortcutLink,@javaMarkdown,javaMarkdownCommentMask,javaTodo,@Spell,@javaDocTags'
exec 'syn region javaMarkdownCommentTitle contained matchgroup=javaMarkdownComment start="\%(///.*\r\=\n\s*\)\@' . s:ff.Peek('80', '') . '<!///\s*\%({@return\>\)\@=" matchgroup=javaMarkdownCommentTitle end="}\%(\s*\.*\)*" contains=javaMarkdownShortcutLink,@javaMarkdown,javaMarkdownCommentMask,javaTodo,@Spell,@javaDocTags,javaTitleSkipBlock'
exec 'syn region javaMarkdownCommentTitle contained matchgroup=javaMarkdownComment start="\%(///.*\r\=\n\s*\)\@' . s:ff.Peek('80', '') . '<!///\s*\%({@summary\>\)\@=" matchgroup=javaMarkdownCommentTitle end="}" contains=javaMarkdownShortcutLink,@javaMarkdown,javaMarkdownCommentMask,javaTodo,@Spell,@javaDocTags,javaTitleSkipBlock'
syn clear markdownId markdownLineStart markdownH1 markdownH2 markdownHeadingRule markdownRule markdownCode markdownCodeBlock markdownIdDeclaration
" REDEFINE THE MARKDOWN ITEMS ANCHORED WITH "^", OBSERVING THE
" DEFINITION ORDER.
syn match markdownLineStart contained "^\s*///\s*[<@]\@!" contains=@markdownBlock,javaMarkdownCommentTitle,javaMarkdownCommentMask nextgroup=@markdownBlock,htmlSpecialChar
" See https://spec.commonmark.org/0.31.2/#setext-headings.
syn match markdownH1 contained "^\s*/// \{,3}.\+\r\=\n\s*/// \{,3}=\+\s*$" contains=@markdownInline,markdownHeadingRule,markdownAutomaticLink,javaMarkdownCommentMask
syn match markdownH2 contained "^\s*/// \{,3}.\+\r\=\n\s*/// \{,3}-\+\s*$" contains=@markdownInline,markdownHeadingRule,markdownAutomaticLink,javaMarkdownCommentMask
" See https://spec.commonmark.org/0.31.2/#atx-headings.
syn region markdownH1 contained matchgroup=markdownH1Delimiter start=" \{,3}#\s" end="#*\s*$" keepend contains=@markdownInline,markdownAutomaticLink oneline
syn region markdownH2 contained matchgroup=markdownH2Delimiter start=" \{,3}##\s" end="#*\s*$" keepend contains=@markdownInline,markdownAutomaticLink oneline
syn match markdownHeadingRule contained "^\s*/// \{,3}[=-]\+\s*$" contains=javaMarkdownCommentMask
" See https://spec.commonmark.org/0.31.2/#thematic-breaks.
syn match markdownRule contained "^\s*/// \{,3}\*\s*\*\%(\s*\*\)\+\s*$" contains=javaMarkdownCommentMask
syn match markdownRule contained "^\s*/// \{,3}_\s*_\%(\s*_\)\+\s*$" contains=javaMarkdownCommentMask
syn match markdownRule contained "^\s*/// \{,3}-\s*-\%(\s*-\)\+\s*$" contains=javaMarkdownCommentMask
" See https://spec.commonmark.org/0.31.2/#indented-code-blocks.
syn region markdownCodeBlock contained start="^\s*///\%( \{4,}\|\t\)" end="^\ze\s*///\%(\s*$\| \{,3}\S\)" keepend contains=javaMarkdownCommentMask
" See https://spec.commonmark.org/0.31.2/#code-spans.
syn region markdownCode contained matchgroup=markdownCodeDelimiter start="\z(`\+\) \=" end=" \=\z1" keepend contains=markdownLineStart,javaMarkdownCommentMask
" See https://spec.commonmark.org/0.31.2/#fenced-code-blocks.
syn region markdownCodeBlock contained start="^\s*/// \{,3}\z(```\+\)\%(.\{-}[^`]`\)\@!" end="^\s*/// \{,3}\z1`*" keepend contains=javaMarkdownCommentMask
syn region markdownCodeBlock contained start="^\s*/// \{,3}\z(\~\~\~\+\)" end="^\s*/// \{,3}\z1\~*" keepend contains=javaMarkdownCommentMask
" See https://spec.commonmark.org/0.31.2/#link-reference-definitions.
syn region markdownIdDeclaration contained matchgroup=markdownLinkDelimiter start="^\s*/// \{,3\}!\=\[" end="\]:" keepend contains=javaMarkdownCommentMask nextgroup=markdownUrl oneline skipwhite
" See https://spec.commonmark.org/0.31.2/#link-label.
syn region markdownId contained matchgroup=markdownIdDelimiter start="\[\%([\t ]\]\)\@!" end="\]" contains=javaMarkdownSkipBrackets,javaMarkdownCommentMask
" Note that escaped brackets can be unbalanced.
syn match javaMarkdownSkipBrackets contained transparent "\\\[\|\\\]"
" See https://spec.commonmark.org/0.31.2/#shortcut-reference-link.
syn region javaMarkdownShortcutLink contained matchgroup=markdownLinkTextDelimiter start="!\=\[^\@!\%(\_[^][]*\%(\[\_[^][]*\]\_[^][]*\)*]\%([[(]\)\@!\)\@=" end="\]\%([[(]\)\@!" contains=@markdownInline,markdownLineStart,javaMarkdownSkipBrackets,javaMarkdownCommentMask nextgroup=markdownLink,markdownId skipwhite
for s:name in ['markdownFootnoteDefinition', 'markdownFootnote']
if hlexists(s:name)
exec 'syn clear ' . s:name
endif
endfor
unlet s:name
" COMBAK: Footnotes are recognised by "markdown.vim", but are not
" in CommonMark. See https://pandoc.org/MANUAL.html#footnotes.
""""syn match markdownFootnoteDefinition contained "^\s*///\s*\[^[^\]]\+\]:" contains=javaMarkdownCommentMask
hi def link javaMarkdownComment Comment
hi def link javaMarkdownCommentMask javaMarkdownComment
hi def link javaMarkdownCommentTitle SpecialComment
hi def link javaMarkdownShortcutLink htmlLink
endif
if s:with_html
syn region javaDocComment start="/\*\*" end="\*/" keepend contains=javaCommentTitle,@javaHtml,@javaDocTags,javaTodo,javaCommentError,javaSpaceError,@Spell fold
exec 'syn region javaCommentTitle contained matchgroup=javaDocComment start="/\*\*" matchgroup=javaCommentTitle end="\.$" end="\.[ \t\r]\@=" end="\%(^\s*\**\s*\)\@' . s:ff.Peek('80', '') . '<=@"me=s-2,he=s-1 end="\*/"me=s-1,he=s-1 contains=@javaHtml,javaCommentStar,javaTodo,javaCommentError,javaSpaceError,@Spell,@javaDocTags'
syn region javaCommentTitle contained matchgroup=javaDocComment start="/\*\*\s*\r\=\n\=\s*\**\s*\%({@return\>\)\@=" matchgroup=javaCommentTitle end="}\%(\s*\.*\)*" contains=@javaHtml,javaCommentStar,javaTodo,javaCommentError,javaSpaceError,@Spell,@javaDocTags,javaTitleSkipBlock
syn region javaCommentTitle contained matchgroup=javaDocComment start="/\*\*\s*\r\=\n\=\s*\**\s*\%({@summary\>\)\@=" matchgroup=javaCommentTitle end="}" contains=@javaHtml,javaCommentStar,javaTodo,javaCommentError,javaSpaceError,@Spell,@javaDocTags,javaTitleSkipBlock
hi def link javaDocComment Comment
hi def link javaCommentTitle SpecialComment
endif
" The members of javaDocTags are sub-grouped according to the Java " The members of javaDocTags are sub-grouped according to the Java
" version of their introduction, and sub-group members in turn are " version of their introduction, and sub-group members in turn are
" arranged in alphabetical order, so that future newer members can " arranged in alphabetical order, so that future newer members can
@ -403,13 +502,29 @@ if !exists("g:java_ignore_javadoc") && g:main_syntax != 'jsp'
syn match javaDocSerialFieldTag contained "@serialField\>" syn match javaDocSerialFieldTag contained "@serialField\>"
syn match javaDocVersionTag contained "@version\>" syn match javaDocVersionTag contained "@version\>"
syn match javaDocSeeTag contained "@see\>" nextgroup=javaDocSeeTag1,javaDocSeeTag2,javaDocSeeTag3,javaDocSeeTagStar skipwhite skipempty syn match javaDocSeeTag contained "@see\>\s*" nextgroup=javaDocSeeTag1,javaDocSeeTag2,javaDocSeeTag3,javaDocSeeTag4,javaDocSeeTagStar,javaDocSeeTagSlash skipwhite skipempty
syn match javaDocSeeTagStar contained "^\s*\*\+\%(\s*{\=@\|/\|$\)\@!" nextgroup=javaDocSeeTag1,javaDocSeeTag2,javaDocSeeTag3 skipwhite skipempty
if s:with_html
syn match javaDocSeeTagStar contained "^\s*\*\+\%(\s*{\=@\|/\|$\)\@!" nextgroup=javaDocSeeTag1,javaDocSeeTag2,javaDocSeeTag3,javaDocSeeTag4 skipwhite skipempty
hi def link javaDocSeeTagStar javaDocComment
endif
if s:with_markdown
syn match javaDocSeeTagSlash contained "^\s*///\%(\s*{\=@\|$\)\@!" nextgroup=javaDocSeeTag1,javaDocSeeTag2,javaDocSeeTag3,javaDocSeeTag4 skipwhite skipempty
hi def link javaDocSeeTagSlash javaMarkdownComment
endif
syn match javaDocSeeTag1 contained @"\_[^"]\+"@ syn match javaDocSeeTag1 contained @"\_[^"]\+"@
syn match javaDocSeeTag2 contained @<a\s\+\_.\{-}</a>@ contains=@javaHtml extend syn match javaDocSeeTag2 contained @<a\s\+\_.\{-}</a>@ contains=@javaHtml extend
syn match javaDocSeeTag3 contained @["< \t]\@!\%(\k\|[/.]\)*\%(##\=\k\+\%((\_[^)]*)\)\=\)\=@ nextgroup=javaDocSeeTag3Label skipwhite skipempty exec 'syn match javaDocSeeTag3 contained @[' . s:ff.WithMarkdown('[', '') . '"< \t]\@!\%(\k\|[/.]\)*\%(##\=\k\+\%((\_[^)]*)\)\=\)\=@ nextgroup=javaDocSeeTag3Label skipwhite skipempty'
syn match javaDocSeeTag3Label contained @\k\%(\k\+\s*\)*$@ syn match javaDocSeeTag3Label contained @\k\%(\k\+\s*\)*$@
" COMBAK: No support for type javaDocSeeTag2 in Markdown.
""if s:with_markdown
"" syn match javaDocSeeTag4 contained @\[.\+\]\s\=\%(\[.\+\]\|(.\+)\)@ contains=@javaMarkdown extend
"" hi def link javaDocSeeTag4 Special
""endif
syn region javaCodeSkipBlock contained transparent start="{\%(@code\>\)\@!" end="}" contains=javaCodeSkipBlock,javaDocCodeTag syn region javaCodeSkipBlock contained transparent start="{\%(@code\>\)\@!" end="}" contains=javaCodeSkipBlock,javaDocCodeTag
syn region javaDocCodeTag contained start="{@code\>" end="}" contains=javaDocCodeTag,javaCodeSkipBlock syn region javaDocCodeTag contained start="{@code\>" end="}" contains=javaDocCodeTag,javaCodeSkipBlock
@ -418,9 +533,6 @@ if !exists("g:java_ignore_javadoc") && g:main_syntax != 'jsp'
syn region javaDocSnippetTag contained start="{@snippet\>" end="}" contains=javaDocSnippetTag,javaSnippetSkipBlock,javaDocSnippetTagAttr,javaCommentMarkupTag syn region javaDocSnippetTag contained start="{@snippet\>" end="}" contains=javaDocSnippetTag,javaSnippetSkipBlock,javaDocSnippetTagAttr,javaCommentMarkupTag
syntax case match syntax case match
hi def link javaDocComment Comment
hi def link javaDocSeeTagStar javaDocComment
hi def link javaCommentTitle SpecialComment
hi def link javaDocParam Function hi def link javaDocParam Function
hi def link javaDocAuthorTag Special hi def link javaDocAuthorTag Special
@ -729,7 +841,7 @@ endif
let b:spell_options = "contained" let b:spell_options = "contained"
let &cpo = s:cpo_save let &cpo = s:cpo_save
unlet s:ff s:cpo_save unlet s:cpo_save s:ff s:with_html s:with_markdown
" See ":help vim9-mix". " See ":help vim9-mix".
if !has("vim9script") if !has("vim9script")
@ -757,4 +869,4 @@ if exists("g:java_foldtext_show_first_or_second_line")
setlocal foldtext=s:JavaSyntaxFoldTextExpr() setlocal foldtext=s:JavaSyntaxFoldTextExpr()
delfunction! g:JavaSyntaxFoldTextExpr delfunction! g:JavaSyntaxFoldTextExpr
endif endif
" vim: sw=2 ts=8 noet sta " vim: fdm=syntax sw=2 ts=8 noet sta

View File

@ -1,20 +0,0 @@
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|*| |@+0#e000e06&|r|e|t|u|r|n| +0#0000e05&|a|n| |e|m|p|t|y| |s|t|r|i|n|g| |*|/@2| |N|o| |p|e|r|i|o|d| |f|o|r| |t|h|e| |a|b|o|v|e| |s|u|m@1|a|r|y|!| +0#0000000&@5
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|@+0#e000e06&|O|v|e|r@1|i|d|e| +0#0000000&|p+0#00e0003&|u|b|l|i|c| +0#0000000&|S|t|r|i|n|g| |t|o|S|t|r|i|n|g|(|)| |{| |r+0#af5f00255&|e|t|u|r|n| +0#0000000&|"+0#e000002&@1|;+0#0000000&| |}| @19
| +0#0000e05#a8a8a8255@1|}+0#0000000#ffffff0| @71
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
| +0#0000e05#a8a8a8255@1|/+0&#ffffff0@1| |j+0&#ffd7d7255|a|v|a|d|o|c| +0&#ffffff0|-@1|s|n|i|p@1|e|t|-|p|a|t|h| |.| |-@1|s|o|u|r|c|e|-|p|a|t|h| |.| |-|d| |/|t+0&#ffd7d7255|m|p|/+0&#ffffff0|d|o|c|s|/| |-|p|a|c|k|a|g|e| |\| +0#0000000&@4
| +0#0000e05#a8a8a8255@1>/+0&#ffffff0@1| +0#ffffff16#ff404010| +0#0000e05#ffffff0|-|t|a|g| |'|j+0&#ffd7d7255|l|s|:+0&#ffffff0|a|:|S|e@1| |J|a|v|a| |L|a|n|g|u|a|g|e| |S|p|e|c|i|f|i|c|a|t|i|o|n|:|'| |S|n|i|p@1|e|t|s|.|j|a|v|a| +0#0000000&@9
| +0#0000e05#a8a8a8255@1|/+0&#ffffff0|*@1| +8#e000e06&|S|n|i|p@1|e|t|s| |f|o|r| |c|o|m@1|e|n|t| |t|e|s|t|s|.| +0#0000e05&|*|/| +0#0000000&@38
| +0#0000e05#a8a8a8255@1|c+0#00e0003#ffffff0|l|a|s@1| +0#0000000&|S|n|i|p@1|e|t|s| @58
| +0#0000e05#a8a8a8255@1|{+0#0000000#ffffff0| @2|/+0#0000001#ffff4012|*| +0#ffffff16#ff404010| +0#0000e05#ffffff0|T|R|A|I|L|I|N|G| |B|L|A|N|K|S| |A|N|D| |M+0&#ffd7d7255|E|S@1|P|I|L@1|I|N|G|S| +0&#ffffff0|A|R|E| |S|I|G|N|I|F|I|C|A|N|T|!| |*+0#0000001#ffff4012|/| +0#0000000#ffffff0@12
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|p+0#00e0003&|r|i|v|a|t|e| +0#0000000&|S|n|i|p@1|e|t|s|(|)| |{| |}| @46
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
|-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|/+0#0000e05&|*@1| +8#e000e06&|T|h|e| |m|e|t|h|o|d| |{+0&&|@|c|o|d|e| |m|a|i|n|}| +8&&|m|u|s|t| |b|e| |d|e|c|l|a|r|e|d| |{+0&&|@|c|o|d|e| |p|u|b|l|i|c|}|,+8&&| |{+0&&|@|c|o|d|e| +0#0000000&@1
||+0#0000e05#a8a8a8255| | +0#e000e06#ffffff0@4|*| |s|t|a|t|i|c|}|,+8&&| |a|n|d| |{+0&&|@|c|o|d|e| |v|o|i|d|}|.+8&&| +0#0000e05&@1|I|t| |m|u|s|t| |s|p|e|c|i|f|y| |a| |f|o|r|m|a|l| |p|a|r|a|m|e|t|e|r| +0#0000000&@3
||+0#0000e05#a8a8a8255| | +0&#ffffff0@4|*| |w|h|o|s|e| |d|e|c|l|a|r|e|d| |t|y|p|e| |i|s| |a|r@1|a|y| |o|f| |{+0#e000e06&|@|l|i|n|k| |S|t|r|i|n|g|}|.+0#0000e05&| @1|T|h|e|r|e|f|o|r|e|,| +0#0000000&@6
||+0#0000e05#a8a8a8255| | +0&#ffffff0@4|*| |<+0#00e0e07&|e+0#af5f00255&|m|>+0#00e0e07&|e+0#0000000&|i|t|h|e|r|<+0#00e0e07&|/|e+0#af5f00255&|m|>+0#00e0e07&| +0#0000e05&|o|f| |t|h|e| |f|o|l@1|o|w|i|n|g| |d|e|c|l|a|r|a|t|i|o|n|s| |i|s| |a|c@1|e|p|t|a|b|l|e|:| +0#0000000&@5
||+0#0000e05#a8a8a8255| | +0&#ffffff0@4|*| +0#ffffff16#ff404010| +0#0000e05#ffffff0|{+0#e000e06&|@|s|n|i|p@1|e|t| |l+0#00e0003&|a|n|g|=+0#e000e06&|"+0#e000002&|j|a|v|a|"|:+0#e000e06&| +0#0000000&@42
||+0#0000e05#a8a8a8255| | +0#e000e06#ffffff0@4|*| |/@1| |@+0#0000000&|h|i|g|h|l|i|g|h|t| +0#e000e06&|s+0#00e0003&|u|b|s|t|r|i|n|g|=+0#e000e06&|"+0#e000002&|m|a|i|n|"| +0#e000e06&|t+0#00e0003&|y|p|e|=+0#e000e06&|"+0#e000002&|i|t|a|l|i|c|"|:+0#e000e06&| +0#0000000&@20
||+0#0000e05#a8a8a8255| | +0#e000e06#ffffff0@4|*| |p|u|b|l|i|c| |s|t|a|t|i|c| |v|o|i|d| |m|a|i|n|(|S|t|r|i|n|g|[|]| |a|r|g|s|)| |{| |}| +0#0000000&@23
||+0#0000e05#a8a8a8255| | +0#e000e06#ffffff0@4|*| |}|<+0#00e0e07&|b+0#af5f00255&|r| +0#00e0e07&|/|>|<|p+0#af5f00255&|r|e| +0#00e0e07&|c+0#00e0003&|l|a|s@1|=+0#00e0e07&|"+0#e000002&|s|n|i|p@1|e|t|"|>+0#00e0e07&| +0#0000000&@37
@57|9|1|,|1| @9|8|2|%|

View File

@ -1,20 +0,0 @@
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|@+0#e000e06&|O|v|e|r@1|i|d|e| +0#0000000&|p+0#00e0003&|u|b|l|i|c| +0#0000000&|S|t|r|i|n|g| |t|o|S|t|r|i|n|g|(|)| |{| |r+0#af5f00255&|e|t|u|r|n| +0#0000000&|"+0#e000002&@1|;+0#0000000&| |}| @19
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@1| |@+0#0000000&|e|n|d| +0#ffffff16#ff404010| +0#0000000#ffffff0@60
| +0#0000e05#a8a8a8255@1>}+0#0000000#ffffff0| @71
|~+0#4040ff13&| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
| +0#0000000&@56|1|2@1|,|1| @8|B|o|t|

View File

@ -1,7 +1,7 @@
| +0#0000e05#a8a8a8255@1>/+0&#ffffff0@1| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |u|n|l|e|t|!| |g+0&#5fd7ff255|:+0&#ffffff0|j|a|v|a|_|n|o|_|t|a|b|_|s|p|a|c|e|_|e|r@1|o|r| |g|:|j|a|v|a|_|i|g|n|o|r|e|_|j+0&#ffd7d7255|a|v|a|d|o|c| +0#0000000#ffffff0 | +0#0000e05#a8a8a8255@1>/+0&#ffffff0@1| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |u|n|l|e|t|!| |g+0&#5fd7ff255|:+0&#ffffff0|j|a|v|a|_|n|o|_|t|a|b|_|s|p|a|c|e|_|e|r@1|o|r| |g|:|j|a|v|a|_|i|g|n|o|r|e|_|j+0&#ffd7d7255|a|v|a|d|o|c| +0#0000000#ffffff0
| +0#0000e05#a8a8a8255@1|/+0&#ffffff0@1| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |u|n|l|e|t|!| |g+0&#5fd7ff255|:+0&#ffffff0|j|a|v|a|_|n|o|_|t|r|a|i|l|_|s|p|a|c|e|_|e|r@1|o|r| +0#0000000&@20 | +0#0000e05#a8a8a8255@1|/+0&#ffffff0@1| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |u|n|l|e|t|!| |g+0&#5fd7ff255|:+0&#ffffff0|j|a|v|a|_|n|o|_|t|r|a|i|l|_|s|p|a|c|e|_|e|r@1|o|r| +0#0000000&@20
| +0#0000e05#a8a8a8255@1|/+0&#ffffff0@1| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |l|e|t| |[|g|:|j|a|v|a|_|s|p|a|c|e|_|e|r@1|o|r|s|,|g|:|j|a|v|a|_|c|o|m@1|e|n|t|_|s|t|r|i|n|g|s|]|=|[|1+0#e000002&|,+0#0000e05&|1+0#e000002&|]+0#0000e05&| +0#0000000& | +0#0000e05#a8a8a8255@1|/+0&#ffffff0@1| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |l|e|t| |[|g|:|j|a|v|a|_|s|p|a|c|e|_|e|r@1|o|r|s|,|g|:|j|a|v|a|_|c|o|m@1|e|n|t|_|s|t|r|i|n|g|s|]|=|[|1+0#e000002&|,+0#0000e05&|1+0#e000002&|]+0#0000e05&| +0#0000000&
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72 | +0#0000e05#a8a8a8255@1|/+0&#ffffff0@1| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |l|e|t| |g|:|j|a|v|a|_|i|g|n|o|r|e|_|m|a|r|k|d|o|w|n| |=| |1+0#e000002&| +0#0000000&@24
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72

View File

@ -5,16 +5,16 @@
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
| +0#0000e05#a8a8a8255@1> +0#0000000#ffffff0@72 | +0#0000e05#a8a8a8255@1> +0#0000000#ffffff0@72
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
|-+0#0000e05#a8a8a8255| |/+0&#ffffff0|*@1|/| +0#0000000&|/+0#0000001#ffff4012|*|/+0#0000e05#ffffff0| |*+0#0000001#ffff4012|/| +0#0000000#ffffff0|/+0#0000001#ffff4012|*| +0#0000e05#ffffff0|/+0#ffffff16#ff404010|*+0#0000001#ffff4012|/| +0#0000000#ffffff0|/+0#0000001#ffff4012|*|/+0#ffffff16#ff404010|*+0#0000001#ffff4012|/| +0#0000000#ffffff0|/+0#0000001#ffff4012|*|/+0#0000e05#ffffff0|/+0#ffffff16#ff404010|*+0#0000001#ffff4012|/| +0#0000000#ffffff0|/+0#0000e05&|*@1| +8#e000e06&|C|o|m@1|e|n|t| |t|e|s|t|s|.| +0#0000000&@22 |-+0#0000e05#a8a8a8255| |/+0&#ffffff0|*@1|/| +0#0000000&|/+0#0000001#ffff4012|*|/+0#0000e05#ffffff0| |*+0#0000001#ffff4012|/| +0#0000000#ffffff0|/+0#0000001#ffff4012|*| +0#0000e05#ffffff0|/+0#ffffff16#ff404010|*+0#0000001#ffff4012|/| +0#0000000#ffffff0|/+0#0000001#ffff4012|*|/+0#ffffff16#ff404010|*+0#0000001#ffff4012|/| +0#0000000#ffffff0|/+0#0000001#ffff4012|*|/+0#0000e05#ffffff0|/+0#ffffff16#ff404010|*+0#0000001#ffff4012|/| +0#0000000#ffffff0|/+0#0000e05&|*@1| +8#e000e06&|H|T|M|L| |c|o|m@1|e|n|t| |t|e|s|t|s|.| +0#0000000&@17
||+0#0000e05#a8a8a8255| | +0&#ffffff0|*| |<+0#00e0e07&|p+0#af5f00255&|>+0#00e0e07&|T+0#0000e05&|h|e|r|e| |i|s| |n|o| |e|n|t|r|y| |p|o|i|n|t| |m|e|t|h|o|d| |{+0#e000e06&|@|c|o|d|e| |m|a|i|n|}|:+0#0000e05&| +0#0000000&@22 ||+0#0000e05#a8a8a8255| | +0&#ffffff0|*| |<+0#00e0e07&|p+0#af5f00255&|>+0#00e0e07&|T+0#0000e05&|h|e|r|e| |i|s| |n|o| |e|n|t|r|y| |p|o|i|n|t| |m|e|t|h|o|d| |{+0#e000e06&|@|c|o|d|e| |m|a|i|n|}|:+0#0000e05&| +0#0000000&@22
||+0#0000e05#a8a8a8255| | +0&#ffffff0|*| |{+0#e000e06&|@|s|n|i|p@1|e|t| |f+0#00e0003&|i|l|e| +0#e000e06&|=| |S+0#e000002&|n|i|p@1|e|t|s|.|j|a|v|a| +0#e000e06&|r+0#00e0003&|e|g|i|o|n| +0#e000e06&|=| |m+0#e000002&|a|i|n| +0#e000e06&|i+0#00e0003&|d| +0#e000e06&|=| |_+0#e000002&|0|1|}+0#e000e06&| +0#0000000&@15 ||+0#0000e05#a8a8a8255| | +0&#ffffff0|*| |{+0#e000e06&|@|s|n|i|p@1|e|t| |f+0#00e0003&|i|l|e| +0#e000e06&|=| |H+0#e000002&|T|M|L|S|n|i|p@1|e|t|s|.|j|a|v|a| +0#e000e06&|r+0#00e0003&|e|g|i|o|n| +0#e000e06&|=| |m+0#e000002&|a|i|n| +0#e000e06&|i+0#00e0003&|d| +0#e000e06&|=| |_+0#e000002&|0|1|}+0#e000e06&| +0#0000000&@11
||+0#0000e05#a8a8a8255| | +0&#ffffff0|*| |<+0#00e0e07&|p+0#af5f00255&|>+0#00e0e07&|T+0#0000e05&|h|e|r|e| |i|s| |n|o| |t|e|x|t|u|a|l| |r|e|p|r|e|s|e|n|t|a|t|i|o|n|:| +0#0000000&@31 ||+0#0000e05#a8a8a8255| | +0&#ffffff0|*| |<+0#00e0e07&|p+0#af5f00255&|>+0#00e0e07&|T+0#0000e05&|h|e|r|e| |i|s| |n|o| |t|e|x|t|u|a|l| |r|e|p|r|e|s|e|n|t|a|t|i|o|n|:| +0#0000000&@31
||+0#0000e05#a8a8a8255| | +0&#ffffff0|*| |{+0#e000e06&|@|s|n|i|p@1|e|t| |c+0#00e0003&|l|a|s@1| +0#e000e06&|=| |S+0#e000002&|n|i|p@1|e|t|s| +0#e000e06&|r+0#00e0003&|e|g|i|o|n| +0#e000e06&|=| |t+0#e000002&|o|S|t|r|i|n|g| +0#e000e06&|i+0#00e0003&|d| +0#e000e06&|=| |_+0#e000002&|0|2|}+0#e000e06&| +0#0000e05&|*|/| +0#0000000&@12 ||+0#0000e05#a8a8a8255| | +0&#ffffff0|*| |{+0#e000e06&|@|s|n|i|p@1|e|t| |c+0#00e0003&|l|a|s@1| +0#e000e06&|=| |H+0#e000002&|T|M|L|S|n|i|p@1|e|t|s| +0#e000e06&|r+0#00e0003&|e|g|i|o|n| +0#e000e06&|=| |t+0#e000002&|o|S|t|r|i|n|g| +0#e000e06&|i+0#00e0003&|d| +0#e000e06&|=| |_+0#e000002&|0|2|}+0#e000e06&| +0#0000e05&|*|/| +0#0000000&@8
| +0#0000e05#a8a8a8255@1|c+0#00e0003#ffffff0|l|a|s@1| +0#0000000&|C|o|m@1|e|n|t|s|T|e|s|t|s| |i+0#00e0003&|m|p|l|e|m|e|n|t|s| +0#0000000&|C|o|m|p|a|r|a|b|l|e|<|C|o|m@1|e|n|t|s|T|e|s|t|s|>| @16 | +0#0000e05#a8a8a8255@1|c+0#00e0003#ffffff0|l|a|s@1| +0#0000000&|H|T|M|L|C|o|m@1|e|n|t|s|T|e|s|t|s| |i+0#00e0003&|m|p|l|e|m|e|n|t|s| +0#0000000&|C|o|m|p|a|r|a|b|l|e|<|H|T|M|L|C|o|m@1|e|n|t|s|T|e|s|t|s|>| @8
| +0#0000e05#a8a8a8255@1|{+0#0000000#ffffff0| @71 | +0#0000e05#a8a8a8255@1|{+0#0000000#ffffff0| @2|/+0#0000e05&@1| |J+0&#ffd7d7255|D|K| +0&#ffffff0|2+0#e000002&|1|++0#0000e05&|.| +0#0000000&@57
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|p+0#00e0003&|r|i|v|a|t|e| +0#0000000&|C|o|m@1|e|n|t|s|T|e|s|t|s|(|)| |{| |}| @41 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|p+0#00e0003&|r|i|v|a|t|e| +0#0000000&|H|T|M|L|C|o|m@1|e|n|t|s|T|e|s|t|s|(|)| |{| |}| @37
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
|-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|/+0#0000e05&|*@1| +8#e000e06&|N|o|-|o|p|,| |i|.| +0#0000e05&|e+0&#5fd7ff255|.+0&#ffffff0| |n+0&#5fd7ff255|o| +0&#ffffff0|o|p|e|r|a|t|i|o|n|.| +0#0000000&@38 |-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|/+0#0000e05&|*@1| +8#e000e06&|N|o|-|o|p|,| |i|.| +0#0000e05&|e+0&#5fd7ff255|.+0&#ffffff0| |n+0&#5fd7ff255|o| +0&#ffffff0|o|p|e|r|a|t|i|o|n|.| +0#0000000&@38
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|*| |(|{+0#e000e06&|@|l|i|t|e|r|a|l|@|l|i|t|e|r|a|l|}| +0#0000e05&|m|a|y| |b|e| |u|s|e|d| |w|i|t|h| |{+0#e000e06&|@|c|o|d|e| |.|}| +0#0000e05&|f|o|r| |c|o|n|t|r|a|c|t|i|o|n|.|)| +0#0000000&@2 ||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|*| |(|{+0#e000e06&|@|l|i|t|e|r|a|l|@|l|i|t|e|r|a|l|}| +0#0000e05&|m|a|y| |b|e| |u|s|e|d| |w|i|t|h| |{+0#e000e06&|@|c|o|d|e| |.|}| +0#0000e05&|f|o|r| |c|o|n|t|r|a|c|t|i|o|n|.|)| +0#0000000&@2
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|*| |@+0#e000e06&|r|e|t|u|r|n| +0#0000e05&|{+0#e000e06&|@|c|o|d|e| |n|u|l@1|}| +0#0000e05&|*|/| +0#0000000&@43 ||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|*| |@+0#e000e06&|r|e|t|u|r|n| +0#0000e05&|{+0#e000e06&|@|c|o|d|e| |n|u|l@1|}| +0#0000e05&|*|/| +0#0000000&@43
@57|1|9|,|0|-|1| @7|1|2|%| @57|1|9|,|0|-|1| @7|1@1|%|

View File

@ -17,4 +17,4 @@
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
|-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|/+0#0000e05&|*@1| +8#e000e06&|N|o|-|o|p|,| |i|.|e|.|<+0&&|!|-@1| |-@1|>| +8&&|n|o| |o|p|e|r|a|t|i|o|n|.| +0#0000000&@31 |-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|/+0#0000e05&|*@1| +8#e000e06&|N|o|-|o|p|,| |i|.|e|.|<+0&&|!|-@1| |-@1|>| +8&&|n|o| |o|p|e|r|a|t|i|o|n|.| +0#0000000&@31
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|*| |@+0#e000e06&|r|e|t|u|r|n| +0#0000e05&|{+0#e000e06&|@|c|o|d|e| |n|u|l@1|}| +0#0000e05&|*|/| +0#0000000&@43 ||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|*| |@+0#e000e06&|r|e|t|u|r|n| +0#0000e05&|{+0#e000e06&|@|c|o|d|e| |n|u|l@1|}| +0#0000e05&|*|/| +0#0000000&@43
@57|3|7|,|2|-|5| @7|3|0|%| @57|3|7|,|2|-|5| @7|2|7|%|

View File

@ -14,7 +14,7 @@
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&|*@1| |{+8#e000e06&|@+0&&|r|e|t|u|r|n| +8&&|{+0&&|@|c|o|d|e| |n|u|l@1|}|,+8&&| |w|i|t|h| |n|o|-|o|p|,| |i|.|e|.| |n|o| |o|p|e|r|a|t|i|o|n|}| |.| |.| |*+0#0000e05&|/| +0#0000000&@4 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&|*@1| |{+8#e000e06&|@+0&&|r|e|t|u|r|n| +8&&|{+0&&|@|c|o|d|e| |n|u|l@1|}|,+8&&| |w|i|t|h| |n|o|-|o|p|,| |i|.|e|.| |n|o| |o|p|e|r|a|t|i|o|n|}| |.| |.| |*+0#0000e05&|/| +0#0000000&@4
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|V|o|i|d| |n|o|O|p|9|(|)| |{| |r+0#af5f00255&|e|t|u|r|n| +0#0000000&|n+0#e000002&|u|l@1|;+0#0000000&| |}| @39 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|V|o|i|d| |n|o|O|p|9|(|)| |{| |r+0#af5f00255&|e|t|u|r|n| +0#0000000&|n+0#e000002&|u|l@1|;+0#0000000&| |}| @39
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&|*@1| |{+8#e000e06&|@+0&&|r|e|t|u|r|n| +8&&|t|h|e| |m|a|j|o|r| |J|a|v|a| |v|e|r|s|i|o|n|}| |@+0&&|h|i|d@1|e|n| +0#0000e05&|*|/| +0#0000000&@21 |-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|/+0#0000e05&|*@1| |{+8#e000e06&|@+0&&|r|e|t|u|r|n| +8&&|t|h|e| |m|a|j|o|r| |J|a|v|a| |v|e|r|s|i|o|n|}| +0#0000000&@32
||+0#0000e05#a8a8a8255| | +0&#ffffff0@4|*| |@+0#e000e06&|h|i|d@1|e|n| +0#0000e05&|*|/| +0#0000000&@55
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|p+0#00e0003&|r|o|t|e|c|t|e|d| +0#0000000&|i+0#00e0003&|n|t| +0#0000000&|m|a|j|o|r|V|e|r|s|i|o|n|(|)| |{| |r+0#af5f00255&|e|t|u|r|n| +0#0000000&|2+0#e000002&|1|;+0#0000000&| |}| @25 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|p+0#00e0003&|r|o|t|e|c|t|e|d| +0#0000000&|i+0#00e0003&|n|t| +0#0000000&|m|a|j|o|r|V|e|r|s|i|o|n|(|)| |{| |r+0#af5f00255&|e|t|u|r|n| +0#0000000&|2+0#e000002&|1|;+0#0000000&| |}| @25
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72 @57|5@1|,|2|-|5| @7|4|3|%|
@57|5@1|,|2|-|5| @7|4|7|%|

View File

@ -1,20 +1,20 @@
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|p+0#00e0003&|r|o|t|e|c|t|e|d| +0#0000000&|i+0#00e0003&|n|t| +0#0000000&|m|a|j|o|r|V|e|r|s|i|o|n|(|)| |{| |r+0#af5f00255&|e|t|u|r|n| +0#0000000&|2+0#e000002&|1|;+0#0000000&| |}| @25
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
|-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|/+0#0000e05&|*@1| |{+8#e000e06&|@|s|u|m@1|a|r|y| |C|o|m|p|a|r|e|s| |t|h|i|s| |i|n|s|t|a|n|c|e| |w|i|t|h| |t|h|e| |p|a|s@1|e|d| |{+0&&|@|c|o|d|e| |t|h|a|t|}| +0#0000000&@3 |-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|/+0#0000e05&|*@1| |{+8#e000e06&|@|s|u|m@1|a|r|y| |C|o|m|p|a|r|e|s| |t|h|i|s| |i|n|s|t|a|n|c|e| |w|i|t|h| |t|h|e| |p|a|s@1|e|d| |{+0&&|@|c|o|d|e| |t|h|a|t|}| +0#0000000&@3
||+0#0000e05#a8a8a8255| | +0&#ffffff0@4|*| +8#e000e06&|i|n|s|t|a|n|c|e| |f|o|r| |o|r|d|e|r| |b|y| |i|n|v|o|k|i|n|g| |{+0&&|@|l|i|n|k| |I|n|t|e|g|e|r|#|c|o|m|p|a|r|e|(|i|n|t|,| |i|n|t|)| +0#0000000&@2 ||+0#0000e05#a8a8a8255| | +0&#ffffff0@4|*| +8#e000e06&|i|n|s|t|a|n|c|e| |f|o|r| |o|r|d|e|r| |b|y| |i|n|v|o|k|i|n|g| |{+0&&|@|l|i|n|k| |I|n|t|e|g|e|r|#|c|o|m|p|a|r|e|(|i|n|t|,| |i|n|t|)| +0#0000000&@2
||+0#0000e05#a8a8a8255| | +0#e000e06#ffffff0@4|*| |c|o|m|p|a|r|e|}| +8&&|a|n|d| |p|a|s@1|i|n|g| |i|t| |{+0&&|@|c|o|d|e| |t|h|i|s|.|m|a|j|o|r|V|e|r|s|i|o|n|(|)|}| +8&&|a|n|d| +0#0000000&@10 ||+0#0000e05#a8a8a8255| | +0#e000e06#ffffff0@4|*| |c|o|m|p|a|r|e|}| +8&&|a|n|d| |p|a|s@1|i|n|g| |i|t| |{+0&&|@|c|o|d|e| |t|h|i|s|.|m|a|j|o|r|V|e|r|s|i|o|n|(|)|}| +8&&|a|n|d| +0#0000000&@10
||+0#0000e05#a8a8a8255| | +0&#ffffff0@4|*| +8#e000e06&|{+0&&|@|c|o|d|e| |t|h|a|t|.|m|a|j|o|r|V|e|r|s|i|o|n|(|)|}| +8&&|a|s| |r|e|s|p|e|c|t|i|v|e| |@|a|r|g|u|m|e|n|t|s|.|}| +0#0000000&@11 ||+0#0000e05#a8a8a8255| | +0&#ffffff0@4>*| +8#e000e06&|{+0&&|@|c|o|d|e| |t|h|a|t|.|m|a|j|o|r|V|e|r|s|i|o|n|(|)|}| +8&&|a|s| |r|e|s|p|e|c|t|i|v|e| |@|a|r|g|u|m|e|n|t|s|.|}| +0#0000000&@11
||+0#0000e05#a8a8a8255| | +0&#ffffff0@4>*| +0#0000000&@66
||+0#0000e05#a8a8a8255| | +0&#ffffff0@4|*| |{+0#e000e06&|@|i|n|h|e|r|i|t|D|o|c|}| +0#0000e05&|*|/| +0#0000000&@49 ||+0#0000e05#a8a8a8255| | +0&#ffffff0@4|*| |{+0#e000e06&|@|i|n|h|e|r|i|t|D|o|c|}| +0#0000e05&|*|/| +0#0000000&@49
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|@+0#e000e06&|O|v|e|r@1|i|d|e| +0#0000000&|p+0#00e0003&|u|b|l|i|c| +0#0000000&|i+0#00e0003&|n|t| +0#0000000&|c|o|m|p|a|r|e|T|o|(|C|o|m@1|e|n|t|s|T|e|s|t|s| |t|h|a|t|)| @18 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|@+0#e000e06&|O|v|e|r@1|i|d|e| +0#0000000&|p+0#00e0003&|u|b|l|i|c| +0#0000000&|i+0#00e0003&|n|t| +0#0000000&|c|o|m|p|a|r|e|T|o|(|H|T|M|L|C|o|m@1|e|n|t|s|T|e|s|t|s| |t|h|a|t|)| @14
|-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|{| @67 |-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|{| @67
||+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@7|j|a|v|a|.|u|t|i|l|.|O|b|j|e|c|t|s|.|r|e|q|u|i|r|e|N|o|n|N|u|l@1|(|t|h|a|t|,| |"+0#e000002&|t|h|a|t|"|)+0#0000000&|;| @17 ||+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@7|j|a|v|a|.|u|t|i|l|.|O|b|j|e|c|t|s|.|r|e|q|u|i|r|e|N|o|n|N|u|l@1|(|t|h|a|t|,| |"+0#e000002&|t|h|a|t|"|)+0#0000000&|;| @17
||+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@7|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|I|n|t|e|g|e|r|.|c|o|m|p|a|r|e|(|t+0#00e0003&|h|i|s|.+0#0000000&|m|a|j|o|r|V|e|r|s|i|o|n|(|)|,| @21 ||+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@7|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|I|n|t|e|g|e|r|.|c|o|m|p|a|r|e|(|t+0#00e0003&|h|i|s|.+0#0000000&|m|a|j|o|r|V|e|r|s|i|o|n|(|)|,| @21
||+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@23|t|h|a|t|.|m|a|j|o|r|V|e|r|s|i|o|n|(|)@1|;| @27 ||+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@23|t|h|a|t|.|m|a|j|o|r|V|e|r|s|i|o|n|(|)@1|;| @27
||+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|}| @67 ||+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|}| @67
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
|-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|/+0#0000e05&|*@1| +8#e000e06&|R|e|t|u|r|n|s| |a|n| |e|m|p|t|y| |s|t|r|i|n|g| |f|o|r| |a|n| |@|O|v|e|r@1|i|d|e| |a|n@1|o|t|a|t|e|d| |m|e|t|h|o|d| +0#0000000&@7 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@2| |R|e|t|u|r|n|s| |a|n| |e|m|p|t|y| |s|t|r|i|n|g| |f|o|r| |a|n| |@|O|v|e|r@1|i|d|e| |a|n@1|o|t|a|t|e|d| |m|e|t|h|o|d| +0#0000000&@7
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|*| +8#e000e06&|(|s|e@1| |C|h|a|p|t|e|r| |9|.|6|.|4|.|4| |{+0&&|@|l|i|t|e|r|a|l| |@|O|v|e|r@1|i|d|e|}| +8&&|i|n| |a| |J|a|v|a| |L|a|n|g|u|a|g|e| +0#0000000&@6 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@2| |(|s|e@1| |C|h|a|p|t|e|r| |9+0#e000002&|.|6|.|4|.|4| +0#0000e05&|{|@|l|i|t|e|r|a|l| |@|O|v|e|r@1|i|d|e|}| |i|n| |a| |J|a|v|a| |L|a|n|g|u|a|g|e| +0#0000000&@4
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|*| +8#e000e06&|S|p|e|c|i|f|i|c|a|t|i|o|n|)| |o|v|e|r@1|i|d@1|e|n| |f|r|o|m| |<+0#00e0e07&|c+0#af5f00255&|o|d|e|>+0#00e0e07&|j+8#e000e06&|a|v|a|.|l+8&#ffd7d7255|a|n|g|.+8&#ffffff0|O|b|j|e|c|t|<+0#00e0e07&|/|c+0#af5f00255&|o|d|e|>+0#00e0e07&| +0#0000000&@6 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@2| |S|p|e|c|i|f|i|c|a|t|i|o|n|)| |o|v|e|r@1|i|d@1|e|n| |f|r|o|m| |`|j|a|v|a|.|l+0&#ffd7d7255|a|n|g|.+0&#ffffff0|O|b|j|e|c|t|`| +0#0000000&@15
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|*| +0#0000000&@67 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@2| +0#0000000&@65
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|*| |@+0#e000e06&|r|e|t|u|r|n| +0#0000e05&|a|n| |e|m|p|t|y| |s|t|r|i|n|g| |*|/@2| |N|o| |p|e|r|i|o|d| |f|o|r| |t|h|e| |a|b|o|v|e| |s|u|m@1|a|r|y|!| +0#0000000&@5 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@2| |@|r|e|t|u|r|n| |a|n| |e|m|p|t|y| |s|t|r|i|n|g| |/@2| |N|o| |p|e|r|i|o|d| |f|o|r| |t|h|e| |a|b|o|v|e| |s|u|m@1|a|r|y|!| +0#0000000&@4
@57|7|3|,|3|-|6| @7|6|5|%| @57|7|3|,|3|-|6| @7|5|9|%|

View File

@ -0,0 +1,20 @@
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@2| |@|r|e|t|u|r|n| |a|n| |e|m|p|t|y| |s|t|r|i|n|g| |/@2| |N|o| |p|e|r|i|o|d| |f|o|r| |t|h|e| |a|b|o|v|e| |s|u|m@1|a|r|y|!| +0#0000000&@4
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|p+0#00e0003&|r|i|v|a|t|e| +0#0000000&|S|t|r|i|n|g| |a|s|S|t|r|i|n|g|(|)| |{| |r+0#af5f00255&|e|t|u|r|n| +0#0000000&|"+0#e000002&@1|;+0#0000000&| |}| @28
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
|-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|/+0#0000e05&|*@1| +8#e000e06&|R|e|t|u|r|n|s| |a|n| |e|m|p|t|y| |s|t|r|i|n|g| |f|o|r| |a|n| |@|O|v|e|r@1|i|d|e| |a|n@1|o|t|a|t|e|d| |m|e|t|h|o|d| +0#0000000&@7
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|*| +8#e000e06&|(|s|e@1| |C|h|a|p|t|e|r| |9|.|6|.|4|.|4| |{+0&&|@|l|i|t|e|r|a|l| |@|O|v|e|r@1|i|d|e|}| +8&&|i|n| |a| |J|a|v|a| |L|a|n|g|u|a|g|e| +0#0000000&@6
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3>*| +8#e000e06&|S|p|e|c|i|f|i|c|a|t|i|o|n|)| |o|v|e|r@1|i|d@1|e|n| |f|r|o|m| |<+0#00e0e07&|c+0#af5f00255&|o|d|e|>+0#00e0e07&|j+8#e000e06&|a|v|a|.|l+8&#ffd7d7255|a|n|g|.+8&#ffffff0|O|b|j|e|c|t|<+0#00e0e07&|/|c+0#af5f00255&|o|d|e|>+0#00e0e07&| +0#0000000&@6
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|*| +0#0000000&@67
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|*| |@+0#e000e06&|r|e|t|u|r|n| +0#0000e05&|a|n| |e|m|p|t|y| |s|t|r|i|n|g| |*|/@2| |N|o| |p|e|r|i|o|d| |f|o|r| |t|h|e| |a|b|o|v|e| |s|u|m@1|a|r|y|!| +0#0000000&@5
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|@+0#e000e06&|O|v|e|r@1|i|d|e| +0#0000000&|p+0#00e0003&|u|b|l|i|c| +0#0000000&|S|t|r|i|n|g| |t|o|S|t|r|i|n|g|(|)| |{| |r+0#af5f00255&|e|t|u|r|n| +0#0000000&|a|s|S|t|r|i|n|g|(|)|;| |}| @11
| +0#0000e05#a8a8a8255@1|}+0#0000000#ffffff0| @71
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
| +0#0000e05#a8a8a8255@1|/+0&#ffffff0@1| |j+0&#ffd7d7255|a|v|a|d|o|c| +0&#ffffff0|-@1|s|n|i|p@1|e|t|-|p|a|t|h| |.| |-@1|s|o|u|r|c|e|-|p|a|t|h| |.| |-|d| |/|t+0&#ffd7d7255|m|p|/+0&#ffffff0|h|t|m|l|_|d|o|c|s|/| |-|p|a|c|k|a|g|e| |\
| +0&#a8a8a8255@1|/+0&#ffffff0@1| +0#ffffff16#ff404010| +0#0000e05#ffffff0|-|t|a|g| |'|j+0&#ffd7d7255|l|s|:+0&#ffffff0|a|:|S|e@1| |J|a|v|a| |L|a|n|g|u|a|g|e| |S|p|e|c|i|f|i|c|a|t|i|o|n|:|'| |H+0&#ffd7d7255|T|M|L|S|n|i|p@1|e|t|s|.+0&#ffffff0|j|a|v|a| +0#0000000&@5
| +0#0000e05#a8a8a8255@1|/+0&#ffffff0|*@1| +8#e000e06&|S|n|i|p@1|e|t|s| |f|o|r| |H|T|M|L| |c|o|m@1|e|n|t| |t|e|s|t|s|.| +0#0000e05&|*|/| +0#0000000&@33
| +0#0000e05#a8a8a8255@1|c+0#00e0003#ffffff0|l|a|s@1| +0#0000000&|H|T|M|L|S|n|i|p@1|e|t|s| @54
| +0#0000e05#a8a8a8255@1|{+0#0000000#ffffff0| @2|/+0#0000001#ffff4012|*| +0#ffffff16#ff404010| +0#0000e05#ffffff0|T|R|A|I|L|I|N|G| |B|L|A|N|K|S| |A|N|D| |M+0&#ffd7d7255|E|S@1|P|I|L@1|I|N|G|S| +0&#ffffff0|A|R|E| |S|I|G|N|I|F|I|C|A|N|T|!| |*+0#0000001#ffff4012|/| +0#0000000#ffffff0@12
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|p+0#00e0003&|r|i|v|a|t|e| +0#0000000&|H|T|M|L|S|n|i|p@1|e|t|s|(|)| |{| |}| @42
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
|-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|/+0#0000e05&|*@1| +8#e000e06&|T|h|e| |m|e|t|h|o|d| |{+0&&|@|c|o|d|e| |m|a|i|n|}| +8&&|m|u|s|t| |b|e| |d|e|c|l|a|r|e|d| |{+0&&|@|c|o|d|e| |p|u|b|l|i|c|}|,+8&&| |{+0&&|@|c|o|d|e| +0#0000000&@1
@57|9|1|,|2|-|5| @7|7|5|%|

View File

@ -1,20 +1,20 @@
|-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|/+0#0000e05&|*@1| +8#e000e06&|T|h|e| |m|e|t|h|o|d| |{+0&&|@|c|o|d|e| |m|a|i|n|}| +8&&|m|u|s|t| |b|e| |d|e|c|l|a|r|e|d| |{+0&&|@|c|o|d|e| |p|u|b|l|i|c|}|,+8&&| |{+0&&|@|c|o|d|e| +0#0000000&@1
||+0#0000e05#a8a8a8255| | +0#e000e06#ffffff0@4|*| |s|t|a|t|i|c|}|,+8&&| |a|n|d| |{+0&&|@|c|o|d|e| |v|o|i|d|}|.+8&&| +0#0000e05&@1|I|t| |m|u|s|t| |s|p|e|c|i|f|y| |a| |f|o|r|m|a|l| |p|a|r|a|m|e|t|e|r| +0#0000000&@3
||+0#0000e05#a8a8a8255| | +0&#ffffff0@4|*| |w|h|o|s|e| |d|e|c|l|a|r|e|d| |t|y|p|e| |i|s| |a|r@1|a|y| |o|f| |{+0#e000e06&|@|l|i|n|k| |S|t|r|i|n|g|}|.+0#0000e05&| @1|T|h|e|r|e|f|o|r|e|,| +0#0000000&@6
||+0#0000e05#a8a8a8255| | +0&#ffffff0@4|*| |<+0#00e0e07&|e+0#af5f00255&|m|>+0#00e0e07&|e+0#0000000&|i|t|h|e|r|<+0#00e0e07&|/|e+0#af5f00255&|m|>+0#00e0e07&| +0#0000e05&|o|f| |t|h|e| |f|o|l@1|o|w|i|n|g| |d|e|c|l|a|r|a|t|i|o|n|s| |i|s| |a|c@1|e|p|t|a|b|l|e|:| +0#0000000&@5
||+0#0000e05#a8a8a8255| | +0&#ffffff0@4|*| +0#ffffff16#ff404010| +0#0000e05#ffffff0|{+0#e000e06&|@|s|n|i|p@1|e|t| |l+0#00e0003&|a|n|g|=+0#e000e06&|"+0#e000002&|j|a|v|a|"|:+0#e000e06&| +0#0000000&@42
||+0#0000e05#a8a8a8255| | +0#e000e06#ffffff0@4>*| |/@1| |@+0#0000000&|h|i|g|h|l|i|g|h|t| +0#e000e06&|s+0#00e0003&|u|b|s|t|r|i|n|g|=+0#e000e06&|"+0#e000002&|m|a|i|n|"| +0#e000e06&|t+0#00e0003&|y|p|e|=+0#e000e06&|"+0#e000002&|i|t|a|l|i|c|"|:+0#e000e06&| +0#0000000&@20
||+0#0000e05#a8a8a8255| | +0#e000e06#ffffff0@4|*| |p|u|b|l|i|c| |s|t|a|t|i|c| |v|o|i|d| |m|a|i|n|(|S|t|r|i|n|g|[|]| |a|r|g|s|)| |{| |}| +0#0000000&@23
||+0#0000e05#a8a8a8255| | +0#e000e06#ffffff0@4|*| |}|<+0#00e0e07&|b+0#af5f00255&|r| +0#00e0e07&|/|>|<|p+0#af5f00255&|r|e| +0#00e0e07&|c+0#00e0003&|l|a|s@1|=+0#00e0e07&|"+0#e000002&|s|n|i|p@1|e|t|"|>+0#00e0e07&| +0#0000000&@37 ||+0#0000e05#a8a8a8255| | +0#e000e06#ffffff0@4|*| |}|<+0#00e0e07&|b+0#af5f00255&|r| +0#00e0e07&|/|>|<|p+0#af5f00255&|r|e| +0#00e0e07&|c+0#00e0003&|l|a|s@1|=+0#00e0e07&|"+0#e000002&|s|n|i|p@1|e|t|"|>+0#00e0e07&| +0#0000000&@37
||+0#0000e05#a8a8a8255| | +0&#ffffff0@4|*|{+0#e000e06&|@|c|o|d|e| |p|u|b|l|i|c| |s|t|a|t|i|c| |v|o|i|d| |m|a|i|n|(|S|t|r|i|n|g|.@2| |a|r|g|s|)| |{| |}@1|<+0#00e0e07&|/|p+0#af5f00255&|r|e|>+0#00e0e07&| +0#0000000&@9 ||+0#0000e05#a8a8a8255| | +0&#ffffff0@4|*|{+0#e000e06&|@|c|o|d|e| |p|u|b|l|i|c| |s|t|a|t|i|c| |v|o|i|d| |m|a|i|n|(|S|t|r|i|n|g|.@2| |a|r|g|s|)| |{| |}@1|<+0#00e0e07&|/|p+0#af5f00255&|r|e|>+0#00e0e07&| +0#0000000&@9
||+0#0000e05#a8a8a8255| | +0&#ffffff0@4|*| +0#0000000&@66 ||+0#0000e05#a8a8a8255| | +0&#ffffff0@4|*| +0#0000000&@66
||+0#0000e05#a8a8a8255| | +0&#ffffff0@4|*| |@+0#e000e06&|p|a|r|a|m| |a+0#00e0e07&|r|g|s| +0#0000e05&|o|p|t|i|o|n|a|l| |c+0&#ffd7d7255|o|m@1|a|n|d|e|-+0&#ffffff0|l|i|n|e| |a|r|g|u|m|e|n|t|s| +0#ffffff16#ff404010| +0#0000000#ffffff0@20 ||+0#0000e05#a8a8a8255| | +0&#ffffff0@4|*| |@+0#e000e06&|p|a|r|a|m| |a+0#00e0e07&|r|g|s| +0#0000e05&|o|p|t|i|o|n|a|l| |c+0&#ffd7d7255|o|m@1|a|n|d|e|-+0&#ffffff0|l|i|n|e| |a|r|g|u|m|e|n|t|s| +0#ffffff16#ff404010| +0#0000000#ffffff0@20
||+0#0000e05#a8a8a8255| | +0&#ffffff0@4|*| |@|j+0&#ffd7d7255|l|s| +0&#ffffff0|1|2|.|1|.|4| |I|n|v|o|k|e| |{+0#e000e06&|@|c|o|d|e| |T|e|s|t|.|m|a|i|n|}| +0#0000e05&|*|/| +0#0000000&@26 ||+0#0000e05#a8a8a8255| | +0&#ffffff0@4|*| |@|j+0&#ffd7d7255|l|s| +0&#ffffff0|1|2|.|1|.|4| |I|n|v|o|k|e| |{+0#e000e06&|@|c|o|d|e| |T|e|s|t|.|m|a|i|n|}| +0#0000e05&|*|/| +0#0000000&@26
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3>/+0#0000e05&@1| |@+0#0000000&|s|t|a|r|t| +0#0000e05&|r+0#00e0003&|e|g|i|o|n| +0#0000e05&|=| |m+0#e000002&|a|i|n| +0#ffffff16#ff404010@4| +0#0000000#ffffff0@40 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@1| |@+0#0000000&|s|t|a|r|t| +0#0000e05&|r+0#00e0003&|e|g|i|o|n| +0#0000e05&|=| |m+0#e000002&|a|i|n| +0#ffffff16#ff404010@4| +0#0000000#ffffff0@40
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@1| |@+0#0000000&|l|i|n|k| +0#0000e05&|s+0#00e0003&|u|b|s|t|r|i|n|g| +0#0000e05&|=| |'+0#e000002&|S|t|r|i|n|g|'| +0#0000e05&|t+0#00e0003&|a|r|g|e|t| +0#0000e05&|=| |'+0#e000002&|j|a|v|a|.|l|a|n|g|.|S|t|r|i|n|g|'| +0#0000e05&|:| +0#0000000&@9 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@1| |@+0#0000000&|l|i|n|k| +0#0000e05&|s+0#00e0003&|u|b|s|t|r|i|n|g| +0#0000e05&|=| |'+0#e000002&|S|t|r|i|n|g|'| +0#0000e05&|t+0#00e0003&|a|r|g|e|t| +0#0000e05&|=| |'+0#e000002&|j|a|v|a|.|l|a|n|g|.|S|t|r|i|n|g|'| +0#0000e05&|:| +0#0000000&@9
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|p+0#00e0003&|u|b|l|i|c| +0#0000000&|s+0#00e0003&|t|a|t|i|c| +0#0000000&|v+0#00e0003&|o|i|d| +0#0000000&|m|a|i|n|(|S|t|r|i|n|g|[|]| |a|r|g|s|)| |{| |}| @26 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|p+0#00e0003&|u|b|l|i|c| +0#0000000&|s+0#00e0003&|t|a|t|i|c| +0#0000000&|v+0#00e0003&|o|i|d| +0#0000000&|m|a|i|n|(|S|t|r|i|n|g|[|]| |a|r|g|s|)| |{| |}| @26
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@1| |@+0#0000000&|e|n|d| +0#ffffff16#ff404010| +0#0000000#ffffff0@60 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@1| |@+0#0000000&|e|n|d| +0#ffffff16#ff404010| +0#0000000#ffffff0@60
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
|-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|/+0#0000e05&|*@1| |{+8#e000e06&|@+0&&|r|e|t|u|r|n| +8&&|a|n| |e|m|p|t|y| |s|t|r|i|n|g|}| +0#0000000&@39 |-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|/+0#0000e05&|*@1| |{+8#e000e06&|@+0&&|r|e|t|u|r|n| +8&&|a|n| |e|m|p|t|y| |s|t|r|i|n|g|}| +0#0000000&@39
||+0#0000e05#a8a8a8255| | +0&#ffffff0@4|*| |@+0#e000e06&|s|e@1| +0#0000e05&|<+0#00e0e07&|a+0#af5f00255&| +0#00e0e07&|h+0#00e0003&|r|e|f|=+0#00e0e07&|"+0#e000002&|h|t@1|p|s|:|/@1|d|o|c|s|.|o|r|a|c|l|e|.|c|o|m|/|j|a|v|a|s|e|/|s|p|e|c|s|/|j|l|s|/|s|e|2|1|/|h|t|m|l|/|j ||+0#0000e05#a8a8a8255| | +0&#ffffff0@4|*| |@+0#e000e06&|s|e@1| |<+0#00e0e07&|a+0#af5f00255&| +0#00e0e07&|h+0#00e0003&|r|e|f|=+0#00e0e07&|"+0#e000002&|h|t@1|p|s|:|/@1|d|o|c|s|.|o|r|a|c|l|e|.|c|o|m|/|j|a|v|a|s|e|/|s|p|e|c|s|/|j|l|s|/|s|e|2|1|/|h|t|m|@+0#4040ff13&@2
||+0#0000e05#a8a8a8255| |l+0#e000002#ffffff0|s|-|3|.|h|t|m|l|#|j|l|s|-|3|.|1|0|.|5|"|>+0#00e0e07&|3+8#e000e06&|.|1|0|.|5| |S|t|r|i|n|g| |L|i|t|e|r|a|l|s|<+0#00e0e07&|/|a+0#af5f00255&|>+0#00e0e07&| +0#0000000&@24 | +0#0000000&@56|1|0|9|,|3|-|6| @6|9|1|%|
||+0#0000e05#a8a8a8255| | +0&#ffffff0@4|*| |@+0#e000e06&|s|e@1| +0#0000e05&|j+0#00e0e07&|a|v|a|.|b|a|s|e|/|j|a|v|a|.|l|a|n|g|.|O|b|j|e|c|t|#|t|o|S|t|r|i|n|g|(|)| +0#0000e05&|*|/| +0#0000000&@20
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@1| |@+0#0000000&|s|t|a|r|t| +0#0000e05&|r+0#00e0003&|e|g|i|o|n| +0#0000e05&|=| |t+0#e000002&|o|S|t|r|i|n|g| +0#ffffff16#ff404010| +0#0000000#ffffff0@40
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@1| |@+0#0000000&|r|e|p|l|a|c|e| +0#0000e05&|s+0#00e0003&|u|b|s|t|r|i|n|g| +0#0000e05&|=| |'+0#e000002&|"@1|'| +0#0000e05&|r+0#00e0003&|e|p|l|a|c|e|m|e|n|t| +0#0000e05&|=| |"+0#e000002&|\|u|0@1|2@1|\|u|0@1|2@1|"| +0#0000000&@11
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@1| |@+0#0000000&|l|i|n|k| +0#0000e05&|r+0#00e0003&|e|g|e|x| +0#0000e05&|=| |'+0#e000002&|\|b|S|t|r|i|n|g|'| +0#0000e05&|t+0#00e0003&|a|r|g|e|t| +0#0000e05&|=| |j+0#e000002&|a|v|a|.|l|a|n|g|.|S|t|r|i|n|g| +0#0000e05&|t+0#00e0003&|y|p|e| +0#0000e05&|=| |l+0#e000002&|i|n|k|p|l|a|i
| +0#0000e05#a8a8a8255@1|n+0#e000002#ffffff0| +0#0000e05&|:| +0#0000000&@69
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|@+0#e000e06&|O|v|e|r@1|i|d|e| +0#0000000&|p+0#00e0003&|u|b|l|i|c| +0#0000000&|S|t|r|i|n|g| |t|o|S|t|r|i|n|g|(|)| |{| |r+0#af5f00255&|e|t|u|r|n| +0#0000000&|"+0#e000002&@1|;+0#0000000&| |}| @19
@57|1|0|9|,|2|-|5| @6|9|8|%|

View File

@ -0,0 +1,20 @@
||+0#0000e05#a8a8a8255| | +0&#ffffff0@4|*| |@+0#e000e06&|s|e@1| |<+0#00e0e07&|a+0#af5f00255&| +0#00e0e07&|h+0#00e0003&|r|e|f|=+0#00e0e07&|"+0#e000002&|h|t@1|p|s|:|/@1|d|o|c|s|.|o|r|a|c|l|e|.|c|o|m|/|j|a|v|a|s|e|/|s|p|e|c|s|/|j|l|s|/|s|e|2|1|/|h|t|m|l|/|j
||+0#0000e05#a8a8a8255| |l+0#e000002#ffffff0|s|-|3|.|h|t|m|l|#|j|l|s|-|3|.|1|0|.|5|"|>+0#00e0e07&|3+8#e000e06&|.|1|0|.|5| |S|t|r|i|n|g| |L|i|t|e|r|a|l|s|<+0#00e0e07&|/|a+0#af5f00255&|>+0#00e0e07&| +0#0000000&@24
||+0#0000e05#a8a8a8255| | +0&#ffffff0@4|*| |@+0#e000e06&|s|e@1| +0#0000000&@61
||+0#0000e05#a8a8a8255| | +0&#ffffff0@4|*| |<+0#00e0e07&|a+0#af5f00255&| +0#00e0e07&|h+0#00e0003&|r|e|f|=+0#00e0e07&|"+0#e000002&|h|t@1|p|s|:|/@1|d|o|c|s|.|o|r|a|c|l|e|.|c|o|m|/|j|a|v|a|s|e|/|s|p|e|c|s|/|j|l|s|/|s|e|2|1|/|h|t|m|l|/|j|l|s|-|4|.
||+0#0000e05#a8a8a8255| |h+0#e000002#ffffff0|t|m|l|#|j|l|s|-|4|.|3|.|2|"|>+0#00e0e07&|4+8#e000e06&|.|3|.|2| |T|h|e| |C|l|a|s@1| |O|b|j|e|c|t|<+0#00e0e07&|/|a+0#af5f00255&|>+0#00e0e07&| +0#0000000&@30
||+0#0000e05#a8a8a8255| | +0&#ffffff0@4>*| |@+0#e000e06&|s|e@1| |j+0#00e0e07&|a|v|a|.|b|a|s|e|/|j|a|v|a|.|l|a|n|g|.|O|b|j|e|c|t|#|t|o|S|t|r|i|n|g|(|)| +0#0000e05&|*|/| +0#0000000&@20
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@1| |@+0#0000000&|s|t|a|r|t| +0#0000e05&|r+0#00e0003&|e|g|i|o|n| +0#0000e05&|=| |t+0#e000002&|o|S|t|r|i|n|g| +0#ffffff16#ff404010| +0#0000000#ffffff0@40
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@1| |@+0#0000000&|r|e|p|l|a|c|e| +0#0000e05&|s+0#00e0003&|u|b|s|t|r|i|n|g| +0#0000e05&|=| |'+0#e000002&|"@1|'| +0#0000e05&|r+0#00e0003&|e|p|l|a|c|e|m|e|n|t| +0#0000e05&|=| |"+0#e000002&|\|u|0@1|2@1|\|u|0@1|2@1|"| +0#0000000&@11
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@1| |@+0#0000000&|l|i|n|k| +0#0000e05&|r+0#00e0003&|e|g|e|x| +0#0000e05&|=| |'+0#e000002&|\|b|S|t|r|i|n|g|'| +0#0000e05&|t+0#00e0003&|a|r|g|e|t| +0#0000e05&|=| |j+0#e000002&|a|v|a|.|l|a|n|g|.|S|t|r|i|n|g| +0#0000e05&|t+0#00e0003&|y|p|e| +0#0000e05&|=| |l+0#e000002&|i|n|k|p|l|a|i
| +0#0000e05#a8a8a8255@1|n+0#e000002#ffffff0| +0#0000e05&|:| +0#0000000&@69
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|@+0#e000e06&|O|v|e|r@1|i|d|e| +0#0000000&|p+0#00e0003&|u|b|l|i|c| +0#0000000&|S|t|r|i|n|g| |t|o|S|t|r|i|n|g|(|)| |{| |r+0#af5f00255&|e|t|u|r|n| +0#0000000&|"+0#e000002&@1|;+0#0000000&| |}| @19
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@1| |@+0#0000000&|e|n|d| +0#ffffff16#ff404010| +0#0000000#ffffff0@60
| +0#0000e05#a8a8a8255@1|}+0#0000000#ffffff0| @71
|~+0#4040ff13&| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
| +0#0000000&@56|1|2|5|,|3|-|6| @6|B|o|t|

View File

@ -0,0 +1,20 @@
| +0#0000e05#a8a8a8255@1>/+0&#ffffff0@1| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |u|n|l|e|t|!| |g+0&#5fd7ff255|:+0&#ffffff0|j|a|v|a|_|n|o|_|t|a|b|_|s|p|a|c|e|_|e|r@1|o|r| |g|:|j|a|v|a|_|i|g|n|o|r|e|_|j+0&#ffd7d7255|a|v|a|d|o|c| +0#0000000#ffffff0
| +0#0000e05#a8a8a8255@1|/+0&#ffffff0@1| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |u|n|l|e|t|!| |g+0&#5fd7ff255|:+0&#ffffff0|j|a|v|a|_|n|o|_|t|r|a|i|l|_|s|p|a|c|e|_|e|r@1|o|r| +0#0000000&@20
| +0#0000e05#a8a8a8255@1|/+0&#ffffff0@1| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |l|e|t|[|g|:|j|a|v|a|_|s|p|a|c|e|_|e|r@1|o|r|s|,|g|:|j|a|v|a|_|c|o|m@1|e|n|t|_|s|t|r|i|n|g|s|]|=|[|1+0#e000002&|,+0#0000e05&|1+0#e000002&|]+0#0000e05&| +0#0000000&@1
| +0#0000e05#a8a8a8255@1|/+0&#ffffff0@1| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |l|e|t|[|g|:|j|a|v|a|_|i|g|n|o|r|e|_|h|t|m|l|,|g|:|m|a|r|k|d|o|w|n|_|s|y|n|t|a|x|_|c|o|n|c|e|a|l|]|=|[|1+0#e000002&|,+0#0000e05&|1+0#e000002&|]+0#0000e05&
| +0&#a8a8a8255@1| +0#0000000#ffffff0@72
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
| +0#0000e05#a8a8a8255@1|/+0&#ffffff0@1| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |d|e|f|e|r| |e|x|e|c|u|t|e|(|'|m|a|t|c|h| |V|i|s|u|a|l| |/|\|%|>|2+0#e000002&|1|l|\+0#0000e05&|s|\|+|$|/|'|)| +0#0000000&@11
| +0#0000e05#a8a8a8255@1|/+0&#ffffff0@1| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |s+0&#ffd7d7255|e|t|l| +0&#ffffff0|s|p|e|l@1| |f+0&#ffd7d7255|d|c|=+0&#ffffff0|2+0#e000002&| +0#0000e05&|f+0&#ffd7d7255|d|l|=+0&#ffffff0|6+0#e000002&|4| +0#0000e05&|f+0&#ffd7d7255|d|m|=+0&#ffffff0|s|y|n|t|a|x| |f|e|n| |c+0&#ffd7d7255|o|l|e|=+0&#ffffff0|3+0#e000002&| +0#0000e05&|c+0&#ffd7d7255|o|c|u|=+0&#ffffff0|n| +0#0000000&@2
| +0#0000e05#a8a8a8255@1|/+0&#ffffff0@1| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |h|i|g|h|l|i|g|h|t| |l|i|n|k| |j+0&#ffd7d7255|a|v|a|C|o|m@1|e|n|t|S|t|a|r|t| +0&#ffffff0|T+0&#ffd7d7255|o|d|o| +0#0000000#ffffff0@18
| +0#0000e05#a8a8a8255@1|/+0&#ffffff0@1| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |h|i|g|h|l|i|g|h|t| |l|i|n|k| |j+0&#ffd7d7255|a|v|a|M|a|r|k|d|o|w|n|C|o|m@1|e|n|t|T|i|t|l|e| +0&#ffffff0|U|n|d|e|r|l|i|n|e|d| +0#0000000&@4
| +0#0000e05#a8a8a8255@1|/+0&#ffffff0@1| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |h|i|g|h|l|i|g|h|t| |l|i|n|k| |m+0&#ffd7d7255|a|r|k|d|o|w|n|H|2| +0&#ffffff0|N+0&#ffd7d7255|o|n|T|e|x|t| +0#0000000#ffffff0@21
| +0#0000e05#a8a8a8255@1|/+0&#ffffff0@1| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |h|i|g|h|l|i|g|h|t| |l|i|n|k| |m+0&#ffd7d7255|a|r|k|d|o|w|n|H|e|a|d|i|n|g|R|u|l|e| +0&#ffffff0|N+0&#ffd7d7255|o|n|T|e|x|t| +0#0000000#ffffff0@12
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
@57|1|,|1| @10|T|o|p|

View File

@ -0,0 +1,20 @@
| +0#0000e05#a8a8a8255@1|/+0&#ffffff0@1| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |h|i|g|h|l|i|g|h|t| |l|i|n|k| |m+0&#ffd7d7255|a|r|k|d|o|w|n|H|2| +0&#ffffff0|N+0&#ffd7d7255|o|n|T|e|x|t| +0#0000000#ffffff0@21
| +0#0000e05#a8a8a8255@1|/+0&#ffffff0@1| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |h|i|g|h|l|i|g|h|t| |l|i|n|k| |m+0&#ffd7d7255|a|r|k|d|o|w|n|H|e|a|d|i|n|g|R|u|l|e| +0&#ffffff0|N+0&#ffd7d7255|o|n|T|e|x|t| +0#0000000#ffffff0@12
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
| +0#0000e05#a8a8a8255@1> +0#0000000#ffffff0@72
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
|-+0#0000e05#a8a8a8255| |/+0&#ffffff0|*@1|/| +0#0000000&|/+0#0000001#ffff4012|*|/+0#0000e05#ffffff0| |*+0#0000001#ffff4012|/| +0#0000000#ffffff0|/+0#0000001#ffff4012|*| +0#0000e05#ffffff0|/+0#ffffff16#ff404010|*+0#0000001#ffff4012|/| +0#0000000#ffffff0|/+0#0000001#ffff4012|*|/+0#ffffff16#ff404010|*+0#0000001#ffff4012|/| +0#0000000#ffffff0|/+0#0000001#ffff4012|*|/+0#0000e05#ffffff0|/+0#ffffff16#ff404010|*+0#0000001#ffff4012|/| +0#0000000#ffffff0|/+0#0000e05&@2| +8#e000e06&|M|a|r|k|d|o|w|n| |c|o|m@1|e|n|t| |t|e|s|t|s|.| +0#0000000&@13
||+0#0000e05#a8a8a8255| |/+0&#ffffff0@2| +0#0000000&@69
||+0#0000e05#a8a8a8255| |/+0&#ffffff0@2| +0#0000000&|T+0#0000e05&|h|e|r|e| |i|s| |n|o| |e|n|t|r|y| |p|o|i|n|t| |m|e|t|h|o|d| |`+0#e000e06&|m|a|i|n|`|:+0#0000e05&| +0#0000000&@30
||+0#0000e05#a8a8a8255| |/+0&#ffffff0@2| +0#0000000&|{+0#e000e06&|@|s|n|i|p@1|e|t| |f+0#00e0003&|i|l|e| +0#e000e06&|=| |M+0#e000002&|a|r|k|d|o|w|n|S|n|i|p@1|e|t|s|.|j|a|v|a| +0#e000e06&|r+0#00e0003&|e|g|i|o|n| +0#e000e06&|=| |m+0#e000002&|a|i|n| +0#e000e06&|i+0#00e0003&|d| +0#e000e06&|=| |_+0#e000002&|0|1|}+0#e000e06&| +0#0000000&@6
||+0#0000e05#a8a8a8255| |/+0&#ffffff0@2| +0#0000000&@69
||+0#0000e05#a8a8a8255| |/+0&#ffffff0@2| +0#0000000&|T+0#0000e05&|h|e|r|e| |i|s| |n|o| |t|e|x|t|u|a|l| |r|e|p|r|e|s|e|n|t|a|t|i|o|n|:| +0#0000000&@33
||+0#0000e05#a8a8a8255| |/+0&#ffffff0@2| +0#0000000&|{+0#e000e06&|@|s|n|i|p@1|e|t| |c+0#00e0003&|l|a|s@1| +0#e000e06&|=| |M+0#e000002&|a|r|k|d|o|w|n|S|n|i|p@1|e|t|s| +0#e000e06&|r+0#00e0003&|e|g|i|o|n| +0#e000e06&|=| |t+0#e000002&|o|S|t|r|i|n|g| +0#e000e06&|i+0#00e0003&|d| +0#e000e06&|=| |_+0#e000002&|0|2|}+0#e000e06&| +0#0000000&@6
| +0#0000e05#a8a8a8255@1|c+0#00e0003#ffffff0|l|a|s@1| +0#0000000&|M|a|r|k|d|o|w|n|C|o|m@1|e|n|t|s|T|e|s|t|s| |i+0#00e0003&|m|p|l|e|m|e|n|t|s| +0#0000000&|C|o|m|p|a|r|a|b|l|e|<|M|a|r|k|d|o|w|n|C|o|m@1|e|n|t|s|T|e|s|t|s|>|
| +0#0000e05#a8a8a8255@1|{+0#0000000#ffffff0| @2|/+0#0000e05&@1| |J+0&#ffd7d7255|D|K| +0&#ffffff0|2+0#e000002&|3|++0#0000e05&|.| +0#0000000&@57
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|p+0#00e0003&|r|i|v|a|t|e| +0#0000000&|M|a|r|k|d|o|w|n|C|o|m@1|e|n|t|s|T|e|s|t|s|(|)| |{| |}| @33
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
|-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|/+0#0000e05&@2| +8#e000e06&|N|o|-|o|p|,| |i|.| +0#0000e05&|e+0&#5fd7ff255|.+0&#ffffff0| |n+0&#5fd7ff255|o| +0&#ffffff0|o|p|e|r|a|t|i|o|n|.| +0#0000000&@38
@57|1|9|,|0|-|1| @7|1|0|%|

View File

@ -0,0 +1,20 @@
|-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|/+0#0000e05&@2| +8#e000e06&|N|o|-|o|p|,| |i|.| +0#0000e05&|e+0&#5fd7ff255|.+0&#ffffff0| |n+0&#5fd7ff255|o| +0&#ffffff0|o|p|e|r|a|t|i|o|n|.| +0#0000000&@38
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| +0#0000000&|(+0#0000e05&|{+0#e000e06&|@|l|i|t|e|r|a|l|@|l|i|t|e|r|a|l|}| +0#0000e05&|m|a|y| |b|e| |u|s|e|d| |w|i|t|h| |`+0#e000e06&|.|`| +0#0000e05&|f|o|r| |c|o|n|t|r|a|c|t|i|o|n|.|)| +0#0000000&@6
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| |@+0#e000e06&|r|e|t|u|r|n| +0#0000e05&|`+0#e000e06&|n|u|l@1|`| +0#0000000&@50
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|V|o|i|d| |n|o|O|p|1|(|)| |{| |r+0#af5f00255&|e|t|u|r|n| +0#0000000&|n+0#e000002&|u|l@1|;+0#0000000&| |}| @39
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
|-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3>/+0#0000e05&@2| +8#e000e06&|N|o|-|o|p|,| |i|.|e|.| +0#0000e05&|n|o| |o|p|e|r|a|t|i|o|n|.| +0#0000000&@39
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| +0#0000000&|(+0#0000e05&|{+0#e000e06&|@|l|i|t|e|r|a|l|<|!|-@1| |-@1|>|}| +0#0000e05&|m|a|y| |b|e| |u|s|e|d| |a|f|t|e|r| |`+0#e000e06&|.|`| +0#0000e05&|f|o|r| |c|o|n|t|r|a|c|t|i|o|n|.|)| +0#0000000&@5
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| |@+0#e000e06&|r|e|t|u|r|n| +0#0000e05&|`+0#e000e06&|n|u|l@1|`| +0#0000000&@50
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|V|o|i|d| |n|o|O|p|2|(|)| |{| |r+0#af5f00255&|e|t|u|r|n| +0#0000000&|n+0#e000002&|u|l@1|;+0#0000000&| |}| @39
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
|-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|/+0#0000e05&@2| +8#e000e06&|N|o|-|o|p|,| |i|.|e|\|u+8&#ffd7d7255|0@1|2|e| +8&#ffffff0|n|o| |o|p|e|r|a|t|i|o|n|.| +0#0000000&@34
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| +0#0000000&|(+0#0000e05&|{+0#e000e06&|@|l|i|t|e|r|a|l|\|u|0@1|5|c|u|0@1|2|e|}| +0#0000e05&|i|s| |p|r|o|c|e|s@1|e|d| |e|a|r|l|y|,| |u|s|e| |a|l|t|e|r|n|a|t|i|v|e|s|.|)| +0#0000000&@3
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| |@+0#e000e06&|r|e|t|u|r|n| +0#0000e05&|`+0#e000e06&|n|u|l@1|`| +0#0000000&@50
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|V|o|i|d| |n|o|O|p|3|(|)| |{| |r+0#af5f00255&|e|t|u|r|n| +0#0000000&|n+0#e000002&|u|l@1|;+0#0000000&| |}| @39
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
|-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|/+0#0000e05&@2| +8#e000e06&|N|o|-|o|p|,| |i|.|e|{+0&&|@|l|i|t|e|r|a|l| |.|}| +8&&|n|o| |o|p|e|r|a|t|i|o|n|.| +0#0000000&@28
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| |@+0#e000e06&|r|e|t|u|r|n| +0#0000e05&|`+0#e000e06&|n|u|l@1|`| +0#0000000&@50
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|V|o|i|d| |n|o|O|p|4|(|)| |{| |r+0#af5f00255&|e|t|u|r|n| +0#0000000&|n+0#e000002&|u|l@1|;+0#0000000&| |}| @39
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
@57|3|7|,|2|-|5| @7|2|4|%|

View File

@ -0,0 +1,20 @@
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
|-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|/+0#0000e05&@2| +8#e000e06&|N|o|-|o|p|,| |i|.|e|.|<+0&&|!|-@1| |-@1|>| +8&&|n|o| |o|p|e|r|a|t|i|o|n|.| +0#0000000&@31
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| |@+0#e000e06&|r|e|t|u|r|n| +0#0000e05&|`+0#e000e06&|n|u|l@1|`| +0#0000000&@50
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|V|o|i|d| |n|o|O|p|5|(|)| |{| |r+0#af5f00255&|e|t|u|r|n| +0#0000000&|n+0#e000002&|u|l@1|;+0#0000000&| |}| @39
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
|-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3>/+0#0000e05&@2| +8#e000e06&|N|o|-|o|p|,| |i|.|e|.|&+0&&|n|b|s|p|;|n+8&&|o| |o|p|e|r|a|t|i|o|n|.| +0#0000000&@34
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| |@+0#e000e06&|r|e|t|u|r|n| +0#0000e05&|`+0#e000e06&|n|u|l@1|`| +0#0000000&@50
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|V|o|i|d| |n|o|O|p|6|(|)| |{| |r+0#af5f00255&|e|t|u|r|n| +0#0000000&|n+0#e000002&|u|l@1|;+0#0000000&| |}| @39
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@2| |{+8#e000e06&|@+0&&|r|e|t|u|r|n| +8&&|`+0&&|n|u|l@1|`|,+8&&| |w|i|t|h| |n|o|-|o|p|,| |i|.|e|.| |n|o| |o|p|e|r|a|t|i|o|n|}| +0#0000000&@17
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|V|o|i|d| |n|o|O|p|7|(|)| |{| |r+0#af5f00255&|e|t|u|r|n| +0#0000000&|n+0#e000002&|u|l@1|;+0#0000000&| |}| @39
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@2| |{+8#e000e06&|@+0&&|r|e|t|u|r|n| +8&&|`+0&&|n|u|l@1|`|,+8&&| |w|i|t|h| |n|o|-|o|p|,| |i|.|e|.| |n|o| |o|p|e|r|a|t|i|o|n|}|.@1| +0#0000000&@15
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|V|o|i|d| |n|o|O|p|8|(|)| |{| |r+0#af5f00255&|e|t|u|r|n| +0#0000000&|n+0#e000002&|u|l@1|;+0#0000000&| |}| @39
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@2| |{+8#e000e06&|@+0&&|r|e|t|u|r|n| +8&&|`+0&&|n|u|l@1|`|,+8&&| |w|i|t|h| |n|o|-|o|p|,| |i|.|e|.| |n|o| |o|p|e|r|a|t|i|o|n|}| |.| |.| +0#0000000&@13
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|V|o|i|d| |n|o|O|p|9|(|)| |{| |r+0#af5f00255&|e|t|u|r|n| +0#0000000&|n+0#e000002&|u|l@1|;+0#0000000&| |}| @39
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
|-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|/+0#0000e05&@2| |{+8#e000e06&|@+0&&|r|e|t|u|r|n| +8&&|t|h|e| |m|a|j|o|r| |J|a|v|a| |v|e|r|s|i|o|n|}| +0#0000000&@32
@57|5@1|,|2|-|5| @7|3|8|%|

View File

@ -0,0 +1,20 @@
|-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|/+0#0000e05&@2| |{+8#e000e06&|@+0&&|r|e|t|u|r|n| +8&&|t|h|e| |m|a|j|o|r| |J|a|v|a| |v|e|r|s|i|o|n|}| +0#0000000&@32
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| |@+0#e000e06&|h|i|d@1|e|n| +0#0000000&@57
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|p+0#00e0003&|r|o|t|e|c|t|e|d| +0#0000000&|i+0#00e0003&|n|t| +0#0000000&|m|a|j|o|r|V|e|r|s|i|o|n|(|)| |{| |r+0#af5f00255&|e|t|u|r|n| +0#0000000&|2+0#e000002&|3|;+0#0000000&| |}| @25
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
|-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|/+0#0000e05&@2| @3|{+8#e000e06&|@|s|u|m@1|a|r|y| |C|o|m|p|a|r|e|s| |t|h|i|s| |i|n|s|t|a|n|c|e| |w|i|t|h| |t|h|e| |p|a|s@1|e|d| |`+0&&|t|h|a|t|`| +0#0000000&@6
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3>/@2| +0#0000000&|i+8#e000e06&|n|s|t|a|n|c|e| |f|o|r| |o|r|d|e|r| |b|y| |i|n|v|o|k|i|n|g| |[+0#0000000&|I+8#e000e06&|n|t|e|g|e|r|.|c|o|m|p|a|r|e|(|i|n|t|,| |i|n|t|)|]+0#0000000&| @6
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| +0#0000000&|a+8#e000e06&|n|d| |p|a|s@1|i|n|g| |i|t| |`+0&&|t|h|i|s|.|m|a|j|o|r|V|e|r|s|i|o|n|(|)|`| +8&&|a|n|d| +0#0000000&@24
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| +0#0000000&|`+0#e000e06&|t|h|a|t|.|m|a|j|o|r|V|e|r|s|i|o|n|(|)|`| +8&&|a|s| |r|e|s|p|e|c|t|i|v|e| |@|a|r|g|u|m|e|n|t|s|.|}| +0#0000000&@16
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| +0#0000000&|{+0#e000e06&|@|i|n|h|e|r|i|t|D|o|c|}| +0#0000000&@51
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|@+0#e000e06&|O|v|e|r@1|i|d|e| +0#0000000&|p+0#00e0003&|u|b|l|i|c| +0#0000000&|i+0#00e0003&|n|t| +0#0000000&|c|o|m|p|a|r|e|T|o|(|M|a|r|k|d|o|w|n|C|o|m@1|e|n|t|s|T|e|s|t|s| |t|h|a|t|)| @10
|-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|{| @67
||+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@7|j|a|v|a|.|u|t|i|l|.|O|b|j|e|c|t|s|.|r|e|q|u|i|r|e|N|o|n|N|u|l@1|(|t|h|a|t|,| |"+0#e000002&|t|h|a|t|"|)+0#0000000&|;| @17
||+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@7|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|I|n|t|e|g|e|r|.|c|o|m|p|a|r|e|(|t+0#00e0003&|h|i|s|.+0#0000000&|m|a|j|o|r|V|e|r|s|i|o|n|(|)|,| @21
||+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@23|t|h|a|t|.|m|a|j|o|r|V|e|r|s|i|o|n|(|)@1|;| @27
||+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|}| @67
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
|-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|/+0#0000001#ffff4012|*|*+0#0000e05#ffffff0| |R|e|t|u|r|n|s| |a|n| |e|m|p|t|y| |s|t|r|i|n|g| |f|o|r| |a|n| |@|O|v|e|r@1|i|d|e| |a|n@1|o|t|a|t|e|d| |m|e|t|h|o|d| +0#0000000&@7
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|*| |(|s|e@1| |C|h|a|p|t|e|r| |9+0#e000002&|.|6|.|4|.|4| +0#0000e05&|{|@|l|i|t|e|r|a|l| |@|O|v|e|r@1|i|d|e|}| |i|n| |a| |J|a|v|a| |L|a|n|g|u|a|g|e| +0#0000000&@6
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|*| |S|p|e|c|i|f|i|c|a|t|i|o|n|)| |o|v|e|r@1|i|d@1|e|n| |f|r|o|m| |<|c|o|d|e|>|j|a|v|a|.|l+0&#ffd7d7255|a|n|g|.+0&#ffffff0|O|b|j|e|c|t|<|/|c|o|d|e|>| +0#0000000&@6
@57|7|3|,|2|-|5| @7|5|2|%|

View File

@ -0,0 +1,20 @@
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|*| |S|p|e|c|i|f|i|c|a|t|i|o|n|)| |o|v|e|r@1|i|d@1|e|n| |f|r|o|m| |<|c|o|d|e|>|j|a|v|a|.|l+0&#ffd7d7255|a|n|g|.+0&#ffffff0|O|b|j|e|c|t|<|/|c|o|d|e|>| +0#0000000&@6
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|*| +0#0000000&@67
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|*| |@|r|e|t|u|r|n| |a|n| |e|m|p|t|y| |s|t|r|i|n|g| |*+0#0000001#ffff4012|/|/+0#0000e05#ffffff0@1| |N|o| |p|e|r|i|o|d| |f|o|r| |t|h|e| |a|b|o|v|e| |s|u|m@1|a|r|y|!| +0#0000000&@5
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|p+0#00e0003&|r|i|v|a|t|e| +0#0000000&|S|t|r|i|n|g| |a|s|S|t|r|i|n|g|(|)| |{| |r+0#af5f00255&|e|t|u|r|n| +0#0000000&|"+0#e000002&@1|;+0#0000000&| |}| @28
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
|-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3>/+0#0000e05&@2| +8#e000e06&|R|e|t|u|r|n|s| |a|n| |e|m|p|t|y| |s|t|r|i|n|g| |f|o|r| |a|n| |@|O|v|e|r@1|i|d|e| |a|n@1|o|t|a|t|e|d| |m|e|t|h|o|d| +0#0000000&@7
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| +0#0000000&|(+8#e000e06&|s|e@1| |C|h|a|p|t|e|r| |9|.|6|.|4|.|4| |{+0&&|@|l|i|t|e|r|a|l| |@|O|v|e|r@1|i|d|e|}| +8&&|i|n| |a| |J|a|v|a| |L|a|n|g|u|a|g|e| +0#0000000&@4
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| +0#0000000&|S+8#e000e06&|p|e|c|i|f|i|c|a|t|i|o|n|)| |o|v|e|r@1|i|d@1|e|n| |f|r|o|m| |`+0&&|j|a|v|a|.|l|a|n|g|.|O|b|j|e|c|t|`| +0#0000000&@15
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| +0#0000000&@65
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| |@+0#e000e06&|r|e|t|u|r|n| +0#0000e05&|a|n| |e|m|p|t|y| |s|t|r|i|n|g| |/@2| +8#e000e06&|N|o| |p|e|r|i|o|d| |f|o|r| |t|h|e| |a|b|o|v|e| |s|u|m@1|a|r|y|!| +0#0000000&@4
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|@+0#e000e06&|O|v|e|r@1|i|d|e| +0#0000000&|p+0#00e0003&|u|b|l|i|c| +0#0000000&|S|t|r|i|n|g| |t|o|S|t|r|i|n|g|(|)| |{| |r+0#af5f00255&|e|t|u|r|n| +0#0000000&|a|s|S|t|r|i|n|g|(|)|;| |}| @11
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@2| +8#e000e06&|A| |s|u|m@1|a|r|y| |c|o|m@1|e|n|t|.| +0#0000000&@46
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|s+0#00e0003&|t|a|t|i|c| +0#0000000&|f+0#00e0003&|i|n|a|l| +0#0000000&|S|t|r|i|n|g| |M|A|R|K|D|O|W|N|_|C|O|M@1|E|N|T|_|A| |=| |"+0#e000002&|/@2|"|;+0#0000000&| @21
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@2| |N|o| |s|u|m@1|a|r|y| |c|o|m@1|e|n|t| |(|t|r|y| |f|i|d@1|l|i|n|g| |w|i|t|h| |t|h|e| |a|b|o|v|e| |s|t|r|i|n|g| |v|a|l|u|e|)|.| +0#0000000&@2
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|s+0#00e0003&|t|a|t|i|c| +0#0000000&|f+0#00e0003&|i|n|a|l| +0#0000000&|S|t|r|i|n|g| |M|A|R|K|D|O|W|N|_|C|O|M@1|E|N|T|_|B| |=| |"+0#e000002&|/@2|"|;+0#0000000&| @21
| +0#0000e05#a8a8a8255@1|}+0#0000000#ffffff0| @71
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
| +0#0000e05#a8a8a8255@1|/+0&#ffffff0@1| |j+0&#ffd7d7255|a|v|a|d|o|c| +0&#ffffff0|-@1|s|n|i|p@1|e|t|-|p|a|t|h| |.| |-@1|s|o|u|r|c|e|-|p|a|t|h| |.| |-|d| |/|t+0&#ffd7d7255|m|p|/+0&#ffffff0|m+0&#ffd7d7255|d|_+0&#ffffff0|d|o|c|s|/| |-|p|a|c|k|a|g|e| |\| +0#0000000&@1
@57|9|1|,|2|-|5| @7|6@1|%|

View File

@ -0,0 +1,20 @@
| +0#0000e05#a8a8a8255@1|/+0&#ffffff0@1| |j+0&#ffd7d7255|a|v|a|d|o|c| +0&#ffffff0|-@1|s|n|i|p@1|e|t|-|p|a|t|h| |.| |-@1|s|o|u|r|c|e|-|p|a|t|h| |.| |-|d| |/|t+0&#ffd7d7255|m|p|/+0&#ffffff0|m+0&#ffd7d7255|d|_+0&#ffffff0|d|o|c|s|/| |-|p|a|c|k|a|g|e| |\| +0#0000000&@1
| +0#0000e05#a8a8a8255@1|/+0&#ffffff0@1| +0#ffffff16#ff404010| +0#0000e05#ffffff0|-|t|a|g| |'|j+0&#ffd7d7255|l|s|:+0&#ffffff0|a|:|S|e@1| |J|a|v|a| |L|a|n|g|u|a|g|e| |S|p|e|c|i|f|i|c|a|t|i|o|n|:|'| |M+0&#ffd7d7255|a|r|k|d|o|w|n|S|n|i|p@1|e|t|s|.+0&#ffffff0|j|a|v|a| +0#0000000&@1
| +0#0000e05#a8a8a8255@1|/+0&#ffffff0@2| +8#e000e06&|S|n|i|p@1|e|t|s| |f|o|r| |M|a|r|k|d|o|w|n| |c|o|m@1|e|n|t| |t|e|s|t|s|.| +0#0000000&@32
| +0#0000e05#a8a8a8255@1|c+0#00e0003#ffffff0|l|a|s@1| +0#0000000&|M|a|r|k|d|o|w|n|S|n|i|p@1|e|t|s| @50
| +0#0000e05#a8a8a8255@1|{+0#0000000#ffffff0| @2|/+0#0000001#ffff4012|*| +0#ffffff16#ff404010| +0#0000e05#ffffff0|T|R|A|I|L|I|N|G| |B|L|A|N|K|S| |A|N|D| |M+0&#ffd7d7255|E|S@1|P|I|L@1|I|N|G|S| +0&#ffffff0|A|R|E| |S|I|G|N|I|F|I|C|A|N|T|!| |*+0#0000001#ffff4012|/| +0#0000000#ffffff0@12
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3>p+0#00e0003&|r|i|v|a|t|e| +0#0000000&|M|a|r|k|d|o|w|n|S|n|i|p@1|e|t|s|(|)| |{| |}| @38
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
|-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|/+0#0000e05&@2| +8#e000e06&|T|h|e| |m|e|t|h|o|d| |[+0#0000000&|`+0#e000e06&|m|a|i|n|`|]+0#0000000&| +8#e000e06&|m|u|s|t| |b|e| |d|e|c|l|a|r|e|d| |`+0&&|p|u|b|l|i|c|`|,+8&&| +0#0000000&@18
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| +0#0000000&|`+0#e000e06&|s|t|a|t|i|c|`|,+8&&| |a|n|d| |`+0&&|v|o|i|d|`|.+8&&| +0#0000e05&@1|I|t| |m|u|s|t| |s|p|e|c|i|f|y| |a| |f|o|r|m|a|l| |p|a|r|a|m|e|t|e|r| +0#0000000&@7
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| +0#0000000&|w+0#0000e05&|h|o|s|e| |d|e|c|l|a|r|e|d| |t|y|p|e| |i|s| |a|r@1|a|y| |o|f| |[+0#0000000&|S+8#e000e06&|t|r|i|n|g|]+0#0000000&|.+0#0000e05&| @1|T|h|e|r|e|f|o|r|e|,| +0#0000000&@11
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| +0#0000000&|e|i|t|h|e|r| +0#0000e05&|o|f| |t|h|e| |f|o|l@1|o|w|i|n|g| |d|e|c|l|a|r|a|t|i|o|n|s| |i|s| |a|c@1|e|p|t|a|b|l|e|.| @1|[|^|\+0#e000e06&|*|]+0#0000e05&| +0#0000000&@6
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| +0#0000000&@65
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| +0#e000e06&|-@62| +0#0000000&@1
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| +0#4040ff13&|D|E|C|L|A|R|A|T|I|O|N|S| |(|[+0#0000000&|m+8#e000e06&|a|i|n|(|S|t|r|i|n|g|\+0&&|[|\|]|)+8&&|]+0#0000000&|[+0#0000e05&|#+0#00e0003&|m|a|i|n|(|S|t|r|i|n|g|\|[|\|]|)|]+0#0000e05&|)+0#4040ff13&|:| +0#0000000&@11
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| +0#4040ff13&|-@52| +0#0000000&@11
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| +0#af5f00255&|*| +0#0000e05&|E|.|g|.| |{+0#e000e06&|@|s|n|i|p@1|e|t| |l+0#00e0003&|a|n|g|=+0#e000e06&|"+0#e000002&|j|a|v|a|"|:+0#e000e06&| +0#0000000&@35
||+0#0000e05#a8a8a8255| | +0#e000e06#ffffff0@3|/@2| |/@1| |@+0#0000000&|h|i|g|h|l|i|g|h|t| +0#e000e06&|s+0#00e0003&|u|b|s|t|r|i|n|g|=+0#e000e06&|"+0#e000002&|m|a|i|n|"| +0#e000e06&|t+0#00e0003&|y|p|e|=+0#e000e06&|"+0#e000002&|i|t|a|l|i|c|"|:+0#e000e06&| +0#0000000&@19
||+0#0000e05#a8a8a8255| | +0#e000e06#ffffff0@3|/@2| @3|p|u|b|l|i|c| |s|t|a|t|i|c| |v|o|i|d| |m|a|i|n|(|S|t|r|i|n|g|[|]| |a|r|g|s|)| |{| |}| +0#0000000&@19
||+0#0000e05#a8a8a8255| | +0#e000e06#ffffff0@3|/@2| |}| +0#0000000&@63
@57|1|0|9|,|2|-|5| @6|8|0|%|

View File

@ -0,0 +1,20 @@
||+0#0000e05#a8a8a8255| | +0#e000e06#ffffff0@3|/@2| |}| +0#0000000&@63
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| +0#af5f00255&|+| +0#0000e05&|E|.|g|.| +0#0000000&@58
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| |<+0#00e0e07&|p+0#af5f00255&|r|e| +0#00e0e07&|c+0#00e0003&|l|a|s@1|=+0#00e0e07&|"+0#e000002&|s|n|i|p@1|e|t|"|>+0#00e0e07&| +0#0000000&@43
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| +0#e000e06&@3|p|u|b|l|i|c| |s|t|a|t|i|c| |v|o|i|d| |m|a|i|n|(|S|t|r|i|n|g|.@2| |a|r|g|s|)| |{| |}| +0#0000000&@18
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| |<+0#00e0e07&|/|p+0#af5f00255&|r|e|>+0#00e0e07&| +0#0000000&@58
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3>/@2| +0#0000000&@65
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| |@+0#e000e06&|p|a|r|a|m| |a+0#00e0e07&|r|g|s| +0#0000e05&|o|p|t|i|o|n|a|l| |c+0&#ffd7d7255|o|m@1|a|n|d|e|-+0&#ffffff0|l|i|n|e| |a|r|g|u|m|e|n|t|s| +0#0000001#a8a8a8255| +0#0000000#ffffff0@19
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| |@|j+0&#ffd7d7255|l|s| +0&#ffffff0|1|2|.|1|.|4| |I|n|v|o|k|e| |`+0#e000e06&|T|e|s|t|.|m|a|i|n|`| +0#0000000&@34
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| +0#0000000&@65
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| |[|^+0#00e0003&|\|*|]+0#0000e05&|:| |@+0#e000002&|j|l|s| +0#0000e05&|1|2|.|1|.|4| |I|n|v|o|k|e| |`+0#e000e06&|T|e|s|t|.|m|a|i|n|`| +0#0000000&@27
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@1| |@+0#0000000&|s|t|a|r|t| +0#0000e05&|r+0#00e0003&|e|g|i|o|n| +0#0000e05&|=| |m+0#e000002&|a|i|n| +0#0000001#a8a8a8255@4| +0#0000000#ffffff0@40
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@1| |@+0#0000000&|l|i|n|k| +0#0000e05&|s+0#00e0003&|u|b|s|t|r|i|n|g| +0#0000e05&|=| |'+0#e000002&|S|t|r|i|n|g|'| +0#0000e05&|t+0#00e0003&|a|r|g|e|t| +0#0000e05&|=| |'+0#e000002&|j|a|v|a|.|l|a|n|g|.|S|t|r|i|n|g|'| +0#0000e05&|:| +0#0000000&@9
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|p+0#00e0003&|u|b|l|i|c| +0#0000000&|s+0#00e0003&|t|a|t|i|c| +0#0000000&|v+0#00e0003&|o|i|d| +0#0000000&|m|a|i|n|(|S|t|r|i|n|g|[|]| |a|r|g|s|)| |{| |}| @26
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@1| |@+0#0000000&|e|n|d| +0#0000001#a8a8a8255| +0#0000000#ffffff0@60
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
|-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|/+0#0000e05&@2| |{+8#e000e06&|@+0&&|r|e|t|u|r|n| +8&&|a|n| |e|m|p|t|y| |s|t|r|i|n|g|}| +0#0000000&@39
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| |@+0#e000e06&|s|e@1| |S+0#00e0e07&|t|r|i|n|g| +0#0000e05&|[+0#0000000&|3+8#e000e06&|.|1|0|.|5| |S|t|r|i|n|g| |L|i|t|e|r|a|l|s|]+0#0000000&|(+0#0000e05&|h+0#e000002&|t@1|p|s|:|/@1|d|o|c|s|.|o|r|a|c|l|e|.|c|o|m|/|j|a|v|a
||+0#0000e05#a8a8a8255| |s+0#e000002#ffffff0|e|/|s|p|e|c|s|/|j|l|s|/|s|e|2|1|/|h|t|m|l|/|j|l|s|-|3|.|h|t|m|l|#|j|l|s|-|3|.|1|0|.|5|)+0#0000e05&| +0#0000000&@27
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| |@+0#e000e06&|s|e@1| |O+0#00e0e07&|b|j|e|c|t| +0#0000000&@53
@57|1|2|7|,|2|-|5| @6|9|3|%|

View File

@ -0,0 +1,20 @@
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| |@+0#e000e06&|s|e@1| |O+0#00e0e07&|b|j|e|c|t| +0#0000000&@53
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| |[+0#0000000&|4+8#e000e06&|.|3|.|2| |T|h|e| |C|l|a|s@1| |O|b|j|e|c|t|]+0#0000000&|(+0#0000e05&|h+0#e000002&|t@1|p|s|:|/@1|d|o|c|s|.|o|r|a|c|l|e|.|c|o|m|/|j|a|v|a|s|e|/|s|p|e|c|s|/|j|l|s
||+0#0000e05#a8a8a8255| |/+0#e000002#ffffff0|s|e|2|1|/|h|t|m|l|/|j|l|s|-|4|.|h|t|m|l|#|j|l|s|-|4|.|3|.|2|)+0#0000e05&| +0#0000000&@40
||+0#0000e05#a8a8a8255| | +0&#ffffff0@3|/@2| |@+0#e000e06&|s|e@1| |j+0#00e0e07&|a|v|a|.|b|a|s|e|/|j|a|v|a|.|l|a|n|g|.|O|b|j|e|c|t|#|t|o|S|t|r|i|n|g|(|)| +0#0000000&@22
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@1| |@+0#0000000&|s|t|a|r|t| +0#0000e05&|r+0#00e0003&|e|g|i|o|n| +0#0000e05&|=| |t+0#e000002&|o|S|t|r|i|n|g| +0#0000001#a8a8a8255| +0#0000000#ffffff0@40
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3>/+0#0000e05&@1| |@+0#0000000&|r|e|p|l|a|c|e| +0#0000e05&|s+0#00e0003&|u|b|s|t|r|i|n|g| +0#0000e05&|=| |'+0#e000002&|"@1|'| +0#0000e05&|r+0#00e0003&|e|p|l|a|c|e|m|e|n|t| +0#0000e05&|=| |"+0#e000002&|\|u|0@1|2@1|\|u|0@1|2@1|"| +0#0000000&@11
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@1| |@+0#0000000&|l|i|n|k| +0#0000e05&|r+0#00e0003&|e|g|e|x| +0#0000e05&|=| |'+0#e000002&|\|b|S|t|r|i|n|g|'| +0#0000e05&|t+0#00e0003&|a|r|g|e|t| +0#0000e05&|=| |j+0#e000002&|a|v|a|.|l|a|n|g|.|S|t|r|i|n|g| +0#0000e05&|t+0#00e0003&|y|p|e| +0#0000e05&|=| |l+0#e000002&|i|n|k|p|l|a|i
| +0#0000e05#a8a8a8255@1|n+0#e000002#ffffff0| +0#0000e05&|:| +0#0000000&@69
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|@+0#e000e06&|O|v|e|r@1|i|d|e| +0#0000000&|p+0#00e0003&|u|b|l|i|c| +0#0000000&|S|t|r|i|n|g| |t|o|S|t|r|i|n|g|(|)| |{| |r+0#af5f00255&|e|t|u|r|n| +0#0000000&|"+0#e000002&@1|;+0#0000000&| |}| @19
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@1| |@+0#0000000&|e|n|d| +0#0000001#a8a8a8255| +0#0000000#ffffff0@60
| +0#0000e05#a8a8a8255@1|}+0#0000000#ffffff0| @71
|~+0#4040ff13&| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
| +0#0000000&@56|1|4|3|,|2|-|5| @6|B|o|t|

View File

@ -10,7 +10,7 @@
| +0#0000e05&|*| +0#0000000&@72 | +0#0000e05&|*| +0#0000000&@72
| +0#0000e05&|*| |@+0#e000e06&|u|s|e|s| |o+0#00e0e07&|r|g|.|d|e|m|o|.|i|n|t|e|r|n|a|l|.|T|e|s|t|a|b|l|e| +0#0000000&@39 | +0#0000e05&|*| |@+0#e000e06&|u|s|e|s| |o+0#00e0e07&|r|g|.|d|e|m|o|.|i|n|t|e|r|n|a|l|.|T|e|s|t|a|b|l|e| +0#0000000&@39
| +0#0000e05&|*| |@+0#e000e06&|p|r|o|v|i|d|e|s| |o+0#00e0e07&|r|g|.|d|e|m|o|.|i|n|t|e|r|n|a|l|.|T|e|s|t|a|b|l|e| +0#0000000&@35 | +0#0000e05&|*| |@+0#e000e06&|p|r|o|v|i|d|e|s| |o+0#00e0e07&|r|g|.|d|e|m|o|.|i|n|t|e|r|n|a|l|.|T|e|s|t|a|b|l|e| +0#0000000&@35
| +0#0000e05&|*| |@+0#e000e06&|s|e@1| +0#0000e05&|S+0#00e0e07&|e|r|v|i|c|e|L|o|a|d|e|r| +0#0000000&@53 | +0#0000e05&|*| |@+0#e000e06&|s|e@1| |S+0#00e0e07&|e|r|v|i|c|e|L|o|a|d|e|r| +0#0000000&@53
| +0#0000e05&|*|/| +0#0000000&@71 | +0#0000e05&|*|/| +0#0000000&@71
|m+0#00e0003&|o|d|u|l|e| +0#0000000&|o|r|g|.|m+0#00e0003&|o|d|u|l|e|.+0#0000000&|i|n|f|o|.|d|e|m|o| |/+0#0000e05&@1| |J|D|K| |2|3|+| |(|-@1|e|n|a|b|l|e|-|p|r|e|v|i|e|w| |-@1|r|e|l|e|a|s|e| |2|3|)|.| +0#0000000&@3 |m+0#00e0003&|o|d|u|l|e| +0#0000000&|o|r|g|.|m+0#00e0003&|o|d|u|l|e|.+0#0000000&|i|n|f|o|.|d|e|m|o| |/+0#0000e05&@1| |J|D|K| |2|3|+| |(|-@1|e|n|a|b|l|e|-|p|r|e|v|i|e|w| |-@1|r|e|l|e|a|s|e| |2|3|)|.| +0#0000000&@3
|{| @73 |{| @73

View File

@ -13,7 +13,7 @@
@16|1+0#e000002&|e|+|3|,+0#0000000&| |1+0#e000002&|E|+|3|D|,+0#0000000&| |1+0#e000002&|e|+|3|f|,+0#0000000&| @39 @16|1+0#e000002&|e|+|3|,+0#0000000&| |1+0#e000002&|E|+|3|D|,+0#0000000&| |1+0#e000002&|e|+|3|f|,+0#0000000&| @39
@12|1+0#e000002&|d|,+0#0000000&| |1+0#e000002&|D|,+0#0000000&| |1+0#e000002&|f|,+0#0000000&| |1+0#e000002&|F|,+0#0000000&| @47 @12|1+0#e000002&|d|,+0#0000000&| |1+0#e000002&|D|,+0#0000000&| |1+0#e000002&|f|,+0#0000000&| |1+0#e000002&|F|,+0#0000000&| @47
@75 @75
|/+0#0000e05&@3| |M|A|L|F|O|R|M|E|D|:| |:|l|e|t| |g|:|j|a|v|a|_|c|o|m@1|e|n|t|_|s|t|r|i|n|g|s| |=| |1| ||| |d|o|a|u|t|o|c|m|d| |S|y|n|t|a|x| +0#0000000&@8 |/+0#0000e05&@2|/+0#e000e06&| |M|A|L|F|O|R|M|E|D|:| |:|l|e|t| |g|:|j|a|v|a|_+0#ffffff16#ff404010|c+0#e000e06#ffffff0|o|m@1|e|n|t|_+0#ffffff16#ff404010|s+0#e000e06#ffffff0|t|r|i|n|g|s| |=| |1| ||| |d|o|a|u|t|o|c|m|d| |S|y|n|t|a|x| +0#0000000&@8
|/+0#0000e05&@1| @9|0|_|x|.|0|p|0|,| |0|x|.|_|0|p|0|,| |0|x|.|0|_|p|0|,| |0|x|.|0|p|_|0|,| |0|x|.|0|p|0|_|,| +0#0000000&@18 |/+0#0000e05&@1| @9|0|_|x|.|0|p|0|,| |0|x|.|_|0|p|0|,| |0|x|.|0|_|p|0|,| |0|x|.|0|p|_|0|,| |0|x|.|0|p|0|_|,| +0#0000000&@18
|/+0#0000e05&@1| @9|0|x|0|_|.|0|p|0|,| |0|x|_|0|.|0|p|0|,| |0|x|p|0|,| +0#0000000&@37 |/+0#0000e05&@1| @9|0|x|0|_|.|0|p|0|,| |0|x|_|0|.|0|p|0|,| |0|x|p|0|,| +0#0000000&@37
@8|}|;| @64 @8|}|;| @64

View File

@ -1,7 +1,7 @@
// VIM_TEST_SETUP unlet! g:java_no_tab_space_error g:java_ignore_javadoc // VIM_TEST_SETUP unlet! g:java_no_tab_space_error g:java_ignore_javadoc
// VIM_TEST_SETUP unlet! g:java_no_trail_space_error // VIM_TEST_SETUP unlet! g:java_no_trail_space_error
// VIM_TEST_SETUP let [g:java_space_errors,g:java_comment_strings]=[1,1] // VIM_TEST_SETUP let [g:java_space_errors,g:java_comment_strings]=[1,1]
// VIM_TEST_SETUP let g:java_ignore_markdown = 1
@ -18,14 +18,14 @@
/**/ /*/ */ /* /*/ /*/*/ /*//*/ /** Comment tests. /**/ /*/ */ /* /*/ /*/*/ /*//*/ /** HTML comment tests.
* <p>There is no entry point method {@code main}: * <p>There is no entry point method {@code main}:
* {@snippet file = Snippets.java region = main id = _01} * {@snippet file = HTMLSnippets.java region = main id = _01}
* <p>There is no textual representation: * <p>There is no textual representation:
* {@snippet class = Snippets region = toString id = _02} */ * {@snippet class = HTMLSnippets region = toString id = _02} */
class CommentsTests implements Comparable<CommentsTests> class HTMLCommentsTests implements Comparable<HTMLCommentsTests>
{ { // JDK 21+.
private CommentsTests() { } private HTMLCommentsTests() { }
/** No-op, i. e. no operation. /** No-op, i. e. no operation.
* ({@literal@literal} may be used with {@code .} for contraction.) * ({@literal@literal} may be used with {@code .} for contraction.)
@ -63,36 +63,43 @@ class CommentsTests implements Comparable<CommentsTests>
/** {@return {@code null}, with no-op, i.e. no operation} . . */ /** {@return {@code null}, with no-op, i.e. no operation} . . */
Void noOp9() { return null; } Void noOp9() { return null; }
/** {@return the major Java version} @hidden */ /** {@return the major Java version}
* @hidden */
protected int majorVersion() { return 21; } protected int majorVersion() { return 21; }
/** {@summary Compares this instance with the passed {@code that} /** {@summary Compares this instance with the passed {@code that}
* instance for order by invoking {@link Integer#compare(int, int) * instance for order by invoking {@link Integer#compare(int, int)
* compare} and passing it {@code this.majorVersion()} and * compare} and passing it {@code this.majorVersion()} and
* {@code that.majorVersion()} as respective @arguments.} * {@code that.majorVersion()} as respective @arguments.}
*
* {@inheritDoc} */ * {@inheritDoc} */
@Override public int compareTo(CommentsTests that) @Override public int compareTo(HTMLCommentsTests that)
{ {
java.util.Objects.requireNonNull(that, "that"); java.util.Objects.requireNonNull(that, "that");
return Integer.compare(this.majorVersion(), return Integer.compare(this.majorVersion(),
that.majorVersion()); that.majorVersion());
} }
/// Returns an empty string for an @Override annotated method
/// (see Chapter 9.6.4.4 {@literal @Override} in a Java Language
/// Specification) overridden from `java.lang.Object`
///
/// @return an empty string /// No period for the above summary!
private String asString() { return ""; }
/** Returns an empty string for an @Override annotated method /** Returns an empty string for an @Override annotated method
* (see Chapter 9.6.4.4 {@literal @Override} in a Java Language * (see Chapter 9.6.4.4 {@literal @Override} in a Java Language
* Specification) overridden from <code>java.lang.Object</code> * Specification) overridden from <code>java.lang.Object</code>
* *
* @return an empty string */// No period for the above summary! * @return an empty string */// No period for the above summary!
@Override public String toString() { return ""; } @Override public String toString() { return asString(); }
} }
// javadoc --snippet-path . --source-path . -d /tmp/docs/ -package \ // javadoc --snippet-path . --source-path . -d /tmp/html_docs/ -package \
// -tag 'jls:a:See Java Language Specification:' Snippets.java // -tag 'jls:a:See Java Language Specification:' HTMLSnippets.java
/** Snippets for comment tests. */ /** Snippets for HTML comment tests. */
class Snippets class HTMLSnippets
{ /* TRAILING BLANKS AND MESSPILLINGS ARE SIGNIFICANT! */ { /* TRAILING BLANKS AND MESSPILLINGS ARE SIGNIFICANT! */
private Snippets() { } private HTMLSnippets() { }
/** The method {@code main} must be declared {@code public}, {@code /** The method {@code main} must be declared {@code public}, {@code
* static}, and {@code void}. It must specify a formal parameter * static}, and {@code void}. It must specify a formal parameter
@ -113,6 +120,8 @@ class Snippets
/** {@return an empty string} /** {@return an empty string}
* @see <a href="https://docs.oracle.com/javase/specs/jls/se21/html/jls-3.html#jls-3.10.5">3.10.5 String Literals</a> * @see <a href="https://docs.oracle.com/javase/specs/jls/se21/html/jls-3.html#jls-3.10.5">3.10.5 String Literals</a>
* @see
* <a href="https://docs.oracle.com/javase/specs/jls/se21/html/jls-4.html#jls-4.3.2">4.3.2 The Class Object</a>
* @see java.base/java.lang.Object#toString() */ * @see java.base/java.lang.Object#toString() */
// @start region = toString // @start region = toString
// @replace substring = '""' replacement = "\u0022\u0022" // @replace substring = '""' replacement = "\u0022\u0022"

View File

@ -0,0 +1,147 @@
// VIM_TEST_SETUP unlet! g:java_no_tab_space_error g:java_ignore_javadoc
// VIM_TEST_SETUP unlet! g:java_no_trail_space_error
// VIM_TEST_SETUP let[g:java_space_errors,g:java_comment_strings]=[1,1]
// VIM_TEST_SETUP let[g:java_ignore_html,g:markdown_syntax_conceal]=[1,1]
// VIM_TEST_SETUP defer execute('match Visual /\%>21l\s\+$/')
// VIM_TEST_SETUP setl spell fdc=2 fdl=64 fdm=syntax fen cole=3 cocu=n
// VIM_TEST_SETUP highlight link javaCommentStart Todo
// VIM_TEST_SETUP highlight link javaMarkdownCommentTitle Underlined
// VIM_TEST_SETUP highlight link markdownH2 NonText
// VIM_TEST_SETUP highlight link markdownHeadingRule NonText
/**/ /*/ */ /* /*/ /*/*/ /*//*/ /// Markdown comment tests.
///
/// There is no entry point method `main`:
/// {@snippet file = MarkdownSnippets.java region = main id = _01}
///
/// There is no textual representation:
/// {@snippet class = MarkdownSnippets region = toString id = _02}
class MarkdownCommentsTests implements Comparable<MarkdownCommentsTests>
{ // JDK 23+.
private MarkdownCommentsTests() { }
/// No-op, i. e. no operation.
/// ({@literal@literal} may be used with `.` for contraction.)
/// @return `null`
Void noOp1() { return null; }
/// No-op, i.e. no operation.
/// ({@literal<!-- -->} may be used after `.` for contraction.)
/// @return `null`
Void noOp2() { return null; }
/// No-op, i.e\u002e no operation.
/// ({@literal\u005cu002e} is processed early, use alternatives.)
/// @return `null`
Void noOp3() { return null; }
/// No-op, i.e{@literal .} no operation.
/// @return `null`
Void noOp4() { return null; }
/// No-op, i.e.<!-- --> no operation.
/// @return `null`
Void noOp5() { return null; }
/// No-op, i.e.&nbsp;no operation.
/// @return `null`
Void noOp6() { return null; }
/// {@return `null`, with no-op, i.e. no operation}
Void noOp7() { return null; }
/// {@return `null`, with no-op, i.e. no operation}..
Void noOp8() { return null; }
/// {@return `null`, with no-op, i.e. no operation} . .
Void noOp9() { return null; }
/// {@return the major Java version}
/// @hidden
protected int majorVersion() { return 23; }
/// {@summary Compares this instance with the passed `that`
/// instance for order by invoking [Integer.compare(int, int)]
/// and passing it `this.majorVersion()` and
/// `that.majorVersion()` as respective @arguments.}
/// {@inheritDoc}
@Override public int compareTo(MarkdownCommentsTests that)
{
java.util.Objects.requireNonNull(that, "that");
return Integer.compare(this.majorVersion(),
that.majorVersion());
}
/** Returns an empty string for an @Override annotated method
* (see Chapter 9.6.4.4 {@literal @Override} in a Java Language
* Specification) overridden from <code>java.lang.Object</code>
*
* @return an empty string */// No period for the above summary!
private String asString() { return ""; }
/// Returns an empty string for an @Override annotated method
/// (see Chapter 9.6.4.4 {@literal @Override} in a Java Language
/// Specification) overridden from `java.lang.Object`
///
/// @return an empty string /// No period for the above summary!
@Override public String toString() { return asString(); }
/// A summary comment.
static final String MARKDOWN_COMMENT_A = "///";
/// No summary comment (try fiddling with the above string value).
static final String MARKDOWN_COMMENT_B = "///";
}
// javadoc --snippet-path . --source-path . -d /tmp/md_docs/ -package \
// -tag 'jls:a:See Java Language Specification:' MarkdownSnippets.java
/// Snippets for Markdown comment tests.
class MarkdownSnippets
{ /* TRAILING BLANKS AND MESSPILLINGS ARE SIGNIFICANT! */
private MarkdownSnippets() { }
/// The method [`main`] must be declared `public`,
/// `static`, and `void`. It must specify a formal parameter
/// whose declared type is array of [String]. Therefore,
/// _either_ of the following declarations is acceptable. [^\*]
///
/// ---------------------------------------------------------------
/// DECLARATIONS ([main(String\[\])][#main(String\[\])]):
/// -----------------------------------------------------
/// * E.g. {@snippet lang="java":
/// // @highlight substring="main" type="italic":
/// public static void main(String[] args) { }
/// }
/// + E.g.
/// <pre class="snippet">
/// public static void main(String... args) { }
/// </pre>
///
/// @param args optional commande-line arguments
/// @jls 12.1.4 Invoke `Test.main`
///
/// [^\*]: @jls 12.1.4 Invoke `Test.main`
// @start region = main
// @link substring = 'String' target = 'java.lang.String' :
public static void main(String[] args) { }
// @end
/// {@return an empty string}
/// @see String [3.10.5 String Literals](https://docs.oracle.com/javase/specs/jls/se21/html/jls-3.html#jls-3.10.5)
/// @see Object
/// [4.3.2 The Class Object](https://docs.oracle.com/javase/specs/jls/se21/html/jls-4.html#jls-4.3.2)
/// @see java.base/java.lang.Object#toString()
// @start region = toString
// @replace substring = '""' replacement = "\u0022\u0022"
// @link regex = '\bString' target = java.lang.String type = linkplain :
@Override public String toString() { return ""; }
// @end
}