<!-- header_tag --> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html401/loose.dtd"> <html> <!-- Copyright C 1999-2008 by the authors Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with no Invariant Sections. A copy of the license is included in the section entitled "GNU Free Documentation License". --> <!-- Created on January 20, 2009 by texi2html 1.79 texi2html was written by: Lionel Cons <Lionel.Cons@cern.ch> (original author) Karl Berry <karl@freefriends.org> Olaf Bachmann <obachman@mathematik.uni-kl.de> and many others. Maintained by: Many creative people. Send bugs and suggestions to <texi2html-bug@nongnu.org> --> <head> <title>GNU LilyPond Contributor's Guide: 3.3 Documentation policy</title> <meta name="description" content="GNU LilyPond Contributor's Guide: 3.3 Documentation policy"> <meta name="keywords" content="GNU LilyPond Contributor's Guide: 3.3 Documentation policy"> <meta name="resource-type" content="document"> <meta name="distribution" content="global"> <meta name="Generator" content="texi2html 1.79"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <link href="index.html#index" rel="start" title="GNU LilyPond — Contributor's Guide"> <link href="index_toc.html#SEC_Contents" rel="contents" title="Table of Contents"> <link href="index_abt.html#SEC_About" rel="help" title="About This Document"> <link href="Documentation-work.html#Documentation-work" rel="up" title="3. Documentation work"> <link href="Major-release-checklist.html#Major-release-checklist" rel="next" title="8.3 Major release checklist"> <link href="Texinfo-crash-course.html#Texinfo-crash-course" rel="previous" title="3.2 Texinfo crash course"> <link rel="stylesheet" type="text/css" title="Patrick McCarty's design" href="lilypond-mccarty.css"> <link rel="alternate stylesheet" type="text/css" href="lilypond.css" title="Andrew Hawryluk's design"> <link rel="alternate stylesheet" type="text/css" href="lilypond-blue.css" title="Kurt Kroon's blue design"> <!--[if lte IE 7]> <link href="lilypond-ie-fixes.css" rel="stylesheet" type="text/css"> <![endif]--> </head> <body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000"> <div id="main"> <a name="Documentation-policy"></a> <table class="nav_table"> <tr><td valign="middle" align="left" colspan="1">[<a href="Documentation-work.html#Documentation-work" title="Beginning of this chapter or previous chapter"> << Documentation work </a>]</td><td valign="middle" align="center" colspan="3">[<a href="index.html#index" title="Cover (top) of document" rel="start">Top</a>][<a href="index_toc.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][Index][<a href="index_abt.html#SEC_About" title="About (help)" rel="help"> ? </a>]</td><td valign="middle" align="right" colspan="1">[<a href="Website-work.html#Website-work" title="Next chapter"> Website work >> </a>]</td></tr><tr><td valign="middle" align="left" colspan="2">[<a href="Texinfo-crash-course.html#Texinfo-crash-course" title="Previous section in reading order" accesskey="p" rel="previous"> < </a>]</td><td valign="middle" align="center" colspan="1">[<a href="Documentation-work.html#Documentation-work" title="Up section" accesskey="u" rel="up"> Up : Documentation work </a>]</td><td valign="middle" align="right" colspan="2">[<a href="#Documentation-policy" title="Next section in reading order" accesskey="n" rel="next"> > </a>]</td></tr></table> <a name="Documentation-policy"></a> <h2 class="section">3.3 Documentation policy</h2> <hr size="6"> <a name="Documentation-policy"></a> <table class="nav_table"> <tr><td valign="middle" align="left" colspan="1">[<a href="Documentation-work.html#Documentation-work" title="Beginning of this chapter or previous chapter"> << Documentation work </a>]</td><td valign="middle" align="center" colspan="3">[<a href="index.html#index" title="Cover (top) of document" rel="start">Top</a>][<a href="index_toc.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][Index][<a href="index_abt.html#SEC_About" title="About (help)" rel="help"> ? </a>]</td><td valign="middle" align="right" colspan="1">[<a href="Website-work.html#Website-work" title="Next chapter"> Website work >> </a>]</td></tr><tr><td valign="middle" align="left" colspan="2">[<a href="#Documentation-policy" title="Previous section in reading order" accesskey="p" rel="previous"> < Documentation policy </a>]</td><td valign="middle" align="center" colspan="1">[<a href="#Documentation-policy" title="Up section" accesskey="u" rel="up"> Up : Documentation policy </a>]</td><td valign="middle" align="right" colspan="2">[<a href="#Documentation-policy" title="Next section in reading order" accesskey="n" rel="next"> > </a>]</td></tr></table> <h3 class="subsection">3.3.1 Books</h3> <p>There are four parts to the documentation: the Learning Manual, the Notation Reference, the Program Reference, and the Music Glossary. </p> <ul> <li> Learning Manual: <p>The LM is written in a tutorial style which introduces the most important concepts, structure and syntax of the elements of a LilyPond score in a carefully graded sequence of steps. Explanations of all musical concepts used in the Manual can be found in the Music Glossary, and readers are assumed to have no prior knowledge of LilyPond. The objective is to take readers to a level where the Notation Reference can be understood and employed to both adapt the templates in the Appendix to their needs and to begin to construct their own scores. Commonly used tweaks are introduced and explained. Examples are provided throughout which, while being focussed on the topic being introduced, are long enough to seem real in order to retain the readers’ interest. Each example builds on the previous material, and comments are used liberally. Every new aspect is thoroughly explained before it is used. </p> <p>Users are encouraged to read the complete Learning Manual from start-to-finish. </p> </li><li> Notation Reference: a (hopefully complete) description of LilyPond input notation. Some material from here may be duplicated in the Learning Manual (for teaching), but consider the NR to be the "definitive" description of each notation element, with the LM being an "extra". The goal is _not_ to provide a step-by-step learning environment – do not avoid using notation that has not be introduced previously in the NR (for example, use \break if appropriate). This section is written in formal technical writing style. <p>Avoid duplication. Although users are not expected to read this manual from start to finish, they should be familiar with the material in the Learning Manual (particularly “Fundamental Concepts”), so do not repeat that material in each section of this book. Also watch out for common constructs, like ^ - _ for directions – those are explained in NR 3. In NR 1, you can write: DYNAMICS may be manually placed above or below the staff, see @ref{Controlling direction and placement}. </p> <p>Most tweaks should be added to LSR and not placed directly in the .itely file. In some cases, tweaks may be placed in the main text, but ask about this first. </p> <p>Finally, you should assume that users know what the notation means; explaining musical concepts happens in the Music Glossary. </p> </li><li> Application Usage: information about using the program lilypond with other programs (lilypond-book, operating systems, GUIs, convert-ly, etc). This section is written in formal technical writing style. <p>Users are not expected to read this manual from start to finish. </p> </li><li> Music Glossary: information about the music notation itself. Explanations and translations about notation terms go here. <p>Users are not expected to read this manual from start to finish. </p> </li><li> Internals Reference: not really a documentation book, since it is automagically generated from the source, but this is its name. </li></ul> <hr size="6"> <a name="Documentation-policy"></a> <table class="nav_table"> <tr><td valign="middle" align="left" colspan="1">[<a href="Documentation-work.html#Documentation-work" title="Beginning of this chapter or previous chapter"> << Documentation work </a>]</td><td valign="middle" align="center" colspan="3">[<a href="index.html#index" title="Cover (top) of document" rel="start">Top</a>][<a href="index_toc.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][Index][<a href="index_abt.html#SEC_About" title="About (help)" rel="help"> ? </a>]</td><td valign="middle" align="right" colspan="1">[<a href="Website-work.html#Website-work" title="Next chapter"> Website work >> </a>]</td></tr><tr><td valign="middle" align="left" colspan="2">[<a href="#Documentation-policy" title="Previous section in reading order" accesskey="p" rel="previous"> < </a>]</td><td valign="middle" align="center" colspan="1">[<a href="#Documentation-policy" title="Up section" accesskey="u" rel="up"> Up : Documentation policy </a>]</td><td valign="middle" align="right" colspan="2">[<a href="#Documentation-policy" title="Next section in reading order" accesskey="n" rel="next"> > </a>]</td></tr></table> <h3 class="subsection">3.3.2 Section organization</h3> <ul> <li> The order of headings inside documentation sections should be: <blockquote><pre class="example"><pre class="example">main docs @predefined @endpredefined @snippets @seealso @knownissues </pre></pre></blockquote> </li><li> You <em>must</em> include a @seealso. <ul> <li> The order of items inside the @seealso section is <blockquote><pre class="example"><pre class="example">Music Glossary: @rglos{foo}, @rglos{bar}. Learning Manual: @rlearning{baz}, @rlearning{foozle}. Notation Reference: @ruser{faazle}, @ruser{boo}. Application Usage: @rprogram{blah}. Installed Files: @file{path/to/dir/blahz}. Snippets: @rlsr{section}. Internals Reference: @rinternals{fazzle}, @rinternals{booar}. </pre></pre></blockquote> </li><li> If there are multiple entries, separate them by commas but do not include an ‘and’. </li><li> Always end with a period. </li><li> Place each link on a new line as above; this makes it much easier to add or remove links. In the output, they appear on a single line. <p>("Snippets" is REQUIRED; the others are optional) </p> </li><li> Any new concepts or links which require an explanation should go as a full sentence(s) in the main text. </li><li> Don’t insert an empty line between @seealso and the first entry! Otherwise there is excessive vertical space in the PDF output. </li></ul> </li><li> To create links, use @ref{} if the link is within the same manual. </li><li> @predefined ... @endpredefined is for commands in ly/*-init.ly FIXME? </li><li> Do not include any real info in second-level sections (ie 1.1 Pitches). A first-level section may have introductory material, but other than that all material goes into third-level sections (ie 1.1.1 Writing Pitches). </li></ul> <hr size="6"> <a name="Documentation-policy"></a> <table class="nav_table"> <tr><td valign="middle" align="left" colspan="1">[<a href="Documentation-work.html#Documentation-work" title="Beginning of this chapter or previous chapter"> << Documentation work </a>]</td><td valign="middle" align="center" colspan="3">[<a href="index.html#index" title="Cover (top) of document" rel="start">Top</a>][<a href="index_toc.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][Index][<a href="index_abt.html#SEC_About" title="About (help)" rel="help"> ? </a>]</td><td valign="middle" align="right" colspan="1">[<a href="Website-work.html#Website-work" title="Next chapter"> Website work >> </a>]</td></tr><tr><td valign="middle" align="left" colspan="2">[<a href="#Documentation-policy" title="Previous section in reading order" accesskey="p" rel="previous"> < </a>]</td><td valign="middle" align="center" colspan="1">[<a href="#Documentation-policy" title="Up section" accesskey="u" rel="up"> Up : Documentation policy </a>]</td><td valign="middle" align="right" colspan="2">[<a href="#Documentation-policy" title="Next section in reading order" accesskey="n" rel="next"> > </a>]</td></tr></table> <h3 class="subsection">3.3.3 Checking cross-references</h3> <p>Cross-references between different manuals are heavily used in the documentation, but they are not checked during compilation. However, if you compile the documentation, a script called check_texi_refs can help you with checking and fixing these cross-references; for information on usage, cd into a source tree where documentation has been built, cd into Documentation and look for check-xrefs and fix-xrefs targets in ’make help’ output. Note that you have to find yourself the source files to fix cross-references in the generated documentation such as the Internals Reference; e.g. you can grep scm/ and lily/. </p> <hr size="6"> <a name="Documentation-policy"></a> <table class="nav_table"> <tr><td valign="middle" align="left" colspan="1">[<a href="Documentation-work.html#Documentation-work" title="Beginning of this chapter or previous chapter"> << Documentation work </a>]</td><td valign="middle" align="center" colspan="3">[<a href="index.html#index" title="Cover (top) of document" rel="start">Top</a>][<a href="index_toc.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][Index][<a href="index_abt.html#SEC_About" title="About (help)" rel="help"> ? </a>]</td><td valign="middle" align="right" colspan="1">[<a href="Website-work.html#Website-work" title="Next chapter"> Website work >> </a>]</td></tr><tr><td valign="middle" align="left" colspan="2">[<a href="#Documentation-policy" title="Previous section in reading order" accesskey="p" rel="previous"> < </a>]</td><td valign="middle" align="center" colspan="1">[<a href="#Documentation-policy" title="Up section" accesskey="u" rel="up"> Up : Documentation policy </a>]</td><td valign="middle" align="right" colspan="2">[<a href="#Documentation-policy" title="Next section in reading order" accesskey="n" rel="next"> > </a>]</td></tr></table> <h3 class="subsection">3.3.4 General writing</h3> <ul> <li> Do not forget to create @cindex entries for new sections of text. Enter commands with @funindex, i.e. <blockquote><pre class="example"><pre class="example">@cindex pitches, writing in different octaves @funindex \relative </pre></pre></blockquote> <p>do not bother with the @code{} (they are added automatically). These items are added to both the command index and the unified index. </p> <p>Both index commands should go in front of the actual material. </p> <p>@cindex entries should not be capitalized, ie </p> <blockquote><pre class="example"><pre class="example">@cindex time signature </pre></pre></blockquote> <p>is preferred instead of “Time signature”, Only use capital letters for musical terms which demand them, like D.S. al Fine. </p> <p>For scheme functions, only include the final part, i.e., </p> <blockquote><pre class="example"><pre class="example">@funindex modern-voice-cautionary and NOT @funindex #(set-accidental-style modern-voice-cautionary) </pre></pre></blockquote> </li><li> Preferred terms: <ul> <li> In general, use the American spellings. The internal lilypond property names use this spelling. </li><li> List of specific terms: <blockquote><pre class="example"><pre class="example">canceled simultaneous NOT concurrent measure: the unit of music bar line: the symbol delimiting a measure NOT barline note head NOT notehead chord construct NOT chord (when referring to <>) </pre></pre></blockquote> </li></ul> </li></ul> <hr size="6"> <a name="Documentation-policy"></a> <table class="nav_table"> <tr><td valign="middle" align="left" colspan="1">[<a href="Documentation-work.html#Documentation-work" title="Beginning of this chapter or previous chapter"> << Documentation work </a>]</td><td valign="middle" align="center" colspan="3">[<a href="index.html#index" title="Cover (top) of document" rel="start">Top</a>][<a href="index_toc.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][Index][<a href="index_abt.html#SEC_About" title="About (help)" rel="help"> ? </a>]</td><td valign="middle" align="right" colspan="1">[<a href="Website-work.html#Website-work" title="Next chapter"> Website work >> </a>]</td></tr><tr><td valign="middle" align="left" colspan="2">[<a href="#Documentation-policy" title="Previous section in reading order" accesskey="p" rel="previous"> < </a>]</td><td valign="middle" align="center" colspan="1">[<a href="#Documentation-policy" title="Up section" accesskey="u" rel="up"> Up : Documentation policy </a>]</td><td valign="middle" align="right" colspan="2">[<a href="Tips-for-writing-docs.html#Tips-for-writing-docs" title="Next section in reading order" accesskey="n" rel="next"> Tips for writing docs > </a>]</td></tr></table> <h3 class="subsection">3.3.5 Technical writing style</h3> <p>These refer to the NR. The LM uses a more gentle, colloquial style. </p> <ul> <li> Do not refer to LilyPond in the text. The reader knows what the manual is about. If you do, capitalization is LilyPond. </li><li> If you explicitly refer to ‘lilypond’ the program (or any other command to be executed), write <code>@command{lilypond}</code>. </li><li> Do not explicitly refer to the reader/user. There is no one else besides the reader and the writer. </li><li> Avoid contractions (don’t, won’t, etc.). Spell the words out completely. </li><li> Avoid abbreviations, except for commonly used abbreviations of foreign language terms such as etc. and i.e. </li><li> Avoid fluff (“Notice that,” “as you can see,” “Currently,”). </li><li> The use of the word ‘illegal’ is inappropriate in most cases. Say ‘invalid’ instead. </li></ul> <hr size="6"> <table class="nav_table"> <tr><td valign="middle" align="left" colspan="1">[<a href="Documentation-work.html#Documentation-work" title="Beginning of this chapter or previous chapter"> << Documentation work </a>]</td><td valign="middle" align="center" colspan="3">[<a href="index.html#index" title="Cover (top) of document" rel="start">Top</a>][<a href="index_toc.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][Index][<a href="index_abt.html#SEC_About" title="About (help)" rel="help"> ? </a>]</td><td valign="middle" align="right" colspan="1">[<a href="Website-work.html#Website-work" title="Next chapter"> Website work >> </a>]</td></tr><tr><td valign="middle" align="left" colspan="2">[<a href="#Documentation-policy" title="Previous section in reading order" accesskey="p" rel="previous"> < </a>]</td><td valign="middle" align="center" colspan="1">[<a href="#Documentation-policy" title="Up section" accesskey="u" rel="up"> Up : Documentation policy </a>]</td><td valign="middle" align="right" colspan="2">[<a href="Tips-for-writing-docs.html#Tips-for-writing-docs" title="Next section in reading order" accesskey="n" rel="next"> Tips for writing docs > </a>]</td></tr></table> <!-- footer_tag --> <div class="footer"> <p class="footer_version"> This page is for LilyPond-2.12.2 (stable-branch). </p> <p class="footer_report"> Your <a href="http://lilypond.org/web/devel/participating/documentation-adding">suggestions for the documentation</a> are welcome, please report errors to our <a href="http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.bugs">bug list</a>. </p> </div> <!-- FOOTER --> <!-- end div#main here --> </div> <div id="tocframe"> <p class="toc_uplink"><a href="../index.html" title="Documentation Index"><< Back to Documentation Index</a></p> <h4 class="toc_header"> <a href="index.html#index" title="Start of the manual">Contributor’s Guide</a></h4> <div class="contents"> <ul class="toc"> <li><a name="toc-Starting-with-git-1" href="Starting-with-git.html#Starting-with-git">1. Starting with git</a> <ul class="toc"> <li><a name="toc-Getting-the-source-code-1" href="Getting-the-source-code.html#Getting-the-source-code">1.1 Getting the source code</a> </li> <li><a name="toc-Updating-the-source-code-1" href="Updating-the-source-code.html#Updating-the-source-code">1.2 Updating the source code</a> </li> <li><a name="toc-Sharing-your-changes-1" href="Sharing-your-changes.html#Sharing-your-changes">1.3 Sharing your changes</a> </li> <li><a name="toc-Other-interesting-Git-commands-1" href="Other-interesting-Git-commands.html#Other-interesting-Git-commands">1.4 Other interesting Git commands</a> </li> <li><a name="toc-Git-on-Windows-1" href="Git-on-Windows.html#Git-on-Windows">1.5 Git on Windows</a> </li> </ul> </li> <li><a name="toc-Compiling-1" href="Compiling.html#Compiling">2. Compiling</a> <ul class="toc"> <li><a name="toc-move-AU-1-here-1" href="move-AU-1-here.html#move-AU-1-here">2.1 move AU 1 here</a> </li> </ul> </li> <li class="toc_current"><a name="toc-Documentation-work-1" href="Documentation-work.html#Documentation-work">3. Documentation work</a> <ul class="toc"> <li><a name="toc-Introduction-to-documentation-work-1" href="Introduction-to-documentation-work.html#Introduction-to-documentation-work">3.1 Introduction to documentation work</a> </li> <li><a name="toc-Texinfo-crash-course-1" href="Texinfo-crash-course.html#Texinfo-crash-course">3.2 Texinfo crash course</a> </li> <li class="toc_current"><a name="toc-Documentation-policy-1" href="Documentation-policy.html#Documentation-policy">3.3 Documentation policy</a> <ul class="toc"> <li class="toc_current"><a name="toc-Books" href="Documentation-policy.html#Documentation-policy">3.3.1 Books</a> </li> <li class="toc_current"><a name="toc-Section-organization" href="Documentation-policy.html#Documentation-policy">3.3.2 Section organization</a> </li> <li class="toc_current"><a name="toc-Checking-cross_002dreferences" href="Documentation-policy.html#Documentation-policy">3.3.3 Checking cross-references</a> </li> <li class="toc_current"><a name="toc-General-writing" href="Documentation-policy.html#Documentation-policy">3.3.4 General writing</a> </li> <li class="toc_current"><a name="toc-Technical-writing-style" href="Documentation-policy.html#Documentation-policy">3.3.5 Technical writing style</a> </li> </ul> </li> <li><a name="toc-Tips-for-writing-docs-1" href="Tips-for-writing-docs.html#Tips-for-writing-docs">3.4 Tips for writing docs</a> </li> <li><a name="toc-Updating-doc-with-convert_002dly" href="Updating-docs-with-convert_002dly.html#Updating-docs-with-convert_002dly">3.5 Updating doc with convert-ly</a> </li> <li><a name="toc-Translating-the-documentation-1" href="Translating-the-documentation.html#Translating-the-documentation">3.6 Translating the documentation</a> </li> </ul> </li> <li><a name="toc-Website-work-1" href="Website-work.html#Website-work">4. Website work</a> <ul class="toc"> <li><a name="toc-Introduction-to-website-work-1" href="Introduction-to-website-work.html#Introduction-to-website-work">4.1 Introduction to website work</a> </li> <li><a name="toc-Translating-the-website-1" href="Translating-the-website.html#Translating-the-website">4.2 Translating the website</a> </li> </ul> </li> <li><a name="toc-LSR-work-1" href="LSR-work.html#LSR-work">5. LSR work</a> <ul class="toc"> <li><a name="toc-Introduction-to-LSR-1" href="Introduction-to-LSR.html#Introduction-to-LSR">5.1 Introduction to LSR</a> </li> <li><a name="toc-Adding-snippets-1" href="Adding-snippets.html#Adding-snippets">5.2 Adding snippets</a> </li> <li><a name="toc-Approving-snippets-1" href="Approving-snippets.html#Approving-snippets">5.3 Approving snippets</a> </li> <li><a name="toc-LSR-to-git-1" href="LSR-to-git.html#LSR-to-git">5.4 LSR to git</a> </li> </ul> </li> <li><a name="toc-Issues-1" href="Issues.html#Issues">6. Issues</a> <ul class="toc"> <li><a name="toc-Introduction-to-issues-1" href="Introduction-to-issues.html#Introduction-to-issues">6.1 Introduction to issues</a> </li> <li><a name="toc-Issue-classification-1" href="Issue-classification.html#Issue-classification">6.2 Issue classification</a> </li> <li><a name="toc-Adding-issues-to-the-tracker-1" href="Adding-issues-to-the-tracker.html#Adding-issues-to-the-tracker">6.3 Adding issues to the tracker</a> </li> </ul> </li> <li><a name="toc-Programming-work-1" href="Programming-work.html#Programming-work">7. Programming work</a> <ul class="toc"> <li><a name="toc-Introduction-to-programming-1" href="Introduction-to-programming.html#Introduction-to-programming">7.1 Introduction to programming</a> </li> <li><a name="toc-Programming-without-compiling-1" href="Programming-without-compiling.html#Programming-without-compiling">7.2 Programming without compiling</a> </li> <li><a name="toc-Finding-functions-1" href="Finding-functions.html#Finding-functions">7.3 Finding functions</a> </li> <li><a name="toc-Code-style-1" href="Code-style.html#Code-style">7.4 Code style</a> </li> <li><a name="toc-Debugging-LilyPond-1" href="Debugging-LilyPond.html#Debugging-LilyPond">7.5 Debugging LilyPond</a> </li> </ul> </li> <li><a name="toc-Release-work-1" href="Release-work.html#Release-work">8. Release work</a> <ul class="toc"> <li><a name="toc-Development-phases-1" href="Development-phases.html#Development-phases">8.1 Development phases</a> </li> <li><a name="toc-Minor-release-checklist-1" href="Minor-release-checklist.html#Minor-release-checklist">8.2 Minor release checklist</a> </li> <li><a name="toc-Major-release-checklist-1" href="Major-release-checklist.html#Major-release-checklist">8.3 Major release checklist</a> </li> </ul> </li> </ul> </div> </div> </body> </html>