accumulo-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bil...@apache.org
Subject svn commit: r1593070 - in /accumulo/site/trunk: content/1.6/accumulo_user_manual.html templates/nav.html
Date Wed, 07 May 2014 17:10:46 GMT
Author: billie
Date: Wed May  7 17:10:46 2014
New Revision: 1593070

URL: http://svn.apache.org/r1593070
Log:
added html manual

Added:
    accumulo/site/trunk/content/1.6/accumulo_user_manual.html   (with props)
Modified:
    accumulo/site/trunk/templates/nav.html

Added: accumulo/site/trunk/content/1.6/accumulo_user_manual.html
URL: http://svn.apache.org/viewvc/accumulo/site/trunk/content/1.6/accumulo_user_manual.html?rev=1593070&view=auto
==============================================================================
--- accumulo/site/trunk/content/1.6/accumulo_user_manual.html (added)
+++ accumulo/site/trunk/content/1.6/accumulo_user_manual.html Wed May  7 17:10:46 2014
@@ -0,0 +1,5220 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<meta name="generator" content="Asciidoctor 0.1.4">
+<meta name="viewport" content="width=device-width, initial-scale=1.0">
+<title>Apache Accumulo User Manual Version 1.6</title>
+<style>
+/* Asciidoctor default stylesheet | MIT License | http://asciidoctor.org */
+article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary { display: block; }
+audio, canvas, video { display: inline-block; }
+audio:not([controls]) { display: none; height: 0; }
+[hidden] { display: none; }
+html { background: #fff; color: #000; font-family: sans-serif; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; }
+body { margin: 0; }
+a:focus { outline: thin dotted; }
+a:active, a:hover { outline: 0; }
+h1 { font-size: 2em; margin: 0.67em 0; }
+abbr[title] { border-bottom: 1px dotted; }
+b, strong { font-weight: bold; }
+dfn { font-style: italic; }
+hr { -moz-box-sizing: content-box; box-sizing: content-box; height: 0; }
+mark { background: #ff0; color: #000; }
+code, kbd, pre, samp { font-family: monospace, serif; font-size: 1em; }
+pre { white-space: pre-wrap; }
+q { quotes: "\201C" "\201D" "\2018" "\2019"; }
+small { font-size: 80%; }
+sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
+sup { top: -0.5em; }
+sub { bottom: -0.25em; }
+img { border: 0; }
+svg:not(:root) { overflow: hidden; }
+figure { margin: 0; }
+fieldset { border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em; }
+legend { border: 0; padding: 0; }
+button, input, select, textarea { font-family: inherit; font-size: 100%; margin: 0; }
+button, input { line-height: normal; }
+button, select { text-transform: none; }
+button, html input[type="button"], input[type="reset"], input[type="submit"] { -webkit-appearance: button; cursor: pointer; }
+button[disabled], html input[disabled] { cursor: default; }
+input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0; }
+input[type="search"] { -webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }
+input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
+button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
+textarea { overflow: auto; vertical-align: top; }
+table { border-collapse: collapse; border-spacing: 0; }
+*, *:before, *:after { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
+html, body { font-size: 100%; }
+body { background: white; color: #222222; padding: 0; margin: 0; font-family: "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif; font-weight: normal; font-style: normal; line-height: 1; position: relative; cursor: auto; }
+a:hover { cursor: pointer; }
+a:focus { outline: none; }
+img, object, embed { max-width: 100%; height: auto; }
+object, embed { height: 100%; }
+img { -ms-interpolation-mode: bicubic; }
+#map_canvas img, #map_canvas embed, #map_canvas object, .map_canvas img, .map_canvas embed, .map_canvas object { max-width: none !important; }
+.left { float: left !important; }
+.right { float: right !important; }
+.text-left { text-align: left !important; }
+.text-right { text-align: right !important; }
+.text-center { text-align: center !important; }
+.text-justify { text-align: justify !important; }
+.hide { display: none; }
+.antialiased, body { -webkit-font-smoothing: antialiased; }
+img { display: inline-block; vertical-align: middle; }
+textarea { height: auto; min-height: 50px; }
+select { width: 100%; }
+p.lead, .paragraph.lead > p, #preamble > .sectionbody > .paragraph:first-of-type p { font-size: 1.21875em; line-height: 1.6; }
+.subheader, #content #toctitle, .admonitionblock td.content > .title, .exampleblock > .title, .imageblock > .title, .videoblock > .title, .listingblock > .title, .literalblock > .title, .openblock > .title, .paragraph > .title, .quoteblock > .title, .sidebarblock > .title, .tableblock > .title, .verseblock > .title, .dlist > .title, .olist > .title, .ulist > .title, .qlist > .title, .hdlist > .title, .tableblock > caption { line-height: 1.4; color: #7a2518; font-weight: 300; margin-top: 0.2em; margin-bottom: 0.5em; }
+div, dl, dt, dd, ul, ol, li, h1, h2, h3, #toctitle, .sidebarblock > .content > .title, h4, h5, h6, pre, form, p, blockquote, th, td { margin: 0; padding: 0; direction: ltr; }
+a { color: #005498; text-decoration: underline; line-height: inherit; }
+a:hover, a:focus { color: #00467f; }
+a img { border: none; }
+p { font-family: inherit; font-weight: normal; font-size: 1em; line-height: 1.6; margin-bottom: 1.25em; text-rendering: optimizeLegibility; }
+p aside { font-size: 0.875em; line-height: 1.35; font-style: italic; }
+h1, h2, h3, #toctitle, .sidebarblock > .content > .title, h4, h5, h6 { font-family: Georgia, "URW Bookman L", Helvetica, Arial, sans-serif; font-weight: normal; font-style: normal; color: #ba3925; text-rendering: optimizeLegibility; margin-top: 1em; margin-bottom: 0.5em; line-height: 1.2125em; }
+h1 small, h2 small, h3 small, #toctitle small, .sidebarblock > .content > .title small, h4 small, h5 small, h6 small { font-size: 60%; color: #e99b8f; line-height: 0; }
+h1 { font-size: 2.125em; }
+h2 { font-size: 1.6875em; }
+h3, #toctitle, .sidebarblock > .content > .title { font-size: 1.375em; }
+h4 { font-size: 1.125em; }
+h5 { font-size: 1.125em; }
+h6 { font-size: 1em; }
+hr { border: solid #dddddd; border-width: 1px 0 0; clear: both; margin: 1.25em 0 1.1875em; height: 0; }
+em, i { font-style: italic; line-height: inherit; }
+strong, b { font-weight: bold; line-height: inherit; }
+small { font-size: 60%; line-height: inherit; }
+code { font-family: Consolas, "Liberation Mono", Courier, monospace; font-weight: normal; color: #6d180b; }
+ul, ol, dl { font-size: 1em; line-height: 1.6; margin-bottom: 1.25em; list-style-position: outside; font-family: inherit; }
+ul, ol { margin-left: 1.5em; }
+ul li ul, ul li ol { margin-left: 1.25em; margin-bottom: 0; font-size: 1em; }
+ul.square li ul, ul.circle li ul, ul.disc li ul { list-style: inherit; }
+ul.square { list-style-type: square; }
+ul.circle { list-style-type: circle; }
+ul.disc { list-style-type: disc; }
+ul.no-bullet { list-style: none; }
+ol li ul, ol li ol { margin-left: 1.25em; margin-bottom: 0; }
+dl dt { margin-bottom: 0.3125em; font-weight: bold; }
+dl dd { margin-bottom: 1.25em; }
+abbr, acronym { text-transform: uppercase; font-size: 90%; color: #222222; border-bottom: 1px dotted #dddddd; cursor: help; }
+abbr { text-transform: none; }
+blockquote { margin: 0 0 1.25em; padding: 0.5625em 1.25em 0 1.1875em; border-left: 1px solid #dddddd; }
+blockquote cite { display: block; font-size: inherit; color: #555555; }
+blockquote cite:before { content: "\2014 \0020"; }
+blockquote cite a, blockquote cite a:visited { color: #555555; }
+blockquote, blockquote p { line-height: 1.6; color: #6f6f6f; }
+.vcard { display: inline-block; margin: 0 0 1.25em 0; border: 1px solid #dddddd; padding: 0.625em 0.75em; }
+.vcard li { margin: 0; display: block; }
+.vcard .fn { font-weight: bold; font-size: 0.9375em; }
+.vevent .summary { font-weight: bold; }
+.vevent abbr { cursor: auto; text-decoration: none; font-weight: bold; border: none; padding: 0 0.0625em; }
+@media only screen and (min-width: 768px) { h1, h2, h3, #toctitle, .sidebarblock > .content > .title, h4, h5, h6 { line-height: 1.4; }
+  h1 { font-size: 2.75em; }
+  h2 { font-size: 2.3125em; }
+  h3, #toctitle, .sidebarblock > .content > .title { font-size: 1.6875em; }
+  h4 { font-size: 1.4375em; } }
+.print-only { display: none !important; }
+@media print { * { background: transparent !important; color: #000 !important; box-shadow: none !important; text-shadow: none !important; }
+  a, a:visited { text-decoration: underline; }
+  a[href]:after { content: " (" attr(href) ")"; }
+  abbr[title]:after { content: " (" attr(title) ")"; }
+  .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; }
+  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
+  thead { display: table-header-group; }
+  tr, img { page-break-inside: avoid; }
+  img { max-width: 100% !important; }
+  @page { margin: 0.5cm; }
+  p, h2, h3, #toctitle, .sidebarblock > .content > .title { orphans: 3; widows: 3; }
+  h2, h3, #toctitle, .sidebarblock > .content > .title { page-break-after: avoid; }
+  .hide-on-print { display: none !important; }
+  .print-only { display: block !important; }
+  .hide-for-print { display: none !important; }
+  .show-for-print { display: inherit !important; } }
+table { background: white; margin-bottom: 1.25em; border: solid 1px #dddddd; }
+table thead, table tfoot { background: whitesmoke; font-weight: bold; }
+table thead tr th, table thead tr td, table tfoot tr th, table tfoot tr td { padding: 0.5em 0.625em 0.625em; font-size: inherit; color: #222222; text-align: left; }
+table tr th, table tr td { padding: 0.5625em 0.625em; font-size: inherit; color: #222222; }
+table tr.even, table tr.alt, table tr:nth-of-type(even) { background: #f9f9f9; }
+table thead tr th, table tfoot tr th, table tbody tr td, table tr td, table tfoot tr td { display: table-cell; line-height: 1.6; }
+.clearfix:before, .clearfix:after, .float-group:before, .float-group:after { content: " "; display: table; }
+.clearfix:after, .float-group:after { clear: both; }
+*:not(pre) > code { font-size: 0.9375em; padding: 1px 3px 0; white-space: nowrap; background-color: #f2f2f2; border: 1px solid #cccccc; -webkit-border-radius: 4px; border-radius: 4px; text-shadow: none; }
+pre, pre > code { line-height: 1.4; color: inherit; font-family: Consolas, "Liberation Mono", Courier, monospace; font-weight: normal; }
+kbd.keyseq { color: #555555; }
+kbd:not(.keyseq) { display: inline-block; color: #222222; font-size: 0.75em; line-height: 1.4; background-color: #F7F7F7; border: 1px solid #ccc; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2), 0 0 0 2px white inset; box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2), 0 0 0 2px white inset; margin: -0.15em 0.15em 0 0.15em; padding: 0.2em 0.6em 0.2em 0.5em; vertical-align: middle; white-space: nowrap; }
+kbd kbd:first-child { margin-left: 0; }
+kbd kbd:last-child { margin-right: 0; }
+.menuseq, .menu { color: #090909; }
+p a > code:hover { color: #561309; }
+#header, #content, #footnotes, #footer { width: 100%; margin-left: auto; margin-right: auto; margin-top: 0; margin-bottom: 0; max-width: 62.5em; *zoom: 1; position: relative; padding-left: 0.9375em; padding-right: 0.9375em; }
+#header:before, #header:after, #content:before, #content:after, #footnotes:before, #footnotes:after, #footer:before, #footer:after { content: " "; display: table; }
+#header:after, #content:after, #footnotes:after, #footer:after { clear: both; }
+#header { margin-bottom: 2.5em; }
+#header > h1 { color: black; font-weight: normal; border-bottom: 1px solid #dddddd; margin-bottom: -28px; padding-bottom: 32px; }
+#header span { color: #6f6f6f; }
+#header #revnumber { text-transform: capitalize; }
+#header br { display: none; }
+#header br + span { padding-left: 3px; }
+#header br + span:before { content: "\2013 \0020"; }
+#header br + span.author { padding-left: 0; }
+#header br + span.author:before { content: ", "; }
+#toc { border-bottom: 3px double #ebebeb; padding-bottom: 1.25em; }
+#toc > ul { margin-left: 0.25em; }
+#toc ul.sectlevel0 > li > a { font-style: italic; }
+#toc ul.sectlevel0 ul.sectlevel1 { margin-left: 0; margin-top: 0.5em; margin-bottom: 0.5em; }
+#toc ul { list-style-type: none; }
+#toctitle { color: #7a2518; }
+@media only screen and (min-width: 1280px) { body.toc2 { padding-left: 20em; }
+  #toc.toc2 { position: fixed; width: 20em; left: 0; top: 0; border-right: 1px solid #ebebeb; border-bottom: 0; z-index: 1000; padding: 1em; height: 100%; overflow: auto; }
+  #toc.toc2 #toctitle { margin-top: 0; }
+  #toc.toc2 > ul { font-size: .95em; }
+  #toc.toc2 ul ul { margin-left: 0; padding-left: 1.25em; }
+  #toc.toc2 ul.sectlevel0 ul.sectlevel1 { padding-left: 0; margin-top: 0.5em; margin-bottom: 0.5em; }
+  body.toc2.toc-right { padding-left: 0; padding-right: 20em; }
+  body.toc2.toc-right #toc.toc2 { border-right: 0; border-left: 1px solid #ebebeb; left: auto; right: 0; } }
+#content #toc { border-style: solid; border-width: 1px; border-color: #d9d9d9; margin-bottom: 1.25em; padding: 1.25em; background: #f2f2f2; border-width: 0; -webkit-border-radius: 4px; border-radius: 4px; }
+#content #toc > :first-child { margin-top: 0; }
+#content #toc > :last-child { margin-bottom: 0; }
+#content #toc a { text-decoration: none; }
+#content #toctitle { font-weight: bold; font-family: "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif; font-size: 1em; padding-left: 0.125em; }
+#footer { max-width: 100%; background-color: #222222; padding: 1.25em; }
+#footer-text { color: #dddddd; line-height: 1.44; }
+.sect1 { padding-bottom: 1.25em; }
+.sect1 + .sect1 { border-top: 3px double #ebebeb; }
+#content h1 > a.anchor, h2 > a.anchor, h3 > a.anchor, #toctitle > a.anchor, .sidebarblock > .content > .title > a.anchor, h4 > a.anchor, h5 > a.anchor, h6 > a.anchor { position: absolute; width: 1em; margin-left: -1em; display: block; text-decoration: none; visibility: hidden; text-align: center; font-weight: normal; }
+#content h1 > a.anchor:before, h2 > a.anchor:before, h3 > a.anchor:before, #toctitle > a.anchor:before, .sidebarblock > .content > .title > a.anchor:before, h4 > a.anchor:before, h5 > a.anchor:before, h6 > a.anchor:before { content: '\00A7'; font-size: .85em; vertical-align: text-top; display: block; margin-top: 0.05em; }
+#content h1:hover > a.anchor, #content h1 > a.anchor:hover, h2:hover > a.anchor, h2 > a.anchor:hover, h3:hover > a.anchor, #toctitle:hover > a.anchor, .sidebarblock > .content > .title:hover > a.anchor, h3 > a.anchor:hover, #toctitle > a.anchor:hover, .sidebarblock > .content > .title > a.anchor:hover, h4:hover > a.anchor, h4 > a.anchor:hover, h5:hover > a.anchor, h5 > a.anchor:hover, h6:hover > a.anchor, h6 > a.anchor:hover { visibility: visible; }
+#content h1 > a.link, h2 > a.link, h3 > a.link, #toctitle > a.link, .sidebarblock > .content > .title > a.link, h4 > a.link, h5 > a.link, h6 > a.link { color: #ba3925; text-decoration: none; }
+#content h1 > a.link:hover, h2 > a.link:hover, h3 > a.link:hover, #toctitle > a.link:hover, .sidebarblock > .content > .title > a.link:hover, h4 > a.link:hover, h5 > a.link:hover, h6 > a.link:hover { color: #a53221; }
+.imageblock, .literalblock, .listingblock, .verseblock, .videoblock { margin-bottom: 1.25em; }
+.admonitionblock td.content > .title, .exampleblock > .title, .imageblock > .title, .videoblock > .title, .listingblock > .title, .literalblock > .title, .openblock > .title, .paragraph > .title, .quoteblock > .title, .sidebarblock > .title, .tableblock > .title, .verseblock > .title, .dlist > .title, .olist > .title, .ulist > .title, .qlist > .title, .hdlist > .title { text-align: left; font-weight: bold; }
+.tableblock > caption { text-align: left; font-weight: bold; white-space: nowrap; overflow: visible; max-width: 0; }
+table.tableblock #preamble > .sectionbody > .paragraph:first-of-type p { font-size: inherit; }
+.admonitionblock > table { border: 0; background: none; width: 100%; }
+.admonitionblock > table td.icon { text-align: center; width: 80px; }
+.admonitionblock > table td.icon img { max-width: none; }
+.admonitionblock > table td.icon .title { font-weight: bold; text-transform: uppercase; }
+.admonitionblock > table td.content { padding-left: 1.125em; padding-right: 1.25em; border-left: 1px solid #dddddd; color: #6f6f6f; }
+.admonitionblock > table td.content > :last-child > :last-child { margin-bottom: 0; }
+.exampleblock > .content { border-style: solid; border-width: 1px; border-color: #e6e6e6; margin-bottom: 1.25em; padding: 1.25em; background: white; -webkit-border-radius: 4px; border-radius: 4px; }
+.exampleblock > .content > :first-child { margin-top: 0; }
+.exampleblock > .content > :last-child { margin-bottom: 0; }
+.exampleblock > .content h1, .exampleblock > .content h2, .exampleblock > .content h3, .exampleblock > .content #toctitle, .sidebarblock.exampleblock > .content > .title, .exampleblock > .content h4, .exampleblock > .content h5, .exampleblock > .content h6, .exampleblock > .content p { color: #333333; }
+.exampleblock > .content h1, .exampleblock > .content h2, .exampleblock > .content h3, .exampleblock > .content #toctitle, .sidebarblock.exampleblock > .content > .title, .exampleblock > .content h4, .exampleblock > .content h5, .exampleblock > .content h6 { line-height: 1; margin-bottom: 0.625em; }
+.exampleblock > .content h1.subheader, .exampleblock > .content h2.subheader, .exampleblock > .content h3.subheader, .exampleblock > .content .subheader#toctitle, .sidebarblock.exampleblock > .content > .subheader.title, .exampleblock > .content h4.subheader, .exampleblock > .content h5.subheader, .exampleblock > .content h6.subheader { line-height: 1.4; }
+.exampleblock.result > .content { -webkit-box-shadow: 0 1px 8px #d9d9d9; box-shadow: 0 1px 8px #d9d9d9; }
+.sidebarblock { border-style: solid; border-width: 1px; border-color: #d9d9d9; margin-bottom: 1.25em; padding: 1.25em; background: #f2f2f2; -webkit-border-radius: 4px; border-radius: 4px; }
+.sidebarblock > :first-child { margin-top: 0; }
+.sidebarblock > :last-child { margin-bottom: 0; }
+.sidebarblock h1, .sidebarblock h2, .sidebarblock h3, .sidebarblock #toctitle, .sidebarblock > .content > .title, .sidebarblock h4, .sidebarblock h5, .sidebarblock h6, .sidebarblock p { color: #333333; }
+.sidebarblock h1, .sidebarblock h2, .sidebarblock h3, .sidebarblock #toctitle, .sidebarblock > .content > .title, .sidebarblock h4, .sidebarblock h5, .sidebarblock h6 { line-height: 1; margin-bottom: 0.625em; }
+.sidebarblock h1.subheader, .sidebarblock h2.subheader, .sidebarblock h3.subheader, .sidebarblock .subheader#toctitle, .sidebarblock > .content > .subheader.title, .sidebarblock h4.subheader, .sidebarblock h5.subheader, .sidebarblock h6.subheader { line-height: 1.4; }
+.sidebarblock > .content > .title { color: #7a2518; margin-top: 0; line-height: 1.6; }
+.exampleblock > .content > :last-child > :last-child, .exampleblock > .content .olist > ol > li:last-child > :last-child, .exampleblock > .content .ulist > ul > li:last-child > :last-child, .exampleblock > .content .qlist > ol > li:last-child > :last-child, .sidebarblock > .content > :last-child > :last-child, .sidebarblock > .content .olist > ol > li:last-child > :last-child, .sidebarblock > .content .ulist > ul > li:last-child > :last-child, .sidebarblock > .content .qlist > ol > li:last-child > :last-child { margin-bottom: 0; }
+.literalblock > .content pre, .listingblock > .content pre { background: none; border-width: 1px 0; border-style: dotted; border-color: #bfbfbf; -webkit-border-radius: 4px; border-radius: 4px; padding: 0.75em 0.75em 0.5em 0.75em; word-wrap: break-word; }
+.literalblock > .content pre.nowrap, .listingblock > .content pre.nowrap { overflow-x: auto; white-space: pre; word-wrap: normal; }
+.literalblock > .content pre > code, .listingblock > .content pre > code { display: block; }
+@media only screen { .literalblock > .content pre, .listingblock > .content pre { font-size: 0.8em; } }
+@media only screen and (min-width: 768px) { .literalblock > .content pre, .listingblock > .content pre { font-size: 0.9em; } }
+@media only screen and (min-width: 1280px) { .literalblock > .content pre, .listingblock > .content pre { font-size: 1em; } }
+.listingblock > .content { position: relative; }
+.listingblock:hover code[class*=" language-"]:before { text-transform: uppercase; font-size: 0.9em; color: #999; position: absolute; top: 0.375em; right: 0.375em; }
+.listingblock:hover code.asciidoc:before { content: "asciidoc"; }
+.listingblock:hover code.clojure:before { content: "clojure"; }
+.listingblock:hover code.css:before { content: "css"; }
+.listingblock:hover code.groovy:before { content: "groovy"; }
+.listingblock:hover code.html:before { content: "html"; }
+.listingblock:hover code.java:before { content: "java"; }
+.listingblock:hover code.javascript:before { content: "javascript"; }
+.listingblock:hover code.python:before { content: "python"; }
+.listingblock:hover code.ruby:before { content: "ruby"; }
+.listingblock:hover code.scss:before { content: "scss"; }
+.listingblock:hover code.xml:before { content: "xml"; }
+.listingblock:hover code.yaml:before { content: "yaml"; }
+.listingblock.terminal pre .command:before { content: attr(data-prompt); padding-right: 0.5em; color: #999; }
+.listingblock.terminal pre .command:not([data-prompt]):before { content: '$'; }
+table.pyhltable { border: 0; margin-bottom: 0; }
+table.pyhltable td { vertical-align: top; padding-top: 0; padding-bottom: 0; }
+table.pyhltable td.code { padding-left: .75em; padding-right: 0; }
+.highlight.pygments .lineno, table.pyhltable td:not(.code) { color: #999; padding-left: 0; padding-right: .5em; border-right: 1px solid #dddddd; }
+.highlight.pygments .lineno { display: inline-block; margin-right: .25em; }
+table.pyhltable .linenodiv { background-color: transparent !important; padding-right: 0 !important; }
+.quoteblock { margin: 0 0 1.25em; padding: 0.5625em 1.25em 0 1.1875em; border-left: 1px solid #dddddd; }
+.quoteblock blockquote { margin: 0 0 1.25em 0; padding: 0 0 0.5625em 0; border: 0; }
+.quoteblock blockquote > .paragraph:last-child p { margin-bottom: 0; }
+.quoteblock .attribution { margin-top: -.25em; padding-bottom: 0.5625em; font-size: inherit; color: #555555; }
+.quoteblock .attribution br { display: none; }
+.quoteblock .attribution cite { display: block; margin-bottom: 0.625em; }
+table thead th, table tfoot th { font-weight: bold; }
+table.tableblock.grid-all { border-collapse: separate; border-spacing: 1px; -webkit-border-radius: 4px; border-radius: 4px; border-top: 1px solid #dddddd; border-bottom: 1px solid #dddddd; }
+table.tableblock.frame-topbot, table.tableblock.frame-none { border-left: 0; border-right: 0; }
+table.tableblock.frame-sides, table.tableblock.frame-none { border-top: 0; border-bottom: 0; }
+table.tableblock td .paragraph:last-child p, table.tableblock td > p:last-child { margin-bottom: 0; }
+th.tableblock.halign-left, td.tableblock.halign-left { text-align: left; }
+th.tableblock.halign-right, td.tableblock.halign-right { text-align: right; }
+th.tableblock.halign-center, td.tableblock.halign-center { text-align: center; }
+th.tableblock.valign-top, td.tableblock.valign-top { vertical-align: top; }
+th.tableblock.valign-bottom, td.tableblock.valign-bottom { vertical-align: bottom; }
+th.tableblock.valign-middle, td.tableblock.valign-middle { vertical-align: middle; }
+p.tableblock.header { color: #222222; font-weight: bold; }
+td > div.verse { white-space: pre; }
+ol { margin-left: 1.75em; }
+ul li ol { margin-left: 1.5em; }
+dl dd { margin-left: 1.125em; }
+dl dd:last-child, dl dd:last-child > :last-child { margin-bottom: 0; }
+ol > li p, ul > li p, ul dd, ol dd, .olist .olist, .ulist .ulist, .ulist .olist, .olist .ulist { margin-bottom: 0.625em; }
+ul.unstyled, ol.unnumbered, ul.checklist, ul.none { list-style-type: none; }
+ul.unstyled, ol.unnumbered, ul.checklist { margin-left: 0.625em; }
+ul.checklist li > p:first-child > i[class^="icon-check"]:first-child, ul.checklist li > p:first-child > input[type="checkbox"]:first-child { margin-right: 0.25em; }
+ul.checklist li > p:first-child > input[type="checkbox"]:first-child { position: relative; top: 1px; }
+ul.inline { margin: 0 auto 0.625em auto; margin-left: -1.375em; margin-right: 0; padding: 0; list-style: none; overflow: hidden; }
+ul.inline > li { list-style: none; float: left; margin-left: 1.375em; display: block; }
+ul.inline > li > * { display: block; }
+.unstyled dl dt { font-weight: normal; font-style: normal; }
+ol.arabic { list-style-type: decimal; }
+ol.decimal { list-style-type: decimal-leading-zero; }
+ol.loweralpha { list-style-type: lower-alpha; }
+ol.upperalpha { list-style-type: upper-alpha; }
+ol.lowerroman { list-style-type: lower-roman; }
+ol.upperroman { list-style-type: upper-roman; }
+ol.lowergreek { list-style-type: lower-greek; }
+.hdlist > table, .colist > table { border: 0; background: none; }
+.hdlist > table > tbody > tr, .colist > table > tbody > tr { background: none; }
+td.hdlist1 { padding-right: .8em; font-weight: bold; }
+td.hdlist1, td.hdlist2 { vertical-align: top; }
+.literalblock + .colist, .listingblock + .colist { margin-top: -0.5em; }
+.colist > table tr > td:first-of-type { padding: 0 .8em; line-height: 1; }
+.colist > table tr > td:last-of-type { padding: 0.25em 0; }
+.qanda > ol > li > p > em:only-child { color: #00467f; }
+.thumb, .th { line-height: 0; display: inline-block; border: solid 4px white; -webkit-box-shadow: 0 0 0 1px #dddddd; box-shadow: 0 0 0 1px #dddddd; }
+.imageblock.left, .imageblock[style*="float: left"] { margin: 0.25em 0.625em 1.25em 0; }
+.imageblock.right, .imageblock[style*="float: right"] { margin: 0.25em 0 1.25em 0.625em; }
+.imageblock > .title { margin-bottom: 0; }
+.imageblock.thumb, .imageblock.th { border-width: 6px; }
+.imageblock.thumb > .title, .imageblock.th > .title { padding: 0 0.125em; }
+.image.left, .image.right { margin-top: 0.25em; margin-bottom: 0.25em; display: inline-block; line-height: 0; }
+.image.left { margin-right: 0.625em; }
+.image.right { margin-left: 0.625em; }
+a.image { text-decoration: none; }
+span.footnote, span.footnoteref { vertical-align: super; font-size: 0.875em; }
+span.footnote a, span.footnoteref a { text-decoration: none; }
+#footnotes { padding-top: 0.75em; padding-bottom: 0.75em; margin-bottom: 0.625em; }
+#footnotes hr { width: 20%; min-width: 6.25em; margin: -.25em 0 .75em 0; border-width: 1px 0 0 0; }
+#footnotes .footnote { padding: 0 0.375em; line-height: 1.3; font-size: 0.875em; margin-left: 1.2em; text-indent: -1.2em; margin-bottom: .2em; }
+#footnotes .footnote a:first-of-type { font-weight: bold; text-decoration: none; }
+#footnotes .footnote:last-of-type { margin-bottom: 0; }
+#content #footnotes { margin-top: -0.625em; margin-bottom: 0; padding: 0.75em 0; }
+.gist .file-data > table { border: none; background: #fff; width: 100%; margin-bottom: 0; }
+.gist .file-data > table td.line-data { width: 99%; }
+div.unbreakable { page-break-inside: avoid; }
+.big { font-size: larger; }
+.small { font-size: smaller; }
+.underline { text-decoration: underline; }
+.overline { text-decoration: overline; }
+.line-through { text-decoration: line-through; }
+.aqua { color: #00bfbf; }
+.aqua-background { background-color: #00fafa; }
+.black { color: black; }
+.black-background { background-color: black; }
+.blue { color: #0000bf; }
+.blue-background { background-color: #0000fa; }
+.fuchsia { color: #bf00bf; }
+.fuchsia-background { background-color: #fa00fa; }
+.gray { color: #606060; }
+.gray-background { background-color: #7d7d7d; }
+.green { color: #006000; }
+.green-background { background-color: #007d00; }
+.lime { color: #00bf00; }
+.lime-background { background-color: #00fa00; }
+.maroon { color: #600000; }
+.maroon-background { background-color: #7d0000; }
+.navy { color: #000060; }
+.navy-background { background-color: #00007d; }
+.olive { color: #606000; }
+.olive-background { background-color: #7d7d00; }
+.purple { color: #600060; }
+.purple-background { background-color: #7d007d; }
+.red { color: #bf0000; }
+.red-background { background-color: #fa0000; }
+.silver { color: #909090; }
+.silver-background { background-color: #bcbcbc; }
+.teal { color: #006060; }
+.teal-background { background-color: #007d7d; }
+.white { color: #bfbfbf; }
+.white-background { background-color: #fafafa; }
+.yellow { color: #bfbf00; }
+.yellow-background { background-color: #fafa00; }
+span.icon > [class^="icon-"], span.icon > [class*=" icon-"] { cursor: default; }
+.admonitionblock td.icon [class^="icon-"]:before { font-size: 2.5em; text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5); cursor: default; }
+.admonitionblock td.icon .icon-note:before { content: "\f05a"; color: #005498; color: #003f72; }
+.admonitionblock td.icon .icon-tip:before { content: "\f0eb"; text-shadow: 1px 1px 2px rgba(155, 155, 0, 0.8); color: #111; }
+.admonitionblock td.icon .icon-warning:before { content: "\f071"; color: #bf6900; }
+.admonitionblock td.icon .icon-caution:before { content: "\f06d"; color: #bf3400; }
+.admonitionblock td.icon .icon-important:before { content: "\f06a"; color: #bf0000; }
+.conum { display: inline-block; color: white !important; background-color: #222222; -webkit-border-radius: 100px; border-radius: 100px; text-align: center; width: 20px; height: 20px; font-size: 12px; font-weight: bold; line-height: 20px; font-family: Arial, sans-serif; font-style: normal; position: relative; top: -2px; letter-spacing: -1px; }
+.conum * { color: white !important; }
+.conum + b { display: none; }
+.conum:after { content: attr(data-value); }
+.conum:not([data-value]):empty { display: none; }
+.literalblock > .content > pre, .listingblock > .content > pre { -webkit-border-radius: 0; border-radius: 0; }
+
+</style>
+<link rel="stylesheet" href="http://cdnjs.cloudflare.com/ajax/libs/highlight.js/7.3/styles/default.min.css">
+<script src="http://cdnjs.cloudflare.com/ajax/libs/highlight.js/7.3/highlight.min.js"></script>
+<script>hljs.initHighlightingOnLoad()</script>
+</head>
+<body class="book toc2 toc-left">
+<div id="header">
+<h1>Apache Accumulo User Manual Version 1.6</h1>
+<span id="author" class="author">Apache Accumulo Project</span><br>
+<span id="email" class="email"><a href="mailto:dev@accumulo.apache.org">dev@accumulo.apache.org</a></span><br>
+<div id="toc" class="toc2">
+<div id="toctitle">Apache Accumulo 1.6</div>
+<ul class="sectlevel1">
+<li><a href="#_introduction">1. Introduction</a></li>
+<li><a href="#_accumulo_design">2. Accumulo Design</a></li>
+<li>
+<ul class="sectlevel2">
+<li><a href="#_data_model">2.1. Data Model</a></li>
+<li><a href="#_architecture">2.2. Architecture</a></li>
+<li><a href="#_components">2.3. Components</a></li>
+<li>
+<ul class="sectlevel3">
+<li><a href="#_tablet_server">2.3.1. Tablet Server</a></li>
+<li><a href="#_garbage_collector">2.3.2. Garbage Collector</a></li>
+<li><a href="#_master">2.3.3. Master</a></li>
+<li><a href="#_tracer">2.3.4. Tracer</a></li>
+<li><a href="#_monitor">2.3.5. Monitor</a></li>
+<li><a href="#_client">2.3.6. Client</a></li>
+</ul>
+</li>
+<li><a href="#_data_management">2.4. Data Management</a></li>
+<li><a href="#_tablet_service">2.5. Tablet Service</a></li>
+<li><a href="#_compactions">2.6. Compactions</a></li>
+<li><a href="#_splitting">2.7. Splitting</a></li>
+<li><a href="#_fault_tolerance">2.8. Fault-Tolerance</a></li>
+</ul>
+</li>
+<li><a href="#_accumulo_shell">3. Accumulo Shell</a></li>
+<li>
+<ul class="sectlevel2">
+<li><a href="#_basic_administration">3.1. Basic Administration</a></li>
+<li><a href="#_table_maintenance">3.2. Table Maintenance</a></li>
+<li><a href="#_user_administration">3.3. User Administration</a></li>
+</ul>
+</li>
+<li><a href="#_writing_accumulo_clients">4. Writing Accumulo Clients</a></li>
+<li>
+<ul class="sectlevel2">
+<li><a href="#_running_client_code">4.1. Running Client Code</a></li>
+<li><a href="#_connecting">4.2. Connecting</a></li>
+<li><a href="#_writing_data">4.3. Writing Data</a></li>
+<li>
+<ul class="sectlevel3">
+<li><a href="#_batchwriter">4.3.1. BatchWriter</a></li>
+<li><a href="#_conditionalwriter">4.3.2. ConditionalWriter</a></li>
+</ul>
+</li>
+<li><a href="#_reading_data">4.4. Reading Data</a></li>
+<li>
+<ul class="sectlevel3">
+<li><a href="#_scanner">4.4.1. Scanner</a></li>
+<li><a href="#_isolated_scanner">4.4.2. Isolated Scanner</a></li>
+<li><a href="#_batchscanner">4.4.3. BatchScanner</a></li>
+</ul>
+</li>
+<li><a href="#_proxy">4.5. Proxy</a></li>
+<li>
+<ul class="sectlevel3">
+<li><a href="#_prequisites">4.5.1. Prequisites</a></li>
+<li><a href="#_configuration">4.5.2. Configuration</a></li>
+<li><a href="#_running_the_proxy_server">4.5.3. Running the Proxy Server</a></li>
+<li><a href="#_creating_a_proxy_client">4.5.4. Creating a Proxy Client</a></li>
+<li><a href="#_using_a_proxy_client">4.5.5. Using a Proxy Client</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li><a href="#_development_clients">5. Development Clients</a></li>
+<li>
+<ul class="sectlevel2">
+<li><a href="#_mock_accumulo">5.1. Mock Accumulo</a></li>
+<li><a href="#_mini_accumulo_cluster">5.2. Mini Accumulo Cluster</a></li>
+</ul>
+</li>
+<li><a href="#_table_configuration">6. Table Configuration</a></li>
+<li>
+<ul class="sectlevel2">
+<li><a href="#_locality_groups">6.1. Locality Groups</a></li>
+<li>
+<ul class="sectlevel3">
+<li><a href="#_managing_locality_groups_via_the_shell">6.1.1. Managing Locality Groups via the Shell</a></li>
+<li><a href="#_managing_locality_groups_via_the_client_api">6.1.2. Managing Locality Groups via the Client API</a></li>
+</ul>
+</li>
+<li><a href="#_constraints">6.2. Constraints</a></li>
+<li><a href="#_bloom_filters">6.3. Bloom Filters</a></li>
+<li><a href="#_iterators">6.4. Iterators</a></li>
+<li>
+<ul class="sectlevel3">
+<li><a href="#_setting_iterators_via_the_shell">6.4.1. Setting Iterators via the Shell</a></li>
+<li><a href="#_setting_iterators_programmatically">6.4.2. Setting Iterators Programmatically</a></li>
+<li><a href="#_versioning_iterators_and_timestamps">6.4.3. Versioning Iterators and Timestamps</a></li>
+<li>
+<ul class="sectlevel4">
+<li><a href="#_logical_time">Logical Time</a></li>
+<li><a href="#_deletes">Deletes</a></li>
+</ul>
+</li>
+<li><a href="#_filters">6.4.4. Filters</a></li>
+<li><a href="#_combiners">6.4.5. Combiners</a></li>
+</ul>
+</li>
+<li><a href="#_block_cache">6.5. Block Cache</a></li>
+<li><a href="#_compaction">6.6. Compaction</a></li>
+<li><a href="#_pre_splitting_tables">6.7. Pre-splitting tables</a></li>
+<li><a href="#_merging_tablets">6.8. Merging tablets</a></li>
+<li><a href="#_delete_range">6.9. Delete Range</a></li>
+<li><a href="#_cloning_tables">6.10. Cloning Tables</a></li>
+<li><a href="#_exporting_tables">6.11. Exporting Tables</a></li>
+</ul>
+</li>
+<li><a href="#_table_design">7. Table Design</a></li>
+<li>
+<ul class="sectlevel2">
+<li><a href="#_basic_table">7.1. Basic Table</a></li>
+<li><a href="#_rowid_design">7.2. RowID Design</a></li>
+<li><a href="#_lexicoders">7.3. Lexicoders</a></li>
+<li><a href="#_indexing">7.4. Indexing</a></li>
+<li><a href="#_entity_attribute_and_graph_tables">7.5. Entity-Attribute and Graph Tables</a></li>
+<li><a href="#_document_partitioned_indexing">7.6. Document-Partitioned Indexing</a></li>
+</ul>
+</li>
+<li><a href="#_high_speed_ingest">8. High-Speed Ingest</a></li>
+<li>
+<ul class="sectlevel2">
+<li><a href="#_pre_splitting_new_tables">8.1. Pre-Splitting New Tables</a></li>
+<li><a href="#_multiple_ingester_clients">8.2. Multiple Ingester Clients</a></li>
+<li><a href="#_bulk_ingest">8.3. Bulk Ingest</a></li>
+<li><a href="#_logical_time_for_bulk_ingest">8.4. Logical Time for Bulk Ingest</a></li>
+<li><a href="#_mapreduce_ingest">8.5. MapReduce Ingest</a></li>
+</ul>
+</li>
+<li><a href="#_analytics">9. Analytics</a></li>
+<li>
+<ul class="sectlevel2">
+<li><a href="#_mapreduce">9.1. MapReduce</a></li>
+<li>
+<ul class="sectlevel3">
+<li><a href="#_mapper_and_reducer_classes">9.1.1. Mapper and Reducer classes</a></li>
+<li><a href="#_accumuloinputformat_options">9.1.2. AccumuloInputFormat options</a></li>
+<li><a href="#_accumulomultitableinputformat_options">9.1.3. AccumuloMultiTableInputFormat options</a></li>
+<li><a href="#_accumulooutputformat_options">9.1.4. AccumuloOutputFormat options</a></li>
+</ul>
+</li>
+<li><a href="#_combiners_2">9.2. Combiners</a></li>
+<li>
+<ul class="sectlevel3">
+<li><a href="#_feature_vectors">9.2.1. Feature Vectors</a></li>
+</ul>
+</li>
+<li><a href="#_statistical_modeling">9.3. Statistical Modeling</a></li>
+</ul>
+</li>
+<li><a href="#_security">10. Security</a></li>
+<li>
+<ul class="sectlevel2">
+<li><a href="#_security_label_expressions">10.1. Security Label Expressions</a></li>
+<li><a href="#_security_label_expression_syntax">10.2. Security Label Expression Syntax</a></li>
+<li><a href="#_authorization">10.3. Authorization</a></li>
+<li><a href="#_user_authorizations">10.4. User Authorizations</a></li>
+<li><a href="#_pluggable_security">10.5. Pluggable Security</a></li>
+<li><a href="#_secure_authorizations_handling">10.6. Secure Authorizations Handling</a></li>
+<li><a href="#_query_services_layer">10.7. Query Services Layer</a></li>
+</ul>
+</li>
+<li><a href="#_administration">11. Administration</a></li>
+<li>
+<ul class="sectlevel2">
+<li><a href="#_hardware">11.1. Hardware</a></li>
+<li><a href="#_network">11.2. Network</a></li>
+<li><a href="#_installation">11.3. Installation</a></li>
+<li><a href="#_dependencies">11.4. Dependencies</a></li>
+<li><a href="#_configuration_2">11.5. Configuration</a></li>
+<li>
+<ul class="sectlevel3">
+<li><a href="#_edit_conf_accumulo_env_sh">11.5.1. Edit conf/accumulo-env.sh</a></li>
+<li><a href="#_native_map">11.5.2. Native Map</a></li>
+<li><a href="#_cluster_specification">11.5.3. Cluster Specification</a></li>
+<li><a href="#_accumulo_settings">11.5.4. Accumulo Settings</a></li>
+<li><a href="#_deploy_configuration">11.5.5. Deploy Configuration</a></li>
+</ul>
+</li>
+<li><a href="#_initialization">11.6. Initialization</a></li>
+<li><a href="#_running">11.7. Running</a></li>
+<li>
+<ul class="sectlevel3">
+<li><a href="#_starting_accumulo">11.7.1. Starting Accumulo</a></li>
+<li><a href="#_stopping_accumulo">11.7.2. Stopping Accumulo</a></li>
+<li><a href="#_adding_a_node">11.7.3. Adding a Node</a></li>
+<li><a href="#_decomissioning_a_node">11.7.4. Decomissioning a Node</a></li>
+</ul>
+</li>
+<li><a href="#_monitoring">11.8. Monitoring</a></li>
+<li><a href="#_tracing">11.9. Tracing</a></li>
+<li>
+<ul class="sectlevel3">
+<li><a href="#_tracers">11.9.1. Tracers</a></li>
+<li><a href="#_instrumenting_a_client">11.9.2. Instrumenting a Client</a></li>
+<li><a href="#_viewing_collected_traces">11.9.3. Viewing Collected Traces</a></li>
+<li><a href="#_tracing_from_the_shell">11.9.4. Tracing from the Shell</a></li>
+</ul>
+</li>
+<li><a href="#_logging">11.10. Logging</a></li>
+<li><a href="#_recovery">11.11. Recovery</a></li>
+</ul>
+</li>
+<li><a href="#_multi_volume_installations">12. Multi-Volume Installations</a></li>
+<li><a href="#_troubleshooting">13. Troubleshooting</a></li>
+<li>
+<ul class="sectlevel2">
+<li><a href="#_logs">13.1. Logs</a></li>
+<li><a href="#_monitor_2">13.2. Monitor</a></li>
+<li><a href="#_hdfs">13.3. HDFS</a></li>
+<li><a href="#_zookeeper">13.4. Zookeeper</a></li>
+<li>
+<ul class="sectlevel3">
+<li><a href="#_keeping_the_tablet_server_lock">13.4.1. Keeping the tablet server lock</a></li>
+</ul>
+</li>
+<li><a href="#_tools">13.5. Tools</a></li>
+<li><a href="#metadata">13.6. System Metadata Tables</a></li>
+<li><a href="#_simple_system_recovery">13.7. Simple System Recovery</a></li>
+<li><a href="#_advanced_system_recovery">13.8. Advanced System Recovery</a></li>
+<li>
+<ul class="sectlevel3">
+<li><a href="#_hdfs_failure">13.8.1. HDFS Failure</a></li>
+<li><a href="#zookeeper_failure">13.8.2. ZooKeeper Failure</a></li>
+</ul>
+</li>
+<li><a href="#_file_naming_conventions">13.9. File Naming Conventions</a></li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<div id="content">
+<div id="preamble">
+<div class="sectionbody">
+<div class="imageblock">
+<div class="content">
+<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAWgAAABcCAYAAABDeS/aAAACzmlDQ1BJQ0MgUHJvZmlsZQAAeNqNk8trFFkUh7/q3KCQIAy0r14Ml1lIkCSUDzQiPtJJbKKxbcpEkyBIp/p2d5mb6ppb1XEUEcnGpc4we/GxcOEf4MKFK90oEXwhiHsVRRTcqLSL6nRX8HlWX/3Oub9zzi0udNrFINApCXN+ZJxcVk5OTcsVz0ixni4ydBXdMBgsFMYAikGg+SY+PsECeNj3/fxPo6sUunNgrYTU+5IKXej4DNQqk1PTIDSQPhkFEYhzQNrE+v9Aeibm60DajDtDIG4Bq9zARCDuAQNutViCTgH0VhI1Mwme03W3Oc8fQLfyJw4DGyB1VoUjTbYWSsXhA0A/WK9KangE6AXretnbNwr0AM/LZt9EzNZGLxodjzl1xNf5sSav82fyh5qeIoiyzpJ/OH94ZEk/UdxfADJgObO1Aw6wBlJ7T1fHj8Zs6dPVoXyTH5m6MwH8BalrgS6MxbOl7jCFRuHho/CROOTI0keAoUYZDw+NRw6Fj8LgETL73UpNIcGSHC/xeYnB42/qKCQOR8jmWehtOUj7qf3Gfmxftq/Zry9m6j3tzII57rmLF95RQGFavs1sc6bY36XGIBpNBcVca6cwMWliurJ/MdN2chcvvFPn8x8TW6pEpz5mUITMYvCYR6EJUQwmuv3o9hT67plb69q9Houbxx523z2z7K5q32ylWlst/27XJc8r8afYJEbFgNiBFHvEXrFbDIsBsVOMtU5M4ONxEoUhpIjG5xRy2f9bqiV+awCkc8pXxnOlk8vKgqmVPa0ST/QX6d+MyalpGdN0HW6EsHZrW/vgYAHWmsW2Fh2EXW+h40Fb68nA6ktwc5tbN/NNa8u6D5H6JwIYqgWnjFepRnKzbW+Xg0GglRz13f5eWdRaGq9SjUJpVKjMvCr1E5a3b
 I5durPQ+aLR+LABVvwHX/5tND5daTS+XIWO53BbfwXAvP1FP6ZP5AAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAIABJREFUeNrtfXtwW9W1/nf0tmzJliXLLynOww7k1cQJTgIkt72kw49CmAYYZiB9AqGltNBMp+1A/ygpwxTaS6eFkoZLL23TNu20HSCUhqYtpEkgdBLnRWznYZw4tiS/ZD381NFz//5Q9o7s6HEknRMb2N+MJrF9zj5L31577bXX2XstgRBCoAASiQS6urpQUVEBu92e9dpQKITu7m40NDSgtLRUVjkCgQAGBgbQ1NQEjUaT9VqXy4VYLIZ58+bJKgMhBF1dXTCZTKipqcl6rSiKuHDhAubMmYOysjJZ5QgGg+jr60NTUxO0Wm3Waz0eD8LhMObPny+7bnR1dcFYakRdbV3W6yKRCLq6uuBwOGA2m2WVYXR0FG63G42NjdDpdFmv7evrw+TkJBobG2Xn4sKFC9Dr9aivr896XTQaxQcffIC6ujpUVFTIKsP4+Bh6e12YP38+DAZD1msHBgYwNjaGxsZGCIIgqxzd3d3QaDRwOp1Zr4vFYvjggw9QU1MDi8UiqwwTExPo6enBvHnzUFJSkvXaoaEhBINBNDY2QqVSKWFGIXurBISR6HK54PP5pvx+uuECgMnJSfT09GBiYmLK74s1itQo9fb2IhKJ5Gx7aGgQ/f39kG/OSrYTj8fhdrsZF9nkDYVC6OnpwdjYmOxcjI6Oore3F+FwWAIXQ+jr60MikZBVP+LxODweD4a9wznlFUVRMS7GxsbQ09MDURRztj08PAyPx4N4PC67E9PX14ehoaGc8obDYfT29mJ0dFQBLsbR09ODUCiUs22fzwe3253ChTxjhRCC/v5+SVxEIhH09vYiGAzKzgU10JOTkxnbprbM5/Mxpy6TjZt1BppCEARoNBqo1CqJ16pln5EBQKVS5fScL1+rhl
 qtlpMF9j+NRiNplmW8KTAjUy6k8KxWy80FCuZCCb3Ip+18dChfSOV5tujFlVwIsnIh9fspxUU+tkitVimmn4obaDb7EKnXKizHDCMfGQghishM25Uy0yvJmdS2r0a/SfV6lJKFQFpfs75TUC8+quMp/7alX6c0FypwcHBwcMxKcAPNwcHBwQ00BwcHB0c+0HAKODg4OOTBtm3bsv5t27ZtuP3227Fq1aopf/vggw+wa9euK+7nBpqDg4NDAQNNDfJ0HDt2DM3NzVN2oRw6dChtezzEwcHBwXEV0dDQgLa2NvZzZ2cnbDYbN9AcHBwcM43Vq1fj0KFDbIve/v37sWbNmrTX8hAHBwcHx1WExWKBxWLBmTNnoFarYTQaUVVVxQ00BwcHx2zxov/1r39BEARs2LAh43U8xMHBwcFxlbFgwQLEYjFEo1EsWLAg43Xcg+bg4OCYAXzjG9/IeQ33oDk4ODhmKbiB5uDg4FAA6fZA5zrIwg00BwcHB/egOWYtJKdT/KinlSQA+XD0BQc30LIgNXW1IAiSkllLva5gmfKQA4JyMuQjq1JJ6mdDn3wY9WK2cDHTepGPLis1TmarXighkUruaZw6PIlEAtFoFNFo9JLwmcWn18ldUggA28oSi8dyXhuJRBCLxpjXVqz3Ru+fzoUkeWOxGeWCykBIQhEuaAkyueTNm4u4dJ4jkQii0Sgr/yUXF4Qk2HecFXoRk6YXynBBEIvFpOlFXDku4vF4zrFKbdmVXMi/tFLJbftTZ5Rk7Tsi6Z5UwuWYHWkbtF1BwnckhCAcDrN7i5UjtR1aB1AKZgsXoihCEFQzxoUgCIjFYohF5eciFo0luZDYpjJ6oYIoipKMHOWCOTxychGLIRaLSr5PyTEipcKNAGW5iEajEtskU3RZXq8+2ZaGECKr50pnE1pYsr7ewQb89C9Af7ZarbBYLOjt7YXVas2rNlk2OSKRCPr6+lBdXc0qZKcjkcrW0NCAw4cPo6+
 vD3a7HYSQouRIJBIQBAFutxuRSAQOR24uKq2VsNlscLlcsNvtsnERjUbh8Xhgt1exCtnZuJgzZw48Hg88Hg9qampk46Kvrw+iKLLKzdm4qKioQFVVFVwuF2pqamSpQ5dIJL1Wt9sNm83GKmTn4qK3txcejwd1dXWycTEwMIDJyUl84hOfyMmF2WxGdXU13G436urqoNVqZeEiHo/D5XLBYqlEZWVlTi6cTicuXrwIl8sFp9MpGxdDQ0MYGxvDokWLcnJRVlaG2tpaeDweOBwO6HQ6qFRCUY5mKhcVFRWwWq05uXA4nLhwoRsulwtzGuYABLLWSVSr1RA6OzuJ2+2GRqMperlCPeFwOIxINIKlS5diwfwFOT01QRAQDAZx5MgRRCIRGAwG6HS6opZNkUgYoZAIs9mMlpYWlJaWpu306ejo6EBXVxf0ej30en3BvEzhIhLB4sWL0dTUJImLkZERtLa2IhQKwWAwQK/XF9Uv4XAYoVAIJpMJLS0tKCsrk8TF2bNnce7cOVm4iMWiEMUkF9deey2uueYaSVyMjY2htbUVExMTsnEhiiKMRiNaWlpgNpslcdHZ2YkzZ85Ap9PBYDAUyUUM4XAY4XAYTU1NWLx4sSQuxsfHcfToUYyOjqKkpEQ2LgwGA1paWlBRUSGJi66uLnR0dECn00Gv10Or1RbNhSiKaGxsxJIlS7I+n4BAgIDJyUm0Hm3FSHAEJSUl0Ol0RXmwkUgEoihCq9Vi9erVsFgskrjo7u5GW1sbtFptUVyk48XhcEDo7+8nPt8wVCp1cWXDSbLhSCTCZlqLxZJXE6IowuVyYWxsDCUlJZdjVEJ+MtDlucViQX19fd7G3uv1wuPxQK1WXx6IQv5c0CWYw+Fg3kk+g8flcrHBWCwXFRUVzNvIB8PDw3C73bJwQQiBw+Fg3kk+g8flcmFkZAQGg4F9r0K5MJvNcDqdeRs4v98Pl8sFQRAuD8QCuIjFYojH43A4HBnTTGYO
 f0XgcrkRDAaL4gIAm7SdTicMBkNecgQCAbhcLgCQhYu6ujrY7fY8uYjC7XYjEAjIwkVZWRmcTicbb1IRDAbR29sLQgh0Ol3+XKQJ4cQTcdisNghkNuylUhwEim3P4ODg4GNaISi2D7oQuy/3XEEIubQqEGZcjsLukXF3Dcis6ZPC+5FzQSAvF/jQciEU3I+z3W5N+ZYfDw+ag4ODg3vQHBwcHBzcQHNwcHB8tDHr8kHLGXEpZtuNonEliXLNlAzTnyvnBvxC2yZQPm/GdFmUjv7lw2uqLHIfc5batpJ68VGwGYroCEliRpWPIpFIyLrRGwASJAGVoMq7s5XsKCn7K5XgolDZpMirZNtXiwv6HLm+r5TnScn7kF6eq7uLQUm9UHIcXS0bpJQNVfQlYT4EUkNKCIHX68WJEyfw7rvvQqfT5d5PLSSf5ff5QQjBunXr0NzczPbbSiU9Vd6JiQm43W68/fbb7NSZXq8v6tBKU1Mjbr75/7F9o5m4SZXX6/Xi/fdP4uDBd6DRaPLeT50qQyKRgFqtxs0334zGxka26X/6949EItizZw+CwSA2bdokedO+FG4DgQB2794Ni8WCW2+9le0blcLF8PAwTp06hYMHD0IQhLz3U1OoVCqMj48jEAigsbERn/rUp+B0Oq+QJRAMoPNcJ/bt24dQKASbzQa1Wp23DtBjzMPDw6iprcGnN3wac+fOhdFozDlO6N+6u7uxZ88eLF++HOvXr2erCkEGI33s2DG89957uOmmm7BkyZKMMiQSCezduxdutxubNm1ip21nwkin6oXf70dHRwf279+PWCwGm83GJtpsfRIIBCCKIlpaWrB27VrY7Xa2lzqfVa6i318URRIIBkhwJEiCweI+IyMjxOfzEb/fT/JBIpEghBDidrvJU089RSwWC91jVvCnqamJbN++nXi93inPyCVDIpEgb731Ftm4cWPRMqT77NixQ5Ic/f395JlnniHV1dWyy7B48WJy/
 vz5jLz8z//8D7v2q1/9KpmcnJTEYa7vNDExQR544AHW9k9/+tPUqzLeNzg4SJ599lnidDoV6RMAZMuWLeTIkSOEEEJGR0fJyy+/TJYvX67Y8+644w6yb98+Eo/HM3JLf3fx4kWybNkydu8//vGPovoj9d7//Oc/rF1jSQlpb2/P2PZLL73Err3nnntIMBgsWo5iZPf7/WT79u1k4cKFRfdHWVkZeeqpp0hPT09BMvn9fuLz+cjIyEjRdjQ4EiSBYICIokiEjo4O0tPTI+tRbzqLLVu2DCaTSdJM2NHRgXvuuQft7e0Akvk56PFsmt8jF9RqNfN+fT4fAOC2227Djh07WN6AbGfr4/E4XnjhBWzduhUAYDQaYbFYoFarkUgkiuJHq9Xi4sWLWLt2Ld544w3YbLYr5KFcnDt3Dl/84hdx5MiRgrnI1D86nQ4XLlzAyy+/jPvvv5+tXOizPR4PPv3pT+Ps2bOwWq3w+Xw4fvw4mpubC17+0fsOHz6MtWvXoqqqCl6vFytXrsSbb76J6urqK0JR9J7z589jy5Yt2L9/PwCgsrKSHVUvlguVSoVoNIpAMAAxJAIAdu7ciSNHjmD79u0AgPLycpjNZuZBFqoD9HnxeBzBYBATExMAgJ///Od4+OGH04ZWKCc7d+7El7/8ZcybNw/d3d342te+hueff56N2WI8uO9973t4+umn0djYiK6uLjz33HN49NFHWbv0X5/Ph02bNuHdd99FTU0NBgYGcPDgQaxfv/6qhuOoPG6PG4984xHs3r0bAGCxWFBWVpZXP6lUKgiCgFAoBK/XCwBobGzEq6++imXLlkkKj46Pj6OtrQ1erxcajUbWo94NDQ3QOJ1OVFRUyOam03R9vb29aG1txbp165JLxzTLMdqxLpcLmzdvRnt7OxwOB0RRxPDwMDOyhaCqqgp6vR579uzBQw89hF27dmXMNUB//vWvf42tW7eypazP54PH45FVwW655Za0IRvKRX
 9/P770pS/hyJEjcDqdCIVCRXORDitXrrwUHcocV6SpH+WKgtF2aLvsaO60kCrlwuv1MuPsdDohiiK8Xi/8fr+sXJhMJpRXl2NwcBBf+tKXAAA2mw2CIMDr9WJkZETm4CJQXV2NeDyORx55BEajEffff3/WCQ4Ay5wmZ1SStiWKYta2U39P5ShmgizGOI+OjuLRRx7F7t27p+hFIBAouG2bzQaDwYCuri7cfffd2Lt3L+bOnZt28qG2LBqNorW1FSqVCsuWLYNWq2VOohzf1WQyQWMymXJ6uYUayH379sHj8WDevHlXvNOgWbASiQRefvn/cOrUKTgcDgQCAUxMTOD6669HQ0MD9Ho9qqqqJMWwhwaHEIvFcO7cOZw4cQImkwkOhwNvvvkmXnvtNdx3330ZX3R0dHTgwQcfZL8fHBwEANx5553QarWw2WwwGo1IkETecT8a1120aBHuvfdeFseksqRmBNu5cycOHz4Mp9OJQCCA8fFxrF69GvPnz4dOp0NVVVXBkykhBGq1GnfccQdWrFiR8WUo/R0dgEq8iMnc7mUudu3axYwz5WLVqlVoamqCVqtlMcN8OVCpVBgdHUUgEEAoFMIbb7yBsbExmEymKZPT6OgoGhsbsWrVKqjVatjt9rw9JPq8yclJeL1exONxvPLKKxgcHGR6/fjjj2P9+vVoamrK6kBk+rlYb01q26n6qoReSJX1lVdewWuvvQaHw4FgMIixsTEsXboUS5YsgUajQXV1tSSPfnh4GKIowuPx4J133oHRaITD4cC5c+fwm9/8Bt///vfTvzS+ZMvcbjfGxsZw0003sWyZSsxKJJFIyPohhJBQKET27t1LTp48mTZmQ2NvbrebACAGg4FYrVYCgDz00ENkeHiYEEJILBaT/NxYLMbavP322wkAFsO98cYbyfj4+BUxMyrHc889RwAQh8PB4lJ79uzJW4ZcvKSL2aXGWisrKwkAYrPZCADy5S9/mQwODsomRyZ
 QHlwuF1m0aBEBQEpLSwkAcuzYsSnX5At6H413ms1mAoCsWrWK9Pf3T7mGyujz+UhjYyMBQKqqqggAcu+995K+vr7iuSAJEo/HSSwWI/F4nLz88v8RAKSiooLodDpSUVFBAJD169eTs2fPysY91c833niDACBarZbp24svvngFx/FE8v+/+tWvCABSV1dHAJCvfe1rJBqNyhL/feyxx6bo/c9+9rMr3skQQojX6yXr169jPAEgBw4cKEovCn2PsX79+ilj+7bbbiMXL14s2F4Eg0Hy8MMPEwDEarUSo9FIABCXy5X1+508eZLs3buXhEIhopQdVbHtHDJ9qHOpUqug1+tZlqzp+QPojHTq1CkW6/P5fNiwYQOefvpp9oZerVZLfjZdXtTX1+OFF17AnDlzMDg4CJ1Oh0OHDuHEiRMZvamjR49OkWvXrl249dZb85YhKzc53vq+//778Pv9sNlsGB4exg033IAf//jHLMuXHHIotSVIbrS1nUJXVxcqKirg9XqxYsUK/OQnP0FtbW3xXCAZD6a5tu+//wE8+eSTCAaDqLRWIhgMAgC2b9/O0qLKwT3Vz40bN+L3v//9lMTw77zzDkZHR3PuPphZzPwe4Y6ODvZuZnBwELW1tXjuuefQ0NBQsL0oLy/Hj370I9xyyy3w+XwwlyfzpR8+fDjtSoHaMpr+lnnrgsy2FAqeJJQaBjhxMmk0S4zJFH/Nzc0sVkw/klcDKclTqqurk6EVgBk4aqCnl7TyeDz43e9+h/LychYfXbhwIYupp5tgClir5FwWHjhwgL2cBIAFCxagqqqqIC7yWdbORrzzzrsAwIoLLGhcgJqaGtZvRZdautQftJzWnDlzki9zNVr20okWFUgkEpeuJ0U/j+rT3LlzASRTZprNZuzatQtDQ0Mfmgn0aoNycvjwYYTDYVb8oqmpCQ5H/WW9yKOfUsdVWVkZM/J6XTIN7aFDhySNFyXH04wf9W6YkyQlGAhOMYyp
 s1Ehk0IsFrsir6tGo8lKcOJSjbh0cdLi95vmvn/6C4bU/dJKF8qcbaBc0IGp1+mnVP4putTSpf6gb+lp7m42eYNMKamUvF4o+nmpukb1VM7yZh8XvaAoKSlBLBafxnNhBZq1Wu0UHWA/z2Dp9Rk30J/d9Fl873vfg16vxze/+U3cddddSVISyW1UhXyA5Baa6upqNgjoUiYdDAYDGhoaMDY6xrY/US/2aoIeQqHfoZgXgh920J0ulAu73T5lKSk3aCEDOjgrLZWKbh0rNZYCSCaKn5ycxLXXXlt0hZSPA+gYpmOalkKTA7R4AtU5dhBqBhc0M5aLg26xKistw5NPPoktW7agrq4Oer1eln2VJSUlrOMKzXkw05iJo96zFVd7oqJ7ZHlfz2581HnTzPSgo1u/aLyYkj48PAyXywW1Wp1XOR7aniiKbF8kXRpnHnCzM+bHY5EfH+55X3PeZp2BpkYz1WM+0noE//rnv9Da2orXX389uaypKIcAIe/OCIfD0Gq1LJaYeWM9j/1xcJXg4AY67QyoUqkQDofx/PPP47vf/S77m81mQywWY9ueCoFarWbxxWLa4eDg4PhYGejU7Gk//OEP8eSTT8JoNLKXZfRIKQcHBwc30DOEv/3tb3jyySdRW1uLcDgMt9s95e/l5eUpeRtyrT0vJ3kJh8OIx+Nsb3NFRQXvcQ4ODm6gpXrPgUAAzz77LIDkyzy/34+6ujq8+OKLaGhoACEEBoMhr/ys9CXhE088gVdffZXtZ8z8xpe/oOHgkDK2OD5mHnRPTw/+85//wGq1YmhoCBaLBX/+859x4403Ft023Us7/dDDlZidb4Q+6nug+cGMWdgHwoervz7qOjTjBvqf//wngOTBEJ/PhzvuuIMZ53g8XlC2MrVajVAoxDaz5zPzz6YOv9rpHKdzoDQXM/X9uCebpS0iXT9mg0f9UdehGdvlTTv5woULU8IPqcd5aTKbfD+042jKUHpgJVNeX1EU0
 dPTA5PJhNLS5AmvycnJq84JzXOcWu7qag+CcDiM06dPo6SkhB2Vp6cri8X4xDgAsH3tx48fZ+8HONJZz+Q/dPcRXQkODg5OGSfFGGeaqD61fFQ6Ax6NRnHu3DkAl09djo+PX3VK6BimY3pgYIA5YsVieHh4ChcsB/sM+myqmda+6XlUU4/cFpIsiS0NNBqEQqEpf8/UkfQZKpWKdTztpNTcDLKMtiyYPuhotjOaBOpqGGv6DLVazQxCoVzQ6xi/l/JeqNVqZvx5XBN564UoilNyUuSbn5p+aAWkVIeJ/pzuPjpR02dP96RnYoyEQqEpR73zkWG6jcnEhTCDFloxA52LKKpT/33TfzOlA4Dz588jGAwWlCBIwOXrBwcH0d3dDQAsS1hzc3PaJXx9fT2+8IUvYGRkhE0QnZ2dU5VRpmRJ2QbTJz/5ySne+/nz5+H1etn3kivkkE4G2nZtbS0efPBBjI+PF80FvY7eR/tDq9UiFArhgS0PsHwHPB6deZV5ww03TPHozp8/j76+PnZNXmMkZVwFg0H09PQwQwcA119/fVoZrFYrHn744SneK/Wor8YYoXKsWbMGer2e7fT64IMP2P8vJ7XKn4vx8XHGRTiS3N5LQ625JkAlnQzV9Jmk2A+1y4l4AuFwmBnedKWVAKB5RTNbulitVuzbtw+PPf74lGPaUp9NZ9e+vj488sgj6O3tRXV1NSKRCG688UZmoFM7KJFIwGw247rrrpsi1+c+9zn8/e9/nyoDiuQG08o8TcPy5ctRWVmJ4eFh2Gw2vPfee/jud7/Lll75cJFLhnTKmkgkUFpaipaWFhYm0uv1uP/++/HXv/41Py4wtU92796NLVu2oKSkhMUN/2v9f6GsrAyJRIIb6CxYunQpmpubMTk5Cbvdjs7OTmzdupUZ6ULGSCAQwLe//W0cOHAANpsNQ0NDMJvNWL16dVq90Ov1TC/i8ThMJhO+9a1v4Y9//CNrl6ZlVXKMLFmyhM
 lYXV2N/v5+PProo3C5XAVzMTIygsceewx79+6F1WrF6MgomwzSGWBqy0RRRDgcvhwHJzLbUlx6SajE4IjFYgiHwyyf7/RE9fT/NTU1eOKJJ/CDH/wANpsNpaWl+N8XX0R7WxucTif0ej1sVbacM2MikcDQULLkVWdnJ44fPw6TycS22D3wwAMsvpxOjg0bNgBIlrGhCfNvvfVW3HXXXdBoNJdLXhVgTKaXvDKbzWkT99vtdnznO9/B448/jpKSEpSVleE3v/kNzp49i7lz58pS8kqlUuHOO+/E2rVrM3opn/zkJ1FVVQW3280KvH72s5/FnXfeybgoLS3NyAV9zsTEBIaHhxGLxfDqq68CSNb/c7vdWLBgAdavX591wsjgYF0d71Xphwm5vy/9ndlsxoMPPoiHH34YOp0OJpMJr732Gnp6erBw4UJoNJqp2f6ywOv1IhwOw+Vy4dChQzAajeydwOOPP84yQKaT4/rrr8eyZcvQ1taG6upqjI2NYfPmzfjTn/4EvV6PyspKmEymgsdINBrFnDlz8LnPfQ52u33KGKH/Go1G3HfffXjnnXeg1WphMpnw5ptvYuPGjVi8eDHUanVeJa9CoRD6+/tx8OBB9t7F5/PhiSeeQF1dXdq+oXKZzWb09PQomy52dHSUeDwe0tfXJ8vH5XKRCxcukP3795O3336bhMPhZDkYkshYCqm3t5d84hOfYKV3aLmnYj5VVVWsjM+tt95KAoFAzhJBv/zlL1m5KVpOR+7Ptm3bWKmddKW3+vr6yJo1awgA4nQ6ZeEi3efEiRNZy2/99re/JQBIZWUlqa6uJjqdrqjnabVaUlNTw0p6/f73v8/6/B07dhAApL6+ngAgW7duvVwWiyRkK6VE29y5c+eU5y1cuJD4fD5Zykqle96xY8cIAGIymQgAsmjRorQlluiz/X4/ueWWW5he0DJgxXxsNhsbIytWrMha4omW33rttddYObSamhpWHkrOz1e+8pU
 pZaSmczEyMkLuuOOOJBcOebiwWq2Mi2uuuYZ0d3dn5ILqXyQSIfv27SP79+8nFy5cIC6XSzY76vF4yOjoKNG4XC709PSwEu7Fxsyi0ShisRhsNhtWrlzJ4pjpPBJaNNbpdOIPf/gD7rnnHrS3twMAbFYbjKVGEEIkb6WhsbCJiQn2dvq2227Djh07Mlb0Tp0R77vvPkxMTGDr1q1strZYLFCr1ZJLuWeCVqvFxYsXsXfvXnz9619nuWenc1FbW4udO3fii1/8IivtY7VaUVpamhcXmfpHp9PhwoULOH78OFasWJG22joAfP7zn8f4+DiLO5aUlKCurg4ajUYyF4KQLC0Vj8cRDAYxMDAAAHjppZewefPmS9dkiL1d8oCod6d0wQLqBdFVls/nUzS2OD1JfCavUxAEJEgCFosFL774Ih566CHs3bsXQHKfPy34nIgnJL0go2lUQ6EQGyPLly/HH//4RzgcDiRI+lS/9AXvpk2b8Lvf/Q5f+MIXMDExAYPBgNraWmi12qLHiEajQSAQwOuvv47HHnsM8+bNu8KLJoTAbDbj+Z8/D0IIdu/ezbgoKytjIRkpcqTjorGxEX/5y1+SFb0zcEHHi1arRUtLC9ra2tDW1gaNRpN3UeFMuhGLxZIVXkRRJIFggARHgiQYLO4zMjJCfD4f8fv9BRWEdLvd5KmnniIWi6XoGbGpqYls376deL1eSV5QapHMt956i2zcuFERz3XHjh2S5Ojv7yfPPPOMIp784sWLyfnz5zPykvq7f//738xbKfZz9913kwMHDlxRkDTds7u6usjcuXPZvfv27ZPdm01tr7e3l6xatYo97/nnn7/CY5LzeaIoskKlAMjTTz99mReSmZfh4WHys5/9jMyfP18WD/qZZ54hbrc7L9kJIeS9994jmzdvVmyVOb2IcDo5/H4/2b59O1m4cGHRzywrKyNPPfUU6enpKahf/X4/8fl8ZGRkpGg7GhwJkkAwQERRJAJR
 0E3IViD1ihgySUAlqNjezBMnTuDdd9+FTqdjJwKzzTiEEOb1rFu3Ds3NzWyHgNQCAKnyTkx3Ws2tAAAJXUlEQVRMwO124+2332Zxab1eX9DsSFcWTU1NuPnmm6eUssoUT0/dC/3+++/j4MGD0Gg0LJFUITIkEgmo1WrcfPPNaGxszOg9T+dicnISHo8H+/btQ09PD6xWKwwGQ1YuBJUAMSTC5/Ohvr4eGzZsQENDw5Ttdbl0o6urC3/fuxerVq5kOxmUANW9np4e/OIXv8CSJUvw+c9/nhVwldtzp22Ojo5g9+7XYTQasXHjRsapFL3w+Xxob2/HgQMHkCAJWCutEFRC9p1qAhDwBxCJRLBmzRqsXr2a1euU+j1TrxNFEX19fThw4AA6OztRWVkJo9FY1BhxOBz4zGc+w1aMUrjw+/3o6OjA/v37EY/HYLXachbfpWkmRFFES0sL1q5dC7vdzmxJPqkllFzZCZcmAMWWcHkNFBkqqWQafPluQVOSdCmdqgQXhchJQPLiT0ofz8b6iun6RMnBV+jz8tVnpcad0vophQsl+qfQ76WUDVXUgy60Y2ZyklCS8Hzlmg0yzGSfpD73ahj0K7ZTKfzMwp9HIKdqFLMr6OOsn1cDs85Ac3BwcHAkwStVcnBwcHADzcHBwcExKwx0IZETuaMt9CXXbJCjsHtkTCuJDzcXRG4uyIeUC8jLBT7sXMyasaoMPhYx6GzbyT5+kFI2jIOD6/FsgGZgYADDvmGoVWpZTsBEIhEIggCn05lz//J0iKIIl8uFsbGxS/tl839bTfcxiqIIi8UCh8PBTmtJhdfrhcfjgVqtLviEZWoqR4fDkff+ZZovYXR0tODUnKlcVFRUwOFwsJOdUuHz+eByuWThghACh8PB9qdLRSQSgcvlwsjICCt/VgwXZrOZ5XnJB36/Hy6XC4IgFHxijJ4Si8fjcDgcV5wozYVoNAqXy4VgMFgUF0Ayg53JZILT6WQnNqUiE
 AiwBEVycFFXV8f2ZEu8G9FoFG63G4FAoAgukm2FQiGUlZXB6XSy8SYVwWAQvb29IIRAp9PJYkfj8ThsNhuEzs5O4na7ZT3qHQ6HEY1GsXTpUsyfPz/n8oCmPjzSegSRcAR6vT7vwTO9zXAkDDEkory8HNddd13Oje8UHR0d6OrqYjIUa5TC4TAikQgWL16MpqYmSVyMjIygtbUVoVAIBoOhKC6osaeDsaWlBWVlZZK4OHv2LM6dOycPF7EowmKSi2uvvRbXXHONJC7GxsbQ2trKjhXLwYUoijAajWhpacmYuGo6Ojs7cfbsWWi1WugNemg1xRmlcDiMcDiMhQsXYtGiRZK4GB8fx9GjR9mkLRcXBoMBLS0tWdMhpKLrfBdOd5xOcqHXF22gKRcLFizAkiVLsj6froYnJydx9OhRNlHp9fqitsiFI2GExTB0Oh1aWlpgsVgkcdHd3Y22traiuUjHi8PhgKaxsRHz5s2TzSWnuSJcLhfa29tRWVmZtePpCbdTp06hrLQMzeuaWSWVYuWIRCI4cuQITp8+jZaWloxkU9kGBgbQ1dWF6667jmXTKkYOeijD7Xbj1KlTsFqtqKyszMoFAUF7ezsMBgNuvPFG2biIRqNobW1Fe0c71q5Zm5OLoaEhnDt3DitXrkRNTY1sXPT19eHkyZOwWq2w2WxZuQCA9vZ2qNVqbNiwARqNRhYuYrEYjh49ivb2dtxwww05ufD5fDhz5gxWrFiBuro62bgYGBjA8ePHUVlZierq6pxcnD59GoQQbNiwAVqtVhYu4vE4jh07hra2Nqxbty4nF4FAAKc7TmPp0qVwOp2ycTE0NISjR4/CarWitrY2MxeXwhpnzpxBNBrFTTfdBJ1OJxsXJ0+exKlTp7B+/fqMbaY6Uu3t7Vi8eDHmNMwBCGQ9vKNWq6ERBGFKRQK54HA4cPbsWXg8HlRUVGRNUuTz+RAIBLBq1aq8lxfZoNPpUFdXh66uLoyPj2f0HO
 nPtOxVXV2drBvWKRdutxuVlZVZufD7/BgeHsaKFStk56K+vh5nz57F6OhoRs+R/tzb2wuj0Yj6+npZlY7K4HK5kku4LFwEg0F4vV4sXboURqNRVi4cDgfa29sRDAYzOhCpXBgMBtTX18s6VlK5qK6uzsrF6OgoBgcHce2117KETnLB6XTi/fffh9/vh9VqzcqFy+WCVquF0+nMO3SYDXV1dTCZTHC5elFbW5uVi/HxcfT396OxsfGKikxycHHs2DH4fD5UVVVl5cLtdkOlUsHpdEKn1UEJqC4H3GUK3ae491KXYIQQaLVapvxyvLekbVxuV1r2tdR8G8XKkdpOPstRpbkgErlI5oZIzBgXhBBoNBpotPJzodFq8grZKKMXCRY7lcoFNYqycqHR5DXxKDtGJHABZbnIJ0yRqsvy7rdISdgv59tQqmsqlQparfYyiVl2UtDrUuusyQVKuFqdWwFpgF+uqtb0/ulcSJFXiVUNa1sCF1QG4VLeB7m5kPKyMh958+ZCLZ1nnU43JaQgFxeCoJpiaGZcLzTS9EIZLpIreUl6oVaOC7VanXOsUlt2JRdySiKketBy2/3LM4qUWUXpgqj5yKGkDPnIqoQs+bStZJ98GPVitnAx03oxG8bJbNULJSTiJwk/jpA408+GxDGKpnIUhJnfSsu3pHNwA83BwcHBDTQHBwcHBzfQHBwcHNxAc3BwcHBwA83BwcHBwQ00BwcHBzfQHBwcHBzcQHNwcHBwA83BwcHBwQ00BwcHBzfQHBwcHBzcQHNwcHBwcAPNwcHBwQ00BwcHB8eHx0Dnlc5RUFiOGUY+MgiCoIjMtF1BAtmKp/mcJf0mYGZlESCtr1nfKagXH9XxVECnSJRBeS4UM9CEEMRiMSTiCUnXxmNxRZJw0yKhUq+Nx+NyssD+F4vFWEFdSbxJuLZQLqTwHI/HZeYCBXOhVJJ6qW3no0P5QirPs0UvruSCyMqF1O+nFBf52KJ4PKGYflK
 ot23btk0Jj0QQBMTjcVRWVqK0tDStp5Ja7oYQgqqqKuh0OllmpdQ21Go17HY7VCpV1rbj8ThKS0thsVhknYppGfWKioqMRS6nc2G322XnglZgttvtUKvVWdtOJBIwGo2orKyU1yNQqRCLxVBeXg6TyZSTi0QigaqqKuj1etn1QioX8XgcJSUlsNlssnuBlAuz2ZyTi3g8DpvNJrmOoVQuqAdtt9svlTnLrhcGgyGl4K8gKxcmkwnl5eWSuSgpKZFdLwDAbrdDq9VmrSxO6yhSLgQFwgD/H5IJiUhnfDtTAAAAAElFTkSuQmCC" alt="accumulo logo">
+</div>
+</div>
+<div class="paragraph">
+<p>Copyright © 2011-2014 The Apache Software Foundation, Licensed under the Apache
+License, Version 2.0.  Apache Accumulo, Accumulo, Apache, and the Apache
+Accumulo project logo are trademarks of the Apache Software Foundation.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_introduction">1. Introduction</h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Apache Accumulo is a highly scalable structured store based on Google&#8217;s BigTable.
+Accumulo is written in Java and operates over the Hadoop Distributed File System
+(HDFS), which is part of the popular Apache Hadoop project. Accumulo supports
+efficient storage and retrieval of structured data, including queries for ranges, and
+provides support for using Accumulo tables as input and output for MapReduce
+jobs.</p>
+</div>
+<div class="paragraph">
+<p>Accumulo features automatic load-balancing and partitioning, data compression
+and fine-grained security labels.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_accumulo_design">2. Accumulo Design</h2>
+<div class="sectionbody">
+<div class="sect2">
+<h3 id="_data_model">2.1. Data Model</h3>
+<div class="paragraph">
+<p>Accumulo provides a richer data model than simple key-value stores, but is not a
+fully relational database. Data is represented as key-value pairs, where the key and
+value are comprised of the following elements:</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width:75%; ">
+<colgroup>
+<col style="width:16%;">
+<col style="width:16%;">
+<col style="width:16%;">
+<col style="width:16%;">
+<col style="width:16%;">
+<col style="width:16%;"> 
+</colgroup>
+<tbody>
+<tr>
+<td class="tableblock halign-center valign-top" colspan="5"><p class="tableblock">Key</p></td>
+<td class="tableblock halign-center valign-middle" rowspan="3"><p class="tableblock">Value</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-center valign-middle" rowspan="2"><p class="tableblock">Row ID</p></td>
+<td class="tableblock halign-center valign-top" colspan="3"><p class="tableblock">Column</p></td>
+<td class="tableblock halign-center valign-middle" rowspan="2"><p class="tableblock">Timestamp</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-center valign-top"><p class="tableblock">Family</p></td>
+<td class="tableblock halign-center valign-top"><p class="tableblock">Qualifier</p></td>
+<td class="tableblock halign-center valign-top"><p class="tableblock">Visibility</p></td>
+</tr>
+</tbody>
+</table>
+
+<div class="paragraph">
+<p>All elements of the Key and the Value are represented as byte arrays except for
+Timestamp, which is a Long. Accumulo sorts keys by element and lexicographically
+in ascending order. Timestamps are sorted in descending order so that later
+versions of the same Key appear first in a sequential scan. Tables consist of a set of
+sorted key-value pairs.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_architecture">2.2. Architecture</h3>
+<div class="paragraph">
+<p>Accumulo is a distributed data storage and retrieval system and as such consists of
+several architectural components, some of which run on many individual servers.
+Much of the work Accumulo does involves maintaining certain properties of the
+data, such as organization, availability, and integrity, across many commodity-class
+machines.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_components">2.3. Components</h3>
+<div class="paragraph">
+<p>An instance of Accumulo includes many TabletServers, one Garbage Collector process,
+one Master server and many Clients.</p>
+</div>
+<div class="sect3">
+<h4 id="_tablet_server">2.3.1. Tablet Server</h4>
+<div class="paragraph">
+<p>The TabletServer manages some subset of all the tablets (partitions of tables). This includes receiving writes from clients, persisting writes to a
+write-ahead log, sorting new key-value pairs in memory, periodically
+flushing sorted key-value pairs to new files in HDFS, and responding
+to reads from clients, forming a merge-sorted view of all keys and
+values from all the files it has created and the sorted in-memory
+store.</p>
+</div>
+<div class="paragraph">
+<p>TabletServers also perform recovery of a tablet
+that was previously on a server that failed, reapplying any writes
+found in the write-ahead log to the tablet.</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_garbage_collector">2.3.2. Garbage Collector</h4>
+<div class="paragraph">
+<p>Accumulo processes will share files stored in HDFS. Periodically, the Garbage
+Collector will identify files that are no longer needed by any process, and
+delete them. Multiple garbage collectors can be run to provide hot-standby support.
+They will perform leader election among themselves to choose a single active instance.</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_master">2.3.3. Master</h4>
+<div class="paragraph">
+<p>The Accumulo Master is responsible for detecting and responding to TabletServer
+failure. It tries to balance the load across TabletServer by assigning tablets carefully
+and instructing TabletServers to unload tablets when necessary. The Master ensures all
+tablets are assigned to one TabletServer each, and handles table creation, alteration,
+and deletion requests from clients. The Master also coordinates startup, graceful
+shutdown and recovery of changes in write-ahead logs when Tablet servers fail.</p>
+</div>
+<div class="paragraph">
+<p>Multiple masters may be run. The masters will choose among themselves a single master,
+and the others will become backups if the master should fail.</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_tracer">2.3.4. Tracer</h4>
+<div class="paragraph">
+<p>The Accumulo Tracer process supports the distributed timing API provided by Accumulo.
+One to many of these processes can be run on a cluster which will write the timing
+information to a given Accumulo table for future reference. Seeing the section on
+Tracing for more information on this support.</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_monitor">2.3.5. Monitor</h4>
+<div class="paragraph">
+<p>The Accumulo Monitor is a web application that provides a wealth of information about
+the state of an instance. The Monitor shows graphs and tables which contain information
+about read/write rates, cache hit/miss rates, and Accumulo table information such as scan
+rate and active/queued compactions. Additionally, the Monitor should always be the first
+point of entry when attempting to debug an Accumulo problem as it will show high-level problems
+in addition to aggregated errors from all nodes in the cluster. See the section on Monitoring
+for more information.</p>
+</div>
+<div class="paragraph">
+<p>Multiple Monitors can be run to provide hot-standby support in the face of failure. Due to the
+forwarding of logs from remote hosts to the Monitor, only one Monitor process should be active
+at one time. Leader election will be performed internally to choose the active Monitor.</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_client">2.3.6. Client</h4>
+<div class="paragraph">
+<p>Accumulo includes a client library that is linked to every application. The client
+library contains logic for finding servers managing a particular tablet, and
+communicating with TabletServers to write and retrieve key-value pairs.</p>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_data_management">2.4. Data Management</h3>
+<div class="paragraph">
+<p>Accumulo stores data in tables, which are partitioned into tablets. Tablets are
+partitioned on row boundaries so that all of the columns and values for a particular
+row are found together within the same tablet. The Master assigns Tablets to one
+TabletServer at a time. This enables row-level transactions to take place without
+using distributed locking or some other complicated synchronization mechanism. As
+clients insert and query data, and as machines are added and removed from the
+cluster, the Master migrates tablets to ensure they remain available and that the
+ingest and query load is balanced across the cluster.</p>
+</div>
+<div class="imageblock">
+<div class="content">

[... 4435 lines stripped ...]
Propchange: accumulo/site/trunk/content/1.6/accumulo_user_manual.html
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: accumulo/site/trunk/templates/nav.html
URL: http://svn.apache.org/viewvc/accumulo/site/trunk/templates/nav.html?rev=1593070&r1=1593069&r2=1593070&view=diff
==============================================================================
--- accumulo/site/trunk/templates/nav.html (original)
+++ accumulo/site/trunk/templates/nav.html Wed May  7 17:10:46 2014
@@ -63,7 +63,7 @@
 <li class="dropdown-header">Manual</li>
 <li><a href="/1.4/user_manual">1.4</a></li>
 <li><a href="/1.5/accumulo_user_manual.html">1.5</a></li>
-<li><a href="http://search.maven.org/remotecontent?filepath=org/apache/accumulo/accumulo-docs/1.6.0/accumulo-docs-1.6.0-user-manual.pdf">1.6</a></li>
+<li><a href="/1.6/accumulo_user_manual.html">1.6</a></li>
 <li class="divider"</li>
 <li class="dropdown-header">Javadoc</li>
 <li><a href="/1.4/apidocs">1.4</a></li>



Mime
View raw message