(no commit message)
[prss.git] / README.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"\r
2     "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">\r
3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">\r
4 <head>\r
5 <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />\r
6 <meta name="generator" content="AsciiDoc 8.6.7" />\r
7 <title>PRSS README</title>\r
8 <style type="text/css">\r
9 /* Shared CSS for AsciiDoc xhtml11 and html5 backends */\r
10 \r
11 /* Default font. */\r
12 body {\r
13   font-family: Georgia,serif;\r
14 }\r
15 \r
16 /* Title font. */\r
17 h1, h2, h3, h4, h5, h6,\r
18 div.title, caption.title,\r
19 thead, p.table.header,\r
20 #toctitle,\r
21 #author, #revnumber, #revdate, #revremark,\r
22 #footer {\r
23   font-family: Arial,Helvetica,sans-serif;\r
24 }\r
25 \r
26 body {\r
27   margin: 1em 5% 1em 5%;\r
28 }\r
29 \r
30 a {\r
31   color: blue;\r
32   text-decoration: underline;\r
33 }\r
34 a:visited {\r
35   color: fuchsia;\r
36 }\r
37 \r
38 em {\r
39   font-style: italic;\r
40   color: navy;\r
41 }\r
42 \r
43 strong {\r
44   font-weight: bold;\r
45   color: #083194;\r
46 }\r
47 \r
48 h1, h2, h3, h4, h5, h6 {\r
49   color: #527bbd;\r
50   margin-top: 1.2em;\r
51   margin-bottom: 0.5em;\r
52   line-height: 1.3;\r
53 }\r
54 \r
55 h1, h2, h3 {\r
56   border-bottom: 2px solid silver;\r
57 }\r
58 h2 {\r
59   padding-top: 0.5em;\r
60 }\r
61 h3 {\r
62   float: left;\r
63 }\r
64 h3 + * {\r
65   clear: left;\r
66 }\r
67 h5 {\r
68   font-size: 1.0em;\r
69 }\r
70 \r
71 div.sectionbody {\r
72   margin-left: 0;\r
73 }\r
74 \r
75 hr {\r
76   border: 1px solid silver;\r
77 }\r
78 \r
79 p {\r
80   margin-top: 0.5em;\r
81   margin-bottom: 0.5em;\r
82 }\r
83 \r
84 ul, ol, li > p {\r
85   margin-top: 0;\r
86 }\r
87 ul > li     { color: #aaa; }\r
88 ul > li > * { color: black; }\r
89 \r
90 pre {\r
91   padding: 0;\r
92   margin: 0;\r
93 }\r
94 \r
95 #author {\r
96   color: #527bbd;\r
97   font-weight: bold;\r
98   font-size: 1.1em;\r
99 }\r
100 #email {\r
101 }\r
102 #revnumber, #revdate, #revremark {\r
103 }\r
104 \r
105 #footer {\r
106   font-size: small;\r
107   border-top: 2px solid silver;\r
108   padding-top: 0.5em;\r
109   margin-top: 4.0em;\r
110 }\r
111 #footer-text {\r
112   float: left;\r
113   padding-bottom: 0.5em;\r
114 }\r
115 #footer-badges {\r
116   float: right;\r
117   padding-bottom: 0.5em;\r
118 }\r
119 \r
120 #preamble {\r
121   margin-top: 1.5em;\r
122   margin-bottom: 1.5em;\r
123 }\r
124 div.imageblock, div.exampleblock, div.verseblock,\r
125 div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock,\r
126 div.admonitionblock {\r
127   margin-top: 1.0em;\r
128   margin-bottom: 1.5em;\r
129 }\r
130 div.admonitionblock {\r
131   margin-top: 2.0em;\r
132   margin-bottom: 2.0em;\r
133   margin-right: 10%;\r
134   color: #606060;\r
135 }\r
136 \r
137 div.content { /* Block element content. */\r
138   padding: 0;\r
139 }\r
140 \r
141 /* Block element titles. */\r
142 div.title, caption.title {\r
143   color: #527bbd;\r
144   font-weight: bold;\r
145   text-align: left;\r
146   margin-top: 1.0em;\r
147   margin-bottom: 0.5em;\r
148 }\r
149 div.title + * {\r
150   margin-top: 0;\r
151 }\r
152 \r
153 td div.title:first-child {\r
154   margin-top: 0.0em;\r
155 }\r
156 div.content div.title:first-child {\r
157   margin-top: 0.0em;\r
158 }\r
159 div.content + div.title {\r
160   margin-top: 0.0em;\r
161 }\r
162 \r
163 div.sidebarblock > div.content {\r
164   background: #ffffee;\r
165   border: 1px solid #dddddd;\r
166   border-left: 4px solid #f0f0f0;\r
167   padding: 0.5em;\r
168 }\r
169 \r
170 div.listingblock > div.content {\r
171   border: 1px solid #dddddd;\r
172   border-left: 5px solid #f0f0f0;\r
173   background: #f8f8f8;\r
174   padding: 0.5em;\r
175 }\r
176 \r
177 div.quoteblock, div.verseblock {\r
178   padding-left: 1.0em;\r
179   margin-left: 1.0em;\r
180   margin-right: 10%;\r
181   border-left: 5px solid #f0f0f0;\r
182   color: #888;\r
183 }\r
184 \r
185 div.quoteblock > div.attribution {\r
186   padding-top: 0.5em;\r
187   text-align: right;\r
188 }\r
189 \r
190 div.verseblock > pre.content {\r
191   font-family: inherit;\r
192   font-size: inherit;\r
193 }\r
194 div.verseblock > div.attribution {\r
195   padding-top: 0.75em;\r
196   text-align: left;\r
197 }\r
198 /* DEPRECATED: Pre version 8.2.7 verse style literal block. */\r
199 div.verseblock + div.attribution {\r
200   text-align: left;\r
201 }\r
202 \r
203 div.admonitionblock .icon {\r
204   vertical-align: top;\r
205   font-size: 1.1em;\r
206   font-weight: bold;\r
207   text-decoration: underline;\r
208   color: #527bbd;\r
209   padding-right: 0.5em;\r
210 }\r
211 div.admonitionblock td.content {\r
212   padding-left: 0.5em;\r
213   border-left: 3px solid #dddddd;\r
214 }\r
215 \r
216 div.exampleblock > div.content {\r
217   border-left: 3px solid #dddddd;\r
218   padding-left: 0.5em;\r
219 }\r
220 \r
221 div.imageblock div.content { padding-left: 0; }\r
222 span.image img { border-style: none; }\r
223 a.image:visited { color: white; }\r
224 \r
225 dl {\r
226   margin-top: 0.8em;\r
227   margin-bottom: 0.8em;\r
228 }\r
229 dt {\r
230   margin-top: 0.5em;\r
231   margin-bottom: 0;\r
232   font-style: normal;\r
233   color: navy;\r
234 }\r
235 dd > *:first-child {\r
236   margin-top: 0.1em;\r
237 }\r
238 \r
239 ul, ol {\r
240     list-style-position: outside;\r
241 }\r
242 ol.arabic {\r
243   list-style-type: decimal;\r
244 }\r
245 ol.loweralpha {\r
246   list-style-type: lower-alpha;\r
247 }\r
248 ol.upperalpha {\r
249   list-style-type: upper-alpha;\r
250 }\r
251 ol.lowerroman {\r
252   list-style-type: lower-roman;\r
253 }\r
254 ol.upperroman {\r
255   list-style-type: upper-roman;\r
256 }\r
257 \r
258 div.compact ul, div.compact ol,\r
259 div.compact p, div.compact p,\r
260 div.compact div, div.compact div {\r
261   margin-top: 0.1em;\r
262   margin-bottom: 0.1em;\r
263 }\r
264 \r
265 tfoot {\r
266   font-weight: bold;\r
267 }\r
268 td > div.verse {\r
269   white-space: pre;\r
270 }\r
271 \r
272 div.hdlist {\r
273   margin-top: 0.8em;\r
274   margin-bottom: 0.8em;\r
275 }\r
276 div.hdlist tr {\r
277   padding-bottom: 15px;\r
278 }\r
279 dt.hdlist1.strong, td.hdlist1.strong {\r
280   font-weight: bold;\r
281 }\r
282 td.hdlist1 {\r
283   vertical-align: top;\r
284   font-style: normal;\r
285   padding-right: 0.8em;\r
286   color: navy;\r
287 }\r
288 td.hdlist2 {\r
289   vertical-align: top;\r
290 }\r
291 div.hdlist.compact tr {\r
292   margin: 0;\r
293   padding-bottom: 0;\r
294 }\r
295 \r
296 .comment {\r
297   background: yellow;\r
298 }\r
299 \r
300 .footnote, .footnoteref {\r
301   font-size: 0.8em;\r
302 }\r
303 \r
304 span.footnote, span.footnoteref {\r
305   vertical-align: super;\r
306 }\r
307 \r
308 #footnotes {\r
309   margin: 20px 0 20px 0;\r
310   padding: 7px 0 0 0;\r
311 }\r
312 \r
313 #footnotes div.footnote {\r
314   margin: 0 0 5px 0;\r
315 }\r
316 \r
317 #footnotes hr {\r
318   border: none;\r
319   border-top: 1px solid silver;\r
320   height: 1px;\r
321   text-align: left;\r
322   margin-left: 0;\r
323   width: 20%;\r
324   min-width: 100px;\r
325 }\r
326 \r
327 div.colist td {\r
328   padding-right: 0.5em;\r
329   padding-bottom: 0.3em;\r
330   vertical-align: top;\r
331 }\r
332 div.colist td img {\r
333   margin-top: 0.3em;\r
334 }\r
335 \r
336 @media print {\r
337   #footer-badges { display: none; }\r
338 }\r
339 \r
340 #toc {\r
341   margin-bottom: 2.5em;\r
342 }\r
343 \r
344 #toctitle {\r
345   color: #527bbd;\r
346   font-size: 1.1em;\r
347   font-weight: bold;\r
348   margin-top: 1.0em;\r
349   margin-bottom: 0.1em;\r
350 }\r
351 \r
352 div.toclevel0, div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {\r
353   margin-top: 0;\r
354   margin-bottom: 0;\r
355 }\r
356 div.toclevel2 {\r
357   margin-left: 2em;\r
358   font-size: 0.9em;\r
359 }\r
360 div.toclevel3 {\r
361   margin-left: 4em;\r
362   font-size: 0.9em;\r
363 }\r
364 div.toclevel4 {\r
365   margin-left: 6em;\r
366   font-size: 0.9em;\r
367 }\r
368 \r
369 span.aqua { color: aqua; }\r
370 span.black { color: black; }\r
371 span.blue { color: blue; }\r
372 span.fuchsia { color: fuchsia; }\r
373 span.gray { color: gray; }\r
374 span.green { color: green; }\r
375 span.lime { color: lime; }\r
376 span.maroon { color: maroon; }\r
377 span.navy { color: navy; }\r
378 span.olive { color: olive; }\r
379 span.purple { color: purple; }\r
380 span.red { color: red; }\r
381 span.silver { color: silver; }\r
382 span.teal { color: teal; }\r
383 span.white { color: white; }\r
384 span.yellow { color: yellow; }\r
385 \r
386 span.aqua-background { background: aqua; }\r
387 span.black-background { background: black; }\r
388 span.blue-background { background: blue; }\r
389 span.fuchsia-background { background: fuchsia; }\r
390 span.gray-background { background: gray; }\r
391 span.green-background { background: green; }\r
392 span.lime-background { background: lime; }\r
393 span.maroon-background { background: maroon; }\r
394 span.navy-background { background: navy; }\r
395 span.olive-background { background: olive; }\r
396 span.purple-background { background: purple; }\r
397 span.red-background { background: red; }\r
398 span.silver-background { background: silver; }\r
399 span.teal-background { background: teal; }\r
400 span.white-background { background: white; }\r
401 span.yellow-background { background: yellow; }\r
402 \r
403 span.big { font-size: 2em; }\r
404 span.small { font-size: 0.6em; }\r
405 \r
406 span.underline { text-decoration: underline; }\r
407 span.overline { text-decoration: overline; }\r
408 span.line-through { text-decoration: line-through; }\r
409 \r
410 div.unbreakable { page-break-inside: avoid; }\r
411 \r
412 \r
413 /*\r
414  * xhtml11 specific\r
415  *\r
416  * */\r
417 \r
418 tt {\r
419   font-family: "Courier New", Courier, monospace;\r
420   font-size: inherit;\r
421   color: navy;\r
422 }\r
423 \r
424 div.tableblock {\r
425   margin-top: 1.0em;\r
426   margin-bottom: 1.5em;\r
427 }\r
428 div.tableblock > table {\r
429   border: 3px solid #527bbd;\r
430 }\r
431 thead, p.table.header {\r
432   font-weight: bold;\r
433   color: #527bbd;\r
434 }\r
435 p.table {\r
436   margin-top: 0;\r
437 }\r
438 /* Because the table frame attribute is overriden by CSS in most browsers. */\r
439 div.tableblock > table[frame="void"] {\r
440   border-style: none;\r
441 }\r
442 div.tableblock > table[frame="hsides"] {\r
443   border-left-style: none;\r
444   border-right-style: none;\r
445 }\r
446 div.tableblock > table[frame="vsides"] {\r
447   border-top-style: none;\r
448   border-bottom-style: none;\r
449 }\r
450 \r
451 \r
452 /*\r
453  * html5 specific\r
454  *\r
455  * */\r
456 \r
457 .monospaced {\r
458   font-family: "Courier New", Courier, monospace;\r
459   font-size: inherit;\r
460   color: navy;\r
461 }\r
462 \r
463 table.tableblock {\r
464   margin-top: 1.0em;\r
465   margin-bottom: 1.5em;\r
466 }\r
467 thead, p.tableblock.header {\r
468   font-weight: bold;\r
469   color: #527bbd;\r
470 }\r
471 p.tableblock {\r
472   margin-top: 0;\r
473 }\r
474 table.tableblock {\r
475   border-width: 3px;\r
476   border-spacing: 0px;\r
477   border-style: solid;\r
478   border-color: #527bbd;\r
479   border-collapse: collapse;\r
480 }\r
481 th.tableblock, td.tableblock {\r
482   border-width: 1px;\r
483   padding: 4px;\r
484   border-style: solid;\r
485   border-color: #527bbd;\r
486 }\r
487 \r
488 table.tableblock.frame-topbot {\r
489   border-left-style: hidden;\r
490   border-right-style: hidden;\r
491 }\r
492 table.tableblock.frame-sides {\r
493   border-top-style: hidden;\r
494   border-bottom-style: hidden;\r
495 }\r
496 table.tableblock.frame-none {\r
497   border-style: hidden;\r
498 }\r
499 \r
500 th.tableblock.halign-left, td.tableblock.halign-left {\r
501   text-align: left;\r
502 }\r
503 th.tableblock.halign-center, td.tableblock.halign-center {\r
504   text-align: center;\r
505 }\r
506 th.tableblock.halign-right, td.tableblock.halign-right {\r
507   text-align: right;\r
508 }\r
509 \r
510 th.tableblock.valign-top, td.tableblock.valign-top {\r
511   vertical-align: top;\r
512 }\r
513 th.tableblock.valign-middle, td.tableblock.valign-middle {\r
514   vertical-align: middle;\r
515 }\r
516 th.tableblock.valign-bottom, td.tableblock.valign-bottom {\r
517   vertical-align: bottom;\r
518 }\r
519 \r
520 \r
521 /*\r
522  * manpage specific\r
523  *\r
524  * */\r
525 \r
526 body.manpage h1 {\r
527   padding-top: 0.5em;\r
528   padding-bottom: 0.5em;\r
529   border-top: 2px solid silver;\r
530   border-bottom: 2px solid silver;\r
531 }\r
532 body.manpage h2 {\r
533   border-style: none;\r
534 }\r
535 body.manpage div.sectionbody {\r
536   margin-left: 3em;\r
537 }\r
538 \r
539 @media print {\r
540   body.manpage div#toc { display: none; }\r
541 }\r
542 </style>\r
543 <script type="text/javascript">\r
544 /*<![CDATA[*/\r
545 var asciidoc = {  // Namespace.\r
546 \r
547 /////////////////////////////////////////////////////////////////////\r
548 // Table Of Contents generator\r
549 /////////////////////////////////////////////////////////////////////\r
550 \r
551 /* Author: Mihai Bazon, September 2002\r
552  * http://students.infoiasi.ro/~mishoo\r
553  *\r
554  * Table Of Content generator\r
555  * Version: 0.4\r
556  *\r
557  * Feel free to use this script under the terms of the GNU General Public\r
558  * License, as long as you do not remove or alter this notice.\r
559  */\r
560 \r
561  /* modified by Troy D. Hanson, September 2006. License: GPL */\r
562  /* modified by Stuart Rackham, 2006, 2009. License: GPL */\r
563 \r
564 // toclevels = 1..4.\r
565 toc: function (toclevels) {\r
566 \r
567   function getText(el) {\r
568     var text = "";\r
569     for (var i = el.firstChild; i != null; i = i.nextSibling) {\r
570       if (i.nodeType == 3 /* Node.TEXT_NODE */) // IE doesn't speak constants.\r
571         text += i.data;\r
572       else if (i.firstChild != null)\r
573         text += getText(i);\r
574     }\r
575     return text;\r
576   }\r
577 \r
578   function TocEntry(el, text, toclevel) {\r
579     this.element = el;\r
580     this.text = text;\r
581     this.toclevel = toclevel;\r
582   }\r
583 \r
584   function tocEntries(el, toclevels) {\r
585     var result = new Array;\r
586     var re = new RegExp('[hH]([1-'+(toclevels+1)+'])');\r
587     // Function that scans the DOM tree for header elements (the DOM2\r
588     // nodeIterator API would be a better technique but not supported by all\r
589     // browsers).\r
590     var iterate = function (el) {\r
591       for (var i = el.firstChild; i != null; i = i.nextSibling) {\r
592         if (i.nodeType == 1 /* Node.ELEMENT_NODE */) {\r
593           var mo = re.exec(i.tagName);\r
594           if (mo && (i.getAttribute("class") || i.getAttribute("className")) != "float") {\r
595             result[result.length] = new TocEntry(i, getText(i), mo[1]-1);\r
596           }\r
597           iterate(i);\r
598         }\r
599       }\r
600     }\r
601     iterate(el);\r
602     return result;\r
603   }\r
604 \r
605   var toc = document.getElementById("toc");\r
606   if (!toc) {\r
607     return;\r
608   }\r
609 \r
610   // Delete existing TOC entries in case we're reloading the TOC.\r
611   var tocEntriesToRemove = [];\r
612   var i;\r
613   for (i = 0; i < toc.childNodes.length; i++) {\r
614     var entry = toc.childNodes[i];\r
615     if (entry.nodeName.toLowerCase() == 'div'\r
616      && entry.getAttribute("class")\r
617      && entry.getAttribute("class").match(/^toclevel/))\r
618       tocEntriesToRemove.push(entry);\r
619   }\r
620   for (i = 0; i < tocEntriesToRemove.length; i++) {\r
621     toc.removeChild(tocEntriesToRemove[i]);\r
622   }\r
623 \r
624   // Rebuild TOC entries.\r
625   var entries = tocEntries(document.getElementById("content"), toclevels);\r
626   for (var i = 0; i < entries.length; ++i) {\r
627     var entry = entries[i];\r
628     if (entry.element.id == "")\r
629       entry.element.id = "_toc_" + i;\r
630     var a = document.createElement("a");\r
631     a.href = "#" + entry.element.id;\r
632     a.appendChild(document.createTextNode(entry.text));\r
633     var div = document.createElement("div");\r
634     div.appendChild(a);\r
635     div.className = "toclevel" + entry.toclevel;\r
636     toc.appendChild(div);\r
637   }\r
638   if (entries.length == 0)\r
639     toc.parentNode.removeChild(toc);\r
640 },\r
641 \r
642 \r
643 /////////////////////////////////////////////////////////////////////\r
644 // Footnotes generator\r
645 /////////////////////////////////////////////////////////////////////\r
646 \r
647 /* Based on footnote generation code from:\r
648  * http://www.brandspankingnew.net/archive/2005/07/format_footnote.html\r
649  */\r
650 \r
651 footnotes: function () {\r
652   // Delete existing footnote entries in case we're reloading the footnodes.\r
653   var i;\r
654   var noteholder = document.getElementById("footnotes");\r
655   if (!noteholder) {\r
656     return;\r
657   }\r
658   var entriesToRemove = [];\r
659   for (i = 0; i < noteholder.childNodes.length; i++) {\r
660     var entry = noteholder.childNodes[i];\r
661     if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote")\r
662       entriesToRemove.push(entry);\r
663   }\r
664   for (i = 0; i < entriesToRemove.length; i++) {\r
665     noteholder.removeChild(entriesToRemove[i]);\r
666   }\r
667 \r
668   // Rebuild footnote entries.\r
669   var cont = document.getElementById("content");\r
670   var spans = cont.getElementsByTagName("span");\r
671   var refs = {};\r
672   var n = 0;\r
673   for (i=0; i<spans.length; i++) {\r
674     if (spans[i].className == "footnote") {\r
675       n++;\r
676       var note = spans[i].getAttribute("data-note");\r
677       if (!note) {\r
678         // Use [\s\S] in place of . so multi-line matches work.\r
679         // Because JavaScript has no s (dotall) regex flag.\r
680         note = spans[i].innerHTML.match(/\s*\[([\s\S]*)]\s*/)[1];\r
681         spans[i].innerHTML =\r
682           "[<a id='_footnoteref_" + n + "' href='#_footnote_" + n +\r
683           "' title='View footnote' class='footnote'>" + n + "</a>]";\r
684         spans[i].setAttribute("data-note", note);\r
685       }\r
686       noteholder.innerHTML +=\r
687         "<div class='footnote' id='_footnote_" + n + "'>" +\r
688         "<a href='#_footnoteref_" + n + "' title='Return to text'>" +\r
689         n + "</a>. " + note + "</div>";\r
690       var id =spans[i].getAttribute("id");\r
691       if (id != null) refs["#"+id] = n;\r
692     }\r
693   }\r
694   if (n == 0)\r
695     noteholder.parentNode.removeChild(noteholder);\r
696   else {\r
697     // Process footnoterefs.\r
698     for (i=0; i<spans.length; i++) {\r
699       if (spans[i].className == "footnoteref") {\r
700         var href = spans[i].getElementsByTagName("a")[0].getAttribute("href");\r
701         href = href.match(/#.*/)[0];  // Because IE return full URL.\r
702         n = refs[href];\r
703         spans[i].innerHTML =\r
704           "[<a href='#_footnote_" + n +\r
705           "' title='View footnote' class='footnote'>" + n + "</a>]";\r
706       }\r
707     }\r
708   }\r
709 },\r
710 \r
711 install: function(toclevels) {\r
712   var timerId;\r
713 \r
714   function reinstall() {\r
715     asciidoc.footnotes();\r
716     if (toclevels) {\r
717       asciidoc.toc(toclevels);\r
718     }\r
719   }\r
720 \r
721   function reinstallAndRemoveTimer() {\r
722     clearInterval(timerId);\r
723     reinstall();\r
724   }\r
725 \r
726   timerId = setInterval(reinstall, 500);\r
727   if (document.addEventListener)\r
728     document.addEventListener("DOMContentLoaded", reinstallAndRemoveTimer, false);\r
729   else\r
730     window.onload = reinstallAndRemoveTimer;\r
731 }\r
732 \r
733 }\r
734 asciidoc.install(2);\r
735 /*]]>*/\r
736 </script>\r
737 </head>\r
738 <body class="article">\r
739 <div id="header">\r
740 <h1>PRSS README</h1>\r
741 <div id="toc">
742   <div id="toctitle">Table of Contents</div>
743   <noscript><p><b>JavaScript must be enabled in your browser to display the table of contents.</b></p></noscript>
744 </div>\r
745 </div>\r
746 <div id="content">\r
747 <div id="preamble">\r
748 <div class="sectionbody">\r
749 <div class="paragraph"><p>See documentation at <a href="doc/index.html">doc/index.html</a>.</p></div>\r
750 </div>\r
751 </div>\r
752 </div>\r
753 <div id="footnotes"><hr /></div>\r
754 <div id="footer">\r
755 <div id="footer-text">\r
756 Last updated 2013-05-01 17:12:53 CEST\r
757 </div>\r
758 </div>\r
759 </body>\r
760 </html>\r